Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 3768 → Rev 3769

/drivers/video/i965/shaders/h264/mc/avc_mc.g4b
0,0 → 1,5251
{ 0x00600001, 0x27c00021, 0x008d0000, 0x00000000 },
{ 0x00200009, 0x27fa3e29, 0x00450064, 0x00040004 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000d4 },
{ 0x00000005, 0x220e3e2c, 0x00000070, 0x000f000f },
{ 0x00000001, 0x26a00221, 0x00009c38, 0x00000000 },
{ 0x00000220, 0x34001400, 0x00001400, 0x000006a0 },
{ 0x00a02001, 0x24000229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x24400229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x24800229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x24c00229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x25000229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x25400229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x25800229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x25c00229, 0x00b10624, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00000001, 0x22080060, 0x00000000, 0x06440640 },
{ 0x00a02001, 0x24000229, 0x00009003, 0x00000000 },
{ 0x00a02001, 0x24400229, 0x0000900b, 0x00000000 },
{ 0x00a02001, 0x24800229, 0x00009013, 0x00000000 },
{ 0x00a02001, 0x24c00229, 0x0000901b, 0x00000000 },
{ 0x00a02001, 0x25000229, 0x00009023, 0x00000000 },
{ 0x00a02001, 0x25400229, 0x0000902b, 0x00000000 },
{ 0x00a02001, 0x25800229, 0x00009033, 0x00000000 },
{ 0x00a02001, 0x25c00229, 0x0000903b, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000072 },
{ 0x02600005, 0x20000c20, 0x0000006c, 0x00000002 },
{ 0x00600005, 0x24000c20, 0x0000006c, 0x00000011 },
{ 0x01600007, 0x20000c00, 0x028d0400, 0x00000011 },
{ 0x00780001, 0x26240169, 0x00000000, 0x80808080 },
{ 0x00780001, 0x66430231, 0x028d0624, 0x00000000 },
{ 0x00780001, 0x66630231, 0x028d062c, 0x00000000 },
{ 0x00780001, 0x26240231, 0x00cf0643, 0x00000000 },
{ 0x00780001, 0x262c0231, 0x00cf0663, 0x00000000 },
{ 0x00800040, 0x25e04629, 0x00cf0643, 0x00b10624 },
{ 0x00600040, 0x25e02529, 0x008d05e0, 0x008d05f0 },
{ 0x00400040, 0x25e02529, 0x006905e0, 0x006905e8 },
{ 0x00200040, 0x25e02529, 0x004505e0, 0x004505e4 },
{ 0x00a02040, 0x2400252c, 0x000005e0, 0x000005e2 },
{ 0x00a02040, 0x24003d8c, 0x00b10400, 0x00100010 },
{ 0x00a02008, 0x24003d89, 0x00b10400, 0x00050005 },
{ 0x00a02008, 0x24403d89, 0x00b10400, 0x00050005 },
{ 0x00a02008, 0x24803d89, 0x00b10400, 0x00050005 },
{ 0x00a02008, 0x24c03d89, 0x00b10400, 0x00050005 },
{ 0x00a02008, 0x25003d89, 0x00b10400, 0x00050005 },
{ 0x00a02008, 0x25403d89, 0x00b10400, 0x00050005 },
{ 0x00a02008, 0x25803d89, 0x00b10400, 0x00050005 },
{ 0x00a02008, 0x25c03d89, 0x00b10400, 0x00050005 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000044 },
{ 0x00600041, 0x26806e2d, 0x008d062c, 0x89abcdef },
{ 0x00600041, 0x26906e2d, 0x008d0623, 0xfedcba98 },
{ 0x00600041, 0x26a06e2d, 0x00cf0663, 0x89abcdef },
{ 0x00600041, 0x26b06e2d, 0x00cf0643, 0x0fedcba9 },
{ 0x00000041, 0x26be3e2d, 0x00000623, 0xfff8fff8 },
{ 0x00802040, 0x268035ad, 0x008d4680, 0x008d0690 },
{ 0x00802040, 0x268035ad, 0x008d0680, 0x008d0688 },
{ 0x00802040, 0x268035ad, 0x008d0680, 0x008d0684 },
{ 0x00802040, 0x268035ad, 0x008d0680, 0x008d0682 },
{ 0x00800001, 0x240001ec, 0x00000000, 0x00200020 },
{ 0x00200048, 0x24003dac, 0x00a00680, 0x00050005 },
{ 0x00200008, 0x26e03d8d, 0x00450400, 0x00060006 },
{ 0x00800001, 0x240001ec, 0x00000000, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x00000633, 0x00100010 },
{ 0x00800048, 0x26c03e2d, 0x0000067f, 0x00100010 },
{ 0x00800048, 0x272055ad, 0x000006e0, 0x00b10040 },
{ 0x00600041, 0x268055ad, 0x000006e2, 0x00ae0040 },
{ 0x00600041, 0x26a055ad, 0x000006e2, 0x00ae0041 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b00680 },
{ 0x80a02008, 0x44003d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b00682 },
{ 0x80a02008, 0x44403d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b00684 },
{ 0x80a02008, 0x44803d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b00686 },
{ 0x80a02008, 0x44c03d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b00688 },
{ 0x80a02008, 0x45003d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b0068a },
{ 0x80a02008, 0x45403d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b0068c },
{ 0x80a02008, 0x45803d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b0068e },
{ 0x80a02008, 0x45c03d91, 0x00b10400, 0x00050005 },
{ 0x00000001, 0x22040060, 0x00000000, 0x00900080 },
{ 0x01000005, 0x20000c20, 0x02000068, 0x00003c00 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000020 },
{ 0x80802040, 0x440045b1, 0x008d8800, 0x00ae0400 },
{ 0x80802040, 0x444045b1, 0x008d8820, 0x00ae0440 },
{ 0x80802040, 0x448045b1, 0x008d8840, 0x00ae0480 },
{ 0x80802040, 0x44c045b1, 0x008d8860, 0x00ae04c0 },
{ 0x80802040, 0x441045b1, 0x008d8880, 0x00ae0410 },
{ 0x80802040, 0x445045b1, 0x008d88a0, 0x00ae0450 },
{ 0x80802040, 0x449045b1, 0x008d88c0, 0x00ae0490 },
{ 0x80802040, 0x44d045b1, 0x008d88e0, 0x00ae04d0 },
{ 0x80802040, 0x450045b1, 0x008d8900, 0x00ae0500 },
{ 0x80802040, 0x454045b1, 0x008d8920, 0x00ae0540 },
{ 0x80802040, 0x458045b1, 0x008d8940, 0x00ae0580 },
{ 0x80802040, 0x45c045b1, 0x008d8960, 0x00ae05c0 },
{ 0x80802040, 0x451045b1, 0x008d8980, 0x00ae0510 },
{ 0x80802040, 0x455045b1, 0x008d89a0, 0x00ae0550 },
{ 0x80802040, 0x459045b1, 0x008d89c0, 0x00ae0590 },
{ 0x80802040, 0x45d045b1, 0x008d89e0, 0x00ae05d0 },
{ 0x00000040, 0x22040c00, 0x00000204, 0x01800180 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000e2 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x27800021, 0x00000780, 0x00000000 },
{ 0x00000001, 0x27a00021, 0x000007a0, 0x00000000 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x00200440, 0x27c055a5, 0x004507fa, 0x0045002a },
{ 0x00000801, 0x27c80061, 0x00000000, 0x0000001b },
{ 0x00000040, 0x22000d20, 0x00000062, 0x02186000 },
{ 0x01600031, 0x26200021, 0x408d07c0, 0x00000200 },
{ 0x00000440, 0x27c43ca5, 0x000007c4, 0x00010001 },
{ 0x00000801, 0x27c80061, 0x00000000, 0x000f0003 },
{ 0x00000040, 0x22000c00, 0x00000200, 0x00100000 },
{ 0x02600031, 0x26400021, 0x408d07c0, 0x00000200 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00000008, 0x27fc3dad, 0x000007fc, 0x00010001 },
{ 0x00200440, 0x27c055a5, 0x004507fa, 0x0045002a },
{ 0x00000801, 0x27c80061, 0x00000000, 0x00000013 },
{ 0x00000040, 0x22000c00, 0x00000200, 0xefffc001 },
{ 0x01600031, 0x26200021, 0x408d07c0, 0x00000200 },
{ 0x00000440, 0x27c43ca5, 0x000007c4, 0x00010001 },
{ 0x00000801, 0x27c80061, 0x00000000, 0x00070003 },
{ 0x05600031, 0x26400021, 0x408d07c0, 0x00000200 },
{ 0x00000008, 0x220e3e2c, 0x0000006c, 0x00060006 },
{ 0x00000001, 0x26a002a5, 0x00009c3c, 0x00000000 },
{ 0x00000220, 0x34001400, 0x00001400, 0x000006a0 },
{ 0x02600005, 0x20000c20, 0x0000006c, 0x00000002 },
{ 0x00780001, 0x26240169, 0x00000000, 0x80808080 },
{ 0x02400005, 0x20000c20, 0x0200006c, 0x00000001 },
{ 0x00560001, 0x46420129, 0x02690624, 0x00000000 },
{ 0x02400005, 0x20000c20, 0x0200006c, 0x00000010 },
{ 0x00560001, 0x46520129, 0x0269062c, 0x00000000 },
{ 0x00780001, 0x26240129, 0x00ae0642, 0x00000000 },
{ 0x00800040, 0x24004629, 0x00b10624, 0x00650642 },
{ 0x00600040, 0x24002529, 0x00650400, 0x00650404 },
{ 0x00600040, 0x25202529, 0x00050400, 0x00050404 },
{ 0x00600040, 0x25702529, 0x00050408, 0x0005040c },
{ 0x00560001, 0x26240169, 0x00000000, 0x80808080 },
{ 0x00460001, 0x26240129, 0x028a0652, 0x00000000 },
{ 0x00560001, 0x46520129, 0x02690624, 0x00000000 },
{ 0x02400005, 0x20000c20, 0x0200006c, 0x00000001 },
{ 0x00560001, 0x46420169, 0x02000000, 0x80808080 },
{ 0x00460001, 0x46420129, 0x0069062c, 0x00000000 },
{ 0x00560001, 0x262c0129, 0x008a0642, 0x00000000 },
{ 0x00600040, 0x24004629, 0x008d0624, 0x00650652 },
{ 0x00600040, 0x24104629, 0x00650642, 0x008d062c },
{ 0x00600040, 0x24002529, 0x00650400, 0x00650404 },
{ 0x00600040, 0x25302529, 0x00050408, 0x0005040c },
{ 0x00600040, 0x25602529, 0x00050400, 0x00050404 },
{ 0x00a02040, 0x24003d2c, 0x00b10520, 0x00040004 },
{ 0x00a02008, 0x24003d89, 0x00b10400, 0x00030003 },
{ 0x00a02008, 0x24403d89, 0x00b10400, 0x00030003 },
{ 0x00a02040, 0x24003d2c, 0x00b10560, 0x00040004 },
{ 0x00a02008, 0x24803d89, 0x00b10400, 0x00030003 },
{ 0x00a02008, 0x24c03d89, 0x00b10400, 0x00030003 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000048 },
{ 0x00000001, 0x22080060, 0x00000000, 0x06440640 },
{ 0x00a02001, 0x24000229, 0x00059002, 0x00000000 },
{ 0x00a02001, 0x24400229, 0x0005900a, 0x00000000 },
{ 0x00a02001, 0x24800229, 0x00059012, 0x00000000 },
{ 0x00a02001, 0x24c00229, 0x0005901a, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000003c },
{ 0x00a02001, 0x24000229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x24400229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x24800229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x24c00229, 0x00b10624, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000032 },
{ 0x00600041, 0x26806e2d, 0x008d062c, 0x44332211 },
{ 0x00600041, 0x26906e2d, 0x008d0622, 0xffeeddcc },
{ 0x00600041, 0x26a06e2d, 0x00650652, 0x44332211 },
{ 0x00600041, 0x26b06e2d, 0x00650642, 0x00ffeedd },
{ 0x00200041, 0x26bc3e2d, 0x00450622, 0xfffcfffc },
{ 0x00802040, 0x268035ad, 0x008d0680, 0x008d0690 },
{ 0x00802040, 0x268035ad, 0x008d0680, 0x008d0688 },
{ 0x00802040, 0x268035ad, 0x008d0680, 0x008d0684 },
{ 0x00800001, 0x240001ec, 0x00000000, 0x00200020 },
{ 0x00400048, 0x24003dac, 0x00a50680, 0x00220022 },
{ 0x00400008, 0x26e03d8d, 0x00690400, 0x00060006 },
{ 0x00800001, 0x240001ec, 0x00000000, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x00050632, 0x00100010 },
{ 0x00800048, 0x26c03e2d, 0x0005065e, 0x00100010 },
{ 0x00800048, 0x272055ad, 0x000506e0, 0x00240044 },
{ 0x00600041, 0x268055ad, 0x000506e4, 0x00440044 },
{ 0x00600041, 0x26a055ad, 0x000506e4, 0x00440045 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00050680 },
{ 0x80a02008, 0x44003d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00050684 },
{ 0x80a02008, 0x44403d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00050688 },
{ 0x80a02008, 0x44803d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x0005068c },
{ 0x80a02008, 0x44c03d91, 0x00b10400, 0x00050005 },
{ 0x00000040, 0x22063d8c, 0x00000204, 0x00100010 },
{ 0x80802040, 0x640045b1, 0x008d8880, 0x00cf0400 },
{ 0x80802040, 0x644045b1, 0x008d88a0, 0x00cf0440 },
{ 0x80802040, 0x648045b1, 0x008d88c0, 0x00cf0480 },
{ 0x80802040, 0x64c045b1, 0x008d88e0, 0x00cf04c0 },
{ 0x80802040, 0x640245b1, 0x008d8900, 0x00cf0402 },
{ 0x80802040, 0x644245b1, 0x008d8920, 0x00cf0442 },
{ 0x80802040, 0x648245b1, 0x008d8940, 0x00cf0482 },
{ 0x80802040, 0x64c245b1, 0x008d8960, 0x00cf04c2 },
{ 0x00000401, 0x27c80061, 0x00000000, 0x0007000f },
{ 0x00200801, 0x27c001a1, 0x004507fa, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00000200, 0x08004000 },
{ 0x00800001, 0x20400232, 0x00d20400, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20420, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20440, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d20460, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d20480, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d204a0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d204c0, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d204e0, 0x00000000 },
{ 0x01600031, 0x27a00021, 0x508d07c0, 0x00000200 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00000401, 0x27c80061, 0x00000000, 0x000f000f },
{ 0x00200801, 0x27c001a1, 0x004507fa, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00000200, 0x0ff04000 },
{ 0x00000001, 0x22080060, 0x00000000, 0x04400400 },
{ 0x00a02001, 0x20400232, 0x00d29000, 0x00000000 },
{ 0x00a02001, 0x20500232, 0x00d29020, 0x00000000 },
{ 0x00a02001, 0x20800232, 0x00d29080, 0x00000000 },
{ 0x00a02001, 0x20900232, 0x00d290a0, 0x00000000 },
{ 0x00a02001, 0x20c00232, 0x00d29100, 0x00000000 },
{ 0x00a02001, 0x20d00232, 0x00d29120, 0x00000000 },
{ 0x00a02001, 0x21000232, 0x00d29180, 0x00000000 },
{ 0x00a02001, 0x21100232, 0x00d291a0, 0x00000000 },
{ 0x01600031, 0x27800021, 0x508d07c0, 0x00000200 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00600001, 0x27c00021, 0x008d0000, 0x00000000 },
{ 0x00200009, 0x27fa3e29, 0x00450064, 0x00040004 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff04 },
{ 0x00000001, 0x220401ec, 0x00000000, 0x00800080 },
{ 0x00000001, 0x22080060, 0x00000000, 0x04100400 },
{ 0x00200008, 0x27006e2d, 0x0000006c, 0x00000040 },
{ 0x00400001, 0x27400061, 0x00000000, 0x00000000 },
{ 0x00800001, 0x272001a9, 0x00b10620, 0x00000000 },
{ 0x02600005, 0x20001c20, 0x0000006c, 0x00000008 },
{ 0x00110001, 0x27230231, 0x00000624, 0x00000000 },
{ 0x00600001, 0x27420231, 0x00cf0643, 0x00000000 },
{ 0x00110001, 0x27410231, 0x00000643, 0x00000000 },
{ 0x00240001, 0x27400231, 0x00000623, 0x00000000 },
{ 0x02000005, 0x20001c20, 0x0200006c, 0x00000002 },
{ 0x00010001, 0x27400231, 0x02000624, 0x00000000 },
{ 0x02000005, 0x20001c20, 0x0200006c, 0x00000001 },
{ 0x00110001, 0x27420231, 0x02000623, 0x00000000 },
{ 0x00000005, 0x26803e2d, 0x00000070, 0x000f000f },
{ 0x00000001, 0x270801ad, 0x00000700, 0x00000000 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000084 },
{ 0x00000040, 0x22043d8c, 0x00000204, 0x00800080 },
{ 0x00800001, 0x27200231, 0x00b10628, 0x00000000 },
{ 0x02600005, 0x20001c20, 0x0200006c, 0x00000004 },
{ 0x00680001, 0x272c0231, 0x028d0634, 0x00000000 },
{ 0x00780001, 0x272c0231, 0x02000633, 0x00000000 },
{ 0x00400001, 0x27420231, 0x00a0040e, 0x00000000 },
{ 0x00400001, 0x27460231, 0x00a0044e, 0x00000000 },
{ 0x00200001, 0x27400231, 0x0000062b, 0x00000000 },
{ 0x02000005, 0x20001c20, 0x0200006c, 0x00000002 },
{ 0x00010001, 0x27400231, 0x0200062c, 0x00000000 },
{ 0x00110001, 0x27410231, 0x0200040e, 0x00000000 },
{ 0x00000008, 0x26803e2d, 0x00000070, 0x00040004 },
{ 0x00200040, 0x22083d8c, 0x00450208, 0x00800080 },
{ 0x00000006, 0x27083dad, 0x00000700, 0x00010001 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000064 },
{ 0x00000040, 0x22043d8c, 0x00000204, 0x00800080 },
{ 0x00a02001, 0xb3800231, 0x00d20400, 0x00000000 },
{ 0x00a02001, 0xb3a00231, 0x00d20480, 0x00000000 },
{ 0x00a02001, 0xb3c00231, 0x00d20440, 0x00000000 },
{ 0x00a02001, 0xb3e00231, 0x00d204c0, 0x00000000 },
{ 0x02000005, 0x20001c20, 0x00000060, 0x00000002 },
{ 0x01000005, 0x20001c20, 0x0200006c, 0x00000001 },
{ 0x01010005, 0x20001c20, 0x00000060, 0x00004000 },
{ 0x02010005, 0x20001c20, 0x02000060, 0x00000010 },
{ 0x00030001, 0x27230231, 0x0000065f, 0x00000000 },
{ 0x00030220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02600005, 0x20001c20, 0x0000006c, 0x00000001 },
{ 0x00460001, 0x27200231, 0x0069065c, 0x00000000 },
{ 0x00110001, 0x27230231, 0x00000458, 0x00000000 },
{ 0x00600001, 0x27240231, 0x008d0458, 0x00000000 },
{ 0x00600001, 0x272c0231, 0x008d0478, 0x00000000 },
{ 0x00600001, 0x27420231, 0x00cf0663, 0x00000000 },
{ 0x00000001, 0x27400231, 0x00000458, 0x00000000 },
{ 0x00010001, 0x27410231, 0x0000065f, 0x00000000 },
{ 0x00110001, 0x27410231, 0x00000663, 0x00000000 },
{ 0x02000005, 0x20001c20, 0x0200006c, 0x00000010 },
{ 0x00110001, 0x27420231, 0x0200065f, 0x00000000 },
{ 0x00000005, 0x26803e2d, 0x00000071, 0x000f000f },
{ 0x00000006, 0x27083dad, 0x00000702, 0x00020002 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000040, 0x22043d8c, 0x00000204, 0x00800080 },
{ 0x00400001, 0x27200231, 0x0069045c, 0x00000000 },
{ 0x00600001, 0x27240231, 0x008d0478, 0x00000000 },
{ 0x00800001, 0x272c0231, 0x0000047f, 0x00000000 },
{ 0x00400001, 0x27420231, 0x00a0048e, 0x00000000 },
{ 0x00400001, 0x27460231, 0x00a004ce, 0x00000000 },
{ 0x00000001, 0x27400231, 0x00000478, 0x00000000 },
{ 0x00000001, 0x27410231, 0x0000045f, 0x00000000 },
{ 0x00000008, 0x26803e2d, 0x00000071, 0x00040004 },
{ 0x00200040, 0x22083d8c, 0x00450208, 0x00800080 },
{ 0x00000006, 0x27083dad, 0x00000700, 0x00030003 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00a02001, 0xb3800231, 0x00d20480, 0x00000000 },
{ 0x00a02001, 0xb3a00231, 0x00d20500, 0x00000000 },
{ 0x00a02001, 0xb3c00231, 0x00d204c0, 0x00000000 },
{ 0x00a02001, 0xb3e00231, 0x00d20540, 0x00000000 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000100 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffe74 },
{ 0x00000001, 0x27800021, 0x00000780, 0x00000000 },
{ 0x00000001, 0x27a00021, 0x000007a0, 0x00000000 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x00000001, 0x27340231, 0x00000733, 0x00000000 },
{ 0x00600001, 0x274a0231, 0x00000749, 0x00000000 },
{ 0x00800040, 0x24003e2c, 0x00b10723, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10724, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10725, 0x00010001 },
{ 0x00800008, 0x26c03d8d, 0x008d0400, 0x00020002 },
{ 0x00800040, 0x24003e2c, 0x00b10740, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10741, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10742, 0x00010001 },
{ 0x00800008, 0x26a03d8d, 0x008d0400, 0x00020002 },
{ 0x00800001, 0x27240231, 0x00d206c0, 0x00000000 },
{ 0x00600001, 0x27400231, 0x00ae06a2, 0x00000000 },
{ 0x00000001, 0x27230231, 0x000006a0, 0x00000000 },
{ 0x00000005, 0x220e3dac, 0x00000680, 0x000f000f },
{ 0x00000001, 0x26a00221, 0x00009c2c, 0x00000000 },
{ 0x00000220, 0x34001400, 0x00001400, 0x000006a0 },
{ 0x80800040, 0xd00045b1, 0x00b18800, 0x000d0724 },
{ 0x80800040, 0xd02045b1, 0x00b18820, 0x000d0724 },
{ 0x80800040, 0xd04045b1, 0x00b18840, 0x000d0724 },
{ 0x80800040, 0xd06045b1, 0x00b18860, 0x000d0724 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x80800040, 0xd00045b1, 0x00b18800, 0x002c0740 },
{ 0x80800040, 0xd02045b1, 0x00b18820, 0x002c0742 },
{ 0x80800040, 0xd04045b1, 0x00b18840, 0x002c0744 },
{ 0x80800040, 0xd06045b1, 0x00b18860, 0x002c0746 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x02802005, 0x20003da0, 0x00000708, 0x00020002 },
{ 0x02600005, 0x20003da0, 0x02000708, 0x00010001 },
{ 0x009a0001, 0x27200169, 0x00000000, 0x80808080 },
{ 0x00780001, 0x27400231, 0x028d0724, 0x00000000 },
{ 0x00780001, 0x27240231, 0x008d0740, 0x00000000 },
{ 0x00600040, 0x25e04629, 0x008d0724, 0x008d0740 },
{ 0x00400040, 0x25e02529, 0x006905e0, 0x006905e8 },
{ 0x00200040, 0x25e02529, 0x004505e0, 0x004505e4 },
{ 0x00800040, 0x2400252c, 0x000005e0, 0x000005e2 },
{ 0x00800040, 0x24003d8c, 0x008d0400, 0x00080008 },
{ 0x00800008, 0x26803d8d, 0x008d0400, 0x00040004 },
{ 0x80800040, 0xd00035b1, 0x00b18800, 0x00b10680 },
{ 0x80800040, 0xd02035b1, 0x00b18820, 0x00b10680 },
{ 0x80800040, 0xd04035b1, 0x00b18840, 0x00b10680 },
{ 0x80800040, 0xd06035b1, 0x00b18860, 0x00b10680 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00600001, 0x27340231, 0x008d0733, 0x00000000 },
{ 0x00800040, 0x24003e2c, 0x00b10726, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10725, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10724, 0x00010001 },
{ 0x00800008, 0x26803d8d, 0x00b10400, 0x00020002 },
{ 0x80800040, 0xd00035b1, 0x00b18800, 0x002d0680 },
{ 0x80800040, 0xd02035b1, 0x00b18820, 0x002d0684 },
{ 0x80800040, 0xd04035b1, 0x00b18840, 0x002d0688 },
{ 0x80800040, 0xd06035b1, 0x00b18860, 0x002d068c },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00400009, 0x26c05421, 0x00000744, 0x00690050 },
{ 0x00400009, 0x26d05421, 0x00000740, 0x00690050 },
{ 0x00600001, 0x26a00231, 0x00cf06c3, 0x00000000 },
{ 0x00800001, 0x26a80231, 0x00b10723, 0x00000000 },
{ 0x00800040, 0x24003e2c, 0x00b106a2, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b106a1, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b106a0, 0x00010001 },
{ 0x00800008, 0x26a03d8d, 0x00b10400, 0x00020002 },
{ 0x00200040, 0x220c3eac, 0x00450056, 0x06a006a0 },
{ 0x80800040, 0xd06035b1, 0x01ed9800, 0x00b18860 },
{ 0x80800040, 0xd04035b1, 0x01ed9804, 0x00b18840 },
{ 0x80800040, 0xd02035b1, 0x01ed9808, 0x00b18820 },
{ 0x80800040, 0xd00035b1, 0x01ed980c, 0x00b18800 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00400009, 0x26c05421, 0x00000744, 0x00690050 },
{ 0x00400009, 0x26d05421, 0x00000740, 0x00690050 },
{ 0x00600001, 0x26a00231, 0x00cf06c3, 0x00000000 },
{ 0x00800001, 0x26a80231, 0x00b10723, 0x00000000 },
{ 0x00800042, 0x25c04629, 0x00b106a8, 0x00b106a9 },
{ 0x00800040, 0x24003e2c, 0x00b106a3, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b106a2, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b106a1, 0x00010001 },
{ 0x00800008, 0x26c03d8d, 0x008d0400, 0x00020002 },
{ 0x00600001, 0x26a00231, 0x00ae06c0, 0x00000000 },
{ 0x00600001, 0x46a60231, 0x00ae06cc, 0x00000000 },
{ 0x00600001, 0x46a70231, 0x00ae05c0, 0x00000000 },
{ 0x00200040, 0x220c3eac, 0x00450036, 0x06a006a0 },
{ 0x80800040, 0xd0603631, 0x01ee9800, 0x00b18860 },
{ 0x80800040, 0xd0403631, 0x01ee9802, 0x00b18840 },
{ 0x80800040, 0xd0203631, 0x01ee9804, 0x00b18820 },
{ 0x80800040, 0xd0003631, 0x01ee9806, 0x00b18800 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00400009, 0x26c05421, 0x00000744, 0x00690050 },
{ 0x00400009, 0x26d05421, 0x00000740, 0x00690050 },
{ 0x00600001, 0x26a00231, 0x00ab06c3, 0x00000000 },
{ 0x00800001, 0x26a80231, 0x00b10723, 0x00000000 },
{ 0x00800040, 0x24003e2c, 0x00b106a2, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b106a1, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b106a0, 0x00010001 },
{ 0x00800008, 0x25c03d89, 0x008d0400, 0x00020002 },
{ 0x00800042, 0x26a0462d, 0x00b106a0, 0x00b106a1 },
{ 0x00600001, 0x46a10231, 0x00ae05c0, 0x00000000 },
{ 0x00600001, 0x26b00231, 0x00ae05d0, 0x00000000 },
{ 0x00200040, 0x220c3eac, 0x00450056, 0x06a006a0 },
{ 0x80800040, 0xd0603631, 0x01ed9800, 0x00b18860 },
{ 0x80800040, 0xd0403631, 0x01ed9804, 0x00b18840 },
{ 0x80800040, 0xd0203631, 0x01ed9808, 0x00b18820 },
{ 0x80800040, 0xd0003631, 0x01ed980c, 0x00b18800 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00800042, 0x25c04629, 0x00b10724, 0x00b10725 },
{ 0x00800040, 0x24003e2c, 0x00b10726, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10725, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10724, 0x00010001 },
{ 0x00800008, 0x25e03d89, 0x002d0400, 0x00020002 },
{ 0x80800040, 0xd0003531, 0x00ad05c0, 0x00b18800 },
{ 0x80800040, 0xd0203531, 0x00ad05c2, 0x00b18820 },
{ 0x80800040, 0xd0403531, 0x00ad05c4, 0x00b18840 },
{ 0x80800040, 0xd0603531, 0x00ad05c6, 0x00b18860 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00600001, 0x27480231, 0x00000747, 0x00000000 },
{ 0x00800042, 0x25c04629, 0x00b10740, 0x00b10741 },
{ 0x00800040, 0x24003e2c, 0x00b10742, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10741, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10740, 0x00010001 },
{ 0x00800008, 0x25e03d89, 0x002d0400, 0x00020002 },
{ 0x00800001, 0x45c10231, 0x00d205e0, 0x00000000 },
{ 0x80800040, 0xd0003631, 0x004d05c0, 0x00b18800 },
{ 0x80800040, 0xd0203631, 0x004d05c4, 0x00b18820 },
{ 0x80800040, 0xd0403631, 0x004d05c8, 0x00b18840 },
{ 0x80800040, 0xd0603631, 0x004d05cc, 0x00b18860 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00000401, 0x27c80061, 0x00000000, 0x000f000f },
{ 0x00200801, 0x27c001a1, 0x004507fa, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00000200, 0x0ff04000 },
{ 0x00800001, 0x20400232, 0x00cd0400, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00cd0408, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00cd0410, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00cd0418, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00cd0440, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00cd0448, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00cd0450, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00cd0458, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00cd0480, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00cd0488, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00cd0490, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00cd0498, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00cd04c0, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00cd04c8, 0x00000000 },
{ 0x00800001, 0x21200232, 0x00cd04d0, 0x00000000 },
{ 0x00800001, 0x21300232, 0x00cd04d8, 0x00000000 },
{ 0x01600031, 0x27800021, 0x508d07c0, 0x00000200 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00600001, 0x27c00021, 0x008d0000, 0x00000000 },
{ 0x00200009, 0x27fa3e29, 0x00450064, 0x00040004 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffd34 },
{ 0x00000001, 0x220401ec, 0x00000000, 0x00800080 },
{ 0x00000001, 0x220601ec, 0x00000000, 0x04000400 },
{ 0x00200008, 0x27006e2d, 0x0000006c, 0x00000040 },
{ 0x02600005, 0x20003e20, 0x0000006c, 0x00040004 },
{ 0x00780001, 0x26340231, 0x00000633, 0x00000000 },
{ 0x00800001, 0x27200231, 0x00b10620, 0x00000000 },
{ 0x00600001, 0x27400231, 0x00cf0643, 0x00000000 },
{ 0x00400008, 0x26806e2d, 0x00240070, 0x00004040 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000006a },
{ 0x00000040, 0x22043d8c, 0x00000204, 0x00800080 },
{ 0x00000006, 0x27003dad, 0x00000700, 0x00010001 },
{ 0x00800001, 0x27200231, 0x00b10628, 0x00000000 },
{ 0x00400001, 0x27400231, 0x00808c26, 0x00000000 },
{ 0x00400001, 0x27440231, 0x00808c66, 0x00000000 },
{ 0x00400008, 0x26806e2d, 0x00240072, 0x00004040 },
{ 0x00000040, 0x22063d8c, 0x00000206, 0x00800080 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000058 },
{ 0x00000040, 0x22043d8c, 0x00000204, 0x00800080 },
{ 0x00000006, 0x27003dad, 0x00000702, 0x00020002 },
{ 0x00800001, 0xaf800231, 0x00d28f80, 0x00000000 },
{ 0x00800001, 0xaf900231, 0x00d28fa0, 0x00000000 },
{ 0x00800001, 0xafc00231, 0x00d28fc0, 0x00000000 },
{ 0x00800001, 0xafd00231, 0x00d28fe0, 0x00000000 },
{ 0x00800001, 0xafa00231, 0x00d28c00, 0x00000000 },
{ 0x00800001, 0xafb00231, 0x00d28c20, 0x00000000 },
{ 0x00800001, 0xafe00231, 0x00d28c40, 0x00000000 },
{ 0x00800001, 0xaff00231, 0x00d28c60, 0x00000000 },
{ 0x00400001, 0x27200231, 0x0069065c, 0x00000000 },
{ 0x00600001, 0x27240231, 0x00a98fcc, 0x00000000 },
{ 0x00600001, 0x272c0231, 0x00a98fec, 0x00000000 },
{ 0x00600001, 0x27340231, 0x00008fff, 0x00000000 },
{ 0x00800001, 0x2620012d, 0x00b10720, 0x00000000 },
{ 0x00600001, 0x27400231, 0x00cf0663, 0x00000000 },
{ 0x00400008, 0x26806e2d, 0x00240074, 0x00004040 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000032 },
{ 0x00000040, 0x22043d8c, 0x00000204, 0x00800080 },
{ 0x00000006, 0x27003dad, 0x00000700, 0x00010001 },
{ 0x00800001, 0x27200231, 0x00b10628, 0x00000000 },
{ 0x00600001, 0x27300231, 0x008d0638, 0x00000000 },
{ 0x00400001, 0x27400231, 0x00808c26, 0x00000000 },
{ 0x00400001, 0x27440231, 0x00808c66, 0x00000000 },
{ 0x00400008, 0x26806e2d, 0x00240076, 0x00004040 },
{ 0x00000040, 0x22063d8c, 0x00000206, 0x00800080 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x00800001, 0xaf800231, 0x00d28f80, 0x00000000 },
{ 0x00800001, 0xaf900231, 0x00d28fa0, 0x00000000 },
{ 0x00800001, 0xafc00231, 0x00d28fc0, 0x00000000 },
{ 0x00800001, 0xafd00231, 0x00d28fe0, 0x00000000 },
{ 0x00800001, 0xafa00231, 0x00d28c00, 0x00000000 },
{ 0x00800001, 0xafb00231, 0x00d28c20, 0x00000000 },
{ 0x00800001, 0xafe00231, 0x00d28c40, 0x00000000 },
{ 0x00800001, 0xaff00231, 0x00d28c60, 0x00000000 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000e0 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffcce },
{ 0x00000001, 0x27800021, 0x00000780, 0x00000000 },
{ 0x00000001, 0x27a00021, 0x000007a0, 0x00000000 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x00600001, 0x27800231, 0x008d0740, 0x00000000 },
{ 0x00400005, 0x22083dac, 0x00690680, 0x000f000f },
{ 0x00400040, 0x26a04625, 0x01e09020, 0x00690058 },
{ 0x00000001, 0x26d001ad, 0x00000700, 0x00000000 },
{ 0x00000040, 0x27e41c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001400, 0x00001400, 0x000006a0 },
{ 0x80600040, 0xcc0035b1, 0x00898800, 0x008d0760 },
{ 0x80600040, 0xcc1035b1, 0x00898820, 0x008d0770 },
{ 0x00800001, 0x27200231, 0x008d0724, 0x00000000 },
{ 0x00400001, 0x27400231, 0x00808c06, 0x00000000 },
{ 0x00000006, 0x26d03dad, 0x00000700, 0x00010001 },
{ 0x00000040, 0x27e41c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001400, 0x00001400, 0x000006a4 },
{ 0x80600040, 0xcc2035b1, 0x00898808, 0x008d0760 },
{ 0x80600040, 0xcc3035b1, 0x00898828, 0x008d0770 },
{ 0x00000001, 0x27230231, 0x00000783, 0x00000000 },
{ 0x00400001, 0x27240231, 0x008a8c18, 0x00000000 },
{ 0x00400001, 0x27280231, 0x008a8c38, 0x00000000 },
{ 0x00400001, 0x272c0231, 0x00008c3e, 0x00000000 },
{ 0x00400001, 0x27400231, 0x00690784, 0x00000000 },
{ 0x00000006, 0x26d03dad, 0x00000700, 0x00020002 },
{ 0x00000040, 0x27e41c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001400, 0x00001400, 0x000006a8 },
{ 0x80600040, 0xcc4035b1, 0x00898840, 0x008d0760 },
{ 0x80600040, 0xcc5035b1, 0x00898860, 0x008d0770 },
{ 0x00800001, 0x27200231, 0x008d0724, 0x00000000 },
{ 0x00600001, 0x27280231, 0x00000727, 0x00000000 },
{ 0x00400001, 0x27400231, 0x00808c46, 0x00000000 },
{ 0x00000006, 0x26d03dad, 0x00000700, 0x00030003 },
{ 0x00000040, 0x27e41c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001400, 0x00001400, 0x000006ac },
{ 0x80600040, 0xcc6035b1, 0x00898848, 0x008d0760 },
{ 0x80600040, 0xcc7035b1, 0x00898868, 0x008d0770 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00800001, 0x2760022d, 0x00090724, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00800001, 0x2760022d, 0x00280740, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x02802005, 0x20003da0, 0x000006d0, 0x00020002 },
{ 0x02802005, 0x20003da0, 0x020006d0, 0x00010001 },
{ 0x009a0001, 0x27200169, 0x00000000, 0x80808080 },
{ 0x00780001, 0x27400231, 0x028d0724, 0x00000000 },
{ 0x00780001, 0x27240231, 0x008d0740, 0x00000000 },
{ 0x00400040, 0x25e04629, 0x00690724, 0x00690740 },
{ 0x00200040, 0x25e02529, 0x004505e0, 0x004505e4 },
{ 0x00800040, 0x2400252c, 0x000005e0, 0x000005e2 },
{ 0x00800040, 0x24003d8c, 0x008d0400, 0x00040004 },
{ 0x00800008, 0x27603d8d, 0x008d0400, 0x00030003 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00600001, 0x26c00231, 0x008d0724, 0x00000000 },
{ 0x00400001, 0x26c80231, 0x0069072b, 0x00000000 },
{ 0x00600040, 0x24003e2c, 0x008d06c2, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x008d06c1, 0x00020002 },
{ 0x00600048, 0x25e03e29, 0x008d06c0, 0x00010001 },
{ 0x00800008, 0x27603d2d, 0x002905e0, 0x00020002 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00400009, 0x26e05421, 0x00000740, 0x00690050 },
{ 0x00600001, 0x26c40231, 0x008d0723, 0x00000000 },
{ 0x00400001, 0x26c00231, 0x00ab06e3, 0x00000000 },
{ 0x00600040, 0x24003e2c, 0x008d06c2, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x008d06c1, 0x00020002 },
{ 0x00600048, 0x26c03e2d, 0x008d06c0, 0x00010001 },
{ 0x00400040, 0x22083eac, 0x00690054, 0x06c006c0 },
{ 0x00800008, 0x27603dad, 0x01e99000, 0x00020002 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00400009, 0x26e05421, 0x00000740, 0x00690050 },
{ 0x00600001, 0x26c40231, 0x008d0723, 0x00000000 },
{ 0x00400001, 0x26c00231, 0x00ab06e3, 0x00000000 },
{ 0x00600042, 0x25c04629, 0x008d06c4, 0x008d06c5 },
{ 0x00600040, 0x24003e2c, 0x008d06c3, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x008d06c2, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x008d06c1, 0x00010001 },
{ 0x00600008, 0x26c03d8d, 0x008d0400, 0x00020002 },
{ 0x00400001, 0x46c401ad, 0x006906c4, 0x00000000 },
{ 0x00400001, 0x46c6012d, 0x006905c0, 0x00000000 },
{ 0x00400040, 0x22083eac, 0x00690054, 0x06c006c0 },
{ 0x00800001, 0x276001ad, 0x01ea9000, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00400009, 0x26e05421, 0x00000740, 0x00690050 },
{ 0x00600001, 0x26c40231, 0x008d0723, 0x00000000 },
{ 0x00400001, 0x26c00231, 0x00ab06e3, 0x00000000 },
{ 0x00600042, 0x25c04629, 0x008d06c0, 0x008d06c1 },
{ 0x00600040, 0x24003e2c, 0x008d06c2, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x008d06c1, 0x00020002 },
{ 0x00600048, 0x26e03e2d, 0x008d06c0, 0x00010001 },
{ 0x00400008, 0x46c23dad, 0x006906e0, 0x00020002 },
{ 0x00200008, 0x26d03dad, 0x004506e8, 0x00020002 },
{ 0x00400001, 0x46c0012d, 0x006905c0, 0x00000000 },
{ 0x00400009, 0x22083eac, 0x00690054, 0x00010001 },
{ 0x00400040, 0x22083d8c, 0x00690208, 0x06c006c0 },
{ 0x00800001, 0x276001ad, 0x01e99000, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00600042, 0x45c04629, 0x008d0724, 0x008d0725 },
{ 0x00600040, 0x24003e2c, 0x008d0726, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x008d0725, 0x00020002 },
{ 0x00600048, 0x25e03e29, 0x008d0724, 0x00010001 },
{ 0x00600008, 0x45c23d29, 0x008d05e0, 0x00020002 },
{ 0x00800001, 0x2760012d, 0x002a05c0, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00600001, 0x27440231, 0x00000743, 0x00000000 },
{ 0x00600042, 0x45c04629, 0x008d0740, 0x008d0741 },
{ 0x00600040, 0x24003e2c, 0x008d0742, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x008d0741, 0x00020002 },
{ 0x00600048, 0x25e03e29, 0x008d0740, 0x00010001 },
{ 0x00600008, 0x45c23d29, 0x008d05e0, 0x00020002 },
{ 0x00800001, 0x2760012d, 0x004905c0, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00000401, 0x27c80061, 0x00000000, 0x000f000f },
{ 0x00200801, 0x27c001a1, 0x004507fa, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00000200, 0x0ff04000 },
{ 0x00800001, 0x20400232, 0x00a90400, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00a90404, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00a90408, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00a9040c, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00a90440, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00a90444, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00a90448, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00a9044c, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00a90480, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00a90484, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00a90488, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00a9048c, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00a904c0, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00a904c4, 0x00000000 },
{ 0x00800001, 0x21200232, 0x00a904c8, 0x00000000 },
{ 0x00800001, 0x21300232, 0x00a904cc, 0x00000000 },
{ 0x01600031, 0x27800021, 0x508d07c0, 0x00000200 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27c00021, 0x008d0000, 0x00000000 },
{ 0x00200009, 0x27fa3e29, 0x00450064, 0x00040004 },
{ 0x00000401, 0x27c80061, 0x00000000, 0x000f000f },
{ 0x00200809, 0x27c03e21, 0x00450064, 0x00040004 },
{ 0x00000040, 0x22000d20, 0x00000062, 0x1218a000 },
{ 0x00a02401, 0x20400232, 0x00b10080, 0x00000000 },
{ 0x00a02801, 0x20500232, 0x00b10090, 0x00000000 },
{ 0x00a02401, 0x20800232, 0x00b100c0, 0x00000000 },
{ 0x00a02801, 0x20900232, 0x00b100d0, 0x00000000 },
{ 0x00a02401, 0x20c00232, 0x00b10100, 0x00000000 },
{ 0x00a02801, 0x20d00232, 0x00b10110, 0x00000000 },
{ 0x00a02401, 0x21000232, 0x00b10140, 0x00000000 },
{ 0x00a02801, 0x21100232, 0x00b10150, 0x00000000 },
{ 0x01600031, 0x27800021, 0x508d07c0, 0x00000200 },
{ 0x00000401, 0x20280062, 0x00000000, 0x0007000f },
{ 0x0000080c, 0x20243c22, 0x000007c4, 0x00010001 },
{ 0x00000040, 0x22001c00, 0x00000200, 0xf8000001 },
{ 0x00800001, 0x40400232, 0x00b10180, 0x00000000 },
{ 0x00800001, 0x40410232, 0x00b101c0, 0x00000000 },
{ 0x00800001, 0x40600232, 0x00b10190, 0x00000000 },
{ 0x00800001, 0x40610232, 0x00b101d0, 0x00000000 },
{ 0x00800001, 0x40800232, 0x00b101a0, 0x00000000 },
{ 0x00800001, 0x40810232, 0x00b101e0, 0x00000000 },
{ 0x00800001, 0x40a00232, 0x00b101b0, 0x00000000 },
{ 0x00800001, 0x40a10232, 0x00b101f0, 0x00000000 },
{ 0x01600031, 0x27a00001, 0x508d0000, 0x00000200 },
{ 0x00000001, 0x27800021, 0x00000780, 0x00000000 },
{ 0x00000001, 0x27a00021, 0x000007a0, 0x00000000 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0000, 0x00000000 },
{ 0x00000005, 0x20203e2d, 0x00000061, 0x001f001f },
{ 0x00200009, 0x20643e2d, 0x00450064, 0x00040004 },
{ 0x00000001, 0x203a01ed, 0x00000000, 0x00000000 },
{ 0x01000010, 0x20003dac, 0x00000020, 0x00160016 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x01200010, 0x20003e2c, 0x0200006c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000024 },
{ 0x00800009, 0x25403dad, 0x00050064, 0x00020002 },
{ 0x00000001, 0x203a01ed, 0x00000000, 0x00180018 },
{ 0x00200040, 0x45483dad, 0x00660548, 0x00100010 },
{ 0x00200040, 0x45523dad, 0x00660552, 0x00100010 },
{ 0x00400040, 0x25583dad, 0x00690558, 0x00100010 },
{ 0x00800040, 0x208035ad, 0x00b10080, 0x00b10540 },
{ 0x00600040, 0x45403dad, 0x00ae0540, 0x00200020 },
{ 0x00800040, 0x20a035ad, 0x00b100a0, 0x00b10540 },
{ 0x00600040, 0x45423dad, 0x00ae0542, 0x00200020 },
{ 0x00800040, 0x20e035ad, 0x00b100e0, 0x00b10540 },
{ 0x00600040, 0x45403dad, 0x00ae0540, 0xffe0ffe0 },
{ 0x00800040, 0x20c035ad, 0x00b100c0, 0x00b10540 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x06600010, 0x20003dac, 0x02000020, 0x00030003 },
{ 0x00000001, 0x206c0171, 0x00000000, 0x00000000 },
{ 0x00610001, 0x208000a5, 0x02050080, 0x00000000 },
{ 0x00610001, 0x212000a5, 0x02090100, 0x00000000 },
{ 0x00410001, 0x211000a5, 0x02690100, 0x00000000 },
{ 0x00200009, 0x25403dad, 0x00450064, 0x00020002 },
{ 0x00800040, 0x208035ad, 0x00b10080, 0x00050540 },
{ 0x00200040, 0x40883dad, 0x00660088, 0x00200020 },
{ 0x00200040, 0x40923dad, 0x00660092, 0x00200020 },
{ 0x00400040, 0x20983dad, 0x00690098, 0x00200020 },
{ 0x00200401, 0x22080060, 0x00000000, 0x03400140 },
{ 0x00000c01, 0x220c0060, 0x00000000, 0x04400080 },
{ 0x00000801, 0x22040060, 0x00000000, 0x01000070 },
{ 0x00000001, 0x20200169, 0x00000000, 0x00000000 },
{ 0x0000000c, 0x2458262d, 0x0000006d, 0x00000020 },
{ 0x00000001, 0x210e0169, 0x00000000, 0x00010001 },
{ 0x00000005, 0x24583dad, 0x00000458, 0x00030003 },
{ 0x01000010, 0x200035ac, 0x0000010e, 0x00000458 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x000002fe },
{ 0x01000010, 0x20003dac, 0x0200010e, 0x00010001 },
{ 0x00010401, 0x24540061, 0x02000000, 0x06c00640 },
{ 0x00010805, 0x245a3e2d, 0x02008800, 0x007f007f },
{ 0x00110401, 0x24540061, 0x02000000, 0x04800780 },
{ 0x00110805, 0x245a3e2d, 0x02008804, 0x007f007f },
{ 0x0000000c, 0x211e362d, 0x0000006c, 0x00000020 },
{ 0x00000040, 0x20780d21, 0x0000045a, 0x0208a002 },
{ 0x02000005, 0x20003dac, 0x0200011e, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000001be },
{ 0x01000005, 0x20003dac, 0x00009800, 0x00030003 },
{ 0x00200005, 0x24443dad, 0x00459800, 0x00030003 },
{ 0x0020000c, 0x24403dad, 0x00459800, 0x00020002 },
{ 0x01600006, 0x20003dac, 0x02000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000012 },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00400000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00700000 },
{ 0x00310040, 0x20401da5, 0x02450440, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x000c000c },
{ 0x00010040, 0x20401da5, 0x02000440, 0xfffffffe },
{ 0x00010001, 0x204401a5, 0x02000442, 0x00000000 },
{ 0x00010001, 0x20480061, 0x02000000, 0x0007000c },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00200000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00400000 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00110040, 0x20441da5, 0x02000442, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x000c0007 },
{ 0x00010001, 0x20480061, 0x02000000, 0x00070007 },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x0020040c, 0x24403dad, 0x00459800, 0x00030003 },
{ 0x00200805, 0x24483dad, 0x00459800, 0x00070007 },
{ 0x01600006, 0x20003dac, 0x0000044a, 0x00000000 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00000009, 0x20403ca5, 0x00000040, 0x00010001 },
{ 0x00010040, 0x22000c20, 0x00000078, 0x00200010 },
{ 0x00110040, 0x22000c20, 0x00000078, 0x00300010 },
{ 0x00010001, 0x20480061, 0x00000000, 0x00030009 },
{ 0x00110001, 0x20480061, 0x00000000, 0x00040009 },
{ 0x02600031, 0x27000021, 0x408d0040, 0x00000200 },
{ 0x01000005, 0x20003dac, 0x00009800, 0x00030003 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000001a },
{ 0x00600001, 0x26220231, 0x008d05c0, 0x00000000 },
{ 0x00600401, 0x26120231, 0x008d05b8, 0x00000000 },
{ 0x00600801, 0x26020231, 0x008d05b0, 0x00000000 },
{ 0x00600401, 0x25f20231, 0x008d05a8, 0x00000000 },
{ 0x00600801, 0x25e20231, 0x008d05a0, 0x00000000 },
{ 0x00600401, 0x25d20231, 0x008d0598, 0x00000000 },
{ 0x00600801, 0x25c20231, 0x008d0590, 0x00000000 },
{ 0x00600401, 0x25b20231, 0x008d0588, 0x00000000 },
{ 0x00600801, 0x25a20231, 0x008d0580, 0x00000000 },
{ 0x00600401, 0x25920231, 0x008d0578, 0x00000000 },
{ 0x00600801, 0x25820231, 0x008d0570, 0x00000000 },
{ 0x00600001, 0x25720231, 0x008d0568, 0x00000000 },
{ 0x00600001, 0x25620231, 0x008d0560, 0x00000000 },
{ 0x00110001, 0x220001ec, 0x02000000, 0x05820582 },
{ 0x00010001, 0x220001ec, 0x02000000, 0x05620562 },
{ 0x00000001, 0x220e0128, 0x00000454, 0x00000000 },
{ 0x01800006, 0x200035ac, 0x02000446, 0x00000444 },
{ 0x00810001, 0xbc000229, 0x02ad8000, 0x00000000 },
{ 0x00810001, 0xbc200229, 0x02ad8020, 0x00000000 },
{ 0x00810001, 0xbc400229, 0x02ad8040, 0x00000000 },
{ 0x00810001, 0xbc600229, 0x02ad8060, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000012a },
{ 0x00600001, 0x2024018d, 0x008d0200, 0x00000000 },
{ 0x01000041, 0x245e35ad, 0x00000446, 0x00000444 },
{ 0x00000040, 0x22022d08, 0x00000200, 0x00100010 },
{ 0x02000005, 0x20003db0, 0x0200045e, 0x00010001 },
{ 0x00200040, 0x22042d08, 0x00450200, 0x00200020 },
{ 0x00400001, 0x244c0109, 0x00690200, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000066 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000064 },
{ 0x00000040, 0x22003d08, 0x00000200, 0xffdeffde },
{ 0x00000440, 0x22023d08, 0x00000202, 0xffeeffee },
{ 0x00000801, 0x220c0060, 0x00000000, 0x04a00480 },
{ 0x01000010, 0x20003db0, 0x0000045e, 0x00040004 },
{ 0x00a02040, 0x2400462c, 0x00ad8000, 0x00ad8005 },
{ 0x00a02048, 0x24003e2c, 0x00ad8001, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8002, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8003, 0x00140014 },
{ 0x00a02048, 0xb8003e2d, 0x00ad8004, 0xfffbfffb },
{ 0x00a02040, 0x2400462c, 0x00ad8040, 0x00ad8045 },
{ 0x00a02048, 0x24003e2c, 0x00ad8041, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8042, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8043, 0x00140014 },
{ 0x00a02048, 0xb8403e2d, 0x00ad8044, 0xfffbfffb },
{ 0x00a02040, 0x2400462c, 0x00ad8080, 0x00ad8085 },
{ 0x00a02048, 0x24003e2c, 0x00ad8081, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8082, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8083, 0x00140014 },
{ 0x00a02048, 0xb8803e2d, 0x00ad8084, 0xfffbfffb },
{ 0x00600040, 0x2400462c, 0x008d80c0, 0x008d80c5 },
{ 0x00600048, 0x24003e2c, 0x008d80c1, 0xfffbfffb },
{ 0x00600048, 0x24003e2c, 0x008d80c2, 0x00140014 },
{ 0x00600048, 0x24003e2c, 0x008d80c3, 0x00140014 },
{ 0x00600048, 0xb8c03e2d, 0x008d80c4, 0xfffbfffb },
{ 0x00000401, 0x22000060, 0x00000000, 0x04a00480 },
{ 0x00000c01, 0x22040060, 0x00000000, 0x04a00490 },
{ 0x00010802, 0x220c2d28, 0x00000454, 0x04800480 },
{ 0x00a02040, 0x24003dac, 0x00b18000, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x01ed8800, 0xfffbfffb },
{ 0x00800048, 0x24203dac, 0x01ed8820, 0xfffbfffb },
{ 0x00a02048, 0x24003dac, 0x00b18020, 0x00140014 },
{ 0x00800048, 0x24003dac, 0x01ed8820, 0x00140014 },
{ 0x00800048, 0x24203dac, 0x01ed8840, 0x00140014 },
{ 0x00a02048, 0x24003dac, 0x00b18040, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed8840, 0x00010001 },
{ 0x00800048, 0x24203dac, 0x01ed8860, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x000a000a },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x000a000a },
{ 0x00a02040, 0x24003dac, 0x00b18040, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x01ed8840, 0xfffbfffb },
{ 0x00800048, 0x24203dac, 0x01ed8860, 0xfffbfffb },
{ 0x00a02048, 0x24003dac, 0x00b18060, 0x00140014 },
{ 0x00800048, 0x24003dac, 0x01ed8860, 0x00140014 },
{ 0x00800048, 0x24203dac, 0x01ed8880, 0x00140014 },
{ 0x00a02048, 0x24003dac, 0x00b18080, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed8880, 0x00010001 },
{ 0x00800048, 0x24203dac, 0x01ed88a0, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x000a000a },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x000a000a },
{ 0x00010220, 0x34001c00, 0x00001400, 0x000000b4 },
{ 0x01000010, 0x20003db0, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000004c },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000004a },
{ 0x00400040, 0x22003d28, 0x0069044c, 0xfffefffe },
{ 0x03400010, 0x20003dac, 0x00000446, 0x00020002 },
{ 0x01000010, 0x20003db0, 0x02000444, 0x00020002 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00100010 },
{ 0x01000010, 0x20003dac, 0x00000446, 0x00000000 },
{ 0x00010002, 0x220c2d28, 0x02000454, 0x04800480 },
{ 0x00800040, 0x24003e2c, 0x01ed8000, 0x00100010 },
{ 0x00800040, 0x24203e2c, 0x01ed8020, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8001, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8021, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8002, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8022, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8003, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8023, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8004, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8024, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8005, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8025, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x00050005 },
{ 0x00800040, 0x24003e2c, 0x01ed8040, 0x00100010 },
{ 0x00800040, 0x24203e2c, 0x01ed8060, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8041, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8061, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8042, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8062, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8043, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8063, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8044, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8064, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8045, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8065, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000062 },
{ 0x01000010, 0x20003db0, 0x00000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000042 },
{ 0x00200401, 0x22000128, 0x0066044c, 0x00000000 },
{ 0x00200c01, 0x22040128, 0x0045044e, 0x00000000 },
{ 0x00000801, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x03400010, 0x20003dac, 0x02000444, 0x00020002 },
{ 0x01000010, 0x20003dac, 0x00000444, 0x00000000 },
{ 0x00410040, 0x22002d08, 0x02690200, 0x00010001 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00110001, 0x220c0168, 0x02000000, 0x04800480 },
{ 0x00a02040, 0x24003e2c, 0x00ad83e0, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8be0, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8800, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8800, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8820, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8020, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8820, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8840, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x00050005 },
{ 0x00a02040, 0x24003e2c, 0x00ad8020, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8820, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8840, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8040, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8840, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8860, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8060, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8860, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8880, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001c },
{ 0x00200401, 0x22000128, 0x0045044c, 0x00000000 },
{ 0x00000801, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x01200010, 0x20003dac, 0x00000444, 0x00030003 },
{ 0x01200010, 0x20003dac, 0x02000446, 0x00030003 },
{ 0x00210040, 0x22002d08, 0x00450200, 0x00010001 },
{ 0x00210040, 0x22002d08, 0x02450200, 0x00100010 },
{ 0x00800001, 0xb8000229, 0x01ed8000, 0x00000000 },
{ 0x00800001, 0xb8200229, 0x01ed8020, 0x00000000 },
{ 0x00800001, 0xb8400229, 0x01ed8040, 0x00000000 },
{ 0x00800001, 0xb8600229, 0x01ed8060, 0x00000000 },
{ 0x80800042, 0xd8004631, 0x00d29800, 0x00d20480 },
{ 0x80800042, 0xd8204631, 0x00d29820, 0x00d204a0 },
{ 0x80800042, 0xd8404631, 0x00d29840, 0x00d204c0 },
{ 0x80800042, 0xd8604631, 0x00d29860, 0x00d204e0 },
{ 0x00600001, 0x220001ac, 0x008d0024, 0x00000000 },
{ 0x00200040, 0x244c3dad, 0x00450448, 0xfff8fff8 },
{ 0x00000401, 0x220001ec, 0x00000000, 0x07000700 },
{ 0x00000c01, 0x220201e8, 0x00000000, 0x07100710 },
{ 0x00000801, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00000441, 0x254635ad, 0x00000448, 0x0000044a },
{ 0x00000c41, 0x254025ad, 0x0000444c, 0x0000444e },
{ 0x00000c41, 0x254225ad, 0x00000448, 0x0000444e },
{ 0x00000841, 0x254435ad, 0x0000444c, 0x0000044a },
{ 0x00200040, 0x244c3d09, 0x00450200, 0x00100010 },
{ 0x00800041, 0x24002628, 0x00ad8000, 0x00000540 },
{ 0x00800041, 0x24202628, 0x00ad8020, 0x00000540 },
{ 0x00800048, 0x24002628, 0x00ad8002, 0x00000542 },
{ 0x00800048, 0x24202628, 0x00ad8022, 0x00000542 },
{ 0x00200001, 0x22000128, 0x0045044c, 0x00000000 },
{ 0x00800048, 0x24002628, 0x01ed8000, 0x00000544 },
{ 0x00800048, 0x24202628, 0x01ed8020, 0x00000544 },
{ 0x00800048, 0xbc002629, 0x01ed8002, 0x00000546 },
{ 0x00801048, 0xbc202629, 0x01ed8022, 0x00000546 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000126 },
{ 0x00000001, 0x20220169, 0x00000000, 0x00040004 },
{ 0x00200005, 0x24443dad, 0x00459800, 0x00030003 },
{ 0x0020000c, 0x24403dad, 0x00459800, 0x00020002 },
{ 0x01600006, 0x20003dac, 0x02000446, 0x00000000 },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00200000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00500000 },
{ 0x00310040, 0x20401da5, 0x02450440, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x00080008 },
{ 0x00010040, 0x20401da5, 0x02000440, 0xfffffffe },
{ 0x00010001, 0x204401a5, 0x02000442, 0x00000000 },
{ 0x00010001, 0x20480061, 0x02000000, 0x00030008 },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x00000078, 0x00100010 },
{ 0x0020040c, 0x24403dad, 0x00459800, 0x00030003 },
{ 0x00200805, 0x24483dad, 0x00459800, 0x00070007 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00000009, 0x20403ca5, 0x00000040, 0x00010001 },
{ 0x00000001, 0x20480061, 0x00000000, 0x00020005 },
{ 0x02600031, 0x27000021, 0x408d0040, 0x00000200 },
{ 0x00110001, 0x220001ec, 0x02000000, 0x05820582 },
{ 0x00010001, 0x220001ec, 0x02000000, 0x05620562 },
{ 0x00000001, 0x220e0128, 0x00000454, 0x00000000 },
{ 0x01800006, 0x200035ac, 0x02000446, 0x00000444 },
{ 0x00410001, 0xbc000229, 0x02698000, 0x00000000 },
{ 0x00410001, 0xbc100229, 0x02698010, 0x00000000 },
{ 0x00410001, 0xbc200229, 0x02698020, 0x00000000 },
{ 0x00410001, 0xbc300229, 0x02698030, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000be },
{ 0x00600001, 0x2024018d, 0x008d0200, 0x00000000 },
{ 0x01000041, 0x245e35ad, 0x00000446, 0x00000444 },
{ 0x02000005, 0x20003db0, 0x0200045e, 0x00010001 },
{ 0x00000040, 0x22022d08, 0x00000200, 0x00100010 },
{ 0x00200040, 0x22042d08, 0x00450200, 0x00200020 },
{ 0x00400001, 0x244c0109, 0x00690200, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000044 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000042 },
{ 0x00000040, 0x22003d08, 0x00000200, 0xffdeffde },
{ 0x00000440, 0x22023d08, 0x00000202, 0xffeeffee },
{ 0x00000801, 0x220c0060, 0x00000000, 0x04d004c0 },
{ 0x01000010, 0x20003db0, 0x0000045e, 0x00040004 },
{ 0x00802040, 0x2400462c, 0x00a98000, 0x00a98005 },
{ 0x00802048, 0x24003e2c, 0x00a98001, 0xfffbfffb },
{ 0x00802048, 0x24003e2c, 0x00a98002, 0x00140014 },
{ 0x00802048, 0x24003e2c, 0x00a98003, 0x00140014 },
{ 0x00802048, 0xb8003e2d, 0x00a98004, 0xfffbfffb },
{ 0x00802040, 0x2400462c, 0x00a98040, 0x00a98045 },
{ 0x00802048, 0x24003e2c, 0x00a98041, 0xfffbfffb },
{ 0x00802048, 0x24003e2c, 0x00a98042, 0x00140014 },
{ 0x00802048, 0x24003e2c, 0x00a98043, 0x00140014 },
{ 0x00802048, 0xb8203e2d, 0x00a98044, 0xfffbfffb },
{ 0x00400040, 0x2400462c, 0x00698080, 0x00698085 },
{ 0x00400048, 0x24003e2c, 0x00698081, 0xfffbfffb },
{ 0x00400048, 0x24003e2c, 0x00698082, 0x00140014 },
{ 0x00400048, 0x24003e2c, 0x00698083, 0x00140014 },
{ 0x00400048, 0xb8403e2d, 0x00698084, 0xfffbfffb },
{ 0x00000401, 0x220c0060, 0x00000000, 0x04e004d0 },
{ 0x00000c01, 0x22000060, 0x00000000, 0x04d004c8 },
{ 0x00000c01, 0x22040060, 0x00000000, 0x04e004d8 },
{ 0x00000801, 0x22080060, 0x00000000, 0x04f004e8 },
{ 0x00800040, 0x24003dac, 0x00b104c0, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x00b104e0, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed9800, 0x00140014 },
{ 0x00010001, 0x220c0168, 0x00000000, 0x05400540 },
{ 0x00110001, 0x220c0168, 0x00000000, 0x04c004c0 },
{ 0x00800048, 0x24003dac, 0x01e98000, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01e98020, 0x00010001 },
{ 0x00800048, 0x24003dac, 0x01e98800, 0x00140014 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x000a000a },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000060 },
{ 0x01000010, 0x20003db0, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000022 },
{ 0x00400040, 0x22003d28, 0x0069044c, 0xfffefffe },
{ 0x03400010, 0x20003dac, 0x00000446, 0x00020002 },
{ 0x01000010, 0x20003db0, 0x02000444, 0x00020002 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00100010 },
{ 0x01000010, 0x20003dac, 0x00000446, 0x00000000 },
{ 0x00010001, 0x220e0168, 0x02000000, 0x05400540 },
{ 0x00110001, 0x220e0168, 0x02000000, 0x04c004c0 },
{ 0x00800040, 0x24003e2c, 0x01e98000, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01e98001, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e98002, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98003, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98004, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e98005, 0x00010001 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000036 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000036 },
{ 0x01000010, 0x20003db0, 0x00000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x03600010, 0x20003dac, 0x02000444, 0x00020002 },
{ 0x00400401, 0x22000128, 0x0069044c, 0x00000000 },
{ 0x00400840, 0x22083d2c, 0x0069044c, 0x00100010 },
{ 0x00610040, 0x22002d08, 0x02690200, 0x00010001 },
{ 0x01000010, 0x20003dac, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00800040, 0x24003e2c, 0x01e983e0, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01e98000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98020, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e993e0, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e99000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e99020, 0x00010001 },
{ 0x00000001, 0x220e0168, 0x00000000, 0x05400540 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00110001, 0x220e0168, 0x02000000, 0x04c004c0 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000e },
{ 0x00400001, 0x22000128, 0x0069044c, 0x00000000 },
{ 0x01400010, 0x20003dac, 0x00000444, 0x00030003 },
{ 0x01400010, 0x20003dac, 0x02000446, 0x00030003 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00010001 },
{ 0x00410040, 0x22002d08, 0x02690200, 0x00100010 },
{ 0x00800001, 0x25400229, 0x01e98000, 0x00000000 },
{ 0x80800042, 0x45404631, 0x00d20540, 0x00d204c0 },
{ 0x00000001, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x00400001, 0xd8000231, 0x008a0540, 0x00000000 },
{ 0x00400001, 0xd8100231, 0x008a0548, 0x00000000 },
{ 0x00400001, 0xd8200231, 0x008a0550, 0x00000000 },
{ 0x00400001, 0xd8300231, 0x008a0558, 0x00000000 },
{ 0x00600001, 0x220001ac, 0x008d0024, 0x00000000 },
{ 0x00200040, 0x244c3dad, 0x00450448, 0xfff8fff8 },
{ 0x00000401, 0x220001ec, 0x00000000, 0x07000700 },
{ 0x00000801, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00000441, 0x254635ad, 0x00000448, 0x0000044a },
{ 0x00000c41, 0x254025ad, 0x0000444c, 0x0000444e },
{ 0x00000c41, 0x254225ad, 0x00000448, 0x0000444e },
{ 0x00000841, 0x254435ad, 0x0000444c, 0x0000044a },
{ 0x00600041, 0x24002628, 0x00898000, 0x00000540 },
{ 0x00600048, 0x24002628, 0x00898002, 0x00000542 },
{ 0x00600048, 0x24002628, 0x00898008, 0x00000544 },
{ 0x00600048, 0x2540262d, 0x0089800a, 0x00000546 },
{ 0x00400401, 0xbc0001a9, 0x00690540, 0x00000000 },
{ 0x00400801, 0xbc1001a9, 0x00690548, 0x00000000 },
{ 0x01000010, 0x20003d2c, 0x00000022, 0x00030003 },
{ 0x01000040, 0x20223d29, 0x02000022, 0xffffffff },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0x00080008 },
{ 0x00110040, 0x24540c21, 0x00000454, 0x00080008 },
{ 0x00010040, 0x24540c21, 0x00000454, 0x00180038 },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffee6 },
{ 0x01800010, 0x20003dac, 0x0200010e, 0x00010001 },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0xffe0ffe0 },
{ 0x00010001, 0x24540061, 0x02000000, 0x06c00640 },
{ 0x00110001, 0x24540061, 0x02000000, 0x04800780 },
{ 0x00000001, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00800040, 0x24003dac, 0x00b19c00, 0x00200020 },
{ 0x00800040, 0x24203dac, 0x00b19c20, 0x00200020 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00060006 },
{ 0x8080000c, 0xdc203d91, 0x00b10420, 0x00060006 },
{ 0x02000040, 0x210e3d29, 0x0200010e, 0xffffffff },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0x00040004 },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffcf8 },
{ 0x01000005, 0x25643e2d, 0x00000060, 0x00c000c0 },
{ 0x01000010, 0x20003dac, 0x02000458, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x01000010, 0x20003dac, 0x00000458, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00a02001, 0x46400231, 0x00d20780, 0x00000000 },
{ 0x00a02001, 0x46800231, 0x00d207c0, 0x00000000 },
{ 0x00a02001, 0x46c00231, 0x00d20480, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000007e },
{ 0x80a02042, 0x46404631, 0x00d20640, 0x00d20780 },
{ 0x80a02042, 0x46804631, 0x00d20680, 0x00d207c0 },
{ 0x80a02042, 0x46c04631, 0x00d206c0, 0x00d20480 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000076 },
{ 0x01000010, 0x20003dac, 0x02000564, 0x00800080 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x0000000e },
{ 0x01000010, 0x20003dac, 0x00000458, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xffffffe4 },
{ 0x00200401, 0x256801ed, 0x00000000, 0x00200020 },
{ 0x00200801, 0x256c01ed, 0x00000000, 0x00060006 },
{ 0x00400001, 0x258001ed, 0x00000000, 0x00000000 },
{ 0x00600001, 0x45a001ad, 0x00058c00, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000028 },
{ 0x02600005, 0x20006e28, 0x02008c0c, 0x88848421 },
{ 0x0220000c, 0x25663dad, 0x00000458, 0x00010001 },
{ 0x0000000c, 0x25643dad, 0x00000564, 0x00060006 },
{ 0x00310001, 0x25c401ad, 0x00000458, 0x00000000 },
{ 0x00210001, 0x25c00061, 0x00000000, 0x00010001 },
{ 0x00310040, 0x25c03dad, 0x004545c4, 0x00010001 },
{ 0x00610001, 0x25a00061, 0x02000000, 0x00000080 },
{ 0x00710001, 0x45a002ad, 0x02ae8c00, 0x00000000 },
{ 0x00710001, 0x45a202ad, 0x02ae8c01, 0x00000000 },
{ 0x00800041, 0x25a035ad, 0x00b105a0, 0x000905c0 },
{ 0x01200010, 0x20003e2c, 0x0245006e, 0x00000000 },
{ 0x00310009, 0x244c45ad, 0x02000564, 0x0045006e },
{ 0x00210001, 0x244c01ed, 0x02000000, 0x00000000 },
{ 0x0031000c, 0x244c3dad, 0x0245044c, 0x00010001 },
{ 0x00200009, 0x256835ad, 0x0045044c, 0x00000566 },
{ 0x00210040, 0x256835ad, 0x02450568, 0x00000566 },
{ 0x00200040, 0x256c362d, 0x0045006e, 0x00000566 },
{ 0x00400040, 0x240035ac, 0x00ab05a2, 0x00ab05a6 },
{ 0x00400040, 0x2400358c, 0x00690400, 0x00000566 },
{ 0x0040000c, 0x2580358d, 0x00690400, 0x00000566 },
{ 0x00800041, 0x2400362c, 0x00d20640, 0x000005a0 },
{ 0x00800041, 0x2420362c, 0x00d20660, 0x000005a0 },
{ 0x00800048, 0x2400362c, 0x00d20780, 0x000005a4 },
{ 0x00800048, 0x2420362c, 0x00d207a0, 0x000005a4 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00000568 },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x00000568 },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056c },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056c },
{ 0x80800040, 0x464035b1, 0x00b104c0, 0x00000580 },
{ 0x80800040, 0x466035b1, 0x00b104e0, 0x00000580 },
{ 0x00800041, 0x2400362c, 0x00d20680, 0x000005a0 },
{ 0x00800041, 0x2420362c, 0x00d206a0, 0x000005a0 },
{ 0x00800048, 0x2400362c, 0x00d207c0, 0x000005a4 },
{ 0x00800048, 0x2420362c, 0x00d207e0, 0x000005a4 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00000568 },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x00000568 },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056c },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056c },
{ 0x80800040, 0x468035b1, 0x00b104c0, 0x00000580 },
{ 0x80800040, 0x46a035b1, 0x00b104e0, 0x00000580 },
{ 0x00800041, 0x2400362c, 0x00d206c0, 0x000705a8 },
{ 0x00800041, 0x2420362c, 0x00d206e0, 0x000705a8 },
{ 0x00800048, 0x2400362c, 0x00d20480, 0x000705ac },
{ 0x00800048, 0x2420362c, 0x00d204a0, 0x000705ac },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x0000056a },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x0000056a },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056e },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056e },
{ 0x80800040, 0x46c035b1, 0x00b104c0, 0x00050582 },
{ 0x80800040, 0x46e035b1, 0x00b104e0, 0x00050582 },
{ 0x01800005, 0x20003d2c, 0x02000020, 0x00020002 },
{ 0x80800040, 0xd00045b1, 0x00b19000, 0x00d20640 },
{ 0x80800040, 0xd02045b1, 0x00b19020, 0x00d20660 },
{ 0x80800040, 0xd04045b1, 0x00b19040, 0x00d20680 },
{ 0x80800040, 0xd06045b1, 0x00b19060, 0x00d206a0 },
{ 0x00000040, 0x22083d8c, 0x00000208, 0x00800080 },
{ 0x80400040, 0xd40045b1, 0x00699400, 0x00ab06c0 },
{ 0x80400040, 0xd48045b1, 0x00699480, 0x00ab06c2 },
{ 0x80400040, 0xd42045b1, 0x00699420, 0x00ab06e0 },
{ 0x80400040, 0xd4a045b1, 0x006994a0, 0x00ab06e2 },
{ 0x80400040, 0xd41045b1, 0x00699410, 0x00ab06d0 },
{ 0x80400040, 0xd49045b1, 0x00699490, 0x00ab06d2 },
{ 0x80400040, 0xd43045b1, 0x00699430, 0x00ab06f0 },
{ 0x80400040, 0xd4b045b1, 0x006994b0, 0x00ab06f2 },
{ 0x00000040, 0x220a3d8c, 0x0000020a, 0x00080008 },
{ 0x00110040, 0x220a3d8c, 0x0200020a, 0x00300030 },
{ 0x01000010, 0x20003d2c, 0x02000020, 0x00060006 },
{ 0x00000040, 0x20203d29, 0x00000020, 0x00020002 },
{ 0x00000040, 0x22040c00, 0x00000204, 0x00100001 },
{ 0x00000040, 0x220c358c, 0x0000020c, 0x0000003a },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffc36 },
{ 0x00000001, 0x220001ec, 0x00000000, 0x01400140 },
{ 0x00000001, 0x220201ec, 0x00000000, 0x01c001c0 },
{ 0x00800401, 0x20400236, 0x01ee8000, 0x00000000 },
{ 0x00800801, 0x20500236, 0x01ee8010, 0x00000000 },
{ 0x00800401, 0x20600236, 0x01ee8020, 0x00000000 },
{ 0x00800801, 0x20700236, 0x01ee8030, 0x00000000 },
{ 0x00800401, 0x20800236, 0x01ee8040, 0x00000000 },
{ 0x00800801, 0x20900236, 0x01ee8050, 0x00000000 },
{ 0x00800401, 0x20a00236, 0x01ee8060, 0x00000000 },
{ 0x00800801, 0x20b00236, 0x01ee8070, 0x00000000 },
{ 0x00800401, 0x20c00236, 0x01ee8100, 0x00000000 },
{ 0x00800801, 0x20d00236, 0x01ee8110, 0x00000000 },
{ 0x00800401, 0x20e00236, 0x01ee8120, 0x00000000 },
{ 0x00800801, 0x20f00236, 0x01ee8130, 0x00000000 },
{ 0x00800401, 0x21000236, 0x01ee8140, 0x00000000 },
{ 0x00800801, 0x21100236, 0x01ee8150, 0x00000000 },
{ 0x00800401, 0x21200236, 0x01ee8160, 0x00000000 },
{ 0x00800801, 0x21300236, 0x01ee8170, 0x00000000 },
{ 0x00200401, 0x204001a5, 0x00450064, 0x00000000 },
{ 0x00000801, 0x20480061, 0x00000000, 0x000f000f },
{ 0x01600031, 0x21401c21, 0x508d0040, 0x1218a000 },
{ 0x00000001, 0x220001ec, 0x00000000, 0x03400340 },
{ 0x00800401, 0x41600236, 0x00d28000, 0x00000000 },
{ 0x00800801, 0x41610236, 0x00d28080, 0x00000000 },
{ 0x00800401, 0x41800236, 0x00d28020, 0x00000000 },
{ 0x00800801, 0x41810236, 0x00d280a0, 0x00000000 },
{ 0x00800401, 0x41a00236, 0x00d28040, 0x00000000 },
{ 0x00800801, 0x41a10236, 0x00d280c0, 0x00000000 },
{ 0x00800401, 0x41c00236, 0x00d28060, 0x00000000 },
{ 0x00800801, 0x41c10236, 0x00d280e0, 0x00000000 },
{ 0x0000040c, 0x20443ca5, 0x00000044, 0x00010001 },
{ 0x00000801, 0x20480061, 0x00000000, 0x0007000f },
{ 0x0a600031, 0x21601c21, 0x508d0040, 0x0a18a001 },
{ 0x00000001, 0x21400021, 0x00000140, 0x00000000 },
{ 0x00000001, 0x21600021, 0x00000160, 0x00000000 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x00600001, 0x20400021, 0x008d0000, 0x00000000 },
{ 0x00000005, 0x20203e2d, 0x00000061, 0x001f001f },
{ 0x00200009, 0x20643e2d, 0x00450064, 0x00040004 },
{ 0x00000001, 0x203a01ed, 0x00000000, 0x00000000 },
{ 0x01000010, 0x20003dac, 0x00000020, 0x00160016 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x01200010, 0x20003e2c, 0x0200006c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000024 },
{ 0x00800009, 0x25403dad, 0x00050064, 0x00020002 },
{ 0x00000001, 0x203a01ed, 0x00000000, 0x00180018 },
{ 0x00200040, 0x45483dad, 0x00660548, 0x00100010 },
{ 0x00200040, 0x45523dad, 0x00660552, 0x00100010 },
{ 0x00400040, 0x25583dad, 0x00690558, 0x00100010 },
{ 0x00800040, 0x208035ad, 0x00b10080, 0x00b10540 },
{ 0x00600040, 0x45403dad, 0x00ae0540, 0x00200020 },
{ 0x00800040, 0x20a035ad, 0x00b100a0, 0x00b10540 },
{ 0x00600040, 0x45423dad, 0x00ae0542, 0x00200020 },
{ 0x00800040, 0x20e035ad, 0x00b100e0, 0x00b10540 },
{ 0x00600040, 0x45403dad, 0x00ae0540, 0xffe0ffe0 },
{ 0x00800040, 0x20c035ad, 0x00b100c0, 0x00b10540 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x06600010, 0x20003dac, 0x02000020, 0x00030003 },
{ 0x00000001, 0x206c0171, 0x00000000, 0x00000000 },
{ 0x00610001, 0x208000a5, 0x02050080, 0x00000000 },
{ 0x00610001, 0x212000a5, 0x02090100, 0x00000000 },
{ 0x00410001, 0x211000a5, 0x02690100, 0x00000000 },
{ 0x00200009, 0x25403dad, 0x00450064, 0x00020002 },
{ 0x00800040, 0x208035ad, 0x00b10080, 0x00050540 },
{ 0x00200040, 0x40883dad, 0x00660088, 0x00200020 },
{ 0x00200040, 0x40923dad, 0x00660092, 0x00200020 },
{ 0x00400040, 0x20983dad, 0x00690098, 0x00200020 },
{ 0x00200401, 0x22080060, 0x00000000, 0x03400140 },
{ 0x00000c01, 0x220c0060, 0x00000000, 0x04400080 },
{ 0x00000801, 0x22040060, 0x00000000, 0x01000070 },
{ 0x00000005, 0x203e2e29, 0x00000063, 0x00010001 },
{ 0x00000001, 0x20200169, 0x00000000, 0x00000000 },
{ 0x0000000c, 0x2458262d, 0x0000006d, 0x00000020 },
{ 0x00000001, 0x210e0169, 0x00000000, 0x00010001 },
{ 0x00000005, 0x24583dad, 0x00000458, 0x00030003 },
{ 0x01000010, 0x200035ac, 0x0000010e, 0x00000458 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000316 },
{ 0x01000010, 0x20003dac, 0x0200010e, 0x00010001 },
{ 0x00010401, 0x24540061, 0x02000000, 0x06c00640 },
{ 0x00010805, 0x245a3e2d, 0x02008800, 0x007f007f },
{ 0x00110401, 0x24540061, 0x02000000, 0x04800780 },
{ 0x00110805, 0x245a3e2d, 0x02008804, 0x007f007f },
{ 0x00010005, 0x245c3e2d, 0x02008800, 0x00800080 },
{ 0x00110005, 0x245c3e2d, 0x02008804, 0x00800080 },
{ 0x00000009, 0x245c3dad, 0x0000045c, 0x00010001 },
{ 0x0000000c, 0x211e362d, 0x0000006c, 0x00000020 },
{ 0x00000040, 0x240035ac, 0x0000003e, 0x0000045c },
{ 0x01000010, 0x20003d8c, 0x00210400, 0x00010001 },
{ 0x01000010, 0x20003d8c, 0x02210400, 0x01000100 },
{ 0x00000001, 0x203c01ed, 0x00000000, 0x00000000 },
{ 0x00010001, 0x203c01ed, 0x00000000, 0x00020002 },
{ 0x00010001, 0x203c01ed, 0x02000000, 0xfffefffe },
{ 0x00000040, 0x20780d21, 0x0000045a, 0x0208e602 },
{ 0x00000040, 0x20782421, 0x00000078, 0x0000045c },
{ 0x02000005, 0x20003dac, 0x0200011e, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000001c0 },
{ 0x01000005, 0x20003dac, 0x00009800, 0x00030003 },
{ 0x00200005, 0x24443dad, 0x00459800, 0x00030003 },
{ 0x0020000c, 0x24403dad, 0x00459800, 0x00020002 },
{ 0x01600006, 0x20003dac, 0x02000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000012 },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00400000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00700000 },
{ 0x00310040, 0x20401da5, 0x02450440, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x000c000c },
{ 0x00010040, 0x20401da5, 0x02000440, 0xfffffffe },
{ 0x00010001, 0x204401a5, 0x02000442, 0x00000000 },
{ 0x00010001, 0x20480061, 0x02000000, 0x0007000c },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00200000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00400000 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00110040, 0x20441da5, 0x02000442, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x000c0007 },
{ 0x00010001, 0x20480061, 0x02000000, 0x00070007 },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000040, 0xb80235ad, 0x00009802, 0x0000003c },
{ 0x0020040c, 0x24403dad, 0x00459800, 0x00030003 },
{ 0x00200805, 0x24483dad, 0x00459800, 0x00070007 },
{ 0x01600006, 0x20003dac, 0x0000044a, 0x00000000 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00000009, 0x20403ca5, 0x00000040, 0x00010001 },
{ 0x00010040, 0x22000c20, 0x00000078, 0x00200010 },
{ 0x00110040, 0x22000c20, 0x00000078, 0x00300010 },
{ 0x00010001, 0x20480061, 0x00000000, 0x00030009 },
{ 0x00110001, 0x20480061, 0x00000000, 0x00040009 },
{ 0x02600031, 0x27000021, 0x408d0040, 0x00000200 },
{ 0x01000005, 0x20003dac, 0x00009800, 0x00030003 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000001a },
{ 0x00600001, 0x26220231, 0x008d05c0, 0x00000000 },
{ 0x00600401, 0x26120231, 0x008d05b8, 0x00000000 },
{ 0x00600801, 0x26020231, 0x008d05b0, 0x00000000 },
{ 0x00600401, 0x25f20231, 0x008d05a8, 0x00000000 },
{ 0x00600801, 0x25e20231, 0x008d05a0, 0x00000000 },
{ 0x00600401, 0x25d20231, 0x008d0598, 0x00000000 },
{ 0x00600801, 0x25c20231, 0x008d0590, 0x00000000 },
{ 0x00600401, 0x25b20231, 0x008d0588, 0x00000000 },
{ 0x00600801, 0x25a20231, 0x008d0580, 0x00000000 },
{ 0x00600401, 0x25920231, 0x008d0578, 0x00000000 },
{ 0x00600801, 0x25820231, 0x008d0570, 0x00000000 },
{ 0x00600001, 0x25720231, 0x008d0568, 0x00000000 },
{ 0x00600001, 0x25620231, 0x008d0560, 0x00000000 },
{ 0x00110001, 0x220001ec, 0x02000000, 0x05820582 },
{ 0x00010001, 0x220001ec, 0x02000000, 0x05620562 },
{ 0x00000001, 0x220e0128, 0x00000454, 0x00000000 },
{ 0x01800006, 0x200035ac, 0x02000446, 0x00000444 },
{ 0x00810001, 0xbc000229, 0x02ad8000, 0x00000000 },
{ 0x00810001, 0xbc200229, 0x02ad8020, 0x00000000 },
{ 0x00810001, 0xbc400229, 0x02ad8040, 0x00000000 },
{ 0x00810001, 0xbc600229, 0x02ad8060, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000012a },
{ 0x00600001, 0x2024018d, 0x008d0200, 0x00000000 },
{ 0x01000041, 0x245e35ad, 0x00000446, 0x00000444 },
{ 0x00000040, 0x22022d08, 0x00000200, 0x00100010 },
{ 0x02000005, 0x20003db0, 0x0200045e, 0x00010001 },
{ 0x00200040, 0x22042d08, 0x00450200, 0x00200020 },
{ 0x00400001, 0x244c0109, 0x00690200, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000066 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000064 },
{ 0x00000040, 0x22003d08, 0x00000200, 0xffdeffde },
{ 0x00000440, 0x22023d08, 0x00000202, 0xffeeffee },
{ 0x00000801, 0x220c0060, 0x00000000, 0x04a00480 },
{ 0x01000010, 0x20003db0, 0x0000045e, 0x00040004 },
{ 0x00a02040, 0x2400462c, 0x00ad8000, 0x00ad8005 },
{ 0x00a02048, 0x24003e2c, 0x00ad8001, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8002, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8003, 0x00140014 },
{ 0x00a02048, 0xb8003e2d, 0x00ad8004, 0xfffbfffb },
{ 0x00a02040, 0x2400462c, 0x00ad8040, 0x00ad8045 },
{ 0x00a02048, 0x24003e2c, 0x00ad8041, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8042, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8043, 0x00140014 },
{ 0x00a02048, 0xb8403e2d, 0x00ad8044, 0xfffbfffb },
{ 0x00a02040, 0x2400462c, 0x00ad8080, 0x00ad8085 },
{ 0x00a02048, 0x24003e2c, 0x00ad8081, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8082, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8083, 0x00140014 },
{ 0x00a02048, 0xb8803e2d, 0x00ad8084, 0xfffbfffb },
{ 0x00600040, 0x2400462c, 0x008d80c0, 0x008d80c5 },
{ 0x00600048, 0x24003e2c, 0x008d80c1, 0xfffbfffb },
{ 0x00600048, 0x24003e2c, 0x008d80c2, 0x00140014 },
{ 0x00600048, 0x24003e2c, 0x008d80c3, 0x00140014 },
{ 0x00600048, 0xb8c03e2d, 0x008d80c4, 0xfffbfffb },
{ 0x00000401, 0x22000060, 0x00000000, 0x04a00480 },
{ 0x00000c01, 0x22040060, 0x00000000, 0x04a00490 },
{ 0x00010802, 0x220c2d28, 0x00000454, 0x04800480 },
{ 0x00a02040, 0x24003dac, 0x00b18000, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x01ed8800, 0xfffbfffb },
{ 0x00800048, 0x24203dac, 0x01ed8820, 0xfffbfffb },
{ 0x00a02048, 0x24003dac, 0x00b18020, 0x00140014 },
{ 0x00800048, 0x24003dac, 0x01ed8820, 0x00140014 },
{ 0x00800048, 0x24203dac, 0x01ed8840, 0x00140014 },
{ 0x00a02048, 0x24003dac, 0x00b18040, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed8840, 0x00010001 },
{ 0x00800048, 0x24203dac, 0x01ed8860, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x000a000a },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x000a000a },
{ 0x00a02040, 0x24003dac, 0x00b18040, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x01ed8840, 0xfffbfffb },
{ 0x00800048, 0x24203dac, 0x01ed8860, 0xfffbfffb },
{ 0x00a02048, 0x24003dac, 0x00b18060, 0x00140014 },
{ 0x00800048, 0x24003dac, 0x01ed8860, 0x00140014 },
{ 0x00800048, 0x24203dac, 0x01ed8880, 0x00140014 },
{ 0x00a02048, 0x24003dac, 0x00b18080, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed8880, 0x00010001 },
{ 0x00800048, 0x24203dac, 0x01ed88a0, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x000a000a },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x000a000a },
{ 0x00010220, 0x34001c00, 0x00001400, 0x000000b4 },
{ 0x01000010, 0x20003db0, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000004c },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000004a },
{ 0x00400040, 0x22003d28, 0x0069044c, 0xfffefffe },
{ 0x03400010, 0x20003dac, 0x00000446, 0x00020002 },
{ 0x01000010, 0x20003db0, 0x02000444, 0x00020002 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00100010 },
{ 0x01000010, 0x20003dac, 0x00000446, 0x00000000 },
{ 0x00010002, 0x220c2d28, 0x02000454, 0x04800480 },
{ 0x00800040, 0x24003e2c, 0x01ed8000, 0x00100010 },
{ 0x00800040, 0x24203e2c, 0x01ed8020, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8001, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8021, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8002, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8022, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8003, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8023, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8004, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8024, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8005, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8025, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x00050005 },
{ 0x00800040, 0x24003e2c, 0x01ed8040, 0x00100010 },
{ 0x00800040, 0x24203e2c, 0x01ed8060, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8041, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8061, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8042, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8062, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8043, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8063, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8044, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8064, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8045, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8065, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000062 },
{ 0x01000010, 0x20003db0, 0x00000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000042 },
{ 0x00200401, 0x22000128, 0x0066044c, 0x00000000 },
{ 0x00200c01, 0x22040128, 0x0045044e, 0x00000000 },
{ 0x00000801, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x03400010, 0x20003dac, 0x02000444, 0x00020002 },
{ 0x01000010, 0x20003dac, 0x00000444, 0x00000000 },
{ 0x00410040, 0x22002d08, 0x02690200, 0x00010001 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00110001, 0x220c0168, 0x02000000, 0x04800480 },
{ 0x00a02040, 0x24003e2c, 0x00ad83e0, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8be0, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8800, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8800, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8820, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8020, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8820, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8840, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x00050005 },
{ 0x00a02040, 0x24003e2c, 0x00ad8020, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8820, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8840, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8040, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8840, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8860, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8060, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8860, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8880, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001c },
{ 0x00200401, 0x22000128, 0x0045044c, 0x00000000 },
{ 0x00000801, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x01200010, 0x20003dac, 0x00000444, 0x00030003 },
{ 0x01200010, 0x20003dac, 0x02000446, 0x00030003 },
{ 0x00210040, 0x22002d08, 0x00450200, 0x00010001 },
{ 0x00210040, 0x22002d08, 0x02450200, 0x00100010 },
{ 0x00800001, 0xb8000229, 0x01ed8000, 0x00000000 },
{ 0x00800001, 0xb8200229, 0x01ed8020, 0x00000000 },
{ 0x00800001, 0xb8400229, 0x01ed8040, 0x00000000 },
{ 0x00800001, 0xb8600229, 0x01ed8060, 0x00000000 },
{ 0x80800042, 0xd8004631, 0x00d29800, 0x00d20480 },
{ 0x80800042, 0xd8204631, 0x00d29820, 0x00d204a0 },
{ 0x80800042, 0xd8404631, 0x00d29840, 0x00d204c0 },
{ 0x80800042, 0xd8604631, 0x00d29860, 0x00d204e0 },
{ 0x00600001, 0x220001ac, 0x008d0024, 0x00000000 },
{ 0x00200040, 0x244c3dad, 0x00450448, 0xfff8fff8 },
{ 0x00000401, 0x220001ec, 0x00000000, 0x07000700 },
{ 0x00000c01, 0x220201e8, 0x00000000, 0x07100710 },
{ 0x00000801, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00000441, 0x254635ad, 0x00000448, 0x0000044a },
{ 0x00000c41, 0x254025ad, 0x0000444c, 0x0000444e },
{ 0x00000c41, 0x254225ad, 0x00000448, 0x0000444e },
{ 0x00000841, 0x254435ad, 0x0000444c, 0x0000044a },
{ 0x00200040, 0x244c3d09, 0x00450200, 0x00100010 },
{ 0x00800041, 0x24002628, 0x00ad8000, 0x00000540 },
{ 0x00800041, 0x24202628, 0x00ad8020, 0x00000540 },
{ 0x00800048, 0x24002628, 0x00ad8002, 0x00000542 },
{ 0x00800048, 0x24202628, 0x00ad8022, 0x00000542 },
{ 0x00200001, 0x22000128, 0x0045044c, 0x00000000 },
{ 0x00800048, 0x24002628, 0x01ed8000, 0x00000544 },
{ 0x00800048, 0x24202628, 0x01ed8020, 0x00000544 },
{ 0x00800048, 0xbc002629, 0x01ed8002, 0x00000546 },
{ 0x00801048, 0xbc202629, 0x01ed8022, 0x00000546 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000128 },
{ 0x00000001, 0x20220169, 0x00000000, 0x00040004 },
{ 0x00200005, 0x24443dad, 0x00459800, 0x00030003 },
{ 0x0020000c, 0x24403dad, 0x00459800, 0x00020002 },
{ 0x01600006, 0x20003dac, 0x02000446, 0x00000000 },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00200000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00500000 },
{ 0x00310040, 0x20401da5, 0x02450440, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x00080008 },
{ 0x00010040, 0x20401da5, 0x02000440, 0xfffffffe },
{ 0x00010001, 0x204401a5, 0x02000442, 0x00000000 },
{ 0x00010001, 0x20480061, 0x02000000, 0x00030008 },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000040, 0xb80235ad, 0x00009802, 0x0000003c },
{ 0x00000040, 0x22000c20, 0x00000078, 0x00100010 },
{ 0x0020040c, 0x24403dad, 0x00459800, 0x00030003 },
{ 0x00200805, 0x24483dad, 0x00459800, 0x00070007 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00000009, 0x20403ca5, 0x00000040, 0x00010001 },
{ 0x00000001, 0x20480061, 0x00000000, 0x00020005 },
{ 0x02600031, 0x27000021, 0x408d0040, 0x00000200 },
{ 0x00110001, 0x220001ec, 0x02000000, 0x05820582 },
{ 0x00010001, 0x220001ec, 0x02000000, 0x05620562 },
{ 0x00000001, 0x220e0128, 0x00000454, 0x00000000 },
{ 0x01800006, 0x200035ac, 0x02000446, 0x00000444 },
{ 0x00410001, 0xbc000229, 0x02698000, 0x00000000 },
{ 0x00410001, 0xbc100229, 0x02698010, 0x00000000 },
{ 0x00410001, 0xbc200229, 0x02698020, 0x00000000 },
{ 0x00410001, 0xbc300229, 0x02698030, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000be },
{ 0x00600001, 0x2024018d, 0x008d0200, 0x00000000 },
{ 0x01000041, 0x245e35ad, 0x00000446, 0x00000444 },
{ 0x02000005, 0x20003db0, 0x0200045e, 0x00010001 },
{ 0x00000040, 0x22022d08, 0x00000200, 0x00100010 },
{ 0x00200040, 0x22042d08, 0x00450200, 0x00200020 },
{ 0x00400001, 0x244c0109, 0x00690200, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000044 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000042 },
{ 0x00000040, 0x22003d08, 0x00000200, 0xffdeffde },
{ 0x00000440, 0x22023d08, 0x00000202, 0xffeeffee },
{ 0x00000801, 0x220c0060, 0x00000000, 0x04d004c0 },
{ 0x01000010, 0x20003db0, 0x0000045e, 0x00040004 },
{ 0x00802040, 0x2400462c, 0x00a98000, 0x00a98005 },
{ 0x00802048, 0x24003e2c, 0x00a98001, 0xfffbfffb },
{ 0x00802048, 0x24003e2c, 0x00a98002, 0x00140014 },
{ 0x00802048, 0x24003e2c, 0x00a98003, 0x00140014 },
{ 0x00802048, 0xb8003e2d, 0x00a98004, 0xfffbfffb },
{ 0x00802040, 0x2400462c, 0x00a98040, 0x00a98045 },
{ 0x00802048, 0x24003e2c, 0x00a98041, 0xfffbfffb },
{ 0x00802048, 0x24003e2c, 0x00a98042, 0x00140014 },
{ 0x00802048, 0x24003e2c, 0x00a98043, 0x00140014 },
{ 0x00802048, 0xb8203e2d, 0x00a98044, 0xfffbfffb },
{ 0x00400040, 0x2400462c, 0x00698080, 0x00698085 },
{ 0x00400048, 0x24003e2c, 0x00698081, 0xfffbfffb },
{ 0x00400048, 0x24003e2c, 0x00698082, 0x00140014 },
{ 0x00400048, 0x24003e2c, 0x00698083, 0x00140014 },
{ 0x00400048, 0xb8403e2d, 0x00698084, 0xfffbfffb },
{ 0x00000401, 0x220c0060, 0x00000000, 0x04e004d0 },
{ 0x00000c01, 0x22000060, 0x00000000, 0x04d004c8 },
{ 0x00000c01, 0x22040060, 0x00000000, 0x04e004d8 },
{ 0x00000801, 0x22080060, 0x00000000, 0x04f004e8 },
{ 0x00800040, 0x24003dac, 0x00b104c0, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x00b104e0, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed9800, 0x00140014 },
{ 0x00010001, 0x220c0168, 0x00000000, 0x05400540 },
{ 0x00110001, 0x220c0168, 0x00000000, 0x04c004c0 },
{ 0x00800048, 0x24003dac, 0x01e98000, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01e98020, 0x00010001 },
{ 0x00800048, 0x24003dac, 0x01e98800, 0x00140014 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x000a000a },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000060 },
{ 0x01000010, 0x20003db0, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000022 },
{ 0x00400040, 0x22003d28, 0x0069044c, 0xfffefffe },
{ 0x03400010, 0x20003dac, 0x00000446, 0x00020002 },
{ 0x01000010, 0x20003db0, 0x02000444, 0x00020002 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00100010 },
{ 0x01000010, 0x20003dac, 0x00000446, 0x00000000 },
{ 0x00010001, 0x220e0168, 0x02000000, 0x05400540 },
{ 0x00110001, 0x220e0168, 0x02000000, 0x04c004c0 },
{ 0x00800040, 0x24003e2c, 0x01e98000, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01e98001, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e98002, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98003, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98004, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e98005, 0x00010001 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000036 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000036 },
{ 0x01000010, 0x20003db0, 0x00000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x03600010, 0x20003dac, 0x02000444, 0x00020002 },
{ 0x00400401, 0x22000128, 0x0069044c, 0x00000000 },
{ 0x00400840, 0x22083d2c, 0x0069044c, 0x00100010 },
{ 0x00610040, 0x22002d08, 0x02690200, 0x00010001 },
{ 0x01000010, 0x20003dac, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00800040, 0x24003e2c, 0x01e983e0, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01e98000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98020, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e993e0, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e99000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e99020, 0x00010001 },
{ 0x00000001, 0x220e0168, 0x00000000, 0x05400540 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00110001, 0x220e0168, 0x02000000, 0x04c004c0 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000e },
{ 0x00400001, 0x22000128, 0x0069044c, 0x00000000 },
{ 0x01400010, 0x20003dac, 0x00000444, 0x00030003 },
{ 0x01400010, 0x20003dac, 0x02000446, 0x00030003 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00010001 },
{ 0x00410040, 0x22002d08, 0x02690200, 0x00100010 },
{ 0x00800001, 0x25400229, 0x01e98000, 0x00000000 },
{ 0x80800042, 0x45404631, 0x00d20540, 0x00d204c0 },
{ 0x00000001, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x00400001, 0xd8000231, 0x008a0540, 0x00000000 },
{ 0x00400001, 0xd8100231, 0x008a0548, 0x00000000 },
{ 0x00400001, 0xd8200231, 0x008a0550, 0x00000000 },
{ 0x00400001, 0xd8300231, 0x008a0558, 0x00000000 },
{ 0x00600001, 0x220001ac, 0x008d0024, 0x00000000 },
{ 0x00200040, 0x244c3dad, 0x00450448, 0xfff8fff8 },
{ 0x00000401, 0x220001ec, 0x00000000, 0x07000700 },
{ 0x00000801, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00000441, 0x254635ad, 0x00000448, 0x0000044a },
{ 0x00000c41, 0x254025ad, 0x0000444c, 0x0000444e },
{ 0x00000c41, 0x254225ad, 0x00000448, 0x0000444e },
{ 0x00000841, 0x254435ad, 0x0000444c, 0x0000044a },
{ 0x00600041, 0x24002628, 0x00898000, 0x00000540 },
{ 0x00600048, 0x24002628, 0x00898002, 0x00000542 },
{ 0x00600048, 0x24002628, 0x00898008, 0x00000544 },
{ 0x00600048, 0x2540262d, 0x0089800a, 0x00000546 },
{ 0x00400401, 0xbc0001a9, 0x00690540, 0x00000000 },
{ 0x00400801, 0xbc1001a9, 0x00690548, 0x00000000 },
{ 0x01000010, 0x20003d2c, 0x00000022, 0x00030003 },
{ 0x01000040, 0x20223d29, 0x02000022, 0xffffffff },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0x00080008 },
{ 0x00110040, 0x24540c21, 0x00000454, 0x00080008 },
{ 0x00010040, 0x24540c21, 0x00000454, 0x00180038 },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffee4 },
{ 0x01800010, 0x20003dac, 0x0200010e, 0x00010001 },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0xffe0ffe0 },
{ 0x00010001, 0x24540061, 0x02000000, 0x06c00640 },
{ 0x00110001, 0x24540061, 0x02000000, 0x04800780 },
{ 0x00000001, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00800040, 0x24003dac, 0x00b19c00, 0x00200020 },
{ 0x00800040, 0x24203dac, 0x00b19c20, 0x00200020 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00060006 },
{ 0x8080000c, 0xdc203d91, 0x00b10420, 0x00060006 },
{ 0x02000040, 0x210e3d29, 0x0200010e, 0xffffffff },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0x00040004 },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffce0 },
{ 0x01000005, 0x25643e2d, 0x00000060, 0x00c000c0 },
{ 0x01000010, 0x20003dac, 0x02000458, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x01000010, 0x20003dac, 0x00000458, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00a02001, 0x46400231, 0x00d20780, 0x00000000 },
{ 0x00a02001, 0x46800231, 0x00d207c0, 0x00000000 },
{ 0x00a02001, 0x46c00231, 0x00d20480, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000007e },
{ 0x80a02042, 0x46404631, 0x00d20640, 0x00d20780 },
{ 0x80a02042, 0x46804631, 0x00d20680, 0x00d207c0 },
{ 0x80a02042, 0x46c04631, 0x00d206c0, 0x00d20480 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000076 },
{ 0x01000010, 0x20003dac, 0x02000564, 0x00800080 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x0000000e },
{ 0x01000010, 0x20003dac, 0x00000458, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xffffffe4 },
{ 0x00200401, 0x256801ed, 0x00000000, 0x00200020 },
{ 0x00200801, 0x256c01ed, 0x00000000, 0x00060006 },
{ 0x00400001, 0x258001ed, 0x00000000, 0x00000000 },
{ 0x00600001, 0x45a001ad, 0x00058c00, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000028 },
{ 0x02600005, 0x20006e28, 0x02008c0c, 0x88848421 },
{ 0x0220000c, 0x25663dad, 0x00000458, 0x00010001 },
{ 0x0000000c, 0x25643dad, 0x00000564, 0x00060006 },
{ 0x00310001, 0x25c401ad, 0x00000458, 0x00000000 },
{ 0x00210001, 0x25c00061, 0x00000000, 0x00010001 },
{ 0x00310040, 0x25c03dad, 0x004545c4, 0x00010001 },
{ 0x00610001, 0x25a00061, 0x02000000, 0x00000080 },
{ 0x00710001, 0x45a002ad, 0x02ae8c00, 0x00000000 },
{ 0x00710001, 0x45a202ad, 0x02ae8c01, 0x00000000 },
{ 0x00800041, 0x25a035ad, 0x00b105a0, 0x000905c0 },
{ 0x01200010, 0x20003e2c, 0x0245006e, 0x00000000 },
{ 0x00310009, 0x244c45ad, 0x02000564, 0x0045006e },
{ 0x00210001, 0x244c01ed, 0x02000000, 0x00000000 },
{ 0x0031000c, 0x244c3dad, 0x0245044c, 0x00010001 },
{ 0x00200009, 0x256835ad, 0x0045044c, 0x00000566 },
{ 0x00210040, 0x256835ad, 0x02450568, 0x00000566 },
{ 0x00200040, 0x256c362d, 0x0045006e, 0x00000566 },
{ 0x00400040, 0x240035ac, 0x00ab05a2, 0x00ab05a6 },
{ 0x00400040, 0x2400358c, 0x00690400, 0x00000566 },
{ 0x0040000c, 0x2580358d, 0x00690400, 0x00000566 },
{ 0x00800041, 0x2400362c, 0x00d20640, 0x000005a0 },
{ 0x00800041, 0x2420362c, 0x00d20660, 0x000005a0 },
{ 0x00800048, 0x2400362c, 0x00d20780, 0x000005a4 },
{ 0x00800048, 0x2420362c, 0x00d207a0, 0x000005a4 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00000568 },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x00000568 },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056c },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056c },
{ 0x80800040, 0x464035b1, 0x00b104c0, 0x00000580 },
{ 0x80800040, 0x466035b1, 0x00b104e0, 0x00000580 },
{ 0x00800041, 0x2400362c, 0x00d20680, 0x000005a0 },
{ 0x00800041, 0x2420362c, 0x00d206a0, 0x000005a0 },
{ 0x00800048, 0x2400362c, 0x00d207c0, 0x000005a4 },
{ 0x00800048, 0x2420362c, 0x00d207e0, 0x000005a4 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00000568 },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x00000568 },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056c },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056c },
{ 0x80800040, 0x468035b1, 0x00b104c0, 0x00000580 },
{ 0x80800040, 0x46a035b1, 0x00b104e0, 0x00000580 },
{ 0x00800041, 0x2400362c, 0x00d206c0, 0x000705a8 },
{ 0x00800041, 0x2420362c, 0x00d206e0, 0x000705a8 },
{ 0x00800048, 0x2400362c, 0x00d20480, 0x000705ac },
{ 0x00800048, 0x2420362c, 0x00d204a0, 0x000705ac },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x0000056a },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x0000056a },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056e },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056e },
{ 0x80800040, 0x46c035b1, 0x00b104c0, 0x00050582 },
{ 0x80800040, 0x46e035b1, 0x00b104e0, 0x00050582 },
{ 0x01800005, 0x20003d2c, 0x02000020, 0x00020002 },
{ 0x80800040, 0xd00045b1, 0x00b19000, 0x00d20640 },
{ 0x80800040, 0xd02045b1, 0x00b19020, 0x00d20660 },
{ 0x80800040, 0xd04045b1, 0x00b19040, 0x00d20680 },
{ 0x80800040, 0xd06045b1, 0x00b19060, 0x00d206a0 },
{ 0x00000040, 0x22083d8c, 0x00000208, 0x00800080 },
{ 0x80400040, 0xd40045b1, 0x00699400, 0x00ab06c0 },
{ 0x80400040, 0xd48045b1, 0x00699480, 0x00ab06c2 },
{ 0x80400040, 0xd42045b1, 0x00699420, 0x00ab06e0 },
{ 0x80400040, 0xd4a045b1, 0x006994a0, 0x00ab06e2 },
{ 0x80400040, 0xd41045b1, 0x00699410, 0x00ab06d0 },
{ 0x80400040, 0xd49045b1, 0x00699490, 0x00ab06d2 },
{ 0x80400040, 0xd43045b1, 0x00699430, 0x00ab06f0 },
{ 0x80400040, 0xd4b045b1, 0x006994b0, 0x00ab06f2 },
{ 0x00000040, 0x220a3d8c, 0x0000020a, 0x00080008 },
{ 0x00110040, 0x220a3d8c, 0x0200020a, 0x00300030 },
{ 0x01000010, 0x20003d2c, 0x02000020, 0x00060006 },
{ 0x00000040, 0x20203d29, 0x00000020, 0x00020002 },
{ 0x00000040, 0x22040c00, 0x00000204, 0x00100001 },
{ 0x00000040, 0x220c358c, 0x0000020c, 0x0000003a },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffc1e },
{ 0x00000001, 0x220001ec, 0x00000000, 0x01400140 },
{ 0x00000001, 0x220201ec, 0x00000000, 0x01c001c0 },
{ 0x00800401, 0x20400236, 0x01ee8000, 0x00000000 },
{ 0x00800801, 0x20500236, 0x01ee8010, 0x00000000 },
{ 0x00800401, 0x20600236, 0x01ee8020, 0x00000000 },
{ 0x00800801, 0x20700236, 0x01ee8030, 0x00000000 },
{ 0x00800401, 0x20800236, 0x01ee8040, 0x00000000 },
{ 0x00800801, 0x20900236, 0x01ee8050, 0x00000000 },
{ 0x00800401, 0x20a00236, 0x01ee8060, 0x00000000 },
{ 0x00800801, 0x20b00236, 0x01ee8070, 0x00000000 },
{ 0x00800401, 0x20c00236, 0x01ee8100, 0x00000000 },
{ 0x00800801, 0x20d00236, 0x01ee8110, 0x00000000 },
{ 0x00800401, 0x20e00236, 0x01ee8120, 0x00000000 },
{ 0x00800801, 0x20f00236, 0x01ee8130, 0x00000000 },
{ 0x00800401, 0x21000236, 0x01ee8140, 0x00000000 },
{ 0x00800801, 0x21100236, 0x01ee8150, 0x00000000 },
{ 0x00800401, 0x21200236, 0x01ee8160, 0x00000000 },
{ 0x00800801, 0x21300236, 0x01ee8170, 0x00000000 },
{ 0x00000040, 0x22000d20, 0x00000062, 0x1218a600 },
{ 0x00200401, 0x204001a5, 0x00450064, 0x00000000 },
{ 0x00000801, 0x20480061, 0x00000000, 0x000f000f },
{ 0x01600031, 0x21400021, 0x508d0040, 0x00000200 },
{ 0x00000001, 0x220001ec, 0x00000000, 0x03400340 },
{ 0x00800401, 0x41600236, 0x00d28000, 0x00000000 },
{ 0x00800801, 0x41610236, 0x00d28080, 0x00000000 },
{ 0x00800401, 0x41800236, 0x00d28020, 0x00000000 },
{ 0x00800801, 0x41810236, 0x00d280a0, 0x00000000 },
{ 0x00800401, 0x41a00236, 0x00d28040, 0x00000000 },
{ 0x00800801, 0x41a10236, 0x00d280c0, 0x00000000 },
{ 0x00800401, 0x41c00236, 0x00d28060, 0x00000000 },
{ 0x00800801, 0x41c10236, 0x00d280e0, 0x00000000 },
{ 0x00000040, 0x22000d20, 0x00000062, 0x0a18a601 },
{ 0x0000040c, 0x20443ca5, 0x00000044, 0x00010001 },
{ 0x00000801, 0x20480061, 0x00000000, 0x0007000f },
{ 0x0a600031, 0x21600021, 0x508d0040, 0x00000200 },
{ 0x00000001, 0x21400021, 0x00000140, 0x00000000 },
{ 0x00000001, 0x21600021, 0x00000160, 0x00000000 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0000, 0x00000000 },
{ 0x00000005, 0x20203e2d, 0x00000061, 0x001f001f },
{ 0x00200009, 0x20643e2d, 0x00450064, 0x00040004 },
{ 0x00000001, 0x203a01ed, 0x00000000, 0x00000000 },
{ 0x01000010, 0x20003dac, 0x00000020, 0x00160016 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x01200010, 0x20003e2c, 0x0200006c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000024 },
{ 0x00800009, 0x25403dad, 0x00050064, 0x00020002 },
{ 0x00000001, 0x203a01ed, 0x00000000, 0x00180018 },
{ 0x00200040, 0x45483dad, 0x00660548, 0x00100010 },
{ 0x00200040, 0x45523dad, 0x00660552, 0x00100010 },
{ 0x00400040, 0x25583dad, 0x00690558, 0x00100010 },
{ 0x00800040, 0x208035ad, 0x00b10080, 0x00b10540 },
{ 0x00600040, 0x45403dad, 0x00ae0540, 0x00200020 },
{ 0x00800040, 0x20a035ad, 0x00b100a0, 0x00b10540 },
{ 0x00600040, 0x45423dad, 0x00ae0542, 0x00200020 },
{ 0x00800040, 0x20e035ad, 0x00b100e0, 0x00b10540 },
{ 0x00600040, 0x45403dad, 0x00ae0540, 0xffe0ffe0 },
{ 0x00800040, 0x20c035ad, 0x00b100c0, 0x00b10540 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x06600010, 0x20003dac, 0x02000020, 0x00030003 },
{ 0x00000001, 0x206c0171, 0x00000000, 0x00000000 },
{ 0x00610001, 0x208000a5, 0x02050080, 0x00000000 },
{ 0x00610001, 0x212000a5, 0x02090100, 0x00000000 },
{ 0x00410001, 0x211000a5, 0x02690100, 0x00000000 },
{ 0x00200009, 0x25403dad, 0x00450064, 0x00020002 },
{ 0x00800040, 0x208035ad, 0x00b10080, 0x00050540 },
{ 0x00200040, 0x40883dad, 0x00660088, 0x00200020 },
{ 0x00200040, 0x40923dad, 0x00660092, 0x00200020 },
{ 0x00400040, 0x20983dad, 0x00690098, 0x00200020 },
{ 0x00200401, 0x22080060, 0x00000000, 0x03400140 },
{ 0x00000c01, 0x220c0060, 0x00000000, 0x04400080 },
{ 0x00000801, 0x22040060, 0x00000000, 0x01000070 },
{ 0x02000005, 0x20002e28, 0x00000061, 0x00400040 },
{ 0x00010005, 0x203e2e29, 0x00000063, 0x00010001 },
{ 0x00110001, 0x203e0169, 0x00000000, 0x00030003 },
{ 0x00000001, 0x20200169, 0x00000000, 0x00000000 },
{ 0x0000000c, 0x2458262d, 0x0000006d, 0x00000020 },
{ 0x00000001, 0x210e0169, 0x00000000, 0x00010001 },
{ 0x00000005, 0x24583dad, 0x00000458, 0x00030003 },
{ 0x01000010, 0x200035ac, 0x0000010e, 0x00000458 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000031a },
{ 0x01000010, 0x20003dac, 0x0200010e, 0x00010001 },
{ 0x00010401, 0x24540061, 0x02000000, 0x06c00640 },
{ 0x00010805, 0x245a3e2d, 0x02008800, 0x007f007f },
{ 0x00110401, 0x24540061, 0x02000000, 0x04800780 },
{ 0x00110805, 0x245a3e2d, 0x02008804, 0x007f007f },
{ 0x00010005, 0x245c3e2d, 0x02008800, 0x00800080 },
{ 0x00110005, 0x245c3e2d, 0x02008804, 0x00800080 },
{ 0x00000009, 0x245c3dad, 0x0000045c, 0x00010001 },
{ 0x0000000c, 0x211e362d, 0x0000006c, 0x00000020 },
{ 0x00000040, 0x240035ac, 0x0000003e, 0x0000045c },
{ 0x01000010, 0x20003d8c, 0x00210400, 0x00010001 },
{ 0x01000010, 0x20003d8c, 0x02210400, 0x01000100 },
{ 0x00000001, 0x203c01ed, 0x00000000, 0x00000000 },
{ 0x00010001, 0x203c01ed, 0x00000000, 0x00020002 },
{ 0x00010001, 0x203c01ed, 0x02000000, 0xfffefffe },
{ 0x02000005, 0x20002e28, 0x00000061, 0x00400040 },
{ 0x00010040, 0x244c0d21, 0x0000045a, 0x0208e602 },
{ 0x00110040, 0x20780d21, 0x0000045a, 0x0208a002 },
{ 0x00010040, 0x20782421, 0x0000044c, 0x0000045c },
{ 0x02000005, 0x20003dac, 0x0200011e, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000001c0 },
{ 0x01000005, 0x20003dac, 0x00009800, 0x00030003 },
{ 0x00200005, 0x24443dad, 0x00459800, 0x00030003 },
{ 0x0020000c, 0x24403dad, 0x00459800, 0x00020002 },
{ 0x01600006, 0x20003dac, 0x02000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000012 },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00400000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00700000 },
{ 0x00310040, 0x20401da5, 0x02450440, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x000c000c },
{ 0x00010040, 0x20401da5, 0x02000440, 0xfffffffe },
{ 0x00010001, 0x204401a5, 0x02000442, 0x00000000 },
{ 0x00010001, 0x20480061, 0x02000000, 0x0007000c },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00200000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00400000 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00110040, 0x20441da5, 0x02000442, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x000c0007 },
{ 0x00010001, 0x20480061, 0x02000000, 0x00070007 },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000040, 0xb80235ad, 0x00009802, 0x0000003c },
{ 0x0020040c, 0x24403dad, 0x00459800, 0x00030003 },
{ 0x00200805, 0x24483dad, 0x00459800, 0x00070007 },
{ 0x01600006, 0x20003dac, 0x0000044a, 0x00000000 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00000009, 0x20403ca5, 0x00000040, 0x00010001 },
{ 0x00010040, 0x22000c20, 0x00000078, 0x00200010 },
{ 0x00110040, 0x22000c20, 0x00000078, 0x00300010 },
{ 0x00010001, 0x20480061, 0x00000000, 0x00030009 },
{ 0x00110001, 0x20480061, 0x00000000, 0x00040009 },
{ 0x02600031, 0x27000021, 0x408d0040, 0x00000200 },
{ 0x01000005, 0x20003dac, 0x00009800, 0x00030003 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000001a },
{ 0x00600001, 0x26220231, 0x008d05c0, 0x00000000 },
{ 0x00600401, 0x26120231, 0x008d05b8, 0x00000000 },
{ 0x00600801, 0x26020231, 0x008d05b0, 0x00000000 },
{ 0x00600401, 0x25f20231, 0x008d05a8, 0x00000000 },
{ 0x00600801, 0x25e20231, 0x008d05a0, 0x00000000 },
{ 0x00600401, 0x25d20231, 0x008d0598, 0x00000000 },
{ 0x00600801, 0x25c20231, 0x008d0590, 0x00000000 },
{ 0x00600401, 0x25b20231, 0x008d0588, 0x00000000 },
{ 0x00600801, 0x25a20231, 0x008d0580, 0x00000000 },
{ 0x00600401, 0x25920231, 0x008d0578, 0x00000000 },
{ 0x00600801, 0x25820231, 0x008d0570, 0x00000000 },
{ 0x00600001, 0x25720231, 0x008d0568, 0x00000000 },
{ 0x00600001, 0x25620231, 0x008d0560, 0x00000000 },
{ 0x00110001, 0x220001ec, 0x02000000, 0x05820582 },
{ 0x00010001, 0x220001ec, 0x02000000, 0x05620562 },
{ 0x00000001, 0x220e0128, 0x00000454, 0x00000000 },
{ 0x01800006, 0x200035ac, 0x02000446, 0x00000444 },
{ 0x00810001, 0xbc000229, 0x02ad8000, 0x00000000 },
{ 0x00810001, 0xbc200229, 0x02ad8020, 0x00000000 },
{ 0x00810001, 0xbc400229, 0x02ad8040, 0x00000000 },
{ 0x00810001, 0xbc600229, 0x02ad8060, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000012a },
{ 0x00600001, 0x2024018d, 0x008d0200, 0x00000000 },
{ 0x01000041, 0x245e35ad, 0x00000446, 0x00000444 },
{ 0x00000040, 0x22022d08, 0x00000200, 0x00100010 },
{ 0x02000005, 0x20003db0, 0x0200045e, 0x00010001 },
{ 0x00200040, 0x22042d08, 0x00450200, 0x00200020 },
{ 0x00400001, 0x244c0109, 0x00690200, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000066 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000064 },
{ 0x00000040, 0x22003d08, 0x00000200, 0xffdeffde },
{ 0x00000440, 0x22023d08, 0x00000202, 0xffeeffee },
{ 0x00000801, 0x220c0060, 0x00000000, 0x04a00480 },
{ 0x01000010, 0x20003db0, 0x0000045e, 0x00040004 },
{ 0x00a02040, 0x2400462c, 0x00ad8000, 0x00ad8005 },
{ 0x00a02048, 0x24003e2c, 0x00ad8001, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8002, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8003, 0x00140014 },
{ 0x00a02048, 0xb8003e2d, 0x00ad8004, 0xfffbfffb },
{ 0x00a02040, 0x2400462c, 0x00ad8040, 0x00ad8045 },
{ 0x00a02048, 0x24003e2c, 0x00ad8041, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8042, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8043, 0x00140014 },
{ 0x00a02048, 0xb8403e2d, 0x00ad8044, 0xfffbfffb },
{ 0x00a02040, 0x2400462c, 0x00ad8080, 0x00ad8085 },
{ 0x00a02048, 0x24003e2c, 0x00ad8081, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8082, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8083, 0x00140014 },
{ 0x00a02048, 0xb8803e2d, 0x00ad8084, 0xfffbfffb },
{ 0x00600040, 0x2400462c, 0x008d80c0, 0x008d80c5 },
{ 0x00600048, 0x24003e2c, 0x008d80c1, 0xfffbfffb },
{ 0x00600048, 0x24003e2c, 0x008d80c2, 0x00140014 },
{ 0x00600048, 0x24003e2c, 0x008d80c3, 0x00140014 },
{ 0x00600048, 0xb8c03e2d, 0x008d80c4, 0xfffbfffb },
{ 0x00000401, 0x22000060, 0x00000000, 0x04a00480 },
{ 0x00000c01, 0x22040060, 0x00000000, 0x04a00490 },
{ 0x00010802, 0x220c2d28, 0x00000454, 0x04800480 },
{ 0x00a02040, 0x24003dac, 0x00b18000, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x01ed8800, 0xfffbfffb },
{ 0x00800048, 0x24203dac, 0x01ed8820, 0xfffbfffb },
{ 0x00a02048, 0x24003dac, 0x00b18020, 0x00140014 },
{ 0x00800048, 0x24003dac, 0x01ed8820, 0x00140014 },
{ 0x00800048, 0x24203dac, 0x01ed8840, 0x00140014 },
{ 0x00a02048, 0x24003dac, 0x00b18040, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed8840, 0x00010001 },
{ 0x00800048, 0x24203dac, 0x01ed8860, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x000a000a },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x000a000a },
{ 0x00a02040, 0x24003dac, 0x00b18040, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x01ed8840, 0xfffbfffb },
{ 0x00800048, 0x24203dac, 0x01ed8860, 0xfffbfffb },
{ 0x00a02048, 0x24003dac, 0x00b18060, 0x00140014 },
{ 0x00800048, 0x24003dac, 0x01ed8860, 0x00140014 },
{ 0x00800048, 0x24203dac, 0x01ed8880, 0x00140014 },
{ 0x00a02048, 0x24003dac, 0x00b18080, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed8880, 0x00010001 },
{ 0x00800048, 0x24203dac, 0x01ed88a0, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x000a000a },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x000a000a },
{ 0x00010220, 0x34001c00, 0x00001400, 0x000000b4 },
{ 0x01000010, 0x20003db0, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000004c },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000004a },
{ 0x00400040, 0x22003d28, 0x0069044c, 0xfffefffe },
{ 0x03400010, 0x20003dac, 0x00000446, 0x00020002 },
{ 0x01000010, 0x20003db0, 0x02000444, 0x00020002 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00100010 },
{ 0x01000010, 0x20003dac, 0x00000446, 0x00000000 },
{ 0x00010002, 0x220c2d28, 0x02000454, 0x04800480 },
{ 0x00800040, 0x24003e2c, 0x01ed8000, 0x00100010 },
{ 0x00800040, 0x24203e2c, 0x01ed8020, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8001, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8021, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8002, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8022, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8003, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8023, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8004, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8024, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8005, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8025, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x00050005 },
{ 0x00800040, 0x24003e2c, 0x01ed8040, 0x00100010 },
{ 0x00800040, 0x24203e2c, 0x01ed8060, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8041, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8061, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8042, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8062, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8043, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8063, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8044, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8064, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8045, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8065, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000062 },
{ 0x01000010, 0x20003db0, 0x00000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000042 },
{ 0x00200401, 0x22000128, 0x0066044c, 0x00000000 },
{ 0x00200c01, 0x22040128, 0x0045044e, 0x00000000 },
{ 0x00000801, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x03400010, 0x20003dac, 0x02000444, 0x00020002 },
{ 0x01000010, 0x20003dac, 0x00000444, 0x00000000 },
{ 0x00410040, 0x22002d08, 0x02690200, 0x00010001 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00110001, 0x220c0168, 0x02000000, 0x04800480 },
{ 0x00a02040, 0x24003e2c, 0x00ad83e0, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8be0, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8800, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8800, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8820, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8020, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8820, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8840, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x00050005 },
{ 0x00a02040, 0x24003e2c, 0x00ad8020, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8820, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8840, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8040, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8840, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8860, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8060, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8860, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8880, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001c },
{ 0x00200401, 0x22000128, 0x0045044c, 0x00000000 },
{ 0x00000801, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x01200010, 0x20003dac, 0x00000444, 0x00030003 },
{ 0x01200010, 0x20003dac, 0x02000446, 0x00030003 },
{ 0x00210040, 0x22002d08, 0x00450200, 0x00010001 },
{ 0x00210040, 0x22002d08, 0x02450200, 0x00100010 },
{ 0x00800001, 0xb8000229, 0x01ed8000, 0x00000000 },
{ 0x00800001, 0xb8200229, 0x01ed8020, 0x00000000 },
{ 0x00800001, 0xb8400229, 0x01ed8040, 0x00000000 },
{ 0x00800001, 0xb8600229, 0x01ed8060, 0x00000000 },
{ 0x80800042, 0xd8004631, 0x00d29800, 0x00d20480 },
{ 0x80800042, 0xd8204631, 0x00d29820, 0x00d204a0 },
{ 0x80800042, 0xd8404631, 0x00d29840, 0x00d204c0 },
{ 0x80800042, 0xd8604631, 0x00d29860, 0x00d204e0 },
{ 0x00600001, 0x220001ac, 0x008d0024, 0x00000000 },
{ 0x00200040, 0x244c3dad, 0x00450448, 0xfff8fff8 },
{ 0x00000401, 0x220001ec, 0x00000000, 0x07000700 },
{ 0x00000c01, 0x220201e8, 0x00000000, 0x07100710 },
{ 0x00000801, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00000441, 0x254635ad, 0x00000448, 0x0000044a },
{ 0x00000c41, 0x254025ad, 0x0000444c, 0x0000444e },
{ 0x00000c41, 0x254225ad, 0x00000448, 0x0000444e },
{ 0x00000841, 0x254435ad, 0x0000444c, 0x0000044a },
{ 0x00200040, 0x244c3d09, 0x00450200, 0x00100010 },
{ 0x00800041, 0x24002628, 0x00ad8000, 0x00000540 },
{ 0x00800041, 0x24202628, 0x00ad8020, 0x00000540 },
{ 0x00800048, 0x24002628, 0x00ad8002, 0x00000542 },
{ 0x00800048, 0x24202628, 0x00ad8022, 0x00000542 },
{ 0x00200001, 0x22000128, 0x0045044c, 0x00000000 },
{ 0x00800048, 0x24002628, 0x01ed8000, 0x00000544 },
{ 0x00800048, 0x24202628, 0x01ed8020, 0x00000544 },
{ 0x00800048, 0xbc002629, 0x01ed8002, 0x00000546 },
{ 0x00801048, 0xbc202629, 0x01ed8022, 0x00000546 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000128 },
{ 0x00000001, 0x20220169, 0x00000000, 0x00040004 },
{ 0x00200005, 0x24443dad, 0x00459800, 0x00030003 },
{ 0x0020000c, 0x24403dad, 0x00459800, 0x00020002 },
{ 0x01600006, 0x20003dac, 0x02000446, 0x00000000 },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00200000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00500000 },
{ 0x00310040, 0x20401da5, 0x02450440, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x00080008 },
{ 0x00010040, 0x20401da5, 0x02000440, 0xfffffffe },
{ 0x00010001, 0x204401a5, 0x02000442, 0x00000000 },
{ 0x00010001, 0x20480061, 0x02000000, 0x00030008 },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000040, 0xb80235ad, 0x00009802, 0x0000003c },
{ 0x00000040, 0x22000c20, 0x00000078, 0x00100010 },
{ 0x0020040c, 0x24403dad, 0x00459800, 0x00030003 },
{ 0x00200805, 0x24483dad, 0x00459800, 0x00070007 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00000009, 0x20403ca5, 0x00000040, 0x00010001 },
{ 0x00000001, 0x20480061, 0x00000000, 0x00020005 },
{ 0x02600031, 0x27000021, 0x408d0040, 0x00000200 },
{ 0x00110001, 0x220001ec, 0x02000000, 0x05820582 },
{ 0x00010001, 0x220001ec, 0x02000000, 0x05620562 },
{ 0x00000001, 0x220e0128, 0x00000454, 0x00000000 },
{ 0x01800006, 0x200035ac, 0x02000446, 0x00000444 },
{ 0x00410001, 0xbc000229, 0x02698000, 0x00000000 },
{ 0x00410001, 0xbc100229, 0x02698010, 0x00000000 },
{ 0x00410001, 0xbc200229, 0x02698020, 0x00000000 },
{ 0x00410001, 0xbc300229, 0x02698030, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000be },
{ 0x00600001, 0x2024018d, 0x008d0200, 0x00000000 },
{ 0x01000041, 0x245e35ad, 0x00000446, 0x00000444 },
{ 0x02000005, 0x20003db0, 0x0200045e, 0x00010001 },
{ 0x00000040, 0x22022d08, 0x00000200, 0x00100010 },
{ 0x00200040, 0x22042d08, 0x00450200, 0x00200020 },
{ 0x00400001, 0x244c0109, 0x00690200, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000044 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000042 },
{ 0x00000040, 0x22003d08, 0x00000200, 0xffdeffde },
{ 0x00000440, 0x22023d08, 0x00000202, 0xffeeffee },
{ 0x00000801, 0x220c0060, 0x00000000, 0x04d004c0 },
{ 0x01000010, 0x20003db0, 0x0000045e, 0x00040004 },
{ 0x00802040, 0x2400462c, 0x00a98000, 0x00a98005 },
{ 0x00802048, 0x24003e2c, 0x00a98001, 0xfffbfffb },
{ 0x00802048, 0x24003e2c, 0x00a98002, 0x00140014 },
{ 0x00802048, 0x24003e2c, 0x00a98003, 0x00140014 },
{ 0x00802048, 0xb8003e2d, 0x00a98004, 0xfffbfffb },
{ 0x00802040, 0x2400462c, 0x00a98040, 0x00a98045 },
{ 0x00802048, 0x24003e2c, 0x00a98041, 0xfffbfffb },
{ 0x00802048, 0x24003e2c, 0x00a98042, 0x00140014 },
{ 0x00802048, 0x24003e2c, 0x00a98043, 0x00140014 },
{ 0x00802048, 0xb8203e2d, 0x00a98044, 0xfffbfffb },
{ 0x00400040, 0x2400462c, 0x00698080, 0x00698085 },
{ 0x00400048, 0x24003e2c, 0x00698081, 0xfffbfffb },
{ 0x00400048, 0x24003e2c, 0x00698082, 0x00140014 },
{ 0x00400048, 0x24003e2c, 0x00698083, 0x00140014 },
{ 0x00400048, 0xb8403e2d, 0x00698084, 0xfffbfffb },
{ 0x00000401, 0x220c0060, 0x00000000, 0x04e004d0 },
{ 0x00000c01, 0x22000060, 0x00000000, 0x04d004c8 },
{ 0x00000c01, 0x22040060, 0x00000000, 0x04e004d8 },
{ 0x00000801, 0x22080060, 0x00000000, 0x04f004e8 },
{ 0x00800040, 0x24003dac, 0x00b104c0, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x00b104e0, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed9800, 0x00140014 },
{ 0x00010001, 0x220c0168, 0x00000000, 0x05400540 },
{ 0x00110001, 0x220c0168, 0x00000000, 0x04c004c0 },
{ 0x00800048, 0x24003dac, 0x01e98000, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01e98020, 0x00010001 },
{ 0x00800048, 0x24003dac, 0x01e98800, 0x00140014 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x000a000a },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000060 },
{ 0x01000010, 0x20003db0, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000022 },
{ 0x00400040, 0x22003d28, 0x0069044c, 0xfffefffe },
{ 0x03400010, 0x20003dac, 0x00000446, 0x00020002 },
{ 0x01000010, 0x20003db0, 0x02000444, 0x00020002 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00100010 },
{ 0x01000010, 0x20003dac, 0x00000446, 0x00000000 },
{ 0x00010001, 0x220e0168, 0x02000000, 0x05400540 },
{ 0x00110001, 0x220e0168, 0x02000000, 0x04c004c0 },
{ 0x00800040, 0x24003e2c, 0x01e98000, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01e98001, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e98002, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98003, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98004, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e98005, 0x00010001 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000036 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000036 },
{ 0x01000010, 0x20003db0, 0x00000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x03600010, 0x20003dac, 0x02000444, 0x00020002 },
{ 0x00400401, 0x22000128, 0x0069044c, 0x00000000 },
{ 0x00400840, 0x22083d2c, 0x0069044c, 0x00100010 },
{ 0x00610040, 0x22002d08, 0x02690200, 0x00010001 },
{ 0x01000010, 0x20003dac, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00800040, 0x24003e2c, 0x01e983e0, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01e98000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98020, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e993e0, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e99000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e99020, 0x00010001 },
{ 0x00000001, 0x220e0168, 0x00000000, 0x05400540 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00110001, 0x220e0168, 0x02000000, 0x04c004c0 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000e },
{ 0x00400001, 0x22000128, 0x0069044c, 0x00000000 },
{ 0x01400010, 0x20003dac, 0x00000444, 0x00030003 },
{ 0x01400010, 0x20003dac, 0x02000446, 0x00030003 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00010001 },
{ 0x00410040, 0x22002d08, 0x02690200, 0x00100010 },
{ 0x00800001, 0x25400229, 0x01e98000, 0x00000000 },
{ 0x80800042, 0x45404631, 0x00d20540, 0x00d204c0 },
{ 0x00000001, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x00400001, 0xd8000231, 0x008a0540, 0x00000000 },
{ 0x00400001, 0xd8100231, 0x008a0548, 0x00000000 },
{ 0x00400001, 0xd8200231, 0x008a0550, 0x00000000 },
{ 0x00400001, 0xd8300231, 0x008a0558, 0x00000000 },
{ 0x00600001, 0x220001ac, 0x008d0024, 0x00000000 },
{ 0x00200040, 0x244c3dad, 0x00450448, 0xfff8fff8 },
{ 0x00000401, 0x220001ec, 0x00000000, 0x07000700 },
{ 0x00000801, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00000441, 0x254635ad, 0x00000448, 0x0000044a },
{ 0x00000c41, 0x254025ad, 0x0000444c, 0x0000444e },
{ 0x00000c41, 0x254225ad, 0x00000448, 0x0000444e },
{ 0x00000841, 0x254435ad, 0x0000444c, 0x0000044a },
{ 0x00600041, 0x24002628, 0x00898000, 0x00000540 },
{ 0x00600048, 0x24002628, 0x00898002, 0x00000542 },
{ 0x00600048, 0x24002628, 0x00898008, 0x00000544 },
{ 0x00600048, 0x2540262d, 0x0089800a, 0x00000546 },
{ 0x00400401, 0xbc0001a9, 0x00690540, 0x00000000 },
{ 0x00400801, 0xbc1001a9, 0x00690548, 0x00000000 },
{ 0x01000010, 0x20003d2c, 0x00000022, 0x00030003 },
{ 0x01000040, 0x20223d29, 0x02000022, 0xffffffff },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0x00080008 },
{ 0x00110040, 0x24540c21, 0x00000454, 0x00080008 },
{ 0x00010040, 0x24540c21, 0x00000454, 0x00180038 },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffee4 },
{ 0x01800010, 0x20003dac, 0x0200010e, 0x00010001 },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0xffe0ffe0 },
{ 0x00010001, 0x24540061, 0x02000000, 0x06c00640 },
{ 0x00110001, 0x24540061, 0x02000000, 0x04800780 },
{ 0x00000001, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00800040, 0x24003dac, 0x00b19c00, 0x00200020 },
{ 0x00800040, 0x24203dac, 0x00b19c20, 0x00200020 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00060006 },
{ 0x8080000c, 0xdc203d91, 0x00b10420, 0x00060006 },
{ 0x02000040, 0x210e3d29, 0x0200010e, 0xffffffff },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0x00040004 },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffcdc },
{ 0x01000005, 0x25643e2d, 0x00000060, 0x00c000c0 },
{ 0x01000010, 0x20003dac, 0x02000458, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x01000010, 0x20003dac, 0x00000458, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00a02001, 0x46400231, 0x00d20780, 0x00000000 },
{ 0x00a02001, 0x46800231, 0x00d207c0, 0x00000000 },
{ 0x00a02001, 0x46c00231, 0x00d20480, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000007e },
{ 0x80a02042, 0x46404631, 0x00d20640, 0x00d20780 },
{ 0x80a02042, 0x46804631, 0x00d20680, 0x00d207c0 },
{ 0x80a02042, 0x46c04631, 0x00d206c0, 0x00d20480 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000076 },
{ 0x01000010, 0x20003dac, 0x02000564, 0x00800080 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x0000000e },
{ 0x01000010, 0x20003dac, 0x00000458, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xffffffe4 },
{ 0x00200401, 0x256801ed, 0x00000000, 0x00200020 },
{ 0x00200801, 0x256c01ed, 0x00000000, 0x00060006 },
{ 0x00400001, 0x258001ed, 0x00000000, 0x00000000 },
{ 0x00600001, 0x45a001ad, 0x00058c00, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000028 },
{ 0x02600005, 0x20006e28, 0x02008c0c, 0x88848421 },
{ 0x0220000c, 0x25663dad, 0x00000458, 0x00010001 },
{ 0x0000000c, 0x25643dad, 0x00000564, 0x00060006 },
{ 0x00310001, 0x25c401ad, 0x00000458, 0x00000000 },
{ 0x00210001, 0x25c00061, 0x00000000, 0x00010001 },
{ 0x00310040, 0x25c03dad, 0x004545c4, 0x00010001 },
{ 0x00610001, 0x25a00061, 0x02000000, 0x00000080 },
{ 0x00710001, 0x45a002ad, 0x02ae8c00, 0x00000000 },
{ 0x00710001, 0x45a202ad, 0x02ae8c01, 0x00000000 },
{ 0x00800041, 0x25a035ad, 0x00b105a0, 0x000905c0 },
{ 0x01200010, 0x20003e2c, 0x0245006e, 0x00000000 },
{ 0x00310009, 0x244c45ad, 0x02000564, 0x0045006e },
{ 0x00210001, 0x244c01ed, 0x02000000, 0x00000000 },
{ 0x0031000c, 0x244c3dad, 0x0245044c, 0x00010001 },
{ 0x00200009, 0x256835ad, 0x0045044c, 0x00000566 },
{ 0x00210040, 0x256835ad, 0x02450568, 0x00000566 },
{ 0x00200040, 0x256c362d, 0x0045006e, 0x00000566 },
{ 0x00400040, 0x240035ac, 0x00ab05a2, 0x00ab05a6 },
{ 0x00400040, 0x2400358c, 0x00690400, 0x00000566 },
{ 0x0040000c, 0x2580358d, 0x00690400, 0x00000566 },
{ 0x00800041, 0x2400362c, 0x00d20640, 0x000005a0 },
{ 0x00800041, 0x2420362c, 0x00d20660, 0x000005a0 },
{ 0x00800048, 0x2400362c, 0x00d20780, 0x000005a4 },
{ 0x00800048, 0x2420362c, 0x00d207a0, 0x000005a4 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00000568 },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x00000568 },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056c },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056c },
{ 0x80800040, 0x464035b1, 0x00b104c0, 0x00000580 },
{ 0x80800040, 0x466035b1, 0x00b104e0, 0x00000580 },
{ 0x00800041, 0x2400362c, 0x00d20680, 0x000005a0 },
{ 0x00800041, 0x2420362c, 0x00d206a0, 0x000005a0 },
{ 0x00800048, 0x2400362c, 0x00d207c0, 0x000005a4 },
{ 0x00800048, 0x2420362c, 0x00d207e0, 0x000005a4 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00000568 },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x00000568 },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056c },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056c },
{ 0x80800040, 0x468035b1, 0x00b104c0, 0x00000580 },
{ 0x80800040, 0x46a035b1, 0x00b104e0, 0x00000580 },
{ 0x00800041, 0x2400362c, 0x00d206c0, 0x000705a8 },
{ 0x00800041, 0x2420362c, 0x00d206e0, 0x000705a8 },
{ 0x00800048, 0x2400362c, 0x00d20480, 0x000705ac },
{ 0x00800048, 0x2420362c, 0x00d204a0, 0x000705ac },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x0000056a },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x0000056a },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056e },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056e },
{ 0x80800040, 0x46c035b1, 0x00b104c0, 0x00050582 },
{ 0x80800040, 0x46e035b1, 0x00b104e0, 0x00050582 },
{ 0x01800005, 0x20003d2c, 0x02000020, 0x00020002 },
{ 0x80800040, 0xd00045b1, 0x00b19000, 0x00d20640 },
{ 0x80800040, 0xd02045b1, 0x00b19020, 0x00d20660 },
{ 0x80800040, 0xd04045b1, 0x00b19040, 0x00d20680 },
{ 0x80800040, 0xd06045b1, 0x00b19060, 0x00d206a0 },
{ 0x00000040, 0x22083d8c, 0x00000208, 0x00800080 },
{ 0x80400040, 0xd40045b1, 0x00699400, 0x00ab06c0 },
{ 0x80400040, 0xd48045b1, 0x00699480, 0x00ab06c2 },
{ 0x80400040, 0xd42045b1, 0x00699420, 0x00ab06e0 },
{ 0x80400040, 0xd4a045b1, 0x006994a0, 0x00ab06e2 },
{ 0x80400040, 0xd41045b1, 0x00699410, 0x00ab06d0 },
{ 0x80400040, 0xd49045b1, 0x00699490, 0x00ab06d2 },
{ 0x80400040, 0xd43045b1, 0x00699430, 0x00ab06f0 },
{ 0x80400040, 0xd4b045b1, 0x006994b0, 0x00ab06f2 },
{ 0x00000040, 0x220a3d8c, 0x0000020a, 0x00080008 },
{ 0x00110040, 0x220a3d8c, 0x0200020a, 0x00300030 },
{ 0x01000010, 0x20003d2c, 0x02000020, 0x00060006 },
{ 0x00000040, 0x20203d29, 0x00000020, 0x00020002 },
{ 0x00000040, 0x22040c00, 0x00000204, 0x00100001 },
{ 0x00000040, 0x220c358c, 0x0000020c, 0x0000003a },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffc1a },
{ 0x00000001, 0x220001ec, 0x00000000, 0x01400140 },
{ 0x00000001, 0x220201ec, 0x00000000, 0x01c001c0 },
{ 0x00800401, 0x20400236, 0x01ee8000, 0x00000000 },
{ 0x00800801, 0x20500236, 0x01ee8010, 0x00000000 },
{ 0x00800401, 0x20600236, 0x01ee8020, 0x00000000 },
{ 0x00800801, 0x20700236, 0x01ee8030, 0x00000000 },
{ 0x00800401, 0x20800236, 0x01ee8040, 0x00000000 },
{ 0x00800801, 0x20900236, 0x01ee8050, 0x00000000 },
{ 0x00800401, 0x20a00236, 0x01ee8060, 0x00000000 },
{ 0x00800801, 0x20b00236, 0x01ee8070, 0x00000000 },
{ 0x00800401, 0x20c00236, 0x01ee8100, 0x00000000 },
{ 0x00800801, 0x20d00236, 0x01ee8110, 0x00000000 },
{ 0x00800401, 0x20e00236, 0x01ee8120, 0x00000000 },
{ 0x00800801, 0x20f00236, 0x01ee8130, 0x00000000 },
{ 0x00800401, 0x21000236, 0x01ee8140, 0x00000000 },
{ 0x00800801, 0x21100236, 0x01ee8150, 0x00000000 },
{ 0x00800401, 0x21200236, 0x01ee8160, 0x00000000 },
{ 0x00800801, 0x21300236, 0x01ee8170, 0x00000000 },
{ 0x00000040, 0x22000d20, 0x00000062, 0x1218a000 },
{ 0x00200401, 0x204001a5, 0x00450064, 0x00000000 },
{ 0x00000801, 0x20480061, 0x00000000, 0x000f000f },
{ 0x01600031, 0x21400021, 0x508d0040, 0x00000200 },
{ 0x00000001, 0x220001ec, 0x00000000, 0x03400340 },
{ 0x00800401, 0x41600236, 0x00d28000, 0x00000000 },
{ 0x00800801, 0x41610236, 0x00d28080, 0x00000000 },
{ 0x00800401, 0x41800236, 0x00d28020, 0x00000000 },
{ 0x00800801, 0x41810236, 0x00d280a0, 0x00000000 },
{ 0x00800401, 0x41a00236, 0x00d28040, 0x00000000 },
{ 0x00800801, 0x41a10236, 0x00d280c0, 0x00000000 },
{ 0x00800401, 0x41c00236, 0x00d28060, 0x00000000 },
{ 0x00800801, 0x41c10236, 0x00d280e0, 0x00000000 },
{ 0x00000040, 0x22000d20, 0x00000062, 0x0a18a001 },
{ 0x0000040c, 0x20443ca5, 0x00000044, 0x00010001 },
{ 0x00000801, 0x20480061, 0x00000000, 0x0007000f },
{ 0x0a600031, 0x21600021, 0x508d0040, 0x00000200 },
{ 0x00000001, 0x21400021, 0x00000140, 0x00000000 },
{ 0x00000001, 0x21600021, 0x00000160, 0x00000000 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x01000005, 0x20602d29, 0x02000042, 0x00070007 },
{ 0x01000005, 0x20422d29, 0x00000042, 0xfff8fff8 },
{ 0x00000001, 0x202001e9, 0x00000000, 0x100c100c },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00000009, 0x27e82d21, 0x00000040, 0x00060006 },
{ 0x00600001, 0x20a00022, 0x008d0000, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000100 },
{ 0x00600001, 0x20200022, 0x008d07e0, 0x00000000 },
{ 0x01800031, 0x20801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20400022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20480c22, 0x000007e8, 0x00000080 },
{ 0x02800031, 0x21001d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20600022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20680c22, 0x000007e8, 0x00000100 },
{ 0x03800031, 0x21801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20800022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20880c22, 0x000007e8, 0x00000180 },
{ 0x04800031, 0x22001d09, 0x408d0000, 0x02488400 },
{ 0x02600005, 0x20000c20, 0x02000090, 0x00002000 },
{ 0x00000006, 0x20880c21, 0x00000088, 0x00200000 },
{ 0x00200009, 0x20845529, 0x0000009c, 0x00450020 },
{ 0x00200001, 0x40840231, 0x00450094, 0x00000000 },
{ 0x00310001, 0x20840229, 0x02450094, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x00000095, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x00000094 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0080, 0x00000000 },
{ 0x00802001, 0x20800061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x02600005, 0x20000c20, 0x020000d0, 0x00002000 },
{ 0x00000006, 0x20c80c21, 0x000000c8, 0x00200000 },
{ 0x00200009, 0x20c45529, 0x000000dc, 0x00450020 },
{ 0x00200001, 0x40c40231, 0x004500d4, 0x00000000 },
{ 0x00310001, 0x20c40229, 0x024500d4, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x000000d5, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x000000d4 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x02600005, 0x20000c20, 0x02000110, 0x00002000 },
{ 0x00000006, 0x21080c21, 0x00000108, 0x00200000 },
{ 0x00200009, 0x21045529, 0x0000011c, 0x00450020 },
{ 0x00200001, 0x41040231, 0x00450114, 0x00000000 },
{ 0x00310001, 0x21040229, 0x02450114, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x00000115, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x00000114 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0100, 0x00000000 },
{ 0x00802001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x02600005, 0x20000c20, 0x02000150, 0x00002000 },
{ 0x00000006, 0x21480c21, 0x00000148, 0x00200000 },
{ 0x00200009, 0x21445529, 0x0000015c, 0x00450020 },
{ 0x00200001, 0x41440231, 0x00450154, 0x00000000 },
{ 0x00310001, 0x21440229, 0x02450154, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x00000155, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x00000154 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0140, 0x00000000 },
{ 0x00802001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x02600005, 0x20000c20, 0x02000190, 0x00002000 },
{ 0x00000006, 0x21880c21, 0x00000188, 0x00200000 },
{ 0x00200009, 0x21845529, 0x0000019c, 0x00450020 },
{ 0x00200001, 0x41840231, 0x00450194, 0x00000000 },
{ 0x00310001, 0x21840229, 0x02450194, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x00000195, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x00000194 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0180, 0x00000000 },
{ 0x00802001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x02600005, 0x20000c20, 0x020001d0, 0x00002000 },
{ 0x00000006, 0x21c80c21, 0x000001c8, 0x00200000 },
{ 0x00200009, 0x21c45529, 0x000001dc, 0x00450020 },
{ 0x00200001, 0x41c40231, 0x004501d4, 0x00000000 },
{ 0x00310001, 0x21c40229, 0x024501d4, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x000001d5, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x000001d4 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d01c0, 0x00000000 },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x02600005, 0x20000c20, 0x02000210, 0x00002000 },
{ 0x00000006, 0x22080c21, 0x00000208, 0x00200000 },
{ 0x00200009, 0x22045529, 0x0000021c, 0x00450020 },
{ 0x00200001, 0x42040231, 0x00450214, 0x00000000 },
{ 0x00310001, 0x22040229, 0x02450214, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x00000215, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x00000214 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0200, 0x00000000 },
{ 0x00802001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x02600005, 0x20000c20, 0x02000250, 0x00002000 },
{ 0x00000006, 0x22480c21, 0x00000248, 0x00200000 },
{ 0x00200009, 0x22445529, 0x0000025c, 0x00450020 },
{ 0x00200001, 0x42440231, 0x00450254, 0x00000000 },
{ 0x00310001, 0x22440229, 0x02450254, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x00000255, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x00000254 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0240, 0x00000000 },
{ 0x00802001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x01000040, 0x20423dad, 0x00000042, 0xfff8fff8 },
{ 0x00600001, 0x21600022, 0x008d07e0, 0x00000000 },
{ 0x00802001, 0x21800022, 0x008d0080, 0x00000000 },
{ 0x00802001, 0x21c00022, 0x008d00c0, 0x00000000 },
{ 0x0b800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00600001, 0x20200022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20280c22, 0x000007e8, 0x00000080 },
{ 0x00802001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0140, 0x00000000 },
{ 0x01800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00000040, 0x21680c22, 0x000007e8, 0x00000100 },
{ 0x00802001, 0x21800022, 0x008d0180, 0x00000000 },
{ 0x00802001, 0x21c00022, 0x008d01c0, 0x00000000 },
{ 0x0b800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00000040, 0x20280c22, 0x000007e8, 0x00000180 },
{ 0x00802001, 0x20400022, 0x008d0200, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0240, 0x00000000 },
{ 0x01800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00000040, 0x27e80c21, 0x000007e8, 0x00000200 },
{ 0x01000010, 0x20002da0, 0x02000060, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xffffff00 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000040 },
{ 0x00600001, 0x20200022, 0x008d07e0, 0x00000000 },
{ 0x01800031, 0x20801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20400022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20480c22, 0x000007e8, 0x00000080 },
{ 0x02800031, 0x21001d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20600022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20680c22, 0x000007e8, 0x00000100 },
{ 0x03800031, 0x21801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20800022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20880c22, 0x000007e8, 0x00000180 },
{ 0x04800031, 0x22001d09, 0x408d0000, 0x02488400 },
{ 0x00000001, 0x220400e0, 0x00000000, 0x00a00080 },
{ 0x00600001, 0x20a00022, 0x008d0000, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02008810, 0x00002000 },
{ 0x01000040, 0x20603dad, 0x00000060, 0xffffffff },
{ 0x00000006, 0xa8080c21, 0x00008808, 0x00200000 },
{ 0x00200009, 0xa8045529, 0x0000881c, 0x00450020 },
{ 0x00200001, 0xc8040231, 0x00458814, 0x00000000 },
{ 0x00310001, 0xa8040229, 0x02458814, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x00008815, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x00008814 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d8800, 0x00000000 },
{ 0x00802001, 0xa8000061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00600001, 0x21600022, 0x008d07e0, 0x00000000 },
{ 0x00802001, 0x21800022, 0x008d8800, 0x00000000 },
{ 0x0b800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000040, 0x27e80c21, 0x000007e8, 0x00000040 },
{ 0x00000040, 0x22040c00, 0x00000204, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xffffffda },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x01000005, 0x20602d29, 0x02000042, 0x00070007 },
{ 0x01000005, 0x20422d29, 0x00000042, 0xfff8fff8 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00000009, 0x27e82d21, 0x00000040, 0x00060006 },
{ 0x00600001, 0x20a00022, 0x008d0000, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000260 },
{ 0x00600001, 0x20200022, 0x008d07e0, 0x00000000 },
{ 0x01800031, 0x20801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20400022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20480c22, 0x000007e8, 0x00000080 },
{ 0x02800031, 0x21001d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20600022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20680c22, 0x000007e8, 0x00000100 },
{ 0x03800031, 0x21801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20800022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20880c22, 0x000007e8, 0x00000180 },
{ 0x04800031, 0x22001d09, 0x408d0000, 0x02488400 },
{ 0x00200001, 0x20640229, 0x00450094, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02000090, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x00000090, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x00000095, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x00000095, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x00000090, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x20881c21, 0x00000088, 0x00200000 },
{ 0x00200001, 0x20840129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0080, 0x00000000 },
{ 0x00802001, 0x20800061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x00000090, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x0000009c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x0000009c, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x0200009c, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x02000090, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x0200009c, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x0200009c, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x20843d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x20862d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x40840231, 0x00660064, 0x00000000 },
{ 0x00200001, 0x20640229, 0x004500d4, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x020000d0, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x000000d0, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x000000d5, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x000000d5, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x000000d0, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x20c81c21, 0x000000c8, 0x00200000 },
{ 0x00200001, 0x20c40129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x000000d0, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x000000dc, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x000000dc, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x020000dc, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x020000d0, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x020000dc, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x020000dc, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x20c43d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x20c62d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x40c40231, 0x00660064, 0x00000000 },
{ 0x00200001, 0x20640229, 0x00450114, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02000110, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x00000110, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x00000115, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x00000115, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x00000110, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x21081c21, 0x00000108, 0x00200000 },
{ 0x00200001, 0x21040129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0100, 0x00000000 },
{ 0x00802001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x00000110, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x0000011c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x0000011c, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x0200011c, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x02000110, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x0200011c, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x0200011c, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x21043d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x21062d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x41040231, 0x00660064, 0x00000000 },
{ 0x00200001, 0x20640229, 0x00450154, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02000150, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x00000150, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x00000155, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x00000155, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x00000150, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x21481c21, 0x00000148, 0x00200000 },
{ 0x00200001, 0x21440129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0140, 0x00000000 },
{ 0x00802001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x00000150, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x0000015c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x0000015c, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x0200015c, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x02000150, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x0200015c, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x0200015c, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x21443d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x21462d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x41440231, 0x00660064, 0x00000000 },
{ 0x00200001, 0x20640229, 0x00450194, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02000190, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x00000190, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x00000195, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x00000195, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x00000190, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x21881c21, 0x00000188, 0x00200000 },
{ 0x00200001, 0x21840129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0180, 0x00000000 },
{ 0x00802001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x00000190, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x0000019c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x0000019c, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x0200019c, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x02000190, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x0200019c, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x0200019c, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x21843d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x21862d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x41840231, 0x00660064, 0x00000000 },
{ 0x00200001, 0x20640229, 0x004501d4, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x020001d0, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x000001d0, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x000001d5, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x000001d5, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x000001d0, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x21c81c21, 0x000001c8, 0x00200000 },
{ 0x00200001, 0x21c40129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d01c0, 0x00000000 },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x000001d0, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x000001dc, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x000001dc, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x020001dc, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x020001d0, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x020001dc, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x020001dc, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x21c43d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x21c62d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x41c40231, 0x00660064, 0x00000000 },
{ 0x00200001, 0x20640229, 0x00450214, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02000210, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x00000210, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x00000215, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x00000215, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x00000210, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x22081c21, 0x00000208, 0x00200000 },
{ 0x00200001, 0x22040129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0200, 0x00000000 },
{ 0x00802001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x00000210, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x0000021c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x0000021c, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x0200021c, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x02000210, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x0200021c, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x0200021c, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x22043d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x22062d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x42040231, 0x00660064, 0x00000000 },
{ 0x00200001, 0x20640229, 0x00450254, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02000250, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x00000250, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x00000255, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x00000255, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x00000250, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x22481c21, 0x00000248, 0x00200000 },
{ 0x00200001, 0x22440129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0240, 0x00000000 },
{ 0x00802001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x00000250, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x0000025c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x0000025c, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x0200025c, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x02000250, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x0200025c, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x0200025c, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x22443d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x22462d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x42440231, 0x00660064, 0x00000000 },
{ 0x01000040, 0x20423dad, 0x00000042, 0xfff8fff8 },
{ 0x00600001, 0x21600022, 0x008d07e0, 0x00000000 },
{ 0x00802001, 0x21800022, 0x008d0080, 0x00000000 },
{ 0x00802001, 0x21c00022, 0x008d00c0, 0x00000000 },
{ 0x0b800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00600001, 0x20200022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20280c22, 0x000007e8, 0x00000080 },
{ 0x00802001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0140, 0x00000000 },
{ 0x01800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00000040, 0x21680c22, 0x000007e8, 0x00000100 },
{ 0x00802001, 0x21800022, 0x008d0180, 0x00000000 },
{ 0x00802001, 0x21c00022, 0x008d01c0, 0x00000000 },
{ 0x0b800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00000040, 0x20280c22, 0x000007e8, 0x00000180 },
{ 0x00802001, 0x20400022, 0x008d0200, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0240, 0x00000000 },
{ 0x01800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00000040, 0x27e80c21, 0x000007e8, 0x00000200 },
{ 0x01000010, 0x20002da0, 0x02000060, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffda0 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000006e },
{ 0x00600001, 0x20200022, 0x008d07e0, 0x00000000 },
{ 0x01800031, 0x20801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20400022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20480c22, 0x000007e8, 0x00000080 },
{ 0x02800031, 0x21001d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20600022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20680c22, 0x000007e8, 0x00000100 },
{ 0x03800031, 0x21801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20800022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20880c22, 0x000007e8, 0x00000180 },
{ 0x04800031, 0x22001d09, 0x408d0000, 0x02488400 },
{ 0x00000001, 0x220400e0, 0x00000000, 0x00a00080 },
{ 0x00600001, 0x20a00022, 0x008d0000, 0x00000000 },
{ 0x00200001, 0x20640229, 0x00458814, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02008810, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x00008810, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x00008815, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x00008815, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x00008810, 0x00002000 },
{ 0x01000040, 0x20603dad, 0x02000060, 0xffffffff },
{ 0x00000006, 0xa8080c21, 0x00008808, 0x00200000 },
{ 0x00200001, 0xa8040129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d8800, 0x00000000 },
{ 0x00802001, 0xa8000061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x02600005, 0x20000d20, 0x02000066, 0x00000001 },
{ 0x02600005, 0x20000c20, 0x00008810, 0x00004000 },
{ 0x00000001, 0x20680129, 0x0000881c, 0x00000000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x0000881c, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x0200881c, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x02008810, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x0200881c, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x0200881c, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x00000068, 0x000d0070 },
{ 0x01000040, 0x20603dad, 0x02000060, 0x00000000 },
{ 0x00000009, 0xa8043d09, 0x00000600, 0x000c000c },
{ 0x00000005, 0xa8062d09, 0x00000600, 0xf000f000 },
{ 0x00200001, 0xc8040231, 0x00660064, 0x00000000 },
{ 0x00600001, 0x21600022, 0x008d07e0, 0x00000000 },
{ 0x00802001, 0x21800022, 0x008d8800, 0x00000000 },
{ 0x0b800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000040, 0x27e80c21, 0x000007e8, 0x00000040 },
{ 0x00000040, 0x22040c00, 0x00000204, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0xffffffac },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00a02001, 0x20400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x206601ed, 0x00000000, 0x00030003 },
{ 0x00000009, 0x20663dad, 0x00000066, 0x000a000a },
{ 0x00000008, 0x22403dad, 0x00000026, 0x00010001 },
{ 0x00000041, 0x224235ad, 0x00000020, 0x00000022 },
{ 0x00600001, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x203c0022, 0x00000018, 0x00000000 },
{ 0x00000001, 0x203f01f2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c00e2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c010a, 0x00000e00, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0020, 0x00000000 },
{ 0x00400001, 0x205401ed, 0x00000000, 0x00000000 },
{ 0x00200040, 0x20583dad, 0x00450020, 0xffffffff },
{ 0x00000001, 0x22000060, 0x00000000, 0x06080000 },
{ 0x00600001, 0x26000021, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x26140061, 0x00000000, 0x00c00400 },
{ 0x00000001, 0x26100169, 0x00000000, 0x12121212 },
{ 0x07600031, 0x26201c21, 0x308d0600, 0x02000000 },
{ 0x00000001, 0x22a00169, 0x00000000, 0x01400140 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00200020 },
{ 0x00000001, 0x203801e2, 0x00000000, 0x00010001 },
{ 0x00800001, 0x204001ae, 0x00b10020, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x000002a0, 0x00010001 },
{ 0x00800031, 0x20000128, 0x608d07e0, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x22a00169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x22600169, 0x00000000, 0x00020002 },
{ 0x00200401, 0x208000e5, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x208800e5, 0x00000000, 0xffffffc6 },
{ 0x00000801, 0x208c00e5, 0x00000000, 0xffffffca },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00100010 },
{ 0x00000001, 0x206001ed, 0x00000000, 0x00020002 },
{ 0x00000001, 0x206201ad, 0x0000005a, 0x00000000 },
{ 0x00000001, 0x20a001ed, 0x00000000, 0x00000000 },
{ 0x00200001, 0x228001ed, 0x00000000, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21000061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21400061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21800061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00ff00ff },
{ 0x00000041, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x05000010, 0x200035ac, 0x02000280, 0x00000240 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x01000010, 0x20002d28, 0x000090c2, 0x00000000 },
{ 0x03000010, 0x200035ac, 0x02000054, 0x00000058 },
{ 0x00000041, 0x22a03dad, 0x00000056, 0x00040004 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffff4 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00200001, 0xb0c00229, 0x00450054, 0x00000000 },
{ 0x00200040, 0x22803dad, 0x00450280, 0x00010001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x20380122, 0x00000260, 0x00000000 },
{ 0x00800001, 0x204001ae, 0x00b10040, 0x00000000 },
{ 0x00000008, 0x20003d2a, 0x000002a0, 0x00010001 },
{ 0x00000040, 0x22602d29, 0x00000260, 0x00020002 },
{ 0x00800031, 0x20000008, 0x608d0000, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x04200010, 0x200035ac, 0x00450054, 0x00450060 },
{ 0x00010040, 0x20a03dad, 0x02000056, 0x00010001 },
{ 0x05200010, 0x200035ac, 0x02450280, 0x00450240 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x00040004 },
{ 0x00000048, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x00200040, 0x205455ad, 0x00450054, 0x00450034 },
{ 0x02000010, 0x20003d8c, 0x00000600, 0x00010001 },
{ 0x00000041, 0x220e3d8c, 0x00000602, 0x00040004 },
{ 0x00010041, 0x22083dac, 0x000000a0, 0x00040004 },
{ 0x00010401, 0x205601ad, 0x000000a0, 0x00000000 },
{ 0x00010840, 0x20543d2d, 0x000090c0, 0x00010001 },
{ 0x00000220, 0x34001400, 0x00001400, 0x00009c80 },
{ 0x01000010, 0x20003dac, 0x02000280, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000006 },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffff6 },
{ 0x05000010, 0x200035ac, 0x00000240, 0x00000026 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffffc },
{ 0x07600031, 0x20001c20, 0x30000000, 0x02000001 },
{ 0x01600031, 0x20001c24, 0x708d0000, 0x82000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00600009, 0x25c03dad, 0x00050034, 0x00040004 },
{ 0x00000001, 0x220801ec, 0x00000000, 0x02400240 },
{ 0x00000041, 0x20263d29, 0x00000036, 0x00040004 },
{ 0x00000041, 0x25e435a1, 0x00000020, 0x00000036 },
{ 0x00000040, 0x25e43421, 0x000005e4, 0x00000034 },
{ 0x00000041, 0x27e82c21, 0x000005e4, 0x00400040 },
{ 0x01600031, 0x22401c21, 0x408d07e0, 0x02885800 },
{ 0x01800005, 0x20002d28, 0x02b19040, 0xffffffff },
{ 0x02000005, 0x20003e2c, 0x00009030, 0x00010001 },
{ 0x00000040, 0x25c43dad, 0x000005c4, 0xfffcfffc },
{ 0x00000001, 0x25e20129, 0x00000036, 0x00000000 },
{ 0x000b0220, 0x34001c00, 0x02001400, 0x00000178 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000176 },
{ 0x00000040, 0x25ca3dad, 0x000005ca, 0xfffcfffc },
{ 0x00200401, 0x27e001a1, 0x004505c0, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f000f },
{ 0x00000001, 0x22000060, 0x00000000, 0x0288a001 },
{ 0x01600031, 0x20c00021, 0x408d07e0, 0x00000200 },
{ 0x00200401, 0x27e001a1, 0x004505c8, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0003000f },
{ 0x00000001, 0x22000060, 0x00000000, 0x02286003 },
{ 0x03600031, 0x20800021, 0x408d07e0, 0x00000200 },
{ 0x00800401, 0x23800231, 0x00a900c0, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00a90100, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00a90140, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00a90180, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00a900c4, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00a90104, 0x00000000 },
{ 0x00800401, 0x23e00231, 0x00a90144, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00a90184, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00a900c8, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00a90108, 0x00000000 },
{ 0x00800401, 0x24200231, 0x00a90148, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00a90188, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x20c00231, 0x00cf0380, 0x00000000 },
{ 0x00800801, 0x20d00231, 0x00cf0381, 0x00000000 },
{ 0x00800401, 0x20e00231, 0x00cf0382, 0x00000000 },
{ 0x00800801, 0x20f00231, 0x00cf0383, 0x00000000 },
{ 0x00800401, 0x21000231, 0x00cf03c0, 0x00000000 },
{ 0x00800801, 0x21100231, 0x00cf03c1, 0x00000000 },
{ 0x00800401, 0x21200231, 0x00cf03c2, 0x00000000 },
{ 0x00800801, 0x21300231, 0x00cf03c3, 0x00000000 },
{ 0x00800401, 0x21400231, 0x00cf0400, 0x00000000 },
{ 0x00800801, 0x21500231, 0x00cf0401, 0x00000000 },
{ 0x00800401, 0x21600231, 0x00cf0402, 0x00000000 },
{ 0x00800801, 0x21700231, 0x00cf0403, 0x00000000 },
{ 0x00800401, 0x21800231, 0x00cf0440, 0x00000000 },
{ 0x00800801, 0x21900231, 0x00cf0441, 0x00000000 },
{ 0x00800401, 0x21a00231, 0x00cf0442, 0x00000000 },
{ 0x00800801, 0x21b00231, 0x00cf0443, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00400040 },
{ 0x00000008, 0x25e83e2d, 0x00009080, 0x00020002 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x00459080, 0x00000000 },
{ 0x00200c01, 0x25d80129, 0x00459050, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699060, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000134 },
{ 0x00000008, 0x25e83e2d, 0x00009084, 0x00020002 },
{ 0x00200401, 0x25d0022d, 0x00459084, 0x00000000 },
{ 0x00000801, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00c000c0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00000401, 0x25d80129, 0x00009040, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699064, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000011e },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00100010 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01000100 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01400140 },
{ 0x00000401, 0x25d80129, 0x00009042, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699068, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000110 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01400140 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01800180 },
{ 0x00000401, 0x25d80129, 0x00009044, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x0069906c, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000102 },
{ 0x00200401, 0x27e001a1, 0x004505c4, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f0003 },
{ 0x00800401, 0x23400231, 0x00a90040, 0x00000000 },
{ 0x00800801, 0x23500231, 0x00a90044, 0x00000000 },
{ 0x00800401, 0x23600231, 0x00a90048, 0x00000000 },
{ 0x00800801, 0x23700231, 0x00a9004c, 0x00000000 },
{ 0x00800001, 0x20400232, 0x002b0340, 0x00000000 },
{ 0x00800001, 0x20500232, 0x002b0350, 0x00000000 },
{ 0x00800001, 0x20600232, 0x002b0360, 0x00000000 },
{ 0x00800001, 0x20700232, 0x002b0370, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x06082003 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x00800401, 0x23800231, 0x00a900c0, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00a90100, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00a90140, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00a90180, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00a900c4, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00a90104, 0x00000000 },
{ 0x00800401, 0x23e00231, 0x00a90144, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00a90184, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00a900c8, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00a90108, 0x00000000 },
{ 0x00800401, 0x24200231, 0x00a90148, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00a90188, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x20c00231, 0x00cf0380, 0x00000000 },
{ 0x00800801, 0x20d00231, 0x00cf0381, 0x00000000 },
{ 0x00800401, 0x20e00231, 0x00cf0382, 0x00000000 },
{ 0x00800801, 0x20f00231, 0x00cf0383, 0x00000000 },
{ 0x00800401, 0x21000231, 0x00cf03c0, 0x00000000 },
{ 0x00800801, 0x21100231, 0x00cf03c1, 0x00000000 },
{ 0x00800401, 0x21200231, 0x00cf03c2, 0x00000000 },
{ 0x00800801, 0x21300231, 0x00cf03c3, 0x00000000 },
{ 0x00800401, 0x21400231, 0x00cf0400, 0x00000000 },
{ 0x00800801, 0x21500231, 0x00cf0401, 0x00000000 },
{ 0x00800401, 0x21600231, 0x00cf0402, 0x00000000 },
{ 0x00800801, 0x21700231, 0x00cf0403, 0x00000000 },
{ 0x00800401, 0x21800231, 0x00cf0440, 0x00000000 },
{ 0x00800801, 0x21900231, 0x00cf0441, 0x00000000 },
{ 0x00800401, 0x21a00231, 0x00cf0442, 0x00000000 },
{ 0x00800801, 0x21b00231, 0x00cf0443, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00800080 },
{ 0x00000008, 0x25e83e2d, 0x00009082, 0x00020002 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00800080 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x00459082, 0x00000000 },
{ 0x00200c01, 0x25d80129, 0x00459054, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699070, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000096 },
{ 0x00000008, 0x25e83e2d, 0x00009084, 0x00020002 },
{ 0x00200401, 0x25d0022d, 0x00459084, 0x00000000 },
{ 0x00000801, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00c000c0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00000401, 0x25d80129, 0x00009046, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699074, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000080 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00100010 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01000100 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01400140 },
{ 0x00000401, 0x25d80129, 0x00009048, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699078, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000072 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01400140 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01800180 },
{ 0x00000401, 0x25d80129, 0x0000904a, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x0069907c, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000064 },
{ 0x00200401, 0x27e001a1, 0x004505c0, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f000f },
{ 0x00802001, 0x20400022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0100, 0x00000000 },
{ 0x00802001, 0x20c00022, 0x008d0140, 0x00000000 },
{ 0x00802001, 0x21000022, 0x008d0180, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x12082003 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x00200401, 0x27e001a1, 0x004505c8, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0003000f },
{ 0x00802001, 0x20400022, 0x008d0080, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0618a003 },
{ 0x01600031, 0x26400021, 0x508d07e0, 0x00000200 },
{ 0x00800401, 0x23400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x23500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x23600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x23700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x23800231, 0x00cf0340, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00cf0341, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00cf0342, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00cf0343, 0x00000000 },
{ 0x00802001, 0x202000a2, 0x008d0380, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x06080020 },
{ 0x00600001, 0x26400021, 0x008d0640, 0x00000000 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x00000440, 0x27e03da1, 0x000005c0, 0x000c000c },
{ 0x00000c01, 0x27e401a1, 0x000005c2, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f0003 },
{ 0x02600031, 0x23401c25, 0x408d07e0, 0x02286003 },
{ 0x00800401, 0x23800231, 0x00cf0340, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00cf0341, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00cf0342, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00cf0343, 0x00000000 },
{ 0x00802001, 0x202000a2, 0x008d0380, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x06080020 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00800040, 0x2400462d, 0x00b19c00, 0x00b1d830 },
{ 0x00800040, 0x2340462d, 0x00b19820, 0x00b1d830 },
{ 0x00800040, 0x2360462d, 0x00b19c10, 0x00b1dc00 },
{ 0x05810010, 0x200035ac, 0x008d2400, 0x000005d0 },
{ 0x05810010, 0x200035ac, 0x008d2340, 0x000005d2 },
{ 0x05810010, 0x200035ac, 0x008d2360, 0x000005d2 },
{ 0x00818022, 0x34001c00, 0x00001400, 0x000000ca },
{ 0x00800040, 0x2440462d, 0x00b19810, 0x00b1d830 },
{ 0x00800040, 0x2460462d, 0x00b19c20, 0x00b1dc00 },
{ 0x00800201, 0x24a00129, 0x00b19820, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x02001400, 0x00000066 },
{ 0x05800010, 0x200035ac, 0x028d2400, 0x000005e8 },
{ 0x00800040, 0x2520462d, 0x00b19830, 0x00b19820 },
{ 0x00800040, 0x2540462d, 0x00b19c00, 0x00b19c10 },
{ 0x00000201, 0x26000108, 0x00000602, 0x00000000 },
{ 0x05810010, 0x200035ac, 0x028d2440, 0x000005d2 },
{ 0x05810010, 0x200035ac, 0x008d2460, 0x000005d2 },
{ 0x00818022, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x00800040, 0x2560462d, 0x00b19810, 0x00b19800 },
{ 0x00800040, 0x238045ad, 0x008d0520, 0x00b19c00 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00040004 },
{ 0x00800040, 0x23a0458d, 0x00b10400, 0x00b19810 },
{ 0x00800048, 0x24003dac, 0x008d0560, 0x00020002 },
{ 0x80800008, 0x43c03d91, 0x00b10400, 0x00030003 },
{ 0x00800040, 0x24003dac, 0x00b103a0, 0xfffefffe },
{ 0x80800008, 0x43603d91, 0x00b10400, 0x00020002 },
{ 0x00800040, 0x2400362c, 0x00b19c10, 0x00b10380 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00b103a0 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00030003 },
{ 0x00800001, 0xb8100231, 0x00ae03c0, 0x00000000 },
{ 0x00800001, 0xb8200231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0xb8300231, 0x00ae0340, 0x00000000 },
{ 0x00808024, 0x34001c00, 0x00001400, 0x0001000e },
{ 0x00800040, 0x2400362c, 0x00b19820, 0x008d0520 },
{ 0x00800040, 0x2400458c, 0x00b10400, 0x00b19c10 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00020002 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00020002 },
{ 0x00800001, 0xb8300231, 0x00ae0340, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x00800040, 0x2580462d, 0x00b19c20, 0x00b19c30 },
{ 0x00800040, 0x238045ad, 0x008d0540, 0x008d04b0 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00040004 },
{ 0x00800040, 0x23a0458d, 0x00b10400, 0x00b19c20 },
{ 0x00800048, 0x24003dac, 0x008d0580, 0x00020002 },
{ 0x80800008, 0x43c03d91, 0x00b10400, 0x00030003 },
{ 0x00800040, 0x24003dac, 0x00b103a0, 0xfffefffe },
{ 0x80800008, 0x43603d91, 0x00b10400, 0x00020002 },
{ 0x00800040, 0x2400362c, 0x008d04a0, 0x00b10380 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00b103a0 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00030003 },
{ 0x00800001, 0xbc200231, 0x00ae03c0, 0x00000000 },
{ 0x00800001, 0xbc100231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0xbc000231, 0x00ae0340, 0x00000000 },
{ 0x00808024, 0x34001c00, 0x00001400, 0x0001000e },
{ 0x00800040, 0x2400362c, 0x008d04a0, 0x008d0540 },
{ 0x00800040, 0x2400458c, 0x00b10400, 0x00b19c10 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00020002 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00020002 },
{ 0x00800001, 0xbc000231, 0x00ae0340, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00808024, 0x34001c00, 0x00001400, 0x0001005c },
{ 0x00800201, 0x23e0022d, 0x002805d4, 0x00000000 },
{ 0x00800201, 0x23c0022d, 0x002805d4, 0x00000000 },
{ 0x05800010, 0x200035ac, 0x008d2440, 0x000005d2 },
{ 0x05800010, 0x200035ac, 0x028d2460, 0x000005d2 },
{ 0x00800040, 0x24003e2c, 0x00b19820, 0x00040004 },
{ 0x00800048, 0x24003dac, 0x008d0400, 0x00040004 },
{ 0x00800040, 0x2400458c, 0x00b10400, 0x00b1dc10 },
{ 0x00800008, 0x23403d8d, 0x00b10400, 0x00030003 },
{ 0x00810040, 0x23e03dad, 0x008d03e0, 0x00010001 },
{ 0x00200201, 0x25ec018d, 0x00450600, 0x00000000 },
{ 0x00810040, 0x23e03dad, 0x028d03e0, 0x00010001 },
{ 0x03800010, 0x200035ac, 0x008d0340, 0x008d03e0 },
{ 0x05800010, 0x200035ac, 0x028d0340, 0x008d43e0 },
{ 0x00800042, 0x24c0462d, 0x00b19830, 0x00b19c00 },
{ 0x00810001, 0x234001ad, 0x008d03e0, 0x00000000 },
{ 0x00810001, 0x234001ad, 0x028d43e0, 0x00000000 },
{ 0x00200201, 0x260001ac, 0x004505ec, 0x00000000 },
{ 0x80800040, 0x43603631, 0x00b19830, 0x008d0340 },
{ 0x80800040, 0x43403631, 0x00b19c00, 0x008d4340 },
{ 0x00800001, 0xb8300231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0xbc000231, 0x00ae0340, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00800040, 0x2400362c, 0x00b19810, 0x008d04c0 },
{ 0x00800048, 0x24003e2c, 0x00b19820, 0xfffefffe },
{ 0x00800008, 0x23603d8d, 0x00b10400, 0x00010001 },
{ 0x03800010, 0x200035ac, 0x008d0360, 0x008d03c0 },
{ 0x05800010, 0x200035ac, 0x028d0360, 0x008d43c0 },
{ 0x00810001, 0x236001ad, 0x008d03c0, 0x00000000 },
{ 0x00810001, 0x236001ad, 0x028d43c0, 0x00000000 },
{ 0x00000201, 0x260201ac, 0x000005ee, 0x00000000 },
{ 0x80800040, 0x43603631, 0x00b19820, 0x008d0360 },
{ 0x00800001, 0xb8200231, 0x00ae0360, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00800040, 0x2400362c, 0x00b19c20, 0x008d04c0 },
{ 0x00800048, 0x24003e2c, 0x00b19c10, 0xfffefffe },
{ 0x00800008, 0x23603d8d, 0x00b10400, 0x00010001 },
{ 0x03800010, 0x200035ac, 0x008d0360, 0x008d03c0 },
{ 0x05800010, 0x200035ac, 0x028d0360, 0x008d43c0 },
{ 0x00810001, 0x236001ad, 0x008d03c0, 0x00000000 },
{ 0x00810001, 0x236001ad, 0x028d43c0, 0x00000000 },
{ 0x80800040, 0x43603631, 0x00b19c10, 0x008d0360 },
{ 0x00800001, 0xbc100231, 0x00ae0360, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007c0, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00a02001, 0x20400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x206601ed, 0x00000000, 0x00030003 },
{ 0x00000009, 0x20663dad, 0x00000066, 0x000a000a },
{ 0x00000001, 0x206801ed, 0x00000000, 0x01400140 },
{ 0x00000001, 0x22600169, 0x00000000, 0x00030003 },
{ 0x00000008, 0x22403dad, 0x00000026, 0x00010001 },
{ 0x00000041, 0x224235ad, 0x00000020, 0x00000022 },
{ 0x00600001, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x203c0022, 0x00000018, 0x00000000 },
{ 0x00000001, 0x203f01f2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c00e2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c010a, 0x00000e00, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0020, 0x00000000 },
{ 0x00400001, 0x205401ed, 0x00000000, 0x00000000 },
{ 0x00200040, 0x20583dad, 0x00450020, 0xffffffff },
{ 0x00000001, 0x22000060, 0x00000000, 0x06080000 },
{ 0x00600001, 0x26000021, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x26140061, 0x00000000, 0x00c00400 },
{ 0x00000001, 0x26100169, 0x00000000, 0x12121212 },
{ 0x07600031, 0x26201c21, 0x308d0600, 0x02000000 },
{ 0x00200401, 0x208000e5, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x208800e5, 0x00000000, 0xffffffc4 },
{ 0x00000801, 0x208c00e5, 0x00000000, 0xffffffc8 },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00100010 },
{ 0x00000001, 0x206001ed, 0x00000000, 0x00020002 },
{ 0x00000001, 0x206201ad, 0x0000005a, 0x00000000 },
{ 0x00000001, 0x20a001ed, 0x00000000, 0x00000000 },
{ 0x00200001, 0x228001ed, 0x00000000, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21000061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21400061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21800061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00ff00ff },
{ 0x00000041, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x05000010, 0x200035ac, 0x02000280, 0x00000240 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x01000010, 0x20002d28, 0x000090c2, 0x00000000 },
{ 0x03000010, 0x200035ac, 0x02000054, 0x00000058 },
{ 0x00800001, 0x240001ac, 0x00000068, 0x00000000 },
{ 0x00000048, 0x22a03dad, 0x00000056, 0x00040004 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffff2 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00200001, 0xb0c00229, 0x00450054, 0x00000000 },
{ 0x00200040, 0x22803dad, 0x00450280, 0x00010001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x20380122, 0x00000260, 0x00000000 },
{ 0x00800001, 0x204001ae, 0x00b10040, 0x00000000 },
{ 0x00000008, 0x20003d2a, 0x000002a0, 0x00010001 },
{ 0x00000040, 0x22602d29, 0x00000260, 0x00020002 },
{ 0x00800031, 0x20000008, 0x608d0000, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x04200010, 0x200035ac, 0x00450054, 0x00450060 },
{ 0x00010040, 0x20a03dad, 0x02000056, 0x00010001 },
{ 0x05200010, 0x200035ac, 0x02450280, 0x00450240 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x00040004 },
{ 0x00000048, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x00200040, 0x205455ad, 0x00450054, 0x00450034 },
{ 0x02000010, 0x20003d8c, 0x00000600, 0x00010001 },
{ 0x00000041, 0x220e3d8c, 0x00000602, 0x00040004 },
{ 0x00010041, 0x22083dac, 0x000000a0, 0x00040004 },
{ 0x00010401, 0x205601ad, 0x000000a0, 0x00000000 },
{ 0x00010840, 0x20543d2d, 0x000090c0, 0x00010001 },
{ 0x00000220, 0x34001400, 0x00001400, 0x00009c80 },
{ 0x01000010, 0x20003dac, 0x02000280, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00600401, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x26140061, 0x00000000, 0x01800000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000801, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00000040, 0x2078252d, 0x00000026, 0x00004280 },
{ 0x00400001, 0x26000231, 0x00000078, 0x00000000 },
{ 0x00600031, 0x26201c21, 0x308d0600, 0x02000002 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffffe8 },
{ 0x07600031, 0x20001c20, 0x30000000, 0x02000001 },
{ 0x01600031, 0x20001c24, 0x708d0000, 0x82000012 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00600009, 0x25c03dad, 0x00050034, 0x00040004 },
{ 0x00000001, 0x220801ec, 0x00000000, 0x02400240 },
{ 0x00000041, 0x25e435a1, 0x00000020, 0x00000036 },
{ 0x00000040, 0x25e43421, 0x000005e4, 0x00000034 },
{ 0x00000041, 0x27e82c21, 0x000005e4, 0x00400040 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x01400140 },
{ 0x00000048, 0x20263dad, 0x00000036, 0x00040004 },
{ 0x00000040, 0x25c43dad, 0x000005c4, 0xfffcfffc },
{ 0x00000040, 0x25ca3dad, 0x000005ca, 0xfffcfffc },
{ 0x00800001, 0x2220022d, 0x000d002c, 0x00000000 },
{ 0x00600040, 0x22303dad, 0x008d0230, 0x00080008 },
{ 0x01600031, 0x22401c21, 0x408d07e0, 0x02885800 },
{ 0x01800005, 0x20002d28, 0x02b19040, 0xffffffff },
{ 0x02000005, 0x20003e2c, 0x00009030, 0x00010001 },
{ 0x00000001, 0x25e20129, 0x00000036, 0x00000000 },
{ 0x000b0220, 0x34001c00, 0x02001400, 0x00000126 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000124 },
{ 0x00000401, 0x27e001a1, 0x000005c0, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0007000f },
{ 0x00000001, 0x22000060, 0x00000000, 0x0248a002 },
{ 0x02600031, 0x20c00021, 0x408d07e0, 0x00000200 },
{ 0x00000401, 0x27e001a1, 0x000005c8, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005ca, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0001000f },
{ 0x00000001, 0x22000060, 0x00000000, 0x02186004 },
{ 0x02600031, 0x20800021, 0x408d07e0, 0x00000200 },
{ 0x00800001, 0x2380012d, 0x008900c0, 0x00000000 },
{ 0x00800001, 0x23a0012d, 0x00890100, 0x00000000 },
{ 0x00800001, 0x23c0012d, 0x008900c8, 0x00000000 },
{ 0x00800001, 0x23e0012d, 0x00890108, 0x00000000 },
{ 0x00600401, 0x20c001a9, 0x00ab0380, 0x00000000 },
{ 0x00600801, 0x20d001a9, 0x00ab0382, 0x00000000 },
{ 0x00600401, 0x20e001a9, 0x00ab0384, 0x00000000 },
{ 0x00600801, 0x20f001a9, 0x00ab0386, 0x00000000 },
{ 0x00600401, 0x210001a9, 0x00ab03c0, 0x00000000 },
{ 0x00600801, 0x211001a9, 0x00ab03c2, 0x00000000 },
{ 0x00600401, 0x212001a9, 0x00ab03c4, 0x00000000 },
{ 0x00600801, 0x213001a9, 0x00ab03c6, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00400040 },
{ 0x00800008, 0x2340352d, 0x00009050, 0x008d0220 },
{ 0x00800008, 0x2360352d, 0x00009052, 0x008d0220 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x004590c0, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990a0, 0x00000000 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000fc },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00410041 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c100c1 },
{ 0x00200401, 0x25d0022d, 0x004590c8, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990b0, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000ee },
{ 0x00800008, 0x2340352d, 0x00009042, 0x008d0220 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e000e0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00200401, 0x25d0022d, 0x004590c4, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990a4, 0x00000000 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x00000001, 0x260201e8, 0x00000000, 0x00000000 },
{ 0x00000401, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000801, 0x25d80109, 0x00000600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000d8 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e100e1 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01010101 },
{ 0x00200401, 0x25d0022d, 0x004590cc, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990b4, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000ca },
{ 0x00000401, 0x27e001a1, 0x000005c4, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c6, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x00070003 },
{ 0x00600401, 0x2340012d, 0x00890040, 0x00000000 },
{ 0x00600801, 0x2350012d, 0x00890048, 0x00000000 },
{ 0x00600001, 0x204001aa, 0x00270340, 0x00000000 },
{ 0x00600001, 0x205001aa, 0x00270350, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x04082004 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x00800001, 0x2380012d, 0x008900c0, 0x00000000 },
{ 0x00800001, 0x23a0012d, 0x00890100, 0x00000000 },
{ 0x00800001, 0x23c0012d, 0x008900c8, 0x00000000 },
{ 0x00800001, 0x23e0012d, 0x00890108, 0x00000000 },
{ 0x00600401, 0x20c001a9, 0x00ab0380, 0x00000000 },
{ 0x00600801, 0x20d001a9, 0x00ab0382, 0x00000000 },
{ 0x00600401, 0x20e001a9, 0x00ab0384, 0x00000000 },
{ 0x00600801, 0x20f001a9, 0x00ab0386, 0x00000000 },
{ 0x00600401, 0x210001a9, 0x00ab03c0, 0x00000000 },
{ 0x00600801, 0x211001a9, 0x00ab03c2, 0x00000000 },
{ 0x00600401, 0x212001a9, 0x00ab03c4, 0x00000000 },
{ 0x00600801, 0x213001a9, 0x00ab03c6, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00800080 },
{ 0x00800008, 0x2340352d, 0x00009054, 0x008d0220 },
{ 0x00800008, 0x2360352d, 0x00009056, 0x008d0220 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00800080 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x004590c2, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990a8, 0x00000000 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00810081 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c100c1 },
{ 0x00200401, 0x25d0022d, 0x004590ca, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990b8, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000078 },
{ 0x00800008, 0x2340352d, 0x00009048, 0x008d0220 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e000e0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00200401, 0x25d0022d, 0x004590c4, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990ac, 0x00000000 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x00000001, 0x260201e8, 0x00000000, 0x00000000 },
{ 0x00000401, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000801, 0x25d80109, 0x00000600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000062 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e100e1 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01010101 },
{ 0x00200401, 0x25d0022d, 0x004590cc, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990bc, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000054 },
{ 0x00000401, 0x27e001a1, 0x000005c0, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0007000f },
{ 0x00802001, 0x20400022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0a082004 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x00000401, 0x27e001a1, 0x000005c8, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005ca, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0001000f },
{ 0x00600001, 0x20400022, 0x008d0080, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0418a004 },
{ 0x01600031, 0x26400021, 0x508d07e0, 0x00000200 },
{ 0x00600401, 0x2340012d, 0x008500cc, 0x00000000 },
{ 0x00600801, 0x2350012d, 0x0085010c, 0x00000000 },
{ 0x00800001, 0x236001ad, 0x002e0340, 0x00000000 },
{ 0x00600001, 0x202000a2, 0x008d0360, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x04080020 },
{ 0x00600001, 0x26400021, 0x008d0640, 0x00000000 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x00000440, 0x27e03da1, 0x000005c0, 0x000c000c },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x00070003 },
{ 0x02600031, 0x23401c25, 0x408d07e0, 0x02186004 },
{ 0x00800001, 0x236001ad, 0x002e0340, 0x00000000 },
{ 0x00600001, 0x202000a2, 0x008d0360, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x04080020 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x00600040, 0x2400462d, 0x00ae9c00, 0x00aed810 },
{ 0x00600040, 0x2340462d, 0x00ae9800, 0x00aed810 },
{ 0x00600040, 0x2360462d, 0x00ae9c10, 0x00aedc00 },
{ 0x05810010, 0x200035ac, 0x008d2400, 0x000005d0 },
{ 0x05810010, 0x200035ac, 0x008d2340, 0x000005d2 },
{ 0x05810010, 0x200035ac, 0x008d2360, 0x000005d2 },
{ 0x00618022, 0x34001c00, 0x00001400, 0x00000038 },
{ 0x00618022, 0x34001c00, 0x02001400, 0x00000016 },
{ 0x00600040, 0x24003e2c, 0x00ae9c10, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x00ae9800, 0x00020002 },
{ 0x00600040, 0x2400458c, 0x008d0400, 0x00ae9810 },
{ 0x80600008, 0x43403d91, 0x008d0400, 0x00020002 },
{ 0x00600040, 0x24003e2c, 0x00ae9800, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x00ae9c10, 0x00020002 },
{ 0x00600040, 0x2400458c, 0x008d0400, 0x00ae9c00 },
{ 0x80600008, 0x43603d91, 0x008d0400, 0x00020002 },
{ 0x00600001, 0xd8100231, 0x00ae0340, 0x00000000 },
{ 0x00600001, 0xdc000231, 0x00ae0360, 0x00000000 },
{ 0x00608024, 0x34001c00, 0x00001400, 0x00010020 },
{ 0x00600201, 0x2400022c, 0x002405d4, 0x00000000 },
{ 0x00600040, 0x23e03d8d, 0x008d0400, 0x00010001 },
{ 0x00600040, 0x24003e2c, 0x00ae9800, 0x00040004 },
{ 0x00600048, 0x24003dac, 0x008d0400, 0x00040004 },
{ 0x00600040, 0x2400458c, 0x008d0400, 0x00aedc10 },
{ 0x00600008, 0x23403d8d, 0x008d0400, 0x00030003 },
{ 0x03600010, 0x200035ac, 0x008d0340, 0x008d03e0 },
{ 0x05600010, 0x200035ac, 0x028d0340, 0x008d43e0 },
{ 0x00610001, 0x234001ad, 0x008d03e0, 0x00000000 },
{ 0x00610001, 0x234001ad, 0x028d43e0, 0x00000000 },
{ 0x80600040, 0x43603631, 0x00ae9810, 0x008d0340 },
{ 0x80600040, 0x43403631, 0x00ae9c00, 0x008d4340 },
{ 0x00600001, 0xd8100231, 0x00ae0360, 0x00000000 },
{ 0x00600001, 0xdc000231, 0x00ae0340, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007c0, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00a02001, 0x20400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x206601ed, 0x00000000, 0x00030003 },
{ 0x00000009, 0x20663dad, 0x00000066, 0x000a000a },
{ 0x00000008, 0x22403dad, 0x00000026, 0x00010001 },
{ 0x00000041, 0x224235ad, 0x00000020, 0x00000022 },
{ 0x00600001, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x203c0022, 0x00000018, 0x00000000 },
{ 0x00000001, 0x203f01f2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c00e2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c010a, 0x00000e00, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0020, 0x00000000 },
{ 0x00400001, 0x205401ed, 0x00000000, 0x00000000 },
{ 0x00200040, 0x20583dad, 0x00450020, 0xffffffff },
{ 0x00000001, 0x22000060, 0x00000000, 0x06080000 },
{ 0x00600001, 0x26000021, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x26140061, 0x00000000, 0x00c00400 },
{ 0x00000001, 0x26100169, 0x00000000, 0x12121212 },
{ 0x07600031, 0x26201c21, 0x308d0600, 0x02000000 },
{ 0x00000001, 0x22a00169, 0x00000000, 0x01400140 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00200020 },
{ 0x00000001, 0x203801e2, 0x00000000, 0x00010001 },
{ 0x00800001, 0x204001ae, 0x00b10020, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x000002a0, 0x00010001 },
{ 0x00800031, 0x20000128, 0x608d07e0, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x22a00169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x22600169, 0x00000000, 0x00020002 },
{ 0x00200401, 0x208000e5, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x208800e5, 0x00000000, 0xffffffc6 },
{ 0x00000801, 0x208c00e5, 0x00000000, 0xffffffca },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00100010 },
{ 0x00000001, 0x206001ed, 0x00000000, 0x00020002 },
{ 0x00000001, 0x206201ad, 0x0000005a, 0x00000000 },
{ 0x00000001, 0x20a001ed, 0x00000000, 0x00000000 },
{ 0x00200001, 0x228001ed, 0x00000000, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21000061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21400061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21800061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00ff00ff },
{ 0x00000041, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x05000010, 0x200035ac, 0x02000280, 0x00000240 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x01000010, 0x20002d28, 0x000090c2, 0x00000000 },
{ 0x03000010, 0x200035ac, 0x02000054, 0x00000058 },
{ 0x00000041, 0x22a03dad, 0x00000056, 0x00040004 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffff4 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00200001, 0xb0c00229, 0x00450054, 0x00000000 },
{ 0x00200040, 0x22803dad, 0x00450280, 0x00010001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x20380122, 0x00000260, 0x00000000 },
{ 0x00800001, 0x204001ae, 0x00b10040, 0x00000000 },
{ 0x00000008, 0x20003d2a, 0x000002a0, 0x00010001 },
{ 0x00000040, 0x22602d29, 0x00000260, 0x00020002 },
{ 0x00800031, 0x20000008, 0x608d0000, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x04200010, 0x200035ac, 0x00450054, 0x00450060 },
{ 0x00010040, 0x20a03dad, 0x02000056, 0x00010001 },
{ 0x05200010, 0x200035ac, 0x02450280, 0x00450240 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x00040004 },
{ 0x00000048, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x00200040, 0x205455ad, 0x00450054, 0x00450034 },
{ 0x02000010, 0x20003d8c, 0x00000600, 0x00010001 },
{ 0x00000041, 0x220e3d8c, 0x00000602, 0x00040004 },
{ 0x00010041, 0x22083dac, 0x000000a0, 0x00040004 },
{ 0x00010401, 0x205601ad, 0x000000a0, 0x00000000 },
{ 0x00010840, 0x20543d2d, 0x000090c0, 0x00010001 },
{ 0x00000220, 0x34001400, 0x00001400, 0x00009c80 },
{ 0x01000010, 0x20003dac, 0x02000280, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000006 },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffff6 },
{ 0x05000010, 0x200035ac, 0x00000240, 0x00000026 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffffc },
{ 0x07600031, 0x20001c20, 0x30000000, 0x02000001 },
{ 0x01600031, 0x20001c24, 0x708d0000, 0x82000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00600009, 0x25c03dad, 0x00050034, 0x00040004 },
{ 0x00000001, 0x220801ec, 0x00000000, 0x02400240 },
{ 0x00000041, 0x20263d29, 0x00000036, 0x00040004 },
{ 0x00000041, 0x25e435a1, 0x00000020, 0x00000036 },
{ 0x00000040, 0x25e43421, 0x000005e4, 0x00000034 },
{ 0x00000041, 0x27e82c21, 0x000005e4, 0x00400040 },
{ 0x01600031, 0x22401c21, 0x408d07e0, 0x02885800 },
{ 0x01800005, 0x20002d28, 0x02b19040, 0xffffffff },
{ 0x02000005, 0x20003e2c, 0x00009030, 0x00010001 },
{ 0x00000040, 0x25c43dad, 0x000005c4, 0xfffcfffc },
{ 0x00000001, 0x25e20129, 0x00000036, 0x00000000 },
{ 0x000b0220, 0x34001c00, 0x02001400, 0x0000018c },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000018a },
{ 0x00000040, 0x25ca3dad, 0x000005ca, 0xfffcfffc },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c0, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f000f },
{ 0x00010001, 0x22000060, 0x02000000, 0x0288e701 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0288e601 },
{ 0x01600031, 0x20c00021, 0x408d07e0, 0x00000200 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c8, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0003000f },
{ 0x00010001, 0x22000060, 0x02000000, 0x02286703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02286603 },
{ 0x03600031, 0x20800021, 0x408d07e0, 0x00000200 },
{ 0x00800401, 0x23800231, 0x00a900c0, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00a90100, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00a90140, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00a90180, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00a900c4, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00a90104, 0x00000000 },
{ 0x00800401, 0x23e00231, 0x00a90144, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00a90184, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00a900c8, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00a90108, 0x00000000 },
{ 0x00800401, 0x24200231, 0x00a90148, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00a90188, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x20c00231, 0x00cf0380, 0x00000000 },
{ 0x00800801, 0x20d00231, 0x00cf0381, 0x00000000 },
{ 0x00800401, 0x20e00231, 0x00cf0382, 0x00000000 },
{ 0x00800801, 0x20f00231, 0x00cf0383, 0x00000000 },
{ 0x00800401, 0x21000231, 0x00cf03c0, 0x00000000 },
{ 0x00800801, 0x21100231, 0x00cf03c1, 0x00000000 },
{ 0x00800401, 0x21200231, 0x00cf03c2, 0x00000000 },
{ 0x00800801, 0x21300231, 0x00cf03c3, 0x00000000 },
{ 0x00800401, 0x21400231, 0x00cf0400, 0x00000000 },
{ 0x00800801, 0x21500231, 0x00cf0401, 0x00000000 },
{ 0x00800401, 0x21600231, 0x00cf0402, 0x00000000 },
{ 0x00800801, 0x21700231, 0x00cf0403, 0x00000000 },
{ 0x00800401, 0x21800231, 0x00cf0440, 0x00000000 },
{ 0x00800801, 0x21900231, 0x00cf0441, 0x00000000 },
{ 0x00800401, 0x21a00231, 0x00cf0442, 0x00000000 },
{ 0x00800801, 0x21b00231, 0x00cf0443, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00400040 },
{ 0x00000008, 0x25e83e2d, 0x00009080, 0x00020002 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x00459080, 0x00000000 },
{ 0x00200c01, 0x25d80129, 0x00459050, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699060, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffb8c },
{ 0x00000008, 0x25e83e2d, 0x00009084, 0x00020002 },
{ 0x00200401, 0x25d0022d, 0x00459084, 0x00000000 },
{ 0x00000801, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00c000c0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00000401, 0x25d80129, 0x00009040, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699064, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffb76 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00100010 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01000100 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01400140 },
{ 0x00000401, 0x25d80129, 0x00009042, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699068, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffb68 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01400140 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01800180 },
{ 0x00000401, 0x25d80129, 0x00009044, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x0069906c, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffb5a },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c4, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f0003 },
{ 0x00800401, 0x23400231, 0x00a90040, 0x00000000 },
{ 0x00800801, 0x23500231, 0x00a90044, 0x00000000 },
{ 0x00800401, 0x23600231, 0x00a90048, 0x00000000 },
{ 0x00800801, 0x23700231, 0x00a9004c, 0x00000000 },
{ 0x00800001, 0x20400232, 0x002b0340, 0x00000000 },
{ 0x00800001, 0x20500232, 0x002b0350, 0x00000000 },
{ 0x00800001, 0x20600232, 0x002b0360, 0x00000000 },
{ 0x00800001, 0x20700232, 0x002b0370, 0x00000000 },
{ 0x00010001, 0x22000060, 0x02000000, 0x06082703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x06082603 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x00800401, 0x23800231, 0x00a900c0, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00a90100, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00a90140, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00a90180, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00a900c4, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00a90104, 0x00000000 },
{ 0x00800401, 0x23e00231, 0x00a90144, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00a90184, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00a900c8, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00a90108, 0x00000000 },
{ 0x00800401, 0x24200231, 0x00a90148, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00a90188, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x20c00231, 0x00cf0380, 0x00000000 },
{ 0x00800801, 0x20d00231, 0x00cf0381, 0x00000000 },
{ 0x00800401, 0x20e00231, 0x00cf0382, 0x00000000 },
{ 0x00800801, 0x20f00231, 0x00cf0383, 0x00000000 },
{ 0x00800401, 0x21000231, 0x00cf03c0, 0x00000000 },
{ 0x00800801, 0x21100231, 0x00cf03c1, 0x00000000 },
{ 0x00800401, 0x21200231, 0x00cf03c2, 0x00000000 },
{ 0x00800801, 0x21300231, 0x00cf03c3, 0x00000000 },
{ 0x00800401, 0x21400231, 0x00cf0400, 0x00000000 },
{ 0x00800801, 0x21500231, 0x00cf0401, 0x00000000 },
{ 0x00800401, 0x21600231, 0x00cf0402, 0x00000000 },
{ 0x00800801, 0x21700231, 0x00cf0403, 0x00000000 },
{ 0x00800401, 0x21800231, 0x00cf0440, 0x00000000 },
{ 0x00800801, 0x21900231, 0x00cf0441, 0x00000000 },
{ 0x00800401, 0x21a00231, 0x00cf0442, 0x00000000 },
{ 0x00800801, 0x21b00231, 0x00cf0443, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00800080 },
{ 0x00000008, 0x25e83e2d, 0x00009082, 0x00020002 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00800080 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x00459082, 0x00000000 },
{ 0x00200c01, 0x25d80129, 0x00459054, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699070, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffaea },
{ 0x00000008, 0x25e83e2d, 0x00009084, 0x00020002 },
{ 0x00200401, 0x25d0022d, 0x00459084, 0x00000000 },
{ 0x00000801, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00c000c0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00000401, 0x25d80129, 0x00009046, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699074, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffad4 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00100010 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01000100 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01400140 },
{ 0x00000401, 0x25d80129, 0x00009048, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699078, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffac6 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01400140 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01800180 },
{ 0x00000401, 0x25d80129, 0x0000904a, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x0069907c, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffab8 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c0, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f000f },
{ 0x00802001, 0x20400022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0100, 0x00000000 },
{ 0x00802001, 0x20c00022, 0x008d0140, 0x00000000 },
{ 0x00802001, 0x21000022, 0x008d0180, 0x00000000 },
{ 0x00010001, 0x22000060, 0x02000000, 0x12082703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x12082603 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c8, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0003000f },
{ 0x00802001, 0x20400022, 0x008d0080, 0x00000000 },
{ 0x00010001, 0x22000060, 0x02000000, 0x0618a703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0618a603 },
{ 0x01600031, 0x26400021, 0x508d07e0, 0x00000200 },
{ 0x00800401, 0x23400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x23500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x23600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x23700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x23800231, 0x00cf0340, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00cf0341, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00cf0342, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00cf0343, 0x00000000 },
{ 0x00802001, 0x202000a2, 0x008d0380, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x06080020 },
{ 0x00600001, 0x26400021, 0x008d0640, 0x00000000 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000440, 0x27e03da1, 0x000005c0, 0x000c000c },
{ 0x00000c01, 0x27e401a1, 0x000005c2, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f0003 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x02286003 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00100010 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x00010008 },
{ 0x00010001, 0x22000060, 0x02000000, 0x02286703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02286603 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x02600031, 0x23400025, 0x408d07e0, 0x00000200 },
{ 0x00800401, 0x23800231, 0x00cf0340, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00cf0341, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00cf0342, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00cf0343, 0x00000000 },
{ 0x00802001, 0x202000a2, 0x008d0380, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x06080020 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00a02001, 0x20400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x206601ed, 0x00000000, 0x00030003 },
{ 0x00000009, 0x20663dad, 0x00000066, 0x000a000a },
{ 0x00000001, 0x206801ed, 0x00000000, 0x01400140 },
{ 0x00000001, 0x22600169, 0x00000000, 0x00030003 },
{ 0x00000008, 0x22403dad, 0x00000026, 0x00010001 },
{ 0x00000041, 0x224235ad, 0x00000020, 0x00000022 },
{ 0x00600001, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x203c0022, 0x00000018, 0x00000000 },
{ 0x00000001, 0x203f01f2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c00e2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c010a, 0x00000e00, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0020, 0x00000000 },
{ 0x00400001, 0x205401ed, 0x00000000, 0x00000000 },
{ 0x00200040, 0x20583dad, 0x00450020, 0xffffffff },
{ 0x00000001, 0x22000060, 0x00000000, 0x06080000 },
{ 0x00600001, 0x26000021, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x26140061, 0x00000000, 0x00c00400 },
{ 0x00000001, 0x26100169, 0x00000000, 0x12121212 },
{ 0x07600031, 0x26201c21, 0x308d0600, 0x02000000 },
{ 0x00200401, 0x208000e5, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x208800e5, 0x00000000, 0xffffffc4 },
{ 0x00000801, 0x208c00e5, 0x00000000, 0xffffffc8 },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00100010 },
{ 0x00000001, 0x206001ed, 0x00000000, 0x00020002 },
{ 0x00000001, 0x206201ad, 0x0000005a, 0x00000000 },
{ 0x00000001, 0x20a001ed, 0x00000000, 0x00000000 },
{ 0x00200001, 0x228001ed, 0x00000000, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21000061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21400061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21800061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00ff00ff },
{ 0x00000041, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x05000010, 0x200035ac, 0x02000280, 0x00000240 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x01000010, 0x20002d28, 0x000090c2, 0x00000000 },
{ 0x03000010, 0x200035ac, 0x02000054, 0x00000058 },
{ 0x00800001, 0x240001ac, 0x00000068, 0x00000000 },
{ 0x00000048, 0x22a03dad, 0x00000056, 0x00040004 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffff2 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00200001, 0xb0c00229, 0x00450054, 0x00000000 },
{ 0x00200040, 0x22803dad, 0x00450280, 0x00010001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x20380122, 0x00000260, 0x00000000 },
{ 0x00800001, 0x204001ae, 0x00b10040, 0x00000000 },
{ 0x00000008, 0x20003d2a, 0x000002a0, 0x00010001 },
{ 0x00000040, 0x22602d29, 0x00000260, 0x00020002 },
{ 0x00800031, 0x20000008, 0x608d0000, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x04200010, 0x200035ac, 0x00450054, 0x00450060 },
{ 0x00010040, 0x20a03dad, 0x02000056, 0x00010001 },
{ 0x05200010, 0x200035ac, 0x02450280, 0x00450240 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x00040004 },
{ 0x00000048, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x00200040, 0x205455ad, 0x00450054, 0x00450034 },
{ 0x02000010, 0x20003d8c, 0x00000600, 0x00010001 },
{ 0x00000041, 0x220e3d8c, 0x00000602, 0x00040004 },
{ 0x00010041, 0x22083dac, 0x000000a0, 0x00040004 },
{ 0x00010401, 0x205601ad, 0x000000a0, 0x00000000 },
{ 0x00010840, 0x20543d2d, 0x000090c0, 0x00010001 },
{ 0x00000220, 0x34001400, 0x00001400, 0x00009c80 },
{ 0x01000010, 0x20003dac, 0x02000280, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00600401, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x26140061, 0x00000000, 0x01800000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000801, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00000040, 0x2078252d, 0x00000026, 0x00004280 },
{ 0x00400001, 0x26000231, 0x00000078, 0x00000000 },
{ 0x00600031, 0x26201c21, 0x308d0600, 0x02000002 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffffe8 },
{ 0x07600031, 0x20001c20, 0x30000000, 0x02000001 },
{ 0x01600031, 0x20001c24, 0x708d0000, 0x82000012 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00600009, 0x25c03dad, 0x00050034, 0x00040004 },
{ 0x00000001, 0x220801ec, 0x00000000, 0x02400240 },
{ 0x00000041, 0x25e435a1, 0x00000020, 0x00000036 },
{ 0x00000040, 0x25e43421, 0x000005e4, 0x00000034 },
{ 0x00000041, 0x27e82c21, 0x000005e4, 0x00400040 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x01400140 },
{ 0x00000048, 0x20263dad, 0x00000036, 0x00040004 },
{ 0x00000040, 0x25c43dad, 0x000005c4, 0xfffcfffc },
{ 0x00000040, 0x25ca3dad, 0x000005ca, 0xfffcfffc },
{ 0x00800001, 0x2220022d, 0x000d002c, 0x00000000 },
{ 0x00600040, 0x22303dad, 0x008d0230, 0x00080008 },
{ 0x01600031, 0x22401c21, 0x408d07e0, 0x02885800 },
{ 0x01800005, 0x20002d28, 0x02b19040, 0xffffffff },
{ 0x02000005, 0x20003e2c, 0x00009030, 0x00010001 },
{ 0x00000001, 0x25e20129, 0x00000036, 0x00000000 },
{ 0x000b0220, 0x34001c00, 0x02001400, 0x0000013a },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000138 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c0, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0007000f },
{ 0x00010001, 0x22000060, 0x02000000, 0x0248e702 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0248e602 },
{ 0x02600031, 0x20c00021, 0x408d07e0, 0x00000200 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c8, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005ca, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0001000f },
{ 0x00010001, 0x22000060, 0x02000000, 0x02186704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02186604 },
{ 0x02600031, 0x20800021, 0x408d07e0, 0x00000200 },
{ 0x00800001, 0x2380012d, 0x008900c0, 0x00000000 },
{ 0x00800001, 0x23a0012d, 0x00890100, 0x00000000 },
{ 0x00800001, 0x23c0012d, 0x008900c8, 0x00000000 },
{ 0x00800001, 0x23e0012d, 0x00890108, 0x00000000 },
{ 0x00600401, 0x20c001a9, 0x00ab0380, 0x00000000 },
{ 0x00600801, 0x20d001a9, 0x00ab0382, 0x00000000 },
{ 0x00600401, 0x20e001a9, 0x00ab0384, 0x00000000 },
{ 0x00600801, 0x20f001a9, 0x00ab0386, 0x00000000 },
{ 0x00600401, 0x210001a9, 0x00ab03c0, 0x00000000 },
{ 0x00600801, 0x211001a9, 0x00ab03c2, 0x00000000 },
{ 0x00600401, 0x212001a9, 0x00ab03c4, 0x00000000 },
{ 0x00600801, 0x213001a9, 0x00ab03c6, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00400040 },
{ 0x00800008, 0x2340352d, 0x00009050, 0x008d0220 },
{ 0x00800008, 0x2360352d, 0x00009052, 0x008d0220 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x004590c0, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990a0, 0x00000000 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffc0c },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00410041 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c100c1 },
{ 0x00200401, 0x25d0022d, 0x004590c8, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990b0, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffbfe },
{ 0x00800008, 0x2340352d, 0x00009042, 0x008d0220 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e000e0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00200401, 0x25d0022d, 0x004590c4, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990a4, 0x00000000 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x00000001, 0x260201e8, 0x00000000, 0x00000000 },
{ 0x00000401, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000801, 0x25d80109, 0x00000600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffbe8 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e100e1 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01010101 },
{ 0x00200401, 0x25d0022d, 0x004590cc, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990b4, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffbda },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c4, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c6, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x00070003 },
{ 0x00600401, 0x2340012d, 0x00890040, 0x00000000 },
{ 0x00600801, 0x2350012d, 0x00890048, 0x00000000 },
{ 0x00600001, 0x204001aa, 0x00270340, 0x00000000 },
{ 0x00600001, 0x205001aa, 0x00270350, 0x00000000 },
{ 0x00010001, 0x22000060, 0x02000000, 0x04082704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x04082604 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x00800001, 0x2380012d, 0x008900c0, 0x00000000 },
{ 0x00800001, 0x23a0012d, 0x00890100, 0x00000000 },
{ 0x00800001, 0x23c0012d, 0x008900c8, 0x00000000 },
{ 0x00800001, 0x23e0012d, 0x00890108, 0x00000000 },
{ 0x00600401, 0x20c001a9, 0x00ab0380, 0x00000000 },
{ 0x00600801, 0x20d001a9, 0x00ab0382, 0x00000000 },
{ 0x00600401, 0x20e001a9, 0x00ab0384, 0x00000000 },
{ 0x00600801, 0x20f001a9, 0x00ab0386, 0x00000000 },
{ 0x00600401, 0x210001a9, 0x00ab03c0, 0x00000000 },
{ 0x00600801, 0x211001a9, 0x00ab03c2, 0x00000000 },
{ 0x00600401, 0x212001a9, 0x00ab03c4, 0x00000000 },
{ 0x00600801, 0x213001a9, 0x00ab03c6, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00800080 },
{ 0x00800008, 0x2340352d, 0x00009054, 0x008d0220 },
{ 0x00800008, 0x2360352d, 0x00009056, 0x008d0220 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00800080 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x004590c2, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990a8, 0x00000000 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffb92 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00810081 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c100c1 },
{ 0x00200401, 0x25d0022d, 0x004590ca, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990b8, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffb84 },
{ 0x00800008, 0x2340352d, 0x00009048, 0x008d0220 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e000e0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00200401, 0x25d0022d, 0x004590c4, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990ac, 0x00000000 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x00000001, 0x260201e8, 0x00000000, 0x00000000 },
{ 0x00000401, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000801, 0x25d80109, 0x00000600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffb6e },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e100e1 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01010101 },
{ 0x00200401, 0x25d0022d, 0x004590cc, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990bc, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffb60 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c0, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0007000f },
{ 0x00802001, 0x20400022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0100, 0x00000000 },
{ 0x00010001, 0x22000060, 0x02000000, 0x0a082704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0a082604 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c8, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005ca, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0001000f },
{ 0x00600001, 0x20400022, 0x008d0080, 0x00000000 },
{ 0x00010001, 0x22000060, 0x02000000, 0x0418a704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0418a604 },
{ 0x01600031, 0x26400021, 0x508d07e0, 0x00000200 },
{ 0x00600401, 0x2340012d, 0x008500cc, 0x00000000 },
{ 0x00600801, 0x2350012d, 0x0085010c, 0x00000000 },
{ 0x00800001, 0x236001ad, 0x002e0340, 0x00000000 },
{ 0x00600001, 0x202000a2, 0x008d0360, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x04080020 },
{ 0x00600001, 0x26400021, 0x008d0640, 0x00000000 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000440, 0x27e03da1, 0x000005c0, 0x000c000c },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x00070003 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x02186004 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00080008 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x00010008 },
{ 0x00010001, 0x22000060, 0x02000000, 0x02186704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02186604 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x02600031, 0x23400025, 0x408d07e0, 0x00000200 },
{ 0x00800001, 0x236001ad, 0x002e0340, 0x00000000 },
{ 0x00600001, 0x202000a2, 0x008d0360, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x04080020 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00a02001, 0x20400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x206601ed, 0x00000000, 0x00010001 },
{ 0x00000009, 0x20663dad, 0x00000066, 0x000a000a },
{ 0x00000001, 0x22600169, 0x00000000, 0x00010001 },
{ 0x00000008, 0x22403dad, 0x00000026, 0x00010001 },
{ 0x00000041, 0x224235ad, 0x00000020, 0x00000022 },
{ 0x00600001, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x203c0022, 0x00000018, 0x00000000 },
{ 0x00000001, 0x203f01f2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c00e2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c010a, 0x00000e00, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0020, 0x00000000 },
{ 0x00400001, 0x205401ed, 0x00000000, 0x00000000 },
{ 0x00200040, 0x20583dad, 0x00450020, 0xffffffff },
{ 0x00000001, 0x22000060, 0x00000000, 0x06080000 },
{ 0x00600001, 0x26000021, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x26140061, 0x00000000, 0x00c00400 },
{ 0x00000001, 0x26100169, 0x00000000, 0x12121212 },
{ 0x07600031, 0x26201c21, 0x308d0600, 0x02000000 },
{ 0x00000001, 0x22a00169, 0x00000000, 0x01400140 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00200020 },
{ 0x00000001, 0x203801e2, 0x00000000, 0x00010001 },
{ 0x00800001, 0x204001ae, 0x00b10020, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x000002a0, 0x00010001 },
{ 0x00800031, 0x20000128, 0x608d07e0, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x22a00169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x22600169, 0x00000000, 0x00020002 },
{ 0x00200401, 0x208000e5, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x208800e5, 0x00000000, 0xffffffc6 },
{ 0x00000801, 0x208c00e5, 0x00000000, 0xffffffca },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00100010 },
{ 0x00000001, 0x206001ed, 0x00000000, 0x00020002 },
{ 0x00000001, 0x206201ad, 0x0000005a, 0x00000000 },
{ 0x00000001, 0x20a001ed, 0x00000000, 0x00000000 },
{ 0x00200001, 0x228001ed, 0x00000000, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21000061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21400061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21800061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00ff00ff },
{ 0x00000041, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x05000010, 0x200035ac, 0x02000280, 0x00000240 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x01000010, 0x20002d28, 0x000090c2, 0x00000000 },
{ 0x03000010, 0x200035ac, 0x02000054, 0x00000058 },
{ 0x00000041, 0x22a03dad, 0x00000056, 0x00040004 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffff4 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00200001, 0xb0c00229, 0x00450054, 0x00000000 },
{ 0x00200040, 0x22803dad, 0x00450280, 0x00010001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x20380122, 0x00000260, 0x00000000 },
{ 0x00800001, 0x204001ae, 0x00b10040, 0x00000000 },
{ 0x00000008, 0x20003d2a, 0x000002a0, 0x00010001 },
{ 0x00000040, 0x22602d29, 0x00000260, 0x00020002 },
{ 0x00800031, 0x20000008, 0x608d0000, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x04200010, 0x200035ac, 0x00450054, 0x00450060 },
{ 0x00010040, 0x20a03dad, 0x02000056, 0x00010001 },
{ 0x05200010, 0x200035ac, 0x02450280, 0x00450240 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x00040004 },
{ 0x00000048, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x00200040, 0x205455ad, 0x00450054, 0x00450034 },
{ 0x02000010, 0x20003d8c, 0x00000600, 0x00010001 },
{ 0x00000041, 0x220e3d8c, 0x00000602, 0x00040004 },
{ 0x00010041, 0x22083dac, 0x000000a0, 0x00040004 },
{ 0x00010401, 0x205601ad, 0x000000a0, 0x00000000 },
{ 0x00010840, 0x20543d2d, 0x000090c0, 0x00010001 },
{ 0x00000220, 0x34001400, 0x00001400, 0x00009c80 },
{ 0x01000010, 0x20003dac, 0x02000280, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000006 },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffff6 },
{ 0x05000010, 0x200035ac, 0x00000240, 0x00000026 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffffc },
{ 0x07600031, 0x20001c20, 0x30000000, 0x02000001 },
{ 0x01600031, 0x20001c24, 0x708d0000, 0x82000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00400441, 0x45c03dad, 0x00000034, 0x00100010 },
{ 0x00400841, 0x45c23dad, 0x00000036, 0x00200020 },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00000001, 0x25e20129, 0x00000036, 0x00000000 },
{ 0x00000041, 0x25e435a1, 0x00000020, 0x00000036 },
{ 0x00000040, 0x25e43421, 0x000005e4, 0x00000034 },
{ 0x00000041, 0x25e42c21, 0x000005e4, 0x00800080 },
{ 0x00000040, 0x25c43dad, 0x000005c4, 0xfffcfffc },
{ 0x00000040, 0x25ca3dad, 0x000005ca, 0xfffcfffc },
{ 0x00000005, 0x202a3dad, 0x0000002a, 0xfffdfffd },
{ 0x02000005, 0x20002d2c, 0x0200002a, 0x00020002 },
{ 0x00000001, 0x27e80021, 0x000005e4, 0x00000000 },
{ 0x00010040, 0x27e83c21, 0x020007e8, 0x00400040 },
{ 0x01600031, 0x22401c21, 0x408d07e0, 0x02885800 },
{ 0x00000001, 0x220801ec, 0x00000000, 0x02400240 },
{ 0x01800005, 0x20002d28, 0x02b19040, 0xffffffff },
{ 0x02000005, 0x20003e2c, 0x00009030, 0x00010001 },
{ 0x00000005, 0x25ec2e29, 0x00009002, 0x000a000a },
{ 0x00000005, 0x25ea2e29, 0x00009002, 0x00060006 },
{ 0x000b0220, 0x34001c00, 0x02001400, 0x00000252 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000250 },
{ 0x01000010, 0x20003d2c, 0x000005ec, 0x00080008 },
{ 0x00000005, 0x25e03d8d, 0x00000600, 0x00010001 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a5, 0x004505c0, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f000f },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0288a001 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00100010 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x0288e701 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0288e601 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x20c00021, 0x408d07e0, 0x00000200 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c4, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f0003 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x02286003 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00100010 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x02286703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02286603 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x02600031, 0x23400025, 0x408d07e0, 0x00000200 },
{ 0x00800401, 0x23800231, 0x00a900c0, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00a90100, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00a90140, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00a90180, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00a900c4, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00a90104, 0x00000000 },
{ 0x00800401, 0x23e00231, 0x00a90144, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00a90184, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00a900c8, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00a90108, 0x00000000 },
{ 0x00800401, 0x24200231, 0x00a90148, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00a90188, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x20c00231, 0x00cf0380, 0x00000000 },
{ 0x00800801, 0x20d00231, 0x00cf0381, 0x00000000 },
{ 0x00800401, 0x20e00231, 0x00cf0382, 0x00000000 },
{ 0x00800801, 0x20f00231, 0x00cf0383, 0x00000000 },
{ 0x00800401, 0x21000231, 0x00cf03c0, 0x00000000 },
{ 0x00800801, 0x21100231, 0x00cf03c1, 0x00000000 },
{ 0x00800401, 0x21200231, 0x00cf03c2, 0x00000000 },
{ 0x00800801, 0x21300231, 0x00cf03c3, 0x00000000 },
{ 0x00800401, 0x21400231, 0x00cf0400, 0x00000000 },
{ 0x00800801, 0x21500231, 0x00cf0401, 0x00000000 },
{ 0x00800401, 0x21600231, 0x00cf0402, 0x00000000 },
{ 0x00800801, 0x21700231, 0x00cf0403, 0x00000000 },
{ 0x00800401, 0x21800231, 0x00cf0440, 0x00000000 },
{ 0x00800801, 0x21900231, 0x00cf0441, 0x00000000 },
{ 0x00800401, 0x21a00231, 0x00cf0442, 0x00000000 },
{ 0x00800801, 0x21b00231, 0x00cf0443, 0x00000000 },
{ 0x00800401, 0x20400231, 0x00cf0340, 0x00000000 },
{ 0x00800801, 0x20500231, 0x00cf0341, 0x00000000 },
{ 0x00800401, 0x20600231, 0x00cf0342, 0x00000000 },
{ 0x00800801, 0x20700231, 0x00cf0343, 0x00000000 },
{ 0x01600010, 0x20003d2c, 0x000005ea, 0x00040004 },
{ 0x01600010, 0x20003d2c, 0x020005ea, 0x00020002 },
{ 0x00800001, 0x21c00229, 0x00009080, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00009081, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00289060, 0x00000000 },
{ 0x00610401, 0x41c00229, 0x00009080, 0x00000000 },
{ 0x00610801, 0x41c20229, 0x00009090, 0x00000000 },
{ 0x00610401, 0x41e00229, 0x00009081, 0x00000000 },
{ 0x00610801, 0x41e20229, 0x00009091, 0x00000000 },
{ 0x00610401, 0x42000229, 0x00249060, 0x00000000 },
{ 0x00610801, 0x42020229, 0x00249098, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00400040 },
{ 0x00610401, 0x21c00229, 0x02009080, 0x00000000 },
{ 0x00610801, 0x21d00229, 0x02009090, 0x00000000 },
{ 0x00610401, 0x21e00229, 0x02009081, 0x00000000 },
{ 0x00610801, 0x21f00229, 0x02009091, 0x00000000 },
{ 0x00610401, 0x22000229, 0x02249060, 0x00000000 },
{ 0x00610801, 0x22100229, 0x02249098, 0x00000000 },
{ 0x00800008, 0x25a03d29, 0x008d01c0, 0x00020002 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200001, 0x25d80129, 0x00459050, 0x00000000 },
{ 0x00800040, 0x25a03d29, 0x00b105a0, 0x00020002 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001b4 },
{ 0x00800008, 0x25a03e29, 0x00009084, 0x00020002 },
{ 0x00800001, 0x21c00229, 0x00009084, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00009085, 0x00000000 },
{ 0x00000001, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00800040, 0x25a03d29, 0x00b105a0, 0x00020002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00c000c0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00000001, 0x25d80129, 0x00009040, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00289064, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000019c },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00100010 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01000100 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01400140 },
{ 0x00000001, 0x25d80129, 0x00009042, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00289068, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000018e },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01400140 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01800180 },
{ 0x00000001, 0x25d80129, 0x00009044, 0x00000000 },
{ 0x00800001, 0x22000229, 0x0028906c, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000180 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c4, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f0003 },
{ 0x00800401, 0x23400231, 0x00a90040, 0x00000000 },
{ 0x00800801, 0x23500231, 0x00a90044, 0x00000000 },
{ 0x00800401, 0x23600231, 0x00a90048, 0x00000000 },
{ 0x00800801, 0x23700231, 0x00a9004c, 0x00000000 },
{ 0x00800001, 0x20400232, 0x002b0340, 0x00000000 },
{ 0x00800001, 0x20500232, 0x002b0350, 0x00000000 },
{ 0x00800001, 0x20600232, 0x002b0360, 0x00000000 },
{ 0x00800001, 0x20700232, 0x002b0370, 0x00000000 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x06082003 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00100010 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x06082703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x06082603 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c8, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0003000f },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00000001, 0x22000060, 0x00000000, 0x02286003 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00100010 },
{ 0x01000005, 0x20003dac, 0x020005e0, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000006 },
{ 0x00000440, 0x27e43ca5, 0x000007e4, 0xfffcfffc },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0007000f },
{ 0x00000040, 0x22000c00, 0x00000200, 0x00200000 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000c },
{ 0x0000000c, 0x27e43da5, 0x000005c2, 0x00010001 },
{ 0x00010001, 0x22000060, 0x02000000, 0x02286703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02286603 },
{ 0x00000040, 0x27e43ca5, 0x000007e4, 0xfffcfffc },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x20400021, 0x408d07e0, 0x00000200 },
{ 0x00800401, 0x23800231, 0x00a900c0, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00a90100, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00a90140, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00a90180, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00a900c4, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00a90104, 0x00000000 },
{ 0x00800401, 0x23e00231, 0x00a90144, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00a90184, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00a900c8, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00a90108, 0x00000000 },
{ 0x00800401, 0x24200231, 0x00a90148, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00a90188, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x20c00231, 0x00cf0380, 0x00000000 },
{ 0x00800801, 0x20d00231, 0x00cf0381, 0x00000000 },
{ 0x00800401, 0x20e00231, 0x00cf0382, 0x00000000 },
{ 0x00800801, 0x20f00231, 0x00cf0383, 0x00000000 },
{ 0x00800401, 0x21000231, 0x00cf03c0, 0x00000000 },
{ 0x00800801, 0x21100231, 0x00cf03c1, 0x00000000 },
{ 0x00800401, 0x21200231, 0x00cf03c2, 0x00000000 },
{ 0x00800801, 0x21300231, 0x00cf03c3, 0x00000000 },
{ 0x00800401, 0x21400231, 0x00cf0400, 0x00000000 },
{ 0x00800801, 0x21500231, 0x00cf0401, 0x00000000 },
{ 0x00800401, 0x21600231, 0x00cf0402, 0x00000000 },
{ 0x00800801, 0x21700231, 0x00cf0403, 0x00000000 },
{ 0x00800401, 0x21800231, 0x00cf0440, 0x00000000 },
{ 0x00800801, 0x21900231, 0x00cf0441, 0x00000000 },
{ 0x00800401, 0x21a00231, 0x00cf0442, 0x00000000 },
{ 0x00800801, 0x21b00231, 0x00cf0443, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00800080 },
{ 0x00000001, 0x260201ac, 0x000005e0, 0x00000000 },
{ 0x00800008, 0x25a03e29, 0x00009082, 0x00020002 },
{ 0x00200001, 0x25d80129, 0x00459054, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00009082, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00009083, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00289070, 0x00000000 },
{ 0x00800040, 0x25a03d29, 0x00b105a0, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000050 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000a },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000d4 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000044 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x05000500 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x05400540 },
{ 0x00800001, 0x25000129, 0x00ad0040, 0x00000000 },
{ 0x00800001, 0x25200129, 0x00ad0080, 0x00000000 },
{ 0x00800001, 0x25400129, 0x00ad00c0, 0x00000000 },
{ 0x00800001, 0x25600129, 0x00ad0100, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000c2 },
{ 0x00600001, 0x20600129, 0x008d0510, 0x00000000 },
{ 0x00600001, 0x20800129, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x20a00129, 0x008d0530, 0x00000000 },
{ 0x00600001, 0x20c00129, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x20e00129, 0x008d0550, 0x00000000 },
{ 0x00600001, 0x21000129, 0x008d0560, 0x00000000 },
{ 0x00800008, 0x25a03e29, 0x00009092, 0x00020002 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x05000500 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x05400540 },
{ 0x00800001, 0x25000129, 0x00ad0050, 0x00000000 },
{ 0x00800001, 0x25200129, 0x00ad0090, 0x00000000 },
{ 0x00800001, 0x25400129, 0x00ad00d0, 0x00000000 },
{ 0x00800001, 0x25600129, 0x00ad0110, 0x00000000 },
{ 0x00200001, 0x25d80129, 0x0045905c, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00009092, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00009093, 0x00000000 },
{ 0x00800001, 0x22000229, 0x0028909c, 0x00000000 },
{ 0x00800040, 0x25a03d29, 0x00b105a0, 0x00020002 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000009a },
{ 0x00600001, 0x20700129, 0x008d0510, 0x00000000 },
{ 0x00600001, 0x20900129, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x20b00129, 0x008d0530, 0x00000000 },
{ 0x00600001, 0x20d00129, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x20f00129, 0x008d0550, 0x00000000 },
{ 0x00600001, 0x21100129, 0x008d0560, 0x00000000 },
{ 0x00800008, 0x25a03e29, 0x00009084, 0x00020002 },
{ 0x00800001, 0x21c00229, 0x00009084, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00009085, 0x00000000 },
{ 0x00000001, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00800040, 0x25a03d29, 0x00b105a0, 0x00020002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00c000c0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00000001, 0x25d80129, 0x00009046, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00289074, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000076 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00100010 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01000100 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01400140 },
{ 0x00000001, 0x25d80129, 0x00009048, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00289078, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000068 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01400140 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01800180 },
{ 0x00000001, 0x25d80129, 0x0000904a, 0x00000000 },
{ 0x00800001, 0x22000229, 0x0028907c, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000005a },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c0, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f000f },
{ 0x00802001, 0x20400022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0100, 0x00000000 },
{ 0x00802001, 0x20c00022, 0x008d0140, 0x00000000 },
{ 0x00802001, 0x21000022, 0x008d0180, 0x00000000 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x12082003 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00100010 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x12082703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x12082603 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x01800005, 0x20003dac, 0x020005e0, 0x00010001 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c8, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0003000f },
{ 0x00812001, 0x20400022, 0x028d0040, 0x00000000 },
{ 0x00912001, 0x20400022, 0x028d0080, 0x00000000 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0618a003 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00100010 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000c },
{ 0x0000000c, 0x27e43da5, 0x000005c2, 0x00010001 },
{ 0x00010001, 0x22000060, 0x02000000, 0x0618a703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0618a603 },
{ 0x00000040, 0x27e43ca5, 0x000007e4, 0xfffcfffc },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x26400021, 0x508d07e0, 0x00000200 },
{ 0x01000005, 0x20003dac, 0x0000002a, 0x00020002 },
{ 0x00000006, 0x202a3dad, 0x0000002a, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffd94 },
{ 0x00600001, 0x26400021, 0x008d0640, 0x00000000 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00800040, 0x2400462d, 0x00b19c00, 0x00b1d830 },
{ 0x00800040, 0x2340462d, 0x00b19820, 0x00b1d830 },
{ 0x00800040, 0x2360462d, 0x00b19c10, 0x00b1dc00 },
{ 0x05810010, 0x200025ac, 0x008d2400, 0x008d01c0 },
{ 0x05810010, 0x200025ac, 0x008d2340, 0x008d01e0 },
{ 0x05810010, 0x200025ac, 0x008d2360, 0x008d01e0 },
{ 0x00818022, 0x34001c00, 0x00001400, 0x000000c8 },
{ 0x00800040, 0x2440462d, 0x00b19810, 0x00b1d830 },
{ 0x00800040, 0x2460462d, 0x00b19c20, 0x00b1dc00 },
{ 0x00800201, 0x24a00129, 0x00b19820, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x02001400, 0x00000066 },
{ 0x05800010, 0x200025ac, 0x028d2400, 0x008d05a0 },
{ 0x00800040, 0x2520462d, 0x00b19830, 0x00b19820 },
{ 0x00800040, 0x2540462d, 0x00b19c00, 0x00b19c10 },
{ 0x00000201, 0x26000108, 0x00000602, 0x00000000 },
{ 0x05810010, 0x200025ac, 0x028d2440, 0x008d01e0 },
{ 0x05810010, 0x200025ac, 0x008d2460, 0x008d01e0 },
{ 0x00818022, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x00800040, 0x2560462d, 0x00b19810, 0x00b19800 },
{ 0x00800040, 0x238045ad, 0x008d0520, 0x00b19c00 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00040004 },
{ 0x00800040, 0x23a0458d, 0x00b10400, 0x00b19810 },
{ 0x00800048, 0x24003dac, 0x008d0560, 0x00020002 },
{ 0x80800008, 0x43c03d91, 0x00b10400, 0x00030003 },
{ 0x00800040, 0x24003dac, 0x00b103a0, 0xfffefffe },
{ 0x80800008, 0x43603d91, 0x00b10400, 0x00020002 },
{ 0x00800040, 0x2400362c, 0x00b19c10, 0x00b10380 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00b103a0 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00030003 },
{ 0x00800001, 0xb8100231, 0x00ae03c0, 0x00000000 },
{ 0x00800001, 0xb8200231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0xb8300231, 0x00ae0340, 0x00000000 },
{ 0x00808024, 0x34001c00, 0x00001400, 0x0001000e },
{ 0x00800040, 0x2400362c, 0x00b19820, 0x008d0520 },
{ 0x00800040, 0x2400458c, 0x00b10400, 0x00b19c10 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00020002 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00020002 },
{ 0x00800001, 0xb8300231, 0x00ae0340, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x00800040, 0x2580462d, 0x00b19c20, 0x00b19c30 },
{ 0x00800040, 0x238045ad, 0x008d0540, 0x008d04b0 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00040004 },
{ 0x00800040, 0x23a0458d, 0x00b10400, 0x00b19c20 },
{ 0x00800048, 0x24003dac, 0x008d0580, 0x00020002 },
{ 0x80800008, 0x43c03d91, 0x00b10400, 0x00030003 },
{ 0x00800040, 0x24003dac, 0x00b103a0, 0xfffefffe },
{ 0x80800008, 0x43603d91, 0x00b10400, 0x00020002 },
{ 0x00800040, 0x2400362c, 0x008d04a0, 0x00b10380 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00b103a0 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00030003 },
{ 0x00800001, 0xbc200231, 0x00ae03c0, 0x00000000 },
{ 0x00800001, 0xbc100231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0xbc000231, 0x00ae0340, 0x00000000 },
{ 0x00808024, 0x34001c00, 0x00001400, 0x0001000e },
{ 0x00800040, 0x2400362c, 0x008d04a0, 0x008d0540 },
{ 0x00800040, 0x2400458c, 0x00b10400, 0x00b19c10 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00020002 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00020002 },
{ 0x00800001, 0xbc000231, 0x00ae0340, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00808024, 0x34001c00, 0x00001400, 0x0001005a },
{ 0x00800001, 0x23e0012d, 0x008d0200, 0x00000000 },
{ 0x05800010, 0x200025ac, 0x008d2440, 0x008d01e0 },
{ 0x05800010, 0x200025ac, 0x028d2460, 0x008d01e0 },
{ 0x00800040, 0x24003e2c, 0x00b19820, 0x00040004 },
{ 0x00800048, 0x24003dac, 0x008d0400, 0x00040004 },
{ 0x00800040, 0x2400458c, 0x00b10400, 0x00b1dc10 },
{ 0x00800008, 0x23403d8d, 0x00b10400, 0x00030003 },
{ 0x00810040, 0x23e03dad, 0x008d03e0, 0x00010001 },
{ 0x00200201, 0x25ec018d, 0x00450600, 0x00000000 },
{ 0x00810040, 0x23e03dad, 0x028d03e0, 0x00010001 },
{ 0x03800010, 0x200035ac, 0x008d0340, 0x008d03e0 },
{ 0x05800010, 0x200035ac, 0x028d0340, 0x008d43e0 },
{ 0x00800042, 0x24c0462d, 0x00b19830, 0x00b19c00 },
{ 0x00810001, 0x234001ad, 0x008d03e0, 0x00000000 },
{ 0x00810001, 0x234001ad, 0x028d43e0, 0x00000000 },
{ 0x00200201, 0x260001ac, 0x004505ec, 0x00000000 },
{ 0x80800040, 0x43603631, 0x00b19830, 0x008d0340 },
{ 0x80800040, 0x43403631, 0x00b19c00, 0x008d4340 },
{ 0x00800001, 0xb8300231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0xbc000231, 0x00ae0340, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00800040, 0x2400362c, 0x00b19810, 0x008d04c0 },
{ 0x00800048, 0x24003e2c, 0x00b19820, 0xfffefffe },
{ 0x00800008, 0x23603d8d, 0x00b10400, 0x00010001 },
{ 0x03800010, 0x200025ac, 0x008d0360, 0x008d0200 },
{ 0x05800010, 0x200025ac, 0x028d0360, 0x008d4200 },
{ 0x00810001, 0x2360012d, 0x008d0200, 0x00000000 },
{ 0x00810001, 0x2360012d, 0x028d4200, 0x00000000 },
{ 0x00000201, 0x260201ac, 0x000005ee, 0x00000000 },
{ 0x80800040, 0x43603631, 0x00b19820, 0x008d0360 },
{ 0x00800001, 0xb8200231, 0x00ae0360, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00800040, 0x2400362c, 0x00b19c20, 0x008d04c0 },
{ 0x00800048, 0x24003e2c, 0x00b19c10, 0xfffefffe },
{ 0x00800008, 0x23603d8d, 0x00b10400, 0x00010001 },
{ 0x03800010, 0x200025ac, 0x008d0360, 0x008d0200 },
{ 0x05800010, 0x200025ac, 0x028d0360, 0x008d4200 },
{ 0x00810001, 0x2360012d, 0x008d0200, 0x00000000 },
{ 0x00810001, 0x2360012d, 0x028d4200, 0x00000000 },
{ 0x80800040, 0x43603631, 0x00b19c10, 0x008d0360 },
{ 0x00800001, 0xbc100231, 0x00ae0360, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007c0, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00a02001, 0x20400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x206601ed, 0x00000000, 0x00010001 },
{ 0x00000009, 0x20663dad, 0x00000066, 0x000a000a },
{ 0x00000001, 0x206801ed, 0x00000000, 0x01400140 },
{ 0x00000001, 0x22600169, 0x00000000, 0x00030003 },
{ 0x00000008, 0x22403dad, 0x00000026, 0x00010001 },
{ 0x00000041, 0x224235ad, 0x00000020, 0x00000022 },
{ 0x00600001, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x203c0022, 0x00000018, 0x00000000 },
{ 0x00000001, 0x203f01f2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c00e2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c010a, 0x00000e00, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0020, 0x00000000 },
{ 0x00400001, 0x205401ed, 0x00000000, 0x00000000 },
{ 0x00200040, 0x20583dad, 0x00450020, 0xffffffff },
{ 0x00000001, 0x22000060, 0x00000000, 0x06080000 },
{ 0x00600001, 0x26000021, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x26140061, 0x00000000, 0x00c00400 },
{ 0x00000001, 0x26100169, 0x00000000, 0x12121212 },
{ 0x07600031, 0x26201c21, 0x308d0600, 0x02000000 },
{ 0x00200401, 0x208000e5, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x208800e5, 0x00000000, 0xffffffc4 },
{ 0x00000801, 0x208c00e5, 0x00000000, 0xffffffc8 },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00100010 },
{ 0x00000001, 0x206001ed, 0x00000000, 0x00020002 },
{ 0x00000001, 0x206201ad, 0x0000005a, 0x00000000 },
{ 0x00000001, 0x20a001ed, 0x00000000, 0x00000000 },
{ 0x00200001, 0x228001ed, 0x00000000, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21000061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21400061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21800061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00ff00ff },
{ 0x00000041, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x05000010, 0x200035ac, 0x02000280, 0x00000240 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x01000010, 0x20002d28, 0x000090c2, 0x00000000 },
{ 0x03000010, 0x200035ac, 0x02000054, 0x00000058 },
{ 0x00800001, 0x240001ac, 0x00000068, 0x00000000 },
{ 0x00000048, 0x22a03dad, 0x00000056, 0x00040004 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffff2 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00200001, 0xb0c00229, 0x00450054, 0x00000000 },
{ 0x00200040, 0x22803dad, 0x00450280, 0x00010001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x20380122, 0x00000260, 0x00000000 },
{ 0x00800001, 0x204001ae, 0x00b10040, 0x00000000 },
{ 0x00000008, 0x20003d2a, 0x000002a0, 0x00010001 },
{ 0x00000040, 0x22602d29, 0x00000260, 0x00020002 },
{ 0x00800031, 0x20000008, 0x608d0000, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x04200010, 0x200035ac, 0x00450054, 0x00450060 },
{ 0x00010040, 0x20a03dad, 0x02000056, 0x00010001 },
{ 0x05200010, 0x200035ac, 0x02450280, 0x00450240 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x00040004 },
{ 0x00000048, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x00200040, 0x205455ad, 0x00450054, 0x00450034 },
{ 0x02000010, 0x20003d8c, 0x00000600, 0x00010001 },
{ 0x00000041, 0x220e3d8c, 0x00000602, 0x00040004 },
{ 0x00010041, 0x22083dac, 0x000000a0, 0x00040004 },
{ 0x00010401, 0x205601ad, 0x000000a0, 0x00000000 },
{ 0x00010840, 0x20543d2d, 0x000090c0, 0x00010001 },
{ 0x00000220, 0x34001400, 0x00001400, 0x00009c80 },
{ 0x01000010, 0x20003dac, 0x02000280, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00600401, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x26140061, 0x00000000, 0x01800000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000801, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00000040, 0x2078252d, 0x00000026, 0x00004280 },
{ 0x00400001, 0x26000231, 0x00000078, 0x00000000 },
{ 0x00600031, 0x26201c21, 0x308d0600, 0x02000002 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffffe8 },
{ 0x07600031, 0x20001c20, 0x30000000, 0x02000001 },
{ 0x01600031, 0x20001c24, 0x708d0000, 0x82000012 },
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00400441, 0x45c03dad, 0x00000034, 0x00100010 },
{ 0x00400841, 0x45c23dad, 0x00000036, 0x00200020 },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00000001, 0x25e20129, 0x00000036, 0x00000000 },
{ 0x00000041, 0x25e435a1, 0x00000020, 0x00000036 },
{ 0x00000040, 0x25e43421, 0x000005e4, 0x00000034 },
{ 0x00000041, 0x25e42c21, 0x000005e4, 0x00800080 },
{ 0x00000040, 0x25c43dad, 0x000005c4, 0xfffcfffc },
{ 0x00000040, 0x25ca3dad, 0x000005ca, 0xfffcfffc },
{ 0x00000005, 0x202a3dad, 0x0000002a, 0xfffdfffd },
{ 0x00800001, 0x2220022d, 0x000d002c, 0x00000000 },
{ 0x00600040, 0x22303dad, 0x008d0230, 0x00080008 },
{ 0x02000005, 0x20002d2c, 0x0200002a, 0x00020002 },
{ 0x00000001, 0x27e80021, 0x000005e4, 0x00000000 },
{ 0x00010040, 0x27e83c21, 0x020007e8, 0x00400040 },
{ 0x01600031, 0x22401c21, 0x408d07e0, 0x02885800 },
{ 0x00000001, 0x220801ec, 0x00000000, 0x02400240 },
{ 0x01800005, 0x20002d28, 0x02b19040, 0xffffffff },
{ 0x02000005, 0x20003e2c, 0x00009030, 0x00010001 },
{ 0x00000005, 0x25ec2e29, 0x00009002, 0x000a000a },
{ 0x00000005, 0x25ea2e29, 0x00009002, 0x00060006 },
{ 0x000b0220, 0x34001c00, 0x02001400, 0x00000252 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000250 },
{ 0x01000010, 0x20003d2c, 0x000005ec, 0x00080008 },
{ 0x00000005, 0x25e03d8d, 0x00000600, 0x00010001 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c0, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0007000f },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0248a002 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00080008 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x0248e702 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0248e602 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x02600031, 0x20c00021, 0x408d07e0, 0x00000200 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c4, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c6, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x00070003 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x02186004 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00080008 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x02186704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02186604 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x02600031, 0x23400025, 0x408d07e0, 0x00000200 },
{ 0x00800001, 0x2380012d, 0x008900c0, 0x00000000 },
{ 0x00800001, 0x23a0012d, 0x00890100, 0x00000000 },
{ 0x00800001, 0x23c0012d, 0x008900c8, 0x00000000 },
{ 0x00800001, 0x23e0012d, 0x00890108, 0x00000000 },
{ 0x00600401, 0x20c001a9, 0x00ab0380, 0x00000000 },
{ 0x00600801, 0x20d001a9, 0x00ab0382, 0x00000000 },
{ 0x00600401, 0x20e001a9, 0x00ab0384, 0x00000000 },
{ 0x00600801, 0x20f001a9, 0x00ab0386, 0x00000000 },
{ 0x00600401, 0x210001a9, 0x00ab03c0, 0x00000000 },
{ 0x00600801, 0x211001a9, 0x00ab03c2, 0x00000000 },
{ 0x00600401, 0x212001a9, 0x00ab03c4, 0x00000000 },
{ 0x00600801, 0x213001a9, 0x00ab03c6, 0x00000000 },
{ 0x00800001, 0x204001a9, 0x002e0340, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00400040 },
{ 0x01000010, 0x20003d2c, 0x020005ea, 0x00040004 },
{ 0x00800008, 0x2340352d, 0x00009050, 0x008d0220 },
{ 0x00800008, 0x2360352d, 0x00009052, 0x008d0220 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000006a },
{ 0x01000010, 0x20003d2c, 0x000005ea, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x02600005, 0x20003dac, 0x00650340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02650360, 0x00010001 },
{ 0x00400401, 0x41c00229, 0x000090c0, 0x00000000 },
{ 0x00400801, 0x41c20229, 0x000090e0, 0x00000000 },
{ 0x00400401, 0x41e00229, 0x000090c1, 0x00000000 },
{ 0x00400801, 0x41e20229, 0x000090e1, 0x00000000 },
{ 0x00400401, 0x42000229, 0x006990a0, 0x00000000 },
{ 0x00400801, 0x42020229, 0x006990e8, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000012 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00400401, 0x21c00229, 0x000090c0, 0x00000000 },
{ 0x00400801, 0x21c80229, 0x000090e0, 0x00000000 },
{ 0x00400401, 0x21e00229, 0x000090c1, 0x00000000 },
{ 0x00400801, 0x21e80229, 0x000090e1, 0x00000000 },
{ 0x00400401, 0x22000229, 0x006990a0, 0x00000000 },
{ 0x00400801, 0x22080229, 0x006990e8, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00600001, 0x21c00229, 0x000090c0, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090c1, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490a0, 0x00000000 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001c8 },
{ 0x01400010, 0x20003d2c, 0x000005ea, 0x00040004 },
{ 0x01400010, 0x20003d2c, 0x020005ea, 0x00020002 },
{ 0x00600001, 0x21c00229, 0x000090c8, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090c9, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490b0, 0x00000000 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00410041 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c100c1 },
{ 0x00410401, 0x41c00229, 0x000090c8, 0x00000000 },
{ 0x00410801, 0x41c20229, 0x000090f0, 0x00000000 },
{ 0x00410401, 0x41e00229, 0x000090c9, 0x00000000 },
{ 0x00410801, 0x41e20229, 0x000090f1, 0x00000000 },
{ 0x00410401, 0x42000229, 0x006990b0, 0x00000000 },
{ 0x00410801, 0x42020229, 0x006990f8, 0x00000000 },
{ 0x00410401, 0x21c00229, 0x020090c8, 0x00000000 },
{ 0x00410801, 0x21c80229, 0x020090f0, 0x00000000 },
{ 0x00410401, 0x21e00229, 0x020090c9, 0x00000000 },
{ 0x00410801, 0x21e80229, 0x020090f1, 0x00000000 },
{ 0x00410401, 0x22000229, 0x026990b0, 0x00000000 },
{ 0x00410801, 0x22080229, 0x026990f8, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000019c },
{ 0x00800008, 0x2340352d, 0x00009042, 0x008d0220 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e000e0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00600001, 0x21c00229, 0x000090c4, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090c5, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490a4, 0x00000000 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x00000001, 0x260201e8, 0x00000000, 0x00000000 },
{ 0x00000401, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000801, 0x25d80109, 0x00000600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000184 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e100e1 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01010101 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00600001, 0x21c00229, 0x000090cc, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090cd, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490b4, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000174 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c4, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c6, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x00070003 },
{ 0x00600401, 0x2340012d, 0x00890040, 0x00000000 },
{ 0x00600801, 0x2350012d, 0x00890048, 0x00000000 },
{ 0x00600001, 0x204001aa, 0x00270340, 0x00000000 },
{ 0x00600001, 0x205001aa, 0x00270350, 0x00000000 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x04082004 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00080008 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x04082704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x04082604 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c8, 0x00000000 },
{ 0x00000c0c, 0x27e43da5, 0x000005ca, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0001000f },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00000001, 0x22000060, 0x00000000, 0x02186004 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00080008 },
{ 0x01000005, 0x20003dac, 0x020005e0, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000006 },
{ 0x00000440, 0x27e43ca5, 0x000007e4, 0xfffefffe },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0003000f },
{ 0x00000040, 0x22000c00, 0x00000200, 0x00100000 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000c },
{ 0x0000000c, 0x27e43da5, 0x000005c2, 0x00020002 },
{ 0x00010001, 0x22000060, 0x02000000, 0x02186704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02186604 },
{ 0x00000040, 0x27e43ca5, 0x000007e4, 0xfffefffe },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x02600031, 0x20400021, 0x408d07e0, 0x00000200 },
{ 0x00800001, 0x2380012d, 0x008900c0, 0x00000000 },
{ 0x00800001, 0x23a0012d, 0x00890100, 0x00000000 },
{ 0x00800001, 0x23c0012d, 0x008900c8, 0x00000000 },
{ 0x00800001, 0x23e0012d, 0x00890108, 0x00000000 },
{ 0x00600401, 0x20c001a9, 0x00ab0380, 0x00000000 },
{ 0x00600801, 0x20d001a9, 0x00ab0382, 0x00000000 },
{ 0x00600401, 0x20e001a9, 0x00ab0384, 0x00000000 },
{ 0x00600801, 0x20f001a9, 0x00ab0386, 0x00000000 },
{ 0x00600401, 0x210001a9, 0x00ab03c0, 0x00000000 },
{ 0x00600801, 0x211001a9, 0x00ab03c2, 0x00000000 },
{ 0x00600401, 0x212001a9, 0x00ab03c4, 0x00000000 },
{ 0x00600801, 0x213001a9, 0x00ab03c6, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00800080 },
{ 0x00000001, 0x260201ac, 0x000005e0, 0x00000000 },
{ 0x00800008, 0x2340352d, 0x00009054, 0x008d0220 },
{ 0x00800008, 0x2360352d, 0x00009056, 0x008d0220 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000026 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00600001, 0x21c00229, 0x000090c2, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090c3, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490a8, 0x00000000 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000f0 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00410041 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c100c1 },
{ 0x00600001, 0x21c00229, 0x000090ca, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090cb, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490b8, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000e0 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x05000500 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x05200520 },
{ 0x00800001, 0x25000129, 0x00ad0040, 0x00000000 },
{ 0x00800001, 0x25200129, 0x00ad00c0, 0x00000000 },
{ 0x00600001, 0x21c00229, 0x000090c2, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090c3, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490a8, 0x00000000 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000c6 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x05010501 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x05210521 },
{ 0x00600001, 0x21c00229, 0x000090ca, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090cb, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490b8, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000b6 },
{ 0x00800008, 0x2340352d, 0x0000905c, 0x008d0220 },
{ 0x00800008, 0x2360352d, 0x0000905e, 0x008d0220 },
{ 0x00600001, 0x20600129, 0x008d0510, 0x00000000 },
{ 0x00600001, 0x20c00129, 0x008d0520, 0x00000000 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x05000500 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x05200520 },
{ 0x00800001, 0x25000129, 0x00ad0050, 0x00000000 },
{ 0x00800001, 0x25200129, 0x00ad00d0, 0x00000000 },
{ 0x00600001, 0x21c00229, 0x000090e2, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090e3, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490ec, 0x00000000 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000096 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x05010501 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x05210521 },
{ 0x00600001, 0x21c00229, 0x000090f2, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090f3, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490fc, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00600001, 0x20700129, 0x008d0510, 0x00000000 },
{ 0x00600001, 0x20d00129, 0x008d0520, 0x00000000 },
{ 0x00800008, 0x2340352d, 0x00009048, 0x008d0220 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e000e0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00600001, 0x21c00229, 0x000090c4, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090c5, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490ac, 0x00000000 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x00000001, 0x260201e8, 0x00000000, 0x00000000 },
{ 0x00000401, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000801, 0x25d80109, 0x00000600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000006a },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e100e1 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01010101 },
{ 0x00600001, 0x21c00229, 0x000090cc, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090cd, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490bc, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000005a },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c0, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0007000f },
{ 0x00802001, 0x20400022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0100, 0x00000000 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0a082004 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00080008 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x0a082704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0a082604 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x01600005, 0x20003dac, 0x020005e0, 0x00010001 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c8, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005ca, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0001000f },
{ 0x00610001, 0x20400022, 0x028d0040, 0x00000000 },
{ 0x00710001, 0x20400022, 0x028d0060, 0x00000000 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0418a004 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00080008 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000c },
{ 0x0000000c, 0x27e43da5, 0x000005c2, 0x00020002 },
{ 0x00010001, 0x22000060, 0x02000000, 0x0418a704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0418a604 },
{ 0x00000040, 0x27e43ca5, 0x000007e4, 0xfffefffe },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x26400021, 0x508d07e0, 0x00000200 },
{ 0x01000005, 0x20003dac, 0x0000002a, 0x00020002 },
{ 0x00000006, 0x202a3dad, 0x0000002a, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffd94 },
{ 0x00600001, 0x26400021, 0x008d0640, 0x00000000 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x00600040, 0x2400462d, 0x00ae9c00, 0x00aed810 },
{ 0x00600040, 0x2340462d, 0x00ae9800, 0x00aed810 },
{ 0x00600040, 0x2360462d, 0x00ae9c10, 0x00aedc00 },
{ 0x05810010, 0x200025ac, 0x008d2400, 0x008d01c0 },
{ 0x05810010, 0x200025ac, 0x008d2340, 0x008d01e0 },
{ 0x05810010, 0x200025ac, 0x008d2360, 0x008d01e0 },
{ 0x00618022, 0x34001c00, 0x00001400, 0x00000036 },
{ 0x00618022, 0x34001c00, 0x02001400, 0x00000016 },
{ 0x00600040, 0x24003e2c, 0x00ae9c10, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x00ae9800, 0x00020002 },
{ 0x00600040, 0x2400458c, 0x008d0400, 0x00ae9810 },
{ 0x80600008, 0x43403d91, 0x008d0400, 0x00020002 },
{ 0x00600040, 0x24003e2c, 0x00ae9800, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x00ae9c10, 0x00020002 },
{ 0x00600040, 0x2400458c, 0x008d0400, 0x00ae9c00 },
{ 0x80600008, 0x43603d91, 0x008d0400, 0x00020002 },
{ 0x00600001, 0xd8100231, 0x00ae0340, 0x00000000 },
{ 0x00600001, 0xdc000231, 0x00ae0360, 0x00000000 },
{ 0x00608024, 0x34001c00, 0x00001400, 0x0001001e },
{ 0x00600040, 0x23e03d2d, 0x008d0200, 0x00010001 },
{ 0x00600040, 0x24003e2c, 0x00ae9800, 0x00040004 },
{ 0x00600048, 0x24003dac, 0x008d0400, 0x00040004 },
{ 0x00600040, 0x2400458c, 0x008d0400, 0x00aedc10 },
{ 0x00600008, 0x23403d8d, 0x008d0400, 0x00030003 },
{ 0x03600010, 0x200035ac, 0x008d0340, 0x008d03e0 },
{ 0x05600010, 0x200035ac, 0x028d0340, 0x008d43e0 },
{ 0x00610001, 0x234001ad, 0x008d03e0, 0x00000000 },
{ 0x00610001, 0x234001ad, 0x028d43e0, 0x00000000 },
{ 0x80600040, 0x43603631, 0x00ae9810, 0x008d0340 },
{ 0x80600040, 0x43403631, 0x00ae9c00, 0x008d4340 },
{ 0x00600001, 0xd8100231, 0x00ae0360, 0x00000000 },
{ 0x00600001, 0xdc000231, 0x00ae0340, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007c0, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
/drivers/video/i965/shaders/h264/mc/avc_mc.g4b.gen5
0,0 → 1,5251
{ 0x00600001, 0x27c00021, 0x008d0000, 0x00000000 },
{ 0x00200009, 0x27fa3e29, 0x00450064, 0x00040004 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000d4 },
{ 0x00000005, 0x220e3e2c, 0x00000070, 0x000f000f },
{ 0x00000001, 0x26a00221, 0x00009c38, 0x00000000 },
{ 0x00000220, 0x34001400, 0x00001400, 0x000006a0 },
{ 0x00a02001, 0x24000229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x24400229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x24800229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x24c00229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x25000229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x25400229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x25800229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x25c00229, 0x00b10624, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00000001, 0x22080060, 0x00000000, 0x06440640 },
{ 0x00a02001, 0x24000229, 0x00009003, 0x00000000 },
{ 0x00a02001, 0x24400229, 0x0000900b, 0x00000000 },
{ 0x00a02001, 0x24800229, 0x00009013, 0x00000000 },
{ 0x00a02001, 0x24c00229, 0x0000901b, 0x00000000 },
{ 0x00a02001, 0x25000229, 0x00009023, 0x00000000 },
{ 0x00a02001, 0x25400229, 0x0000902b, 0x00000000 },
{ 0x00a02001, 0x25800229, 0x00009033, 0x00000000 },
{ 0x00a02001, 0x25c00229, 0x0000903b, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000072 },
{ 0x02600005, 0x20000c20, 0x0000006c, 0x00000002 },
{ 0x00600005, 0x24000c20, 0x0000006c, 0x00000011 },
{ 0x01600007, 0x20000c00, 0x028d0400, 0x00000011 },
{ 0x00780001, 0x26240169, 0x00000000, 0x80808080 },
{ 0x00780001, 0x66430231, 0x028d0624, 0x00000000 },
{ 0x00780001, 0x66630231, 0x028d062c, 0x00000000 },
{ 0x00780001, 0x26240231, 0x00cf0643, 0x00000000 },
{ 0x00780001, 0x262c0231, 0x00cf0663, 0x00000000 },
{ 0x00800040, 0x25e04629, 0x00cf0643, 0x00b10624 },
{ 0x00600040, 0x25e02529, 0x008d05e0, 0x008d05f0 },
{ 0x00400040, 0x25e02529, 0x006905e0, 0x006905e8 },
{ 0x00200040, 0x25e02529, 0x004505e0, 0x004505e4 },
{ 0x00a02040, 0x2400252c, 0x000005e0, 0x000005e2 },
{ 0x00a02040, 0x24003d8c, 0x00b10400, 0x00100010 },
{ 0x00a02008, 0x24003d89, 0x00b10400, 0x00050005 },
{ 0x00a02008, 0x24403d89, 0x00b10400, 0x00050005 },
{ 0x00a02008, 0x24803d89, 0x00b10400, 0x00050005 },
{ 0x00a02008, 0x24c03d89, 0x00b10400, 0x00050005 },
{ 0x00a02008, 0x25003d89, 0x00b10400, 0x00050005 },
{ 0x00a02008, 0x25403d89, 0x00b10400, 0x00050005 },
{ 0x00a02008, 0x25803d89, 0x00b10400, 0x00050005 },
{ 0x00a02008, 0x25c03d89, 0x00b10400, 0x00050005 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000044 },
{ 0x00600041, 0x26806e2d, 0x008d062c, 0x89abcdef },
{ 0x00600041, 0x26906e2d, 0x008d0623, 0xfedcba98 },
{ 0x00600041, 0x26a06e2d, 0x00cf0663, 0x89abcdef },
{ 0x00600041, 0x26b06e2d, 0x00cf0643, 0x0fedcba9 },
{ 0x00000041, 0x26be3e2d, 0x00000623, 0xfff8fff8 },
{ 0x00802040, 0x268035ad, 0x008d4680, 0x008d0690 },
{ 0x00802040, 0x268035ad, 0x008d0680, 0x008d0688 },
{ 0x00802040, 0x268035ad, 0x008d0680, 0x008d0684 },
{ 0x00802040, 0x268035ad, 0x008d0680, 0x008d0682 },
{ 0x00800001, 0x240001ec, 0x00000000, 0x00200020 },
{ 0x00200048, 0x24003dac, 0x00a00680, 0x00050005 },
{ 0x00200008, 0x26e03d8d, 0x00450400, 0x00060006 },
{ 0x00800001, 0x240001ec, 0x00000000, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x00000633, 0x00100010 },
{ 0x00800048, 0x26c03e2d, 0x0000067f, 0x00100010 },
{ 0x00800048, 0x272055ad, 0x000006e0, 0x00b10040 },
{ 0x00600041, 0x268055ad, 0x000006e2, 0x00ae0040 },
{ 0x00600041, 0x26a055ad, 0x000006e2, 0x00ae0041 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b00680 },
{ 0x80a02008, 0x44003d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b00682 },
{ 0x80a02008, 0x44403d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b00684 },
{ 0x80a02008, 0x44803d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b00686 },
{ 0x80a02008, 0x44c03d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b00688 },
{ 0x80a02008, 0x45003d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b0068a },
{ 0x80a02008, 0x45403d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b0068c },
{ 0x80a02008, 0x45803d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00b0068e },
{ 0x80a02008, 0x45c03d91, 0x00b10400, 0x00050005 },
{ 0x00000001, 0x22040060, 0x00000000, 0x00900080 },
{ 0x01000005, 0x20000c20, 0x02000068, 0x00003c00 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000020 },
{ 0x80802040, 0x440045b1, 0x008d8800, 0x00ae0400 },
{ 0x80802040, 0x444045b1, 0x008d8820, 0x00ae0440 },
{ 0x80802040, 0x448045b1, 0x008d8840, 0x00ae0480 },
{ 0x80802040, 0x44c045b1, 0x008d8860, 0x00ae04c0 },
{ 0x80802040, 0x441045b1, 0x008d8880, 0x00ae0410 },
{ 0x80802040, 0x445045b1, 0x008d88a0, 0x00ae0450 },
{ 0x80802040, 0x449045b1, 0x008d88c0, 0x00ae0490 },
{ 0x80802040, 0x44d045b1, 0x008d88e0, 0x00ae04d0 },
{ 0x80802040, 0x450045b1, 0x008d8900, 0x00ae0500 },
{ 0x80802040, 0x454045b1, 0x008d8920, 0x00ae0540 },
{ 0x80802040, 0x458045b1, 0x008d8940, 0x00ae0580 },
{ 0x80802040, 0x45c045b1, 0x008d8960, 0x00ae05c0 },
{ 0x80802040, 0x451045b1, 0x008d8980, 0x00ae0510 },
{ 0x80802040, 0x455045b1, 0x008d89a0, 0x00ae0550 },
{ 0x80802040, 0x459045b1, 0x008d89c0, 0x00ae0590 },
{ 0x80802040, 0x45d045b1, 0x008d89e0, 0x00ae05d0 },
{ 0x00000040, 0x22040c00, 0x00000204, 0x01800180 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000e2 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x27800021, 0x00000780, 0x00000000 },
{ 0x00000001, 0x27a00021, 0x000007a0, 0x00000000 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x00200440, 0x27c055a5, 0x004507fa, 0x0045002a },
{ 0x00000801, 0x27c80061, 0x00000000, 0x0000001b },
{ 0x00000040, 0x22000d20, 0x00000062, 0x02186000 },
{ 0x01600031, 0x26200021, 0x408d07c0, 0x00000200 },
{ 0x00000440, 0x27c43ca5, 0x000007c4, 0x00010001 },
{ 0x00000801, 0x27c80061, 0x00000000, 0x000f0003 },
{ 0x00000040, 0x22000c00, 0x00000200, 0x00100000 },
{ 0x02600031, 0x26400021, 0x408d07c0, 0x00000200 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00000008, 0x27fc3dad, 0x000007fc, 0x00010001 },
{ 0x00200440, 0x27c055a5, 0x004507fa, 0x0045002a },
{ 0x00000801, 0x27c80061, 0x00000000, 0x00000013 },
{ 0x00000040, 0x22000c00, 0x00000200, 0xefffc001 },
{ 0x01600031, 0x26200021, 0x408d07c0, 0x00000200 },
{ 0x00000440, 0x27c43ca5, 0x000007c4, 0x00010001 },
{ 0x00000801, 0x27c80061, 0x00000000, 0x00070003 },
{ 0x05600031, 0x26400021, 0x408d07c0, 0x00000200 },
{ 0x00000008, 0x220e3e2c, 0x0000006c, 0x00060006 },
{ 0x00000001, 0x26a002a5, 0x00009c3c, 0x00000000 },
{ 0x00000220, 0x34001400, 0x00001400, 0x000006a0 },
{ 0x02600005, 0x20000c20, 0x0000006c, 0x00000002 },
{ 0x00780001, 0x26240169, 0x00000000, 0x80808080 },
{ 0x02400005, 0x20000c20, 0x0200006c, 0x00000001 },
{ 0x00560001, 0x46420129, 0x02690624, 0x00000000 },
{ 0x02400005, 0x20000c20, 0x0200006c, 0x00000010 },
{ 0x00560001, 0x46520129, 0x0269062c, 0x00000000 },
{ 0x00780001, 0x26240129, 0x00ae0642, 0x00000000 },
{ 0x00800040, 0x24004629, 0x00b10624, 0x00650642 },
{ 0x00600040, 0x24002529, 0x00650400, 0x00650404 },
{ 0x00600040, 0x25202529, 0x00050400, 0x00050404 },
{ 0x00600040, 0x25702529, 0x00050408, 0x0005040c },
{ 0x00560001, 0x26240169, 0x00000000, 0x80808080 },
{ 0x00460001, 0x26240129, 0x028a0652, 0x00000000 },
{ 0x00560001, 0x46520129, 0x02690624, 0x00000000 },
{ 0x02400005, 0x20000c20, 0x0200006c, 0x00000001 },
{ 0x00560001, 0x46420169, 0x02000000, 0x80808080 },
{ 0x00460001, 0x46420129, 0x0069062c, 0x00000000 },
{ 0x00560001, 0x262c0129, 0x008a0642, 0x00000000 },
{ 0x00600040, 0x24004629, 0x008d0624, 0x00650652 },
{ 0x00600040, 0x24104629, 0x00650642, 0x008d062c },
{ 0x00600040, 0x24002529, 0x00650400, 0x00650404 },
{ 0x00600040, 0x25302529, 0x00050408, 0x0005040c },
{ 0x00600040, 0x25602529, 0x00050400, 0x00050404 },
{ 0x00a02040, 0x24003d2c, 0x00b10520, 0x00040004 },
{ 0x00a02008, 0x24003d89, 0x00b10400, 0x00030003 },
{ 0x00a02008, 0x24403d89, 0x00b10400, 0x00030003 },
{ 0x00a02040, 0x24003d2c, 0x00b10560, 0x00040004 },
{ 0x00a02008, 0x24803d89, 0x00b10400, 0x00030003 },
{ 0x00a02008, 0x24c03d89, 0x00b10400, 0x00030003 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000048 },
{ 0x00000001, 0x22080060, 0x00000000, 0x06440640 },
{ 0x00a02001, 0x24000229, 0x00059002, 0x00000000 },
{ 0x00a02001, 0x24400229, 0x0005900a, 0x00000000 },
{ 0x00a02001, 0x24800229, 0x00059012, 0x00000000 },
{ 0x00a02001, 0x24c00229, 0x0005901a, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000003c },
{ 0x00a02001, 0x24000229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x24400229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x24800229, 0x00b10624, 0x00000000 },
{ 0x00a02001, 0x24c00229, 0x00b10624, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000032 },
{ 0x00600041, 0x26806e2d, 0x008d062c, 0x44332211 },
{ 0x00600041, 0x26906e2d, 0x008d0622, 0xffeeddcc },
{ 0x00600041, 0x26a06e2d, 0x00650652, 0x44332211 },
{ 0x00600041, 0x26b06e2d, 0x00650642, 0x00ffeedd },
{ 0x00200041, 0x26bc3e2d, 0x00450622, 0xfffcfffc },
{ 0x00802040, 0x268035ad, 0x008d0680, 0x008d0690 },
{ 0x00802040, 0x268035ad, 0x008d0680, 0x008d0688 },
{ 0x00802040, 0x268035ad, 0x008d0680, 0x008d0684 },
{ 0x00800001, 0x240001ec, 0x00000000, 0x00200020 },
{ 0x00400048, 0x24003dac, 0x00a50680, 0x00220022 },
{ 0x00400008, 0x26e03d8d, 0x00690400, 0x00060006 },
{ 0x00800001, 0x240001ec, 0x00000000, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x00050632, 0x00100010 },
{ 0x00800048, 0x26c03e2d, 0x0005065e, 0x00100010 },
{ 0x00800048, 0x272055ad, 0x000506e0, 0x00240044 },
{ 0x00600041, 0x268055ad, 0x000506e4, 0x00440044 },
{ 0x00600041, 0x26a055ad, 0x000506e4, 0x00440045 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00050680 },
{ 0x80a02008, 0x44003d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00050684 },
{ 0x80a02008, 0x44403d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x00050688 },
{ 0x80a02008, 0x44803d91, 0x00b10400, 0x00050005 },
{ 0x00a02040, 0x240035ac, 0x00b10720, 0x0005068c },
{ 0x80a02008, 0x44c03d91, 0x00b10400, 0x00050005 },
{ 0x00000040, 0x22063d8c, 0x00000204, 0x00100010 },
{ 0x80802040, 0x640045b1, 0x008d8880, 0x00cf0400 },
{ 0x80802040, 0x644045b1, 0x008d88a0, 0x00cf0440 },
{ 0x80802040, 0x648045b1, 0x008d88c0, 0x00cf0480 },
{ 0x80802040, 0x64c045b1, 0x008d88e0, 0x00cf04c0 },
{ 0x80802040, 0x640245b1, 0x008d8900, 0x00cf0402 },
{ 0x80802040, 0x644245b1, 0x008d8920, 0x00cf0442 },
{ 0x80802040, 0x648245b1, 0x008d8940, 0x00cf0482 },
{ 0x80802040, 0x64c245b1, 0x008d8960, 0x00cf04c2 },
{ 0x00000401, 0x27c80061, 0x00000000, 0x0007000f },
{ 0x00200801, 0x27c001a1, 0x004507fa, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00000200, 0x08004000 },
{ 0x00800001, 0x20400232, 0x00d20400, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20420, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20440, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d20460, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d20480, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d204a0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d204c0, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d204e0, 0x00000000 },
{ 0x01600031, 0x27a00021, 0x508d07c0, 0x00000200 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00000401, 0x27c80061, 0x00000000, 0x000f000f },
{ 0x00200801, 0x27c001a1, 0x004507fa, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00000200, 0x0ff04000 },
{ 0x00000001, 0x22080060, 0x00000000, 0x04400400 },
{ 0x00a02001, 0x20400232, 0x00d29000, 0x00000000 },
{ 0x00a02001, 0x20500232, 0x00d29020, 0x00000000 },
{ 0x00a02001, 0x20800232, 0x00d29080, 0x00000000 },
{ 0x00a02001, 0x20900232, 0x00d290a0, 0x00000000 },
{ 0x00a02001, 0x20c00232, 0x00d29100, 0x00000000 },
{ 0x00a02001, 0x20d00232, 0x00d29120, 0x00000000 },
{ 0x00a02001, 0x21000232, 0x00d29180, 0x00000000 },
{ 0x00a02001, 0x21100232, 0x00d291a0, 0x00000000 },
{ 0x01600031, 0x27800021, 0x508d07c0, 0x00000200 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00600001, 0x27c00021, 0x008d0000, 0x00000000 },
{ 0x00200009, 0x27fa3e29, 0x00450064, 0x00040004 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff04 },
{ 0x00000001, 0x220401ec, 0x00000000, 0x00800080 },
{ 0x00000001, 0x22080060, 0x00000000, 0x04100400 },
{ 0x00200008, 0x27006e2d, 0x0000006c, 0x00000040 },
{ 0x00400001, 0x27400061, 0x00000000, 0x00000000 },
{ 0x00800001, 0x272001a9, 0x00b10620, 0x00000000 },
{ 0x02600005, 0x20001c20, 0x0000006c, 0x00000008 },
{ 0x00110001, 0x27230231, 0x00000624, 0x00000000 },
{ 0x00600001, 0x27420231, 0x00cf0643, 0x00000000 },
{ 0x00110001, 0x27410231, 0x00000643, 0x00000000 },
{ 0x00240001, 0x27400231, 0x00000623, 0x00000000 },
{ 0x02000005, 0x20001c20, 0x0200006c, 0x00000002 },
{ 0x00010001, 0x27400231, 0x02000624, 0x00000000 },
{ 0x02000005, 0x20001c20, 0x0200006c, 0x00000001 },
{ 0x00110001, 0x27420231, 0x02000623, 0x00000000 },
{ 0x00000005, 0x26803e2d, 0x00000070, 0x000f000f },
{ 0x00000001, 0x270801ad, 0x00000700, 0x00000000 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000084 },
{ 0x00000040, 0x22043d8c, 0x00000204, 0x00800080 },
{ 0x00800001, 0x27200231, 0x00b10628, 0x00000000 },
{ 0x02600005, 0x20001c20, 0x0200006c, 0x00000004 },
{ 0x00680001, 0x272c0231, 0x028d0634, 0x00000000 },
{ 0x00780001, 0x272c0231, 0x02000633, 0x00000000 },
{ 0x00400001, 0x27420231, 0x00a0040e, 0x00000000 },
{ 0x00400001, 0x27460231, 0x00a0044e, 0x00000000 },
{ 0x00200001, 0x27400231, 0x0000062b, 0x00000000 },
{ 0x02000005, 0x20001c20, 0x0200006c, 0x00000002 },
{ 0x00010001, 0x27400231, 0x0200062c, 0x00000000 },
{ 0x00110001, 0x27410231, 0x0200040e, 0x00000000 },
{ 0x00000008, 0x26803e2d, 0x00000070, 0x00040004 },
{ 0x00200040, 0x22083d8c, 0x00450208, 0x00800080 },
{ 0x00000006, 0x27083dad, 0x00000700, 0x00010001 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000064 },
{ 0x00000040, 0x22043d8c, 0x00000204, 0x00800080 },
{ 0x00a02001, 0xb3800231, 0x00d20400, 0x00000000 },
{ 0x00a02001, 0xb3a00231, 0x00d20480, 0x00000000 },
{ 0x00a02001, 0xb3c00231, 0x00d20440, 0x00000000 },
{ 0x00a02001, 0xb3e00231, 0x00d204c0, 0x00000000 },
{ 0x02000005, 0x20001c20, 0x00000060, 0x00000002 },
{ 0x01000005, 0x20001c20, 0x0200006c, 0x00000001 },
{ 0x01010005, 0x20001c20, 0x00000060, 0x00004000 },
{ 0x02010005, 0x20001c20, 0x02000060, 0x00000010 },
{ 0x00030001, 0x27230231, 0x0000065f, 0x00000000 },
{ 0x00030220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02600005, 0x20001c20, 0x0000006c, 0x00000001 },
{ 0x00460001, 0x27200231, 0x0069065c, 0x00000000 },
{ 0x00110001, 0x27230231, 0x00000458, 0x00000000 },
{ 0x00600001, 0x27240231, 0x008d0458, 0x00000000 },
{ 0x00600001, 0x272c0231, 0x008d0478, 0x00000000 },
{ 0x00600001, 0x27420231, 0x00cf0663, 0x00000000 },
{ 0x00000001, 0x27400231, 0x00000458, 0x00000000 },
{ 0x00010001, 0x27410231, 0x0000065f, 0x00000000 },
{ 0x00110001, 0x27410231, 0x00000663, 0x00000000 },
{ 0x02000005, 0x20001c20, 0x0200006c, 0x00000010 },
{ 0x00110001, 0x27420231, 0x0200065f, 0x00000000 },
{ 0x00000005, 0x26803e2d, 0x00000071, 0x000f000f },
{ 0x00000006, 0x27083dad, 0x00000702, 0x00020002 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000040, 0x22043d8c, 0x00000204, 0x00800080 },
{ 0x00400001, 0x27200231, 0x0069045c, 0x00000000 },
{ 0x00600001, 0x27240231, 0x008d0478, 0x00000000 },
{ 0x00800001, 0x272c0231, 0x0000047f, 0x00000000 },
{ 0x00400001, 0x27420231, 0x00a0048e, 0x00000000 },
{ 0x00400001, 0x27460231, 0x00a004ce, 0x00000000 },
{ 0x00000001, 0x27400231, 0x00000478, 0x00000000 },
{ 0x00000001, 0x27410231, 0x0000045f, 0x00000000 },
{ 0x00000008, 0x26803e2d, 0x00000071, 0x00040004 },
{ 0x00200040, 0x22083d8c, 0x00450208, 0x00800080 },
{ 0x00000006, 0x27083dad, 0x00000700, 0x00030003 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00a02001, 0xb3800231, 0x00d20480, 0x00000000 },
{ 0x00a02001, 0xb3a00231, 0x00d20500, 0x00000000 },
{ 0x00a02001, 0xb3c00231, 0x00d204c0, 0x00000000 },
{ 0x00a02001, 0xb3e00231, 0x00d20540, 0x00000000 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000100 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffe74 },
{ 0x00000001, 0x27800021, 0x00000780, 0x00000000 },
{ 0x00000001, 0x27a00021, 0x000007a0, 0x00000000 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x00000001, 0x27340231, 0x00000733, 0x00000000 },
{ 0x00600001, 0x274a0231, 0x00000749, 0x00000000 },
{ 0x00800040, 0x24003e2c, 0x00b10723, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10724, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10725, 0x00010001 },
{ 0x00800008, 0x26c03d8d, 0x008d0400, 0x00020002 },
{ 0x00800040, 0x24003e2c, 0x00b10740, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10741, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10742, 0x00010001 },
{ 0x00800008, 0x26a03d8d, 0x008d0400, 0x00020002 },
{ 0x00800001, 0x27240231, 0x00d206c0, 0x00000000 },
{ 0x00600001, 0x27400231, 0x00ae06a2, 0x00000000 },
{ 0x00000001, 0x27230231, 0x000006a0, 0x00000000 },
{ 0x00000005, 0x220e3dac, 0x00000680, 0x000f000f },
{ 0x00000001, 0x26a00221, 0x00009c2c, 0x00000000 },
{ 0x00000220, 0x34001400, 0x00001400, 0x000006a0 },
{ 0x80800040, 0xd00045b1, 0x00b18800, 0x000d0724 },
{ 0x80800040, 0xd02045b1, 0x00b18820, 0x000d0724 },
{ 0x80800040, 0xd04045b1, 0x00b18840, 0x000d0724 },
{ 0x80800040, 0xd06045b1, 0x00b18860, 0x000d0724 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x80800040, 0xd00045b1, 0x00b18800, 0x002c0740 },
{ 0x80800040, 0xd02045b1, 0x00b18820, 0x002c0742 },
{ 0x80800040, 0xd04045b1, 0x00b18840, 0x002c0744 },
{ 0x80800040, 0xd06045b1, 0x00b18860, 0x002c0746 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x02802005, 0x20003da0, 0x00000708, 0x00020002 },
{ 0x02600005, 0x20003da0, 0x02000708, 0x00010001 },
{ 0x009a0001, 0x27200169, 0x00000000, 0x80808080 },
{ 0x00780001, 0x27400231, 0x028d0724, 0x00000000 },
{ 0x00780001, 0x27240231, 0x008d0740, 0x00000000 },
{ 0x00600040, 0x25e04629, 0x008d0724, 0x008d0740 },
{ 0x00400040, 0x25e02529, 0x006905e0, 0x006905e8 },
{ 0x00200040, 0x25e02529, 0x004505e0, 0x004505e4 },
{ 0x00800040, 0x2400252c, 0x000005e0, 0x000005e2 },
{ 0x00800040, 0x24003d8c, 0x008d0400, 0x00080008 },
{ 0x00800008, 0x26803d8d, 0x008d0400, 0x00040004 },
{ 0x80800040, 0xd00035b1, 0x00b18800, 0x00b10680 },
{ 0x80800040, 0xd02035b1, 0x00b18820, 0x00b10680 },
{ 0x80800040, 0xd04035b1, 0x00b18840, 0x00b10680 },
{ 0x80800040, 0xd06035b1, 0x00b18860, 0x00b10680 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00600001, 0x27340231, 0x008d0733, 0x00000000 },
{ 0x00800040, 0x24003e2c, 0x00b10726, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10725, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10724, 0x00010001 },
{ 0x00800008, 0x26803d8d, 0x00b10400, 0x00020002 },
{ 0x80800040, 0xd00035b1, 0x00b18800, 0x002d0680 },
{ 0x80800040, 0xd02035b1, 0x00b18820, 0x002d0684 },
{ 0x80800040, 0xd04035b1, 0x00b18840, 0x002d0688 },
{ 0x80800040, 0xd06035b1, 0x00b18860, 0x002d068c },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00400009, 0x26c05421, 0x00000744, 0x00690050 },
{ 0x00400009, 0x26d05421, 0x00000740, 0x00690050 },
{ 0x00600001, 0x26a00231, 0x00cf06c3, 0x00000000 },
{ 0x00800001, 0x26a80231, 0x00b10723, 0x00000000 },
{ 0x00800040, 0x24003e2c, 0x00b106a2, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b106a1, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b106a0, 0x00010001 },
{ 0x00800008, 0x26a03d8d, 0x00b10400, 0x00020002 },
{ 0x00200040, 0x220c3eac, 0x00450056, 0x06a006a0 },
{ 0x80800040, 0xd06035b1, 0x01ed9800, 0x00b18860 },
{ 0x80800040, 0xd04035b1, 0x01ed9804, 0x00b18840 },
{ 0x80800040, 0xd02035b1, 0x01ed9808, 0x00b18820 },
{ 0x80800040, 0xd00035b1, 0x01ed980c, 0x00b18800 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00400009, 0x26c05421, 0x00000744, 0x00690050 },
{ 0x00400009, 0x26d05421, 0x00000740, 0x00690050 },
{ 0x00600001, 0x26a00231, 0x00cf06c3, 0x00000000 },
{ 0x00800001, 0x26a80231, 0x00b10723, 0x00000000 },
{ 0x00800042, 0x25c04629, 0x00b106a8, 0x00b106a9 },
{ 0x00800040, 0x24003e2c, 0x00b106a3, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b106a2, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b106a1, 0x00010001 },
{ 0x00800008, 0x26c03d8d, 0x008d0400, 0x00020002 },
{ 0x00600001, 0x26a00231, 0x00ae06c0, 0x00000000 },
{ 0x00600001, 0x46a60231, 0x00ae06cc, 0x00000000 },
{ 0x00600001, 0x46a70231, 0x00ae05c0, 0x00000000 },
{ 0x00200040, 0x220c3eac, 0x00450036, 0x06a006a0 },
{ 0x80800040, 0xd0603631, 0x01ee9800, 0x00b18860 },
{ 0x80800040, 0xd0403631, 0x01ee9802, 0x00b18840 },
{ 0x80800040, 0xd0203631, 0x01ee9804, 0x00b18820 },
{ 0x80800040, 0xd0003631, 0x01ee9806, 0x00b18800 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00400009, 0x26c05421, 0x00000744, 0x00690050 },
{ 0x00400009, 0x26d05421, 0x00000740, 0x00690050 },
{ 0x00600001, 0x26a00231, 0x00ab06c3, 0x00000000 },
{ 0x00800001, 0x26a80231, 0x00b10723, 0x00000000 },
{ 0x00800040, 0x24003e2c, 0x00b106a2, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b106a1, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b106a0, 0x00010001 },
{ 0x00800008, 0x25c03d89, 0x008d0400, 0x00020002 },
{ 0x00800042, 0x26a0462d, 0x00b106a0, 0x00b106a1 },
{ 0x00600001, 0x46a10231, 0x00ae05c0, 0x00000000 },
{ 0x00600001, 0x26b00231, 0x00ae05d0, 0x00000000 },
{ 0x00200040, 0x220c3eac, 0x00450056, 0x06a006a0 },
{ 0x80800040, 0xd0603631, 0x01ed9800, 0x00b18860 },
{ 0x80800040, 0xd0403631, 0x01ed9804, 0x00b18840 },
{ 0x80800040, 0xd0203631, 0x01ed9808, 0x00b18820 },
{ 0x80800040, 0xd0003631, 0x01ed980c, 0x00b18800 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00800042, 0x25c04629, 0x00b10724, 0x00b10725 },
{ 0x00800040, 0x24003e2c, 0x00b10726, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10725, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10724, 0x00010001 },
{ 0x00800008, 0x25e03d89, 0x002d0400, 0x00020002 },
{ 0x80800040, 0xd0003531, 0x00ad05c0, 0x00b18800 },
{ 0x80800040, 0xd0203531, 0x00ad05c2, 0x00b18820 },
{ 0x80800040, 0xd0403531, 0x00ad05c4, 0x00b18840 },
{ 0x80800040, 0xd0603531, 0x00ad05c6, 0x00b18860 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00600001, 0x27480231, 0x00000747, 0x00000000 },
{ 0x00800042, 0x25c04629, 0x00b10740, 0x00b10741 },
{ 0x00800040, 0x24003e2c, 0x00b10742, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10741, 0x00020002 },
{ 0x00800048, 0x24003e2c, 0x00b10740, 0x00010001 },
{ 0x00800008, 0x25e03d89, 0x002d0400, 0x00020002 },
{ 0x00800001, 0x45c10231, 0x00d205e0, 0x00000000 },
{ 0x80800040, 0xd0003631, 0x004d05c0, 0x00b18800 },
{ 0x80800040, 0xd0203631, 0x004d05c4, 0x00b18820 },
{ 0x80800040, 0xd0403631, 0x004d05c8, 0x00b18840 },
{ 0x80800040, 0xd0603631, 0x004d05cc, 0x00b18860 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00000401, 0x27c80061, 0x00000000, 0x000f000f },
{ 0x00200801, 0x27c001a1, 0x004507fa, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00000200, 0x0ff04000 },
{ 0x00800001, 0x20400232, 0x00cd0400, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00cd0408, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00cd0410, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00cd0418, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00cd0440, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00cd0448, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00cd0450, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00cd0458, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00cd0480, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00cd0488, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00cd0490, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00cd0498, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00cd04c0, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00cd04c8, 0x00000000 },
{ 0x00800001, 0x21200232, 0x00cd04d0, 0x00000000 },
{ 0x00800001, 0x21300232, 0x00cd04d8, 0x00000000 },
{ 0x01600031, 0x27800021, 0x508d07c0, 0x00000200 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00600001, 0x27c00021, 0x008d0000, 0x00000000 },
{ 0x00200009, 0x27fa3e29, 0x00450064, 0x00040004 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffd34 },
{ 0x00000001, 0x220401ec, 0x00000000, 0x00800080 },
{ 0x00000001, 0x220601ec, 0x00000000, 0x04000400 },
{ 0x00200008, 0x27006e2d, 0x0000006c, 0x00000040 },
{ 0x02600005, 0x20003e20, 0x0000006c, 0x00040004 },
{ 0x00780001, 0x26340231, 0x00000633, 0x00000000 },
{ 0x00800001, 0x27200231, 0x00b10620, 0x00000000 },
{ 0x00600001, 0x27400231, 0x00cf0643, 0x00000000 },
{ 0x00400008, 0x26806e2d, 0x00240070, 0x00004040 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000006a },
{ 0x00000040, 0x22043d8c, 0x00000204, 0x00800080 },
{ 0x00000006, 0x27003dad, 0x00000700, 0x00010001 },
{ 0x00800001, 0x27200231, 0x00b10628, 0x00000000 },
{ 0x00400001, 0x27400231, 0x00808c26, 0x00000000 },
{ 0x00400001, 0x27440231, 0x00808c66, 0x00000000 },
{ 0x00400008, 0x26806e2d, 0x00240072, 0x00004040 },
{ 0x00000040, 0x22063d8c, 0x00000206, 0x00800080 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000058 },
{ 0x00000040, 0x22043d8c, 0x00000204, 0x00800080 },
{ 0x00000006, 0x27003dad, 0x00000702, 0x00020002 },
{ 0x00800001, 0xaf800231, 0x00d28f80, 0x00000000 },
{ 0x00800001, 0xaf900231, 0x00d28fa0, 0x00000000 },
{ 0x00800001, 0xafc00231, 0x00d28fc0, 0x00000000 },
{ 0x00800001, 0xafd00231, 0x00d28fe0, 0x00000000 },
{ 0x00800001, 0xafa00231, 0x00d28c00, 0x00000000 },
{ 0x00800001, 0xafb00231, 0x00d28c20, 0x00000000 },
{ 0x00800001, 0xafe00231, 0x00d28c40, 0x00000000 },
{ 0x00800001, 0xaff00231, 0x00d28c60, 0x00000000 },
{ 0x00400001, 0x27200231, 0x0069065c, 0x00000000 },
{ 0x00600001, 0x27240231, 0x00a98fcc, 0x00000000 },
{ 0x00600001, 0x272c0231, 0x00a98fec, 0x00000000 },
{ 0x00600001, 0x27340231, 0x00008fff, 0x00000000 },
{ 0x00800001, 0x2620012d, 0x00b10720, 0x00000000 },
{ 0x00600001, 0x27400231, 0x00cf0663, 0x00000000 },
{ 0x00400008, 0x26806e2d, 0x00240074, 0x00004040 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000032 },
{ 0x00000040, 0x22043d8c, 0x00000204, 0x00800080 },
{ 0x00000006, 0x27003dad, 0x00000700, 0x00010001 },
{ 0x00800001, 0x27200231, 0x00b10628, 0x00000000 },
{ 0x00600001, 0x27300231, 0x008d0638, 0x00000000 },
{ 0x00400001, 0x27400231, 0x00808c26, 0x00000000 },
{ 0x00400001, 0x27440231, 0x00808c66, 0x00000000 },
{ 0x00400008, 0x26806e2d, 0x00240076, 0x00004040 },
{ 0x00000040, 0x22063d8c, 0x00000206, 0x00800080 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x00800001, 0xaf800231, 0x00d28f80, 0x00000000 },
{ 0x00800001, 0xaf900231, 0x00d28fa0, 0x00000000 },
{ 0x00800001, 0xafc00231, 0x00d28fc0, 0x00000000 },
{ 0x00800001, 0xafd00231, 0x00d28fe0, 0x00000000 },
{ 0x00800001, 0xafa00231, 0x00d28c00, 0x00000000 },
{ 0x00800001, 0xafb00231, 0x00d28c20, 0x00000000 },
{ 0x00800001, 0xafe00231, 0x00d28c40, 0x00000000 },
{ 0x00800001, 0xaff00231, 0x00d28c60, 0x00000000 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000e0 },
{ 0x00000040, 0x27e01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffcce },
{ 0x00000001, 0x27800021, 0x00000780, 0x00000000 },
{ 0x00000001, 0x27a00021, 0x000007a0, 0x00000000 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x00600001, 0x27800231, 0x008d0740, 0x00000000 },
{ 0x00400005, 0x22083dac, 0x00690680, 0x000f000f },
{ 0x00400040, 0x26a04625, 0x01e09020, 0x00690058 },
{ 0x00000001, 0x26d001ad, 0x00000700, 0x00000000 },
{ 0x00000040, 0x27e41c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001400, 0x00001400, 0x000006a0 },
{ 0x80600040, 0xcc0035b1, 0x00898800, 0x008d0760 },
{ 0x80600040, 0xcc1035b1, 0x00898820, 0x008d0770 },
{ 0x00800001, 0x27200231, 0x008d0724, 0x00000000 },
{ 0x00400001, 0x27400231, 0x00808c06, 0x00000000 },
{ 0x00000006, 0x26d03dad, 0x00000700, 0x00010001 },
{ 0x00000040, 0x27e41c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001400, 0x00001400, 0x000006a4 },
{ 0x80600040, 0xcc2035b1, 0x00898808, 0x008d0760 },
{ 0x80600040, 0xcc3035b1, 0x00898828, 0x008d0770 },
{ 0x00000001, 0x27230231, 0x00000783, 0x00000000 },
{ 0x00400001, 0x27240231, 0x008a8c18, 0x00000000 },
{ 0x00400001, 0x27280231, 0x008a8c38, 0x00000000 },
{ 0x00400001, 0x272c0231, 0x00008c3e, 0x00000000 },
{ 0x00400001, 0x27400231, 0x00690784, 0x00000000 },
{ 0x00000006, 0x26d03dad, 0x00000700, 0x00020002 },
{ 0x00000040, 0x27e41c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001400, 0x00001400, 0x000006a8 },
{ 0x80600040, 0xcc4035b1, 0x00898840, 0x008d0760 },
{ 0x80600040, 0xcc5035b1, 0x00898860, 0x008d0770 },
{ 0x00800001, 0x27200231, 0x008d0724, 0x00000000 },
{ 0x00600001, 0x27280231, 0x00000727, 0x00000000 },
{ 0x00400001, 0x27400231, 0x00808c46, 0x00000000 },
{ 0x00000006, 0x26d03dad, 0x00000700, 0x00030003 },
{ 0x00000040, 0x27e41c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001400, 0x00001400, 0x000006ac },
{ 0x80600040, 0xcc6035b1, 0x00898848, 0x008d0760 },
{ 0x80600040, 0xcc7035b1, 0x00898868, 0x008d0770 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x00800001, 0x2760022d, 0x00090724, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00800001, 0x2760022d, 0x00280740, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x02802005, 0x20003da0, 0x000006d0, 0x00020002 },
{ 0x02802005, 0x20003da0, 0x020006d0, 0x00010001 },
{ 0x009a0001, 0x27200169, 0x00000000, 0x80808080 },
{ 0x00780001, 0x27400231, 0x028d0724, 0x00000000 },
{ 0x00780001, 0x27240231, 0x008d0740, 0x00000000 },
{ 0x00400040, 0x25e04629, 0x00690724, 0x00690740 },
{ 0x00200040, 0x25e02529, 0x004505e0, 0x004505e4 },
{ 0x00800040, 0x2400252c, 0x000005e0, 0x000005e2 },
{ 0x00800040, 0x24003d8c, 0x008d0400, 0x00040004 },
{ 0x00800008, 0x27603d8d, 0x008d0400, 0x00030003 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00600001, 0x26c00231, 0x008d0724, 0x00000000 },
{ 0x00400001, 0x26c80231, 0x0069072b, 0x00000000 },
{ 0x00600040, 0x24003e2c, 0x008d06c2, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x008d06c1, 0x00020002 },
{ 0x00600048, 0x25e03e29, 0x008d06c0, 0x00010001 },
{ 0x00800008, 0x27603d2d, 0x002905e0, 0x00020002 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00400009, 0x26e05421, 0x00000740, 0x00690050 },
{ 0x00600001, 0x26c40231, 0x008d0723, 0x00000000 },
{ 0x00400001, 0x26c00231, 0x00ab06e3, 0x00000000 },
{ 0x00600040, 0x24003e2c, 0x008d06c2, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x008d06c1, 0x00020002 },
{ 0x00600048, 0x26c03e2d, 0x008d06c0, 0x00010001 },
{ 0x00400040, 0x22083eac, 0x00690054, 0x06c006c0 },
{ 0x00800008, 0x27603dad, 0x01e99000, 0x00020002 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00400009, 0x26e05421, 0x00000740, 0x00690050 },
{ 0x00600001, 0x26c40231, 0x008d0723, 0x00000000 },
{ 0x00400001, 0x26c00231, 0x00ab06e3, 0x00000000 },
{ 0x00600042, 0x25c04629, 0x008d06c4, 0x008d06c5 },
{ 0x00600040, 0x24003e2c, 0x008d06c3, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x008d06c2, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x008d06c1, 0x00010001 },
{ 0x00600008, 0x26c03d8d, 0x008d0400, 0x00020002 },
{ 0x00400001, 0x46c401ad, 0x006906c4, 0x00000000 },
{ 0x00400001, 0x46c6012d, 0x006905c0, 0x00000000 },
{ 0x00400040, 0x22083eac, 0x00690054, 0x06c006c0 },
{ 0x00800001, 0x276001ad, 0x01ea9000, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00400009, 0x26e05421, 0x00000740, 0x00690050 },
{ 0x00600001, 0x26c40231, 0x008d0723, 0x00000000 },
{ 0x00400001, 0x26c00231, 0x00ab06e3, 0x00000000 },
{ 0x00600042, 0x25c04629, 0x008d06c0, 0x008d06c1 },
{ 0x00600040, 0x24003e2c, 0x008d06c2, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x008d06c1, 0x00020002 },
{ 0x00600048, 0x26e03e2d, 0x008d06c0, 0x00010001 },
{ 0x00400008, 0x46c23dad, 0x006906e0, 0x00020002 },
{ 0x00200008, 0x26d03dad, 0x004506e8, 0x00020002 },
{ 0x00400001, 0x46c0012d, 0x006905c0, 0x00000000 },
{ 0x00400009, 0x22083eac, 0x00690054, 0x00010001 },
{ 0x00400040, 0x22083d8c, 0x00690208, 0x06c006c0 },
{ 0x00800001, 0x276001ad, 0x01e99000, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00600042, 0x45c04629, 0x008d0724, 0x008d0725 },
{ 0x00600040, 0x24003e2c, 0x008d0726, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x008d0725, 0x00020002 },
{ 0x00600048, 0x25e03e29, 0x008d0724, 0x00010001 },
{ 0x00600008, 0x45c23d29, 0x008d05e0, 0x00020002 },
{ 0x00800001, 0x2760012d, 0x002a05c0, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00600001, 0x27440231, 0x00000743, 0x00000000 },
{ 0x00600042, 0x45c04629, 0x008d0740, 0x008d0741 },
{ 0x00600040, 0x24003e2c, 0x008d0742, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x008d0741, 0x00020002 },
{ 0x00600048, 0x25e03e29, 0x008d0740, 0x00010001 },
{ 0x00600008, 0x45c23d29, 0x008d05e0, 0x00020002 },
{ 0x00800001, 0x2760012d, 0x004905c0, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007e4, 0x00000000 },
{ 0x00000401, 0x27c80061, 0x00000000, 0x000f000f },
{ 0x00200801, 0x27c001a1, 0x004507fa, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00000200, 0x0ff04000 },
{ 0x00800001, 0x20400232, 0x00a90400, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00a90404, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00a90408, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00a9040c, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00a90440, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00a90444, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00a90448, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00a9044c, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00a90480, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00a90484, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00a90488, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00a9048c, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00a904c0, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00a904c4, 0x00000000 },
{ 0x00800001, 0x21200232, 0x00a904c8, 0x00000000 },
{ 0x00800001, 0x21300232, 0x00a904cc, 0x00000000 },
{ 0x01600031, 0x27800021, 0x508d07c0, 0x00000200 },
{ 0x00000001, 0x34000020, 0x000007e0, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27c00021, 0x008d0000, 0x00000000 },
{ 0x00200009, 0x27fa3e29, 0x00450064, 0x00040004 },
{ 0x00000401, 0x27c80061, 0x00000000, 0x000f000f },
{ 0x00200809, 0x27c03e21, 0x00450064, 0x00040004 },
{ 0x00000040, 0x22000d20, 0x00000062, 0x1218a000 },
{ 0x00a02401, 0x20400232, 0x00b10080, 0x00000000 },
{ 0x00a02801, 0x20500232, 0x00b10090, 0x00000000 },
{ 0x00a02401, 0x20800232, 0x00b100c0, 0x00000000 },
{ 0x00a02801, 0x20900232, 0x00b100d0, 0x00000000 },
{ 0x00a02401, 0x20c00232, 0x00b10100, 0x00000000 },
{ 0x00a02801, 0x20d00232, 0x00b10110, 0x00000000 },
{ 0x00a02401, 0x21000232, 0x00b10140, 0x00000000 },
{ 0x00a02801, 0x21100232, 0x00b10150, 0x00000000 },
{ 0x01600031, 0x27800021, 0x508d07c0, 0x00000200 },
{ 0x00000401, 0x20280062, 0x00000000, 0x0007000f },
{ 0x0000080c, 0x20243c22, 0x000007c4, 0x00010001 },
{ 0x00000040, 0x22001c00, 0x00000200, 0xf8000001 },
{ 0x00800001, 0x40400232, 0x00b10180, 0x00000000 },
{ 0x00800001, 0x40410232, 0x00b101c0, 0x00000000 },
{ 0x00800001, 0x40600232, 0x00b10190, 0x00000000 },
{ 0x00800001, 0x40610232, 0x00b101d0, 0x00000000 },
{ 0x00800001, 0x40800232, 0x00b101a0, 0x00000000 },
{ 0x00800001, 0x40810232, 0x00b101e0, 0x00000000 },
{ 0x00800001, 0x40a00232, 0x00b101b0, 0x00000000 },
{ 0x00800001, 0x40a10232, 0x00b101f0, 0x00000000 },
{ 0x01600031, 0x27a00001, 0x508d0000, 0x00000200 },
{ 0x00000001, 0x27800021, 0x00000780, 0x00000000 },
{ 0x00000001, 0x27a00021, 0x000007a0, 0x00000000 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0000, 0x00000000 },
{ 0x00000005, 0x20203e2d, 0x00000061, 0x001f001f },
{ 0x00200009, 0x20643e2d, 0x00450064, 0x00040004 },
{ 0x00000001, 0x203a01ed, 0x00000000, 0x00000000 },
{ 0x01000010, 0x20003dac, 0x00000020, 0x00160016 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x01200010, 0x20003e2c, 0x0200006c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000024 },
{ 0x00800009, 0x25403dad, 0x00050064, 0x00020002 },
{ 0x00000001, 0x203a01ed, 0x00000000, 0x00180018 },
{ 0x00200040, 0x45483dad, 0x00660548, 0x00100010 },
{ 0x00200040, 0x45523dad, 0x00660552, 0x00100010 },
{ 0x00400040, 0x25583dad, 0x00690558, 0x00100010 },
{ 0x00800040, 0x208035ad, 0x00b10080, 0x00b10540 },
{ 0x00600040, 0x45403dad, 0x00ae0540, 0x00200020 },
{ 0x00800040, 0x20a035ad, 0x00b100a0, 0x00b10540 },
{ 0x00600040, 0x45423dad, 0x00ae0542, 0x00200020 },
{ 0x00800040, 0x20e035ad, 0x00b100e0, 0x00b10540 },
{ 0x00600040, 0x45403dad, 0x00ae0540, 0xffe0ffe0 },
{ 0x00800040, 0x20c035ad, 0x00b100c0, 0x00b10540 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x06600010, 0x20003dac, 0x02000020, 0x00030003 },
{ 0x00000001, 0x206c0171, 0x00000000, 0x00000000 },
{ 0x00610001, 0x208000a5, 0x02050080, 0x00000000 },
{ 0x00610001, 0x212000a5, 0x02090100, 0x00000000 },
{ 0x00410001, 0x211000a5, 0x02690100, 0x00000000 },
{ 0x00200009, 0x25403dad, 0x00450064, 0x00020002 },
{ 0x00800040, 0x208035ad, 0x00b10080, 0x00050540 },
{ 0x00200040, 0x40883dad, 0x00660088, 0x00200020 },
{ 0x00200040, 0x40923dad, 0x00660092, 0x00200020 },
{ 0x00400040, 0x20983dad, 0x00690098, 0x00200020 },
{ 0x00200401, 0x22080060, 0x00000000, 0x03400140 },
{ 0x00000c01, 0x220c0060, 0x00000000, 0x04400080 },
{ 0x00000801, 0x22040060, 0x00000000, 0x01000070 },
{ 0x00000001, 0x20200169, 0x00000000, 0x00000000 },
{ 0x0000000c, 0x2458262d, 0x0000006d, 0x00000020 },
{ 0x00000001, 0x210e0169, 0x00000000, 0x00010001 },
{ 0x00000005, 0x24583dad, 0x00000458, 0x00030003 },
{ 0x01000010, 0x200035ac, 0x0000010e, 0x00000458 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x000002fe },
{ 0x01000010, 0x20003dac, 0x0200010e, 0x00010001 },
{ 0x00010401, 0x24540061, 0x02000000, 0x06c00640 },
{ 0x00010805, 0x245a3e2d, 0x02008800, 0x007f007f },
{ 0x00110401, 0x24540061, 0x02000000, 0x04800780 },
{ 0x00110805, 0x245a3e2d, 0x02008804, 0x007f007f },
{ 0x0000000c, 0x211e362d, 0x0000006c, 0x00000020 },
{ 0x00000040, 0x20780d21, 0x0000045a, 0x0208a002 },
{ 0x02000005, 0x20003dac, 0x0200011e, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000001be },
{ 0x01000005, 0x20003dac, 0x00009800, 0x00030003 },
{ 0x00200005, 0x24443dad, 0x00459800, 0x00030003 },
{ 0x0020000c, 0x24403dad, 0x00459800, 0x00020002 },
{ 0x01600006, 0x20003dac, 0x02000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000012 },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00400000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00700000 },
{ 0x00310040, 0x20401da5, 0x02450440, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x000c000c },
{ 0x00010040, 0x20401da5, 0x02000440, 0xfffffffe },
{ 0x00010001, 0x204401a5, 0x02000442, 0x00000000 },
{ 0x00010001, 0x20480061, 0x02000000, 0x0007000c },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00200000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00400000 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00110040, 0x20441da5, 0x02000442, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x000c0007 },
{ 0x00010001, 0x20480061, 0x02000000, 0x00070007 },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x0020040c, 0x24403dad, 0x00459800, 0x00030003 },
{ 0x00200805, 0x24483dad, 0x00459800, 0x00070007 },
{ 0x01600006, 0x20003dac, 0x0000044a, 0x00000000 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00000009, 0x20403ca5, 0x00000040, 0x00010001 },
{ 0x00010040, 0x22000c20, 0x00000078, 0x00200010 },
{ 0x00110040, 0x22000c20, 0x00000078, 0x00300010 },
{ 0x00010001, 0x20480061, 0x00000000, 0x00030009 },
{ 0x00110001, 0x20480061, 0x00000000, 0x00040009 },
{ 0x02600031, 0x27000021, 0x408d0040, 0x00000200 },
{ 0x01000005, 0x20003dac, 0x00009800, 0x00030003 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000001a },
{ 0x00600001, 0x26220231, 0x008d05c0, 0x00000000 },
{ 0x00600401, 0x26120231, 0x008d05b8, 0x00000000 },
{ 0x00600801, 0x26020231, 0x008d05b0, 0x00000000 },
{ 0x00600401, 0x25f20231, 0x008d05a8, 0x00000000 },
{ 0x00600801, 0x25e20231, 0x008d05a0, 0x00000000 },
{ 0x00600401, 0x25d20231, 0x008d0598, 0x00000000 },
{ 0x00600801, 0x25c20231, 0x008d0590, 0x00000000 },
{ 0x00600401, 0x25b20231, 0x008d0588, 0x00000000 },
{ 0x00600801, 0x25a20231, 0x008d0580, 0x00000000 },
{ 0x00600401, 0x25920231, 0x008d0578, 0x00000000 },
{ 0x00600801, 0x25820231, 0x008d0570, 0x00000000 },
{ 0x00600001, 0x25720231, 0x008d0568, 0x00000000 },
{ 0x00600001, 0x25620231, 0x008d0560, 0x00000000 },
{ 0x00110001, 0x220001ec, 0x02000000, 0x05820582 },
{ 0x00010001, 0x220001ec, 0x02000000, 0x05620562 },
{ 0x00000001, 0x220e0128, 0x00000454, 0x00000000 },
{ 0x01800006, 0x200035ac, 0x02000446, 0x00000444 },
{ 0x00810001, 0xbc000229, 0x02ad8000, 0x00000000 },
{ 0x00810001, 0xbc200229, 0x02ad8020, 0x00000000 },
{ 0x00810001, 0xbc400229, 0x02ad8040, 0x00000000 },
{ 0x00810001, 0xbc600229, 0x02ad8060, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000012a },
{ 0x00600001, 0x2024018d, 0x008d0200, 0x00000000 },
{ 0x01000041, 0x245e35ad, 0x00000446, 0x00000444 },
{ 0x00000040, 0x22022d08, 0x00000200, 0x00100010 },
{ 0x02000005, 0x20003db0, 0x0200045e, 0x00010001 },
{ 0x00200040, 0x22042d08, 0x00450200, 0x00200020 },
{ 0x00400001, 0x244c0109, 0x00690200, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000066 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000064 },
{ 0x00000040, 0x22003d08, 0x00000200, 0xffdeffde },
{ 0x00000440, 0x22023d08, 0x00000202, 0xffeeffee },
{ 0x00000801, 0x220c0060, 0x00000000, 0x04a00480 },
{ 0x01000010, 0x20003db0, 0x0000045e, 0x00040004 },
{ 0x00a02040, 0x2400462c, 0x00ad8000, 0x00ad8005 },
{ 0x00a02048, 0x24003e2c, 0x00ad8001, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8002, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8003, 0x00140014 },
{ 0x00a02048, 0xb8003e2d, 0x00ad8004, 0xfffbfffb },
{ 0x00a02040, 0x2400462c, 0x00ad8040, 0x00ad8045 },
{ 0x00a02048, 0x24003e2c, 0x00ad8041, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8042, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8043, 0x00140014 },
{ 0x00a02048, 0xb8403e2d, 0x00ad8044, 0xfffbfffb },
{ 0x00a02040, 0x2400462c, 0x00ad8080, 0x00ad8085 },
{ 0x00a02048, 0x24003e2c, 0x00ad8081, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8082, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8083, 0x00140014 },
{ 0x00a02048, 0xb8803e2d, 0x00ad8084, 0xfffbfffb },
{ 0x00600040, 0x2400462c, 0x008d80c0, 0x008d80c5 },
{ 0x00600048, 0x24003e2c, 0x008d80c1, 0xfffbfffb },
{ 0x00600048, 0x24003e2c, 0x008d80c2, 0x00140014 },
{ 0x00600048, 0x24003e2c, 0x008d80c3, 0x00140014 },
{ 0x00600048, 0xb8c03e2d, 0x008d80c4, 0xfffbfffb },
{ 0x00000401, 0x22000060, 0x00000000, 0x04a00480 },
{ 0x00000c01, 0x22040060, 0x00000000, 0x04a00490 },
{ 0x00010802, 0x220c2d28, 0x00000454, 0x04800480 },
{ 0x00a02040, 0x24003dac, 0x00b18000, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x01ed8800, 0xfffbfffb },
{ 0x00800048, 0x24203dac, 0x01ed8820, 0xfffbfffb },
{ 0x00a02048, 0x24003dac, 0x00b18020, 0x00140014 },
{ 0x00800048, 0x24003dac, 0x01ed8820, 0x00140014 },
{ 0x00800048, 0x24203dac, 0x01ed8840, 0x00140014 },
{ 0x00a02048, 0x24003dac, 0x00b18040, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed8840, 0x00010001 },
{ 0x00800048, 0x24203dac, 0x01ed8860, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x000a000a },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x000a000a },
{ 0x00a02040, 0x24003dac, 0x00b18040, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x01ed8840, 0xfffbfffb },
{ 0x00800048, 0x24203dac, 0x01ed8860, 0xfffbfffb },
{ 0x00a02048, 0x24003dac, 0x00b18060, 0x00140014 },
{ 0x00800048, 0x24003dac, 0x01ed8860, 0x00140014 },
{ 0x00800048, 0x24203dac, 0x01ed8880, 0x00140014 },
{ 0x00a02048, 0x24003dac, 0x00b18080, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed8880, 0x00010001 },
{ 0x00800048, 0x24203dac, 0x01ed88a0, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x000a000a },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x000a000a },
{ 0x00010220, 0x34001c00, 0x00001400, 0x000000b4 },
{ 0x01000010, 0x20003db0, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000004c },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000004a },
{ 0x00400040, 0x22003d28, 0x0069044c, 0xfffefffe },
{ 0x03400010, 0x20003dac, 0x00000446, 0x00020002 },
{ 0x01000010, 0x20003db0, 0x02000444, 0x00020002 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00100010 },
{ 0x01000010, 0x20003dac, 0x00000446, 0x00000000 },
{ 0x00010002, 0x220c2d28, 0x02000454, 0x04800480 },
{ 0x00800040, 0x24003e2c, 0x01ed8000, 0x00100010 },
{ 0x00800040, 0x24203e2c, 0x01ed8020, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8001, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8021, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8002, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8022, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8003, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8023, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8004, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8024, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8005, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8025, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x00050005 },
{ 0x00800040, 0x24003e2c, 0x01ed8040, 0x00100010 },
{ 0x00800040, 0x24203e2c, 0x01ed8060, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8041, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8061, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8042, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8062, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8043, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8063, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8044, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8064, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8045, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8065, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000062 },
{ 0x01000010, 0x20003db0, 0x00000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000042 },
{ 0x00200401, 0x22000128, 0x0066044c, 0x00000000 },
{ 0x00200c01, 0x22040128, 0x0045044e, 0x00000000 },
{ 0x00000801, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x03400010, 0x20003dac, 0x02000444, 0x00020002 },
{ 0x01000010, 0x20003dac, 0x00000444, 0x00000000 },
{ 0x00410040, 0x22002d08, 0x02690200, 0x00010001 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00110001, 0x220c0168, 0x02000000, 0x04800480 },
{ 0x00a02040, 0x24003e2c, 0x00ad83e0, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8be0, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8800, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8800, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8820, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8020, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8820, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8840, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x00050005 },
{ 0x00a02040, 0x24003e2c, 0x00ad8020, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8820, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8840, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8040, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8840, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8860, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8060, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8860, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8880, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001c },
{ 0x00200401, 0x22000128, 0x0045044c, 0x00000000 },
{ 0x00000801, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x01200010, 0x20003dac, 0x00000444, 0x00030003 },
{ 0x01200010, 0x20003dac, 0x02000446, 0x00030003 },
{ 0x00210040, 0x22002d08, 0x00450200, 0x00010001 },
{ 0x00210040, 0x22002d08, 0x02450200, 0x00100010 },
{ 0x00800001, 0xb8000229, 0x01ed8000, 0x00000000 },
{ 0x00800001, 0xb8200229, 0x01ed8020, 0x00000000 },
{ 0x00800001, 0xb8400229, 0x01ed8040, 0x00000000 },
{ 0x00800001, 0xb8600229, 0x01ed8060, 0x00000000 },
{ 0x80800042, 0xd8004631, 0x00d29800, 0x00d20480 },
{ 0x80800042, 0xd8204631, 0x00d29820, 0x00d204a0 },
{ 0x80800042, 0xd8404631, 0x00d29840, 0x00d204c0 },
{ 0x80800042, 0xd8604631, 0x00d29860, 0x00d204e0 },
{ 0x00600001, 0x220001ac, 0x008d0024, 0x00000000 },
{ 0x00200040, 0x244c3dad, 0x00450448, 0xfff8fff8 },
{ 0x00000401, 0x220001ec, 0x00000000, 0x07000700 },
{ 0x00000c01, 0x220201e8, 0x00000000, 0x07100710 },
{ 0x00000801, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00000441, 0x254635ad, 0x00000448, 0x0000044a },
{ 0x00000c41, 0x254025ad, 0x0000444c, 0x0000444e },
{ 0x00000c41, 0x254225ad, 0x00000448, 0x0000444e },
{ 0x00000841, 0x254435ad, 0x0000444c, 0x0000044a },
{ 0x00200040, 0x244c3d09, 0x00450200, 0x00100010 },
{ 0x00800041, 0x24002628, 0x00ad8000, 0x00000540 },
{ 0x00800041, 0x24202628, 0x00ad8020, 0x00000540 },
{ 0x00800048, 0x24002628, 0x00ad8002, 0x00000542 },
{ 0x00800048, 0x24202628, 0x00ad8022, 0x00000542 },
{ 0x00200001, 0x22000128, 0x0045044c, 0x00000000 },
{ 0x00800048, 0x24002628, 0x01ed8000, 0x00000544 },
{ 0x00800048, 0x24202628, 0x01ed8020, 0x00000544 },
{ 0x00800048, 0xbc002629, 0x01ed8002, 0x00000546 },
{ 0x00801048, 0xbc202629, 0x01ed8022, 0x00000546 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000126 },
{ 0x00000001, 0x20220169, 0x00000000, 0x00040004 },
{ 0x00200005, 0x24443dad, 0x00459800, 0x00030003 },
{ 0x0020000c, 0x24403dad, 0x00459800, 0x00020002 },
{ 0x01600006, 0x20003dac, 0x02000446, 0x00000000 },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00200000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00500000 },
{ 0x00310040, 0x20401da5, 0x02450440, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x00080008 },
{ 0x00010040, 0x20401da5, 0x02000440, 0xfffffffe },
{ 0x00010001, 0x204401a5, 0x02000442, 0x00000000 },
{ 0x00010001, 0x20480061, 0x02000000, 0x00030008 },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x00000078, 0x00100010 },
{ 0x0020040c, 0x24403dad, 0x00459800, 0x00030003 },
{ 0x00200805, 0x24483dad, 0x00459800, 0x00070007 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00000009, 0x20403ca5, 0x00000040, 0x00010001 },
{ 0x00000001, 0x20480061, 0x00000000, 0x00020005 },
{ 0x02600031, 0x27000021, 0x408d0040, 0x00000200 },
{ 0x00110001, 0x220001ec, 0x02000000, 0x05820582 },
{ 0x00010001, 0x220001ec, 0x02000000, 0x05620562 },
{ 0x00000001, 0x220e0128, 0x00000454, 0x00000000 },
{ 0x01800006, 0x200035ac, 0x02000446, 0x00000444 },
{ 0x00410001, 0xbc000229, 0x02698000, 0x00000000 },
{ 0x00410001, 0xbc100229, 0x02698010, 0x00000000 },
{ 0x00410001, 0xbc200229, 0x02698020, 0x00000000 },
{ 0x00410001, 0xbc300229, 0x02698030, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000be },
{ 0x00600001, 0x2024018d, 0x008d0200, 0x00000000 },
{ 0x01000041, 0x245e35ad, 0x00000446, 0x00000444 },
{ 0x02000005, 0x20003db0, 0x0200045e, 0x00010001 },
{ 0x00000040, 0x22022d08, 0x00000200, 0x00100010 },
{ 0x00200040, 0x22042d08, 0x00450200, 0x00200020 },
{ 0x00400001, 0x244c0109, 0x00690200, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000044 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000042 },
{ 0x00000040, 0x22003d08, 0x00000200, 0xffdeffde },
{ 0x00000440, 0x22023d08, 0x00000202, 0xffeeffee },
{ 0x00000801, 0x220c0060, 0x00000000, 0x04d004c0 },
{ 0x01000010, 0x20003db0, 0x0000045e, 0x00040004 },
{ 0x00802040, 0x2400462c, 0x00a98000, 0x00a98005 },
{ 0x00802048, 0x24003e2c, 0x00a98001, 0xfffbfffb },
{ 0x00802048, 0x24003e2c, 0x00a98002, 0x00140014 },
{ 0x00802048, 0x24003e2c, 0x00a98003, 0x00140014 },
{ 0x00802048, 0xb8003e2d, 0x00a98004, 0xfffbfffb },
{ 0x00802040, 0x2400462c, 0x00a98040, 0x00a98045 },
{ 0x00802048, 0x24003e2c, 0x00a98041, 0xfffbfffb },
{ 0x00802048, 0x24003e2c, 0x00a98042, 0x00140014 },
{ 0x00802048, 0x24003e2c, 0x00a98043, 0x00140014 },
{ 0x00802048, 0xb8203e2d, 0x00a98044, 0xfffbfffb },
{ 0x00400040, 0x2400462c, 0x00698080, 0x00698085 },
{ 0x00400048, 0x24003e2c, 0x00698081, 0xfffbfffb },
{ 0x00400048, 0x24003e2c, 0x00698082, 0x00140014 },
{ 0x00400048, 0x24003e2c, 0x00698083, 0x00140014 },
{ 0x00400048, 0xb8403e2d, 0x00698084, 0xfffbfffb },
{ 0x00000401, 0x220c0060, 0x00000000, 0x04e004d0 },
{ 0x00000c01, 0x22000060, 0x00000000, 0x04d004c8 },
{ 0x00000c01, 0x22040060, 0x00000000, 0x04e004d8 },
{ 0x00000801, 0x22080060, 0x00000000, 0x04f004e8 },
{ 0x00800040, 0x24003dac, 0x00b104c0, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x00b104e0, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed9800, 0x00140014 },
{ 0x00010001, 0x220c0168, 0x00000000, 0x05400540 },
{ 0x00110001, 0x220c0168, 0x00000000, 0x04c004c0 },
{ 0x00800048, 0x24003dac, 0x01e98000, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01e98020, 0x00010001 },
{ 0x00800048, 0x24003dac, 0x01e98800, 0x00140014 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x000a000a },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000060 },
{ 0x01000010, 0x20003db0, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000022 },
{ 0x00400040, 0x22003d28, 0x0069044c, 0xfffefffe },
{ 0x03400010, 0x20003dac, 0x00000446, 0x00020002 },
{ 0x01000010, 0x20003db0, 0x02000444, 0x00020002 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00100010 },
{ 0x01000010, 0x20003dac, 0x00000446, 0x00000000 },
{ 0x00010001, 0x220e0168, 0x02000000, 0x05400540 },
{ 0x00110001, 0x220e0168, 0x02000000, 0x04c004c0 },
{ 0x00800040, 0x24003e2c, 0x01e98000, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01e98001, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e98002, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98003, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98004, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e98005, 0x00010001 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000036 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000036 },
{ 0x01000010, 0x20003db0, 0x00000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x03600010, 0x20003dac, 0x02000444, 0x00020002 },
{ 0x00400401, 0x22000128, 0x0069044c, 0x00000000 },
{ 0x00400840, 0x22083d2c, 0x0069044c, 0x00100010 },
{ 0x00610040, 0x22002d08, 0x02690200, 0x00010001 },
{ 0x01000010, 0x20003dac, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00800040, 0x24003e2c, 0x01e983e0, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01e98000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98020, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e993e0, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e99000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e99020, 0x00010001 },
{ 0x00000001, 0x220e0168, 0x00000000, 0x05400540 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00110001, 0x220e0168, 0x02000000, 0x04c004c0 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000e },
{ 0x00400001, 0x22000128, 0x0069044c, 0x00000000 },
{ 0x01400010, 0x20003dac, 0x00000444, 0x00030003 },
{ 0x01400010, 0x20003dac, 0x02000446, 0x00030003 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00010001 },
{ 0x00410040, 0x22002d08, 0x02690200, 0x00100010 },
{ 0x00800001, 0x25400229, 0x01e98000, 0x00000000 },
{ 0x80800042, 0x45404631, 0x00d20540, 0x00d204c0 },
{ 0x00000001, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x00400001, 0xd8000231, 0x008a0540, 0x00000000 },
{ 0x00400001, 0xd8100231, 0x008a0548, 0x00000000 },
{ 0x00400001, 0xd8200231, 0x008a0550, 0x00000000 },
{ 0x00400001, 0xd8300231, 0x008a0558, 0x00000000 },
{ 0x00600001, 0x220001ac, 0x008d0024, 0x00000000 },
{ 0x00200040, 0x244c3dad, 0x00450448, 0xfff8fff8 },
{ 0x00000401, 0x220001ec, 0x00000000, 0x07000700 },
{ 0x00000801, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00000441, 0x254635ad, 0x00000448, 0x0000044a },
{ 0x00000c41, 0x254025ad, 0x0000444c, 0x0000444e },
{ 0x00000c41, 0x254225ad, 0x00000448, 0x0000444e },
{ 0x00000841, 0x254435ad, 0x0000444c, 0x0000044a },
{ 0x00600041, 0x24002628, 0x00898000, 0x00000540 },
{ 0x00600048, 0x24002628, 0x00898002, 0x00000542 },
{ 0x00600048, 0x24002628, 0x00898008, 0x00000544 },
{ 0x00600048, 0x2540262d, 0x0089800a, 0x00000546 },
{ 0x00400401, 0xbc0001a9, 0x00690540, 0x00000000 },
{ 0x00400801, 0xbc1001a9, 0x00690548, 0x00000000 },
{ 0x01000010, 0x20003d2c, 0x00000022, 0x00030003 },
{ 0x01000040, 0x20223d29, 0x02000022, 0xffffffff },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0x00080008 },
{ 0x00110040, 0x24540c21, 0x00000454, 0x00080008 },
{ 0x00010040, 0x24540c21, 0x00000454, 0x00180038 },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffee6 },
{ 0x01800010, 0x20003dac, 0x0200010e, 0x00010001 },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0xffe0ffe0 },
{ 0x00010001, 0x24540061, 0x02000000, 0x06c00640 },
{ 0x00110001, 0x24540061, 0x02000000, 0x04800780 },
{ 0x00000001, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00800040, 0x24003dac, 0x00b19c00, 0x00200020 },
{ 0x00800040, 0x24203dac, 0x00b19c20, 0x00200020 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00060006 },
{ 0x8080000c, 0xdc203d91, 0x00b10420, 0x00060006 },
{ 0x02000040, 0x210e3d29, 0x0200010e, 0xffffffff },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0x00040004 },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffcf8 },
{ 0x01000005, 0x25643e2d, 0x00000060, 0x00c000c0 },
{ 0x01000010, 0x20003dac, 0x02000458, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x01000010, 0x20003dac, 0x00000458, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00a02001, 0x46400231, 0x00d20780, 0x00000000 },
{ 0x00a02001, 0x46800231, 0x00d207c0, 0x00000000 },
{ 0x00a02001, 0x46c00231, 0x00d20480, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000007e },
{ 0x80a02042, 0x46404631, 0x00d20640, 0x00d20780 },
{ 0x80a02042, 0x46804631, 0x00d20680, 0x00d207c0 },
{ 0x80a02042, 0x46c04631, 0x00d206c0, 0x00d20480 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000076 },
{ 0x01000010, 0x20003dac, 0x02000564, 0x00800080 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x0000000e },
{ 0x01000010, 0x20003dac, 0x00000458, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xffffffe4 },
{ 0x00200401, 0x256801ed, 0x00000000, 0x00200020 },
{ 0x00200801, 0x256c01ed, 0x00000000, 0x00060006 },
{ 0x00400001, 0x258001ed, 0x00000000, 0x00000000 },
{ 0x00600001, 0x45a001ad, 0x00058c00, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000028 },
{ 0x02600005, 0x20006e28, 0x02008c0c, 0x88848421 },
{ 0x0220000c, 0x25663dad, 0x00000458, 0x00010001 },
{ 0x0000000c, 0x25643dad, 0x00000564, 0x00060006 },
{ 0x00310001, 0x25c401ad, 0x00000458, 0x00000000 },
{ 0x00210001, 0x25c00061, 0x00000000, 0x00010001 },
{ 0x00310040, 0x25c03dad, 0x004545c4, 0x00010001 },
{ 0x00610001, 0x25a00061, 0x02000000, 0x00000080 },
{ 0x00710001, 0x45a002ad, 0x02ae8c00, 0x00000000 },
{ 0x00710001, 0x45a202ad, 0x02ae8c01, 0x00000000 },
{ 0x00800041, 0x25a035ad, 0x00b105a0, 0x000905c0 },
{ 0x01200010, 0x20003e2c, 0x0245006e, 0x00000000 },
{ 0x00310009, 0x244c45ad, 0x02000564, 0x0045006e },
{ 0x00210001, 0x244c01ed, 0x02000000, 0x00000000 },
{ 0x0031000c, 0x244c3dad, 0x0245044c, 0x00010001 },
{ 0x00200009, 0x256835ad, 0x0045044c, 0x00000566 },
{ 0x00210040, 0x256835ad, 0x02450568, 0x00000566 },
{ 0x00200040, 0x256c362d, 0x0045006e, 0x00000566 },
{ 0x00400040, 0x240035ac, 0x00ab05a2, 0x00ab05a6 },
{ 0x00400040, 0x2400358c, 0x00690400, 0x00000566 },
{ 0x0040000c, 0x2580358d, 0x00690400, 0x00000566 },
{ 0x00800041, 0x2400362c, 0x00d20640, 0x000005a0 },
{ 0x00800041, 0x2420362c, 0x00d20660, 0x000005a0 },
{ 0x00800048, 0x2400362c, 0x00d20780, 0x000005a4 },
{ 0x00800048, 0x2420362c, 0x00d207a0, 0x000005a4 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00000568 },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x00000568 },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056c },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056c },
{ 0x80800040, 0x464035b1, 0x00b104c0, 0x00000580 },
{ 0x80800040, 0x466035b1, 0x00b104e0, 0x00000580 },
{ 0x00800041, 0x2400362c, 0x00d20680, 0x000005a0 },
{ 0x00800041, 0x2420362c, 0x00d206a0, 0x000005a0 },
{ 0x00800048, 0x2400362c, 0x00d207c0, 0x000005a4 },
{ 0x00800048, 0x2420362c, 0x00d207e0, 0x000005a4 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00000568 },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x00000568 },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056c },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056c },
{ 0x80800040, 0x468035b1, 0x00b104c0, 0x00000580 },
{ 0x80800040, 0x46a035b1, 0x00b104e0, 0x00000580 },
{ 0x00800041, 0x2400362c, 0x00d206c0, 0x000705a8 },
{ 0x00800041, 0x2420362c, 0x00d206e0, 0x000705a8 },
{ 0x00800048, 0x2400362c, 0x00d20480, 0x000705ac },
{ 0x00800048, 0x2420362c, 0x00d204a0, 0x000705ac },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x0000056a },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x0000056a },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056e },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056e },
{ 0x80800040, 0x46c035b1, 0x00b104c0, 0x00050582 },
{ 0x80800040, 0x46e035b1, 0x00b104e0, 0x00050582 },
{ 0x01800005, 0x20003d2c, 0x02000020, 0x00020002 },
{ 0x80800040, 0xd00045b1, 0x00b19000, 0x00d20640 },
{ 0x80800040, 0xd02045b1, 0x00b19020, 0x00d20660 },
{ 0x80800040, 0xd04045b1, 0x00b19040, 0x00d20680 },
{ 0x80800040, 0xd06045b1, 0x00b19060, 0x00d206a0 },
{ 0x00000040, 0x22083d8c, 0x00000208, 0x00800080 },
{ 0x80400040, 0xd40045b1, 0x00699400, 0x00ab06c0 },
{ 0x80400040, 0xd48045b1, 0x00699480, 0x00ab06c2 },
{ 0x80400040, 0xd42045b1, 0x00699420, 0x00ab06e0 },
{ 0x80400040, 0xd4a045b1, 0x006994a0, 0x00ab06e2 },
{ 0x80400040, 0xd41045b1, 0x00699410, 0x00ab06d0 },
{ 0x80400040, 0xd49045b1, 0x00699490, 0x00ab06d2 },
{ 0x80400040, 0xd43045b1, 0x00699430, 0x00ab06f0 },
{ 0x80400040, 0xd4b045b1, 0x006994b0, 0x00ab06f2 },
{ 0x00000040, 0x220a3d8c, 0x0000020a, 0x00080008 },
{ 0x00110040, 0x220a3d8c, 0x0200020a, 0x00300030 },
{ 0x01000010, 0x20003d2c, 0x02000020, 0x00060006 },
{ 0x00000040, 0x20203d29, 0x00000020, 0x00020002 },
{ 0x00000040, 0x22040c00, 0x00000204, 0x00100001 },
{ 0x00000040, 0x220c358c, 0x0000020c, 0x0000003a },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffc36 },
{ 0x00000001, 0x220001ec, 0x00000000, 0x01400140 },
{ 0x00000001, 0x220201ec, 0x00000000, 0x01c001c0 },
{ 0x00800401, 0x20400236, 0x01ee8000, 0x00000000 },
{ 0x00800801, 0x20500236, 0x01ee8010, 0x00000000 },
{ 0x00800401, 0x20600236, 0x01ee8020, 0x00000000 },
{ 0x00800801, 0x20700236, 0x01ee8030, 0x00000000 },
{ 0x00800401, 0x20800236, 0x01ee8040, 0x00000000 },
{ 0x00800801, 0x20900236, 0x01ee8050, 0x00000000 },
{ 0x00800401, 0x20a00236, 0x01ee8060, 0x00000000 },
{ 0x00800801, 0x20b00236, 0x01ee8070, 0x00000000 },
{ 0x00800401, 0x20c00236, 0x01ee8100, 0x00000000 },
{ 0x00800801, 0x20d00236, 0x01ee8110, 0x00000000 },
{ 0x00800401, 0x20e00236, 0x01ee8120, 0x00000000 },
{ 0x00800801, 0x20f00236, 0x01ee8130, 0x00000000 },
{ 0x00800401, 0x21000236, 0x01ee8140, 0x00000000 },
{ 0x00800801, 0x21100236, 0x01ee8150, 0x00000000 },
{ 0x00800401, 0x21200236, 0x01ee8160, 0x00000000 },
{ 0x00800801, 0x21300236, 0x01ee8170, 0x00000000 },
{ 0x00200401, 0x204001a5, 0x00450064, 0x00000000 },
{ 0x00000801, 0x20480061, 0x00000000, 0x000f000f },
{ 0x01600031, 0x21401c21, 0x508d0040, 0x1218a000 },
{ 0x00000001, 0x220001ec, 0x00000000, 0x03400340 },
{ 0x00800401, 0x41600236, 0x00d28000, 0x00000000 },
{ 0x00800801, 0x41610236, 0x00d28080, 0x00000000 },
{ 0x00800401, 0x41800236, 0x00d28020, 0x00000000 },
{ 0x00800801, 0x41810236, 0x00d280a0, 0x00000000 },
{ 0x00800401, 0x41a00236, 0x00d28040, 0x00000000 },
{ 0x00800801, 0x41a10236, 0x00d280c0, 0x00000000 },
{ 0x00800401, 0x41c00236, 0x00d28060, 0x00000000 },
{ 0x00800801, 0x41c10236, 0x00d280e0, 0x00000000 },
{ 0x0000040c, 0x20443ca5, 0x00000044, 0x00010001 },
{ 0x00000801, 0x20480061, 0x00000000, 0x0007000f },
{ 0x0a600031, 0x21601c21, 0x508d0040, 0x0a18a001 },
{ 0x00000001, 0x21400021, 0x00000140, 0x00000000 },
{ 0x00000001, 0x21600021, 0x00000160, 0x00000000 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x00600001, 0x20400021, 0x008d0000, 0x00000000 },
{ 0x00000005, 0x20203e2d, 0x00000061, 0x001f001f },
{ 0x00200009, 0x20643e2d, 0x00450064, 0x00040004 },
{ 0x00000001, 0x203a01ed, 0x00000000, 0x00000000 },
{ 0x01000010, 0x20003dac, 0x00000020, 0x00160016 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x01200010, 0x20003e2c, 0x0200006c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000024 },
{ 0x00800009, 0x25403dad, 0x00050064, 0x00020002 },
{ 0x00000001, 0x203a01ed, 0x00000000, 0x00180018 },
{ 0x00200040, 0x45483dad, 0x00660548, 0x00100010 },
{ 0x00200040, 0x45523dad, 0x00660552, 0x00100010 },
{ 0x00400040, 0x25583dad, 0x00690558, 0x00100010 },
{ 0x00800040, 0x208035ad, 0x00b10080, 0x00b10540 },
{ 0x00600040, 0x45403dad, 0x00ae0540, 0x00200020 },
{ 0x00800040, 0x20a035ad, 0x00b100a0, 0x00b10540 },
{ 0x00600040, 0x45423dad, 0x00ae0542, 0x00200020 },
{ 0x00800040, 0x20e035ad, 0x00b100e0, 0x00b10540 },
{ 0x00600040, 0x45403dad, 0x00ae0540, 0xffe0ffe0 },
{ 0x00800040, 0x20c035ad, 0x00b100c0, 0x00b10540 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x06600010, 0x20003dac, 0x02000020, 0x00030003 },
{ 0x00000001, 0x206c0171, 0x00000000, 0x00000000 },
{ 0x00610001, 0x208000a5, 0x02050080, 0x00000000 },
{ 0x00610001, 0x212000a5, 0x02090100, 0x00000000 },
{ 0x00410001, 0x211000a5, 0x02690100, 0x00000000 },
{ 0x00200009, 0x25403dad, 0x00450064, 0x00020002 },
{ 0x00800040, 0x208035ad, 0x00b10080, 0x00050540 },
{ 0x00200040, 0x40883dad, 0x00660088, 0x00200020 },
{ 0x00200040, 0x40923dad, 0x00660092, 0x00200020 },
{ 0x00400040, 0x20983dad, 0x00690098, 0x00200020 },
{ 0x00200401, 0x22080060, 0x00000000, 0x03400140 },
{ 0x00000c01, 0x220c0060, 0x00000000, 0x04400080 },
{ 0x00000801, 0x22040060, 0x00000000, 0x01000070 },
{ 0x00000005, 0x203e2e29, 0x00000063, 0x00010001 },
{ 0x00000001, 0x20200169, 0x00000000, 0x00000000 },
{ 0x0000000c, 0x2458262d, 0x0000006d, 0x00000020 },
{ 0x00000001, 0x210e0169, 0x00000000, 0x00010001 },
{ 0x00000005, 0x24583dad, 0x00000458, 0x00030003 },
{ 0x01000010, 0x200035ac, 0x0000010e, 0x00000458 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000316 },
{ 0x01000010, 0x20003dac, 0x0200010e, 0x00010001 },
{ 0x00010401, 0x24540061, 0x02000000, 0x06c00640 },
{ 0x00010805, 0x245a3e2d, 0x02008800, 0x007f007f },
{ 0x00110401, 0x24540061, 0x02000000, 0x04800780 },
{ 0x00110805, 0x245a3e2d, 0x02008804, 0x007f007f },
{ 0x00010005, 0x245c3e2d, 0x02008800, 0x00800080 },
{ 0x00110005, 0x245c3e2d, 0x02008804, 0x00800080 },
{ 0x00000009, 0x245c3dad, 0x0000045c, 0x00010001 },
{ 0x0000000c, 0x211e362d, 0x0000006c, 0x00000020 },
{ 0x00000040, 0x240035ac, 0x0000003e, 0x0000045c },
{ 0x01000010, 0x20003d8c, 0x00210400, 0x00010001 },
{ 0x01000010, 0x20003d8c, 0x02210400, 0x01000100 },
{ 0x00000001, 0x203c01ed, 0x00000000, 0x00000000 },
{ 0x00010001, 0x203c01ed, 0x00000000, 0x00020002 },
{ 0x00010001, 0x203c01ed, 0x02000000, 0xfffefffe },
{ 0x00000040, 0x20780d21, 0x0000045a, 0x0208e602 },
{ 0x00000040, 0x20782421, 0x00000078, 0x0000045c },
{ 0x02000005, 0x20003dac, 0x0200011e, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000001c0 },
{ 0x01000005, 0x20003dac, 0x00009800, 0x00030003 },
{ 0x00200005, 0x24443dad, 0x00459800, 0x00030003 },
{ 0x0020000c, 0x24403dad, 0x00459800, 0x00020002 },
{ 0x01600006, 0x20003dac, 0x02000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000012 },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00400000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00700000 },
{ 0x00310040, 0x20401da5, 0x02450440, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x000c000c },
{ 0x00010040, 0x20401da5, 0x02000440, 0xfffffffe },
{ 0x00010001, 0x204401a5, 0x02000442, 0x00000000 },
{ 0x00010001, 0x20480061, 0x02000000, 0x0007000c },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00200000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00400000 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00110040, 0x20441da5, 0x02000442, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x000c0007 },
{ 0x00010001, 0x20480061, 0x02000000, 0x00070007 },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000040, 0xb80235ad, 0x00009802, 0x0000003c },
{ 0x0020040c, 0x24403dad, 0x00459800, 0x00030003 },
{ 0x00200805, 0x24483dad, 0x00459800, 0x00070007 },
{ 0x01600006, 0x20003dac, 0x0000044a, 0x00000000 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00000009, 0x20403ca5, 0x00000040, 0x00010001 },
{ 0x00010040, 0x22000c20, 0x00000078, 0x00200010 },
{ 0x00110040, 0x22000c20, 0x00000078, 0x00300010 },
{ 0x00010001, 0x20480061, 0x00000000, 0x00030009 },
{ 0x00110001, 0x20480061, 0x00000000, 0x00040009 },
{ 0x02600031, 0x27000021, 0x408d0040, 0x00000200 },
{ 0x01000005, 0x20003dac, 0x00009800, 0x00030003 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000001a },
{ 0x00600001, 0x26220231, 0x008d05c0, 0x00000000 },
{ 0x00600401, 0x26120231, 0x008d05b8, 0x00000000 },
{ 0x00600801, 0x26020231, 0x008d05b0, 0x00000000 },
{ 0x00600401, 0x25f20231, 0x008d05a8, 0x00000000 },
{ 0x00600801, 0x25e20231, 0x008d05a0, 0x00000000 },
{ 0x00600401, 0x25d20231, 0x008d0598, 0x00000000 },
{ 0x00600801, 0x25c20231, 0x008d0590, 0x00000000 },
{ 0x00600401, 0x25b20231, 0x008d0588, 0x00000000 },
{ 0x00600801, 0x25a20231, 0x008d0580, 0x00000000 },
{ 0x00600401, 0x25920231, 0x008d0578, 0x00000000 },
{ 0x00600801, 0x25820231, 0x008d0570, 0x00000000 },
{ 0x00600001, 0x25720231, 0x008d0568, 0x00000000 },
{ 0x00600001, 0x25620231, 0x008d0560, 0x00000000 },
{ 0x00110001, 0x220001ec, 0x02000000, 0x05820582 },
{ 0x00010001, 0x220001ec, 0x02000000, 0x05620562 },
{ 0x00000001, 0x220e0128, 0x00000454, 0x00000000 },
{ 0x01800006, 0x200035ac, 0x02000446, 0x00000444 },
{ 0x00810001, 0xbc000229, 0x02ad8000, 0x00000000 },
{ 0x00810001, 0xbc200229, 0x02ad8020, 0x00000000 },
{ 0x00810001, 0xbc400229, 0x02ad8040, 0x00000000 },
{ 0x00810001, 0xbc600229, 0x02ad8060, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000012a },
{ 0x00600001, 0x2024018d, 0x008d0200, 0x00000000 },
{ 0x01000041, 0x245e35ad, 0x00000446, 0x00000444 },
{ 0x00000040, 0x22022d08, 0x00000200, 0x00100010 },
{ 0x02000005, 0x20003db0, 0x0200045e, 0x00010001 },
{ 0x00200040, 0x22042d08, 0x00450200, 0x00200020 },
{ 0x00400001, 0x244c0109, 0x00690200, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000066 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000064 },
{ 0x00000040, 0x22003d08, 0x00000200, 0xffdeffde },
{ 0x00000440, 0x22023d08, 0x00000202, 0xffeeffee },
{ 0x00000801, 0x220c0060, 0x00000000, 0x04a00480 },
{ 0x01000010, 0x20003db0, 0x0000045e, 0x00040004 },
{ 0x00a02040, 0x2400462c, 0x00ad8000, 0x00ad8005 },
{ 0x00a02048, 0x24003e2c, 0x00ad8001, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8002, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8003, 0x00140014 },
{ 0x00a02048, 0xb8003e2d, 0x00ad8004, 0xfffbfffb },
{ 0x00a02040, 0x2400462c, 0x00ad8040, 0x00ad8045 },
{ 0x00a02048, 0x24003e2c, 0x00ad8041, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8042, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8043, 0x00140014 },
{ 0x00a02048, 0xb8403e2d, 0x00ad8044, 0xfffbfffb },
{ 0x00a02040, 0x2400462c, 0x00ad8080, 0x00ad8085 },
{ 0x00a02048, 0x24003e2c, 0x00ad8081, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8082, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8083, 0x00140014 },
{ 0x00a02048, 0xb8803e2d, 0x00ad8084, 0xfffbfffb },
{ 0x00600040, 0x2400462c, 0x008d80c0, 0x008d80c5 },
{ 0x00600048, 0x24003e2c, 0x008d80c1, 0xfffbfffb },
{ 0x00600048, 0x24003e2c, 0x008d80c2, 0x00140014 },
{ 0x00600048, 0x24003e2c, 0x008d80c3, 0x00140014 },
{ 0x00600048, 0xb8c03e2d, 0x008d80c4, 0xfffbfffb },
{ 0x00000401, 0x22000060, 0x00000000, 0x04a00480 },
{ 0x00000c01, 0x22040060, 0x00000000, 0x04a00490 },
{ 0x00010802, 0x220c2d28, 0x00000454, 0x04800480 },
{ 0x00a02040, 0x24003dac, 0x00b18000, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x01ed8800, 0xfffbfffb },
{ 0x00800048, 0x24203dac, 0x01ed8820, 0xfffbfffb },
{ 0x00a02048, 0x24003dac, 0x00b18020, 0x00140014 },
{ 0x00800048, 0x24003dac, 0x01ed8820, 0x00140014 },
{ 0x00800048, 0x24203dac, 0x01ed8840, 0x00140014 },
{ 0x00a02048, 0x24003dac, 0x00b18040, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed8840, 0x00010001 },
{ 0x00800048, 0x24203dac, 0x01ed8860, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x000a000a },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x000a000a },
{ 0x00a02040, 0x24003dac, 0x00b18040, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x01ed8840, 0xfffbfffb },
{ 0x00800048, 0x24203dac, 0x01ed8860, 0xfffbfffb },
{ 0x00a02048, 0x24003dac, 0x00b18060, 0x00140014 },
{ 0x00800048, 0x24003dac, 0x01ed8860, 0x00140014 },
{ 0x00800048, 0x24203dac, 0x01ed8880, 0x00140014 },
{ 0x00a02048, 0x24003dac, 0x00b18080, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed8880, 0x00010001 },
{ 0x00800048, 0x24203dac, 0x01ed88a0, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x000a000a },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x000a000a },
{ 0x00010220, 0x34001c00, 0x00001400, 0x000000b4 },
{ 0x01000010, 0x20003db0, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000004c },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000004a },
{ 0x00400040, 0x22003d28, 0x0069044c, 0xfffefffe },
{ 0x03400010, 0x20003dac, 0x00000446, 0x00020002 },
{ 0x01000010, 0x20003db0, 0x02000444, 0x00020002 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00100010 },
{ 0x01000010, 0x20003dac, 0x00000446, 0x00000000 },
{ 0x00010002, 0x220c2d28, 0x02000454, 0x04800480 },
{ 0x00800040, 0x24003e2c, 0x01ed8000, 0x00100010 },
{ 0x00800040, 0x24203e2c, 0x01ed8020, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8001, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8021, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8002, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8022, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8003, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8023, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8004, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8024, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8005, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8025, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x00050005 },
{ 0x00800040, 0x24003e2c, 0x01ed8040, 0x00100010 },
{ 0x00800040, 0x24203e2c, 0x01ed8060, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8041, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8061, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8042, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8062, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8043, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8063, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8044, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8064, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8045, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8065, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000062 },
{ 0x01000010, 0x20003db0, 0x00000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000042 },
{ 0x00200401, 0x22000128, 0x0066044c, 0x00000000 },
{ 0x00200c01, 0x22040128, 0x0045044e, 0x00000000 },
{ 0x00000801, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x03400010, 0x20003dac, 0x02000444, 0x00020002 },
{ 0x01000010, 0x20003dac, 0x00000444, 0x00000000 },
{ 0x00410040, 0x22002d08, 0x02690200, 0x00010001 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00110001, 0x220c0168, 0x02000000, 0x04800480 },
{ 0x00a02040, 0x24003e2c, 0x00ad83e0, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8be0, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8800, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8800, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8820, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8020, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8820, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8840, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x00050005 },
{ 0x00a02040, 0x24003e2c, 0x00ad8020, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8820, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8840, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8040, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8840, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8860, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8060, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8860, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8880, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001c },
{ 0x00200401, 0x22000128, 0x0045044c, 0x00000000 },
{ 0x00000801, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x01200010, 0x20003dac, 0x00000444, 0x00030003 },
{ 0x01200010, 0x20003dac, 0x02000446, 0x00030003 },
{ 0x00210040, 0x22002d08, 0x00450200, 0x00010001 },
{ 0x00210040, 0x22002d08, 0x02450200, 0x00100010 },
{ 0x00800001, 0xb8000229, 0x01ed8000, 0x00000000 },
{ 0x00800001, 0xb8200229, 0x01ed8020, 0x00000000 },
{ 0x00800001, 0xb8400229, 0x01ed8040, 0x00000000 },
{ 0x00800001, 0xb8600229, 0x01ed8060, 0x00000000 },
{ 0x80800042, 0xd8004631, 0x00d29800, 0x00d20480 },
{ 0x80800042, 0xd8204631, 0x00d29820, 0x00d204a0 },
{ 0x80800042, 0xd8404631, 0x00d29840, 0x00d204c0 },
{ 0x80800042, 0xd8604631, 0x00d29860, 0x00d204e0 },
{ 0x00600001, 0x220001ac, 0x008d0024, 0x00000000 },
{ 0x00200040, 0x244c3dad, 0x00450448, 0xfff8fff8 },
{ 0x00000401, 0x220001ec, 0x00000000, 0x07000700 },
{ 0x00000c01, 0x220201e8, 0x00000000, 0x07100710 },
{ 0x00000801, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00000441, 0x254635ad, 0x00000448, 0x0000044a },
{ 0x00000c41, 0x254025ad, 0x0000444c, 0x0000444e },
{ 0x00000c41, 0x254225ad, 0x00000448, 0x0000444e },
{ 0x00000841, 0x254435ad, 0x0000444c, 0x0000044a },
{ 0x00200040, 0x244c3d09, 0x00450200, 0x00100010 },
{ 0x00800041, 0x24002628, 0x00ad8000, 0x00000540 },
{ 0x00800041, 0x24202628, 0x00ad8020, 0x00000540 },
{ 0x00800048, 0x24002628, 0x00ad8002, 0x00000542 },
{ 0x00800048, 0x24202628, 0x00ad8022, 0x00000542 },
{ 0x00200001, 0x22000128, 0x0045044c, 0x00000000 },
{ 0x00800048, 0x24002628, 0x01ed8000, 0x00000544 },
{ 0x00800048, 0x24202628, 0x01ed8020, 0x00000544 },
{ 0x00800048, 0xbc002629, 0x01ed8002, 0x00000546 },
{ 0x00801048, 0xbc202629, 0x01ed8022, 0x00000546 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000128 },
{ 0x00000001, 0x20220169, 0x00000000, 0x00040004 },
{ 0x00200005, 0x24443dad, 0x00459800, 0x00030003 },
{ 0x0020000c, 0x24403dad, 0x00459800, 0x00020002 },
{ 0x01600006, 0x20003dac, 0x02000446, 0x00000000 },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00200000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00500000 },
{ 0x00310040, 0x20401da5, 0x02450440, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x00080008 },
{ 0x00010040, 0x20401da5, 0x02000440, 0xfffffffe },
{ 0x00010001, 0x204401a5, 0x02000442, 0x00000000 },
{ 0x00010001, 0x20480061, 0x02000000, 0x00030008 },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000040, 0xb80235ad, 0x00009802, 0x0000003c },
{ 0x00000040, 0x22000c20, 0x00000078, 0x00100010 },
{ 0x0020040c, 0x24403dad, 0x00459800, 0x00030003 },
{ 0x00200805, 0x24483dad, 0x00459800, 0x00070007 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00000009, 0x20403ca5, 0x00000040, 0x00010001 },
{ 0x00000001, 0x20480061, 0x00000000, 0x00020005 },
{ 0x02600031, 0x27000021, 0x408d0040, 0x00000200 },
{ 0x00110001, 0x220001ec, 0x02000000, 0x05820582 },
{ 0x00010001, 0x220001ec, 0x02000000, 0x05620562 },
{ 0x00000001, 0x220e0128, 0x00000454, 0x00000000 },
{ 0x01800006, 0x200035ac, 0x02000446, 0x00000444 },
{ 0x00410001, 0xbc000229, 0x02698000, 0x00000000 },
{ 0x00410001, 0xbc100229, 0x02698010, 0x00000000 },
{ 0x00410001, 0xbc200229, 0x02698020, 0x00000000 },
{ 0x00410001, 0xbc300229, 0x02698030, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000be },
{ 0x00600001, 0x2024018d, 0x008d0200, 0x00000000 },
{ 0x01000041, 0x245e35ad, 0x00000446, 0x00000444 },
{ 0x02000005, 0x20003db0, 0x0200045e, 0x00010001 },
{ 0x00000040, 0x22022d08, 0x00000200, 0x00100010 },
{ 0x00200040, 0x22042d08, 0x00450200, 0x00200020 },
{ 0x00400001, 0x244c0109, 0x00690200, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000044 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000042 },
{ 0x00000040, 0x22003d08, 0x00000200, 0xffdeffde },
{ 0x00000440, 0x22023d08, 0x00000202, 0xffeeffee },
{ 0x00000801, 0x220c0060, 0x00000000, 0x04d004c0 },
{ 0x01000010, 0x20003db0, 0x0000045e, 0x00040004 },
{ 0x00802040, 0x2400462c, 0x00a98000, 0x00a98005 },
{ 0x00802048, 0x24003e2c, 0x00a98001, 0xfffbfffb },
{ 0x00802048, 0x24003e2c, 0x00a98002, 0x00140014 },
{ 0x00802048, 0x24003e2c, 0x00a98003, 0x00140014 },
{ 0x00802048, 0xb8003e2d, 0x00a98004, 0xfffbfffb },
{ 0x00802040, 0x2400462c, 0x00a98040, 0x00a98045 },
{ 0x00802048, 0x24003e2c, 0x00a98041, 0xfffbfffb },
{ 0x00802048, 0x24003e2c, 0x00a98042, 0x00140014 },
{ 0x00802048, 0x24003e2c, 0x00a98043, 0x00140014 },
{ 0x00802048, 0xb8203e2d, 0x00a98044, 0xfffbfffb },
{ 0x00400040, 0x2400462c, 0x00698080, 0x00698085 },
{ 0x00400048, 0x24003e2c, 0x00698081, 0xfffbfffb },
{ 0x00400048, 0x24003e2c, 0x00698082, 0x00140014 },
{ 0x00400048, 0x24003e2c, 0x00698083, 0x00140014 },
{ 0x00400048, 0xb8403e2d, 0x00698084, 0xfffbfffb },
{ 0x00000401, 0x220c0060, 0x00000000, 0x04e004d0 },
{ 0x00000c01, 0x22000060, 0x00000000, 0x04d004c8 },
{ 0x00000c01, 0x22040060, 0x00000000, 0x04e004d8 },
{ 0x00000801, 0x22080060, 0x00000000, 0x04f004e8 },
{ 0x00800040, 0x24003dac, 0x00b104c0, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x00b104e0, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed9800, 0x00140014 },
{ 0x00010001, 0x220c0168, 0x00000000, 0x05400540 },
{ 0x00110001, 0x220c0168, 0x00000000, 0x04c004c0 },
{ 0x00800048, 0x24003dac, 0x01e98000, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01e98020, 0x00010001 },
{ 0x00800048, 0x24003dac, 0x01e98800, 0x00140014 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x000a000a },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000060 },
{ 0x01000010, 0x20003db0, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000022 },
{ 0x00400040, 0x22003d28, 0x0069044c, 0xfffefffe },
{ 0x03400010, 0x20003dac, 0x00000446, 0x00020002 },
{ 0x01000010, 0x20003db0, 0x02000444, 0x00020002 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00100010 },
{ 0x01000010, 0x20003dac, 0x00000446, 0x00000000 },
{ 0x00010001, 0x220e0168, 0x02000000, 0x05400540 },
{ 0x00110001, 0x220e0168, 0x02000000, 0x04c004c0 },
{ 0x00800040, 0x24003e2c, 0x01e98000, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01e98001, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e98002, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98003, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98004, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e98005, 0x00010001 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000036 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000036 },
{ 0x01000010, 0x20003db0, 0x00000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x03600010, 0x20003dac, 0x02000444, 0x00020002 },
{ 0x00400401, 0x22000128, 0x0069044c, 0x00000000 },
{ 0x00400840, 0x22083d2c, 0x0069044c, 0x00100010 },
{ 0x00610040, 0x22002d08, 0x02690200, 0x00010001 },
{ 0x01000010, 0x20003dac, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00800040, 0x24003e2c, 0x01e983e0, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01e98000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98020, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e993e0, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e99000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e99020, 0x00010001 },
{ 0x00000001, 0x220e0168, 0x00000000, 0x05400540 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00110001, 0x220e0168, 0x02000000, 0x04c004c0 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000e },
{ 0x00400001, 0x22000128, 0x0069044c, 0x00000000 },
{ 0x01400010, 0x20003dac, 0x00000444, 0x00030003 },
{ 0x01400010, 0x20003dac, 0x02000446, 0x00030003 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00010001 },
{ 0x00410040, 0x22002d08, 0x02690200, 0x00100010 },
{ 0x00800001, 0x25400229, 0x01e98000, 0x00000000 },
{ 0x80800042, 0x45404631, 0x00d20540, 0x00d204c0 },
{ 0x00000001, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x00400001, 0xd8000231, 0x008a0540, 0x00000000 },
{ 0x00400001, 0xd8100231, 0x008a0548, 0x00000000 },
{ 0x00400001, 0xd8200231, 0x008a0550, 0x00000000 },
{ 0x00400001, 0xd8300231, 0x008a0558, 0x00000000 },
{ 0x00600001, 0x220001ac, 0x008d0024, 0x00000000 },
{ 0x00200040, 0x244c3dad, 0x00450448, 0xfff8fff8 },
{ 0x00000401, 0x220001ec, 0x00000000, 0x07000700 },
{ 0x00000801, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00000441, 0x254635ad, 0x00000448, 0x0000044a },
{ 0x00000c41, 0x254025ad, 0x0000444c, 0x0000444e },
{ 0x00000c41, 0x254225ad, 0x00000448, 0x0000444e },
{ 0x00000841, 0x254435ad, 0x0000444c, 0x0000044a },
{ 0x00600041, 0x24002628, 0x00898000, 0x00000540 },
{ 0x00600048, 0x24002628, 0x00898002, 0x00000542 },
{ 0x00600048, 0x24002628, 0x00898008, 0x00000544 },
{ 0x00600048, 0x2540262d, 0x0089800a, 0x00000546 },
{ 0x00400401, 0xbc0001a9, 0x00690540, 0x00000000 },
{ 0x00400801, 0xbc1001a9, 0x00690548, 0x00000000 },
{ 0x01000010, 0x20003d2c, 0x00000022, 0x00030003 },
{ 0x01000040, 0x20223d29, 0x02000022, 0xffffffff },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0x00080008 },
{ 0x00110040, 0x24540c21, 0x00000454, 0x00080008 },
{ 0x00010040, 0x24540c21, 0x00000454, 0x00180038 },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffee4 },
{ 0x01800010, 0x20003dac, 0x0200010e, 0x00010001 },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0xffe0ffe0 },
{ 0x00010001, 0x24540061, 0x02000000, 0x06c00640 },
{ 0x00110001, 0x24540061, 0x02000000, 0x04800780 },
{ 0x00000001, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00800040, 0x24003dac, 0x00b19c00, 0x00200020 },
{ 0x00800040, 0x24203dac, 0x00b19c20, 0x00200020 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00060006 },
{ 0x8080000c, 0xdc203d91, 0x00b10420, 0x00060006 },
{ 0x02000040, 0x210e3d29, 0x0200010e, 0xffffffff },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0x00040004 },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffce0 },
{ 0x01000005, 0x25643e2d, 0x00000060, 0x00c000c0 },
{ 0x01000010, 0x20003dac, 0x02000458, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x01000010, 0x20003dac, 0x00000458, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00a02001, 0x46400231, 0x00d20780, 0x00000000 },
{ 0x00a02001, 0x46800231, 0x00d207c0, 0x00000000 },
{ 0x00a02001, 0x46c00231, 0x00d20480, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000007e },
{ 0x80a02042, 0x46404631, 0x00d20640, 0x00d20780 },
{ 0x80a02042, 0x46804631, 0x00d20680, 0x00d207c0 },
{ 0x80a02042, 0x46c04631, 0x00d206c0, 0x00d20480 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000076 },
{ 0x01000010, 0x20003dac, 0x02000564, 0x00800080 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x0000000e },
{ 0x01000010, 0x20003dac, 0x00000458, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xffffffe4 },
{ 0x00200401, 0x256801ed, 0x00000000, 0x00200020 },
{ 0x00200801, 0x256c01ed, 0x00000000, 0x00060006 },
{ 0x00400001, 0x258001ed, 0x00000000, 0x00000000 },
{ 0x00600001, 0x45a001ad, 0x00058c00, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000028 },
{ 0x02600005, 0x20006e28, 0x02008c0c, 0x88848421 },
{ 0x0220000c, 0x25663dad, 0x00000458, 0x00010001 },
{ 0x0000000c, 0x25643dad, 0x00000564, 0x00060006 },
{ 0x00310001, 0x25c401ad, 0x00000458, 0x00000000 },
{ 0x00210001, 0x25c00061, 0x00000000, 0x00010001 },
{ 0x00310040, 0x25c03dad, 0x004545c4, 0x00010001 },
{ 0x00610001, 0x25a00061, 0x02000000, 0x00000080 },
{ 0x00710001, 0x45a002ad, 0x02ae8c00, 0x00000000 },
{ 0x00710001, 0x45a202ad, 0x02ae8c01, 0x00000000 },
{ 0x00800041, 0x25a035ad, 0x00b105a0, 0x000905c0 },
{ 0x01200010, 0x20003e2c, 0x0245006e, 0x00000000 },
{ 0x00310009, 0x244c45ad, 0x02000564, 0x0045006e },
{ 0x00210001, 0x244c01ed, 0x02000000, 0x00000000 },
{ 0x0031000c, 0x244c3dad, 0x0245044c, 0x00010001 },
{ 0x00200009, 0x256835ad, 0x0045044c, 0x00000566 },
{ 0x00210040, 0x256835ad, 0x02450568, 0x00000566 },
{ 0x00200040, 0x256c362d, 0x0045006e, 0x00000566 },
{ 0x00400040, 0x240035ac, 0x00ab05a2, 0x00ab05a6 },
{ 0x00400040, 0x2400358c, 0x00690400, 0x00000566 },
{ 0x0040000c, 0x2580358d, 0x00690400, 0x00000566 },
{ 0x00800041, 0x2400362c, 0x00d20640, 0x000005a0 },
{ 0x00800041, 0x2420362c, 0x00d20660, 0x000005a0 },
{ 0x00800048, 0x2400362c, 0x00d20780, 0x000005a4 },
{ 0x00800048, 0x2420362c, 0x00d207a0, 0x000005a4 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00000568 },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x00000568 },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056c },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056c },
{ 0x80800040, 0x464035b1, 0x00b104c0, 0x00000580 },
{ 0x80800040, 0x466035b1, 0x00b104e0, 0x00000580 },
{ 0x00800041, 0x2400362c, 0x00d20680, 0x000005a0 },
{ 0x00800041, 0x2420362c, 0x00d206a0, 0x000005a0 },
{ 0x00800048, 0x2400362c, 0x00d207c0, 0x000005a4 },
{ 0x00800048, 0x2420362c, 0x00d207e0, 0x000005a4 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00000568 },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x00000568 },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056c },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056c },
{ 0x80800040, 0x468035b1, 0x00b104c0, 0x00000580 },
{ 0x80800040, 0x46a035b1, 0x00b104e0, 0x00000580 },
{ 0x00800041, 0x2400362c, 0x00d206c0, 0x000705a8 },
{ 0x00800041, 0x2420362c, 0x00d206e0, 0x000705a8 },
{ 0x00800048, 0x2400362c, 0x00d20480, 0x000705ac },
{ 0x00800048, 0x2420362c, 0x00d204a0, 0x000705ac },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x0000056a },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x0000056a },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056e },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056e },
{ 0x80800040, 0x46c035b1, 0x00b104c0, 0x00050582 },
{ 0x80800040, 0x46e035b1, 0x00b104e0, 0x00050582 },
{ 0x01800005, 0x20003d2c, 0x02000020, 0x00020002 },
{ 0x80800040, 0xd00045b1, 0x00b19000, 0x00d20640 },
{ 0x80800040, 0xd02045b1, 0x00b19020, 0x00d20660 },
{ 0x80800040, 0xd04045b1, 0x00b19040, 0x00d20680 },
{ 0x80800040, 0xd06045b1, 0x00b19060, 0x00d206a0 },
{ 0x00000040, 0x22083d8c, 0x00000208, 0x00800080 },
{ 0x80400040, 0xd40045b1, 0x00699400, 0x00ab06c0 },
{ 0x80400040, 0xd48045b1, 0x00699480, 0x00ab06c2 },
{ 0x80400040, 0xd42045b1, 0x00699420, 0x00ab06e0 },
{ 0x80400040, 0xd4a045b1, 0x006994a0, 0x00ab06e2 },
{ 0x80400040, 0xd41045b1, 0x00699410, 0x00ab06d0 },
{ 0x80400040, 0xd49045b1, 0x00699490, 0x00ab06d2 },
{ 0x80400040, 0xd43045b1, 0x00699430, 0x00ab06f0 },
{ 0x80400040, 0xd4b045b1, 0x006994b0, 0x00ab06f2 },
{ 0x00000040, 0x220a3d8c, 0x0000020a, 0x00080008 },
{ 0x00110040, 0x220a3d8c, 0x0200020a, 0x00300030 },
{ 0x01000010, 0x20003d2c, 0x02000020, 0x00060006 },
{ 0x00000040, 0x20203d29, 0x00000020, 0x00020002 },
{ 0x00000040, 0x22040c00, 0x00000204, 0x00100001 },
{ 0x00000040, 0x220c358c, 0x0000020c, 0x0000003a },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffc1e },
{ 0x00000001, 0x220001ec, 0x00000000, 0x01400140 },
{ 0x00000001, 0x220201ec, 0x00000000, 0x01c001c0 },
{ 0x00800401, 0x20400236, 0x01ee8000, 0x00000000 },
{ 0x00800801, 0x20500236, 0x01ee8010, 0x00000000 },
{ 0x00800401, 0x20600236, 0x01ee8020, 0x00000000 },
{ 0x00800801, 0x20700236, 0x01ee8030, 0x00000000 },
{ 0x00800401, 0x20800236, 0x01ee8040, 0x00000000 },
{ 0x00800801, 0x20900236, 0x01ee8050, 0x00000000 },
{ 0x00800401, 0x20a00236, 0x01ee8060, 0x00000000 },
{ 0x00800801, 0x20b00236, 0x01ee8070, 0x00000000 },
{ 0x00800401, 0x20c00236, 0x01ee8100, 0x00000000 },
{ 0x00800801, 0x20d00236, 0x01ee8110, 0x00000000 },
{ 0x00800401, 0x20e00236, 0x01ee8120, 0x00000000 },
{ 0x00800801, 0x20f00236, 0x01ee8130, 0x00000000 },
{ 0x00800401, 0x21000236, 0x01ee8140, 0x00000000 },
{ 0x00800801, 0x21100236, 0x01ee8150, 0x00000000 },
{ 0x00800401, 0x21200236, 0x01ee8160, 0x00000000 },
{ 0x00800801, 0x21300236, 0x01ee8170, 0x00000000 },
{ 0x00000040, 0x22000d20, 0x00000062, 0x1218a600 },
{ 0x00200401, 0x204001a5, 0x00450064, 0x00000000 },
{ 0x00000801, 0x20480061, 0x00000000, 0x000f000f },
{ 0x01600031, 0x21400021, 0x508d0040, 0x00000200 },
{ 0x00000001, 0x220001ec, 0x00000000, 0x03400340 },
{ 0x00800401, 0x41600236, 0x00d28000, 0x00000000 },
{ 0x00800801, 0x41610236, 0x00d28080, 0x00000000 },
{ 0x00800401, 0x41800236, 0x00d28020, 0x00000000 },
{ 0x00800801, 0x41810236, 0x00d280a0, 0x00000000 },
{ 0x00800401, 0x41a00236, 0x00d28040, 0x00000000 },
{ 0x00800801, 0x41a10236, 0x00d280c0, 0x00000000 },
{ 0x00800401, 0x41c00236, 0x00d28060, 0x00000000 },
{ 0x00800801, 0x41c10236, 0x00d280e0, 0x00000000 },
{ 0x00000040, 0x22000d20, 0x00000062, 0x0a18a601 },
{ 0x0000040c, 0x20443ca5, 0x00000044, 0x00010001 },
{ 0x00000801, 0x20480061, 0x00000000, 0x0007000f },
{ 0x0a600031, 0x21600021, 0x508d0040, 0x00000200 },
{ 0x00000001, 0x21400021, 0x00000140, 0x00000000 },
{ 0x00000001, 0x21600021, 0x00000160, 0x00000000 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0000, 0x00000000 },
{ 0x00000005, 0x20203e2d, 0x00000061, 0x001f001f },
{ 0x00200009, 0x20643e2d, 0x00450064, 0x00040004 },
{ 0x00000001, 0x203a01ed, 0x00000000, 0x00000000 },
{ 0x01000010, 0x20003dac, 0x00000020, 0x00160016 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x01200010, 0x20003e2c, 0x0200006c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000024 },
{ 0x00800009, 0x25403dad, 0x00050064, 0x00020002 },
{ 0x00000001, 0x203a01ed, 0x00000000, 0x00180018 },
{ 0x00200040, 0x45483dad, 0x00660548, 0x00100010 },
{ 0x00200040, 0x45523dad, 0x00660552, 0x00100010 },
{ 0x00400040, 0x25583dad, 0x00690558, 0x00100010 },
{ 0x00800040, 0x208035ad, 0x00b10080, 0x00b10540 },
{ 0x00600040, 0x45403dad, 0x00ae0540, 0x00200020 },
{ 0x00800040, 0x20a035ad, 0x00b100a0, 0x00b10540 },
{ 0x00600040, 0x45423dad, 0x00ae0542, 0x00200020 },
{ 0x00800040, 0x20e035ad, 0x00b100e0, 0x00b10540 },
{ 0x00600040, 0x45403dad, 0x00ae0540, 0xffe0ffe0 },
{ 0x00800040, 0x20c035ad, 0x00b100c0, 0x00b10540 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x06600010, 0x20003dac, 0x02000020, 0x00030003 },
{ 0x00000001, 0x206c0171, 0x00000000, 0x00000000 },
{ 0x00610001, 0x208000a5, 0x02050080, 0x00000000 },
{ 0x00610001, 0x212000a5, 0x02090100, 0x00000000 },
{ 0x00410001, 0x211000a5, 0x02690100, 0x00000000 },
{ 0x00200009, 0x25403dad, 0x00450064, 0x00020002 },
{ 0x00800040, 0x208035ad, 0x00b10080, 0x00050540 },
{ 0x00200040, 0x40883dad, 0x00660088, 0x00200020 },
{ 0x00200040, 0x40923dad, 0x00660092, 0x00200020 },
{ 0x00400040, 0x20983dad, 0x00690098, 0x00200020 },
{ 0x00200401, 0x22080060, 0x00000000, 0x03400140 },
{ 0x00000c01, 0x220c0060, 0x00000000, 0x04400080 },
{ 0x00000801, 0x22040060, 0x00000000, 0x01000070 },
{ 0x02000005, 0x20002e28, 0x00000061, 0x00400040 },
{ 0x00010005, 0x203e2e29, 0x00000063, 0x00010001 },
{ 0x00110001, 0x203e0169, 0x00000000, 0x00030003 },
{ 0x00000001, 0x20200169, 0x00000000, 0x00000000 },
{ 0x0000000c, 0x2458262d, 0x0000006d, 0x00000020 },
{ 0x00000001, 0x210e0169, 0x00000000, 0x00010001 },
{ 0x00000005, 0x24583dad, 0x00000458, 0x00030003 },
{ 0x01000010, 0x200035ac, 0x0000010e, 0x00000458 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000031a },
{ 0x01000010, 0x20003dac, 0x0200010e, 0x00010001 },
{ 0x00010401, 0x24540061, 0x02000000, 0x06c00640 },
{ 0x00010805, 0x245a3e2d, 0x02008800, 0x007f007f },
{ 0x00110401, 0x24540061, 0x02000000, 0x04800780 },
{ 0x00110805, 0x245a3e2d, 0x02008804, 0x007f007f },
{ 0x00010005, 0x245c3e2d, 0x02008800, 0x00800080 },
{ 0x00110005, 0x245c3e2d, 0x02008804, 0x00800080 },
{ 0x00000009, 0x245c3dad, 0x0000045c, 0x00010001 },
{ 0x0000000c, 0x211e362d, 0x0000006c, 0x00000020 },
{ 0x00000040, 0x240035ac, 0x0000003e, 0x0000045c },
{ 0x01000010, 0x20003d8c, 0x00210400, 0x00010001 },
{ 0x01000010, 0x20003d8c, 0x02210400, 0x01000100 },
{ 0x00000001, 0x203c01ed, 0x00000000, 0x00000000 },
{ 0x00010001, 0x203c01ed, 0x00000000, 0x00020002 },
{ 0x00010001, 0x203c01ed, 0x02000000, 0xfffefffe },
{ 0x02000005, 0x20002e28, 0x00000061, 0x00400040 },
{ 0x00010040, 0x244c0d21, 0x0000045a, 0x0208e602 },
{ 0x00110040, 0x20780d21, 0x0000045a, 0x0208a002 },
{ 0x00010040, 0x20782421, 0x0000044c, 0x0000045c },
{ 0x02000005, 0x20003dac, 0x0200011e, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000001c0 },
{ 0x01000005, 0x20003dac, 0x00009800, 0x00030003 },
{ 0x00200005, 0x24443dad, 0x00459800, 0x00030003 },
{ 0x0020000c, 0x24403dad, 0x00459800, 0x00020002 },
{ 0x01600006, 0x20003dac, 0x02000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000012 },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00400000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00700000 },
{ 0x00310040, 0x20401da5, 0x02450440, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x000c000c },
{ 0x00010040, 0x20401da5, 0x02000440, 0xfffffffe },
{ 0x00010001, 0x204401a5, 0x02000442, 0x00000000 },
{ 0x00010001, 0x20480061, 0x02000000, 0x0007000c },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00200000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00400000 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00110040, 0x20441da5, 0x02000442, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x000c0007 },
{ 0x00010001, 0x20480061, 0x02000000, 0x00070007 },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000040, 0xb80235ad, 0x00009802, 0x0000003c },
{ 0x0020040c, 0x24403dad, 0x00459800, 0x00030003 },
{ 0x00200805, 0x24483dad, 0x00459800, 0x00070007 },
{ 0x01600006, 0x20003dac, 0x0000044a, 0x00000000 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00000009, 0x20403ca5, 0x00000040, 0x00010001 },
{ 0x00010040, 0x22000c20, 0x00000078, 0x00200010 },
{ 0x00110040, 0x22000c20, 0x00000078, 0x00300010 },
{ 0x00010001, 0x20480061, 0x00000000, 0x00030009 },
{ 0x00110001, 0x20480061, 0x00000000, 0x00040009 },
{ 0x02600031, 0x27000021, 0x408d0040, 0x00000200 },
{ 0x01000005, 0x20003dac, 0x00009800, 0x00030003 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000001a },
{ 0x00600001, 0x26220231, 0x008d05c0, 0x00000000 },
{ 0x00600401, 0x26120231, 0x008d05b8, 0x00000000 },
{ 0x00600801, 0x26020231, 0x008d05b0, 0x00000000 },
{ 0x00600401, 0x25f20231, 0x008d05a8, 0x00000000 },
{ 0x00600801, 0x25e20231, 0x008d05a0, 0x00000000 },
{ 0x00600401, 0x25d20231, 0x008d0598, 0x00000000 },
{ 0x00600801, 0x25c20231, 0x008d0590, 0x00000000 },
{ 0x00600401, 0x25b20231, 0x008d0588, 0x00000000 },
{ 0x00600801, 0x25a20231, 0x008d0580, 0x00000000 },
{ 0x00600401, 0x25920231, 0x008d0578, 0x00000000 },
{ 0x00600801, 0x25820231, 0x008d0570, 0x00000000 },
{ 0x00600001, 0x25720231, 0x008d0568, 0x00000000 },
{ 0x00600001, 0x25620231, 0x008d0560, 0x00000000 },
{ 0x00110001, 0x220001ec, 0x02000000, 0x05820582 },
{ 0x00010001, 0x220001ec, 0x02000000, 0x05620562 },
{ 0x00000001, 0x220e0128, 0x00000454, 0x00000000 },
{ 0x01800006, 0x200035ac, 0x02000446, 0x00000444 },
{ 0x00810001, 0xbc000229, 0x02ad8000, 0x00000000 },
{ 0x00810001, 0xbc200229, 0x02ad8020, 0x00000000 },
{ 0x00810001, 0xbc400229, 0x02ad8040, 0x00000000 },
{ 0x00810001, 0xbc600229, 0x02ad8060, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000012a },
{ 0x00600001, 0x2024018d, 0x008d0200, 0x00000000 },
{ 0x01000041, 0x245e35ad, 0x00000446, 0x00000444 },
{ 0x00000040, 0x22022d08, 0x00000200, 0x00100010 },
{ 0x02000005, 0x20003db0, 0x0200045e, 0x00010001 },
{ 0x00200040, 0x22042d08, 0x00450200, 0x00200020 },
{ 0x00400001, 0x244c0109, 0x00690200, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000066 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000064 },
{ 0x00000040, 0x22003d08, 0x00000200, 0xffdeffde },
{ 0x00000440, 0x22023d08, 0x00000202, 0xffeeffee },
{ 0x00000801, 0x220c0060, 0x00000000, 0x04a00480 },
{ 0x01000010, 0x20003db0, 0x0000045e, 0x00040004 },
{ 0x00a02040, 0x2400462c, 0x00ad8000, 0x00ad8005 },
{ 0x00a02048, 0x24003e2c, 0x00ad8001, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8002, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8003, 0x00140014 },
{ 0x00a02048, 0xb8003e2d, 0x00ad8004, 0xfffbfffb },
{ 0x00a02040, 0x2400462c, 0x00ad8040, 0x00ad8045 },
{ 0x00a02048, 0x24003e2c, 0x00ad8041, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8042, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8043, 0x00140014 },
{ 0x00a02048, 0xb8403e2d, 0x00ad8044, 0xfffbfffb },
{ 0x00a02040, 0x2400462c, 0x00ad8080, 0x00ad8085 },
{ 0x00a02048, 0x24003e2c, 0x00ad8081, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8082, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8083, 0x00140014 },
{ 0x00a02048, 0xb8803e2d, 0x00ad8084, 0xfffbfffb },
{ 0x00600040, 0x2400462c, 0x008d80c0, 0x008d80c5 },
{ 0x00600048, 0x24003e2c, 0x008d80c1, 0xfffbfffb },
{ 0x00600048, 0x24003e2c, 0x008d80c2, 0x00140014 },
{ 0x00600048, 0x24003e2c, 0x008d80c3, 0x00140014 },
{ 0x00600048, 0xb8c03e2d, 0x008d80c4, 0xfffbfffb },
{ 0x00000401, 0x22000060, 0x00000000, 0x04a00480 },
{ 0x00000c01, 0x22040060, 0x00000000, 0x04a00490 },
{ 0x00010802, 0x220c2d28, 0x00000454, 0x04800480 },
{ 0x00a02040, 0x24003dac, 0x00b18000, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x01ed8800, 0xfffbfffb },
{ 0x00800048, 0x24203dac, 0x01ed8820, 0xfffbfffb },
{ 0x00a02048, 0x24003dac, 0x00b18020, 0x00140014 },
{ 0x00800048, 0x24003dac, 0x01ed8820, 0x00140014 },
{ 0x00800048, 0x24203dac, 0x01ed8840, 0x00140014 },
{ 0x00a02048, 0x24003dac, 0x00b18040, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed8840, 0x00010001 },
{ 0x00800048, 0x24203dac, 0x01ed8860, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x000a000a },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x000a000a },
{ 0x00a02040, 0x24003dac, 0x00b18040, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x01ed8840, 0xfffbfffb },
{ 0x00800048, 0x24203dac, 0x01ed8860, 0xfffbfffb },
{ 0x00a02048, 0x24003dac, 0x00b18060, 0x00140014 },
{ 0x00800048, 0x24003dac, 0x01ed8860, 0x00140014 },
{ 0x00800048, 0x24203dac, 0x01ed8880, 0x00140014 },
{ 0x00a02048, 0x24003dac, 0x00b18080, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed8880, 0x00010001 },
{ 0x00800048, 0x24203dac, 0x01ed88a0, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x000a000a },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x000a000a },
{ 0x00010220, 0x34001c00, 0x00001400, 0x000000b4 },
{ 0x01000010, 0x20003db0, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000004c },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000004a },
{ 0x00400040, 0x22003d28, 0x0069044c, 0xfffefffe },
{ 0x03400010, 0x20003dac, 0x00000446, 0x00020002 },
{ 0x01000010, 0x20003db0, 0x02000444, 0x00020002 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00100010 },
{ 0x01000010, 0x20003dac, 0x00000446, 0x00000000 },
{ 0x00010002, 0x220c2d28, 0x02000454, 0x04800480 },
{ 0x00800040, 0x24003e2c, 0x01ed8000, 0x00100010 },
{ 0x00800040, 0x24203e2c, 0x01ed8020, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8001, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8021, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8002, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8022, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8003, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8023, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8004, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8024, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8005, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8025, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x00050005 },
{ 0x00800040, 0x24003e2c, 0x01ed8040, 0x00100010 },
{ 0x00800040, 0x24203e2c, 0x01ed8060, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8041, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8061, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8042, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8062, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8043, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8063, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8044, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8064, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8045, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8065, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000062 },
{ 0x01000010, 0x20003db0, 0x00000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000042 },
{ 0x00200401, 0x22000128, 0x0066044c, 0x00000000 },
{ 0x00200c01, 0x22040128, 0x0045044e, 0x00000000 },
{ 0x00000801, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x03400010, 0x20003dac, 0x02000444, 0x00020002 },
{ 0x01000010, 0x20003dac, 0x00000444, 0x00000000 },
{ 0x00410040, 0x22002d08, 0x02690200, 0x00010001 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00110001, 0x220c0168, 0x02000000, 0x04800480 },
{ 0x00a02040, 0x24003e2c, 0x00ad83e0, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8be0, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8800, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8800, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8820, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8020, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8820, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8840, 0x00010001 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8203d91, 0x00b10420, 0x00050005 },
{ 0x00a02040, 0x24003e2c, 0x00ad8020, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01ed8820, 0xfffbfffb },
{ 0x00800048, 0x24203e2c, 0x01ed8840, 0xfffbfffb },
{ 0x00a02048, 0x24003e2c, 0x00ad8040, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01ed8840, 0x00140014 },
{ 0x00800048, 0x24203e2c, 0x01ed8860, 0x00140014 },
{ 0x00a02048, 0x24003e2c, 0x00ad8060, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01ed8860, 0x00010001 },
{ 0x00800048, 0x24203e2c, 0x01ed8880, 0x00010001 },
{ 0x8080000c, 0xd8403d91, 0x00b10400, 0x00050005 },
{ 0x8080100c, 0xd8603d91, 0x00b10420, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001c },
{ 0x00200401, 0x22000128, 0x0045044c, 0x00000000 },
{ 0x00000801, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x01200010, 0x20003dac, 0x00000444, 0x00030003 },
{ 0x01200010, 0x20003dac, 0x02000446, 0x00030003 },
{ 0x00210040, 0x22002d08, 0x00450200, 0x00010001 },
{ 0x00210040, 0x22002d08, 0x02450200, 0x00100010 },
{ 0x00800001, 0xb8000229, 0x01ed8000, 0x00000000 },
{ 0x00800001, 0xb8200229, 0x01ed8020, 0x00000000 },
{ 0x00800001, 0xb8400229, 0x01ed8040, 0x00000000 },
{ 0x00800001, 0xb8600229, 0x01ed8060, 0x00000000 },
{ 0x80800042, 0xd8004631, 0x00d29800, 0x00d20480 },
{ 0x80800042, 0xd8204631, 0x00d29820, 0x00d204a0 },
{ 0x80800042, 0xd8404631, 0x00d29840, 0x00d204c0 },
{ 0x80800042, 0xd8604631, 0x00d29860, 0x00d204e0 },
{ 0x00600001, 0x220001ac, 0x008d0024, 0x00000000 },
{ 0x00200040, 0x244c3dad, 0x00450448, 0xfff8fff8 },
{ 0x00000401, 0x220001ec, 0x00000000, 0x07000700 },
{ 0x00000c01, 0x220201e8, 0x00000000, 0x07100710 },
{ 0x00000801, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00000441, 0x254635ad, 0x00000448, 0x0000044a },
{ 0x00000c41, 0x254025ad, 0x0000444c, 0x0000444e },
{ 0x00000c41, 0x254225ad, 0x00000448, 0x0000444e },
{ 0x00000841, 0x254435ad, 0x0000444c, 0x0000044a },
{ 0x00200040, 0x244c3d09, 0x00450200, 0x00100010 },
{ 0x00800041, 0x24002628, 0x00ad8000, 0x00000540 },
{ 0x00800041, 0x24202628, 0x00ad8020, 0x00000540 },
{ 0x00800048, 0x24002628, 0x00ad8002, 0x00000542 },
{ 0x00800048, 0x24202628, 0x00ad8022, 0x00000542 },
{ 0x00200001, 0x22000128, 0x0045044c, 0x00000000 },
{ 0x00800048, 0x24002628, 0x01ed8000, 0x00000544 },
{ 0x00800048, 0x24202628, 0x01ed8020, 0x00000544 },
{ 0x00800048, 0xbc002629, 0x01ed8002, 0x00000546 },
{ 0x00801048, 0xbc202629, 0x01ed8022, 0x00000546 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000128 },
{ 0x00000001, 0x20220169, 0x00000000, 0x00040004 },
{ 0x00200005, 0x24443dad, 0x00459800, 0x00030003 },
{ 0x0020000c, 0x24403dad, 0x00459800, 0x00020002 },
{ 0x01600006, 0x20003dac, 0x02000446, 0x00000000 },
{ 0x00010040, 0x22000c20, 0x02000078, 0x00200000 },
{ 0x00110040, 0x22000c20, 0x02000078, 0x00500000 },
{ 0x00310040, 0x20401da5, 0x02450440, 0xfffffffe },
{ 0x00110001, 0x20480061, 0x02000000, 0x00080008 },
{ 0x00010040, 0x20401da5, 0x02000440, 0xfffffffe },
{ 0x00010001, 0x204401a5, 0x02000442, 0x00000000 },
{ 0x00010001, 0x20480061, 0x02000000, 0x00030008 },
{ 0x01600031, 0x25600021, 0x408d0040, 0x00000200 },
{ 0x00000040, 0xb80235ad, 0x00009802, 0x0000003c },
{ 0x00000040, 0x22000c20, 0x00000078, 0x00100010 },
{ 0x0020040c, 0x24403dad, 0x00459800, 0x00030003 },
{ 0x00200805, 0x24483dad, 0x00459800, 0x00070007 },
{ 0x00200001, 0x204001a5, 0x00450440, 0x00000000 },
{ 0x00000009, 0x20403ca5, 0x00000040, 0x00010001 },
{ 0x00000001, 0x20480061, 0x00000000, 0x00020005 },
{ 0x02600031, 0x27000021, 0x408d0040, 0x00000200 },
{ 0x00110001, 0x220001ec, 0x02000000, 0x05820582 },
{ 0x00010001, 0x220001ec, 0x02000000, 0x05620562 },
{ 0x00000001, 0x220e0128, 0x00000454, 0x00000000 },
{ 0x01800006, 0x200035ac, 0x02000446, 0x00000444 },
{ 0x00410001, 0xbc000229, 0x02698000, 0x00000000 },
{ 0x00410001, 0xbc100229, 0x02698010, 0x00000000 },
{ 0x00410001, 0xbc200229, 0x02698020, 0x00000000 },
{ 0x00410001, 0xbc300229, 0x02698030, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000be },
{ 0x00600001, 0x2024018d, 0x008d0200, 0x00000000 },
{ 0x01000041, 0x245e35ad, 0x00000446, 0x00000444 },
{ 0x02000005, 0x20003db0, 0x0200045e, 0x00010001 },
{ 0x00000040, 0x22022d08, 0x00000200, 0x00100010 },
{ 0x00200040, 0x22042d08, 0x00450200, 0x00200020 },
{ 0x00400001, 0x244c0109, 0x00690200, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000044 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000042 },
{ 0x00000040, 0x22003d08, 0x00000200, 0xffdeffde },
{ 0x00000440, 0x22023d08, 0x00000202, 0xffeeffee },
{ 0x00000801, 0x220c0060, 0x00000000, 0x04d004c0 },
{ 0x01000010, 0x20003db0, 0x0000045e, 0x00040004 },
{ 0x00802040, 0x2400462c, 0x00a98000, 0x00a98005 },
{ 0x00802048, 0x24003e2c, 0x00a98001, 0xfffbfffb },
{ 0x00802048, 0x24003e2c, 0x00a98002, 0x00140014 },
{ 0x00802048, 0x24003e2c, 0x00a98003, 0x00140014 },
{ 0x00802048, 0xb8003e2d, 0x00a98004, 0xfffbfffb },
{ 0x00802040, 0x2400462c, 0x00a98040, 0x00a98045 },
{ 0x00802048, 0x24003e2c, 0x00a98041, 0xfffbfffb },
{ 0x00802048, 0x24003e2c, 0x00a98042, 0x00140014 },
{ 0x00802048, 0x24003e2c, 0x00a98043, 0x00140014 },
{ 0x00802048, 0xb8203e2d, 0x00a98044, 0xfffbfffb },
{ 0x00400040, 0x2400462c, 0x00698080, 0x00698085 },
{ 0x00400048, 0x24003e2c, 0x00698081, 0xfffbfffb },
{ 0x00400048, 0x24003e2c, 0x00698082, 0x00140014 },
{ 0x00400048, 0x24003e2c, 0x00698083, 0x00140014 },
{ 0x00400048, 0xb8403e2d, 0x00698084, 0xfffbfffb },
{ 0x00000401, 0x220c0060, 0x00000000, 0x04e004d0 },
{ 0x00000c01, 0x22000060, 0x00000000, 0x04d004c8 },
{ 0x00000c01, 0x22040060, 0x00000000, 0x04e004d8 },
{ 0x00000801, 0x22080060, 0x00000000, 0x04f004e8 },
{ 0x00800040, 0x24003dac, 0x00b104c0, 0x02000200 },
{ 0x00800048, 0x24003dac, 0x00b104e0, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01ed9800, 0x00140014 },
{ 0x00010001, 0x220c0168, 0x00000000, 0x05400540 },
{ 0x00110001, 0x220c0168, 0x00000000, 0x04c004c0 },
{ 0x00800048, 0x24003dac, 0x01e98000, 0xfffbfffb },
{ 0x00800048, 0x24003dac, 0x01e98020, 0x00010001 },
{ 0x00800048, 0x24003dac, 0x01e98800, 0x00140014 },
{ 0x8080000c, 0xd8003d91, 0x00b10400, 0x000a000a },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000060 },
{ 0x01000010, 0x20003db0, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000022 },
{ 0x00400040, 0x22003d28, 0x0069044c, 0xfffefffe },
{ 0x03400010, 0x20003dac, 0x00000446, 0x00020002 },
{ 0x01000010, 0x20003db0, 0x02000444, 0x00020002 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00100010 },
{ 0x01000010, 0x20003dac, 0x00000446, 0x00000000 },
{ 0x00010001, 0x220e0168, 0x02000000, 0x05400540 },
{ 0x00110001, 0x220e0168, 0x02000000, 0x04c004c0 },
{ 0x00800040, 0x24003e2c, 0x01e98000, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01e98001, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e98002, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98003, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98004, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e98005, 0x00010001 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000036 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000036 },
{ 0x01000010, 0x20003db0, 0x00000446, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x03600010, 0x20003dac, 0x02000444, 0x00020002 },
{ 0x00400401, 0x22000128, 0x0069044c, 0x00000000 },
{ 0x00400840, 0x22083d2c, 0x0069044c, 0x00100010 },
{ 0x00610040, 0x22002d08, 0x02690200, 0x00010001 },
{ 0x01000010, 0x20003dac, 0x00000444, 0x00000000 },
{ 0x01000010, 0x20003db0, 0x02000446, 0x00020002 },
{ 0x00800040, 0x24003e2c, 0x01e983e0, 0x00100010 },
{ 0x00800048, 0x24003e2c, 0x01e98000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e98020, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e993e0, 0xfffbfffb },
{ 0x00800048, 0x24003e2c, 0x01e99000, 0x00140014 },
{ 0x00800048, 0x24003e2c, 0x01e99020, 0x00010001 },
{ 0x00000001, 0x220e0168, 0x00000000, 0x05400540 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00110001, 0x220e0168, 0x02000000, 0x04c004c0 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00050005 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000e },
{ 0x00400001, 0x22000128, 0x0069044c, 0x00000000 },
{ 0x01400010, 0x20003dac, 0x00000444, 0x00030003 },
{ 0x01400010, 0x20003dac, 0x02000446, 0x00030003 },
{ 0x00410040, 0x22002d08, 0x00690200, 0x00010001 },
{ 0x00410040, 0x22002d08, 0x02690200, 0x00100010 },
{ 0x00800001, 0x25400229, 0x01e98000, 0x00000000 },
{ 0x80800042, 0x45404631, 0x00d20540, 0x00d204c0 },
{ 0x00000001, 0x220c0128, 0x00000454, 0x00000000 },
{ 0x00400001, 0xd8000231, 0x008a0540, 0x00000000 },
{ 0x00400001, 0xd8100231, 0x008a0548, 0x00000000 },
{ 0x00400001, 0xd8200231, 0x008a0550, 0x00000000 },
{ 0x00400001, 0xd8300231, 0x008a0558, 0x00000000 },
{ 0x00600001, 0x220001ac, 0x008d0024, 0x00000000 },
{ 0x00200040, 0x244c3dad, 0x00450448, 0xfff8fff8 },
{ 0x00000401, 0x220001ec, 0x00000000, 0x07000700 },
{ 0x00000801, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00000441, 0x254635ad, 0x00000448, 0x0000044a },
{ 0x00000c41, 0x254025ad, 0x0000444c, 0x0000444e },
{ 0x00000c41, 0x254225ad, 0x00000448, 0x0000444e },
{ 0x00000841, 0x254435ad, 0x0000444c, 0x0000044a },
{ 0x00600041, 0x24002628, 0x00898000, 0x00000540 },
{ 0x00600048, 0x24002628, 0x00898002, 0x00000542 },
{ 0x00600048, 0x24002628, 0x00898008, 0x00000544 },
{ 0x00600048, 0x2540262d, 0x0089800a, 0x00000546 },
{ 0x00400401, 0xbc0001a9, 0x00690540, 0x00000000 },
{ 0x00400801, 0xbc1001a9, 0x00690548, 0x00000000 },
{ 0x01000010, 0x20003d2c, 0x00000022, 0x00030003 },
{ 0x01000040, 0x20223d29, 0x02000022, 0xffffffff },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0x00080008 },
{ 0x00110040, 0x24540c21, 0x00000454, 0x00080008 },
{ 0x00010040, 0x24540c21, 0x00000454, 0x00180038 },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffee4 },
{ 0x01800010, 0x20003dac, 0x0200010e, 0x00010001 },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0xffe0ffe0 },
{ 0x00010001, 0x24540061, 0x02000000, 0x06c00640 },
{ 0x00110001, 0x24540061, 0x02000000, 0x04800780 },
{ 0x00000001, 0x220e0128, 0x00000456, 0x00000000 },
{ 0x00800040, 0x24003dac, 0x00b19c00, 0x00200020 },
{ 0x00800040, 0x24203dac, 0x00b19c20, 0x00200020 },
{ 0x8080000c, 0xdc003d91, 0x00b10400, 0x00060006 },
{ 0x8080000c, 0xdc203d91, 0x00b10420, 0x00060006 },
{ 0x02000040, 0x210e3d29, 0x0200010e, 0xffffffff },
{ 0x00000040, 0x220c3d8c, 0x0000020c, 0x00040004 },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffcdc },
{ 0x01000005, 0x25643e2d, 0x00000060, 0x00c000c0 },
{ 0x01000010, 0x20003dac, 0x02000458, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x01000010, 0x20003dac, 0x00000458, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00a02001, 0x46400231, 0x00d20780, 0x00000000 },
{ 0x00a02001, 0x46800231, 0x00d207c0, 0x00000000 },
{ 0x00a02001, 0x46c00231, 0x00d20480, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000007e },
{ 0x80a02042, 0x46404631, 0x00d20640, 0x00d20780 },
{ 0x80a02042, 0x46804631, 0x00d20680, 0x00d207c0 },
{ 0x80a02042, 0x46c04631, 0x00d206c0, 0x00d20480 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000076 },
{ 0x01000010, 0x20003dac, 0x02000564, 0x00800080 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x0000000e },
{ 0x01000010, 0x20003dac, 0x00000458, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xffffffe4 },
{ 0x00200401, 0x256801ed, 0x00000000, 0x00200020 },
{ 0x00200801, 0x256c01ed, 0x00000000, 0x00060006 },
{ 0x00400001, 0x258001ed, 0x00000000, 0x00000000 },
{ 0x00600001, 0x45a001ad, 0x00058c00, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000028 },
{ 0x02600005, 0x20006e28, 0x02008c0c, 0x88848421 },
{ 0x0220000c, 0x25663dad, 0x00000458, 0x00010001 },
{ 0x0000000c, 0x25643dad, 0x00000564, 0x00060006 },
{ 0x00310001, 0x25c401ad, 0x00000458, 0x00000000 },
{ 0x00210001, 0x25c00061, 0x00000000, 0x00010001 },
{ 0x00310040, 0x25c03dad, 0x004545c4, 0x00010001 },
{ 0x00610001, 0x25a00061, 0x02000000, 0x00000080 },
{ 0x00710001, 0x45a002ad, 0x02ae8c00, 0x00000000 },
{ 0x00710001, 0x45a202ad, 0x02ae8c01, 0x00000000 },
{ 0x00800041, 0x25a035ad, 0x00b105a0, 0x000905c0 },
{ 0x01200010, 0x20003e2c, 0x0245006e, 0x00000000 },
{ 0x00310009, 0x244c45ad, 0x02000564, 0x0045006e },
{ 0x00210001, 0x244c01ed, 0x02000000, 0x00000000 },
{ 0x0031000c, 0x244c3dad, 0x0245044c, 0x00010001 },
{ 0x00200009, 0x256835ad, 0x0045044c, 0x00000566 },
{ 0x00210040, 0x256835ad, 0x02450568, 0x00000566 },
{ 0x00200040, 0x256c362d, 0x0045006e, 0x00000566 },
{ 0x00400040, 0x240035ac, 0x00ab05a2, 0x00ab05a6 },
{ 0x00400040, 0x2400358c, 0x00690400, 0x00000566 },
{ 0x0040000c, 0x2580358d, 0x00690400, 0x00000566 },
{ 0x00800041, 0x2400362c, 0x00d20640, 0x000005a0 },
{ 0x00800041, 0x2420362c, 0x00d20660, 0x000005a0 },
{ 0x00800048, 0x2400362c, 0x00d20780, 0x000005a4 },
{ 0x00800048, 0x2420362c, 0x00d207a0, 0x000005a4 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00000568 },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x00000568 },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056c },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056c },
{ 0x80800040, 0x464035b1, 0x00b104c0, 0x00000580 },
{ 0x80800040, 0x466035b1, 0x00b104e0, 0x00000580 },
{ 0x00800041, 0x2400362c, 0x00d20680, 0x000005a0 },
{ 0x00800041, 0x2420362c, 0x00d206a0, 0x000005a0 },
{ 0x00800048, 0x2400362c, 0x00d207c0, 0x000005a4 },
{ 0x00800048, 0x2420362c, 0x00d207e0, 0x000005a4 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00000568 },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x00000568 },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056c },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056c },
{ 0x80800040, 0x468035b1, 0x00b104c0, 0x00000580 },
{ 0x80800040, 0x46a035b1, 0x00b104e0, 0x00000580 },
{ 0x00800041, 0x2400362c, 0x00d206c0, 0x000705a8 },
{ 0x00800041, 0x2420362c, 0x00d206e0, 0x000705a8 },
{ 0x00800048, 0x2400362c, 0x00d20480, 0x000705ac },
{ 0x00800048, 0x2420362c, 0x00d204a0, 0x000705ac },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x0000056a },
{ 0x00800040, 0x2420358c, 0x00b10420, 0x0000056a },
{ 0x0080000c, 0x24c0358d, 0x00b10400, 0x0000056e },
{ 0x0080000c, 0x24e0358d, 0x00b10420, 0x0000056e },
{ 0x80800040, 0x46c035b1, 0x00b104c0, 0x00050582 },
{ 0x80800040, 0x46e035b1, 0x00b104e0, 0x00050582 },
{ 0x01800005, 0x20003d2c, 0x02000020, 0x00020002 },
{ 0x80800040, 0xd00045b1, 0x00b19000, 0x00d20640 },
{ 0x80800040, 0xd02045b1, 0x00b19020, 0x00d20660 },
{ 0x80800040, 0xd04045b1, 0x00b19040, 0x00d20680 },
{ 0x80800040, 0xd06045b1, 0x00b19060, 0x00d206a0 },
{ 0x00000040, 0x22083d8c, 0x00000208, 0x00800080 },
{ 0x80400040, 0xd40045b1, 0x00699400, 0x00ab06c0 },
{ 0x80400040, 0xd48045b1, 0x00699480, 0x00ab06c2 },
{ 0x80400040, 0xd42045b1, 0x00699420, 0x00ab06e0 },
{ 0x80400040, 0xd4a045b1, 0x006994a0, 0x00ab06e2 },
{ 0x80400040, 0xd41045b1, 0x00699410, 0x00ab06d0 },
{ 0x80400040, 0xd49045b1, 0x00699490, 0x00ab06d2 },
{ 0x80400040, 0xd43045b1, 0x00699430, 0x00ab06f0 },
{ 0x80400040, 0xd4b045b1, 0x006994b0, 0x00ab06f2 },
{ 0x00000040, 0x220a3d8c, 0x0000020a, 0x00080008 },
{ 0x00110040, 0x220a3d8c, 0x0200020a, 0x00300030 },
{ 0x01000010, 0x20003d2c, 0x02000020, 0x00060006 },
{ 0x00000040, 0x20203d29, 0x00000020, 0x00020002 },
{ 0x00000040, 0x22040c00, 0x00000204, 0x00100001 },
{ 0x00000040, 0x220c358c, 0x0000020c, 0x0000003a },
{ 0x00110220, 0x34001c00, 0x02001400, 0xfffffc1a },
{ 0x00000001, 0x220001ec, 0x00000000, 0x01400140 },
{ 0x00000001, 0x220201ec, 0x00000000, 0x01c001c0 },
{ 0x00800401, 0x20400236, 0x01ee8000, 0x00000000 },
{ 0x00800801, 0x20500236, 0x01ee8010, 0x00000000 },
{ 0x00800401, 0x20600236, 0x01ee8020, 0x00000000 },
{ 0x00800801, 0x20700236, 0x01ee8030, 0x00000000 },
{ 0x00800401, 0x20800236, 0x01ee8040, 0x00000000 },
{ 0x00800801, 0x20900236, 0x01ee8050, 0x00000000 },
{ 0x00800401, 0x20a00236, 0x01ee8060, 0x00000000 },
{ 0x00800801, 0x20b00236, 0x01ee8070, 0x00000000 },
{ 0x00800401, 0x20c00236, 0x01ee8100, 0x00000000 },
{ 0x00800801, 0x20d00236, 0x01ee8110, 0x00000000 },
{ 0x00800401, 0x20e00236, 0x01ee8120, 0x00000000 },
{ 0x00800801, 0x20f00236, 0x01ee8130, 0x00000000 },
{ 0x00800401, 0x21000236, 0x01ee8140, 0x00000000 },
{ 0x00800801, 0x21100236, 0x01ee8150, 0x00000000 },
{ 0x00800401, 0x21200236, 0x01ee8160, 0x00000000 },
{ 0x00800801, 0x21300236, 0x01ee8170, 0x00000000 },
{ 0x00000040, 0x22000d20, 0x00000062, 0x1218a000 },
{ 0x00200401, 0x204001a5, 0x00450064, 0x00000000 },
{ 0x00000801, 0x20480061, 0x00000000, 0x000f000f },
{ 0x01600031, 0x21400021, 0x508d0040, 0x00000200 },
{ 0x00000001, 0x220001ec, 0x00000000, 0x03400340 },
{ 0x00800401, 0x41600236, 0x00d28000, 0x00000000 },
{ 0x00800801, 0x41610236, 0x00d28080, 0x00000000 },
{ 0x00800401, 0x41800236, 0x00d28020, 0x00000000 },
{ 0x00800801, 0x41810236, 0x00d280a0, 0x00000000 },
{ 0x00800401, 0x41a00236, 0x00d28040, 0x00000000 },
{ 0x00800801, 0x41a10236, 0x00d280c0, 0x00000000 },
{ 0x00800401, 0x41c00236, 0x00d28060, 0x00000000 },
{ 0x00800801, 0x41c10236, 0x00d280e0, 0x00000000 },
{ 0x00000040, 0x22000d20, 0x00000062, 0x0a18a001 },
{ 0x0000040c, 0x20443ca5, 0x00000044, 0x00010001 },
{ 0x00000801, 0x20480061, 0x00000000, 0x0007000f },
{ 0x0a600031, 0x21600021, 0x508d0040, 0x00000200 },
{ 0x00000001, 0x21400021, 0x00000140, 0x00000000 },
{ 0x00000001, 0x21600021, 0x00000160, 0x00000000 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x01000005, 0x20602d29, 0x02000042, 0x00070007 },
{ 0x01000005, 0x20422d29, 0x00000042, 0xfff8fff8 },
{ 0x00000001, 0x202001e9, 0x00000000, 0x100c100c },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00000009, 0x27e82d21, 0x00000040, 0x00060006 },
{ 0x00600001, 0x20a00022, 0x008d0000, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000100 },
{ 0x00600001, 0x20200022, 0x008d07e0, 0x00000000 },
{ 0x01800031, 0x20801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20400022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20480c22, 0x000007e8, 0x00000080 },
{ 0x02800031, 0x21001d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20600022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20680c22, 0x000007e8, 0x00000100 },
{ 0x03800031, 0x21801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20800022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20880c22, 0x000007e8, 0x00000180 },
{ 0x04800031, 0x22001d09, 0x408d0000, 0x02488400 },
{ 0x02600005, 0x20000c20, 0x02000090, 0x00002000 },
{ 0x00000006, 0x20880c21, 0x00000088, 0x00200000 },
{ 0x00200009, 0x20845529, 0x0000009c, 0x00450020 },
{ 0x00200001, 0x40840231, 0x00450094, 0x00000000 },
{ 0x00310001, 0x20840229, 0x02450094, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x00000095, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x00000094 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0080, 0x00000000 },
{ 0x00802001, 0x20800061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x02600005, 0x20000c20, 0x020000d0, 0x00002000 },
{ 0x00000006, 0x20c80c21, 0x000000c8, 0x00200000 },
{ 0x00200009, 0x20c45529, 0x000000dc, 0x00450020 },
{ 0x00200001, 0x40c40231, 0x004500d4, 0x00000000 },
{ 0x00310001, 0x20c40229, 0x024500d4, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x000000d5, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x000000d4 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x02600005, 0x20000c20, 0x02000110, 0x00002000 },
{ 0x00000006, 0x21080c21, 0x00000108, 0x00200000 },
{ 0x00200009, 0x21045529, 0x0000011c, 0x00450020 },
{ 0x00200001, 0x41040231, 0x00450114, 0x00000000 },
{ 0x00310001, 0x21040229, 0x02450114, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x00000115, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x00000114 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0100, 0x00000000 },
{ 0x00802001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x02600005, 0x20000c20, 0x02000150, 0x00002000 },
{ 0x00000006, 0x21480c21, 0x00000148, 0x00200000 },
{ 0x00200009, 0x21445529, 0x0000015c, 0x00450020 },
{ 0x00200001, 0x41440231, 0x00450154, 0x00000000 },
{ 0x00310001, 0x21440229, 0x02450154, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x00000155, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x00000154 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0140, 0x00000000 },
{ 0x00802001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x02600005, 0x20000c20, 0x02000190, 0x00002000 },
{ 0x00000006, 0x21880c21, 0x00000188, 0x00200000 },
{ 0x00200009, 0x21845529, 0x0000019c, 0x00450020 },
{ 0x00200001, 0x41840231, 0x00450194, 0x00000000 },
{ 0x00310001, 0x21840229, 0x02450194, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x00000195, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x00000194 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0180, 0x00000000 },
{ 0x00802001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x02600005, 0x20000c20, 0x020001d0, 0x00002000 },
{ 0x00000006, 0x21c80c21, 0x000001c8, 0x00200000 },
{ 0x00200009, 0x21c45529, 0x000001dc, 0x00450020 },
{ 0x00200001, 0x41c40231, 0x004501d4, 0x00000000 },
{ 0x00310001, 0x21c40229, 0x024501d4, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x000001d5, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x000001d4 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d01c0, 0x00000000 },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x02600005, 0x20000c20, 0x02000210, 0x00002000 },
{ 0x00000006, 0x22080c21, 0x00000208, 0x00200000 },
{ 0x00200009, 0x22045529, 0x0000021c, 0x00450020 },
{ 0x00200001, 0x42040231, 0x00450214, 0x00000000 },
{ 0x00310001, 0x22040229, 0x02450214, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x00000215, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x00000214 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0200, 0x00000000 },
{ 0x00802001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x02600005, 0x20000c20, 0x02000250, 0x00002000 },
{ 0x00000006, 0x22480c21, 0x00000248, 0x00200000 },
{ 0x00200009, 0x22445529, 0x0000025c, 0x00450020 },
{ 0x00200001, 0x42440231, 0x00450254, 0x00000000 },
{ 0x00310001, 0x22440229, 0x02450254, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x00000255, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x00000254 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0240, 0x00000000 },
{ 0x00802001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x01000040, 0x20423dad, 0x00000042, 0xfff8fff8 },
{ 0x00600001, 0x21600022, 0x008d07e0, 0x00000000 },
{ 0x00802001, 0x21800022, 0x008d0080, 0x00000000 },
{ 0x00802001, 0x21c00022, 0x008d00c0, 0x00000000 },
{ 0x0b800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00600001, 0x20200022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20280c22, 0x000007e8, 0x00000080 },
{ 0x00802001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0140, 0x00000000 },
{ 0x01800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00000040, 0x21680c22, 0x000007e8, 0x00000100 },
{ 0x00802001, 0x21800022, 0x008d0180, 0x00000000 },
{ 0x00802001, 0x21c00022, 0x008d01c0, 0x00000000 },
{ 0x0b800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00000040, 0x20280c22, 0x000007e8, 0x00000180 },
{ 0x00802001, 0x20400022, 0x008d0200, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0240, 0x00000000 },
{ 0x01800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00000040, 0x27e80c21, 0x000007e8, 0x00000200 },
{ 0x01000010, 0x20002da0, 0x02000060, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xffffff00 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000040 },
{ 0x00600001, 0x20200022, 0x008d07e0, 0x00000000 },
{ 0x01800031, 0x20801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20400022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20480c22, 0x000007e8, 0x00000080 },
{ 0x02800031, 0x21001d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20600022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20680c22, 0x000007e8, 0x00000100 },
{ 0x03800031, 0x21801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20800022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20880c22, 0x000007e8, 0x00000180 },
{ 0x04800031, 0x22001d09, 0x408d0000, 0x02488400 },
{ 0x00000001, 0x220400e0, 0x00000000, 0x00a00080 },
{ 0x00600001, 0x20a00022, 0x008d0000, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02008810, 0x00002000 },
{ 0x01000040, 0x20603dad, 0x00000060, 0xffffffff },
{ 0x00000006, 0xa8080c21, 0x00008808, 0x00200000 },
{ 0x00200009, 0xa8045529, 0x0000881c, 0x00450020 },
{ 0x00200001, 0xc8040231, 0x00458814, 0x00000000 },
{ 0x00310001, 0xa8040229, 0x02458814, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000c },
{ 0x00800041, 0x24002628, 0x00008815, 0x00000044 },
{ 0x00800040, 0x24004508, 0x008d0400, 0x00008814 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d8800, 0x00000000 },
{ 0x00802001, 0xa8000061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00600001, 0x21600022, 0x008d07e0, 0x00000000 },
{ 0x00802001, 0x21800022, 0x008d8800, 0x00000000 },
{ 0x0b800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000040, 0x27e80c21, 0x000007e8, 0x00000040 },
{ 0x00000040, 0x22040c00, 0x00000204, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xffffffda },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x01000005, 0x20602d29, 0x02000042, 0x00070007 },
{ 0x01000005, 0x20422d29, 0x00000042, 0xfff8fff8 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00000009, 0x27e82d21, 0x00000040, 0x00060006 },
{ 0x00600001, 0x20a00022, 0x008d0000, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000260 },
{ 0x00600001, 0x20200022, 0x008d07e0, 0x00000000 },
{ 0x01800031, 0x20801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20400022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20480c22, 0x000007e8, 0x00000080 },
{ 0x02800031, 0x21001d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20600022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20680c22, 0x000007e8, 0x00000100 },
{ 0x03800031, 0x21801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20800022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20880c22, 0x000007e8, 0x00000180 },
{ 0x04800031, 0x22001d09, 0x408d0000, 0x02488400 },
{ 0x00200001, 0x20640229, 0x00450094, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02000090, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x00000090, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x00000095, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x00000095, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x00000090, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x20881c21, 0x00000088, 0x00200000 },
{ 0x00200001, 0x20840129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0080, 0x00000000 },
{ 0x00802001, 0x20800061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x00000090, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x0000009c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x0000009c, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x0200009c, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x02000090, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x0200009c, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x0200009c, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x20843d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x20862d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x40840231, 0x00660064, 0x00000000 },
{ 0x00200001, 0x20640229, 0x004500d4, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x020000d0, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x000000d0, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x000000d5, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x000000d5, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x000000d0, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x20c81c21, 0x000000c8, 0x00200000 },
{ 0x00200001, 0x20c40129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x000000d0, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x000000dc, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x000000dc, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x020000dc, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x020000d0, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x020000dc, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x020000dc, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x20c43d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x20c62d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x40c40231, 0x00660064, 0x00000000 },
{ 0x00200001, 0x20640229, 0x00450114, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02000110, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x00000110, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x00000115, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x00000115, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x00000110, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x21081c21, 0x00000108, 0x00200000 },
{ 0x00200001, 0x21040129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0100, 0x00000000 },
{ 0x00802001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x00000110, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x0000011c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x0000011c, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x0200011c, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x02000110, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x0200011c, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x0200011c, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x21043d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x21062d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x41040231, 0x00660064, 0x00000000 },
{ 0x00200001, 0x20640229, 0x00450154, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02000150, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x00000150, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x00000155, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x00000155, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x00000150, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x21481c21, 0x00000148, 0x00200000 },
{ 0x00200001, 0x21440129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0140, 0x00000000 },
{ 0x00802001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x00000150, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x0000015c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x0000015c, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x0200015c, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x02000150, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x0200015c, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x0200015c, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x21443d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x21462d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x41440231, 0x00660064, 0x00000000 },
{ 0x00200001, 0x20640229, 0x00450194, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02000190, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x00000190, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x00000195, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x00000195, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x00000190, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x21881c21, 0x00000188, 0x00200000 },
{ 0x00200001, 0x21840129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0180, 0x00000000 },
{ 0x00802001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x00000190, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x0000019c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x0000019c, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x0200019c, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x02000190, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x0200019c, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x0200019c, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x21843d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x21862d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x41840231, 0x00660064, 0x00000000 },
{ 0x00200001, 0x20640229, 0x004501d4, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x020001d0, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x000001d0, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x000001d5, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x000001d5, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x000001d0, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x21c81c21, 0x000001c8, 0x00200000 },
{ 0x00200001, 0x21c40129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d01c0, 0x00000000 },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x000001d0, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x000001dc, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x000001dc, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x020001dc, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x020001d0, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x020001dc, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x020001dc, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x21c43d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x21c62d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x41c40231, 0x00660064, 0x00000000 },
{ 0x00200001, 0x20640229, 0x00450214, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02000210, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x00000210, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x00000215, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x00000215, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x00000210, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x22081c21, 0x00000208, 0x00200000 },
{ 0x00200001, 0x22040129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0200, 0x00000000 },
{ 0x00802001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x00000210, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x0000021c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x0000021c, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x0200021c, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x02000210, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x0200021c, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x0200021c, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x22043d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x22062d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x42040231, 0x00660064, 0x00000000 },
{ 0x00200001, 0x20640229, 0x00450254, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02000250, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x00000250, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x00000255, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x00000255, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x00000250, 0x00002000 },
{ 0x02600005, 0x20001d20, 0x02000066, 0x00000001 },
{ 0x00000006, 0x22481c21, 0x00000248, 0x00200000 },
{ 0x00200001, 0x22440129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d0240, 0x00000000 },
{ 0x00802001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x02600005, 0x20000c20, 0x00000250, 0x00004000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00000001, 0x20680129, 0x0000025c, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x0000025c, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x0200025c, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x02000250, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x0200025c, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x0200025c, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x02000068, 0x000d0070 },
{ 0x00000009, 0x22443d09, 0x00000602, 0x000c000c },
{ 0x00000005, 0x22462d09, 0x00000602, 0xf000f000 },
{ 0x00200001, 0x42440231, 0x00660064, 0x00000000 },
{ 0x01000040, 0x20423dad, 0x00000042, 0xfff8fff8 },
{ 0x00600001, 0x21600022, 0x008d07e0, 0x00000000 },
{ 0x00802001, 0x21800022, 0x008d0080, 0x00000000 },
{ 0x00802001, 0x21c00022, 0x008d00c0, 0x00000000 },
{ 0x0b800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00600001, 0x20200022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20280c22, 0x000007e8, 0x00000080 },
{ 0x00802001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0140, 0x00000000 },
{ 0x01800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00000040, 0x21680c22, 0x000007e8, 0x00000100 },
{ 0x00802001, 0x21800022, 0x008d0180, 0x00000000 },
{ 0x00802001, 0x21c00022, 0x008d01c0, 0x00000000 },
{ 0x0b800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00000040, 0x20280c22, 0x000007e8, 0x00000180 },
{ 0x00802001, 0x20400022, 0x008d0200, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0240, 0x00000000 },
{ 0x01800031, 0x20001d0c, 0x508d0000, 0x0a080400 },
{ 0x00000040, 0x27e80c21, 0x000007e8, 0x00000200 },
{ 0x01000010, 0x20002da0, 0x02000060, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffda0 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000006e },
{ 0x00600001, 0x20200022, 0x008d07e0, 0x00000000 },
{ 0x01800031, 0x20801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20400022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20480c22, 0x000007e8, 0x00000080 },
{ 0x02800031, 0x21001d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20600022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20680c22, 0x000007e8, 0x00000100 },
{ 0x03800031, 0x21801d09, 0x408d0000, 0x02488400 },
{ 0x00600001, 0x20800022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20880c22, 0x000007e8, 0x00000180 },
{ 0x04800031, 0x22001d09, 0x408d0000, 0x02488400 },
{ 0x00000001, 0x220400e0, 0x00000000, 0x00a00080 },
{ 0x00600001, 0x20a00022, 0x008d0000, 0x00000000 },
{ 0x00200001, 0x20640229, 0x00458814, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x02008810, 0x01000000 },
{ 0x02600005, 0x20000c20, 0x00008810, 0x00004000 },
{ 0x00600041, 0x24003e2c, 0x00008815, 0x00020002 },
{ 0x00110001, 0x2066018d, 0x02000400, 0x00000000 },
{ 0x00010040, 0x20663d8d, 0x02000400, 0x00010001 },
{ 0x00110001, 0x2066022d, 0x00008815, 0x00000000 },
{ 0x02600005, 0x20000c20, 0x00008810, 0x00002000 },
{ 0x01000040, 0x20603dad, 0x02000060, 0xffffffff },
{ 0x00000006, 0xa8080c21, 0x00008808, 0x00200000 },
{ 0x00200001, 0xa8040129, 0x00450064, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00800041, 0x24002528, 0x00000066, 0x00000044 },
{ 0x00800040, 0x24002508, 0x008d0400, 0x00000064 },
{ 0x00000009, 0x20a82d02, 0x00000404, 0x00060006 },
{ 0x00802001, 0x20c00022, 0x008d8800, 0x00000000 },
{ 0x00802001, 0xa8000061, 0x00000000, 0x00000000 },
{ 0x05800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x02600005, 0x20000d20, 0x02000066, 0x00000001 },
{ 0x02600005, 0x20000c20, 0x00008810, 0x00004000 },
{ 0x00000001, 0x20680129, 0x0000881c, 0x00000000 },
{ 0x00210002, 0x20700421, 0x02450038, 0x00450030 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x02600005, 0x20001d20, 0x0000881c, 0x00000010 },
{ 0x00210002, 0x20700421, 0x02450028, 0x00450020 },
{ 0x01600005, 0x20001d20, 0x0200881c, 0x00000001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x02610005, 0x20001c20, 0x02008810, 0x00008000 },
{ 0x02610005, 0x20001d20, 0x0200881c, 0x00000010 },
{ 0x00010006, 0x20681d29, 0x0200881c, 0x00000010 },
{ 0x02800005, 0x2000452c, 0x00000068, 0x000d0070 },
{ 0x01000040, 0x20603dad, 0x02000060, 0x00000000 },
{ 0x00000009, 0xa8043d09, 0x00000600, 0x000c000c },
{ 0x00000005, 0xa8062d09, 0x00000600, 0xf000f000 },
{ 0x00200001, 0xc8040231, 0x00660064, 0x00000000 },
{ 0x00600001, 0x21600022, 0x008d07e0, 0x00000000 },
{ 0x00802001, 0x21800022, 0x008d8800, 0x00000000 },
{ 0x0b800031, 0x20001d0c, 0x508d0000, 0x06080300 },
{ 0x00000040, 0x27e80c21, 0x000007e8, 0x00000040 },
{ 0x00000040, 0x22040c00, 0x00000204, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0xffffffac },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x01600031, 0x20001c20, 0x708d0000, 0x82000010 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00a02001, 0x20400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x206601ed, 0x00000000, 0x00030003 },
{ 0x00000009, 0x20663dad, 0x00000066, 0x000a000a },
{ 0x00000008, 0x22403dad, 0x00000026, 0x00010001 },
{ 0x00000041, 0x224235ad, 0x00000020, 0x00000022 },
{ 0x00600001, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x203c0022, 0x00000018, 0x00000000 },
{ 0x00000001, 0x203f01f2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c00e2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c010a, 0x00000e00, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0020, 0x00000000 },
{ 0x00400001, 0x205401ed, 0x00000000, 0x00000000 },
{ 0x00200040, 0x20583dad, 0x00450020, 0xffffffff },
{ 0x00000001, 0x22000060, 0x00000000, 0x06080000 },
{ 0x00600001, 0x26000021, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x26140061, 0x00000000, 0x00c00400 },
{ 0x00000001, 0x26100169, 0x00000000, 0x12121212 },
{ 0x07600031, 0x26201c21, 0x308d0600, 0x02000000 },
{ 0x00000001, 0x22a00169, 0x00000000, 0x01400140 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00200020 },
{ 0x00000001, 0x203801e2, 0x00000000, 0x00010001 },
{ 0x00800001, 0x204001ae, 0x00b10020, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x000002a0, 0x00010001 },
{ 0x00800031, 0x20000128, 0x608d07e0, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x22a00169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x22600169, 0x00000000, 0x00020002 },
{ 0x00200401, 0x208000e5, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x208800e5, 0x00000000, 0xffffffc6 },
{ 0x00000801, 0x208c00e5, 0x00000000, 0xffffffca },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00100010 },
{ 0x00000001, 0x206001ed, 0x00000000, 0x00020002 },
{ 0x00000001, 0x206201ad, 0x0000005a, 0x00000000 },
{ 0x00000001, 0x20a001ed, 0x00000000, 0x00000000 },
{ 0x00200001, 0x228001ed, 0x00000000, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21000061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21400061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21800061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00ff00ff },
{ 0x00000041, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x05000010, 0x200035ac, 0x02000280, 0x00000240 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x01000010, 0x20002d28, 0x000090c2, 0x00000000 },
{ 0x03000010, 0x200035ac, 0x02000054, 0x00000058 },
{ 0x00000041, 0x22a03dad, 0x00000056, 0x00040004 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffff4 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00200001, 0xb0c00229, 0x00450054, 0x00000000 },
{ 0x00200040, 0x22803dad, 0x00450280, 0x00010001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x20380122, 0x00000260, 0x00000000 },
{ 0x00800001, 0x204001ae, 0x00b10040, 0x00000000 },
{ 0x00000008, 0x20003d2a, 0x000002a0, 0x00010001 },
{ 0x00000040, 0x22602d29, 0x00000260, 0x00020002 },
{ 0x00800031, 0x20000008, 0x608d0000, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x04200010, 0x200035ac, 0x00450054, 0x00450060 },
{ 0x00010040, 0x20a03dad, 0x02000056, 0x00010001 },
{ 0x05200010, 0x200035ac, 0x02450280, 0x00450240 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x00040004 },
{ 0x00000048, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x00200040, 0x205455ad, 0x00450054, 0x00450034 },
{ 0x02000010, 0x20003d8c, 0x00000600, 0x00010001 },
{ 0x00000041, 0x220e3d8c, 0x00000602, 0x00040004 },
{ 0x00010041, 0x22083dac, 0x000000a0, 0x00040004 },
{ 0x00010401, 0x205601ad, 0x000000a0, 0x00000000 },
{ 0x00010840, 0x20543d2d, 0x000090c0, 0x00010001 },
{ 0x00000220, 0x34001400, 0x00001400, 0x00009c80 },
{ 0x01000010, 0x20003dac, 0x02000280, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000006 },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffff6 },
{ 0x05000010, 0x200035ac, 0x00000240, 0x00000026 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffffc },
{ 0x07600031, 0x20001c20, 0x30000000, 0x02000001 },
{ 0x01600031, 0x20001c24, 0x708d0000, 0x82000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00600009, 0x25c03dad, 0x00050034, 0x00040004 },
{ 0x00000001, 0x220801ec, 0x00000000, 0x02400240 },
{ 0x00000041, 0x20263d29, 0x00000036, 0x00040004 },
{ 0x00000041, 0x25e435a1, 0x00000020, 0x00000036 },
{ 0x00000040, 0x25e43421, 0x000005e4, 0x00000034 },
{ 0x00000041, 0x27e82c21, 0x000005e4, 0x00400040 },
{ 0x01600031, 0x22401c21, 0x408d07e0, 0x02885800 },
{ 0x01800005, 0x20002d28, 0x02b19040, 0xffffffff },
{ 0x02000005, 0x20003e2c, 0x00009030, 0x00010001 },
{ 0x00000040, 0x25c43dad, 0x000005c4, 0xfffcfffc },
{ 0x00000001, 0x25e20129, 0x00000036, 0x00000000 },
{ 0x000b0220, 0x34001c00, 0x02001400, 0x00000178 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000176 },
{ 0x00000040, 0x25ca3dad, 0x000005ca, 0xfffcfffc },
{ 0x00200401, 0x27e001a1, 0x004505c0, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f000f },
{ 0x00000001, 0x22000060, 0x00000000, 0x0288a001 },
{ 0x01600031, 0x20c00021, 0x408d07e0, 0x00000200 },
{ 0x00200401, 0x27e001a1, 0x004505c8, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0003000f },
{ 0x00000001, 0x22000060, 0x00000000, 0x02286003 },
{ 0x03600031, 0x20800021, 0x408d07e0, 0x00000200 },
{ 0x00800401, 0x23800231, 0x00a900c0, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00a90100, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00a90140, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00a90180, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00a900c4, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00a90104, 0x00000000 },
{ 0x00800401, 0x23e00231, 0x00a90144, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00a90184, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00a900c8, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00a90108, 0x00000000 },
{ 0x00800401, 0x24200231, 0x00a90148, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00a90188, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x20c00231, 0x00cf0380, 0x00000000 },
{ 0x00800801, 0x20d00231, 0x00cf0381, 0x00000000 },
{ 0x00800401, 0x20e00231, 0x00cf0382, 0x00000000 },
{ 0x00800801, 0x20f00231, 0x00cf0383, 0x00000000 },
{ 0x00800401, 0x21000231, 0x00cf03c0, 0x00000000 },
{ 0x00800801, 0x21100231, 0x00cf03c1, 0x00000000 },
{ 0x00800401, 0x21200231, 0x00cf03c2, 0x00000000 },
{ 0x00800801, 0x21300231, 0x00cf03c3, 0x00000000 },
{ 0x00800401, 0x21400231, 0x00cf0400, 0x00000000 },
{ 0x00800801, 0x21500231, 0x00cf0401, 0x00000000 },
{ 0x00800401, 0x21600231, 0x00cf0402, 0x00000000 },
{ 0x00800801, 0x21700231, 0x00cf0403, 0x00000000 },
{ 0x00800401, 0x21800231, 0x00cf0440, 0x00000000 },
{ 0x00800801, 0x21900231, 0x00cf0441, 0x00000000 },
{ 0x00800401, 0x21a00231, 0x00cf0442, 0x00000000 },
{ 0x00800801, 0x21b00231, 0x00cf0443, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00400040 },
{ 0x00000008, 0x25e83e2d, 0x00009080, 0x00020002 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x00459080, 0x00000000 },
{ 0x00200c01, 0x25d80129, 0x00459050, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699060, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000134 },
{ 0x00000008, 0x25e83e2d, 0x00009084, 0x00020002 },
{ 0x00200401, 0x25d0022d, 0x00459084, 0x00000000 },
{ 0x00000801, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00c000c0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00000401, 0x25d80129, 0x00009040, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699064, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000011e },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00100010 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01000100 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01400140 },
{ 0x00000401, 0x25d80129, 0x00009042, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699068, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000110 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01400140 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01800180 },
{ 0x00000401, 0x25d80129, 0x00009044, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x0069906c, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000102 },
{ 0x00200401, 0x27e001a1, 0x004505c4, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f0003 },
{ 0x00800401, 0x23400231, 0x00a90040, 0x00000000 },
{ 0x00800801, 0x23500231, 0x00a90044, 0x00000000 },
{ 0x00800401, 0x23600231, 0x00a90048, 0x00000000 },
{ 0x00800801, 0x23700231, 0x00a9004c, 0x00000000 },
{ 0x00800001, 0x20400232, 0x002b0340, 0x00000000 },
{ 0x00800001, 0x20500232, 0x002b0350, 0x00000000 },
{ 0x00800001, 0x20600232, 0x002b0360, 0x00000000 },
{ 0x00800001, 0x20700232, 0x002b0370, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x06082003 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x00800401, 0x23800231, 0x00a900c0, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00a90100, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00a90140, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00a90180, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00a900c4, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00a90104, 0x00000000 },
{ 0x00800401, 0x23e00231, 0x00a90144, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00a90184, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00a900c8, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00a90108, 0x00000000 },
{ 0x00800401, 0x24200231, 0x00a90148, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00a90188, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x20c00231, 0x00cf0380, 0x00000000 },
{ 0x00800801, 0x20d00231, 0x00cf0381, 0x00000000 },
{ 0x00800401, 0x20e00231, 0x00cf0382, 0x00000000 },
{ 0x00800801, 0x20f00231, 0x00cf0383, 0x00000000 },
{ 0x00800401, 0x21000231, 0x00cf03c0, 0x00000000 },
{ 0x00800801, 0x21100231, 0x00cf03c1, 0x00000000 },
{ 0x00800401, 0x21200231, 0x00cf03c2, 0x00000000 },
{ 0x00800801, 0x21300231, 0x00cf03c3, 0x00000000 },
{ 0x00800401, 0x21400231, 0x00cf0400, 0x00000000 },
{ 0x00800801, 0x21500231, 0x00cf0401, 0x00000000 },
{ 0x00800401, 0x21600231, 0x00cf0402, 0x00000000 },
{ 0x00800801, 0x21700231, 0x00cf0403, 0x00000000 },
{ 0x00800401, 0x21800231, 0x00cf0440, 0x00000000 },
{ 0x00800801, 0x21900231, 0x00cf0441, 0x00000000 },
{ 0x00800401, 0x21a00231, 0x00cf0442, 0x00000000 },
{ 0x00800801, 0x21b00231, 0x00cf0443, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00800080 },
{ 0x00000008, 0x25e83e2d, 0x00009082, 0x00020002 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00800080 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x00459082, 0x00000000 },
{ 0x00200c01, 0x25d80129, 0x00459054, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699070, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000096 },
{ 0x00000008, 0x25e83e2d, 0x00009084, 0x00020002 },
{ 0x00200401, 0x25d0022d, 0x00459084, 0x00000000 },
{ 0x00000801, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00c000c0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00000401, 0x25d80129, 0x00009046, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699074, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000080 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00100010 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01000100 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01400140 },
{ 0x00000401, 0x25d80129, 0x00009048, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699078, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000072 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01400140 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01800180 },
{ 0x00000401, 0x25d80129, 0x0000904a, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x0069907c, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000064 },
{ 0x00200401, 0x27e001a1, 0x004505c0, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f000f },
{ 0x00802001, 0x20400022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0100, 0x00000000 },
{ 0x00802001, 0x20c00022, 0x008d0140, 0x00000000 },
{ 0x00802001, 0x21000022, 0x008d0180, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x12082003 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x00200401, 0x27e001a1, 0x004505c8, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0003000f },
{ 0x00802001, 0x20400022, 0x008d0080, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0618a003 },
{ 0x01600031, 0x26400021, 0x508d07e0, 0x00000200 },
{ 0x00800401, 0x23400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x23500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x23600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x23700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x23800231, 0x00cf0340, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00cf0341, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00cf0342, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00cf0343, 0x00000000 },
{ 0x00802001, 0x202000a2, 0x008d0380, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x06080020 },
{ 0x00600001, 0x26400021, 0x008d0640, 0x00000000 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x00000440, 0x27e03da1, 0x000005c0, 0x000c000c },
{ 0x00000c01, 0x27e401a1, 0x000005c2, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f0003 },
{ 0x02600031, 0x23401c25, 0x408d07e0, 0x02286003 },
{ 0x00800401, 0x23800231, 0x00cf0340, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00cf0341, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00cf0342, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00cf0343, 0x00000000 },
{ 0x00802001, 0x202000a2, 0x008d0380, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x06080020 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00800040, 0x2400462d, 0x00b19c00, 0x00b1d830 },
{ 0x00800040, 0x2340462d, 0x00b19820, 0x00b1d830 },
{ 0x00800040, 0x2360462d, 0x00b19c10, 0x00b1dc00 },
{ 0x05810010, 0x200035ac, 0x008d2400, 0x000005d0 },
{ 0x05810010, 0x200035ac, 0x008d2340, 0x000005d2 },
{ 0x05810010, 0x200035ac, 0x008d2360, 0x000005d2 },
{ 0x00818022, 0x34001c00, 0x00001400, 0x000000ca },
{ 0x00800040, 0x2440462d, 0x00b19810, 0x00b1d830 },
{ 0x00800040, 0x2460462d, 0x00b19c20, 0x00b1dc00 },
{ 0x00800201, 0x24a00129, 0x00b19820, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x02001400, 0x00000066 },
{ 0x05800010, 0x200035ac, 0x028d2400, 0x000005e8 },
{ 0x00800040, 0x2520462d, 0x00b19830, 0x00b19820 },
{ 0x00800040, 0x2540462d, 0x00b19c00, 0x00b19c10 },
{ 0x00000201, 0x26000108, 0x00000602, 0x00000000 },
{ 0x05810010, 0x200035ac, 0x028d2440, 0x000005d2 },
{ 0x05810010, 0x200035ac, 0x008d2460, 0x000005d2 },
{ 0x00818022, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x00800040, 0x2560462d, 0x00b19810, 0x00b19800 },
{ 0x00800040, 0x238045ad, 0x008d0520, 0x00b19c00 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00040004 },
{ 0x00800040, 0x23a0458d, 0x00b10400, 0x00b19810 },
{ 0x00800048, 0x24003dac, 0x008d0560, 0x00020002 },
{ 0x80800008, 0x43c03d91, 0x00b10400, 0x00030003 },
{ 0x00800040, 0x24003dac, 0x00b103a0, 0xfffefffe },
{ 0x80800008, 0x43603d91, 0x00b10400, 0x00020002 },
{ 0x00800040, 0x2400362c, 0x00b19c10, 0x00b10380 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00b103a0 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00030003 },
{ 0x00800001, 0xb8100231, 0x00ae03c0, 0x00000000 },
{ 0x00800001, 0xb8200231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0xb8300231, 0x00ae0340, 0x00000000 },
{ 0x00808024, 0x34001c00, 0x00001400, 0x0001000e },
{ 0x00800040, 0x2400362c, 0x00b19820, 0x008d0520 },
{ 0x00800040, 0x2400458c, 0x00b10400, 0x00b19c10 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00020002 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00020002 },
{ 0x00800001, 0xb8300231, 0x00ae0340, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x00800040, 0x2580462d, 0x00b19c20, 0x00b19c30 },
{ 0x00800040, 0x238045ad, 0x008d0540, 0x008d04b0 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00040004 },
{ 0x00800040, 0x23a0458d, 0x00b10400, 0x00b19c20 },
{ 0x00800048, 0x24003dac, 0x008d0580, 0x00020002 },
{ 0x80800008, 0x43c03d91, 0x00b10400, 0x00030003 },
{ 0x00800040, 0x24003dac, 0x00b103a0, 0xfffefffe },
{ 0x80800008, 0x43603d91, 0x00b10400, 0x00020002 },
{ 0x00800040, 0x2400362c, 0x008d04a0, 0x00b10380 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00b103a0 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00030003 },
{ 0x00800001, 0xbc200231, 0x00ae03c0, 0x00000000 },
{ 0x00800001, 0xbc100231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0xbc000231, 0x00ae0340, 0x00000000 },
{ 0x00808024, 0x34001c00, 0x00001400, 0x0001000e },
{ 0x00800040, 0x2400362c, 0x008d04a0, 0x008d0540 },
{ 0x00800040, 0x2400458c, 0x00b10400, 0x00b19c10 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00020002 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00020002 },
{ 0x00800001, 0xbc000231, 0x00ae0340, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00808024, 0x34001c00, 0x00001400, 0x0001005c },
{ 0x00800201, 0x23e0022d, 0x002805d4, 0x00000000 },
{ 0x00800201, 0x23c0022d, 0x002805d4, 0x00000000 },
{ 0x05800010, 0x200035ac, 0x008d2440, 0x000005d2 },
{ 0x05800010, 0x200035ac, 0x028d2460, 0x000005d2 },
{ 0x00800040, 0x24003e2c, 0x00b19820, 0x00040004 },
{ 0x00800048, 0x24003dac, 0x008d0400, 0x00040004 },
{ 0x00800040, 0x2400458c, 0x00b10400, 0x00b1dc10 },
{ 0x00800008, 0x23403d8d, 0x00b10400, 0x00030003 },
{ 0x00810040, 0x23e03dad, 0x008d03e0, 0x00010001 },
{ 0x00200201, 0x25ec018d, 0x00450600, 0x00000000 },
{ 0x00810040, 0x23e03dad, 0x028d03e0, 0x00010001 },
{ 0x03800010, 0x200035ac, 0x008d0340, 0x008d03e0 },
{ 0x05800010, 0x200035ac, 0x028d0340, 0x008d43e0 },
{ 0x00800042, 0x24c0462d, 0x00b19830, 0x00b19c00 },
{ 0x00810001, 0x234001ad, 0x008d03e0, 0x00000000 },
{ 0x00810001, 0x234001ad, 0x028d43e0, 0x00000000 },
{ 0x00200201, 0x260001ac, 0x004505ec, 0x00000000 },
{ 0x80800040, 0x43603631, 0x00b19830, 0x008d0340 },
{ 0x80800040, 0x43403631, 0x00b19c00, 0x008d4340 },
{ 0x00800001, 0xb8300231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0xbc000231, 0x00ae0340, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00800040, 0x2400362c, 0x00b19810, 0x008d04c0 },
{ 0x00800048, 0x24003e2c, 0x00b19820, 0xfffefffe },
{ 0x00800008, 0x23603d8d, 0x00b10400, 0x00010001 },
{ 0x03800010, 0x200035ac, 0x008d0360, 0x008d03c0 },
{ 0x05800010, 0x200035ac, 0x028d0360, 0x008d43c0 },
{ 0x00810001, 0x236001ad, 0x008d03c0, 0x00000000 },
{ 0x00810001, 0x236001ad, 0x028d43c0, 0x00000000 },
{ 0x00000201, 0x260201ac, 0x000005ee, 0x00000000 },
{ 0x80800040, 0x43603631, 0x00b19820, 0x008d0360 },
{ 0x00800001, 0xb8200231, 0x00ae0360, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00800040, 0x2400362c, 0x00b19c20, 0x008d04c0 },
{ 0x00800048, 0x24003e2c, 0x00b19c10, 0xfffefffe },
{ 0x00800008, 0x23603d8d, 0x00b10400, 0x00010001 },
{ 0x03800010, 0x200035ac, 0x008d0360, 0x008d03c0 },
{ 0x05800010, 0x200035ac, 0x028d0360, 0x008d43c0 },
{ 0x00810001, 0x236001ad, 0x008d03c0, 0x00000000 },
{ 0x00810001, 0x236001ad, 0x028d43c0, 0x00000000 },
{ 0x80800040, 0x43603631, 0x00b19c10, 0x008d0360 },
{ 0x00800001, 0xbc100231, 0x00ae0360, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007c0, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00a02001, 0x20400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x206601ed, 0x00000000, 0x00030003 },
{ 0x00000009, 0x20663dad, 0x00000066, 0x000a000a },
{ 0x00000001, 0x206801ed, 0x00000000, 0x01400140 },
{ 0x00000001, 0x22600169, 0x00000000, 0x00030003 },
{ 0x00000008, 0x22403dad, 0x00000026, 0x00010001 },
{ 0x00000041, 0x224235ad, 0x00000020, 0x00000022 },
{ 0x00600001, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x203c0022, 0x00000018, 0x00000000 },
{ 0x00000001, 0x203f01f2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c00e2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c010a, 0x00000e00, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0020, 0x00000000 },
{ 0x00400001, 0x205401ed, 0x00000000, 0x00000000 },
{ 0x00200040, 0x20583dad, 0x00450020, 0xffffffff },
{ 0x00000001, 0x22000060, 0x00000000, 0x06080000 },
{ 0x00600001, 0x26000021, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x26140061, 0x00000000, 0x00c00400 },
{ 0x00000001, 0x26100169, 0x00000000, 0x12121212 },
{ 0x07600031, 0x26201c21, 0x308d0600, 0x02000000 },
{ 0x00200401, 0x208000e5, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x208800e5, 0x00000000, 0xffffffc4 },
{ 0x00000801, 0x208c00e5, 0x00000000, 0xffffffc8 },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00100010 },
{ 0x00000001, 0x206001ed, 0x00000000, 0x00020002 },
{ 0x00000001, 0x206201ad, 0x0000005a, 0x00000000 },
{ 0x00000001, 0x20a001ed, 0x00000000, 0x00000000 },
{ 0x00200001, 0x228001ed, 0x00000000, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21000061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21400061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21800061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00ff00ff },
{ 0x00000041, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x05000010, 0x200035ac, 0x02000280, 0x00000240 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x01000010, 0x20002d28, 0x000090c2, 0x00000000 },
{ 0x03000010, 0x200035ac, 0x02000054, 0x00000058 },
{ 0x00800001, 0x240001ac, 0x00000068, 0x00000000 },
{ 0x00000048, 0x22a03dad, 0x00000056, 0x00040004 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffff2 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00200001, 0xb0c00229, 0x00450054, 0x00000000 },
{ 0x00200040, 0x22803dad, 0x00450280, 0x00010001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x20380122, 0x00000260, 0x00000000 },
{ 0x00800001, 0x204001ae, 0x00b10040, 0x00000000 },
{ 0x00000008, 0x20003d2a, 0x000002a0, 0x00010001 },
{ 0x00000040, 0x22602d29, 0x00000260, 0x00020002 },
{ 0x00800031, 0x20000008, 0x608d0000, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x04200010, 0x200035ac, 0x00450054, 0x00450060 },
{ 0x00010040, 0x20a03dad, 0x02000056, 0x00010001 },
{ 0x05200010, 0x200035ac, 0x02450280, 0x00450240 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x00040004 },
{ 0x00000048, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x00200040, 0x205455ad, 0x00450054, 0x00450034 },
{ 0x02000010, 0x20003d8c, 0x00000600, 0x00010001 },
{ 0x00000041, 0x220e3d8c, 0x00000602, 0x00040004 },
{ 0x00010041, 0x22083dac, 0x000000a0, 0x00040004 },
{ 0x00010401, 0x205601ad, 0x000000a0, 0x00000000 },
{ 0x00010840, 0x20543d2d, 0x000090c0, 0x00010001 },
{ 0x00000220, 0x34001400, 0x00001400, 0x00009c80 },
{ 0x01000010, 0x20003dac, 0x02000280, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00600401, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x26140061, 0x00000000, 0x01800000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000801, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00000040, 0x2078252d, 0x00000026, 0x00004280 },
{ 0x00400001, 0x26000231, 0x00000078, 0x00000000 },
{ 0x00600031, 0x26201c21, 0x308d0600, 0x02000002 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffffe8 },
{ 0x07600031, 0x20001c20, 0x30000000, 0x02000001 },
{ 0x01600031, 0x20001c24, 0x708d0000, 0x82000012 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00600009, 0x25c03dad, 0x00050034, 0x00040004 },
{ 0x00000001, 0x220801ec, 0x00000000, 0x02400240 },
{ 0x00000041, 0x25e435a1, 0x00000020, 0x00000036 },
{ 0x00000040, 0x25e43421, 0x000005e4, 0x00000034 },
{ 0x00000041, 0x27e82c21, 0x000005e4, 0x00400040 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x01400140 },
{ 0x00000048, 0x20263dad, 0x00000036, 0x00040004 },
{ 0x00000040, 0x25c43dad, 0x000005c4, 0xfffcfffc },
{ 0x00000040, 0x25ca3dad, 0x000005ca, 0xfffcfffc },
{ 0x00800001, 0x2220022d, 0x000d002c, 0x00000000 },
{ 0x00600040, 0x22303dad, 0x008d0230, 0x00080008 },
{ 0x01600031, 0x22401c21, 0x408d07e0, 0x02885800 },
{ 0x01800005, 0x20002d28, 0x02b19040, 0xffffffff },
{ 0x02000005, 0x20003e2c, 0x00009030, 0x00010001 },
{ 0x00000001, 0x25e20129, 0x00000036, 0x00000000 },
{ 0x000b0220, 0x34001c00, 0x02001400, 0x00000126 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000124 },
{ 0x00000401, 0x27e001a1, 0x000005c0, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0007000f },
{ 0x00000001, 0x22000060, 0x00000000, 0x0248a002 },
{ 0x02600031, 0x20c00021, 0x408d07e0, 0x00000200 },
{ 0x00000401, 0x27e001a1, 0x000005c8, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005ca, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0001000f },
{ 0x00000001, 0x22000060, 0x00000000, 0x02186004 },
{ 0x02600031, 0x20800021, 0x408d07e0, 0x00000200 },
{ 0x00800001, 0x2380012d, 0x008900c0, 0x00000000 },
{ 0x00800001, 0x23a0012d, 0x00890100, 0x00000000 },
{ 0x00800001, 0x23c0012d, 0x008900c8, 0x00000000 },
{ 0x00800001, 0x23e0012d, 0x00890108, 0x00000000 },
{ 0x00600401, 0x20c001a9, 0x00ab0380, 0x00000000 },
{ 0x00600801, 0x20d001a9, 0x00ab0382, 0x00000000 },
{ 0x00600401, 0x20e001a9, 0x00ab0384, 0x00000000 },
{ 0x00600801, 0x20f001a9, 0x00ab0386, 0x00000000 },
{ 0x00600401, 0x210001a9, 0x00ab03c0, 0x00000000 },
{ 0x00600801, 0x211001a9, 0x00ab03c2, 0x00000000 },
{ 0x00600401, 0x212001a9, 0x00ab03c4, 0x00000000 },
{ 0x00600801, 0x213001a9, 0x00ab03c6, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00400040 },
{ 0x00800008, 0x2340352d, 0x00009050, 0x008d0220 },
{ 0x00800008, 0x2360352d, 0x00009052, 0x008d0220 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x004590c0, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990a0, 0x00000000 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000fc },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00410041 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c100c1 },
{ 0x00200401, 0x25d0022d, 0x004590c8, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990b0, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000ee },
{ 0x00800008, 0x2340352d, 0x00009042, 0x008d0220 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e000e0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00200401, 0x25d0022d, 0x004590c4, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990a4, 0x00000000 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x00000001, 0x260201e8, 0x00000000, 0x00000000 },
{ 0x00000401, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000801, 0x25d80109, 0x00000600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000d8 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e100e1 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01010101 },
{ 0x00200401, 0x25d0022d, 0x004590cc, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990b4, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000ca },
{ 0x00000401, 0x27e001a1, 0x000005c4, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c6, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x00070003 },
{ 0x00600401, 0x2340012d, 0x00890040, 0x00000000 },
{ 0x00600801, 0x2350012d, 0x00890048, 0x00000000 },
{ 0x00600001, 0x204001aa, 0x00270340, 0x00000000 },
{ 0x00600001, 0x205001aa, 0x00270350, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x04082004 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x00800001, 0x2380012d, 0x008900c0, 0x00000000 },
{ 0x00800001, 0x23a0012d, 0x00890100, 0x00000000 },
{ 0x00800001, 0x23c0012d, 0x008900c8, 0x00000000 },
{ 0x00800001, 0x23e0012d, 0x00890108, 0x00000000 },
{ 0x00600401, 0x20c001a9, 0x00ab0380, 0x00000000 },
{ 0x00600801, 0x20d001a9, 0x00ab0382, 0x00000000 },
{ 0x00600401, 0x20e001a9, 0x00ab0384, 0x00000000 },
{ 0x00600801, 0x20f001a9, 0x00ab0386, 0x00000000 },
{ 0x00600401, 0x210001a9, 0x00ab03c0, 0x00000000 },
{ 0x00600801, 0x211001a9, 0x00ab03c2, 0x00000000 },
{ 0x00600401, 0x212001a9, 0x00ab03c4, 0x00000000 },
{ 0x00600801, 0x213001a9, 0x00ab03c6, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00800080 },
{ 0x00800008, 0x2340352d, 0x00009054, 0x008d0220 },
{ 0x00800008, 0x2360352d, 0x00009056, 0x008d0220 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00800080 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x004590c2, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990a8, 0x00000000 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00810081 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c100c1 },
{ 0x00200401, 0x25d0022d, 0x004590ca, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990b8, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000078 },
{ 0x00800008, 0x2340352d, 0x00009048, 0x008d0220 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e000e0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00200401, 0x25d0022d, 0x004590c4, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990ac, 0x00000000 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x00000001, 0x260201e8, 0x00000000, 0x00000000 },
{ 0x00000401, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000801, 0x25d80109, 0x00000600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000062 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e100e1 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01010101 },
{ 0x00200401, 0x25d0022d, 0x004590cc, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990bc, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000054 },
{ 0x00000401, 0x27e001a1, 0x000005c0, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0007000f },
{ 0x00802001, 0x20400022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0a082004 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x00000401, 0x27e001a1, 0x000005c8, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005ca, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0001000f },
{ 0x00600001, 0x20400022, 0x008d0080, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0418a004 },
{ 0x01600031, 0x26400021, 0x508d07e0, 0x00000200 },
{ 0x00600401, 0x2340012d, 0x008500cc, 0x00000000 },
{ 0x00600801, 0x2350012d, 0x0085010c, 0x00000000 },
{ 0x00800001, 0x236001ad, 0x002e0340, 0x00000000 },
{ 0x00600001, 0x202000a2, 0x008d0360, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x04080020 },
{ 0x00600001, 0x26400021, 0x008d0640, 0x00000000 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x00000440, 0x27e03da1, 0x000005c0, 0x000c000c },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x00070003 },
{ 0x02600031, 0x23401c25, 0x408d07e0, 0x02186004 },
{ 0x00800001, 0x236001ad, 0x002e0340, 0x00000000 },
{ 0x00600001, 0x202000a2, 0x008d0360, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x04080020 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x00600040, 0x2400462d, 0x00ae9c00, 0x00aed810 },
{ 0x00600040, 0x2340462d, 0x00ae9800, 0x00aed810 },
{ 0x00600040, 0x2360462d, 0x00ae9c10, 0x00aedc00 },
{ 0x05810010, 0x200035ac, 0x008d2400, 0x000005d0 },
{ 0x05810010, 0x200035ac, 0x008d2340, 0x000005d2 },
{ 0x05810010, 0x200035ac, 0x008d2360, 0x000005d2 },
{ 0x00618022, 0x34001c00, 0x00001400, 0x00000038 },
{ 0x00618022, 0x34001c00, 0x02001400, 0x00000016 },
{ 0x00600040, 0x24003e2c, 0x00ae9c10, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x00ae9800, 0x00020002 },
{ 0x00600040, 0x2400458c, 0x008d0400, 0x00ae9810 },
{ 0x80600008, 0x43403d91, 0x008d0400, 0x00020002 },
{ 0x00600040, 0x24003e2c, 0x00ae9800, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x00ae9c10, 0x00020002 },
{ 0x00600040, 0x2400458c, 0x008d0400, 0x00ae9c00 },
{ 0x80600008, 0x43603d91, 0x008d0400, 0x00020002 },
{ 0x00600001, 0xd8100231, 0x00ae0340, 0x00000000 },
{ 0x00600001, 0xdc000231, 0x00ae0360, 0x00000000 },
{ 0x00608024, 0x34001c00, 0x00001400, 0x00010020 },
{ 0x00600201, 0x2400022c, 0x002405d4, 0x00000000 },
{ 0x00600040, 0x23e03d8d, 0x008d0400, 0x00010001 },
{ 0x00600040, 0x24003e2c, 0x00ae9800, 0x00040004 },
{ 0x00600048, 0x24003dac, 0x008d0400, 0x00040004 },
{ 0x00600040, 0x2400458c, 0x008d0400, 0x00aedc10 },
{ 0x00600008, 0x23403d8d, 0x008d0400, 0x00030003 },
{ 0x03600010, 0x200035ac, 0x008d0340, 0x008d03e0 },
{ 0x05600010, 0x200035ac, 0x028d0340, 0x008d43e0 },
{ 0x00610001, 0x234001ad, 0x008d03e0, 0x00000000 },
{ 0x00610001, 0x234001ad, 0x028d43e0, 0x00000000 },
{ 0x80600040, 0x43603631, 0x00ae9810, 0x008d0340 },
{ 0x80600040, 0x43403631, 0x00ae9c00, 0x008d4340 },
{ 0x00600001, 0xd8100231, 0x00ae0360, 0x00000000 },
{ 0x00600001, 0xdc000231, 0x00ae0340, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007c0, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00a02001, 0x20400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x206601ed, 0x00000000, 0x00030003 },
{ 0x00000009, 0x20663dad, 0x00000066, 0x000a000a },
{ 0x00000008, 0x22403dad, 0x00000026, 0x00010001 },
{ 0x00000041, 0x224235ad, 0x00000020, 0x00000022 },
{ 0x00600001, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x203c0022, 0x00000018, 0x00000000 },
{ 0x00000001, 0x203f01f2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c00e2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c010a, 0x00000e00, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0020, 0x00000000 },
{ 0x00400001, 0x205401ed, 0x00000000, 0x00000000 },
{ 0x00200040, 0x20583dad, 0x00450020, 0xffffffff },
{ 0x00000001, 0x22000060, 0x00000000, 0x06080000 },
{ 0x00600001, 0x26000021, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x26140061, 0x00000000, 0x00c00400 },
{ 0x00000001, 0x26100169, 0x00000000, 0x12121212 },
{ 0x07600031, 0x26201c21, 0x308d0600, 0x02000000 },
{ 0x00000001, 0x22a00169, 0x00000000, 0x01400140 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00200020 },
{ 0x00000001, 0x203801e2, 0x00000000, 0x00010001 },
{ 0x00800001, 0x204001ae, 0x00b10020, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x000002a0, 0x00010001 },
{ 0x00800031, 0x20000128, 0x608d07e0, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x22a00169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x22600169, 0x00000000, 0x00020002 },
{ 0x00200401, 0x208000e5, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x208800e5, 0x00000000, 0xffffffc6 },
{ 0x00000801, 0x208c00e5, 0x00000000, 0xffffffca },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00100010 },
{ 0x00000001, 0x206001ed, 0x00000000, 0x00020002 },
{ 0x00000001, 0x206201ad, 0x0000005a, 0x00000000 },
{ 0x00000001, 0x20a001ed, 0x00000000, 0x00000000 },
{ 0x00200001, 0x228001ed, 0x00000000, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21000061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21400061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21800061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00ff00ff },
{ 0x00000041, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x05000010, 0x200035ac, 0x02000280, 0x00000240 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x01000010, 0x20002d28, 0x000090c2, 0x00000000 },
{ 0x03000010, 0x200035ac, 0x02000054, 0x00000058 },
{ 0x00000041, 0x22a03dad, 0x00000056, 0x00040004 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffff4 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00200001, 0xb0c00229, 0x00450054, 0x00000000 },
{ 0x00200040, 0x22803dad, 0x00450280, 0x00010001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x20380122, 0x00000260, 0x00000000 },
{ 0x00800001, 0x204001ae, 0x00b10040, 0x00000000 },
{ 0x00000008, 0x20003d2a, 0x000002a0, 0x00010001 },
{ 0x00000040, 0x22602d29, 0x00000260, 0x00020002 },
{ 0x00800031, 0x20000008, 0x608d0000, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x04200010, 0x200035ac, 0x00450054, 0x00450060 },
{ 0x00010040, 0x20a03dad, 0x02000056, 0x00010001 },
{ 0x05200010, 0x200035ac, 0x02450280, 0x00450240 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x00040004 },
{ 0x00000048, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x00200040, 0x205455ad, 0x00450054, 0x00450034 },
{ 0x02000010, 0x20003d8c, 0x00000600, 0x00010001 },
{ 0x00000041, 0x220e3d8c, 0x00000602, 0x00040004 },
{ 0x00010041, 0x22083dac, 0x000000a0, 0x00040004 },
{ 0x00010401, 0x205601ad, 0x000000a0, 0x00000000 },
{ 0x00010840, 0x20543d2d, 0x000090c0, 0x00010001 },
{ 0x00000220, 0x34001400, 0x00001400, 0x00009c80 },
{ 0x01000010, 0x20003dac, 0x02000280, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000006 },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffff6 },
{ 0x05000010, 0x200035ac, 0x00000240, 0x00000026 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffffc },
{ 0x07600031, 0x20001c20, 0x30000000, 0x02000001 },
{ 0x01600031, 0x20001c24, 0x708d0000, 0x82000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00600009, 0x25c03dad, 0x00050034, 0x00040004 },
{ 0x00000001, 0x220801ec, 0x00000000, 0x02400240 },
{ 0x00000041, 0x20263d29, 0x00000036, 0x00040004 },
{ 0x00000041, 0x25e435a1, 0x00000020, 0x00000036 },
{ 0x00000040, 0x25e43421, 0x000005e4, 0x00000034 },
{ 0x00000041, 0x27e82c21, 0x000005e4, 0x00400040 },
{ 0x01600031, 0x22401c21, 0x408d07e0, 0x02885800 },
{ 0x01800005, 0x20002d28, 0x02b19040, 0xffffffff },
{ 0x02000005, 0x20003e2c, 0x00009030, 0x00010001 },
{ 0x00000040, 0x25c43dad, 0x000005c4, 0xfffcfffc },
{ 0x00000001, 0x25e20129, 0x00000036, 0x00000000 },
{ 0x000b0220, 0x34001c00, 0x02001400, 0x0000018c },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000018a },
{ 0x00000040, 0x25ca3dad, 0x000005ca, 0xfffcfffc },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c0, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f000f },
{ 0x00010001, 0x22000060, 0x02000000, 0x0288e701 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0288e601 },
{ 0x01600031, 0x20c00021, 0x408d07e0, 0x00000200 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c8, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0003000f },
{ 0x00010001, 0x22000060, 0x02000000, 0x02286703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02286603 },
{ 0x03600031, 0x20800021, 0x408d07e0, 0x00000200 },
{ 0x00800401, 0x23800231, 0x00a900c0, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00a90100, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00a90140, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00a90180, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00a900c4, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00a90104, 0x00000000 },
{ 0x00800401, 0x23e00231, 0x00a90144, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00a90184, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00a900c8, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00a90108, 0x00000000 },
{ 0x00800401, 0x24200231, 0x00a90148, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00a90188, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x20c00231, 0x00cf0380, 0x00000000 },
{ 0x00800801, 0x20d00231, 0x00cf0381, 0x00000000 },
{ 0x00800401, 0x20e00231, 0x00cf0382, 0x00000000 },
{ 0x00800801, 0x20f00231, 0x00cf0383, 0x00000000 },
{ 0x00800401, 0x21000231, 0x00cf03c0, 0x00000000 },
{ 0x00800801, 0x21100231, 0x00cf03c1, 0x00000000 },
{ 0x00800401, 0x21200231, 0x00cf03c2, 0x00000000 },
{ 0x00800801, 0x21300231, 0x00cf03c3, 0x00000000 },
{ 0x00800401, 0x21400231, 0x00cf0400, 0x00000000 },
{ 0x00800801, 0x21500231, 0x00cf0401, 0x00000000 },
{ 0x00800401, 0x21600231, 0x00cf0402, 0x00000000 },
{ 0x00800801, 0x21700231, 0x00cf0403, 0x00000000 },
{ 0x00800401, 0x21800231, 0x00cf0440, 0x00000000 },
{ 0x00800801, 0x21900231, 0x00cf0441, 0x00000000 },
{ 0x00800401, 0x21a00231, 0x00cf0442, 0x00000000 },
{ 0x00800801, 0x21b00231, 0x00cf0443, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00400040 },
{ 0x00000008, 0x25e83e2d, 0x00009080, 0x00020002 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x00459080, 0x00000000 },
{ 0x00200c01, 0x25d80129, 0x00459050, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699060, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffb8c },
{ 0x00000008, 0x25e83e2d, 0x00009084, 0x00020002 },
{ 0x00200401, 0x25d0022d, 0x00459084, 0x00000000 },
{ 0x00000801, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00c000c0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00000401, 0x25d80129, 0x00009040, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699064, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffb76 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00100010 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01000100 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01400140 },
{ 0x00000401, 0x25d80129, 0x00009042, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699068, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffb68 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01400140 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01800180 },
{ 0x00000401, 0x25d80129, 0x00009044, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x0069906c, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffb5a },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c4, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f0003 },
{ 0x00800401, 0x23400231, 0x00a90040, 0x00000000 },
{ 0x00800801, 0x23500231, 0x00a90044, 0x00000000 },
{ 0x00800401, 0x23600231, 0x00a90048, 0x00000000 },
{ 0x00800801, 0x23700231, 0x00a9004c, 0x00000000 },
{ 0x00800001, 0x20400232, 0x002b0340, 0x00000000 },
{ 0x00800001, 0x20500232, 0x002b0350, 0x00000000 },
{ 0x00800001, 0x20600232, 0x002b0360, 0x00000000 },
{ 0x00800001, 0x20700232, 0x002b0370, 0x00000000 },
{ 0x00010001, 0x22000060, 0x02000000, 0x06082703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x06082603 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x00800401, 0x23800231, 0x00a900c0, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00a90100, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00a90140, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00a90180, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00a900c4, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00a90104, 0x00000000 },
{ 0x00800401, 0x23e00231, 0x00a90144, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00a90184, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00a900c8, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00a90108, 0x00000000 },
{ 0x00800401, 0x24200231, 0x00a90148, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00a90188, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x20c00231, 0x00cf0380, 0x00000000 },
{ 0x00800801, 0x20d00231, 0x00cf0381, 0x00000000 },
{ 0x00800401, 0x20e00231, 0x00cf0382, 0x00000000 },
{ 0x00800801, 0x20f00231, 0x00cf0383, 0x00000000 },
{ 0x00800401, 0x21000231, 0x00cf03c0, 0x00000000 },
{ 0x00800801, 0x21100231, 0x00cf03c1, 0x00000000 },
{ 0x00800401, 0x21200231, 0x00cf03c2, 0x00000000 },
{ 0x00800801, 0x21300231, 0x00cf03c3, 0x00000000 },
{ 0x00800401, 0x21400231, 0x00cf0400, 0x00000000 },
{ 0x00800801, 0x21500231, 0x00cf0401, 0x00000000 },
{ 0x00800401, 0x21600231, 0x00cf0402, 0x00000000 },
{ 0x00800801, 0x21700231, 0x00cf0403, 0x00000000 },
{ 0x00800401, 0x21800231, 0x00cf0440, 0x00000000 },
{ 0x00800801, 0x21900231, 0x00cf0441, 0x00000000 },
{ 0x00800401, 0x21a00231, 0x00cf0442, 0x00000000 },
{ 0x00800801, 0x21b00231, 0x00cf0443, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00800080 },
{ 0x00000008, 0x25e83e2d, 0x00009082, 0x00020002 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00800080 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x00459082, 0x00000000 },
{ 0x00200c01, 0x25d80129, 0x00459054, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699070, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffaea },
{ 0x00000008, 0x25e83e2d, 0x00009084, 0x00020002 },
{ 0x00200401, 0x25d0022d, 0x00459084, 0x00000000 },
{ 0x00000801, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000040, 0x25e83dad, 0x000005e8, 0x00020002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00c000c0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00000401, 0x25d80129, 0x00009046, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699074, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffad4 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00100010 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01000100 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01400140 },
{ 0x00000401, 0x25d80129, 0x00009048, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x00699078, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffac6 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01400140 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01800180 },
{ 0x00000401, 0x25d80129, 0x0000904a, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x0069907c, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0xfffffab8 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c0, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f000f },
{ 0x00802001, 0x20400022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0100, 0x00000000 },
{ 0x00802001, 0x20c00022, 0x008d0140, 0x00000000 },
{ 0x00802001, 0x21000022, 0x008d0180, 0x00000000 },
{ 0x00010001, 0x22000060, 0x02000000, 0x12082703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x12082603 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c8, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0003000f },
{ 0x00802001, 0x20400022, 0x008d0080, 0x00000000 },
{ 0x00010001, 0x22000060, 0x02000000, 0x0618a703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0618a603 },
{ 0x01600031, 0x26400021, 0x508d07e0, 0x00000200 },
{ 0x00800401, 0x23400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x23500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x23600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x23700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x23800231, 0x00cf0340, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00cf0341, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00cf0342, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00cf0343, 0x00000000 },
{ 0x00802001, 0x202000a2, 0x008d0380, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x06080020 },
{ 0x00600001, 0x26400021, 0x008d0640, 0x00000000 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000440, 0x27e03da1, 0x000005c0, 0x000c000c },
{ 0x00000c01, 0x27e401a1, 0x000005c2, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f0003 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x02286003 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00100010 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x00010008 },
{ 0x00010001, 0x22000060, 0x02000000, 0x02286703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02286603 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x02600031, 0x23400025, 0x408d07e0, 0x00000200 },
{ 0x00800401, 0x23800231, 0x00cf0340, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00cf0341, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00cf0342, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00cf0343, 0x00000000 },
{ 0x00802001, 0x202000a2, 0x008d0380, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x06080020 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00a02001, 0x20400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x206601ed, 0x00000000, 0x00030003 },
{ 0x00000009, 0x20663dad, 0x00000066, 0x000a000a },
{ 0x00000001, 0x206801ed, 0x00000000, 0x01400140 },
{ 0x00000001, 0x22600169, 0x00000000, 0x00030003 },
{ 0x00000008, 0x22403dad, 0x00000026, 0x00010001 },
{ 0x00000041, 0x224235ad, 0x00000020, 0x00000022 },
{ 0x00600001, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x203c0022, 0x00000018, 0x00000000 },
{ 0x00000001, 0x203f01f2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c00e2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c010a, 0x00000e00, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0020, 0x00000000 },
{ 0x00400001, 0x205401ed, 0x00000000, 0x00000000 },
{ 0x00200040, 0x20583dad, 0x00450020, 0xffffffff },
{ 0x00000001, 0x22000060, 0x00000000, 0x06080000 },
{ 0x00600001, 0x26000021, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x26140061, 0x00000000, 0x00c00400 },
{ 0x00000001, 0x26100169, 0x00000000, 0x12121212 },
{ 0x07600031, 0x26201c21, 0x308d0600, 0x02000000 },
{ 0x00200401, 0x208000e5, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x208800e5, 0x00000000, 0xffffffc4 },
{ 0x00000801, 0x208c00e5, 0x00000000, 0xffffffc8 },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00100010 },
{ 0x00000001, 0x206001ed, 0x00000000, 0x00020002 },
{ 0x00000001, 0x206201ad, 0x0000005a, 0x00000000 },
{ 0x00000001, 0x20a001ed, 0x00000000, 0x00000000 },
{ 0x00200001, 0x228001ed, 0x00000000, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21000061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21400061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21800061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00ff00ff },
{ 0x00000041, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x05000010, 0x200035ac, 0x02000280, 0x00000240 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x01000010, 0x20002d28, 0x000090c2, 0x00000000 },
{ 0x03000010, 0x200035ac, 0x02000054, 0x00000058 },
{ 0x00800001, 0x240001ac, 0x00000068, 0x00000000 },
{ 0x00000048, 0x22a03dad, 0x00000056, 0x00040004 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffff2 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00200001, 0xb0c00229, 0x00450054, 0x00000000 },
{ 0x00200040, 0x22803dad, 0x00450280, 0x00010001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x20380122, 0x00000260, 0x00000000 },
{ 0x00800001, 0x204001ae, 0x00b10040, 0x00000000 },
{ 0x00000008, 0x20003d2a, 0x000002a0, 0x00010001 },
{ 0x00000040, 0x22602d29, 0x00000260, 0x00020002 },
{ 0x00800031, 0x20000008, 0x608d0000, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x04200010, 0x200035ac, 0x00450054, 0x00450060 },
{ 0x00010040, 0x20a03dad, 0x02000056, 0x00010001 },
{ 0x05200010, 0x200035ac, 0x02450280, 0x00450240 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x00040004 },
{ 0x00000048, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x00200040, 0x205455ad, 0x00450054, 0x00450034 },
{ 0x02000010, 0x20003d8c, 0x00000600, 0x00010001 },
{ 0x00000041, 0x220e3d8c, 0x00000602, 0x00040004 },
{ 0x00010041, 0x22083dac, 0x000000a0, 0x00040004 },
{ 0x00010401, 0x205601ad, 0x000000a0, 0x00000000 },
{ 0x00010840, 0x20543d2d, 0x000090c0, 0x00010001 },
{ 0x00000220, 0x34001400, 0x00001400, 0x00009c80 },
{ 0x01000010, 0x20003dac, 0x02000280, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00600401, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x26140061, 0x00000000, 0x01800000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000801, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00000040, 0x2078252d, 0x00000026, 0x00004280 },
{ 0x00400001, 0x26000231, 0x00000078, 0x00000000 },
{ 0x00600031, 0x26201c21, 0x308d0600, 0x02000002 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffffe8 },
{ 0x07600031, 0x20001c20, 0x30000000, 0x02000001 },
{ 0x01600031, 0x20001c24, 0x708d0000, 0x82000012 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00600009, 0x25c03dad, 0x00050034, 0x00040004 },
{ 0x00000001, 0x220801ec, 0x00000000, 0x02400240 },
{ 0x00000041, 0x25e435a1, 0x00000020, 0x00000036 },
{ 0x00000040, 0x25e43421, 0x000005e4, 0x00000034 },
{ 0x00000041, 0x27e82c21, 0x000005e4, 0x00400040 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x01400140 },
{ 0x00000048, 0x20263dad, 0x00000036, 0x00040004 },
{ 0x00000040, 0x25c43dad, 0x000005c4, 0xfffcfffc },
{ 0x00000040, 0x25ca3dad, 0x000005ca, 0xfffcfffc },
{ 0x00800001, 0x2220022d, 0x000d002c, 0x00000000 },
{ 0x00600040, 0x22303dad, 0x008d0230, 0x00080008 },
{ 0x01600031, 0x22401c21, 0x408d07e0, 0x02885800 },
{ 0x01800005, 0x20002d28, 0x02b19040, 0xffffffff },
{ 0x02000005, 0x20003e2c, 0x00009030, 0x00010001 },
{ 0x00000001, 0x25e20129, 0x00000036, 0x00000000 },
{ 0x000b0220, 0x34001c00, 0x02001400, 0x0000013a },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000138 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c0, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0007000f },
{ 0x00010001, 0x22000060, 0x02000000, 0x0248e702 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0248e602 },
{ 0x02600031, 0x20c00021, 0x408d07e0, 0x00000200 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c8, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005ca, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0001000f },
{ 0x00010001, 0x22000060, 0x02000000, 0x02186704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02186604 },
{ 0x02600031, 0x20800021, 0x408d07e0, 0x00000200 },
{ 0x00800001, 0x2380012d, 0x008900c0, 0x00000000 },
{ 0x00800001, 0x23a0012d, 0x00890100, 0x00000000 },
{ 0x00800001, 0x23c0012d, 0x008900c8, 0x00000000 },
{ 0x00800001, 0x23e0012d, 0x00890108, 0x00000000 },
{ 0x00600401, 0x20c001a9, 0x00ab0380, 0x00000000 },
{ 0x00600801, 0x20d001a9, 0x00ab0382, 0x00000000 },
{ 0x00600401, 0x20e001a9, 0x00ab0384, 0x00000000 },
{ 0x00600801, 0x20f001a9, 0x00ab0386, 0x00000000 },
{ 0x00600401, 0x210001a9, 0x00ab03c0, 0x00000000 },
{ 0x00600801, 0x211001a9, 0x00ab03c2, 0x00000000 },
{ 0x00600401, 0x212001a9, 0x00ab03c4, 0x00000000 },
{ 0x00600801, 0x213001a9, 0x00ab03c6, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00400040 },
{ 0x00800008, 0x2340352d, 0x00009050, 0x008d0220 },
{ 0x00800008, 0x2360352d, 0x00009052, 0x008d0220 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x004590c0, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990a0, 0x00000000 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffc0c },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00410041 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c100c1 },
{ 0x00200401, 0x25d0022d, 0x004590c8, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990b0, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffbfe },
{ 0x00800008, 0x2340352d, 0x00009042, 0x008d0220 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e000e0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00200401, 0x25d0022d, 0x004590c4, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990a4, 0x00000000 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x00000001, 0x260201e8, 0x00000000, 0x00000000 },
{ 0x00000401, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000801, 0x25d80109, 0x00000600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffbe8 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e100e1 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01010101 },
{ 0x00200401, 0x25d0022d, 0x004590cc, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990b4, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffbda },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c4, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c6, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x00070003 },
{ 0x00600401, 0x2340012d, 0x00890040, 0x00000000 },
{ 0x00600801, 0x2350012d, 0x00890048, 0x00000000 },
{ 0x00600001, 0x204001aa, 0x00270340, 0x00000000 },
{ 0x00600001, 0x205001aa, 0x00270350, 0x00000000 },
{ 0x00010001, 0x22000060, 0x02000000, 0x04082704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x04082604 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x00800001, 0x2380012d, 0x008900c0, 0x00000000 },
{ 0x00800001, 0x23a0012d, 0x00890100, 0x00000000 },
{ 0x00800001, 0x23c0012d, 0x008900c8, 0x00000000 },
{ 0x00800001, 0x23e0012d, 0x00890108, 0x00000000 },
{ 0x00600401, 0x20c001a9, 0x00ab0380, 0x00000000 },
{ 0x00600801, 0x20d001a9, 0x00ab0382, 0x00000000 },
{ 0x00600401, 0x20e001a9, 0x00ab0384, 0x00000000 },
{ 0x00600801, 0x20f001a9, 0x00ab0386, 0x00000000 },
{ 0x00600401, 0x210001a9, 0x00ab03c0, 0x00000000 },
{ 0x00600801, 0x211001a9, 0x00ab03c2, 0x00000000 },
{ 0x00600401, 0x212001a9, 0x00ab03c4, 0x00000000 },
{ 0x00600801, 0x213001a9, 0x00ab03c6, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00800080 },
{ 0x00800008, 0x2340352d, 0x00009054, 0x008d0220 },
{ 0x00800008, 0x2360352d, 0x00009056, 0x008d0220 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00800080 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200401, 0x25d0022d, 0x004590c2, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990a8, 0x00000000 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffb92 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00810081 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c100c1 },
{ 0x00200401, 0x25d0022d, 0x004590ca, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990b8, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffb84 },
{ 0x00800008, 0x2340352d, 0x00009048, 0x008d0220 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e000e0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00200401, 0x25d0022d, 0x004590c4, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990ac, 0x00000000 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x00000001, 0x260201e8, 0x00000000, 0x00000000 },
{ 0x00000401, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000801, 0x25d80109, 0x00000600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffb6e },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e100e1 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01010101 },
{ 0x00200401, 0x25d0022d, 0x004590cc, 0x00000000 },
{ 0x00400801, 0x25d40231, 0x006990bc, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffb60 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c0, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0007000f },
{ 0x00802001, 0x20400022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0100, 0x00000000 },
{ 0x00010001, 0x22000060, 0x02000000, 0x0a082704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0a082604 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c8, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005ca, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0001000f },
{ 0x00600001, 0x20400022, 0x008d0080, 0x00000000 },
{ 0x00010001, 0x22000060, 0x02000000, 0x0418a704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0418a604 },
{ 0x01600031, 0x26400021, 0x508d07e0, 0x00000200 },
{ 0x00600401, 0x2340012d, 0x008500cc, 0x00000000 },
{ 0x00600801, 0x2350012d, 0x0085010c, 0x00000000 },
{ 0x00800001, 0x236001ad, 0x002e0340, 0x00000000 },
{ 0x00600001, 0x202000a2, 0x008d0360, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x04080020 },
{ 0x00600001, 0x26400021, 0x008d0640, 0x00000000 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000440, 0x27e03da1, 0x000005c0, 0x000c000c },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x00070003 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x02186004 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00080008 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x00010008 },
{ 0x00010001, 0x22000060, 0x02000000, 0x02186704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02186604 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x02600031, 0x23400025, 0x408d07e0, 0x00000200 },
{ 0x00800001, 0x236001ad, 0x002e0340, 0x00000000 },
{ 0x00600001, 0x202000a2, 0x008d0360, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x00000026, 0x00010001 },
{ 0x00800031, 0x20001d28, 0x608d07e0, 0x04080020 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00a02001, 0x20400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x206601ed, 0x00000000, 0x00010001 },
{ 0x00000009, 0x20663dad, 0x00000066, 0x000a000a },
{ 0x00000001, 0x22600169, 0x00000000, 0x00010001 },
{ 0x00000008, 0x22403dad, 0x00000026, 0x00010001 },
{ 0x00000041, 0x224235ad, 0x00000020, 0x00000022 },
{ 0x00600001, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x203c0022, 0x00000018, 0x00000000 },
{ 0x00000001, 0x203f01f2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c00e2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c010a, 0x00000e00, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0020, 0x00000000 },
{ 0x00400001, 0x205401ed, 0x00000000, 0x00000000 },
{ 0x00200040, 0x20583dad, 0x00450020, 0xffffffff },
{ 0x00000001, 0x22000060, 0x00000000, 0x06080000 },
{ 0x00600001, 0x26000021, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x26140061, 0x00000000, 0x00c00400 },
{ 0x00000001, 0x26100169, 0x00000000, 0x12121212 },
{ 0x07600031, 0x26201c21, 0x308d0600, 0x02000000 },
{ 0x00000001, 0x22a00169, 0x00000000, 0x01400140 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00200020 },
{ 0x00000001, 0x203801e2, 0x00000000, 0x00010001 },
{ 0x00800001, 0x204001ae, 0x00b10020, 0x00000000 },
{ 0x00000008, 0x27e03d29, 0x000002a0, 0x00010001 },
{ 0x00800031, 0x20000128, 0x608d07e0, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x22a00169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x22600169, 0x00000000, 0x00020002 },
{ 0x00200401, 0x208000e5, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x208800e5, 0x00000000, 0xffffffc6 },
{ 0x00000801, 0x208c00e5, 0x00000000, 0xffffffca },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00100010 },
{ 0x00000001, 0x206001ed, 0x00000000, 0x00020002 },
{ 0x00000001, 0x206201ad, 0x0000005a, 0x00000000 },
{ 0x00000001, 0x20a001ed, 0x00000000, 0x00000000 },
{ 0x00200001, 0x228001ed, 0x00000000, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21000061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21400061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21800061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00ff00ff },
{ 0x00000041, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x05000010, 0x200035ac, 0x02000280, 0x00000240 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x01000010, 0x20002d28, 0x000090c2, 0x00000000 },
{ 0x03000010, 0x200035ac, 0x02000054, 0x00000058 },
{ 0x00000041, 0x22a03dad, 0x00000056, 0x00040004 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffff4 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00200001, 0xb0c00229, 0x00450054, 0x00000000 },
{ 0x00200040, 0x22803dad, 0x00450280, 0x00010001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x20380122, 0x00000260, 0x00000000 },
{ 0x00800001, 0x204001ae, 0x00b10040, 0x00000000 },
{ 0x00000008, 0x20003d2a, 0x000002a0, 0x00010001 },
{ 0x00000040, 0x22602d29, 0x00000260, 0x00020002 },
{ 0x00800031, 0x20000008, 0x608d0000, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x04200010, 0x200035ac, 0x00450054, 0x00450060 },
{ 0x00010040, 0x20a03dad, 0x02000056, 0x00010001 },
{ 0x05200010, 0x200035ac, 0x02450280, 0x00450240 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x00040004 },
{ 0x00000048, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x00200040, 0x205455ad, 0x00450054, 0x00450034 },
{ 0x02000010, 0x20003d8c, 0x00000600, 0x00010001 },
{ 0x00000041, 0x220e3d8c, 0x00000602, 0x00040004 },
{ 0x00010041, 0x22083dac, 0x000000a0, 0x00040004 },
{ 0x00010401, 0x205601ad, 0x000000a0, 0x00000000 },
{ 0x00010840, 0x20543d2d, 0x000090c0, 0x00010001 },
{ 0x00000220, 0x34001400, 0x00001400, 0x00009c80 },
{ 0x01000010, 0x20003dac, 0x02000280, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000006 },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffff6 },
{ 0x05000010, 0x200035ac, 0x00000240, 0x00000026 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffffc },
{ 0x07600031, 0x20001c20, 0x30000000, 0x02000001 },
{ 0x01600031, 0x20001c24, 0x708d0000, 0x82000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00400441, 0x45c03dad, 0x00000034, 0x00100010 },
{ 0x00400841, 0x45c23dad, 0x00000036, 0x00200020 },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00000001, 0x25e20129, 0x00000036, 0x00000000 },
{ 0x00000041, 0x25e435a1, 0x00000020, 0x00000036 },
{ 0x00000040, 0x25e43421, 0x000005e4, 0x00000034 },
{ 0x00000041, 0x25e42c21, 0x000005e4, 0x00800080 },
{ 0x00000040, 0x25c43dad, 0x000005c4, 0xfffcfffc },
{ 0x00000040, 0x25ca3dad, 0x000005ca, 0xfffcfffc },
{ 0x00000005, 0x202a3dad, 0x0000002a, 0xfffdfffd },
{ 0x02000005, 0x20002d2c, 0x0200002a, 0x00020002 },
{ 0x00000001, 0x27e80021, 0x000005e4, 0x00000000 },
{ 0x00010040, 0x27e83c21, 0x020007e8, 0x00400040 },
{ 0x01600031, 0x22401c21, 0x408d07e0, 0x02885800 },
{ 0x00000001, 0x220801ec, 0x00000000, 0x02400240 },
{ 0x01800005, 0x20002d28, 0x02b19040, 0xffffffff },
{ 0x02000005, 0x20003e2c, 0x00009030, 0x00010001 },
{ 0x00000005, 0x25ec2e29, 0x00009002, 0x000a000a },
{ 0x00000005, 0x25ea2e29, 0x00009002, 0x00060006 },
{ 0x000b0220, 0x34001c00, 0x02001400, 0x00000252 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000250 },
{ 0x01000010, 0x20003d2c, 0x000005ec, 0x00080008 },
{ 0x00000005, 0x25e03d8d, 0x00000600, 0x00010001 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a5, 0x004505c0, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f000f },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0288a001 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00100010 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x0288e701 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0288e601 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x20c00021, 0x408d07e0, 0x00000200 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c4, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f0003 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x02286003 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00100010 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x02286703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02286603 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x02600031, 0x23400025, 0x408d07e0, 0x00000200 },
{ 0x00800401, 0x23800231, 0x00a900c0, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00a90100, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00a90140, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00a90180, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00a900c4, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00a90104, 0x00000000 },
{ 0x00800401, 0x23e00231, 0x00a90144, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00a90184, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00a900c8, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00a90108, 0x00000000 },
{ 0x00800401, 0x24200231, 0x00a90148, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00a90188, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x20c00231, 0x00cf0380, 0x00000000 },
{ 0x00800801, 0x20d00231, 0x00cf0381, 0x00000000 },
{ 0x00800401, 0x20e00231, 0x00cf0382, 0x00000000 },
{ 0x00800801, 0x20f00231, 0x00cf0383, 0x00000000 },
{ 0x00800401, 0x21000231, 0x00cf03c0, 0x00000000 },
{ 0x00800801, 0x21100231, 0x00cf03c1, 0x00000000 },
{ 0x00800401, 0x21200231, 0x00cf03c2, 0x00000000 },
{ 0x00800801, 0x21300231, 0x00cf03c3, 0x00000000 },
{ 0x00800401, 0x21400231, 0x00cf0400, 0x00000000 },
{ 0x00800801, 0x21500231, 0x00cf0401, 0x00000000 },
{ 0x00800401, 0x21600231, 0x00cf0402, 0x00000000 },
{ 0x00800801, 0x21700231, 0x00cf0403, 0x00000000 },
{ 0x00800401, 0x21800231, 0x00cf0440, 0x00000000 },
{ 0x00800801, 0x21900231, 0x00cf0441, 0x00000000 },
{ 0x00800401, 0x21a00231, 0x00cf0442, 0x00000000 },
{ 0x00800801, 0x21b00231, 0x00cf0443, 0x00000000 },
{ 0x00800401, 0x20400231, 0x00cf0340, 0x00000000 },
{ 0x00800801, 0x20500231, 0x00cf0341, 0x00000000 },
{ 0x00800401, 0x20600231, 0x00cf0342, 0x00000000 },
{ 0x00800801, 0x20700231, 0x00cf0343, 0x00000000 },
{ 0x01600010, 0x20003d2c, 0x000005ea, 0x00040004 },
{ 0x01600010, 0x20003d2c, 0x020005ea, 0x00020002 },
{ 0x00800001, 0x21c00229, 0x00009080, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00009081, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00289060, 0x00000000 },
{ 0x00610401, 0x41c00229, 0x00009080, 0x00000000 },
{ 0x00610801, 0x41c20229, 0x00009090, 0x00000000 },
{ 0x00610401, 0x41e00229, 0x00009081, 0x00000000 },
{ 0x00610801, 0x41e20229, 0x00009091, 0x00000000 },
{ 0x00610401, 0x42000229, 0x00249060, 0x00000000 },
{ 0x00610801, 0x42020229, 0x00249098, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00400040 },
{ 0x00610401, 0x21c00229, 0x02009080, 0x00000000 },
{ 0x00610801, 0x21d00229, 0x02009090, 0x00000000 },
{ 0x00610401, 0x21e00229, 0x02009081, 0x00000000 },
{ 0x00610801, 0x21f00229, 0x02009091, 0x00000000 },
{ 0x00610401, 0x22000229, 0x02249060, 0x00000000 },
{ 0x00610801, 0x22100229, 0x02249098, 0x00000000 },
{ 0x00800008, 0x25a03d29, 0x008d01c0, 0x00020002 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200001, 0x25d80129, 0x00459050, 0x00000000 },
{ 0x00800040, 0x25a03d29, 0x00b105a0, 0x00020002 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001b4 },
{ 0x00800008, 0x25a03e29, 0x00009084, 0x00020002 },
{ 0x00800001, 0x21c00229, 0x00009084, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00009085, 0x00000000 },
{ 0x00000001, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00800040, 0x25a03d29, 0x00b105a0, 0x00020002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00c000c0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00000001, 0x25d80129, 0x00009040, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00289064, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000019c },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00100010 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01000100 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01400140 },
{ 0x00000001, 0x25d80129, 0x00009042, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00289068, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000018e },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01400140 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01800180 },
{ 0x00000001, 0x25d80129, 0x00009044, 0x00000000 },
{ 0x00800001, 0x22000229, 0x0028906c, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000180 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c4, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f0003 },
{ 0x00800401, 0x23400231, 0x00a90040, 0x00000000 },
{ 0x00800801, 0x23500231, 0x00a90044, 0x00000000 },
{ 0x00800401, 0x23600231, 0x00a90048, 0x00000000 },
{ 0x00800801, 0x23700231, 0x00a9004c, 0x00000000 },
{ 0x00800001, 0x20400232, 0x002b0340, 0x00000000 },
{ 0x00800001, 0x20500232, 0x002b0350, 0x00000000 },
{ 0x00800001, 0x20600232, 0x002b0360, 0x00000000 },
{ 0x00800001, 0x20700232, 0x002b0370, 0x00000000 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x06082003 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00100010 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x06082703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x06082603 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c8, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0003000f },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00000001, 0x22000060, 0x00000000, 0x02286003 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00100010 },
{ 0x01000005, 0x20003dac, 0x020005e0, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000006 },
{ 0x00000440, 0x27e43ca5, 0x000007e4, 0xfffcfffc },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0007000f },
{ 0x00000040, 0x22000c00, 0x00000200, 0x00200000 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000c },
{ 0x0000000c, 0x27e43da5, 0x000005c2, 0x00010001 },
{ 0x00010001, 0x22000060, 0x02000000, 0x02286703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02286603 },
{ 0x00000040, 0x27e43ca5, 0x000007e4, 0xfffcfffc },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x20400021, 0x408d07e0, 0x00000200 },
{ 0x00800401, 0x23800231, 0x00a900c0, 0x00000000 },
{ 0x00800801, 0x23900231, 0x00a90100, 0x00000000 },
{ 0x00800401, 0x23a00231, 0x00a90140, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00a90180, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00a900c4, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00a90104, 0x00000000 },
{ 0x00800401, 0x23e00231, 0x00a90144, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00a90184, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00a900c8, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00a90108, 0x00000000 },
{ 0x00800401, 0x24200231, 0x00a90148, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00a90188, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00a900cc, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00a9010c, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00a9014c, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00a9018c, 0x00000000 },
{ 0x00800401, 0x20c00231, 0x00cf0380, 0x00000000 },
{ 0x00800801, 0x20d00231, 0x00cf0381, 0x00000000 },
{ 0x00800401, 0x20e00231, 0x00cf0382, 0x00000000 },
{ 0x00800801, 0x20f00231, 0x00cf0383, 0x00000000 },
{ 0x00800401, 0x21000231, 0x00cf03c0, 0x00000000 },
{ 0x00800801, 0x21100231, 0x00cf03c1, 0x00000000 },
{ 0x00800401, 0x21200231, 0x00cf03c2, 0x00000000 },
{ 0x00800801, 0x21300231, 0x00cf03c3, 0x00000000 },
{ 0x00800401, 0x21400231, 0x00cf0400, 0x00000000 },
{ 0x00800801, 0x21500231, 0x00cf0401, 0x00000000 },
{ 0x00800401, 0x21600231, 0x00cf0402, 0x00000000 },
{ 0x00800801, 0x21700231, 0x00cf0403, 0x00000000 },
{ 0x00800401, 0x21800231, 0x00cf0440, 0x00000000 },
{ 0x00800801, 0x21900231, 0x00cf0441, 0x00000000 },
{ 0x00800401, 0x21a00231, 0x00cf0442, 0x00000000 },
{ 0x00800801, 0x21b00231, 0x00cf0443, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00800080 },
{ 0x00000001, 0x260201ac, 0x000005e0, 0x00000000 },
{ 0x00800008, 0x25a03e29, 0x00009082, 0x00020002 },
{ 0x00200001, 0x25d80129, 0x00459054, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00009082, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00009083, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00289070, 0x00000000 },
{ 0x00800040, 0x25a03d29, 0x00b105a0, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000050 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000000a },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000d4 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000044 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x05000500 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x05400540 },
{ 0x00800001, 0x25000129, 0x00ad0040, 0x00000000 },
{ 0x00800001, 0x25200129, 0x00ad0080, 0x00000000 },
{ 0x00800001, 0x25400129, 0x00ad00c0, 0x00000000 },
{ 0x00800001, 0x25600129, 0x00ad0100, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000c2 },
{ 0x00600001, 0x20600129, 0x008d0510, 0x00000000 },
{ 0x00600001, 0x20800129, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x20a00129, 0x008d0530, 0x00000000 },
{ 0x00600001, 0x20c00129, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x20e00129, 0x008d0550, 0x00000000 },
{ 0x00600001, 0x21000129, 0x008d0560, 0x00000000 },
{ 0x00800008, 0x25a03e29, 0x00009092, 0x00020002 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x05000500 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x05400540 },
{ 0x00800001, 0x25000129, 0x00ad0050, 0x00000000 },
{ 0x00800001, 0x25200129, 0x00ad0090, 0x00000000 },
{ 0x00800001, 0x25400129, 0x00ad00d0, 0x00000000 },
{ 0x00800001, 0x25600129, 0x00ad0110, 0x00000000 },
{ 0x00200001, 0x25d80129, 0x0045905c, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00009092, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00009093, 0x00000000 },
{ 0x00800001, 0x22000229, 0x0028909c, 0x00000000 },
{ 0x00800040, 0x25a03d29, 0x00b105a0, 0x00020002 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000009a },
{ 0x00600001, 0x20700129, 0x008d0510, 0x00000000 },
{ 0x00600001, 0x20900129, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x20b00129, 0x008d0530, 0x00000000 },
{ 0x00600001, 0x20d00129, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x20f00129, 0x008d0550, 0x00000000 },
{ 0x00600001, 0x21100129, 0x008d0560, 0x00000000 },
{ 0x00800008, 0x25a03e29, 0x00009084, 0x00020002 },
{ 0x00800001, 0x21c00229, 0x00009084, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00009085, 0x00000000 },
{ 0x00000001, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00800040, 0x25a03d29, 0x00b105a0, 0x00020002 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00c000c0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00000001, 0x25d80129, 0x00009046, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00289074, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000076 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00100010 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01000100 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01400140 },
{ 0x00000001, 0x25d80129, 0x00009048, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00289078, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000068 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00200020 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x01400140 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01800180 },
{ 0x00000001, 0x25d80129, 0x0000904a, 0x00000000 },
{ 0x00800001, 0x22000229, 0x0028907c, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x0000005a },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c0, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x000f000f },
{ 0x00802001, 0x20400022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0100, 0x00000000 },
{ 0x00802001, 0x20c00022, 0x008d0140, 0x00000000 },
{ 0x00802001, 0x21000022, 0x008d0180, 0x00000000 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x12082003 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00100010 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x12082703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x12082603 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x01800005, 0x20003dac, 0x020005e0, 0x00010001 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x00200401, 0x27e001a1, 0x004505c8, 0x00000000 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0003000f },
{ 0x00812001, 0x20400022, 0x028d0040, 0x00000000 },
{ 0x00912001, 0x20400022, 0x028d0080, 0x00000000 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0618a003 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00100010 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000c },
{ 0x0000000c, 0x27e43da5, 0x000005c2, 0x00010001 },
{ 0x00010001, 0x22000060, 0x02000000, 0x0618a703 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0618a603 },
{ 0x00000040, 0x27e43ca5, 0x000007e4, 0xfffcfffc },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x26400021, 0x508d07e0, 0x00000200 },
{ 0x01000005, 0x20003dac, 0x0000002a, 0x00020002 },
{ 0x00000006, 0x202a3dad, 0x0000002a, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffd94 },
{ 0x00600001, 0x26400021, 0x008d0640, 0x00000000 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00800040, 0x2400462d, 0x00b19c00, 0x00b1d830 },
{ 0x00800040, 0x2340462d, 0x00b19820, 0x00b1d830 },
{ 0x00800040, 0x2360462d, 0x00b19c10, 0x00b1dc00 },
{ 0x05810010, 0x200025ac, 0x008d2400, 0x008d01c0 },
{ 0x05810010, 0x200025ac, 0x008d2340, 0x008d01e0 },
{ 0x05810010, 0x200025ac, 0x008d2360, 0x008d01e0 },
{ 0x00818022, 0x34001c00, 0x00001400, 0x000000c8 },
{ 0x00800040, 0x2440462d, 0x00b19810, 0x00b1d830 },
{ 0x00800040, 0x2460462d, 0x00b19c20, 0x00b1dc00 },
{ 0x00800201, 0x24a00129, 0x00b19820, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x02001400, 0x00000066 },
{ 0x05800010, 0x200025ac, 0x028d2400, 0x008d05a0 },
{ 0x00800040, 0x2520462d, 0x00b19830, 0x00b19820 },
{ 0x00800040, 0x2540462d, 0x00b19c00, 0x00b19c10 },
{ 0x00000201, 0x26000108, 0x00000602, 0x00000000 },
{ 0x05810010, 0x200025ac, 0x028d2440, 0x008d01e0 },
{ 0x05810010, 0x200025ac, 0x008d2460, 0x008d01e0 },
{ 0x00818022, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x00800040, 0x2560462d, 0x00b19810, 0x00b19800 },
{ 0x00800040, 0x238045ad, 0x008d0520, 0x00b19c00 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00040004 },
{ 0x00800040, 0x23a0458d, 0x00b10400, 0x00b19810 },
{ 0x00800048, 0x24003dac, 0x008d0560, 0x00020002 },
{ 0x80800008, 0x43c03d91, 0x00b10400, 0x00030003 },
{ 0x00800040, 0x24003dac, 0x00b103a0, 0xfffefffe },
{ 0x80800008, 0x43603d91, 0x00b10400, 0x00020002 },
{ 0x00800040, 0x2400362c, 0x00b19c10, 0x00b10380 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00b103a0 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00030003 },
{ 0x00800001, 0xb8100231, 0x00ae03c0, 0x00000000 },
{ 0x00800001, 0xb8200231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0xb8300231, 0x00ae0340, 0x00000000 },
{ 0x00808024, 0x34001c00, 0x00001400, 0x0001000e },
{ 0x00800040, 0x2400362c, 0x00b19820, 0x008d0520 },
{ 0x00800040, 0x2400458c, 0x00b10400, 0x00b19c10 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00020002 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00020002 },
{ 0x00800001, 0xb8300231, 0x00ae0340, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x00800040, 0x2580462d, 0x00b19c20, 0x00b19c30 },
{ 0x00800040, 0x238045ad, 0x008d0540, 0x008d04b0 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00040004 },
{ 0x00800040, 0x23a0458d, 0x00b10400, 0x00b19c20 },
{ 0x00800048, 0x24003dac, 0x008d0580, 0x00020002 },
{ 0x80800008, 0x43c03d91, 0x00b10400, 0x00030003 },
{ 0x00800040, 0x24003dac, 0x00b103a0, 0xfffefffe },
{ 0x80800008, 0x43603d91, 0x00b10400, 0x00020002 },
{ 0x00800040, 0x2400362c, 0x008d04a0, 0x00b10380 },
{ 0x00800040, 0x2400358c, 0x00b10400, 0x00b103a0 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00030003 },
{ 0x00800001, 0xbc200231, 0x00ae03c0, 0x00000000 },
{ 0x00800001, 0xbc100231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0xbc000231, 0x00ae0340, 0x00000000 },
{ 0x00808024, 0x34001c00, 0x00001400, 0x0001000e },
{ 0x00800040, 0x2400362c, 0x008d04a0, 0x008d0540 },
{ 0x00800040, 0x2400458c, 0x00b10400, 0x00b19c10 },
{ 0x00800040, 0x24003d8c, 0x00b10400, 0x00020002 },
{ 0x80800008, 0x43403d91, 0x00b10400, 0x00020002 },
{ 0x00800001, 0xbc000231, 0x00ae0340, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00808024, 0x34001c00, 0x00001400, 0x0001005a },
{ 0x00800001, 0x23e0012d, 0x008d0200, 0x00000000 },
{ 0x05800010, 0x200025ac, 0x008d2440, 0x008d01e0 },
{ 0x05800010, 0x200025ac, 0x028d2460, 0x008d01e0 },
{ 0x00800040, 0x24003e2c, 0x00b19820, 0x00040004 },
{ 0x00800048, 0x24003dac, 0x008d0400, 0x00040004 },
{ 0x00800040, 0x2400458c, 0x00b10400, 0x00b1dc10 },
{ 0x00800008, 0x23403d8d, 0x00b10400, 0x00030003 },
{ 0x00810040, 0x23e03dad, 0x008d03e0, 0x00010001 },
{ 0x00200201, 0x25ec018d, 0x00450600, 0x00000000 },
{ 0x00810040, 0x23e03dad, 0x028d03e0, 0x00010001 },
{ 0x03800010, 0x200035ac, 0x008d0340, 0x008d03e0 },
{ 0x05800010, 0x200035ac, 0x028d0340, 0x008d43e0 },
{ 0x00800042, 0x24c0462d, 0x00b19830, 0x00b19c00 },
{ 0x00810001, 0x234001ad, 0x008d03e0, 0x00000000 },
{ 0x00810001, 0x234001ad, 0x028d43e0, 0x00000000 },
{ 0x00200201, 0x260001ac, 0x004505ec, 0x00000000 },
{ 0x80800040, 0x43603631, 0x00b19830, 0x008d0340 },
{ 0x80800040, 0x43403631, 0x00b19c00, 0x008d4340 },
{ 0x00800001, 0xb8300231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0xbc000231, 0x00ae0340, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00800040, 0x2400362c, 0x00b19810, 0x008d04c0 },
{ 0x00800048, 0x24003e2c, 0x00b19820, 0xfffefffe },
{ 0x00800008, 0x23603d8d, 0x00b10400, 0x00010001 },
{ 0x03800010, 0x200025ac, 0x008d0360, 0x008d0200 },
{ 0x05800010, 0x200025ac, 0x028d0360, 0x008d4200 },
{ 0x00810001, 0x2360012d, 0x008d0200, 0x00000000 },
{ 0x00810001, 0x2360012d, 0x028d4200, 0x00000000 },
{ 0x00000201, 0x260201ac, 0x000005ee, 0x00000000 },
{ 0x80800040, 0x43603631, 0x00b19820, 0x008d0360 },
{ 0x00800001, 0xb8200231, 0x00ae0360, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00818022, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00800040, 0x2400362c, 0x00b19c20, 0x008d04c0 },
{ 0x00800048, 0x24003e2c, 0x00b19c10, 0xfffefffe },
{ 0x00800008, 0x23603d8d, 0x00b10400, 0x00010001 },
{ 0x03800010, 0x200025ac, 0x008d0360, 0x008d0200 },
{ 0x05800010, 0x200025ac, 0x028d0360, 0x008d4200 },
{ 0x00810001, 0x2360012d, 0x008d0200, 0x00000000 },
{ 0x00810001, 0x2360012d, 0x028d4200, 0x00000000 },
{ 0x80800040, 0x43603631, 0x00b19c10, 0x008d0360 },
{ 0x00800001, 0xbc100231, 0x00ae0360, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007c0, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00a02001, 0x20400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x206601ed, 0x00000000, 0x00010001 },
{ 0x00000009, 0x20663dad, 0x00000066, 0x000a000a },
{ 0x00000001, 0x206801ed, 0x00000000, 0x01400140 },
{ 0x00000001, 0x22600169, 0x00000000, 0x00030003 },
{ 0x00000008, 0x22403dad, 0x00000026, 0x00010001 },
{ 0x00000041, 0x224235ad, 0x00000020, 0x00000022 },
{ 0x00600001, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x203c0022, 0x00000018, 0x00000000 },
{ 0x00000001, 0x203f01f2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c00e2, 0x00000000, 0x00000000 },
{ 0x00000001, 0x202c010a, 0x00000e00, 0x00000000 },
{ 0x00600001, 0x20400021, 0x008d0020, 0x00000000 },
{ 0x00400001, 0x205401ed, 0x00000000, 0x00000000 },
{ 0x00200040, 0x20583dad, 0x00450020, 0xffffffff },
{ 0x00000001, 0x22000060, 0x00000000, 0x06080000 },
{ 0x00600001, 0x26000021, 0x008d0000, 0x00000000 },
{ 0x00000001, 0x26140061, 0x00000000, 0x00c00400 },
{ 0x00000001, 0x26100169, 0x00000000, 0x12121212 },
{ 0x07600031, 0x26201c21, 0x308d0600, 0x02000000 },
{ 0x00200401, 0x208000e5, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x208800e5, 0x00000000, 0xffffffc4 },
{ 0x00000801, 0x208c00e5, 0x00000000, 0xffffffc8 },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d07e0, 0x00000000 },
{ 0x00000040, 0x20283c22, 0x00000008, 0x00100010 },
{ 0x00000001, 0x206001ed, 0x00000000, 0x00020002 },
{ 0x00000001, 0x206201ad, 0x0000005a, 0x00000000 },
{ 0x00000001, 0x20a001ed, 0x00000000, 0x00000000 },
{ 0x00200001, 0x228001ed, 0x00000000, 0x00000000 },
{ 0x00802001, 0x20c00061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21000061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21400061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21800061, 0x00000000, 0x00ff00ff },
{ 0x00802001, 0x21c00061, 0x00000000, 0x00ff00ff },
{ 0x00000041, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x05000010, 0x200035ac, 0x02000280, 0x00000240 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000004 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x01000010, 0x20002d28, 0x000090c2, 0x00000000 },
{ 0x03000010, 0x200035ac, 0x02000054, 0x00000058 },
{ 0x00800001, 0x240001ac, 0x00000068, 0x00000000 },
{ 0x00000048, 0x22a03dad, 0x00000056, 0x00040004 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffff2 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00200001, 0xb0c00229, 0x00450054, 0x00000000 },
{ 0x00200040, 0x22803dad, 0x00450280, 0x00010001 },
{ 0x00000001, 0x20300022, 0x00000010, 0x00000000 },
{ 0x00000001, 0x20380122, 0x00000260, 0x00000000 },
{ 0x00800001, 0x204001ae, 0x00b10040, 0x00000000 },
{ 0x00000008, 0x20003d2a, 0x000002a0, 0x00010001 },
{ 0x00000040, 0x22602d29, 0x00000260, 0x00020002 },
{ 0x00800031, 0x20000008, 0x608d0000, 0x00000200 },
{ 0x00000006, 0x203025a2, 0x00000066, 0x000002a0 },
{ 0x01600031, 0x20001c00, 0x708d0000, 0x02000001 },
{ 0x04200010, 0x200035ac, 0x00450054, 0x00450060 },
{ 0x00010040, 0x20a03dad, 0x02000056, 0x00010001 },
{ 0x05200010, 0x200035ac, 0x02450280, 0x00450240 },
{ 0x00000001, 0x240001ec, 0x00000000, 0x00040004 },
{ 0x00000048, 0x22083dac, 0x00000056, 0x00040004 },
{ 0x00200040, 0x205455ad, 0x00450054, 0x00450034 },
{ 0x02000010, 0x20003d8c, 0x00000600, 0x00010001 },
{ 0x00000041, 0x220e3d8c, 0x00000602, 0x00040004 },
{ 0x00010041, 0x22083dac, 0x000000a0, 0x00040004 },
{ 0x00010401, 0x205601ad, 0x000000a0, 0x00000000 },
{ 0x00010840, 0x20543d2d, 0x000090c0, 0x00010001 },
{ 0x00000220, 0x34001400, 0x00001400, 0x00009c80 },
{ 0x01000010, 0x20003dac, 0x02000280, 0x00000000 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000014 },
{ 0x00000030, 0x32000084, 0x00001200, 0x00000000 },
{ 0x00000040, 0x22803dad, 0x00000280, 0xffffffff },
{ 0x00600401, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000c01, 0x26140061, 0x00000000, 0x01800000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000801, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00000040, 0x2078252d, 0x00000026, 0x00004280 },
{ 0x00400001, 0x26000231, 0x00000078, 0x00000000 },
{ 0x00600031, 0x26201c21, 0x308d0600, 0x02000002 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffffe8 },
{ 0x07600031, 0x20001c20, 0x30000000, 0x02000001 },
{ 0x01600031, 0x20001c24, 0x708d0000, 0x82000012 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0000, 0x00000000 },
{ 0x00400441, 0x45c03dad, 0x00000034, 0x00100010 },
{ 0x00400841, 0x45c23dad, 0x00000036, 0x00200020 },
{ 0x00200001, 0x260001ec, 0x00000000, 0x00000000 },
{ 0x00000001, 0x25e20129, 0x00000036, 0x00000000 },
{ 0x00000041, 0x25e435a1, 0x00000020, 0x00000036 },
{ 0x00000040, 0x25e43421, 0x000005e4, 0x00000034 },
{ 0x00000041, 0x25e42c21, 0x000005e4, 0x00800080 },
{ 0x00000040, 0x25c43dad, 0x000005c4, 0xfffcfffc },
{ 0x00000040, 0x25ca3dad, 0x000005ca, 0xfffcfffc },
{ 0x00000005, 0x202a3dad, 0x0000002a, 0xfffdfffd },
{ 0x00800001, 0x2220022d, 0x000d002c, 0x00000000 },
{ 0x00600040, 0x22303dad, 0x008d0230, 0x00080008 },
{ 0x02000005, 0x20002d2c, 0x0200002a, 0x00020002 },
{ 0x00000001, 0x27e80021, 0x000005e4, 0x00000000 },
{ 0x00010040, 0x27e83c21, 0x020007e8, 0x00400040 },
{ 0x01600031, 0x22401c21, 0x408d07e0, 0x02885800 },
{ 0x00000001, 0x220801ec, 0x00000000, 0x02400240 },
{ 0x01800005, 0x20002d28, 0x02b19040, 0xffffffff },
{ 0x02000005, 0x20003e2c, 0x00009030, 0x00010001 },
{ 0x00000005, 0x25ec2e29, 0x00009002, 0x000a000a },
{ 0x00000005, 0x25ea2e29, 0x00009002, 0x00060006 },
{ 0x000b0220, 0x34001c00, 0x02001400, 0x00000252 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000250 },
{ 0x01000010, 0x20003d2c, 0x000005ec, 0x00080008 },
{ 0x00000005, 0x25e03d8d, 0x00000600, 0x00010001 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c0, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0007000f },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0248a002 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00080008 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x0248e702 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0248e602 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x02600031, 0x20c00021, 0x408d07e0, 0x00000200 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c4, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c6, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x00070003 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x02186004 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00080008 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x02186704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02186604 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x02600031, 0x23400025, 0x408d07e0, 0x00000200 },
{ 0x00800001, 0x2380012d, 0x008900c0, 0x00000000 },
{ 0x00800001, 0x23a0012d, 0x00890100, 0x00000000 },
{ 0x00800001, 0x23c0012d, 0x008900c8, 0x00000000 },
{ 0x00800001, 0x23e0012d, 0x00890108, 0x00000000 },
{ 0x00600401, 0x20c001a9, 0x00ab0380, 0x00000000 },
{ 0x00600801, 0x20d001a9, 0x00ab0382, 0x00000000 },
{ 0x00600401, 0x20e001a9, 0x00ab0384, 0x00000000 },
{ 0x00600801, 0x20f001a9, 0x00ab0386, 0x00000000 },
{ 0x00600401, 0x210001a9, 0x00ab03c0, 0x00000000 },
{ 0x00600801, 0x211001a9, 0x00ab03c2, 0x00000000 },
{ 0x00600401, 0x212001a9, 0x00ab03c4, 0x00000000 },
{ 0x00600801, 0x213001a9, 0x00ab03c6, 0x00000000 },
{ 0x00800001, 0x204001a9, 0x002e0340, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00400040 },
{ 0x01000010, 0x20003d2c, 0x020005ea, 0x00040004 },
{ 0x00800008, 0x2340352d, 0x00009050, 0x008d0220 },
{ 0x00800008, 0x2360352d, 0x00009052, 0x008d0220 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000006a },
{ 0x01000010, 0x20003d2c, 0x000005ea, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x02600005, 0x20003dac, 0x00650340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02650360, 0x00010001 },
{ 0x00400401, 0x41c00229, 0x000090c0, 0x00000000 },
{ 0x00400801, 0x41c20229, 0x000090e0, 0x00000000 },
{ 0x00400401, 0x41e00229, 0x000090c1, 0x00000000 },
{ 0x00400801, 0x41e20229, 0x000090e1, 0x00000000 },
{ 0x00400401, 0x42000229, 0x006990a0, 0x00000000 },
{ 0x00400801, 0x42020229, 0x006990e8, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000001e },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000012 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00400401, 0x21c00229, 0x000090c0, 0x00000000 },
{ 0x00400801, 0x21c80229, 0x000090e0, 0x00000000 },
{ 0x00400401, 0x21e00229, 0x000090c1, 0x00000000 },
{ 0x00400801, 0x21e80229, 0x000090e1, 0x00000000 },
{ 0x00400401, 0x22000229, 0x006990a0, 0x00000000 },
{ 0x00400801, 0x22080229, 0x006990e8, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00600001, 0x21c00229, 0x000090c0, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090c1, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490a0, 0x00000000 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001c8 },
{ 0x01400010, 0x20003d2c, 0x000005ea, 0x00040004 },
{ 0x01400010, 0x20003d2c, 0x020005ea, 0x00020002 },
{ 0x00600001, 0x21c00229, 0x000090c8, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090c9, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490b0, 0x00000000 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00410041 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c100c1 },
{ 0x00410401, 0x41c00229, 0x000090c8, 0x00000000 },
{ 0x00410801, 0x41c20229, 0x000090f0, 0x00000000 },
{ 0x00410401, 0x41e00229, 0x000090c9, 0x00000000 },
{ 0x00410801, 0x41e20229, 0x000090f1, 0x00000000 },
{ 0x00410401, 0x42000229, 0x006990b0, 0x00000000 },
{ 0x00410801, 0x42020229, 0x006990f8, 0x00000000 },
{ 0x00410401, 0x21c00229, 0x020090c8, 0x00000000 },
{ 0x00410801, 0x21c80229, 0x020090f0, 0x00000000 },
{ 0x00410401, 0x21e00229, 0x020090c9, 0x00000000 },
{ 0x00410801, 0x21e80229, 0x020090f1, 0x00000000 },
{ 0x00410401, 0x22000229, 0x026990b0, 0x00000000 },
{ 0x00410801, 0x22080229, 0x026990f8, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000019c },
{ 0x00800008, 0x2340352d, 0x00009042, 0x008d0220 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e000e0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00600001, 0x21c00229, 0x000090c4, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090c5, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490a4, 0x00000000 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x00000001, 0x260201e8, 0x00000000, 0x00000000 },
{ 0x00000401, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000801, 0x25d80109, 0x00000600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000184 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e100e1 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01010101 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00600001, 0x21c00229, 0x000090cc, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090cd, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490b4, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000174 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c4, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c6, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x00070003 },
{ 0x00600401, 0x2340012d, 0x00890040, 0x00000000 },
{ 0x00600801, 0x2350012d, 0x00890048, 0x00000000 },
{ 0x00600001, 0x204001aa, 0x00270340, 0x00000000 },
{ 0x00600001, 0x205001aa, 0x00270350, 0x00000000 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x04082004 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00080008 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x04082704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x04082604 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c8, 0x00000000 },
{ 0x00000c0c, 0x27e43da5, 0x000005ca, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0001000f },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00000001, 0x22000060, 0x00000000, 0x02186004 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00080008 },
{ 0x01000005, 0x20003dac, 0x020005e0, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000006 },
{ 0x00000440, 0x27e43ca5, 0x000007e4, 0xfffefffe },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0003000f },
{ 0x00000040, 0x22000c00, 0x00000200, 0x00100000 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000c },
{ 0x0000000c, 0x27e43da5, 0x000005c2, 0x00020002 },
{ 0x00010001, 0x22000060, 0x02000000, 0x02186704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x02186604 },
{ 0x00000040, 0x27e43ca5, 0x000007e4, 0xfffefffe },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x02600031, 0x20400021, 0x408d07e0, 0x00000200 },
{ 0x00800001, 0x2380012d, 0x008900c0, 0x00000000 },
{ 0x00800001, 0x23a0012d, 0x00890100, 0x00000000 },
{ 0x00800001, 0x23c0012d, 0x008900c8, 0x00000000 },
{ 0x00800001, 0x23e0012d, 0x00890108, 0x00000000 },
{ 0x00600401, 0x20c001a9, 0x00ab0380, 0x00000000 },
{ 0x00600801, 0x20d001a9, 0x00ab0382, 0x00000000 },
{ 0x00600401, 0x20e001a9, 0x00ab0384, 0x00000000 },
{ 0x00600801, 0x20f001a9, 0x00ab0386, 0x00000000 },
{ 0x00600401, 0x210001a9, 0x00ab03c0, 0x00000000 },
{ 0x00600801, 0x211001a9, 0x00ab03c2, 0x00000000 },
{ 0x00600401, 0x212001a9, 0x00ab03c4, 0x00000000 },
{ 0x00600801, 0x213001a9, 0x00ab03c6, 0x00000000 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00800080 },
{ 0x00000001, 0x260201ac, 0x000005e0, 0x00000000 },
{ 0x00800008, 0x2340352d, 0x00009054, 0x008d0220 },
{ 0x00800008, 0x2360352d, 0x00009056, 0x008d0220 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000026 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00400040 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c000c0 },
{ 0x00600001, 0x21c00229, 0x000090c2, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090c3, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490a8, 0x00000000 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000f0 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00410041 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x00c100c1 },
{ 0x00600001, 0x21c00229, 0x000090ca, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090cb, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490b8, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000e0 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x05000500 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x05200520 },
{ 0x00800001, 0x25000129, 0x00ad0040, 0x00000000 },
{ 0x00800001, 0x25200129, 0x00ad00c0, 0x00000000 },
{ 0x00600001, 0x21c00229, 0x000090c2, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090c3, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490a8, 0x00000000 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000c6 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x05010501 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x05210521 },
{ 0x00600001, 0x21c00229, 0x000090ca, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090cb, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490b8, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000000b6 },
{ 0x00800008, 0x2340352d, 0x0000905c, 0x008d0220 },
{ 0x00800008, 0x2360352d, 0x0000905e, 0x008d0220 },
{ 0x00600001, 0x20600129, 0x008d0510, 0x00000000 },
{ 0x00600001, 0x20c00129, 0x008d0520, 0x00000000 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x02600005, 0x20003dac, 0x02ae0360, 0x00010001 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x05000500 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x05200520 },
{ 0x00800001, 0x25000129, 0x00ad0050, 0x00000000 },
{ 0x00800001, 0x25200129, 0x00ad00d0, 0x00000000 },
{ 0x00600001, 0x21c00229, 0x000090e2, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090e3, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490ec, 0x00000000 },
{ 0x00200001, 0x25d80109, 0x00450600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000096 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x05010501 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x05210521 },
{ 0x00600001, 0x21c00229, 0x000090f2, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090f3, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490fc, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00600001, 0x20700129, 0x008d0510, 0x00000000 },
{ 0x00600001, 0x20d00129, 0x008d0520, 0x00000000 },
{ 0x00800008, 0x2340352d, 0x00009048, 0x008d0220 },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e000e0 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01000100 },
{ 0x00600001, 0x21c00229, 0x000090c4, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090c5, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490ac, 0x00000000 },
{ 0x02600005, 0x20003dac, 0x00ae0340, 0x00010001 },
{ 0x00000001, 0x260201e8, 0x00000000, 0x00000000 },
{ 0x00000401, 0x25da01e9, 0x00000000, 0x00000000 },
{ 0x00000801, 0x25d80109, 0x00000600, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000006a },
{ 0x00000401, 0x220c01ec, 0x00000000, 0x00e100e1 },
{ 0x00000801, 0x220e01ec, 0x00000000, 0x01010101 },
{ 0x00600001, 0x21c00229, 0x000090cc, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x000090cd, 0x00000000 },
{ 0x00600001, 0x22000229, 0x002490bc, 0x00000000 },
{ 0x00200001, 0x26000128, 0x004505d8, 0x00000000 },
{ 0x00000040, 0x27c01c01, 0x00001400, 0x00000020 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000005a },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c0, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005c2, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0007000f },
{ 0x00802001, 0x20400022, 0x008d00c0, 0x00000000 },
{ 0x00802001, 0x20800022, 0x008d0100, 0x00000000 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0a082004 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00080008 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000a },
{ 0x00010001, 0x22000060, 0x02000000, 0x0a082704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0a082604 },
{ 0x0000000c, 0x27e43ca5, 0x000007e4, 0x00010001 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x20000020, 0x508d07e0, 0x00000200 },
{ 0x01600005, 0x20003dac, 0x020005e0, 0x00010001 },
{ 0x01000005, 0x20003e2c, 0x00009002, 0x00020002 },
{ 0x00000401, 0x27e001a1, 0x000005c8, 0x00000000 },
{ 0x00000c0c, 0x27e43da1, 0x000005ca, 0x00010001 },
{ 0x00000801, 0x27e80061, 0x00000000, 0x0001000f },
{ 0x00610001, 0x20400022, 0x028d0040, 0x00000000 },
{ 0x00710001, 0x20400022, 0x028d0060, 0x00000000 },
{ 0x02000005, 0x20003dac, 0x0200002a, 0x00020002 },
{ 0x00018022, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0418a004 },
{ 0x00010040, 0x27e43ca5, 0x020007e4, 0x00080008 },
{ 0x00008024, 0x34001c00, 0x00001400, 0x0001000c },
{ 0x0000000c, 0x27e43da5, 0x000005c2, 0x00020002 },
{ 0x00010001, 0x22000060, 0x02000000, 0x0418a704 },
{ 0x00110001, 0x22000060, 0x02000000, 0x0418a604 },
{ 0x00000040, 0x27e43ca5, 0x000007e4, 0xfffefffe },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x01600031, 0x26400021, 0x508d07e0, 0x00000200 },
{ 0x01000005, 0x20003dac, 0x0000002a, 0x00020002 },
{ 0x00000006, 0x202a3dad, 0x0000002a, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x00001400, 0xfffffd94 },
{ 0x00600001, 0x26400021, 0x008d0640, 0x00000000 },
{ 0x00600001, 0x260001e1, 0x00000000, 0x00000000 },
{ 0x00000009, 0x26143da1, 0x000005e2, 0x00120012 },
{ 0x00000440, 0x26141c21, 0x00000614, 0x00020000 },
{ 0x00000c01, 0x26120129, 0x0000000c, 0x00000000 },
{ 0x00000c01, 0x26100169, 0x00000000, 0x12121212 },
{ 0x00400801, 0x26000171, 0x00000000, 0xffffffff },
{ 0x00600031, 0x20001c20, 0x308d0600, 0x82008002 },
{ 0x00600040, 0x2400462d, 0x00ae9c00, 0x00aed810 },
{ 0x00600040, 0x2340462d, 0x00ae9800, 0x00aed810 },
{ 0x00600040, 0x2360462d, 0x00ae9c10, 0x00aedc00 },
{ 0x05810010, 0x200025ac, 0x008d2400, 0x008d01c0 },
{ 0x05810010, 0x200025ac, 0x008d2340, 0x008d01e0 },
{ 0x05810010, 0x200025ac, 0x008d2360, 0x008d01e0 },
{ 0x00618022, 0x34001c00, 0x00001400, 0x00000036 },
{ 0x00618022, 0x34001c00, 0x02001400, 0x00000016 },
{ 0x00600040, 0x24003e2c, 0x00ae9c10, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x00ae9800, 0x00020002 },
{ 0x00600040, 0x2400458c, 0x008d0400, 0x00ae9810 },
{ 0x80600008, 0x43403d91, 0x008d0400, 0x00020002 },
{ 0x00600040, 0x24003e2c, 0x00ae9800, 0x00020002 },
{ 0x00600048, 0x24003e2c, 0x00ae9c10, 0x00020002 },
{ 0x00600040, 0x2400458c, 0x008d0400, 0x00ae9c00 },
{ 0x80600008, 0x43603d91, 0x008d0400, 0x00020002 },
{ 0x00600001, 0xd8100231, 0x00ae0340, 0x00000000 },
{ 0x00600001, 0xdc000231, 0x00ae0360, 0x00000000 },
{ 0x00608024, 0x34001c00, 0x00001400, 0x0001001e },
{ 0x00600040, 0x23e03d2d, 0x008d0200, 0x00010001 },
{ 0x00600040, 0x24003e2c, 0x00ae9800, 0x00040004 },
{ 0x00600048, 0x24003dac, 0x008d0400, 0x00040004 },
{ 0x00600040, 0x2400458c, 0x008d0400, 0x00aedc10 },
{ 0x00600008, 0x23403d8d, 0x008d0400, 0x00030003 },
{ 0x03600010, 0x200035ac, 0x008d0340, 0x008d03e0 },
{ 0x05600010, 0x200035ac, 0x028d0340, 0x008d43e0 },
{ 0x00610001, 0x234001ad, 0x008d03e0, 0x00000000 },
{ 0x00610001, 0x234001ad, 0x028d43e0, 0x00000000 },
{ 0x80600040, 0x43603631, 0x00ae9810, 0x008d0340 },
{ 0x80600040, 0x43403631, 0x00ae9c00, 0x008d4340 },
{ 0x00600001, 0xd8100231, 0x00ae0360, 0x00000000 },
{ 0x00600001, 0xdc000231, 0x00ae0340, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00008025, 0x20000000, 0x00000000, 0x00000000 },
{ 0x00000001, 0x34000020, 0x000007c0, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
/drivers/video/i965/shaders/h264/mc/export.inc
0,0 → 1,345
#define INTRA_16x16_IP 0
#define INTRA_16x16_VERTICAL_IP 14
#define INTRA_16x16_HORIZONTAL_IP 32
#define INTRA_16x16_DC_IP 52
#define INTRA_16x16_PLANE_IP 98
#define End_intra_Pred_16x16_Y_IP 166
#define End_add_Error_16x16_Y_IP 204
#define load_Intra_Ref_Y_IP 220
#define decode_Chroma_Intra_IP 238
#define INTRA_CHROMA_DC_IP 260
#define INTRA_CHROMA_HORIZONTAL_IP 320
#define INTRA_CHROMA_VERTICAL_IP 332
#define INTRA_Chroma_PLANE_IP 342
#define End_of_intra_Pred_Chroma_IP 392
#define save_16x16_Y_IP 436
#define INTRA_8x8_IP 464
#define INTRA_8x8_BLK2_IP 568
#define intra_Pred_8x8_Y_IP 640
#define INTRA_8X8_VERTICAL_IP 672
#define INTRA_8X8_HORIZONTAL_IP 682
#define INTRA_8X8_DC_IP 692
#define INTRA_8X8_DIAG_DOWN_LEFT_IP 724
#define INTRA_8X8_DIAG_DOWN_RIGHT_IP 744
#define INTRA_8X8_VERT_RIGHT_IP 772
#define INTRA_8X8_HOR_DOWN_IP 808
#define INTRA_8X8_VERT_LEFT_IP 842
#define INTRA_8X8_HOR_UP_IP 862
#define save_8x8_Y_IP 886
#define INTRA_4x4_IP 928
#define intra_Pred_4x4_Y_4_IP 1062
#define ADD_ERROR_SB0_IP 1074
#define ADD_ERROR_SB1_IP 1088
#define ADD_ERROR_SB2_IP 1108
#define ADD_ERROR_SB3_IP 1124
#define intra_Pred_4x4_Y_IP 1130
#define INTRA_4X4_VERTICAL_IP 1130
#define INTRA_4X4_HORIZONTAL_IP 1134
#define INTRA_4X4_DC_IP 1138
#define INTRA_4X4_DIAG_DOWN_LEFT_IP 1160
#define INTRA_4X4_DIAG_DOWN_RIGHT_IP 1174
#define INTRA_4X4_VERT_RIGHT_IP 1192
#define INTRA_4X4_HOR_DOWN_IP 1218
#define INTRA_4X4_VERT_LEFT_IP 1246
#define INTRA_4X4_HOR_UP_IP 1260
#define save_4x4_Y_IP 1276
#define INTRA_PCM_IP 1320
#define FRAME_MB_IP 1384
#define INIT_MBPARA_FRM_IP 1390
#define NOT_8x8_MODE_FRM_IP 1426
#define CONVERT_MVS_FRM_IP 1436
#define INIT_ADDRESS_REGS_FRM_IP 1446
#define LOOP_SUBMB_FRM_IP 1454
#define LOOP_DIR_FRM_IP 1460
#define LOADREF_MVXZERO_FRM_IP 1510
#define EXIT_LOADREF_Y_16x13_FRM_IP 1524
#define Interpolate_Y_8x8_Func_FRM_IP 1544
#define Interpolate_Y_8x8_Func2_FRM_IP 1574
#define Interpolate_Y_H_8x8_FRM_IP 1708
#define Interpolate_Y_V_8x8_FRM_IP 1790
#define VFILTER_8x8_FRM_IP 1812
#define Interpolate_Y_I_8x8_FRM_IP 1860
#define Average_8x8_FRM_IP 1880
#define Return_Interpolate_Y_8x8_FRM_IP 1888
#define Exit_Interpolate_Y_8x8_FRM_IP 1890
#define Interpolate_C_4x4_Func_FRM_IP 1890
#define PROCESS4x4_FRM_IP 1928
#define LOOP_SUBMBPT_FRM_IP 1930
#define Interpolate_Y_H_4x4_FRM_IP 2066
#define Interpolate_Y_V_4x4_FRM_IP 2108
#define VFILTER_4x4_FRM_IP 2142
#define Interpolate_Y_I_4x4_FRM_IP 2148
#define Average_4x4_FRM_IP 2160
#define Return_Interpolate_Y_4x4_FRM_IP 2162
#define Exit_Interpolate_Y_4x4_FRM_IP 2174
#define ROUND_SHIFT_C_FRM_IP 2222
#define LOOP_DIR_CONTINUE_FRM_IP 2230
#define Weighted_Prediction_FRM_IP 2236
#define DefaultWeightedPred_UniPred_FRM_IP 2244
#define DefaultWeightedPred_BiPred_FRM_IP 2256
#define WeightedPred_FRM_IP 2264
#define WeightedPred_Explicit_FRM_IP 2282
#define WeightedPred_LOOP_FRM_IP 2322
#define Return_WeightedPred_FRM_IP 2382
#define EXIT_LOOP_FRM_IP 2424
#define FIELD_MB_IP 2496
#define INIT_MBPARA_FLD_IP 2502
#define NOT_8x8_MODE_FLD_IP 2538
#define CONVERT_MVS_FLD_IP 2548
#define INIT_ADDRESS_REGS_FLD_IP 2558
#define LOOP_SUBMB_FLD_IP 2568
#define LOOP_DIR_FLD_IP 2574
#define LOADREF_MVXZERO_FLD_IP 2644
#define EXIT_LOADREF_Y_16x13_FLD_IP 2658
#define Interpolate_Y_8x8_Func_FLD_IP 2680
#define Interpolate_Y_8x8_Func2_FLD_IP 2710
#define Interpolate_Y_H_8x8_FLD_IP 2844
#define Interpolate_Y_V_8x8_FLD_IP 2926
#define VFILTER_8x8_FLD_IP 2948
#define Interpolate_Y_I_8x8_FLD_IP 2996
#define Average_8x8_FLD_IP 3016
#define Return_Interpolate_Y_8x8_FLD_IP 3024
#define Exit_Interpolate_Y_8x8_FLD_IP 3026
#define Interpolate_C_4x4_Func_FLD_IP 3026
#define PROCESS4x4_FLD_IP 3064
#define LOOP_SUBMBPT_FLD_IP 3066
#define Interpolate_Y_H_4x4_FLD_IP 3204
#define Interpolate_Y_V_4x4_FLD_IP 3246
#define VFILTER_4x4_FLD_IP 3280
#define Interpolate_Y_I_4x4_FLD_IP 3286
#define Average_4x4_FLD_IP 3298
#define Return_Interpolate_Y_4x4_FLD_IP 3300
#define Exit_Interpolate_Y_4x4_FLD_IP 3312
#define ROUND_SHIFT_C_FLD_IP 3360
#define LOOP_DIR_CONTINUE_FLD_IP 3368
#define Weighted_Prediction_FLD_IP 3374
#define DefaultWeightedPred_UniPred_FLD_IP 3382
#define DefaultWeightedPred_BiPred_FLD_IP 3394
#define WeightedPred_FLD_IP 3402
#define WeightedPred_Explicit_FLD_IP 3420
#define WeightedPred_LOOP_FLD_IP 3460
#define Return_WeightedPred_FLD_IP 3520
#define EXIT_LOOP_FLD_IP 3562
#define MBAFF_MB_IP 3640
#define INIT_MBPARA_MBF_IP 3646
#define NOT_8x8_MODE_MBF_IP 3682
#define CONVERT_MVS_MBF_IP 3692
#define INIT_ADDRESS_REGS_MBF_IP 3702
#define LOOP_SUBMB_MBF_IP 3716
#define LOOP_DIR_MBF_IP 3722
#define LOADREF_MVXZERO_MBF_IP 3796
#define EXIT_LOADREF_Y_16x13_MBF_IP 3810
#define Interpolate_Y_8x8_Func_MBF_IP 3832
#define Interpolate_Y_8x8_Func2_MBF_IP 3862
#define Interpolate_Y_H_8x8_MBF_IP 3996
#define Interpolate_Y_V_8x8_MBF_IP 4078
#define VFILTER_8x8_MBF_IP 4100
#define Interpolate_Y_I_8x8_MBF_IP 4148
#define Average_8x8_MBF_IP 4168
#define Return_Interpolate_Y_8x8_MBF_IP 4176
#define Exit_Interpolate_Y_8x8_MBF_IP 4178
#define Interpolate_C_4x4_Func_MBF_IP 4178
#define PROCESS4x4_MBF_IP 4216
#define LOOP_SUBMBPT_MBF_IP 4218
#define Interpolate_Y_H_4x4_MBF_IP 4356
#define Interpolate_Y_V_4x4_MBF_IP 4398
#define VFILTER_4x4_MBF_IP 4432
#define Interpolate_Y_I_4x4_MBF_IP 4438
#define Average_4x4_MBF_IP 4450
#define Return_Interpolate_Y_4x4_MBF_IP 4452
#define Exit_Interpolate_Y_4x4_MBF_IP 4464
#define ROUND_SHIFT_C_MBF_IP 4512
#define LOOP_DIR_CONTINUE_MBF_IP 4520
#define Weighted_Prediction_MBF_IP 4526
#define DefaultWeightedPred_UniPred_MBF_IP 4534
#define DefaultWeightedPred_BiPred_MBF_IP 4546
#define WeightedPred_MBF_IP 4554
#define WeightedPred_Explicit_MBF_IP 4572
#define WeightedPred_LOOP_MBF_IP 4612
#define Return_WeightedPred_MBF_IP 4672
#define EXIT_LOOP_MBF_IP 4714
#define SETHWSCOREBOARD_IP 4792
#define SetHWScoreboard_Loop_IP 4806
#define Parse_8_Loop_0_IP 4852
#define Parse_8_Loop_2_IP 4876
#define Parse_8_Loop_4_IP 4900
#define Parse_8_Loop_6_IP 4924
#define Parse_8_Loop_8_IP 4948
#define Parse_8_Loop_10_IP 4972
#define Parse_8_Loop_12_IP 4996
#define Parse_8_Loop_14_IP 5020
#define SetHWScoreboard_Remainder_IP 5062
#define SetHWScoreboard_Remainder_Loop_IP 5090
#define Output_Remainder_Intra_IP 5116
#define SetHWScoreboard_Done_IP 5128
#define SETHWSCOREBOARD_MBAFF_IP 5136
#define SetHWScoreboard_MBAFF_Loop_IP 5148
#define SET_SB_MBAFF_INTRA_0_IP 5208
#define SET_SB_MBAFF_0_IP 5230
#define NEXT_MB_MBAFF_0_IP 5238
#define SET_SB_MBAFF_INTRA_2_IP 5276
#define SET_SB_MBAFF_2_IP 5298
#define NEXT_MB_MBAFF_2_IP 5306
#define SET_SB_MBAFF_INTRA_4_IP 5344
#define SET_SB_MBAFF_4_IP 5366
#define NEXT_MB_MBAFF_4_IP 5374
#define SET_SB_MBAFF_INTRA_6_IP 5412
#define SET_SB_MBAFF_6_IP 5434
#define NEXT_MB_MBAFF_6_IP 5442
#define SET_SB_MBAFF_INTRA_8_IP 5480
#define SET_SB_MBAFF_8_IP 5502
#define NEXT_MB_MBAFF_8_IP 5510
#define SET_SB_MBAFF_INTRA_10_IP 5548
#define SET_SB_MBAFF_10_IP 5570
#define NEXT_MB_MBAFF_10_IP 5578
#define SET_SB_MBAFF_INTRA_12_IP 5616
#define SET_SB_MBAFF_12_IP 5638
#define NEXT_MB_MBAFF_12_IP 5646
#define SET_SB_MBAFF_INTRA_14_IP 5684
#define SET_SB_MBAFF_14_IP 5706
#define NEXT_MB_MBAFF_14_IP 5714
#define SetHWScoreboard_MBAFF_Remainder_IP 5756
#define SetHWScoreboard_MBAFF_Remainder_Loop_IP 5784
#define SET_SB_MBAFF_REM_INTRA_IP 5822
#define SET_SB_MBAFF_REM_IP 5846
#define Output_MBAFF_Remainder_Intra_IP 5856
#define SetHWScoreboard_MBAFF_Done_IP 5868
#define BSDRESET_IP 5870
#define DCRESETDUMMY_IP 5872
#define AVC_ILDB_ROOT_Y_ILDB_FRAME_IP 5880
#define SLEEP_ENTRY_Y_ILDB_FRAME_IP 5976
#define POST_SLEEP_Y_ILDB_FRAME_IP 5980
#define NEXT_MB_Y_ILDB_FRAME_IP 6010
#define ALL_SPAWNED_Y_ILDB_FRAME_IP 6034
#define ALL_DONE_Y_ILDB_FRAME_IP 6044
#define WAIT_FOR_UV_ILDB_FRAME_IP 6044
#define AVC_ILDB_CHILD_Y_ILDB_FRAME_IP 6056
#define WRITE_URB_Y_ILDB_FRAME_IP 6436
#define POST_ILDB_Y_ILDB_FRAME_IP 6444
#define READ_FOR_URB_Y_ILDB_FRAME_IP 6458
#define FILTER_Y_IP 6494
#define Y_ELSE3_IP 6560
#define Y_ENDIF3_IP 6574
#define Y_ELSE4_IP 6604
#define Y_ENDIF4_IP 6618
#define Y_ELSE2_IP 6618
#define Y_ENDIF6_IP 6684
#define Y_ENDIF7_IP 6706
#define Y_ENDIF2_IP 6710
#define Y_ENDIF1_IP 6710
#define AVC_ILDB_ROOT_UV_ILDB_FRAME_IP 6720
#define SLEEP_ENTRY_UV_ILDB_FRAME_IP 6798
#define POST_SLEEP_UV_ILDB_FRAME_IP 6802
#define NEXT_MB_UV_ILDB_FRAME_IP 6834
#define ALL_SPAWNED_UV_ILDB_FRAME_IP 6858
#define ALL_DONE_UV_ILDB_FRAME_IP 6882
#define AVC_ILDB_CHILD_UV_ILDB_FRAME_IP 6888
#define BYPASS_EXT_LEFT_EDGE_UV_ILDB_FRAME_IP 7008
#define BYPASS_EXT_TOP_EDGE_UV_ILDB_FRAME_IP 7126
#define WRITE_URB_UV_ILDB_FRAME_IP 7194
#define POST_ILDB_UV_ILDB_FRAME_IP 7202
#define READ_FOR_URB_UV_ILDB_FRAME_IP 7216
#define FILTER_UV_IP 7246
#define UV_ELSE2_IP 7282
#define UV_ENDIF2_IP 7314
#define UV_ENDIF1_IP 7314
#define AVC_ILDB_ROOT_Y_ILDB_FIELD_IP 7320
#define SLEEP_ENTRY_Y_ILDB_FIELD_IP 7416
#define POST_SLEEP_Y_ILDB_FIELD_IP 7420
#define NEXT_MB_Y_ILDB_FIELD_IP 7450
#define ALL_SPAWNED_Y_ILDB_FIELD_IP 7474
#define ALL_DONE_Y_ILDB_FIELD_IP 7484
#define WAIT_FOR_UV_ILDB_FIELD_IP 7484
#define AVC_ILDB_CHILD_Y_ILDB_FIELD_IP 7496
#define WRITE_URB_Y_ILDB_FIELD_IP 7896
#define POST_ILDB_Y_ILDB_FIELD_IP 7904
#define READ_FOR_URB_Y_ILDB_FIELD_IP 7918
#define ELSE_Y_4x16T_ILDB_FIELD_IP 7934
#define ENDIF_Y_4x16T_ILDB_FIELD_IP 7942
#define AVC_ILDB_ROOT_UV_ILDB_FIELD_IP 7976
#define SLEEP_ENTRY_UV_ILDB_FIELD_IP 8054
#define POST_SLEEP_UV_ILDB_FIELD_IP 8058
#define NEXT_MB_UV_ILDB_FIELD_IP 8090
#define ALL_SPAWNED_UV_ILDB_FIELD_IP 8114
#define ALL_DONE_UV_ILDB_FIELD_IP 8138
#define AVC_ILDB_CHILD_UV_ILDB_FIELD_IP 8144
#define BYPASS_EXT_LEFT_EDGE_UV_ILDB_FIELD_IP 8272
#define BYPASS_EXT_TOP_EDGE_UV_ILDB_FIELD_IP 8394
#define WRITE_URB_UV_ILDB_FIELD_IP 8470
#define POST_ILDB_UV_ILDB_FIELD_IP 8478
#define READ_FOR_URB_UV_ILDB_FIELD_IP 8492
#define ELSE_Y_2x8T_ILDB_FIELD_IP 8508
#define ENDIF_Y_2x8T_ILDB_FIELD_IP 8516
#define AVC_ILDB_ROOT_Y_ILDB_MBAFF_IP 8544
#define SLEEP_ENTRY_Y_ILDB_MBAFF_IP 8642
#define POST_SLEEP_Y_ILDB_MBAFF_IP 8646
#define NEXT_MB_Y_ILDB_MBAFF_IP 8676
#define ALL_SPAWNED_Y_ILDB_MBAFF_IP 8700
#define ALL_DONE_Y_ILDB_MBAFF_IP 8710
#define WAIT_FOR_UV_ILDB_MBAFF_IP 8710
#define AVC_ILDB_CHILD_Y_ILDB_MBAFF_IP 8720
#define RE_ENTRY_IP 8742
#define ELSE_Y_16x16T_ILDB_MBAFF_IP 8782
#define ENDIF_Y_16x16T_ILDB_MBAFF_IP 8792
#define ELSE_Y_4x16T_IP 8808
#define ENDIF_Y_4x16T_IP 8818
#define BYPASS_V1_Y_IP 8966
#define BYPASS_V2_Y_IP 8980
#define BYPASS_V3_Y_IP 8994
#define ELSE_Y_16x4T_IP 9024
#define ENDIF_Y_16x4T_IP 9034
#define NOT_DUAL_FIELD_IP 9060
#define ELSE_Y_16x4_IP 9060
#define ENDIF_Y_16x4_IP 9072
#define DUAL_FIELD_Y_IP 9168
#define H0_Y_DONE_IP 9236
#define ELSE_Y_16x16_IP 9310
#define ENDIF_Y_16x16_IP 9320
#define ELSE_Y_16x4_SAVE_IP 9342
#define ENDIF_Y_16x4_SAVE_IP 9354
#define SKIP_ILDB_IP 9356
#define POST_ILDB_IP 9364
#define FILTER_Y_MBAFF_IP 9378
#define MBAFF_Y_ELSE3_IP 9444
#define MBAFF_Y_ENDIF3_IP 9458
#define MBAFF_Y_ELSE4_IP 9488
#define MBAFF_Y_ENDIF4_IP 9502
#define MBAFF_Y_ELSE2_IP 9502
#define MBAFF_Y_ENDIF6_IP 9566
#define MBAFF_Y_ENDIF7_IP 9588
#define MBAFF_Y_ENDIF2_IP 9592
#define MBAFF_Y_ENDIF1_IP 9592
#define AVC_ILDB_ROOT_UV_ILDB_MBAFF_IP 9600
#define SLEEP_ENTRY_UV_ILDB_MBAFF_IP 9678
#define POST_SLEEP_UV_ILDB_MBAFF_IP 9682
#define NEXT_MB_UV_ILDB_MBAFF_IP 9714
#define ALL_SPAWNED_UV_ILDB_MBAFF_IP 9738
#define ALL_DONE_UV_ILDB_MBAFF_IP 9762
#define AVC_ILDB_CHILD_UV_ILDB_MBAFF_IP 9768
#define RE_ENTRY_UV_ILDB_MBAFF_IP 9794
#define ELSE_UV_8X8T_ILDB_MBAFF_IP 9836
#define ENDIF_UV_8X8T_ILDB_MBAFF_IP 9846
#define ELSE_Y_2x8T_ILDB_MBAFF_IP 9864
#define ENDIF_Y_2x8T_ILDB_MBAFF_IP 9874
#define V0_U_NEXT1_IP 9934
#define V0_U_NEXT2_IP 9954
#define V0_U_NEXT3_IP 9964
#define BYPASS_V0_UV_IP 10018
#define ELSE_UV_8X2T_IP 10082
#define ENDIF_UV_8X2T_IP 10092
#define NOT_DUAL_FIELD_UV_IP 10120
#define ELSE_UV_8X2_IP 10120
#define ENDIF_UV_8X2_IP 10132
#define DUAL_FIELD_UV_IP 10208
#define H0_UV_DONE_IP 10300
#define ELSE_UV_8X8_IP 10360
#define ENDIF_UV_8X8_IP 10370
#define ELSE_UV_8X2_SAVE_IP 10394
#define ENDIF_UV_8X2_SAVE_IP 10406
#define SKIP_ILDB_UV_ILDB_MBAFF_IP 10408
#define POST_ILDB_UV_ILDB_MBAFF_IP 10416
#define FILTER_UV_MBAFF_IP 10430
#define MBAFF_UV_ELSE2_IP 10466
#define MBAFF_UV_ENDIF2_IP 10496
#define MBAFF_UV_ENDIF1_IP 10496
#define AllAVC_END_IP 10500
/drivers/video/i965/shaders/h264/mc/export.inc.gen5
0,0 → 1,345
#define INTRA_16x16_IP_GEN5 0
#define INTRA_16x16_VERTICAL_IP_GEN5 14
#define INTRA_16x16_HORIZONTAL_IP_GEN5 32
#define INTRA_16x16_DC_IP_GEN5 52
#define INTRA_16x16_PLANE_IP_GEN5 98
#define End_intra_Pred_16x16_Y_IP_GEN5 166
#define End_add_Error_16x16_Y_IP_GEN5 204
#define load_Intra_Ref_Y_IP_GEN5 220
#define decode_Chroma_Intra_IP_GEN5 238
#define INTRA_CHROMA_DC_IP_GEN5 260
#define INTRA_CHROMA_HORIZONTAL_IP_GEN5 320
#define INTRA_CHROMA_VERTICAL_IP_GEN5 332
#define INTRA_Chroma_PLANE_IP_GEN5 342
#define End_of_intra_Pred_Chroma_IP_GEN5 392
#define save_16x16_Y_IP_GEN5 436
#define INTRA_8x8_IP_GEN5 464
#define INTRA_8x8_BLK2_IP_GEN5 568
#define intra_Pred_8x8_Y_IP_GEN5 640
#define INTRA_8X8_VERTICAL_IP_GEN5 672
#define INTRA_8X8_HORIZONTAL_IP_GEN5 682
#define INTRA_8X8_DC_IP_GEN5 692
#define INTRA_8X8_DIAG_DOWN_LEFT_IP_GEN5 724
#define INTRA_8X8_DIAG_DOWN_RIGHT_IP_GEN5 744
#define INTRA_8X8_VERT_RIGHT_IP_GEN5 772
#define INTRA_8X8_HOR_DOWN_IP_GEN5 808
#define INTRA_8X8_VERT_LEFT_IP_GEN5 842
#define INTRA_8X8_HOR_UP_IP_GEN5 862
#define save_8x8_Y_IP_GEN5 886
#define INTRA_4x4_IP_GEN5 928
#define intra_Pred_4x4_Y_4_IP_GEN5 1062
#define ADD_ERROR_SB0_IP_GEN5 1074
#define ADD_ERROR_SB1_IP_GEN5 1088
#define ADD_ERROR_SB2_IP_GEN5 1108
#define ADD_ERROR_SB3_IP_GEN5 1124
#define intra_Pred_4x4_Y_IP_GEN5 1130
#define INTRA_4X4_VERTICAL_IP_GEN5 1130
#define INTRA_4X4_HORIZONTAL_IP_GEN5 1134
#define INTRA_4X4_DC_IP_GEN5 1138
#define INTRA_4X4_DIAG_DOWN_LEFT_IP_GEN5 1160
#define INTRA_4X4_DIAG_DOWN_RIGHT_IP_GEN5 1174
#define INTRA_4X4_VERT_RIGHT_IP_GEN5 1192
#define INTRA_4X4_HOR_DOWN_IP_GEN5 1218
#define INTRA_4X4_VERT_LEFT_IP_GEN5 1246
#define INTRA_4X4_HOR_UP_IP_GEN5 1260
#define save_4x4_Y_IP_GEN5 1276
#define INTRA_PCM_IP_GEN5 1320
#define FRAME_MB_IP_GEN5 1384
#define INIT_MBPARA_FRM_IP_GEN5 1390
#define NOT_8x8_MODE_FRM_IP_GEN5 1426
#define CONVERT_MVS_FRM_IP_GEN5 1436
#define INIT_ADDRESS_REGS_FRM_IP_GEN5 1446
#define LOOP_SUBMB_FRM_IP_GEN5 1454
#define LOOP_DIR_FRM_IP_GEN5 1460
#define LOADREF_MVXZERO_FRM_IP_GEN5 1510
#define EXIT_LOADREF_Y_16x13_FRM_IP_GEN5 1524
#define Interpolate_Y_8x8_Func_FRM_IP_GEN5 1544
#define Interpolate_Y_8x8_Func2_FRM_IP_GEN5 1574
#define Interpolate_Y_H_8x8_FRM_IP_GEN5 1708
#define Interpolate_Y_V_8x8_FRM_IP_GEN5 1790
#define VFILTER_8x8_FRM_IP_GEN5 1812
#define Interpolate_Y_I_8x8_FRM_IP_GEN5 1860
#define Average_8x8_FRM_IP_GEN5 1880
#define Return_Interpolate_Y_8x8_FRM_IP_GEN5 1888
#define Exit_Interpolate_Y_8x8_FRM_IP_GEN5 1890
#define Interpolate_C_4x4_Func_FRM_IP_GEN5 1890
#define PROCESS4x4_FRM_IP_GEN5 1928
#define LOOP_SUBMBPT_FRM_IP_GEN5 1930
#define Interpolate_Y_H_4x4_FRM_IP_GEN5 2066
#define Interpolate_Y_V_4x4_FRM_IP_GEN5 2108
#define VFILTER_4x4_FRM_IP_GEN5 2142
#define Interpolate_Y_I_4x4_FRM_IP_GEN5 2148
#define Average_4x4_FRM_IP_GEN5 2160
#define Return_Interpolate_Y_4x4_FRM_IP_GEN5 2162
#define Exit_Interpolate_Y_4x4_FRM_IP_GEN5 2174
#define ROUND_SHIFT_C_FRM_IP_GEN5 2222
#define LOOP_DIR_CONTINUE_FRM_IP_GEN5 2230
#define Weighted_Prediction_FRM_IP_GEN5 2236
#define DefaultWeightedPred_UniPred_FRM_IP_GEN5 2244
#define DefaultWeightedPred_BiPred_FRM_IP_GEN5 2256
#define WeightedPred_FRM_IP_GEN5 2264
#define WeightedPred_Explicit_FRM_IP_GEN5 2282
#define WeightedPred_LOOP_FRM_IP_GEN5 2322
#define Return_WeightedPred_FRM_IP_GEN5 2382
#define EXIT_LOOP_FRM_IP_GEN5 2424
#define FIELD_MB_IP_GEN5 2496
#define INIT_MBPARA_FLD_IP_GEN5 2502
#define NOT_8x8_MODE_FLD_IP_GEN5 2538
#define CONVERT_MVS_FLD_IP_GEN5 2548
#define INIT_ADDRESS_REGS_FLD_IP_GEN5 2558
#define LOOP_SUBMB_FLD_IP_GEN5 2568
#define LOOP_DIR_FLD_IP_GEN5 2574
#define LOADREF_MVXZERO_FLD_IP_GEN5 2644
#define EXIT_LOADREF_Y_16x13_FLD_IP_GEN5 2658
#define Interpolate_Y_8x8_Func_FLD_IP_GEN5 2680
#define Interpolate_Y_8x8_Func2_FLD_IP_GEN5 2710
#define Interpolate_Y_H_8x8_FLD_IP_GEN5 2844
#define Interpolate_Y_V_8x8_FLD_IP_GEN5 2926
#define VFILTER_8x8_FLD_IP_GEN5 2948
#define Interpolate_Y_I_8x8_FLD_IP_GEN5 2996
#define Average_8x8_FLD_IP_GEN5 3016
#define Return_Interpolate_Y_8x8_FLD_IP_GEN5 3024
#define Exit_Interpolate_Y_8x8_FLD_IP_GEN5 3026
#define Interpolate_C_4x4_Func_FLD_IP_GEN5 3026
#define PROCESS4x4_FLD_IP_GEN5 3064
#define LOOP_SUBMBPT_FLD_IP_GEN5 3066
#define Interpolate_Y_H_4x4_FLD_IP_GEN5 3204
#define Interpolate_Y_V_4x4_FLD_IP_GEN5 3246
#define VFILTER_4x4_FLD_IP_GEN5 3280
#define Interpolate_Y_I_4x4_FLD_IP_GEN5 3286
#define Average_4x4_FLD_IP_GEN5 3298
#define Return_Interpolate_Y_4x4_FLD_IP_GEN5 3300
#define Exit_Interpolate_Y_4x4_FLD_IP_GEN5 3312
#define ROUND_SHIFT_C_FLD_IP_GEN5 3360
#define LOOP_DIR_CONTINUE_FLD_IP_GEN5 3368
#define Weighted_Prediction_FLD_IP_GEN5 3374
#define DefaultWeightedPred_UniPred_FLD_IP_GEN5 3382
#define DefaultWeightedPred_BiPred_FLD_IP_GEN5 3394
#define WeightedPred_FLD_IP_GEN5 3402
#define WeightedPred_Explicit_FLD_IP_GEN5 3420
#define WeightedPred_LOOP_FLD_IP_GEN5 3460
#define Return_WeightedPred_FLD_IP_GEN5 3520
#define EXIT_LOOP_FLD_IP_GEN5 3562
#define MBAFF_MB_IP_GEN5 3640
#define INIT_MBPARA_MBF_IP_GEN5 3646
#define NOT_8x8_MODE_MBF_IP_GEN5 3682
#define CONVERT_MVS_MBF_IP_GEN5 3692
#define INIT_ADDRESS_REGS_MBF_IP_GEN5 3702
#define LOOP_SUBMB_MBF_IP_GEN5 3716
#define LOOP_DIR_MBF_IP_GEN5 3722
#define LOADREF_MVXZERO_MBF_IP_GEN5 3796
#define EXIT_LOADREF_Y_16x13_MBF_IP_GEN5 3810
#define Interpolate_Y_8x8_Func_MBF_IP_GEN5 3832
#define Interpolate_Y_8x8_Func2_MBF_IP_GEN5 3862
#define Interpolate_Y_H_8x8_MBF_IP_GEN5 3996
#define Interpolate_Y_V_8x8_MBF_IP_GEN5 4078
#define VFILTER_8x8_MBF_IP_GEN5 4100
#define Interpolate_Y_I_8x8_MBF_IP_GEN5 4148
#define Average_8x8_MBF_IP_GEN5 4168
#define Return_Interpolate_Y_8x8_MBF_IP_GEN5 4176
#define Exit_Interpolate_Y_8x8_MBF_IP_GEN5 4178
#define Interpolate_C_4x4_Func_MBF_IP_GEN5 4178
#define PROCESS4x4_MBF_IP_GEN5 4216
#define LOOP_SUBMBPT_MBF_IP_GEN5 4218
#define Interpolate_Y_H_4x4_MBF_IP_GEN5 4356
#define Interpolate_Y_V_4x4_MBF_IP_GEN5 4398
#define VFILTER_4x4_MBF_IP_GEN5 4432
#define Interpolate_Y_I_4x4_MBF_IP_GEN5 4438
#define Average_4x4_MBF_IP_GEN5 4450
#define Return_Interpolate_Y_4x4_MBF_IP_GEN5 4452
#define Exit_Interpolate_Y_4x4_MBF_IP_GEN5 4464
#define ROUND_SHIFT_C_MBF_IP_GEN5 4512
#define LOOP_DIR_CONTINUE_MBF_IP_GEN5 4520
#define Weighted_Prediction_MBF_IP_GEN5 4526
#define DefaultWeightedPred_UniPred_MBF_IP_GEN5 4534
#define DefaultWeightedPred_BiPred_MBF_IP_GEN5 4546
#define WeightedPred_MBF_IP_GEN5 4554
#define WeightedPred_Explicit_MBF_IP_GEN5 4572
#define WeightedPred_LOOP_MBF_IP_GEN5 4612
#define Return_WeightedPred_MBF_IP_GEN5 4672
#define EXIT_LOOP_MBF_IP_GEN5 4714
#define SETHWSCOREBOARD_IP_GEN5 4792
#define SetHWScoreboard_Loop_IP_GEN5 4806
#define Parse_8_Loop_0_IP_GEN5 4852
#define Parse_8_Loop_2_IP_GEN5 4876
#define Parse_8_Loop_4_IP_GEN5 4900
#define Parse_8_Loop_6_IP_GEN5 4924
#define Parse_8_Loop_8_IP_GEN5 4948
#define Parse_8_Loop_10_IP_GEN5 4972
#define Parse_8_Loop_12_IP_GEN5 4996
#define Parse_8_Loop_14_IP_GEN5 5020
#define SetHWScoreboard_Remainder_IP_GEN5 5062
#define SetHWScoreboard_Remainder_Loop_IP_GEN5 5090
#define Output_Remainder_Intra_IP_GEN5 5116
#define SetHWScoreboard_Done_IP_GEN5 5128
#define SETHWSCOREBOARD_MBAFF_IP_GEN5 5136
#define SetHWScoreboard_MBAFF_Loop_IP_GEN5 5148
#define SET_SB_MBAFF_INTRA_0_IP_GEN5 5208
#define SET_SB_MBAFF_0_IP_GEN5 5230
#define NEXT_MB_MBAFF_0_IP_GEN5 5238
#define SET_SB_MBAFF_INTRA_2_IP_GEN5 5276
#define SET_SB_MBAFF_2_IP_GEN5 5298
#define NEXT_MB_MBAFF_2_IP_GEN5 5306
#define SET_SB_MBAFF_INTRA_4_IP_GEN5 5344
#define SET_SB_MBAFF_4_IP_GEN5 5366
#define NEXT_MB_MBAFF_4_IP_GEN5 5374
#define SET_SB_MBAFF_INTRA_6_IP_GEN5 5412
#define SET_SB_MBAFF_6_IP_GEN5 5434
#define NEXT_MB_MBAFF_6_IP_GEN5 5442
#define SET_SB_MBAFF_INTRA_8_IP_GEN5 5480
#define SET_SB_MBAFF_8_IP_GEN5 5502
#define NEXT_MB_MBAFF_8_IP_GEN5 5510
#define SET_SB_MBAFF_INTRA_10_IP_GEN5 5548
#define SET_SB_MBAFF_10_IP_GEN5 5570
#define NEXT_MB_MBAFF_10_IP_GEN5 5578
#define SET_SB_MBAFF_INTRA_12_IP_GEN5 5616
#define SET_SB_MBAFF_12_IP_GEN5 5638
#define NEXT_MB_MBAFF_12_IP_GEN5 5646
#define SET_SB_MBAFF_INTRA_14_IP_GEN5 5684
#define SET_SB_MBAFF_14_IP_GEN5 5706
#define NEXT_MB_MBAFF_14_IP_GEN5 5714
#define SetHWScoreboard_MBAFF_Remainder_IP_GEN5 5756
#define SetHWScoreboard_MBAFF_Remainder_Loop_IP_GEN5 5784
#define SET_SB_MBAFF_REM_INTRA_IP_GEN5 5822
#define SET_SB_MBAFF_REM_IP_GEN5 5846
#define Output_MBAFF_Remainder_Intra_IP_GEN5 5856
#define SetHWScoreboard_MBAFF_Done_IP_GEN5 5868
#define BSDRESET_IP_GEN5 5870
#define DCRESETDUMMY_IP_GEN5 5872
#define AVC_ILDB_ROOT_Y_ILDB_FRAME_IP_GEN5 5880
#define SLEEP_ENTRY_Y_ILDB_FRAME_IP_GEN5 5976
#define POST_SLEEP_Y_ILDB_FRAME_IP_GEN5 5980
#define NEXT_MB_Y_ILDB_FRAME_IP_GEN5 6010
#define ALL_SPAWNED_Y_ILDB_FRAME_IP_GEN5 6034
#define ALL_DONE_Y_ILDB_FRAME_IP_GEN5 6044
#define WAIT_FOR_UV_ILDB_FRAME_IP_GEN5 6044
#define AVC_ILDB_CHILD_Y_ILDB_FRAME_IP_GEN5 6056
#define WRITE_URB_Y_ILDB_FRAME_IP_GEN5 6436
#define POST_ILDB_Y_ILDB_FRAME_IP_GEN5 6444
#define READ_FOR_URB_Y_ILDB_FRAME_IP_GEN5 6458
#define FILTER_Y_IP_GEN5 6494
#define Y_ELSE3_IP_GEN5 6560
#define Y_ENDIF3_IP_GEN5 6574
#define Y_ELSE4_IP_GEN5 6604
#define Y_ENDIF4_IP_GEN5 6618
#define Y_ELSE2_IP_GEN5 6618
#define Y_ENDIF6_IP_GEN5 6684
#define Y_ENDIF7_IP_GEN5 6706
#define Y_ENDIF2_IP_GEN5 6710
#define Y_ENDIF1_IP_GEN5 6710
#define AVC_ILDB_ROOT_UV_ILDB_FRAME_IP_GEN5 6720
#define SLEEP_ENTRY_UV_ILDB_FRAME_IP_GEN5 6798
#define POST_SLEEP_UV_ILDB_FRAME_IP_GEN5 6802
#define NEXT_MB_UV_ILDB_FRAME_IP_GEN5 6834
#define ALL_SPAWNED_UV_ILDB_FRAME_IP_GEN5 6858
#define ALL_DONE_UV_ILDB_FRAME_IP_GEN5 6882
#define AVC_ILDB_CHILD_UV_ILDB_FRAME_IP_GEN5 6888
#define BYPASS_EXT_LEFT_EDGE_UV_ILDB_FRAME_IP_GEN5 7008
#define BYPASS_EXT_TOP_EDGE_UV_ILDB_FRAME_IP_GEN5 7126
#define WRITE_URB_UV_ILDB_FRAME_IP_GEN5 7194
#define POST_ILDB_UV_ILDB_FRAME_IP_GEN5 7202
#define READ_FOR_URB_UV_ILDB_FRAME_IP_GEN5 7216
#define FILTER_UV_IP_GEN5 7246
#define UV_ELSE2_IP_GEN5 7282
#define UV_ENDIF2_IP_GEN5 7314
#define UV_ENDIF1_IP_GEN5 7314
#define AVC_ILDB_ROOT_Y_ILDB_FIELD_IP_GEN5 7320
#define SLEEP_ENTRY_Y_ILDB_FIELD_IP_GEN5 7416
#define POST_SLEEP_Y_ILDB_FIELD_IP_GEN5 7420
#define NEXT_MB_Y_ILDB_FIELD_IP_GEN5 7450
#define ALL_SPAWNED_Y_ILDB_FIELD_IP_GEN5 7474
#define ALL_DONE_Y_ILDB_FIELD_IP_GEN5 7484
#define WAIT_FOR_UV_ILDB_FIELD_IP_GEN5 7484
#define AVC_ILDB_CHILD_Y_ILDB_FIELD_IP_GEN5 7496
#define WRITE_URB_Y_ILDB_FIELD_IP_GEN5 7896
#define POST_ILDB_Y_ILDB_FIELD_IP_GEN5 7904
#define READ_FOR_URB_Y_ILDB_FIELD_IP_GEN5 7918
#define ELSE_Y_4x16T_ILDB_FIELD_IP_GEN5 7934
#define ENDIF_Y_4x16T_ILDB_FIELD_IP_GEN5 7942
#define AVC_ILDB_ROOT_UV_ILDB_FIELD_IP_GEN5 7976
#define SLEEP_ENTRY_UV_ILDB_FIELD_IP_GEN5 8054
#define POST_SLEEP_UV_ILDB_FIELD_IP_GEN5 8058
#define NEXT_MB_UV_ILDB_FIELD_IP_GEN5 8090
#define ALL_SPAWNED_UV_ILDB_FIELD_IP_GEN5 8114
#define ALL_DONE_UV_ILDB_FIELD_IP_GEN5 8138
#define AVC_ILDB_CHILD_UV_ILDB_FIELD_IP_GEN5 8144
#define BYPASS_EXT_LEFT_EDGE_UV_ILDB_FIELD_IP_GEN5 8272
#define BYPASS_EXT_TOP_EDGE_UV_ILDB_FIELD_IP_GEN5 8394
#define WRITE_URB_UV_ILDB_FIELD_IP_GEN5 8470
#define POST_ILDB_UV_ILDB_FIELD_IP_GEN5 8478
#define READ_FOR_URB_UV_ILDB_FIELD_IP_GEN5 8492
#define ELSE_Y_2x8T_ILDB_FIELD_IP_GEN5 8508
#define ENDIF_Y_2x8T_ILDB_FIELD_IP_GEN5 8516
#define AVC_ILDB_ROOT_Y_ILDB_MBAFF_IP_GEN5 8544
#define SLEEP_ENTRY_Y_ILDB_MBAFF_IP_GEN5 8642
#define POST_SLEEP_Y_ILDB_MBAFF_IP_GEN5 8646
#define NEXT_MB_Y_ILDB_MBAFF_IP_GEN5 8676
#define ALL_SPAWNED_Y_ILDB_MBAFF_IP_GEN5 8700
#define ALL_DONE_Y_ILDB_MBAFF_IP_GEN5 8710
#define WAIT_FOR_UV_ILDB_MBAFF_IP_GEN5 8710
#define AVC_ILDB_CHILD_Y_ILDB_MBAFF_IP_GEN5 8720
#define RE_ENTRY_IP_GEN5 8742
#define ELSE_Y_16x16T_ILDB_MBAFF_IP_GEN5 8782
#define ENDIF_Y_16x16T_ILDB_MBAFF_IP_GEN5 8792
#define ELSE_Y_4x16T_IP_GEN5 8808
#define ENDIF_Y_4x16T_IP_GEN5 8818
#define BYPASS_V1_Y_IP_GEN5 8966
#define BYPASS_V2_Y_IP_GEN5 8980
#define BYPASS_V3_Y_IP_GEN5 8994
#define ELSE_Y_16x4T_IP_GEN5 9024
#define ENDIF_Y_16x4T_IP_GEN5 9034
#define NOT_DUAL_FIELD_IP_GEN5 9060
#define ELSE_Y_16x4_IP_GEN5 9060
#define ENDIF_Y_16x4_IP_GEN5 9072
#define DUAL_FIELD_Y_IP_GEN5 9168
#define H0_Y_DONE_IP_GEN5 9236
#define ELSE_Y_16x16_IP_GEN5 9310
#define ENDIF_Y_16x16_IP_GEN5 9320
#define ELSE_Y_16x4_SAVE_IP_GEN5 9342
#define ENDIF_Y_16x4_SAVE_IP_GEN5 9354
#define SKIP_ILDB_IP_GEN5 9356
#define POST_ILDB_IP_GEN5 9364
#define FILTER_Y_MBAFF_IP_GEN5 9378
#define MBAFF_Y_ELSE3_IP_GEN5 9444
#define MBAFF_Y_ENDIF3_IP_GEN5 9458
#define MBAFF_Y_ELSE4_IP_GEN5 9488
#define MBAFF_Y_ENDIF4_IP_GEN5 9502
#define MBAFF_Y_ELSE2_IP_GEN5 9502
#define MBAFF_Y_ENDIF6_IP_GEN5 9566
#define MBAFF_Y_ENDIF7_IP_GEN5 9588
#define MBAFF_Y_ENDIF2_IP_GEN5 9592
#define MBAFF_Y_ENDIF1_IP_GEN5 9592
#define AVC_ILDB_ROOT_UV_ILDB_MBAFF_IP_GEN5 9600
#define SLEEP_ENTRY_UV_ILDB_MBAFF_IP_GEN5 9678
#define POST_SLEEP_UV_ILDB_MBAFF_IP_GEN5 9682
#define NEXT_MB_UV_ILDB_MBAFF_IP_GEN5 9714
#define ALL_SPAWNED_UV_ILDB_MBAFF_IP_GEN5 9738
#define ALL_DONE_UV_ILDB_MBAFF_IP_GEN5 9762
#define AVC_ILDB_CHILD_UV_ILDB_MBAFF_IP_GEN5 9768
#define RE_ENTRY_UV_ILDB_MBAFF_IP_GEN5 9794
#define ELSE_UV_8X8T_ILDB_MBAFF_IP_GEN5 9836
#define ENDIF_UV_8X8T_ILDB_MBAFF_IP_GEN5 9846
#define ELSE_Y_2x8T_ILDB_MBAFF_IP_GEN5 9864
#define ENDIF_Y_2x8T_ILDB_MBAFF_IP_GEN5 9874
#define V0_U_NEXT1_IP_GEN5 9934
#define V0_U_NEXT2_IP_GEN5 9954
#define V0_U_NEXT3_IP_GEN5 9964
#define BYPASS_V0_UV_IP_GEN5 10018
#define ELSE_UV_8X2T_IP_GEN5 10082
#define ENDIF_UV_8X2T_IP_GEN5 10092
#define NOT_DUAL_FIELD_UV_IP_GEN5 10120
#define ELSE_UV_8X2_IP_GEN5 10120
#define ENDIF_UV_8X2_IP_GEN5 10132
#define DUAL_FIELD_UV_IP_GEN5 10208
#define H0_UV_DONE_IP_GEN5 10300
#define ELSE_UV_8X8_IP_GEN5 10360
#define ENDIF_UV_8X8_IP_GEN5 10370
#define ELSE_UV_8X2_SAVE_IP_GEN5 10394
#define ENDIF_UV_8X2_SAVE_IP_GEN5 10406
#define SKIP_ILDB_UV_ILDB_MBAFF_IP_GEN5 10408
#define POST_ILDB_UV_ILDB_MBAFF_IP_GEN5 10416
#define FILTER_UV_MBAFF_IP_GEN5 10430
#define MBAFF_UV_ELSE2_IP_GEN5 10466
#define MBAFF_UV_ENDIF2_IP_GEN5 10496
#define MBAFF_UV_ENDIF1_IP_GEN5 10496
#define AllAVC_END_IP_GEN5 10500
/drivers/video/i965/shaders/h264/mc/null.g4b
0,0 → 1,13
{ 0x00200009, 0x27c02e21, 0x00450064, 0x00040004 },
{ 0x00000001, 0x27c80061, 0x00000000, 0x000f000f },
{ 0x00802001, 0x20200062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20600062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20a00062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20e00062, 0x00000000, 0xffffffff },
{ 0x00800031, 0x24001d28, 0x008d07c0, 0x05902000 },
{ 0x00000008, 0x27c42c21, 0x002107c4, 0x00010001 },
{ 0x00000001, 0x27c80061, 0x00000000, 0x0007000f },
{ 0x00802001, 0x20200062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20600062, 0x00000000, 0xffffffff },
{ 0x00800031, 0x24001d28, 0x008d07c0, 0x05502001 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
/drivers/video/i965/shaders/h264/mc/null.g4b.gen5
0,0 → 1,13
{ 0x00200009, 0x27c02e21, 0x00450064, 0x00040004 },
{ 0x00000001, 0x27c80061, 0x00000000, 0x000f000f },
{ 0x00802001, 0x20200062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20600062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20a00062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20e00062, 0x00000000, 0xffffffff },
{ 0x00800031, 0x24001d28, 0x508d07c0, 0x12082000 },
{ 0x00000008, 0x27c42c21, 0x002107c4, 0x00010001 },
{ 0x00000001, 0x27c80061, 0x00000000, 0x0007000f },
{ 0x00802001, 0x20200062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20600062, 0x00000000, 0xffffffff },
{ 0x00800031, 0x24001d28, 0x508d07c0, 0x0a082001 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
/drivers/video/i965/shaders/mpeg2/vld/field_backward.g4b
0,0 → 1,757
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20002dbc, 0x00210a54, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000006a },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a007 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10500 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10540 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10580 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c0 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10600 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10640 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10680 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10501 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10541 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10581 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c1 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10601 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10641 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10681 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c1 },
{ 0x00800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x00800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x00800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x00800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x00800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x00800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x00800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x00800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a007 },
{ 0x00800040, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10500 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10540 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10580 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c0 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10600 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10640 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10680 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10501 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10541 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10581 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c1 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10601 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10641 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10681 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x00800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x00800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x00800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x00800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x00800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x00800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x00800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x00800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000039 },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000001f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a007 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b106c0 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a007 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b10680, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00800001, 0x28400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b10680, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20003dbc, 0x00210a54, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000043 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a008 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a009 },
{ 0x00600040, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0520 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0540 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0560 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0580 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0521 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0541 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0561 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0581 },
{ 0x00600040, 0x29c04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29d04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x29e04629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x29f04629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0600 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0620 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0640 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0601 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0621 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0641 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a008 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a009 },
{ 0x00600040, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0520 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0540 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0560 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0580 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0521 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0541 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0561 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0581 },
{ 0x00600040, 0x2a004629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x2a104629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a204629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a304629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e0 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0600 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0620 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0640 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e1 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0601 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0621 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0641 },
{ 0x00a02008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00a02008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00a02008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00a02008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000004e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a009 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a009 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x2a004629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x2a104629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x2a204629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x2a304629, 0x008d05e0, 0x008d05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000037 },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000001f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a008 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a009 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x29c04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29d04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x29e04629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x29f04629, 0x008d0620, 0x008d0640 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a008 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a009 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x2a004629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x2a104629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a204629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a304629, 0x008d0620, 0x008d0640 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a009 },
{ 0x00600001, 0x29400229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29500229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29600229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29700229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x29c00229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x29d00229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x29e00229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x29f00229, 0x008d05e0, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a009 },
{ 0x00600001, 0x29800229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29900229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29a00229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29b00229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x2a000229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x2a100229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x2a200229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x2a300229, 0x008d05e0, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000143 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20002dbc, 0x00210a54, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000006a },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a003 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10500 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10540 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10580 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c0 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10600 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10640 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10680 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10501 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10541 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10581 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c1 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10601 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10641 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10681 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c1 },
{ 0x00800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x00800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x00800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x00800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x00800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x00800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x00800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x00800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a003 },
{ 0x00800040, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10500 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10540 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10580 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c0 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10600 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10640 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10680 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10501 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10541 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10581 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c1 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10601 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10641 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10681 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x00800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x00800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x00800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x00800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x00800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x00800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x00800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x00800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000039 },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000001f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a003 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b106c0 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a003 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b10680, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00800001, 0x28400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b10680, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20003dbc, 0x00210a54, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000043 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a00a },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a00b },
{ 0x00600040, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0520 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0540 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0560 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0580 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0521 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0541 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0561 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0581 },
{ 0x00600040, 0x29c04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29d04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x29e04629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x29f04629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0600 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0620 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0640 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0601 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0621 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0641 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a00a },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a00b },
{ 0x00600040, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0520 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0540 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0560 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0580 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0521 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0541 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0561 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0581 },
{ 0x00600040, 0x2a004629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x2a104629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a204629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a304629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e0 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0600 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0620 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0640 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e1 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0601 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0621 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0641 },
{ 0x00a02008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00a02008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00a02008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00a02008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000004e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a00b },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a00b },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x2a004629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x2a104629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x2a204629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x2a304629, 0x008d05e0, 0x008d05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000037 },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000001f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a00a },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a00b },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x29c04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29d04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x29e04629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x29f04629, 0x008d0620, 0x008d0640 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a00a },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a00b },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x2a004629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x2a104629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a204629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a304629, 0x008d0620, 0x008d0640 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a00b },
{ 0x00600001, 0x29400229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29500229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29600229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29700229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x29c00229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x29d00229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x29e00229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x29f00229, 0x008d05e0, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a00b },
{ 0x00600001, 0x29800229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29900229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29a00229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29b00229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x2a000229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x2a100229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x2a200229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x2a300229, 0x008d05e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05902000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302002 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
/drivers/video/i965/shaders/mpeg2/vld/field_backward.g4b.gen5
0,0 → 1,757
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20002dbc, 0x00210a54, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000d4 },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000009e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a007 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10500 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10540 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10580 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c0 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10600 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10640 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10680 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10501 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10541 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10581 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c1 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10601 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10641 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10681 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c1 },
{ 0x00800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x00800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x00800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x00800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x00800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x00800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x00800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x00800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a007 },
{ 0x00800040, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10500 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10540 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10580 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c0 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10600 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10640 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10680 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10501 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10541 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10581 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c1 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10601 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10641 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10681 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x00800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x00800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x00800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x00800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x00800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x00800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x00800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x00800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000a4 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000072 },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000003e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a007 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b106c0 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a007 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b10680, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00800001, 0x28400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b10680, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20003dbc, 0x00210a54, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000b8 },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a008 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a009 },
{ 0x00600040, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0520 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0540 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0560 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0580 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0521 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0541 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0561 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0581 },
{ 0x00600040, 0x29c04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29d04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x29e04629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x29f04629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0600 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0620 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0640 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0601 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0621 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0641 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a008 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a009 },
{ 0x00600040, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0520 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0540 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0560 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0580 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0521 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0541 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0561 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0581 },
{ 0x00600040, 0x2a004629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x2a104629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a204629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a304629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e0 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0600 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0620 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0640 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e1 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0601 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0621 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0641 },
{ 0x00a02008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00a02008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00a02008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00a02008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000009c },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a009 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a009 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x2a004629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x2a104629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x2a204629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x2a304629, 0x008d05e0, 0x008d05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000006e },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000003e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a008 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a009 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x29c04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29d04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x29e04629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x29f04629, 0x008d0620, 0x008d0640 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a008 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a009 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x2a004629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x2a104629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a204629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a304629, 0x008d0620, 0x008d0640 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002c },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a009 },
{ 0x00600001, 0x29400229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29500229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29600229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29700229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x29c00229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x29d00229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x29e00229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x29f00229, 0x008d05e0, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a009 },
{ 0x00600001, 0x29800229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29900229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29a00229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29b00229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x2a000229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x2a100229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x2a200229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x2a300229, 0x008d05e0, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000286 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20002dbc, 0x00210a54, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000d4 },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000009e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a003 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10500 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10540 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10580 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c0 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10600 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10640 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10680 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10501 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10541 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10581 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c1 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10601 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10641 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10681 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c1 },
{ 0x00800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x00800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x00800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x00800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x00800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x00800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x00800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x00800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a003 },
{ 0x00800040, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10500 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10540 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10580 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c0 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10600 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10640 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10680 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10501 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10541 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10581 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c1 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10601 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10641 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10681 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x00800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x00800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x00800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x00800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x00800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x00800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x00800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x00800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000a4 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000072 },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000003e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a003 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b106c0 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a003 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b10680, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00800001, 0x28400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b10680, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20003dbc, 0x00210a54, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000b8 },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a00a },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a00b },
{ 0x00600040, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0520 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0540 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0560 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0580 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0521 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0541 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0561 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0581 },
{ 0x00600040, 0x29c04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29d04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x29e04629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x29f04629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0600 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0620 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0640 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0601 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0621 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0641 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a00a },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a00b },
{ 0x00600040, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0520 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0540 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0560 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0580 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0521 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0541 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0561 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0581 },
{ 0x00600040, 0x2a004629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x2a104629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a204629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a304629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e0 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0600 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0620 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0640 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e1 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0601 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0621 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0641 },
{ 0x00a02008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00a02008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00a02008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00a02008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000009c },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a00b },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a00b },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x2a004629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x2a104629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x2a204629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x2a304629, 0x008d05e0, 0x008d05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000006e },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000003e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a00a },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a00b },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x29c04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29d04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x29e04629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x29f04629, 0x008d0620, 0x008d0640 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a00a },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a00b },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x2a004629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x2a104629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a204629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a304629, 0x008d0620, 0x008d0640 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002c },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a00b },
{ 0x00600001, 0x29400229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29500229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29600229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29700229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x29c00229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x29d00229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x29e00229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x29f00229, 0x008d05e0, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a00b },
{ 0x00600001, 0x29800229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29900229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29a00229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29b00229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x2a000229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x2a100229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x2a200229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x2a300229, 0x008d05e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x12082000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082002 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
/drivers/video/i965/shaders/mpeg2/vld/field_backward_16x8.g4b
0,0 → 1,15
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00200001, 0x20c00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x20c80061, 0x00000000, 0x000f000f },
{ 0x00802001, 0x20200062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20600062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20a00062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20e00062, 0x00000000, 0xffffffff },
{ 0x00800031, 0x24001d28, 0x008d00c0, 0x05902000 },
{ 0x00200008, 0x20c02d21, 0x00450a4c, 0x00010001 },
{ 0x00000001, 0x20c80061, 0x00000000, 0x00070007 },
{ 0x00802001, 0x20200062, 0x00000000, 0x7f7f7f7f },
{ 0x00800031, 0x24001d28, 0x008d00c0, 0x05302002 },
{ 0x00800031, 0x24001d28, 0x008d00c0, 0x05302001 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
/drivers/video/i965/shaders/mpeg2/vld/field_backward_16x8.g4b.gen5
0,0 → 1,15
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00200001, 0x20c00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x20c80061, 0x00000000, 0x000f000f },
{ 0x00802001, 0x20200062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20600062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20a00062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20e00062, 0x00000000, 0xffffffff },
{ 0x00800031, 0x24001d28, 0x508d00c0, 0x12082000 },
{ 0x00200008, 0x20c02d21, 0x00450a4c, 0x00010001 },
{ 0x00000001, 0x20c80061, 0x00000000, 0x00070007 },
{ 0x00802001, 0x20200062, 0x00000000, 0x7f7f7f7f },
{ 0x00800031, 0x24001d28, 0x508d00c0, 0x06082002 },
{ 0x00800031, 0x24001d28, 0x508d00c0, 0x06082001 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
/drivers/video/i965/shaders/mpeg2/vld/field_bidirect.g4b
0,0 → 1,797
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20002dbc, 0x00210a50, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000006a },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a004 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10500 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10540 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10580 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c0 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10600 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10640 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10680 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10501 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10541 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10581 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c1 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10601 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10641 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10681 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c1 },
{ 0x00800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x00800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x00800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x00800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x00800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x00800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x00800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x00800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a004 },
{ 0x00800040, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10500 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10540 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10580 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c0 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10600 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10640 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10680 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10501 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10541 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10581 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c1 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10601 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10641 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10681 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x00800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x00800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x00800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x00800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x00800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x00800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x00800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x00800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000039 },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000001f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a004 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b106c0 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a004 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b10680, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00800001, 0x28400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b10680, 0x00000000 },
{ 0x00802001, 0x2d800021, 0x00b10740, 0x00000000 },
{ 0x00802001, 0x2dc00021, 0x00b10780, 0x00000000 },
{ 0x00802001, 0x2e000021, 0x00b107c0, 0x00000000 },
{ 0x00802001, 0x2e400021, 0x00b10800, 0x00000000 },
{ 0x00802001, 0x2e800021, 0x00b10840, 0x00000000 },
{ 0x00802001, 0x2ec00021, 0x00b10880, 0x00000000 },
{ 0x00802001, 0x2f000021, 0x00b108c0, 0x00000000 },
{ 0x00802001, 0x2f400021, 0x00b10900, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20002dbc, 0x00210a54, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000006a },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a007 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10500 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10540 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10580 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c0 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10600 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10640 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10680 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10501 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10541 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10581 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c1 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10601 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10641 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10681 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c1 },
{ 0x00800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x00800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x00800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x00800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x00800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x00800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x00800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x00800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a007 },
{ 0x00800040, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10500 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10540 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10580 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c0 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10600 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10640 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10680 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10501 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10541 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10581 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c1 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10601 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10641 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10681 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x00800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x00800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x00800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x00800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x00800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x00800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x00800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x00800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000039 },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000001f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a007 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b106c0 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a007 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b10680, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00800001, 0x28400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b10680, 0x00000000 },
{ 0x00800042, 0x27402529, 0x00b10740, 0x00b10d80 },
{ 0x00800042, 0x27602529, 0x00b10760, 0x00b10da0 },
{ 0x00800042, 0x27802529, 0x00b10780, 0x00b10dc0 },
{ 0x00800042, 0x27a02529, 0x00b107a0, 0x00b10de0 },
{ 0x00800042, 0x27c02529, 0x00b107c0, 0x00b10e00 },
{ 0x00800042, 0x27e02529, 0x00b107e0, 0x00b10e20 },
{ 0x00800042, 0x28002529, 0x00b10800, 0x00b10e40 },
{ 0x00800042, 0x28202529, 0x00b10820, 0x00b10e60 },
{ 0x00800042, 0x28402529, 0x00b10840, 0x00b10e80 },
{ 0x00800042, 0x28602529, 0x00b10860, 0x00b10ea0 },
{ 0x00800042, 0x28802529, 0x00b10880, 0x00b10ec0 },
{ 0x00800042, 0x28a02529, 0x00b108a0, 0x00b10ee0 },
{ 0x00800042, 0x28c02529, 0x00b108c0, 0x00b10f00 },
{ 0x00800042, 0x28e02529, 0x00b108e0, 0x00b10f20 },
{ 0x00800042, 0x29002529, 0x00b10900, 0x00b10f40 },
{ 0x00800042, 0x29202529, 0x00b10920, 0x00b10f60 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20003dbc, 0x00210a50, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000043 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a005 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a006 },
{ 0x00600040, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0520 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0540 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0560 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0580 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0521 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0541 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0561 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0581 },
{ 0x00600040, 0x29c04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29d04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x29e04629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x29f04629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0600 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0620 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0640 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0601 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0621 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0641 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a005 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a006 },
{ 0x00600040, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0520 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0540 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0560 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0580 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0521 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0541 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0561 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0581 },
{ 0x00600040, 0x2a004629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x2a104629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a204629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a304629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e0 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0600 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0620 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0640 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e1 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0601 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0621 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0641 },
{ 0x00a02008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00a02008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00a02008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00a02008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000004e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a006 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a006 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x2a004629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x2a104629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x2a204629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x2a304629, 0x008d05e0, 0x008d05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000037 },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000001f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a005 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a006 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x29c04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29d04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x29e04629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x29f04629, 0x008d0620, 0x008d0640 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a005 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a006 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x2a004629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x2a104629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a204629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a304629, 0x008d0620, 0x008d0640 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a006 },
{ 0x00600001, 0x29400229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29500229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29600229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29700229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x29c00229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x29d00229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x29e00229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x29f00229, 0x008d05e0, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a006 },
{ 0x00600001, 0x29800229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29900229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29a00229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29b00229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x2a000229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x2a100229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x2a200229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x2a300229, 0x008d05e0, 0x00000000 },
{ 0x00802001, 0x2d800021, 0x00b10940, 0x00000000 },
{ 0x00802001, 0x2dc00021, 0x00b10980, 0x00000000 },
{ 0x00802001, 0x2e000021, 0x00b109c0, 0x00000000 },
{ 0x00802001, 0x2e400021, 0x00b10a00, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20003dbc, 0x00210a54, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000043 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a008 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a009 },
{ 0x00600040, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0520 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0540 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0560 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0580 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0521 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0541 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0561 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0581 },
{ 0x00600040, 0x29c04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29d04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x29e04629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x29f04629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0600 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0620 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0640 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0601 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0621 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0641 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a008 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a009 },
{ 0x00600040, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0520 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0540 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0560 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0580 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0521 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0541 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0561 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0581 },
{ 0x00600040, 0x2a004629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x2a104629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a204629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a304629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e0 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0600 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0620 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0640 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e1 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0601 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0621 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0641 },
{ 0x00a02008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00a02008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00a02008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00a02008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000004e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a009 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a009 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x2a004629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x2a104629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x2a204629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x2a304629, 0x008d05e0, 0x008d05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000037 },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000001f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a008 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a009 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x29c04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29d04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x29e04629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x29f04629, 0x008d0620, 0x008d0640 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a008 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a009 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x2a004629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x2a104629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a204629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a304629, 0x008d0620, 0x008d0640 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a009 },
{ 0x00600001, 0x29400229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29500229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29600229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29700229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x29c00229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x29d00229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x29e00229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x29f00229, 0x008d05e0, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a009 },
{ 0x00600001, 0x29800229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29900229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29a00229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29b00229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x2a000229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x2a100229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x2a200229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x2a300229, 0x008d05e0, 0x00000000 },
{ 0x00800042, 0x29402529, 0x00b10940, 0x00b10d80 },
{ 0x00800042, 0x29602529, 0x00b10960, 0x00b10da0 },
{ 0x00800042, 0x29802529, 0x00b10980, 0x00b10dc0 },
{ 0x00800042, 0x29a02529, 0x00b109a0, 0x00b10de0 },
{ 0x00800042, 0x29c02529, 0x00b109c0, 0x00b10e00 },
{ 0x00800042, 0x29e02529, 0x00b109e0, 0x00b10e20 },
{ 0x00800042, 0x2a002529, 0x00b10a00, 0x00b10e40 },
{ 0x00800042, 0x2a202529, 0x00b10a20, 0x00b10e60 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05902000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302002 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
/drivers/video/i965/shaders/mpeg2/vld/field_bidirect.g4b.gen5
0,0 → 1,797
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20002dbc, 0x00210a50, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000d4 },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000009e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a004 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10500 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10540 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10580 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c0 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10600 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10640 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10680 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10501 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10541 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10581 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c1 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10601 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10641 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10681 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c1 },
{ 0x00800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x00800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x00800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x00800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x00800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x00800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x00800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x00800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a004 },
{ 0x00800040, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10500 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10540 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10580 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c0 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10600 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10640 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10680 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10501 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10541 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10581 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c1 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10601 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10641 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10681 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x00800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x00800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x00800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x00800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x00800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x00800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x00800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x00800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000a4 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000072 },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000003e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a004 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b106c0 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a004 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b10680, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00800001, 0x28400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b10680, 0x00000000 },
{ 0x00802001, 0x2d800021, 0x00b10740, 0x00000000 },
{ 0x00802001, 0x2dc00021, 0x00b10780, 0x00000000 },
{ 0x00802001, 0x2e000021, 0x00b107c0, 0x00000000 },
{ 0x00802001, 0x2e400021, 0x00b10800, 0x00000000 },
{ 0x00802001, 0x2e800021, 0x00b10840, 0x00000000 },
{ 0x00802001, 0x2ec00021, 0x00b10880, 0x00000000 },
{ 0x00802001, 0x2f000021, 0x00b108c0, 0x00000000 },
{ 0x00802001, 0x2f400021, 0x00b10900, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20002dbc, 0x00210a54, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000d4 },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000009e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a007 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10500 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10540 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10580 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c0 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10600 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10640 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10680 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10501 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10541 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10581 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c1 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10601 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10641 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10681 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c1 },
{ 0x00800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x00800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x00800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x00800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x00800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x00800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x00800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x00800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a007 },
{ 0x00800040, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10500 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10540 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10580 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c0 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10600 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10640 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10680 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10501 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10541 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10581 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c1 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10601 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10641 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10681 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x00800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x00800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x00800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x00800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x00800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x00800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x00800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x00800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000a4 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000072 },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000003e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a007 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b106c0 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a007 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b10680, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00800001, 0x28400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b10680, 0x00000000 },
{ 0x00800042, 0x27402529, 0x00b10740, 0x00b10d80 },
{ 0x00800042, 0x27602529, 0x00b10760, 0x00b10da0 },
{ 0x00800042, 0x27802529, 0x00b10780, 0x00b10dc0 },
{ 0x00800042, 0x27a02529, 0x00b107a0, 0x00b10de0 },
{ 0x00800042, 0x27c02529, 0x00b107c0, 0x00b10e00 },
{ 0x00800042, 0x27e02529, 0x00b107e0, 0x00b10e20 },
{ 0x00800042, 0x28002529, 0x00b10800, 0x00b10e40 },
{ 0x00800042, 0x28202529, 0x00b10820, 0x00b10e60 },
{ 0x00800042, 0x28402529, 0x00b10840, 0x00b10e80 },
{ 0x00800042, 0x28602529, 0x00b10860, 0x00b10ea0 },
{ 0x00800042, 0x28802529, 0x00b10880, 0x00b10ec0 },
{ 0x00800042, 0x28a02529, 0x00b108a0, 0x00b10ee0 },
{ 0x00800042, 0x28c02529, 0x00b108c0, 0x00b10f00 },
{ 0x00800042, 0x28e02529, 0x00b108e0, 0x00b10f20 },
{ 0x00800042, 0x29002529, 0x00b10900, 0x00b10f40 },
{ 0x00800042, 0x29202529, 0x00b10920, 0x00b10f60 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20003dbc, 0x00210a50, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000b8 },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a005 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a006 },
{ 0x00600040, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0520 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0540 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0560 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0580 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0521 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0541 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0561 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0581 },
{ 0x00600040, 0x29c04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29d04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x29e04629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x29f04629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0600 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0620 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0640 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0601 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0621 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0641 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a005 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a006 },
{ 0x00600040, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0520 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0540 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0560 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0580 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0521 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0541 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0561 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0581 },
{ 0x00600040, 0x2a004629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x2a104629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a204629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a304629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e0 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0600 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0620 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0640 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e1 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0601 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0621 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0641 },
{ 0x00a02008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00a02008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00a02008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00a02008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000009c },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a006 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a006 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x2a004629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x2a104629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x2a204629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x2a304629, 0x008d05e0, 0x008d05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000006e },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000003e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a005 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a006 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x29c04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29d04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x29e04629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x29f04629, 0x008d0620, 0x008d0640 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a005 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a006 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x2a004629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x2a104629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a204629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a304629, 0x008d0620, 0x008d0640 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002c },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a006 },
{ 0x00600001, 0x29400229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29500229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29600229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29700229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x29c00229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x29d00229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x29e00229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x29f00229, 0x008d05e0, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a006 },
{ 0x00600001, 0x29800229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29900229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29a00229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29b00229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x2a000229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x2a100229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x2a200229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x2a300229, 0x008d05e0, 0x00000000 },
{ 0x00802001, 0x2d800021, 0x00b10940, 0x00000000 },
{ 0x00802001, 0x2dc00021, 0x00b10980, 0x00000000 },
{ 0x00802001, 0x2e000021, 0x00b109c0, 0x00000000 },
{ 0x00802001, 0x2e400021, 0x00b10a00, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20003dbc, 0x00210a54, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000b8 },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a008 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a009 },
{ 0x00600040, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0520 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0540 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0560 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0580 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0521 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0541 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0561 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0581 },
{ 0x00600040, 0x29c04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29d04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x29e04629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x29f04629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0600 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0620 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0640 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0601 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0621 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0641 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a008 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a009 },
{ 0x00600040, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0520 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0540 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0560 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0580 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0521 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0541 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0561 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0581 },
{ 0x00600040, 0x2a004629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x2a104629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a204629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a304629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e0 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0600 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0620 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0640 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e1 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0601 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0621 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0641 },
{ 0x00a02008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00a02008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00a02008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00a02008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000009c },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a009 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a009 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x2a004629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x2a104629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x2a204629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x2a304629, 0x008d05e0, 0x008d05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000006e },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000003e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a008 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a009 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x29c04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29d04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x29e04629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x29f04629, 0x008d0620, 0x008d0640 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a008 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a009 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x2a004629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x2a104629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a204629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a304629, 0x008d0620, 0x008d0640 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002c },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a009 },
{ 0x00600001, 0x29400229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29500229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29600229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29700229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x29c00229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x29d00229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x29e00229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x29f00229, 0x008d05e0, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a009 },
{ 0x00600001, 0x29800229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29900229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29a00229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29b00229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x2a000229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x2a100229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x2a200229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x2a300229, 0x008d05e0, 0x00000000 },
{ 0x00800042, 0x29402529, 0x00b10940, 0x00b10d80 },
{ 0x00800042, 0x29602529, 0x00b10960, 0x00b10da0 },
{ 0x00800042, 0x29802529, 0x00b10980, 0x00b10dc0 },
{ 0x00800042, 0x29a02529, 0x00b109a0, 0x00b10de0 },
{ 0x00800042, 0x29c02529, 0x00b109c0, 0x00b10e00 },
{ 0x00800042, 0x29e02529, 0x00b109e0, 0x00b10e20 },
{ 0x00800042, 0x2a002529, 0x00b10a00, 0x00b10e40 },
{ 0x00800042, 0x2a202529, 0x00b10a20, 0x00b10e60 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x12082000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082002 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
/drivers/video/i965/shaders/mpeg2/vld/field_bidirect_16x8.g4b
0,0 → 1,15
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00200001, 0x20c00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x20c80061, 0x00000000, 0x000f000f },
{ 0x00802001, 0x20200062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20600062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20a00062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20e00062, 0x00000000, 0xffffffff },
{ 0x00800031, 0x24001d28, 0x008d00c0, 0x05902000 },
{ 0x00200008, 0x20c02d21, 0x00450a4c, 0x00010001 },
{ 0x00000001, 0x20c80061, 0x00000000, 0x00070007 },
{ 0x00802001, 0x20200062, 0x00000000, 0x7f7f7f7f },
{ 0x00800031, 0x24001d28, 0x008d00c0, 0x05302002 },
{ 0x00800031, 0x24001d28, 0x008d00c0, 0x05302001 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
/drivers/video/i965/shaders/mpeg2/vld/field_bidirect_16x8.g4b.gen5
0,0 → 1,15
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00200001, 0x20c00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x20c80061, 0x00000000, 0x000f000f },
{ 0x00802001, 0x20200062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20600062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20a00062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20e00062, 0x00000000, 0xffffffff },
{ 0x00800031, 0x24001d28, 0x508d00c0, 0x12082000 },
{ 0x00200008, 0x20c02d21, 0x00450a4c, 0x00010001 },
{ 0x00000001, 0x20c80061, 0x00000000, 0x00070007 },
{ 0x00802001, 0x20200062, 0x00000000, 0x7f7f7f7f },
{ 0x00800031, 0x24001d28, 0x508d00c0, 0x06082002 },
{ 0x00800031, 0x24001d28, 0x508d00c0, 0x06082001 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
/drivers/video/i965/shaders/mpeg2/vld/field_forward.g4b
0,0 → 1,768
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x08000800 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000b },
{ 0x00000005, 0x24002d29, 0x00210a4a, 0x00030003 },
{ 0x01000010, 0x20002d3c, 0x00210400, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000004 },
{ 0x01000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000004 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000014a },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20002dbc, 0x00210a50, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000006a },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a004 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10500 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10540 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10580 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c0 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10600 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10640 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10680 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10501 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10541 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10581 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c1 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10601 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10641 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10681 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c1 },
{ 0x00800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x00800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x00800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x00800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x00800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x00800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x00800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x00800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a004 },
{ 0x00800040, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10500 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10540 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10580 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c0 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10600 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10640 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10680 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10501 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10541 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10581 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c1 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10601 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10641 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10681 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x00800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x00800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x00800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x00800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x00800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x00800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x00800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x00800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000039 },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000001f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a004 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b106c0 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a004 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b10680, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00800001, 0x28400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b10680, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20003dbc, 0x00210a50, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000043 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a005 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a006 },
{ 0x00600040, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0520 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0540 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0560 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0580 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0521 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0541 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0561 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0581 },
{ 0x00600040, 0x29c04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29d04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x29e04629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x29f04629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0600 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0620 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0640 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0601 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0621 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0641 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a005 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a006 },
{ 0x00600040, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0520 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0540 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0560 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0580 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0521 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0541 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0561 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0581 },
{ 0x00600040, 0x2a004629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x2a104629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a204629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a304629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e0 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0600 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0620 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0640 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e1 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0601 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0621 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0641 },
{ 0x00a02008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00a02008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00a02008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00a02008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000004e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a006 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a006 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x2a004629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x2a104629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x2a204629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x2a304629, 0x008d05e0, 0x008d05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000037 },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000001f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a005 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a006 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x29c04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29d04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x29e04629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x29f04629, 0x008d0620, 0x008d0640 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a005 },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a006 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x2a004629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x2a104629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a204629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a304629, 0x008d0620, 0x008d0640 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a006 },
{ 0x00600001, 0x29400229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29500229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29600229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29700229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x29c00229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x29d00229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x29e00229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x29f00229, 0x008d05e0, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a006 },
{ 0x00600001, 0x29800229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29900229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29a00229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29b00229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x2a000229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x2a100229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x2a200229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x2a300229, 0x008d05e0, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000141 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a50, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000006a },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a003 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10500 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10540 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10580 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c0 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10600 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10640 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10680 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10501 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10541 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10581 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c1 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10601 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10641 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10681 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c1 },
{ 0x00800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x00800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x00800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x00800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x00800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x00800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x00800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x00800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a003 },
{ 0x00800040, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10500 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10540 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10580 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c0 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10600 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10640 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10680 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10501 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10541 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10581 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c1 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10601 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10641 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10681 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x00800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x00800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x00800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x00800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x00800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x00800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x00800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x00800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000039 },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000001f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a003 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b106c0 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a003 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b10680, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a003 },
{ 0x00800001, 0x28400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b10680, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a50, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000043 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a00a },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a00b },
{ 0x00600040, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0520 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0540 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0560 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0580 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0521 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0541 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0561 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0581 },
{ 0x00600040, 0x29c04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29d04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x29e04629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x29f04629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0600 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0620 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0640 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0601 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0621 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0641 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a00a },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a00b },
{ 0x00600040, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0520 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0540 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0560 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0580 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0521 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0541 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0561 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0581 },
{ 0x00600040, 0x2a004629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x2a104629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a204629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a304629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e0 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0600 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0620 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0640 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e1 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0601 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0621 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0641 },
{ 0x00a02008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00a02008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00a02008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00a02008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000004e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a00b },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a00b },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x2a004629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x2a104629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x2a204629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x2a304629, 0x008d05e0, 0x008d05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000037 },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000001f },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a00a },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a00b },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x29c04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29d04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x29e04629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x29f04629, 0x008d0620, 0x008d0640 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0414a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0411a00a },
{ 0x00800031, 0x26401d29, 0x008d0400, 0x0411a00b },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x2a004629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x2a104629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a204629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a304629, 0x008d0620, 0x008d0640 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a00b },
{ 0x00600001, 0x29400229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29500229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29600229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29700229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x29c00229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x29d00229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x29e00229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x29f00229, 0x008d05e0, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a00a },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a00b },
{ 0x00600001, 0x29800229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29900229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29a00229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29b00229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x2a000229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x2a100229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x2a200229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x2a300229, 0x008d05e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05902000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302002 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
/drivers/video/i965/shaders/mpeg2/vld/field_forward.g4b.gen5
0,0 → 1,768
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x08000800 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000005, 0x24002d29, 0x00210a4a, 0x00030003 },
{ 0x01000010, 0x20002d3c, 0x00210400, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x01000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000c },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000004 },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000294 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20002dbc, 0x00210a50, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000d4 },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000009e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a004 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10500 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10540 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10580 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c0 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10600 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10640 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10680 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10501 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10541 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10581 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c1 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10601 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10641 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10681 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c1 },
{ 0x00800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x00800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x00800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x00800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x00800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x00800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x00800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x00800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a004 },
{ 0x00800040, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10500 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10540 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10580 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c0 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10600 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10640 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10680 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10501 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10541 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10581 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c1 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10601 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10641 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10681 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x00800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x00800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x00800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x00800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x00800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x00800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x00800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x00800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000a4 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000072 },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000003e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a004 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b106c0 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a004 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b10680, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00800001, 0x28400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b10680, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x241c0061, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010001, 0x241c0061, 0x00000000, 0x00000001 },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x00000040, 0x24040421, 0x00210404, 0x0021041c },
{ 0x01000005, 0x20003dbc, 0x00210a50, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000b8 },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a005 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a006 },
{ 0x00600040, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0520 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0540 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0560 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0580 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0521 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0541 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0561 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0581 },
{ 0x00600040, 0x29c04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29d04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x29e04629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x29f04629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0600 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0620 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0640 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0601 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0621 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0641 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a005 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a006 },
{ 0x00600040, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0520 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0540 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0560 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0580 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0521 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0541 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0561 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0581 },
{ 0x00600040, 0x2a004629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x2a104629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a204629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a304629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e0 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0600 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0620 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0640 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e1 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0601 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0621 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0641 },
{ 0x00a02008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00a02008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00a02008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00a02008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000009c },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a006 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a006 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x2a004629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x2a104629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x2a204629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x2a304629, 0x008d05e0, 0x008d05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000006e },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000003e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a005 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a006 },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x29c04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29d04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x29e04629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x29f04629, 0x008d0620, 0x008d0640 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a005 },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a006 },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x2a004629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x2a104629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a204629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a304629, 0x008d0620, 0x008d0640 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002c },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a006 },
{ 0x00600001, 0x29400229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29500229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29600229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29700229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x29c00229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x29d00229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x29e00229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x29f00229, 0x008d05e0, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a006 },
{ 0x00600001, 0x29800229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29900229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29a00229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29b00229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x2a000229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x2a100229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x2a200229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x2a300229, 0x008d05e0, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000282 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a50, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000d4 },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000009e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a003 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10500 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10540 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10580 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c0 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10600 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10640 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10680 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b10501 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10541 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10581 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b105c1 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10601 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10641 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b10681 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b106c1 },
{ 0x00800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x00800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x00800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x00800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x00800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x00800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x00800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x00800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a003 },
{ 0x00800040, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10500 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10540 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10580 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c0 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10600 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10640 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10680 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b10501 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10541 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10581 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b105c1 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10601 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10641 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b10681 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x00800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x00800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x00800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x00800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x00800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x00800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x00800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x00800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000a4 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b10681 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10501 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10541 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b10581 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b105c1 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10601 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10641 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b10681 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000072 },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000003e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a003 },
{ 0x00800042, 0x27404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x27604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x27804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x27a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x27c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x27e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x28004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x28204629, 0x00b10680, 0x00b106c0 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a003 },
{ 0x00800042, 0x28404629, 0x00b104c0, 0x00b10500 },
{ 0x00800042, 0x28604629, 0x00b10500, 0x00b10540 },
{ 0x00800042, 0x28804629, 0x00b10540, 0x00b10580 },
{ 0x00800042, 0x28a04629, 0x00b10580, 0x00b105c0 },
{ 0x00800042, 0x28c04629, 0x00b105c0, 0x00b10600 },
{ 0x00800042, 0x28e04629, 0x00b10600, 0x00b10640 },
{ 0x00800042, 0x29004629, 0x00b10640, 0x00b10680 },
{ 0x00800042, 0x29204629, 0x00b10680, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b10680, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a003 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a003 },
{ 0x00800001, 0x28400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b10680, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000009, 0x24040c21, 0x00210404, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a50, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000b8 },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a00a },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a00b },
{ 0x00600040, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0520 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0540 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0560 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0580 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0521 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0541 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d0561 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d0581 },
{ 0x00600040, 0x29c04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29d04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x29e04629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x29f04629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0600 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0620 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0640 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05e1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d0601 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d0621 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0641 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a00a },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a00b },
{ 0x00600040, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600040, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0520 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0540 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0560 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0580 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d0521 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0541 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0561 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0581 },
{ 0x00600040, 0x2a004629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x2a104629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a204629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a304629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e0 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0600 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0620 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0640 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d05e1 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0601 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0621 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0641 },
{ 0x00a02008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00a02008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00a02008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00a02008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000009c },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a00b },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a00b },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0501 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0521 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0541 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0561 },
{ 0x00600042, 0x2a004629, 0x008d0580, 0x008d0581 },
{ 0x00600042, 0x2a104629, 0x008d05a0, 0x008d05a1 },
{ 0x00600042, 0x2a204629, 0x008d05c0, 0x008d05c1 },
{ 0x00600042, 0x2a304629, 0x008d05e0, 0x008d05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000006e },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000003e },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a00a },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a00b },
{ 0x00600042, 0x29404629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29504629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29604629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29704629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x29c04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29d04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x29e04629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x29f04629, 0x008d0620, 0x008d0640 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0248a00b },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000000f },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0218a00a },
{ 0x00800031, 0x26401d29, 0x408d0400, 0x0218a00b },
{ 0x00600042, 0x29804629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29904629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29a04629, 0x008d0540, 0x008d0560 },
{ 0x00600042, 0x29b04629, 0x008d0560, 0x008d0580 },
{ 0x00600042, 0x2a004629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x2a104629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a204629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a304629, 0x008d0620, 0x008d0640 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002c },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a00b },
{ 0x00600001, 0x29400229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29500229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29600229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29700229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x29c00229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x29d00229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x29e00229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x29f00229, 0x008d05e0, 0x00000000 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a00a },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a00b },
{ 0x00600001, 0x29800229, 0x008d0500, 0x00000000 },
{ 0x00600001, 0x29900229, 0x008d0520, 0x00000000 },
{ 0x00600001, 0x29a00229, 0x008d0540, 0x00000000 },
{ 0x00600001, 0x29b00229, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x2a000229, 0x008d0580, 0x00000000 },
{ 0x00600001, 0x2a100229, 0x008d05a0, 0x00000000 },
{ 0x00600001, 0x2a200229, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x2a300229, 0x008d05e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x12082000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082002 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
/drivers/video/i965/shaders/mpeg2/vld/field_forward_16x8.g4b
0,0 → 1,15
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00200001, 0x20c00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x20c80061, 0x00000000, 0x000f000f },
{ 0x00802001, 0x20200062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20600062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20a00062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20e00062, 0x00000000, 0xffffffff },
{ 0x00800031, 0x24001d28, 0x008d00c0, 0x05902000 },
{ 0x00200008, 0x20c02d21, 0x00450a4c, 0x00010001 },
{ 0x00000001, 0x20c80061, 0x00000000, 0x00070007 },
{ 0x00802001, 0x20200062, 0x00000000, 0x7f7f7f7f },
{ 0x00800031, 0x24001d28, 0x008d00c0, 0x05302002 },
{ 0x00800031, 0x24001d28, 0x008d00c0, 0x05302001 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
/drivers/video/i965/shaders/mpeg2/vld/field_forward_16x8.g4b.gen5
0,0 → 1,15
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00200001, 0x20c00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x20c80061, 0x00000000, 0x000f000f },
{ 0x00802001, 0x20200062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20600062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20a00062, 0x00000000, 0xffffffff },
{ 0x00802001, 0x20e00062, 0x00000000, 0xffffffff },
{ 0x00800031, 0x24001d28, 0x508d00c0, 0x12082000 },
{ 0x00200008, 0x20c02d21, 0x00450a4c, 0x00010001 },
{ 0x00000001, 0x20c80061, 0x00000000, 0x00070007 },
{ 0x00802001, 0x20200062, 0x00000000, 0x7f7f7f7f },
{ 0x00800031, 0x24001d28, 0x508d00c0, 0x06082002 },
{ 0x00800031, 0x24001d28, 0x508d00c0, 0x06082001 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
/drivers/video/i965/shaders/mpeg2/vld/field_intra.g4b
0,0 → 1,313
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000005, 0x2da02d29, 0x00210a48, 0x001f001f },
{ 0x00000005, 0x2da42d29, 0x00210a48, 0x60006000 },
{ 0x00000008, 0x2da42d29, 0x00210da4, 0x000d000d },
{ 0x00000001, 0x2da60169, 0x00000000, 0x00080008 },
{ 0x00000008, 0x2da42529, 0x00210da6, 0x00210da4 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000012 },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00090009 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00110011 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00190019 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xffe7ffe7 },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00030003 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x00400040 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000009 },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xfff7fff7 },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00010001 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x000a000a },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000005 },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xffefffef },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00020002 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x001c001c },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000001 },
{ 0x00000009, 0x2da00d29, 0x00210da0, 0x00000001 },
{ 0x00000001, 0x2dc00129, 0x00210da0, 0x00000000 },
{ 0x00800001, 0x2e000229, 0x00b10020, 0x00000000 },
{ 0x00800001, 0x2e200229, 0x00b10030, 0x00000000 },
{ 0x00800001, 0x2e400229, 0x00b10040, 0x00000000 },
{ 0x00800001, 0x2e600229, 0x00b10050, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x03f003e0 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000a1 },
{ 0x00800001, 0x270001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x272001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x274001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x276001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000009b },
{ 0x00800001, 0x278001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x27a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x27c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x27e001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000095 },
{ 0x00800001, 0x280001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x282001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x284001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x286001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000008f },
{ 0x00800001, 0x288001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x28a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x28c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x28e001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000089 },
{ 0x00800001, 0x290001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x292001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x294001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x296001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000083 },
{ 0x00800001, 0x298001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x29a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x29c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x29e001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x06f006e0 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000008f },
{ 0x00600040, 0x2a602dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2a802dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2aa02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2ac02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2ae02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2b002dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2b202dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2b402dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000085 },
{ 0x00600040, 0x2a702dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2a902dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2ab02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2ad02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2af02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2b102dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2b302dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2b502dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000007b },
{ 0x00600040, 0x2b602dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2b802dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2ba02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2bc02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2be02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2c002dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2c202dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2c402dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000071 },
{ 0x00600040, 0x2b702dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2b902dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2bb02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2bd02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2bf02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2c102dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2c302dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2c502dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000067 },
{ 0x00800040, 0x2c602dad, 0x00ae0400, 0x00800080 },
{ 0x00800040, 0x2c802dad, 0x00ae0440, 0x00800080 },
{ 0x00800040, 0x2ca02dad, 0x00ae0480, 0x00800080 },
{ 0x00800040, 0x2cc02dad, 0x00ae04c0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000061 },
{ 0x00800040, 0x2ce02dad, 0x00ae0400, 0x00800080 },
{ 0x00800040, 0x2d002dad, 0x00ae0440, 0x00800080 },
{ 0x00800040, 0x2d202dad, 0x00ae0480, 0x00800080 },
{ 0x00800040, 0x2d402dad, 0x00ae04c0, 0x00800080 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x4a6001b1, 0x00b10a60, 0x00000000 },
{ 0x80800001, 0x4a8001b1, 0x00b10a80, 0x00000000 },
{ 0x80800001, 0x4aa001b1, 0x00b10aa0, 0x00000000 },
{ 0x80800001, 0x4ac001b1, 0x00b10ac0, 0x00000000 },
{ 0x80800001, 0x4ae001b1, 0x00b10ae0, 0x00000000 },
{ 0x80800001, 0x4b0001b1, 0x00b10b00, 0x00000000 },
{ 0x80800001, 0x4b2001b1, 0x00b10b20, 0x00000000 },
{ 0x80800001, 0x4b4001b1, 0x00b10b40, 0x00000000 },
{ 0x80800001, 0x4b6001b1, 0x00b10b60, 0x00000000 },
{ 0x80800001, 0x4b8001b1, 0x00b10b80, 0x00000000 },
{ 0x80800001, 0x4ba001b1, 0x00b10ba0, 0x00000000 },
{ 0x80800001, 0x4bc001b1, 0x00b10bc0, 0x00000000 },
{ 0x80800001, 0x4be001b1, 0x00b10be0, 0x00000000 },
{ 0x80800001, 0x4c0001b1, 0x00b10c00, 0x00000000 },
{ 0x80800001, 0x4c2001b1, 0x00b10c20, 0x00000000 },
{ 0x80800001, 0x4c4001b1, 0x00b10c40, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
{ 0x00800001, 0x20200232, 0x00b20a60, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20a80, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20aa0, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20ac0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b20ae0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b20b00, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20b20, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20b40, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20b60, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20b80, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20ba0, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b20bc0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b20be0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b20c00, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20c20, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20c40, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00800001, 0x20200232, 0x00b20a60, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20b60, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a80, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20b80, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b20aa0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b20ba0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20ac0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20bc0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20ae0, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20be0, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20b00, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b20c00, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b20b20, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b20c20, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20b40, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20c40, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05902000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01d21, 0x00450a4c, 0x00000001 },
{ 0x80800001, 0x4c6001b1, 0x00b10c60, 0x00000000 },
{ 0x80800001, 0x4c8001b1, 0x00b10c80, 0x00000000 },
{ 0x80800001, 0x4ca001b1, 0x00b10ca0, 0x00000000 },
{ 0x80800001, 0x4cc001b1, 0x00b10cc0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20c60, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20c80, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20ca0, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20cc0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302001 },
{ 0x80800001, 0x4ce001b1, 0x00b10ce0, 0x00000000 },
{ 0x80800001, 0x4d0001b1, 0x00b10d00, 0x00000000 },
{ 0x80800001, 0x4d2001b1, 0x00b10d20, 0x00000000 },
{ 0x80800001, 0x4d4001b1, 0x00b10d40, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20ce0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20d00, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20d20, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20d40, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302002 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00000001, 0x2de001ad, 0x00218000, 0x00000000 },
{ 0x00802041, 0x2e8025a5, 0x008d8000, 0x008d0e00 },
{ 0x00802041, 0x2e8024a5, 0x008d0e80, 0x008c0da0 },
{ 0x0080200c, 0x2e802ca5, 0x008d0e80, 0x00040004 },
{ 0x00000041, 0x2e8025a5, 0x00210de0, 0x00210da4 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2ec025a5, 0x008d8000, 0x008d0e20 },
{ 0x00802041, 0x2ec024a5, 0x008d0ec0, 0x008c0da0 },
{ 0x0080200c, 0x2ec02ca5, 0x008d0ec0, 0x00040004 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2f0025a5, 0x008d8000, 0x008d0e40 },
{ 0x00802041, 0x2f0024a5, 0x008d0f00, 0x008c0da0 },
{ 0x0080200c, 0x2f002ca5, 0x008d0f00, 0x00040004 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2f4025a5, 0x008d8000, 0x008d0e60 },
{ 0x00802041, 0x2f4024a5, 0x008d0f40, 0x008c0da0 },
{ 0x0080200c, 0x2f402ca5, 0x008d0f40, 0x00040004 },
{ 0x00000040, 0x34000c20, 0x00210fa0, 0x00000020 },
{ 0x00000001, 0x2fc00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000001a },
{ 0x00802040, 0x24000ca5, 0x008d0400, 0x00000400 },
{ 0x00802040, 0x24400ca5, 0x008d0440, 0x00000400 },
{ 0x00802040, 0x24800ca5, 0x008d0480, 0x00000400 },
{ 0x00802040, 0x24c00ca5, 0x008d04c0, 0x00000400 },
{ 0x00802008, 0x24000ca5, 0x008d0400, 0x0000000b },
{ 0x00802008, 0x24400ca5, 0x008d0440, 0x0000000b },
{ 0x00802008, 0x24800ca5, 0x008d0480, 0x0000000b },
{ 0x00802008, 0x24c00ca5, 0x008d04c0, 0x0000000b },
{ 0x00800001, 0x2dc001ad, 0x00ae0400, 0x00000000 },
{ 0x00800001, 0x2de001ad, 0x00ae0440, 0x00000000 },
{ 0x00800001, 0x2e0001ad, 0x00ae0480, 0x00000000 },
{ 0x00800001, 0x2e2001ad, 0x00ae04c0, 0x00000000 },
{ 0x00000001, 0x2a000001, 0x00210200, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0db00da0 },
{ 0x00000001, 0x2fc00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00802040, 0x24000ca5, 0x008d0400, 0x00080000 },
{ 0x00802040, 0x24400ca5, 0x008d0440, 0x00080000 },
{ 0x00802040, 0x24800ca5, 0x008d0480, 0x00080000 },
{ 0x00802040, 0x24c00ca5, 0x008d04c0, 0x00080000 },
{ 0x00802008, 0x24000ca5, 0x008d0400, 0x00000014 },
{ 0x00802008, 0x24400ca5, 0x008d0440, 0x00000014 },
{ 0x00802008, 0x24800ca5, 0x008d0480, 0x00000014 },
{ 0x00802008, 0x24c00ca5, 0x008d04c0, 0x00000014 },
{ 0x00000001, 0x22000020, 0x00210a00, 0x00000000 },
{ 0x00000040, 0x34000c20, 0x00210fa0, 0x00000020 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x240014a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x242014a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x244014a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x246014a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x248014a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24a014a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24c014a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24e014a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x240814a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x242814a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x244814a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x246814a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x248814a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24a814a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24c814a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24e814a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x241014a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x243014a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x245014a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x247014a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x249014a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24b014a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24d014a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24f014a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x241814a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x243814a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x245814a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x247814a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x249814a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24b814a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24d814a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24f814a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x34000c20, 0x00210fc0, 0x00000020 },
/drivers/video/i965/shaders/mpeg2/vld/field_intra.g4b.gen5
0,0 → 1,313
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000005, 0x2da02d29, 0x00210a48, 0x001f001f },
{ 0x00000005, 0x2da42d29, 0x00210a48, 0x60006000 },
{ 0x00000008, 0x2da42d29, 0x00210da4, 0x000d000d },
{ 0x00000001, 0x2da60169, 0x00000000, 0x00080008 },
{ 0x00000008, 0x2da42529, 0x00210da6, 0x00210da4 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00090009 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00110011 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000c },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00190019 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xffe7ffe7 },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00030003 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x00400040 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000012 },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xfff7fff7 },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00010001 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x000a000a },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xffefffef },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00020002 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x001c001c },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00000009, 0x2da00d29, 0x00210da0, 0x00000001 },
{ 0x00000001, 0x2dc00129, 0x00210da0, 0x00000000 },
{ 0x00800001, 0x2e000229, 0x00b10020, 0x00000000 },
{ 0x00800001, 0x2e200229, 0x00b10030, 0x00000000 },
{ 0x00800001, 0x2e400229, 0x00b10040, 0x00000000 },
{ 0x00800001, 0x2e600229, 0x00b10050, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x03f003e0 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000142 },
{ 0x00800001, 0x270001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x272001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x274001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x276001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000136 },
{ 0x00800001, 0x278001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x27a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x27c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x27e001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000012a },
{ 0x00800001, 0x280001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x282001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x284001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x286001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000011e },
{ 0x00800001, 0x288001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x28a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x28c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x28e001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000112 },
{ 0x00800001, 0x290001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x292001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x294001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x296001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000106 },
{ 0x00800001, 0x298001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x29a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x29c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x29e001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x06f006e0 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000011e },
{ 0x00600040, 0x2a602dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2a802dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2aa02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2ac02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2ae02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2b002dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2b202dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2b402dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000010a },
{ 0x00600040, 0x2a702dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2a902dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2ab02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2ad02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2af02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2b102dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2b302dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2b502dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000f6 },
{ 0x00600040, 0x2b602dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2b802dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2ba02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2bc02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2be02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2c002dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2c202dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2c402dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000e2 },
{ 0x00600040, 0x2b702dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2b902dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2bb02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2bd02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2bf02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2c102dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2c302dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2c502dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000ce },
{ 0x00800040, 0x2c602dad, 0x00ae0400, 0x00800080 },
{ 0x00800040, 0x2c802dad, 0x00ae0440, 0x00800080 },
{ 0x00800040, 0x2ca02dad, 0x00ae0480, 0x00800080 },
{ 0x00800040, 0x2cc02dad, 0x00ae04c0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000c2 },
{ 0x00800040, 0x2ce02dad, 0x00ae0400, 0x00800080 },
{ 0x00800040, 0x2d002dad, 0x00ae0440, 0x00800080 },
{ 0x00800040, 0x2d202dad, 0x00ae0480, 0x00800080 },
{ 0x00800040, 0x2d402dad, 0x00ae04c0, 0x00800080 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x4a6001b1, 0x00b10a60, 0x00000000 },
{ 0x80800001, 0x4a8001b1, 0x00b10a80, 0x00000000 },
{ 0x80800001, 0x4aa001b1, 0x00b10aa0, 0x00000000 },
{ 0x80800001, 0x4ac001b1, 0x00b10ac0, 0x00000000 },
{ 0x80800001, 0x4ae001b1, 0x00b10ae0, 0x00000000 },
{ 0x80800001, 0x4b0001b1, 0x00b10b00, 0x00000000 },
{ 0x80800001, 0x4b2001b1, 0x00b10b20, 0x00000000 },
{ 0x80800001, 0x4b4001b1, 0x00b10b40, 0x00000000 },
{ 0x80800001, 0x4b6001b1, 0x00b10b60, 0x00000000 },
{ 0x80800001, 0x4b8001b1, 0x00b10b80, 0x00000000 },
{ 0x80800001, 0x4ba001b1, 0x00b10ba0, 0x00000000 },
{ 0x80800001, 0x4bc001b1, 0x00b10bc0, 0x00000000 },
{ 0x80800001, 0x4be001b1, 0x00b10be0, 0x00000000 },
{ 0x80800001, 0x4c0001b1, 0x00b10c00, 0x00000000 },
{ 0x80800001, 0x4c2001b1, 0x00b10c20, 0x00000000 },
{ 0x80800001, 0x4c4001b1, 0x00b10c40, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x00800001, 0x20200232, 0x00b20a60, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20a80, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20aa0, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20ac0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b20ae0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b20b00, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20b20, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20b40, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20b60, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20b80, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20ba0, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b20bc0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b20be0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b20c00, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20c20, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20c40, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00800001, 0x20200232, 0x00b20a60, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20b60, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a80, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20b80, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b20aa0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b20ba0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20ac0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20bc0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20ae0, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20be0, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20b00, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b20c00, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b20b20, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b20c20, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20b40, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20c40, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x12082000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01d21, 0x00450a4c, 0x00000001 },
{ 0x80800001, 0x4c6001b1, 0x00b10c60, 0x00000000 },
{ 0x80800001, 0x4c8001b1, 0x00b10c80, 0x00000000 },
{ 0x80800001, 0x4ca001b1, 0x00b10ca0, 0x00000000 },
{ 0x80800001, 0x4cc001b1, 0x00b10cc0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20c60, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20c80, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20ca0, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20cc0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082001 },
{ 0x80800001, 0x4ce001b1, 0x00b10ce0, 0x00000000 },
{ 0x80800001, 0x4d0001b1, 0x00b10d00, 0x00000000 },
{ 0x80800001, 0x4d2001b1, 0x00b10d20, 0x00000000 },
{ 0x80800001, 0x4d4001b1, 0x00b10d40, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20ce0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20d00, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20d20, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20d40, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082002 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00000001, 0x2de001ad, 0x00218000, 0x00000000 },
{ 0x00802041, 0x2e8025a5, 0x008d8000, 0x008d0e00 },
{ 0x00802041, 0x2e8024a5, 0x008d0e80, 0x008c0da0 },
{ 0x0080200c, 0x2e802ca5, 0x008d0e80, 0x00040004 },
{ 0x00000041, 0x2e8025a5, 0x00210de0, 0x00210da4 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2ec025a5, 0x008d8000, 0x008d0e20 },
{ 0x00802041, 0x2ec024a5, 0x008d0ec0, 0x008c0da0 },
{ 0x0080200c, 0x2ec02ca5, 0x008d0ec0, 0x00040004 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2f0025a5, 0x008d8000, 0x008d0e40 },
{ 0x00802041, 0x2f0024a5, 0x008d0f00, 0x008c0da0 },
{ 0x0080200c, 0x2f002ca5, 0x008d0f00, 0x00040004 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2f4025a5, 0x008d8000, 0x008d0e60 },
{ 0x00802041, 0x2f4024a5, 0x008d0f40, 0x008c0da0 },
{ 0x0080200c, 0x2f402ca5, 0x008d0f40, 0x00040004 },
{ 0x00000040, 0x34000c20, 0x00210fa0, 0x00000020 },
{ 0x00000001, 0x2fc00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00802040, 0x24000ca5, 0x008d0400, 0x00000400 },
{ 0x00802040, 0x24400ca5, 0x008d0440, 0x00000400 },
{ 0x00802040, 0x24800ca5, 0x008d0480, 0x00000400 },
{ 0x00802040, 0x24c00ca5, 0x008d04c0, 0x00000400 },
{ 0x00802008, 0x24000ca5, 0x008d0400, 0x0000000b },
{ 0x00802008, 0x24400ca5, 0x008d0440, 0x0000000b },
{ 0x00802008, 0x24800ca5, 0x008d0480, 0x0000000b },
{ 0x00802008, 0x24c00ca5, 0x008d04c0, 0x0000000b },
{ 0x00800001, 0x2dc001ad, 0x00ae0400, 0x00000000 },
{ 0x00800001, 0x2de001ad, 0x00ae0440, 0x00000000 },
{ 0x00800001, 0x2e0001ad, 0x00ae0480, 0x00000000 },
{ 0x00800001, 0x2e2001ad, 0x00ae04c0, 0x00000000 },
{ 0x00000001, 0x2a000001, 0x00210200, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0db00da0 },
{ 0x00000001, 0x2fc00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x00802040, 0x24000ca5, 0x008d0400, 0x00080000 },
{ 0x00802040, 0x24400ca5, 0x008d0440, 0x00080000 },
{ 0x00802040, 0x24800ca5, 0x008d0480, 0x00080000 },
{ 0x00802040, 0x24c00ca5, 0x008d04c0, 0x00080000 },
{ 0x00802008, 0x24000ca5, 0x008d0400, 0x00000014 },
{ 0x00802008, 0x24400ca5, 0x008d0440, 0x00000014 },
{ 0x00802008, 0x24800ca5, 0x008d0480, 0x00000014 },
{ 0x00802008, 0x24c00ca5, 0x008d04c0, 0x00000014 },
{ 0x00000001, 0x22000020, 0x00210a00, 0x00000000 },
{ 0x00000040, 0x34000c20, 0x00210fa0, 0x00000020 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x240014a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x242014a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x244014a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x246014a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x248014a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24a014a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24c014a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24e014a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x240814a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x242814a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x244814a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x246814a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x248814a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24a814a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24c814a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24e814a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x241014a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x243014a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x245014a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x247014a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x249014a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24b014a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24d014a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24f014a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x241814a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x243814a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x245814a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x247814a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x249814a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24b814a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24d814a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24f814a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x34000c20, 0x00210fc0, 0x00000020 },
/drivers/video/i965/shaders/mpeg2/vld/frame_field_pred_backward.g4b
0,0 → 1,553
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a54, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000045 },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002f },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a007 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000040 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002c },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000017 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000013 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x00600001, 0x27400021, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x27800021, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x27c00021, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x28400021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28800021, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x28c00021, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x29000021, 0x008d04e0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a5c, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x80008000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a5c, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000045 },
{ 0x01000005, 0x20002dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002f },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a007 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000040 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002c },
{ 0x01000005, 0x20002dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000017 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000013 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x00600001, 0x27600021, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x27a00021, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x28200021, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x28600021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28a00021, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x28e00021, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x29200021, 0x008d04e0, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x2a543dad, 0x00450a54, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a54, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000032 },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a008 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a008 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a009 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000029 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0414a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000001d },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a008 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a008 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000b },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x00ad0e60, 0x0414a008 },
{ 0x00800031, 0x25a01d29, 0x00ad0e60, 0x0414a009 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x00600001, 0x29400129, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x29600129, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x29800129, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x29a00129, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x29c00129, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x29e00129, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x2a000129, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x2a200129, 0x008d04e0, 0x00000000 },
{ 0x0020000c, 0x2a5c3dad, 0x00450a5c, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a5c, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x80008000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a5c, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000032 },
{ 0x01000005, 0x20003dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a008 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a008 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a009 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000029 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0414a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000001d },
{ 0x01000005, 0x20003dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a008 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a008 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000b },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x00ad0e60, 0x0414a008 },
{ 0x00800031, 0x25a01d29, 0x00ad0e60, 0x0414a009 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x00600001, 0x29500129, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x29700129, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x29900129, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x29b00129, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x29d00129, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x29f00129, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x2a100129, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x2a300129, 0x008d04e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05902000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302002 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
/drivers/video/i965/shaders/mpeg2/vld/frame_field_pred_backward.g4b.gen5
0,0 → 1,553
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a54, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000008a },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a007 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000080 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000058 },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000026 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x00600001, 0x27400021, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x27800021, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x27c00021, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x28400021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28800021, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x28c00021, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x29000021, 0x008d04e0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a5c, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x80008000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a5c, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000008a },
{ 0x01000005, 0x20002dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a007 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000080 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000058 },
{ 0x01000005, 0x20002dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000026 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x00600001, 0x27600021, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x27a00021, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x28200021, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x28600021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28a00021, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x28e00021, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x29200021, 0x008d04e0, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x2a543dad, 0x00450a54, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a54, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000064 },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000048 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a008 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a008 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a009 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0248a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000003a },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a008 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a008 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x40ad0e60, 0x0248a008 },
{ 0x00800031, 0x25a01d29, 0x40ad0e60, 0x0248a009 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x00600001, 0x29400129, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x29600129, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x29800129, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x29a00129, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x29c00129, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x29e00129, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x2a000129, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x2a200129, 0x008d04e0, 0x00000000 },
{ 0x0020000c, 0x2a5c3dad, 0x00450a5c, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a5c, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x80008000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a5c, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000064 },
{ 0x01000005, 0x20003dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000048 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a008 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a008 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a009 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0248a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000003a },
{ 0x01000005, 0x20003dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a008 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a008 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x40ad0e60, 0x0248a008 },
{ 0x00800031, 0x25a01d29, 0x40ad0e60, 0x0248a009 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x00600001, 0x29500129, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x29700129, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x29900129, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x29b00129, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x29d00129, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x29f00129, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x2a100129, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x2a300129, 0x008d04e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x12082000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082002 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
/drivers/video/i965/shaders/mpeg2/vld/frame_field_pred_bidirect.g4b
0,0 → 1,1007
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a50, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000045 },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002f },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a004 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000040 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002c },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000017 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000013 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x00600001, 0x27400021, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x27800021, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x27c00021, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x28400021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28800021, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x28c00021, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x29000021, 0x008d04e0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a58, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x40004000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a58, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000045 },
{ 0x01000005, 0x20002dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002f },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a004 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000040 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002c },
{ 0x01000005, 0x20002dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000017 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000013 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x00600001, 0x27600021, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x27a00021, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x28200021, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x28600021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28a00021, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x28e00021, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x29200021, 0x008d04e0, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x2a503dad, 0x00450a50, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a50, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000032 },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a005 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a005 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a006 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000029 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a005 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0414a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000001d },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a005 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a005 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000b },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x00ad0e60, 0x0414a005 },
{ 0x00800031, 0x25a01d29, 0x00ad0e60, 0x0414a006 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x00600001, 0x29400129, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x29600129, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x29800129, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x29a00129, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x29c00129, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x29e00129, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x2a000129, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x2a200129, 0x008d04e0, 0x00000000 },
{ 0x0020000c, 0x2a583dad, 0x00450a58, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a58, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x40004000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a58, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000032 },
{ 0x01000005, 0x20003dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a005 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a005 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a006 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000029 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a005 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0414a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000001d },
{ 0x01000005, 0x20003dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a005 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a005 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000b },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x00ad0e60, 0x0414a005 },
{ 0x00800031, 0x25a01d29, 0x00ad0e60, 0x0414a006 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x00600001, 0x29500129, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x29700129, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x29900129, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x29b00129, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x29d00129, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x29f00129, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x2a100129, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x2a300129, 0x008d04e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a54, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000045 },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002f },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a007 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000040 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002c },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000017 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000013 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x80800042, 0x27402529, 0x00b10740, 0x00b10400 },
{ 0x80800042, 0x27802529, 0x00b10780, 0x00b10420 },
{ 0x80800042, 0x27c02529, 0x00b107c0, 0x00b10440 },
{ 0x80800042, 0x28002529, 0x00b10800, 0x00b10460 },
{ 0x80800042, 0x28402529, 0x00b10840, 0x00b10480 },
{ 0x80800042, 0x28802529, 0x00b10880, 0x00b104a0 },
{ 0x80800042, 0x28c02529, 0x00b108c0, 0x00b104c0 },
{ 0x80800042, 0x29002529, 0x00b10900, 0x00b104e0 },
{ 0x0020000c, 0x23ee3dad, 0x00450a5c, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x80008000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a5c, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000045 },
{ 0x01000005, 0x20002dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002f },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a007 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000040 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002c },
{ 0x01000005, 0x20002dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000017 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000013 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a007 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x80800042, 0x27602529, 0x00b10760, 0x00b10400 },
{ 0x80800042, 0x27a02529, 0x00b107a0, 0x00b10420 },
{ 0x80800042, 0x27e02529, 0x00b107e0, 0x00b10440 },
{ 0x80800042, 0x28202529, 0x00b10820, 0x00b10460 },
{ 0x80800042, 0x28602529, 0x00b10860, 0x00b10480 },
{ 0x80800042, 0x28a02529, 0x00b108a0, 0x00b104a0 },
{ 0x80800042, 0x28e02529, 0x00b108e0, 0x00b104c0 },
{ 0x80800042, 0x29202529, 0x00b10920, 0x00b104e0 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x2a543dad, 0x00450a54, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a54, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000032 },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a008 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a008 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a009 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000029 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0414a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000001d },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a008 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a008 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000b },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x00ad0e60, 0x0414a008 },
{ 0x00800031, 0x25a01d29, 0x00ad0e60, 0x0414a009 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x80600042, 0x29402529, 0x008d0940, 0x008d0400 },
{ 0x80600042, 0x29602529, 0x008d0960, 0x008d0420 },
{ 0x80600042, 0x29802529, 0x008d0980, 0x008d0440 },
{ 0x80600042, 0x29a02529, 0x008d09a0, 0x008d0460 },
{ 0x80600042, 0x29c02529, 0x008d09c0, 0x008d0480 },
{ 0x80600042, 0x29e02529, 0x008d09e0, 0x008d04a0 },
{ 0x80600042, 0x2a002529, 0x008d0a00, 0x008d04c0 },
{ 0x80600042, 0x2a202529, 0x008d0a20, 0x008d04e0 },
{ 0x0020000c, 0x2a5c3dad, 0x00450a5c, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a5c, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x80008000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a5c, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000032 },
{ 0x01000005, 0x20003dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a008 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a008 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a009 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000029 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0414a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000001d },
{ 0x01000005, 0x20003dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a008 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a008 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000b },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x00ad0e60, 0x0414a008 },
{ 0x00800031, 0x25a01d29, 0x00ad0e60, 0x0414a009 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x80600042, 0x29502529, 0x008d0950, 0x008d0400 },
{ 0x80600042, 0x29702529, 0x008d0970, 0x008d0420 },
{ 0x80600042, 0x29902529, 0x008d0990, 0x008d0440 },
{ 0x80600042, 0x29b02529, 0x008d09b0, 0x008d0460 },
{ 0x80600042, 0x29d02529, 0x008d09d0, 0x008d0480 },
{ 0x80600042, 0x29f02529, 0x008d09f0, 0x008d04a0 },
{ 0x80600042, 0x2a102529, 0x008d0a10, 0x008d04c0 },
{ 0x80600042, 0x2a302529, 0x008d0a30, 0x008d04e0 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05902000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302002 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
/drivers/video/i965/shaders/mpeg2/vld/frame_field_pred_bidirect.g4b.gen5
0,0 → 1,1007
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a50, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000008a },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a004 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000080 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000058 },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000026 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x00600001, 0x27400021, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x27800021, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x27c00021, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x28400021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28800021, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x28c00021, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x29000021, 0x008d04e0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a58, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x40004000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a58, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000008a },
{ 0x01000005, 0x20002dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a004 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000080 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000058 },
{ 0x01000005, 0x20002dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000026 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x00600001, 0x27600021, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x27a00021, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x28200021, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x28600021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28a00021, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x28e00021, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x29200021, 0x008d04e0, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x2a503dad, 0x00450a50, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a50, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000064 },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000048 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a005 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a005 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a006 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a005 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0248a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000003a },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a005 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a005 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x40ad0e60, 0x0248a005 },
{ 0x00800031, 0x25a01d29, 0x40ad0e60, 0x0248a006 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x00600001, 0x29400129, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x29600129, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x29800129, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x29a00129, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x29c00129, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x29e00129, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x2a000129, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x2a200129, 0x008d04e0, 0x00000000 },
{ 0x0020000c, 0x2a583dad, 0x00450a58, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a58, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x40004000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a58, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000064 },
{ 0x01000005, 0x20003dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000048 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a005 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a005 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a006 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a005 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0248a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000003a },
{ 0x01000005, 0x20003dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a005 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a005 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x40ad0e60, 0x0248a005 },
{ 0x00800031, 0x25a01d29, 0x40ad0e60, 0x0248a006 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x00600001, 0x29500129, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x29700129, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x29900129, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x29b00129, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x29d00129, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x29f00129, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x2a100129, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x2a300129, 0x008d04e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a54, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000008a },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a007 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000080 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000058 },
{ 0x01000005, 0x20002dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000026 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x80800042, 0x27402529, 0x00b10740, 0x00b10400 },
{ 0x80800042, 0x27802529, 0x00b10780, 0x00b10420 },
{ 0x80800042, 0x27c02529, 0x00b107c0, 0x00b10440 },
{ 0x80800042, 0x28002529, 0x00b10800, 0x00b10460 },
{ 0x80800042, 0x28402529, 0x00b10840, 0x00b10480 },
{ 0x80800042, 0x28802529, 0x00b10880, 0x00b104a0 },
{ 0x80800042, 0x28c02529, 0x00b108c0, 0x00b104c0 },
{ 0x80800042, 0x29002529, 0x00b10900, 0x00b104e0 },
{ 0x0020000c, 0x23ee3dad, 0x00450a5c, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x80008000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a5c, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000008a },
{ 0x01000005, 0x20002dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a007 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000080 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000058 },
{ 0x01000005, 0x20002dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a007 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000026 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a007 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a007 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x80800042, 0x27602529, 0x00b10760, 0x00b10400 },
{ 0x80800042, 0x27a02529, 0x00b107a0, 0x00b10420 },
{ 0x80800042, 0x27e02529, 0x00b107e0, 0x00b10440 },
{ 0x80800042, 0x28202529, 0x00b10820, 0x00b10460 },
{ 0x80800042, 0x28602529, 0x00b10860, 0x00b10480 },
{ 0x80800042, 0x28a02529, 0x00b108a0, 0x00b104a0 },
{ 0x80800042, 0x28e02529, 0x00b108e0, 0x00b104c0 },
{ 0x80800042, 0x29202529, 0x00b10920, 0x00b104e0 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x2a543dad, 0x00450a54, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x20002000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a54, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000064 },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000048 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a008 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a008 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a009 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0248a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000003a },
{ 0x01000005, 0x20003dbc, 0x00210a56, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a008 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a008 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x40ad0e60, 0x0248a008 },
{ 0x00800031, 0x25a01d29, 0x40ad0e60, 0x0248a009 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x80600042, 0x29402529, 0x008d0940, 0x008d0400 },
{ 0x80600042, 0x29602529, 0x008d0960, 0x008d0420 },
{ 0x80600042, 0x29802529, 0x008d0980, 0x008d0440 },
{ 0x80600042, 0x29a02529, 0x008d09a0, 0x008d0460 },
{ 0x80600042, 0x29c02529, 0x008d09c0, 0x008d0480 },
{ 0x80600042, 0x29e02529, 0x008d09e0, 0x008d04a0 },
{ 0x80600042, 0x2a002529, 0x008d0a00, 0x008d04c0 },
{ 0x80600042, 0x2a202529, 0x008d0a20, 0x008d04e0 },
{ 0x0020000c, 0x2a5c3dad, 0x00450a5c, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a5c, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x80008000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a5c, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000064 },
{ 0x01000005, 0x20003dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000048 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a008 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a008 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a009 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0248a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000003a },
{ 0x01000005, 0x20003dbc, 0x00210a5e, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a008 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a009 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a008 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a009 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x40ad0e60, 0x0248a008 },
{ 0x00800031, 0x25a01d29, 0x40ad0e60, 0x0248a009 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x80600042, 0x29502529, 0x008d0950, 0x008d0400 },
{ 0x80600042, 0x29702529, 0x008d0970, 0x008d0420 },
{ 0x80600042, 0x29902529, 0x008d0990, 0x008d0440 },
{ 0x80600042, 0x29b02529, 0x008d09b0, 0x008d0460 },
{ 0x80600042, 0x29d02529, 0x008d09d0, 0x008d0480 },
{ 0x80600042, 0x29f02529, 0x008d09f0, 0x008d04a0 },
{ 0x80600042, 0x2a102529, 0x008d0a10, 0x008d04c0 },
{ 0x80600042, 0x2a302529, 0x008d0a30, 0x008d04e0 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x12082000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082002 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
/drivers/video/i965/shaders/mpeg2/vld/frame_field_pred_forward.g4b
0,0 → 1,555
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a50, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000045 },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002f },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a004 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000040 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002c },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000017 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000013 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x00600001, 0x27400021, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x27800021, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x27c00021, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x28400021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28800021, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x28c00021, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x29000021, 0x008d04e0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a58, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x40004000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a58, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000045 },
{ 0x01000005, 0x20002dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002f },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a004 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000040 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002c },
{ 0x01000005, 0x20002dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000017 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x008d0e60, 0x0411a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000013 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x008d0e60, 0x0411a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x008d0e60, 0x0418a004 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x00600001, 0x27600021, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x27a00021, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x28200021, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x28600021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28a00021, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x28e00021, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x29200021, 0x008d04e0, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x2a503dad, 0x00450a50, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a50, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000032 },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a005 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a005 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a006 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000029 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a005 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0414a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000001d },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a005 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a005 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000b },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x00ad0e60, 0x0414a005 },
{ 0x00800031, 0x25a01d29, 0x00ad0e60, 0x0414a006 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x00600001, 0x29400129, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x29600129, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x29800129, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x29a00129, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x29c00129, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x29e00129, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x2a000129, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x2a200129, 0x008d04e0, 0x00000000 },
{ 0x0020000c, 0x2a583dad, 0x00450a58, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a58, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x40004000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a58, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000032 },
{ 0x01000005, 0x20003dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a005 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a005 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a006 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000029 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a005 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0414a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000001d },
{ 0x01000005, 0x20003dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x008d0e60, 0x0414a005 },
{ 0x00800031, 0x25a01d29, 0x008d0e60, 0x0414a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x008d0e60, 0x0411a005 },
{ 0x00800031, 0x26201d29, 0x008d0e60, 0x0411a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000b },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x00ad0e60, 0x0414a005 },
{ 0x00800031, 0x25a01d29, 0x00ad0e60, 0x0414a006 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x00600001, 0x29500129, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x29700129, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x29900129, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x29b00129, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x29d00129, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x29f00129, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x2a100129, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x2a300129, 0x008d04e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05902000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302002 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
/drivers/video/i965/shaders/mpeg2/vld/frame_field_pred_forward.g4b.gen5
0,0 → 1,555
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a50, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000008a },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a004 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000080 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000058 },
{ 0x01000005, 0x20002dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000026 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x00600001, 0x27400021, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x27800021, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x27c00021, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x28400021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28800021, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x28c00021, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x29000021, 0x008d04e0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a58, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x40004000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20002dbc, 0x00210a58, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000008a },
{ 0x01000005, 0x20002dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a004 },
{ 0x00800040, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x00800040, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x00800040, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x00800040, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x00800040, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x00800040, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x00800040, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x00800040, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10501 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10541 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b10581 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b105c1 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10601 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10641 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b10681 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b106c1 },
{ 0x00800040, 0x24004529, 0x00b10400, 0x00b10541 },
{ 0x00800040, 0x24204529, 0x00b10420, 0x00b10581 },
{ 0x00800040, 0x24404529, 0x00b10440, 0x00b105c1 },
{ 0x00800040, 0x24604529, 0x00b10460, 0x00b10601 },
{ 0x00800040, 0x24804529, 0x00b10480, 0x00b10641 },
{ 0x00800040, 0x24a04529, 0x00b104a0, 0x00b10681 },
{ 0x00800040, 0x24c04529, 0x00b104c0, 0x00b106c1 },
{ 0x00800040, 0x24e04529, 0x00b104e0, 0x00b10701 },
{ 0x00800008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00800008, 0x24202d29, 0x00b10420, 0x00020002 },
{ 0x00800008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00800008, 0x24602d29, 0x00b10460, 0x00020002 },
{ 0x00800008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00800008, 0x24a02d29, 0x00b104a0, 0x00020002 },
{ 0x00800008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00800008, 0x24e02d29, 0x00b104e0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000080 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b106c1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000058 },
{ 0x01000005, 0x20002dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002e },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x27001d29, 0x408d0e60, 0x0218a004 },
{ 0x80800042, 0x24004629, 0x00b10500, 0x00b10540 },
{ 0x80800042, 0x24204629, 0x00b10540, 0x00b10580 },
{ 0x80800042, 0x24404629, 0x00b10580, 0x00b105c0 },
{ 0x80800042, 0x24604629, 0x00b105c0, 0x00b10600 },
{ 0x80800042, 0x24804629, 0x00b10600, 0x00b10640 },
{ 0x80800042, 0x24a04629, 0x00b10640, 0x00b10680 },
{ 0x80800042, 0x24c04629, 0x00b10680, 0x00b106c0 },
{ 0x80800042, 0x24e04629, 0x00b106c0, 0x00b10700 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000026 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25401d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00800031, 0x25c01d29, 0x408d0e60, 0x0218a004 },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000002 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x26001d29, 0x408d0e60, 0x0288a004 },
{ 0x00800001, 0x24000229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00b106c0, 0x00000000 },
{ 0x00600001, 0x27600021, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x27a00021, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x27e00021, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x28200021, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x28600021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28a00021, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x28e00021, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x29200021, 0x008d04e0, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x2a503dad, 0x00450a50, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x10001000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a50, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000064 },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000048 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a005 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a005 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a006 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a005 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0248a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000003a },
{ 0x01000005, 0x20003dbc, 0x00210a52, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a005 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a005 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x40ad0e60, 0x0248a005 },
{ 0x00800031, 0x25a01d29, 0x40ad0e60, 0x0248a006 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x00600001, 0x29400129, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x29600129, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x29800129, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x29a00129, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x29c00129, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x29e00129, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x2a000129, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x2a200129, 0x008d04e0, 0x00000000 },
{ 0x0020000c, 0x2a583dad, 0x00450a58, 0x00010001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a58, 0x00010001 },
{ 0x00000009, 0x23f03dad, 0x002103f0, 0x00010001 },
{ 0x00200040, 0x2e603421, 0x004503e0, 0x004503ee },
{ 0x00000005, 0x2e640c21, 0x00210e64, 0xfffffffe },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x40004000 },
{ 0x00010040, 0x2e640c21, 0x00210e64, 0x00000001 },
{ 0x01000005, 0x20003dbc, 0x00210a58, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000064 },
{ 0x01000005, 0x20003dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000048 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a005 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0001000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a005 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a006 },
{ 0x00800040, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800040, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800040, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800040, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0501 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0521 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0541 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0561 },
{ 0x00800040, 0x24004529, 0x00ad0400, 0x00ad0521 },
{ 0x00800040, 0x24204529, 0x00ad0420, 0x00ad0541 },
{ 0x00800040, 0x24404529, 0x00ad0440, 0x00ad0561 },
{ 0x00800040, 0x24604529, 0x00ad0460, 0x00ad0581 },
{ 0x00800040, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800040, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800040, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800040, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05a1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05c1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad05e1 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0601 },
{ 0x00800040, 0x24804529, 0x00ad0480, 0x00ad05c1 },
{ 0x00800040, 0x24a04529, 0x00ad04a0, 0x00ad05e1 },
{ 0x00800040, 0x24c04529, 0x00ad04c0, 0x00ad0601 },
{ 0x00800040, 0x24e04529, 0x00ad04e0, 0x00ad0621 },
{ 0x00a02008, 0x24002d29, 0x00b10400, 0x00020002 },
{ 0x00a02008, 0x24402d29, 0x00b10440, 0x00020002 },
{ 0x00a02008, 0x24802d29, 0x00b10480, 0x00020002 },
{ 0x00a02008, 0x24c02d29, 0x00b104c0, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a005 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0248a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0501 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0521 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0541 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0561 },
{ 0x00800042, 0x24804629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x24a04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x24c04629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x24e04629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000003a },
{ 0x01000005, 0x20003dbc, 0x00210a5a, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x408d0e60, 0x0248a005 },
{ 0x00800031, 0x25a01d29, 0x408d0e60, 0x0248a006 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000000f },
{ 0x00000040, 0x2e640c21, 0x00210e64, 0x00000008 },
{ 0x00800031, 0x25801d29, 0x408d0e60, 0x0218a005 },
{ 0x00800031, 0x26201d29, 0x408d0e60, 0x0218a006 },
{ 0x00800042, 0x24004629, 0x00ad0500, 0x00ad0520 },
{ 0x00800042, 0x24204629, 0x00ad0520, 0x00ad0540 },
{ 0x00800042, 0x24404629, 0x00ad0540, 0x00ad0560 },
{ 0x00800042, 0x24604629, 0x00ad0560, 0x00ad0580 },
{ 0x00800042, 0x24804629, 0x00ad05a0, 0x00ad05c0 },
{ 0x00800042, 0x24a04629, 0x00ad05c0, 0x00ad05e0 },
{ 0x00800042, 0x24c04629, 0x00ad05e0, 0x00ad0600 },
{ 0x00800042, 0x24e04629, 0x00ad0600, 0x00ad0620 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x25001d29, 0x40ad0e60, 0x0248a005 },
{ 0x00800031, 0x25a01d29, 0x40ad0e60, 0x0248a006 },
{ 0x00800001, 0x24000229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x24400229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x24600229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x24800229, 0x00ad05a0, 0x00000000 },
{ 0x00800001, 0x24a00229, 0x00ad05c0, 0x00000000 },
{ 0x00800001, 0x24c00229, 0x00ad05e0, 0x00000000 },
{ 0x00800001, 0x24e00229, 0x00ad0600, 0x00000000 },
{ 0x00600001, 0x29500129, 0x008d0400, 0x00000000 },
{ 0x00600001, 0x29700129, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x29900129, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x29b00129, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x29d00129, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x29f00129, 0x008d04a0, 0x00000000 },
{ 0x00600001, 0x2a100129, 0x008d04c0, 0x00000000 },
{ 0x00600001, 0x2a300129, 0x008d04e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x12082000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082002 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
/drivers/video/i965/shaders/mpeg2/vld/frame_frame_pred_backward.g4b
0,0 → 1,369
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x01000005, 0x20000d3c, 0x00210a54, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005f },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000048 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a007 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x00800040, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x00800040, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x00800040, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x00800040, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x00800040, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x00800040, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x00800040, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e0 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10500 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10520 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10540 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10560 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10580 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a0 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e0 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10600 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10620 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10640 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10660 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10680 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a0 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e1 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10501 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10521 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10541 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10561 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10581 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a1 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c1 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e1 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10601 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10621 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10641 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10661 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10681 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a1 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x80800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x80800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x80800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x80800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x80800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x80800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x80800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x80800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x80800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x80800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x80800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x80800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x80800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x80800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x80800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x80800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000043 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002e },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a007 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104e0 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b10500 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10520 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10540 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10560 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10580 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b105a0 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105c0 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105e0 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b10600 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10620 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10640 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10660 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10680 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b106a0 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b104e0, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10520, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10560, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b105a0, 0x00000000 },
{ 0x00800001, 0x28400229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b105e0, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10620, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10660, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b106a0, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x01000005, 0x20000d3c, 0x00210a54, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004e },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000040 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x008d0400, 0x0418a008 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0418a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x008d0400, 0x0411a008 },
{ 0x00800031, 0x26801d29, 0x008d0400, 0x0411a009 },
{ 0x00600040, 0x29404629, 0x008d0440, 0x008d0441 },
{ 0x00600040, 0x29504629, 0x008d0460, 0x008d0461 },
{ 0x00600040, 0x29604629, 0x008d0480, 0x008d0481 },
{ 0x00600040, 0x29704629, 0x008d04a0, 0x008d04a1 },
{ 0x00600040, 0x29804629, 0x008d04c0, 0x008d04c1 },
{ 0x00600040, 0x29904629, 0x008d04e0, 0x008d04e1 },
{ 0x00600040, 0x29a04629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29b04629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0460 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0480 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a0 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c0 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e0 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0500 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0520 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0540 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0461 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0481 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a1 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c1 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e1 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0501 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0521 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0541 },
{ 0x00600040, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600040, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600040, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a004629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a104629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a204629, 0x008d0640, 0x008d0641 },
{ 0x00600040, 0x2a304629, 0x008d0660, 0x008d0661 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c0 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e0 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0600 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0620 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0640 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0660 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0680 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c1 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e1 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0601 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0621 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0641 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0661 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0681 },
{ 0x00800008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00800008, 0x29602d29, 0x00b10960, 0x00020002 },
{ 0x00800008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00800008, 0x29a02d29, 0x00b109a0, 0x00020002 },
{ 0x00800008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00800008, 0x29e02d29, 0x00b109e0, 0x00020002 },
{ 0x00800008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00800008, 0x2a202d29, 0x00b10a20, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000031 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24401d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a009 },
{ 0x00800042, 0x29404629, 0x00ad0440, 0x00ad0441 },
{ 0x00800042, 0x29604629, 0x00ad0460, 0x00ad0461 },
{ 0x00800042, 0x29804629, 0x00ad0480, 0x00ad0481 },
{ 0x00800042, 0x29a04629, 0x00ad04a0, 0x00ad04a1 },
{ 0x00800042, 0x29c04629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x29e04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x2a004629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x2a204629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000025 },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x008d0400, 0x0418a008 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0418a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x008d0400, 0x0411a008 },
{ 0x00800031, 0x26801d29, 0x008d0400, 0x0411a009 },
{ 0x00600042, 0x29404629, 0x008d0440, 0x008d0460 },
{ 0x00600042, 0x29504629, 0x008d0460, 0x008d0480 },
{ 0x00600042, 0x29604629, 0x008d0480, 0x008d04a0 },
{ 0x00600042, 0x29704629, 0x008d04a0, 0x008d04c0 },
{ 0x00600042, 0x29804629, 0x008d04c0, 0x008d04e0 },
{ 0x00600042, 0x29904629, 0x008d04e0, 0x008d0500 },
{ 0x00600042, 0x29a04629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29b04629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d05a0 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05c0 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a004629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a104629, 0x008d0620, 0x008d0640 },
{ 0x00600042, 0x2a204629, 0x008d0640, 0x008d0660 },
{ 0x00600042, 0x2a304629, 0x008d0660, 0x008d0680 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000b },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24801d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a009 },
{ 0x00800001, 0x29400229, 0x00ad0480, 0x00000000 },
{ 0x00800001, 0x29600229, 0x00ad04a0, 0x00000000 },
{ 0x00800001, 0x29800229, 0x00ad04c0, 0x00000000 },
{ 0x00800001, 0x29a00229, 0x00ad04e0, 0x00000000 },
{ 0x00800001, 0x29c00229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x29e00229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x2a000229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x2a200229, 0x00ad0560, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05902000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302002 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
/drivers/video/i965/shaders/mpeg2/vld/frame_frame_pred_backward.g4b.gen5
0,0 → 1,369
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x01000005, 0x20000d3c, 0x00210a54, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000be },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000090 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a007 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x00800040, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x00800040, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x00800040, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x00800040, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x00800040, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x00800040, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x00800040, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e0 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10500 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10520 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10540 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10560 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10580 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a0 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e0 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10600 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10620 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10640 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10660 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10680 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a0 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e1 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10501 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10521 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10541 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10561 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10581 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a1 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c1 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e1 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10601 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10621 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10641 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10661 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10681 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a1 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x80800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x80800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x80800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x80800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x80800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x80800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x80800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x80800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x80800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x80800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x80800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x80800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x80800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x80800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x80800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x80800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a007 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104e0 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b10500 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10520 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10540 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10560 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10580 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b105a0 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105c0 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105e0 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b10600 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10620 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10640 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10660 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10680 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b106a0 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000028 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b104e0, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10520, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10560, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b105a0, 0x00000000 },
{ 0x00800001, 0x28400229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b105e0, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10620, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10660, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b106a0, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x01000005, 0x20000d3c, 0x00210a54, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000009c },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000080 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x408d0400, 0x0288a008 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0288a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x408d0400, 0x0218a008 },
{ 0x00800031, 0x26801d29, 0x408d0400, 0x0218a009 },
{ 0x00600040, 0x29404629, 0x008d0440, 0x008d0441 },
{ 0x00600040, 0x29504629, 0x008d0460, 0x008d0461 },
{ 0x00600040, 0x29604629, 0x008d0480, 0x008d0481 },
{ 0x00600040, 0x29704629, 0x008d04a0, 0x008d04a1 },
{ 0x00600040, 0x29804629, 0x008d04c0, 0x008d04c1 },
{ 0x00600040, 0x29904629, 0x008d04e0, 0x008d04e1 },
{ 0x00600040, 0x29a04629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29b04629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0460 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0480 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a0 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c0 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e0 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0500 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0520 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0540 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0461 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0481 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a1 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c1 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e1 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0501 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0521 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0541 },
{ 0x00600040, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600040, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600040, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a004629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a104629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a204629, 0x008d0640, 0x008d0641 },
{ 0x00600040, 0x2a304629, 0x008d0660, 0x008d0661 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c0 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e0 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0600 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0620 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0640 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0660 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0680 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c1 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e1 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0601 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0621 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0641 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0661 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0681 },
{ 0x00800008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00800008, 0x29602d29, 0x00b10960, 0x00020002 },
{ 0x00800008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00800008, 0x29a02d29, 0x00b109a0, 0x00020002 },
{ 0x00800008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00800008, 0x29e02d29, 0x00b109e0, 0x00020002 },
{ 0x00800008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00800008, 0x2a202d29, 0x00b10a20, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000062 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24401d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a009 },
{ 0x00800042, 0x29404629, 0x00ad0440, 0x00ad0441 },
{ 0x00800042, 0x29604629, 0x00ad0460, 0x00ad0461 },
{ 0x00800042, 0x29804629, 0x00ad0480, 0x00ad0481 },
{ 0x00800042, 0x29a04629, 0x00ad04a0, 0x00ad04a1 },
{ 0x00800042, 0x29c04629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x29e04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x2a004629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x2a204629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000004a },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x408d0400, 0x0288a008 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0288a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x408d0400, 0x0218a008 },
{ 0x00800031, 0x26801d29, 0x408d0400, 0x0218a009 },
{ 0x00600042, 0x29404629, 0x008d0440, 0x008d0460 },
{ 0x00600042, 0x29504629, 0x008d0460, 0x008d0480 },
{ 0x00600042, 0x29604629, 0x008d0480, 0x008d04a0 },
{ 0x00600042, 0x29704629, 0x008d04a0, 0x008d04c0 },
{ 0x00600042, 0x29804629, 0x008d04c0, 0x008d04e0 },
{ 0x00600042, 0x29904629, 0x008d04e0, 0x008d0500 },
{ 0x00600042, 0x29a04629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29b04629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d05a0 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05c0 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a004629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a104629, 0x008d0620, 0x008d0640 },
{ 0x00600042, 0x2a204629, 0x008d0640, 0x008d0660 },
{ 0x00600042, 0x2a304629, 0x008d0660, 0x008d0680 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24801d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a009 },
{ 0x00800001, 0x29400229, 0x00ad0480, 0x00000000 },
{ 0x00800001, 0x29600229, 0x00ad04a0, 0x00000000 },
{ 0x00800001, 0x29800229, 0x00ad04c0, 0x00000000 },
{ 0x00800001, 0x29a00229, 0x00ad04e0, 0x00000000 },
{ 0x00800001, 0x29c00229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x29e00229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x2a000229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x2a200229, 0x00ad0560, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x12082000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082002 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
/drivers/video/i965/shaders/mpeg2/vld/frame_frame_pred_bidirect.g4b
0,0 → 1,675
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x01000005, 0x20000d3c, 0x00210a50, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005f },
{ 0x01000005, 0x20000d3c, 0x00210a52, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000048 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a004 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x00800040, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x00800040, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x00800040, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x00800040, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x00800040, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x00800040, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x00800040, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e0 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10500 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10520 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10540 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10560 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10580 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a0 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e0 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10600 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10620 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10640 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10660 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10680 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a0 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e1 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10501 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10521 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10541 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10561 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10581 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a1 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c1 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e1 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10601 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10621 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10641 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10661 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10681 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a1 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x80800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x80800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x80800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x80800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x80800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x80800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x80800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x80800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x80800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x80800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x80800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x80800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x80800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x80800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x80800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x80800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000043 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002e },
{ 0x01000005, 0x20000d3c, 0x00210a52, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a004 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104e0 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b10500 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10520 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10540 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10560 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10580 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b105a0 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105c0 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105e0 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b10600 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10620 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10640 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10660 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10680 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b106a0 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b104e0, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10520, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10560, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b105a0, 0x00000000 },
{ 0x00800001, 0x28400229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b105e0, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10620, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10660, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b106a0, 0x00000000 },
{ 0x00802001, 0x2d800021, 0x00b10740, 0x00000000 },
{ 0x00802001, 0x2dc00021, 0x00b10780, 0x00000000 },
{ 0x00802001, 0x2e000021, 0x00b107c0, 0x00000000 },
{ 0x00802001, 0x2e400021, 0x00b10800, 0x00000000 },
{ 0x00802001, 0x2e800021, 0x00b10840, 0x00000000 },
{ 0x00802001, 0x2ec00021, 0x00b10880, 0x00000000 },
{ 0x00802001, 0x2f000021, 0x00b108c0, 0x00000000 },
{ 0x00802001, 0x2f400021, 0x00b10900, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x01000005, 0x20000d3c, 0x00210a54, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005f },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000048 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a007 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x00800040, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x00800040, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x00800040, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x00800040, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x00800040, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x00800040, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x00800040, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e0 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10500 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10520 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10540 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10560 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10580 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a0 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e0 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10600 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10620 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10640 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10660 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10680 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a0 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e1 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10501 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10521 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10541 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10561 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10581 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a1 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c1 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e1 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10601 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10621 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10641 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10661 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10681 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a1 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x80800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x80800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x80800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x80800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x80800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x80800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x80800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x80800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x80800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x80800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x80800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x80800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x80800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x80800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x80800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x80800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000043 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002e },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a007 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104e0 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b10500 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10520 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10540 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10560 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10580 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b105a0 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105c0 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105e0 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b10600 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10620 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10640 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10660 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10680 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b106a0 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a007 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b104e0, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10520, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10560, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b105a0, 0x00000000 },
{ 0x00800001, 0x28400229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b105e0, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10620, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10660, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b106a0, 0x00000000 },
{ 0x80800042, 0x27402529, 0x00b10740, 0x00b10d80 },
{ 0x80800042, 0x27602529, 0x00b10760, 0x00b10da0 },
{ 0x80800042, 0x27802529, 0x00b10780, 0x00b10dc0 },
{ 0x80800042, 0x27a02529, 0x00b107a0, 0x00b10de0 },
{ 0x80800042, 0x27c02529, 0x00b107c0, 0x00b10e00 },
{ 0x80800042, 0x27e02529, 0x00b107e0, 0x00b10e20 },
{ 0x80800042, 0x28002529, 0x00b10800, 0x00b10e40 },
{ 0x80800042, 0x28202529, 0x00b10820, 0x00b10e60 },
{ 0x80800042, 0x28402529, 0x00b10840, 0x00b10e80 },
{ 0x80800042, 0x28602529, 0x00b10860, 0x00b10ea0 },
{ 0x80800042, 0x28802529, 0x00b10880, 0x00b10ec0 },
{ 0x80800042, 0x28a02529, 0x00b108a0, 0x00b10ee0 },
{ 0x80800042, 0x28c02529, 0x00b108c0, 0x00b10f00 },
{ 0x80800042, 0x28e02529, 0x00b108e0, 0x00b10f20 },
{ 0x80800042, 0x29002529, 0x00b10900, 0x00b10f40 },
{ 0x80800042, 0x29202529, 0x00b10920, 0x00b10f60 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x01000005, 0x20000d3c, 0x00210a54, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004e },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000040 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x008d0400, 0x0418a005 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0418a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x008d0400, 0x0411a005 },
{ 0x00800031, 0x26801d29, 0x008d0400, 0x0411a006 },
{ 0x00600040, 0x29404629, 0x008d0440, 0x008d0441 },
{ 0x00600040, 0x29504629, 0x008d0460, 0x008d0461 },
{ 0x00600040, 0x29604629, 0x008d0480, 0x008d0481 },
{ 0x00600040, 0x29704629, 0x008d04a0, 0x008d04a1 },
{ 0x00600040, 0x29804629, 0x008d04c0, 0x008d04c1 },
{ 0x00600040, 0x29904629, 0x008d04e0, 0x008d04e1 },
{ 0x00600040, 0x29a04629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29b04629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0460 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0480 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a0 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c0 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e0 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0500 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0520 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0540 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0461 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0481 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a1 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c1 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e1 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0501 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0521 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0541 },
{ 0x00600040, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600040, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600040, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a004629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a104629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a204629, 0x008d0640, 0x008d0641 },
{ 0x00600040, 0x2a304629, 0x008d0660, 0x008d0661 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c0 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e0 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0600 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0620 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0640 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0660 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0680 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c1 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e1 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0601 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0621 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0641 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0661 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0681 },
{ 0x00800008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00800008, 0x29602d29, 0x00b10960, 0x00020002 },
{ 0x00800008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00800008, 0x29a02d29, 0x00b109a0, 0x00020002 },
{ 0x00800008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00800008, 0x29e02d29, 0x00b109e0, 0x00020002 },
{ 0x00800008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00800008, 0x2a202d29, 0x00b10a20, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000031 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24401d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a006 },
{ 0x00800042, 0x29404629, 0x00ad0440, 0x00ad0441 },
{ 0x00800042, 0x29604629, 0x00ad0460, 0x00ad0461 },
{ 0x00800042, 0x29804629, 0x00ad0480, 0x00ad0481 },
{ 0x00800042, 0x29a04629, 0x00ad04a0, 0x00ad04a1 },
{ 0x00800042, 0x29c04629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x29e04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x2a004629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x2a204629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000025 },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x008d0400, 0x0418a005 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0418a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x008d0400, 0x0411a005 },
{ 0x00800031, 0x26801d29, 0x008d0400, 0x0411a006 },
{ 0x00600042, 0x29404629, 0x008d0440, 0x008d0460 },
{ 0x00600042, 0x29504629, 0x008d0460, 0x008d0480 },
{ 0x00600042, 0x29604629, 0x008d0480, 0x008d04a0 },
{ 0x00600042, 0x29704629, 0x008d04a0, 0x008d04c0 },
{ 0x00600042, 0x29804629, 0x008d04c0, 0x008d04e0 },
{ 0x00600042, 0x29904629, 0x008d04e0, 0x008d0500 },
{ 0x00600042, 0x29a04629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29b04629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d05a0 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05c0 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a004629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a104629, 0x008d0620, 0x008d0640 },
{ 0x00600042, 0x2a204629, 0x008d0640, 0x008d0660 },
{ 0x00600042, 0x2a304629, 0x008d0660, 0x008d0680 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000b },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24801d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a006 },
{ 0x00800001, 0x29400229, 0x00ad0480, 0x00000000 },
{ 0x00800001, 0x29600229, 0x00ad04a0, 0x00000000 },
{ 0x00800001, 0x29800229, 0x00ad04c0, 0x00000000 },
{ 0x00800001, 0x29a00229, 0x00ad04e0, 0x00000000 },
{ 0x00800001, 0x29c00229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x29e00229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x2a000229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x2a200229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x2d800231, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x2d900231, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x2da00231, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x2db00231, 0x00b209a0, 0x00000000 },
{ 0x00800001, 0x2dc00231, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x2dd00231, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x2de00231, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x2df00231, 0x00b20a20, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x01000005, 0x20000d3c, 0x00210a54, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004e },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000040 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x008d0400, 0x0418a008 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0418a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x008d0400, 0x0411a008 },
{ 0x00800031, 0x26801d29, 0x008d0400, 0x0411a009 },
{ 0x00600040, 0x29404629, 0x008d0440, 0x008d0441 },
{ 0x00600040, 0x29504629, 0x008d0460, 0x008d0461 },
{ 0x00600040, 0x29604629, 0x008d0480, 0x008d0481 },
{ 0x00600040, 0x29704629, 0x008d04a0, 0x008d04a1 },
{ 0x00600040, 0x29804629, 0x008d04c0, 0x008d04c1 },
{ 0x00600040, 0x29904629, 0x008d04e0, 0x008d04e1 },
{ 0x00600040, 0x29a04629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29b04629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0460 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0480 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a0 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c0 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e0 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0500 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0520 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0540 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0461 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0481 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a1 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c1 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e1 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0501 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0521 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0541 },
{ 0x00600040, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600040, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600040, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a004629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a104629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a204629, 0x008d0640, 0x008d0641 },
{ 0x00600040, 0x2a304629, 0x008d0660, 0x008d0661 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c0 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e0 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0600 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0620 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0640 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0660 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0680 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c1 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e1 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0601 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0621 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0641 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0661 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0681 },
{ 0x00800008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00800008, 0x29602d29, 0x00b10960, 0x00020002 },
{ 0x00800008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00800008, 0x29a02d29, 0x00b109a0, 0x00020002 },
{ 0x00800008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00800008, 0x29e02d29, 0x00b109e0, 0x00020002 },
{ 0x00800008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00800008, 0x2a202d29, 0x00b10a20, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000031 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24401d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a009 },
{ 0x00800042, 0x29404629, 0x00ad0440, 0x00ad0441 },
{ 0x00800042, 0x29604629, 0x00ad0460, 0x00ad0461 },
{ 0x00800042, 0x29804629, 0x00ad0480, 0x00ad0481 },
{ 0x00800042, 0x29a04629, 0x00ad04a0, 0x00ad04a1 },
{ 0x00800042, 0x29c04629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x29e04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x2a004629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x2a204629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000025 },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x008d0400, 0x0418a008 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0418a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x008d0400, 0x0411a008 },
{ 0x00800031, 0x26801d29, 0x008d0400, 0x0411a009 },
{ 0x00600042, 0x29404629, 0x008d0440, 0x008d0460 },
{ 0x00600042, 0x29504629, 0x008d0460, 0x008d0480 },
{ 0x00600042, 0x29604629, 0x008d0480, 0x008d04a0 },
{ 0x00600042, 0x29704629, 0x008d04a0, 0x008d04c0 },
{ 0x00600042, 0x29804629, 0x008d04c0, 0x008d04e0 },
{ 0x00600042, 0x29904629, 0x008d04e0, 0x008d0500 },
{ 0x00600042, 0x29a04629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29b04629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d05a0 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05c0 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a004629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a104629, 0x008d0620, 0x008d0640 },
{ 0x00600042, 0x2a204629, 0x008d0640, 0x008d0660 },
{ 0x00600042, 0x2a304629, 0x008d0660, 0x008d0680 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000b },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24801d29, 0x008d0400, 0x0414a008 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a009 },
{ 0x00800001, 0x29400229, 0x00ad0480, 0x00000000 },
{ 0x00800001, 0x29600229, 0x00ad04a0, 0x00000000 },
{ 0x00800001, 0x29800229, 0x00ad04c0, 0x00000000 },
{ 0x00800001, 0x29a00229, 0x00ad04e0, 0x00000000 },
{ 0x00800001, 0x29c00229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x29e00229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x2a000229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x2a200229, 0x00ad0560, 0x00000000 },
{ 0x80800042, 0x29404529, 0x00b10940, 0x00b10d80 },
{ 0x80800042, 0x29604529, 0x00b10960, 0x00b10d90 },
{ 0x80800042, 0x29804529, 0x00b10980, 0x00b10da0 },
{ 0x80800042, 0x29a04529, 0x00b109a0, 0x00b10db0 },
{ 0x80800042, 0x29c04529, 0x00b109c0, 0x00b10dc0 },
{ 0x80800042, 0x29e04529, 0x00b109e0, 0x00b10dd0 },
{ 0x80800042, 0x2a004529, 0x00b10a00, 0x00b10de0 },
{ 0x80800042, 0x2a204529, 0x00b10a20, 0x00b10df0 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05902000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302002 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
/drivers/video/i965/shaders/mpeg2/vld/frame_frame_pred_bidirect.g4b.gen5
0,0 → 1,675
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x01000005, 0x20000d3c, 0x00210a50, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000be },
{ 0x01000005, 0x20000d3c, 0x00210a52, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000090 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a004 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x00800040, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x00800040, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x00800040, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x00800040, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x00800040, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x00800040, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x00800040, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e0 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10500 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10520 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10540 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10560 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10580 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a0 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e0 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10600 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10620 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10640 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10660 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10680 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a0 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e1 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10501 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10521 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10541 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10561 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10581 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a1 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c1 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e1 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10601 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10621 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10641 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10661 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10681 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a1 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x80800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x80800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x80800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x80800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x80800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x80800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x80800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x80800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x80800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x80800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x80800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x80800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x80800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x80800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x80800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x80800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x01000005, 0x20000d3c, 0x00210a52, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a004 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104e0 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b10500 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10520 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10540 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10560 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10580 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b105a0 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105c0 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105e0 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b10600 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10620 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10640 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10660 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10680 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b106a0 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000028 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b104e0, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10520, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10560, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b105a0, 0x00000000 },
{ 0x00800001, 0x28400229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b105e0, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10620, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10660, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b106a0, 0x00000000 },
{ 0x00802001, 0x2d800021, 0x00b10740, 0x00000000 },
{ 0x00802001, 0x2dc00021, 0x00b10780, 0x00000000 },
{ 0x00802001, 0x2e000021, 0x00b107c0, 0x00000000 },
{ 0x00802001, 0x2e400021, 0x00b10800, 0x00000000 },
{ 0x00802001, 0x2e800021, 0x00b10840, 0x00000000 },
{ 0x00802001, 0x2ec00021, 0x00b10880, 0x00000000 },
{ 0x00802001, 0x2f000021, 0x00b108c0, 0x00000000 },
{ 0x00802001, 0x2f400021, 0x00b10900, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x01000005, 0x20000d3c, 0x00210a54, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000be },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000090 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a007 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x00800040, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x00800040, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x00800040, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x00800040, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x00800040, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x00800040, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x00800040, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e0 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10500 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10520 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10540 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10560 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10580 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a0 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e0 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10600 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10620 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10640 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10660 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10680 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a0 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e1 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10501 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10521 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10541 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10561 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10581 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a1 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c1 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e1 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10601 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10621 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10641 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10661 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10681 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a1 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x80800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x80800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x80800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x80800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x80800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x80800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x80800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x80800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x80800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x80800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x80800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x80800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x80800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x80800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x80800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x80800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a007 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104e0 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b10500 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10520 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10540 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10560 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10580 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b105a0 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105c0 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105e0 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b10600 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10620 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10640 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10660 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10680 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b106a0 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000028 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a007 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a007 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b104e0, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10520, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10560, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b105a0, 0x00000000 },
{ 0x00800001, 0x28400229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b105e0, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10620, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10660, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b106a0, 0x00000000 },
{ 0x80800042, 0x27402529, 0x00b10740, 0x00b10d80 },
{ 0x80800042, 0x27602529, 0x00b10760, 0x00b10da0 },
{ 0x80800042, 0x27802529, 0x00b10780, 0x00b10dc0 },
{ 0x80800042, 0x27a02529, 0x00b107a0, 0x00b10de0 },
{ 0x80800042, 0x27c02529, 0x00b107c0, 0x00b10e00 },
{ 0x80800042, 0x27e02529, 0x00b107e0, 0x00b10e20 },
{ 0x80800042, 0x28002529, 0x00b10800, 0x00b10e40 },
{ 0x80800042, 0x28202529, 0x00b10820, 0x00b10e60 },
{ 0x80800042, 0x28402529, 0x00b10840, 0x00b10e80 },
{ 0x80800042, 0x28602529, 0x00b10860, 0x00b10ea0 },
{ 0x80800042, 0x28802529, 0x00b10880, 0x00b10ec0 },
{ 0x80800042, 0x28a02529, 0x00b108a0, 0x00b10ee0 },
{ 0x80800042, 0x28c02529, 0x00b108c0, 0x00b10f00 },
{ 0x80800042, 0x28e02529, 0x00b108e0, 0x00b10f20 },
{ 0x80800042, 0x29002529, 0x00b10900, 0x00b10f40 },
{ 0x80800042, 0x29202529, 0x00b10920, 0x00b10f60 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x01000005, 0x20000d3c, 0x00210a54, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000009c },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000080 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x408d0400, 0x0288a005 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0288a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x408d0400, 0x0218a005 },
{ 0x00800031, 0x26801d29, 0x408d0400, 0x0218a006 },
{ 0x00600040, 0x29404629, 0x008d0440, 0x008d0441 },
{ 0x00600040, 0x29504629, 0x008d0460, 0x008d0461 },
{ 0x00600040, 0x29604629, 0x008d0480, 0x008d0481 },
{ 0x00600040, 0x29704629, 0x008d04a0, 0x008d04a1 },
{ 0x00600040, 0x29804629, 0x008d04c0, 0x008d04c1 },
{ 0x00600040, 0x29904629, 0x008d04e0, 0x008d04e1 },
{ 0x00600040, 0x29a04629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29b04629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0460 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0480 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a0 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c0 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e0 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0500 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0520 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0540 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0461 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0481 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a1 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c1 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e1 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0501 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0521 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0541 },
{ 0x00600040, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600040, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600040, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a004629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a104629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a204629, 0x008d0640, 0x008d0641 },
{ 0x00600040, 0x2a304629, 0x008d0660, 0x008d0661 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c0 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e0 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0600 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0620 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0640 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0660 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0680 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c1 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e1 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0601 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0621 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0641 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0661 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0681 },
{ 0x00800008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00800008, 0x29602d29, 0x00b10960, 0x00020002 },
{ 0x00800008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00800008, 0x29a02d29, 0x00b109a0, 0x00020002 },
{ 0x00800008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00800008, 0x29e02d29, 0x00b109e0, 0x00020002 },
{ 0x00800008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00800008, 0x2a202d29, 0x00b10a20, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000062 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24401d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a006 },
{ 0x00800042, 0x29404629, 0x00ad0440, 0x00ad0441 },
{ 0x00800042, 0x29604629, 0x00ad0460, 0x00ad0461 },
{ 0x00800042, 0x29804629, 0x00ad0480, 0x00ad0481 },
{ 0x00800042, 0x29a04629, 0x00ad04a0, 0x00ad04a1 },
{ 0x00800042, 0x29c04629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x29e04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x2a004629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x2a204629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000004a },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x408d0400, 0x0288a005 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0288a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x408d0400, 0x0218a005 },
{ 0x00800031, 0x26801d29, 0x408d0400, 0x0218a006 },
{ 0x00600042, 0x29404629, 0x008d0440, 0x008d0460 },
{ 0x00600042, 0x29504629, 0x008d0460, 0x008d0480 },
{ 0x00600042, 0x29604629, 0x008d0480, 0x008d04a0 },
{ 0x00600042, 0x29704629, 0x008d04a0, 0x008d04c0 },
{ 0x00600042, 0x29804629, 0x008d04c0, 0x008d04e0 },
{ 0x00600042, 0x29904629, 0x008d04e0, 0x008d0500 },
{ 0x00600042, 0x29a04629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29b04629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d05a0 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05c0 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a004629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a104629, 0x008d0620, 0x008d0640 },
{ 0x00600042, 0x2a204629, 0x008d0640, 0x008d0660 },
{ 0x00600042, 0x2a304629, 0x008d0660, 0x008d0680 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24801d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a006 },
{ 0x00800001, 0x29400229, 0x00ad0480, 0x00000000 },
{ 0x00800001, 0x29600229, 0x00ad04a0, 0x00000000 },
{ 0x00800001, 0x29800229, 0x00ad04c0, 0x00000000 },
{ 0x00800001, 0x29a00229, 0x00ad04e0, 0x00000000 },
{ 0x00800001, 0x29c00229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x29e00229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x2a000229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x2a200229, 0x00ad0560, 0x00000000 },
{ 0x00800001, 0x2d800231, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x2d900231, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x2da00231, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x2db00231, 0x00b209a0, 0x00000000 },
{ 0x00800001, 0x2dc00231, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x2dd00231, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x2de00231, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x2df00231, 0x00b20a20, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a54, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x01000005, 0x20000d3c, 0x00210a54, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000009c },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000080 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x408d0400, 0x0288a008 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0288a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x408d0400, 0x0218a008 },
{ 0x00800031, 0x26801d29, 0x408d0400, 0x0218a009 },
{ 0x00600040, 0x29404629, 0x008d0440, 0x008d0441 },
{ 0x00600040, 0x29504629, 0x008d0460, 0x008d0461 },
{ 0x00600040, 0x29604629, 0x008d0480, 0x008d0481 },
{ 0x00600040, 0x29704629, 0x008d04a0, 0x008d04a1 },
{ 0x00600040, 0x29804629, 0x008d04c0, 0x008d04c1 },
{ 0x00600040, 0x29904629, 0x008d04e0, 0x008d04e1 },
{ 0x00600040, 0x29a04629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29b04629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0460 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0480 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a0 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c0 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e0 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0500 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0520 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0540 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0461 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0481 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a1 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c1 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e1 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0501 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0521 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0541 },
{ 0x00600040, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600040, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600040, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a004629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a104629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a204629, 0x008d0640, 0x008d0641 },
{ 0x00600040, 0x2a304629, 0x008d0660, 0x008d0661 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c0 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e0 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0600 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0620 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0640 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0660 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0680 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c1 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e1 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0601 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0621 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0641 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0661 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0681 },
{ 0x00800008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00800008, 0x29602d29, 0x00b10960, 0x00020002 },
{ 0x00800008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00800008, 0x29a02d29, 0x00b109a0, 0x00020002 },
{ 0x00800008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00800008, 0x29e02d29, 0x00b109e0, 0x00020002 },
{ 0x00800008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00800008, 0x2a202d29, 0x00b10a20, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000062 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24401d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a009 },
{ 0x00800042, 0x29404629, 0x00ad0440, 0x00ad0441 },
{ 0x00800042, 0x29604629, 0x00ad0460, 0x00ad0461 },
{ 0x00800042, 0x29804629, 0x00ad0480, 0x00ad0481 },
{ 0x00800042, 0x29a04629, 0x00ad04a0, 0x00ad04a1 },
{ 0x00800042, 0x29c04629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x29e04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x2a004629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x2a204629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000004a },
{ 0x01000005, 0x20000d3c, 0x00210a56, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x408d0400, 0x0288a008 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0288a009 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x408d0400, 0x0218a008 },
{ 0x00800031, 0x26801d29, 0x408d0400, 0x0218a009 },
{ 0x00600042, 0x29404629, 0x008d0440, 0x008d0460 },
{ 0x00600042, 0x29504629, 0x008d0460, 0x008d0480 },
{ 0x00600042, 0x29604629, 0x008d0480, 0x008d04a0 },
{ 0x00600042, 0x29704629, 0x008d04a0, 0x008d04c0 },
{ 0x00600042, 0x29804629, 0x008d04c0, 0x008d04e0 },
{ 0x00600042, 0x29904629, 0x008d04e0, 0x008d0500 },
{ 0x00600042, 0x29a04629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29b04629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d05a0 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05c0 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a004629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a104629, 0x008d0620, 0x008d0640 },
{ 0x00600042, 0x2a204629, 0x008d0640, 0x008d0660 },
{ 0x00600042, 0x2a304629, 0x008d0660, 0x008d0680 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24801d29, 0x408d0400, 0x0248a008 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a009 },
{ 0x00800001, 0x29400229, 0x00ad0480, 0x00000000 },
{ 0x00800001, 0x29600229, 0x00ad04a0, 0x00000000 },
{ 0x00800001, 0x29800229, 0x00ad04c0, 0x00000000 },
{ 0x00800001, 0x29a00229, 0x00ad04e0, 0x00000000 },
{ 0x00800001, 0x29c00229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x29e00229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x2a000229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x2a200229, 0x00ad0560, 0x00000000 },
{ 0x80800042, 0x29404529, 0x00b10940, 0x00b10d80 },
{ 0x80800042, 0x29604529, 0x00b10960, 0x00b10d90 },
{ 0x80800042, 0x29804529, 0x00b10980, 0x00b10da0 },
{ 0x80800042, 0x29a04529, 0x00b109a0, 0x00b10db0 },
{ 0x80800042, 0x29c04529, 0x00b109c0, 0x00b10dc0 },
{ 0x80800042, 0x29e04529, 0x00b109e0, 0x00b10dd0 },
{ 0x80800042, 0x2a004529, 0x00b10a00, 0x00b10de0 },
{ 0x80800042, 0x2a204529, 0x00b10a20, 0x00b10df0 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x12082000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082002 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
/drivers/video/i965/shaders/mpeg2/vld/frame_frame_pred_forward.g4b
0,0 → 1,369
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x01000005, 0x20000d3c, 0x00210a50, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000005f },
{ 0x01000005, 0x20000d3c, 0x00210a52, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000048 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a004 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x00800040, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x00800040, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x00800040, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x00800040, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x00800040, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x00800040, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x00800040, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e0 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10500 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10520 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10540 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10560 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10580 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a0 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e0 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10600 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10620 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10640 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10660 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10680 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a0 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e1 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10501 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10521 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10541 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10561 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10581 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a1 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c1 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e1 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10601 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10621 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10641 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10661 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10681 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a1 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x80800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x80800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x80800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x80800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x80800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x80800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x80800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x80800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x80800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x80800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x80800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x80800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x80800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x80800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x80800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x80800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000043 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002e },
{ 0x01000005, 0x20000d3c, 0x00210a52, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x008d0400, 0x0411a004 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104e0 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b10500 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10520 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10540 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10560 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10580 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b105a0 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105c0 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105e0 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b10600 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10620 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10640 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10660 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10680 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b106a0 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x008d0400, 0x0418a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x008d0400, 0x0418a004 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b104e0, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10520, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10560, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b105a0, 0x00000000 },
{ 0x00800001, 0x28400229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b105e0, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10620, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10660, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b106a0, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x01000005, 0x20000d3c, 0x00210a50, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004e },
{ 0x01000005, 0x20000d3c, 0x00210a52, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000040 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x008d0400, 0x0418a005 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0418a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x008d0400, 0x0411a005 },
{ 0x00800031, 0x26801d29, 0x008d0400, 0x0411a006 },
{ 0x00600040, 0x29404629, 0x008d0440, 0x008d0441 },
{ 0x00600040, 0x29504629, 0x008d0460, 0x008d0461 },
{ 0x00600040, 0x29604629, 0x008d0480, 0x008d0481 },
{ 0x00600040, 0x29704629, 0x008d04a0, 0x008d04a1 },
{ 0x00600040, 0x29804629, 0x008d04c0, 0x008d04c1 },
{ 0x00600040, 0x29904629, 0x008d04e0, 0x008d04e1 },
{ 0x00600040, 0x29a04629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29b04629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0460 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0480 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a0 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c0 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e0 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0500 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0520 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0540 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0461 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0481 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a1 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c1 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e1 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0501 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0521 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0541 },
{ 0x00600040, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600040, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600040, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a004629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a104629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a204629, 0x008d0640, 0x008d0641 },
{ 0x00600040, 0x2a304629, 0x008d0660, 0x008d0661 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c0 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e0 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0600 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0620 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0640 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0660 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0680 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c1 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e1 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0601 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0621 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0641 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0661 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0681 },
{ 0x00800008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00800008, 0x29602d29, 0x00b10960, 0x00020002 },
{ 0x00800008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00800008, 0x29a02d29, 0x00b109a0, 0x00020002 },
{ 0x00800008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00800008, 0x29e02d29, 0x00b109e0, 0x00020002 },
{ 0x00800008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00800008, 0x2a202d29, 0x00b10a20, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000031 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24401d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0414a006 },
{ 0x00800042, 0x29404629, 0x00ad0440, 0x00ad0441 },
{ 0x00800042, 0x29604629, 0x00ad0460, 0x00ad0461 },
{ 0x00800042, 0x29804629, 0x00ad0480, 0x00ad0481 },
{ 0x00800042, 0x29a04629, 0x00ad04a0, 0x00ad04a1 },
{ 0x00800042, 0x29c04629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x29e04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x2a004629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x2a204629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000025 },
{ 0x01000005, 0x20000d3c, 0x00210a52, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x008d0400, 0x0418a005 },
{ 0x00800031, 0x25801d29, 0x008d0400, 0x0418a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x008d0400, 0x0411a005 },
{ 0x00800031, 0x26801d29, 0x008d0400, 0x0411a006 },
{ 0x00600042, 0x29404629, 0x008d0440, 0x008d0460 },
{ 0x00600042, 0x29504629, 0x008d0460, 0x008d0480 },
{ 0x00600042, 0x29604629, 0x008d0480, 0x008d04a0 },
{ 0x00600042, 0x29704629, 0x008d04a0, 0x008d04c0 },
{ 0x00600042, 0x29804629, 0x008d04c0, 0x008d04e0 },
{ 0x00600042, 0x29904629, 0x008d04e0, 0x008d0500 },
{ 0x00600042, 0x29a04629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29b04629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d05a0 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05c0 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a004629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a104629, 0x008d0620, 0x008d0640 },
{ 0x00600042, 0x2a204629, 0x008d0640, 0x008d0660 },
{ 0x00600042, 0x2a304629, 0x008d0660, 0x008d0680 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000b },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24801d29, 0x008d0400, 0x0414a005 },
{ 0x00800031, 0x25001d29, 0x008d0400, 0x0414a006 },
{ 0x00800001, 0x29400229, 0x00ad0480, 0x00000000 },
{ 0x00800001, 0x29600229, 0x00ad04a0, 0x00000000 },
{ 0x00800001, 0x29800229, 0x00ad04c0, 0x00000000 },
{ 0x00800001, 0x29a00229, 0x00ad04e0, 0x00000000 },
{ 0x00800001, 0x29c00229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x29e00229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x2a000229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x2a200229, 0x00ad0560, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05902000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302002 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
/drivers/video/i965/shaders/mpeg2/vld/frame_frame_pred_forward.g4b.gen5
0,0 → 1,369
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000001, 0x2fc80001, 0x00001400, 0x00000000 },
{ 0x00000001, 0x34000020, 0x002102a0, 0x00000000 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00010001 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x01000005, 0x20000d3c, 0x00210a50, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000be },
{ 0x01000005, 0x20000d3c, 0x00210a52, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000090 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a004 },
{ 0x00800040, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x00800040, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x00800040, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x00800040, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x00800040, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x00800040, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x00800040, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x00800040, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x00800040, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x00800040, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x00800040, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x00800040, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x00800040, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x00800040, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x00800040, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x00800040, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e0 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10500 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10520 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10540 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10560 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10580 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a0 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c0 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e0 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10600 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10620 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10640 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10660 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10680 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a0 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c0 },
{ 0x00800040, 0x27404529, 0x00b10740, 0x00b104e1 },
{ 0x00800040, 0x27604529, 0x00b10760, 0x00b10501 },
{ 0x00800040, 0x27804529, 0x00b10780, 0x00b10521 },
{ 0x00800040, 0x27a04529, 0x00b107a0, 0x00b10541 },
{ 0x00800040, 0x27c04529, 0x00b107c0, 0x00b10561 },
{ 0x00800040, 0x27e04529, 0x00b107e0, 0x00b10581 },
{ 0x00800040, 0x28004529, 0x00b10800, 0x00b105a1 },
{ 0x00800040, 0x28204529, 0x00b10820, 0x00b105c1 },
{ 0x00800040, 0x28404529, 0x00b10840, 0x00b105e1 },
{ 0x00800040, 0x28604529, 0x00b10860, 0x00b10601 },
{ 0x00800040, 0x28804529, 0x00b10880, 0x00b10621 },
{ 0x00800040, 0x28a04529, 0x00b108a0, 0x00b10641 },
{ 0x00800040, 0x28c04529, 0x00b108c0, 0x00b10661 },
{ 0x00800040, 0x28e04529, 0x00b108e0, 0x00b10681 },
{ 0x00800040, 0x29004529, 0x00b10900, 0x00b106a1 },
{ 0x00800040, 0x29204529, 0x00b10920, 0x00b106c1 },
{ 0x80800008, 0x27402d29, 0x00b10740, 0x00020002 },
{ 0x80800008, 0x27602d29, 0x00b10760, 0x00020002 },
{ 0x80800008, 0x27802d29, 0x00b10780, 0x00020002 },
{ 0x80800008, 0x27a02d29, 0x00b107a0, 0x00020002 },
{ 0x80800008, 0x27c02d29, 0x00b107c0, 0x00020002 },
{ 0x80800008, 0x27e02d29, 0x00b107e0, 0x00020002 },
{ 0x80800008, 0x28002d29, 0x00b10800, 0x00020002 },
{ 0x80800008, 0x28202d29, 0x00b10820, 0x00020002 },
{ 0x80800008, 0x28402d29, 0x00b10840, 0x00020002 },
{ 0x80800008, 0x28602d29, 0x00b10860, 0x00020002 },
{ 0x80800008, 0x28802d29, 0x00b10880, 0x00020002 },
{ 0x80800008, 0x28a02d29, 0x00b108a0, 0x00020002 },
{ 0x80800008, 0x28c02d29, 0x00b108c0, 0x00020002 },
{ 0x80800008, 0x28e02d29, 0x00b108e0, 0x00020002 },
{ 0x80800008, 0x29002d29, 0x00b10900, 0x00020002 },
{ 0x80800008, 0x29202d29, 0x00b10920, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000086 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104c1 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b104e1 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10501 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10521 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10541 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10561 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b10581 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105a1 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105c1 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b105e1 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10601 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10621 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10641 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10661 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b10681 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106a1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000005c },
{ 0x01000005, 0x20000d3c, 0x00210a52, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x26c01d29, 0x408d0400, 0x0218a004 },
{ 0x80800042, 0x27404629, 0x00b104c0, 0x00b104e0 },
{ 0x80800042, 0x27604629, 0x00b104e0, 0x00b10500 },
{ 0x80800042, 0x27804629, 0x00b10500, 0x00b10520 },
{ 0x80800042, 0x27a04629, 0x00b10520, 0x00b10540 },
{ 0x80800042, 0x27c04629, 0x00b10540, 0x00b10560 },
{ 0x80800042, 0x27e04629, 0x00b10560, 0x00b10580 },
{ 0x80800042, 0x28004629, 0x00b10580, 0x00b105a0 },
{ 0x80800042, 0x28204629, 0x00b105a0, 0x00b105c0 },
{ 0x80800042, 0x28404629, 0x00b105c0, 0x00b105e0 },
{ 0x80800042, 0x28604629, 0x00b105e0, 0x00b10600 },
{ 0x80800042, 0x28804629, 0x00b10600, 0x00b10620 },
{ 0x80800042, 0x28a04629, 0x00b10620, 0x00b10640 },
{ 0x80800042, 0x28c04629, 0x00b10640, 0x00b10660 },
{ 0x80800042, 0x28e04629, 0x00b10660, 0x00b10680 },
{ 0x80800042, 0x29004629, 0x00b10680, 0x00b106a0 },
{ 0x80800042, 0x29204629, 0x00b106a0, 0x00b106c0 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000028 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24c01d29, 0x408d0400, 0x0288a004 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00800031, 0x25c01d29, 0x408d0400, 0x0288a004 },
{ 0x00800001, 0x27400229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x27600229, 0x00b104e0, 0x00000000 },
{ 0x00800001, 0x27800229, 0x00b10500, 0x00000000 },
{ 0x00800001, 0x27a00229, 0x00b10520, 0x00000000 },
{ 0x00800001, 0x27c00229, 0x00b10540, 0x00000000 },
{ 0x00800001, 0x27e00229, 0x00b10560, 0x00000000 },
{ 0x00800001, 0x28000229, 0x00b10580, 0x00000000 },
{ 0x00800001, 0x28200229, 0x00b105a0, 0x00000000 },
{ 0x00800001, 0x28400229, 0x00b105c0, 0x00000000 },
{ 0x00800001, 0x28600229, 0x00b105e0, 0x00000000 },
{ 0x00800001, 0x28800229, 0x00b10600, 0x00000000 },
{ 0x00800001, 0x28a00229, 0x00b10620, 0x00000000 },
{ 0x00800001, 0x28c00229, 0x00b10640, 0x00000000 },
{ 0x00800001, 0x28e00229, 0x00b10660, 0x00000000 },
{ 0x00800001, 0x29000229, 0x00b10680, 0x00000000 },
{ 0x00800001, 0x29200229, 0x00b106a0, 0x00000000 },
{ 0x00200008, 0x23e00c21, 0x004503e0, 0x00000001 },
{ 0x0020000c, 0x23ee3dad, 0x00450a50, 0x00020002 },
{ 0x00200040, 0x24003421, 0x004503e0, 0x004503ee },
{ 0x01000005, 0x20000d3c, 0x00210a50, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000009c },
{ 0x01000005, 0x20000d3c, 0x00210a52, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000080 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x408d0400, 0x0288a005 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0288a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x408d0400, 0x0218a005 },
{ 0x00800031, 0x26801d29, 0x408d0400, 0x0218a006 },
{ 0x00600040, 0x29404629, 0x008d0440, 0x008d0441 },
{ 0x00600040, 0x29504629, 0x008d0460, 0x008d0461 },
{ 0x00600040, 0x29604629, 0x008d0480, 0x008d0481 },
{ 0x00600040, 0x29704629, 0x008d04a0, 0x008d04a1 },
{ 0x00600040, 0x29804629, 0x008d04c0, 0x008d04c1 },
{ 0x00600040, 0x29904629, 0x008d04e0, 0x008d04e1 },
{ 0x00600040, 0x29a04629, 0x008d0500, 0x008d0501 },
{ 0x00600040, 0x29b04629, 0x008d0520, 0x008d0521 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0460 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0480 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a0 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c0 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e0 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0500 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0520 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0540 },
{ 0x00600040, 0x29404529, 0x008d0940, 0x008d0461 },
{ 0x00600040, 0x29504529, 0x008d0950, 0x008d0481 },
{ 0x00600040, 0x29604529, 0x008d0960, 0x008d04a1 },
{ 0x00600040, 0x29704529, 0x008d0970, 0x008d04c1 },
{ 0x00600040, 0x29804529, 0x008d0980, 0x008d04e1 },
{ 0x00600040, 0x29904529, 0x008d0990, 0x008d0501 },
{ 0x00600040, 0x29a04529, 0x008d09a0, 0x008d0521 },
{ 0x00600040, 0x29b04529, 0x008d09b0, 0x008d0541 },
{ 0x00600040, 0x29c04629, 0x008d0580, 0x008d0581 },
{ 0x00600040, 0x29d04629, 0x008d05a0, 0x008d05a1 },
{ 0x00600040, 0x29e04629, 0x008d05c0, 0x008d05c1 },
{ 0x00600040, 0x29f04629, 0x008d05e0, 0x008d05e1 },
{ 0x00600040, 0x2a004629, 0x008d0600, 0x008d0601 },
{ 0x00600040, 0x2a104629, 0x008d0620, 0x008d0621 },
{ 0x00600040, 0x2a204629, 0x008d0640, 0x008d0641 },
{ 0x00600040, 0x2a304629, 0x008d0660, 0x008d0661 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a0 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c0 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e0 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0600 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0620 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0640 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0660 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0680 },
{ 0x00600040, 0x29c04529, 0x008d09c0, 0x008d05a1 },
{ 0x00600040, 0x29d04529, 0x008d09d0, 0x008d05c1 },
{ 0x00600040, 0x29e04529, 0x008d09e0, 0x008d05e1 },
{ 0x00600040, 0x29f04529, 0x008d09f0, 0x008d0601 },
{ 0x00600040, 0x2a004529, 0x008d0a00, 0x008d0621 },
{ 0x00600040, 0x2a104529, 0x008d0a10, 0x008d0641 },
{ 0x00600040, 0x2a204529, 0x008d0a20, 0x008d0661 },
{ 0x00600040, 0x2a304529, 0x008d0a30, 0x008d0681 },
{ 0x00800008, 0x29402d29, 0x00b10940, 0x00020002 },
{ 0x00800008, 0x29602d29, 0x00b10960, 0x00020002 },
{ 0x00800008, 0x29802d29, 0x00b10980, 0x00020002 },
{ 0x00800008, 0x29a02d29, 0x00b109a0, 0x00020002 },
{ 0x00800008, 0x29c02d29, 0x00b109c0, 0x00020002 },
{ 0x00800008, 0x29e02d29, 0x00b109e0, 0x00020002 },
{ 0x00800008, 0x2a002d29, 0x00b10a00, 0x00020002 },
{ 0x00800008, 0x2a202d29, 0x00b10a20, 0x00020002 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000062 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24401d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0248a006 },
{ 0x00800042, 0x29404629, 0x00ad0440, 0x00ad0441 },
{ 0x00800042, 0x29604629, 0x00ad0460, 0x00ad0461 },
{ 0x00800042, 0x29804629, 0x00ad0480, 0x00ad0481 },
{ 0x00800042, 0x29a04629, 0x00ad04a0, 0x00ad04a1 },
{ 0x00800042, 0x29c04629, 0x00ad0580, 0x00ad0581 },
{ 0x00800042, 0x29e04629, 0x00ad05a0, 0x00ad05a1 },
{ 0x00800042, 0x2a004629, 0x00ad05c0, 0x00ad05c1 },
{ 0x00800042, 0x2a204629, 0x00ad05e0, 0x00ad05e1 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000004a },
{ 0x01000005, 0x20000d3c, 0x00210a52, 0x00000002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x24401d29, 0x408d0400, 0x0288a005 },
{ 0x00800031, 0x25801d29, 0x408d0400, 0x0288a006 },
{ 0x00000040, 0x24040c21, 0x00210404, 0x00000008 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x25401d29, 0x408d0400, 0x0218a005 },
{ 0x00800031, 0x26801d29, 0x408d0400, 0x0218a006 },
{ 0x00600042, 0x29404629, 0x008d0440, 0x008d0460 },
{ 0x00600042, 0x29504629, 0x008d0460, 0x008d0480 },
{ 0x00600042, 0x29604629, 0x008d0480, 0x008d04a0 },
{ 0x00600042, 0x29704629, 0x008d04a0, 0x008d04c0 },
{ 0x00600042, 0x29804629, 0x008d04c0, 0x008d04e0 },
{ 0x00600042, 0x29904629, 0x008d04e0, 0x008d0500 },
{ 0x00600042, 0x29a04629, 0x008d0500, 0x008d0520 },
{ 0x00600042, 0x29b04629, 0x008d0520, 0x008d0540 },
{ 0x00600042, 0x29c04629, 0x008d0580, 0x008d05a0 },
{ 0x00600042, 0x29d04629, 0x008d05a0, 0x008d05c0 },
{ 0x00600042, 0x29e04629, 0x008d05c0, 0x008d05e0 },
{ 0x00600042, 0x29f04629, 0x008d05e0, 0x008d0600 },
{ 0x00600042, 0x2a004629, 0x008d0600, 0x008d0620 },
{ 0x00600042, 0x2a104629, 0x008d0620, 0x008d0640 },
{ 0x00600042, 0x2a204629, 0x008d0640, 0x008d0660 },
{ 0x00600042, 0x2a304629, 0x008d0660, 0x008d0680 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00000001, 0x24080061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x24801d29, 0x408d0400, 0x0248a005 },
{ 0x00800031, 0x25001d29, 0x408d0400, 0x0248a006 },
{ 0x00800001, 0x29400229, 0x00ad0480, 0x00000000 },
{ 0x00800001, 0x29600229, 0x00ad04a0, 0x00000000 },
{ 0x00800001, 0x29800229, 0x00ad04c0, 0x00000000 },
{ 0x00800001, 0x29a00229, 0x00ad04e0, 0x00000000 },
{ 0x00800001, 0x29c00229, 0x00ad0500, 0x00000000 },
{ 0x00800001, 0x29e00229, 0x00ad0520, 0x00000000 },
{ 0x00800001, 0x2a000229, 0x00ad0540, 0x00000000 },
{ 0x00800001, 0x2a200229, 0x00ad0560, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10a80, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10aa0, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10ac0, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10ae0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10b00, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10b20, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10b40, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10b60, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10b80, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10ba0, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10bc0, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10be0, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c00, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10c20, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00800040, 0x274045ad, 0x00b10a60, 0x00b20740 },
{ 0x00800040, 0x276045ad, 0x00b10b60, 0x00b20760 },
{ 0x00800040, 0x278045ad, 0x00b10a80, 0x00b20780 },
{ 0x00800040, 0x27a045ad, 0x00b10b80, 0x00b207a0 },
{ 0x00800040, 0x27c045ad, 0x00b10aa0, 0x00b207c0 },
{ 0x00800040, 0x27e045ad, 0x00b10ba0, 0x00b207e0 },
{ 0x00800040, 0x280045ad, 0x00b10ac0, 0x00b20800 },
{ 0x00800040, 0x282045ad, 0x00b10bc0, 0x00b20820 },
{ 0x00800040, 0x284045ad, 0x00b10ae0, 0x00b20840 },
{ 0x00800040, 0x286045ad, 0x00b10be0, 0x00b20860 },
{ 0x00800040, 0x288045ad, 0x00b10b00, 0x00b20880 },
{ 0x00800040, 0x28a045ad, 0x00b10c00, 0x00b208a0 },
{ 0x00800040, 0x28c045ad, 0x00b10b20, 0x00b208c0 },
{ 0x00800040, 0x28e045ad, 0x00b10c20, 0x00b208e0 },
{ 0x00800040, 0x290045ad, 0x00b10b40, 0x00b20900 },
{ 0x00800040, 0x292045ad, 0x00b10c40, 0x00b20920 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x474001b1, 0x00b10740, 0x00000000 },
{ 0x80800001, 0x476001b1, 0x00b10760, 0x00000000 },
{ 0x80800001, 0x478001b1, 0x00b10780, 0x00000000 },
{ 0x80800001, 0x47a001b1, 0x00b107a0, 0x00000000 },
{ 0x80800001, 0x47c001b1, 0x00b107c0, 0x00000000 },
{ 0x80800001, 0x47e001b1, 0x00b107e0, 0x00000000 },
{ 0x80800001, 0x480001b1, 0x00b10800, 0x00000000 },
{ 0x80800001, 0x482001b1, 0x00b10820, 0x00000000 },
{ 0x80800001, 0x484001b1, 0x00b10840, 0x00000000 },
{ 0x80800001, 0x486001b1, 0x00b10860, 0x00000000 },
{ 0x80800001, 0x488001b1, 0x00b10880, 0x00000000 },
{ 0x80800001, 0x48a001b1, 0x00b108a0, 0x00000000 },
{ 0x80800001, 0x48c001b1, 0x00b108c0, 0x00000000 },
{ 0x80800001, 0x48e001b1, 0x00b108e0, 0x00000000 },
{ 0x80800001, 0x490001b1, 0x00b10900, 0x00000000 },
{ 0x80800001, 0x492001b1, 0x00b10920, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20740, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20760, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20780, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b207a0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b207c0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b207e0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20800, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20820, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20840, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20860, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20880, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b208a0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b208c0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b208e0, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20900, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20920, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x12082000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01c21, 0x004503e0, 0x00000001 },
{ 0x00800040, 0x294025ad, 0x00b10c60, 0x00b10940 },
{ 0x00800040, 0x296025ad, 0x00b10c80, 0x00b10960 },
{ 0x00800040, 0x298025ad, 0x00b10ca0, 0x00b10980 },
{ 0x00800040, 0x29a025ad, 0x00b10cc0, 0x00b109a0 },
{ 0x80800001, 0x494001b1, 0x00b10940, 0x00000000 },
{ 0x80800001, 0x496001b1, 0x00b10960, 0x00000000 },
{ 0x80800001, 0x498001b1, 0x00b10980, 0x00000000 },
{ 0x80800001, 0x49a001b1, 0x00b109a0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20940, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20960, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20980, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b209a0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082001 },
{ 0x00800040, 0x29c025a9, 0x00b10ce0, 0x00b109c0 },
{ 0x00800040, 0x29e025a9, 0x00b10d00, 0x00b109e0 },
{ 0x00800040, 0x2a0025a9, 0x00b10d20, 0x00b10a00 },
{ 0x00800040, 0x2a2025a9, 0x00b10d40, 0x00b10a20 },
{ 0x80800001, 0x49c001b1, 0x00b109c0, 0x00000000 },
{ 0x80800001, 0x49e001b1, 0x00b109e0, 0x00000000 },
{ 0x80800001, 0x4a0001b1, 0x00b10a00, 0x00000000 },
{ 0x80800001, 0x4a2001b1, 0x00b10a20, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b209c0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b209e0, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a00, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20a20, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082002 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
/drivers/video/i965/shaders/mpeg2/vld/frame_intra.g4b
0,0 → 1,313
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000005, 0x2da02d29, 0x00210a48, 0x001f001f },
{ 0x00000005, 0x2da42d29, 0x00210a48, 0x60006000 },
{ 0x00000008, 0x2da42d29, 0x00210da4, 0x000d000d },
{ 0x00000001, 0x2da60169, 0x00000000, 0x00080008 },
{ 0x00000008, 0x2da42529, 0x00210da6, 0x00210da4 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000012 },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00090009 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00110011 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00190019 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xffe7ffe7 },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00030003 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x00400040 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000009 },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xfff7fff7 },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00010001 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x000a000a },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000005 },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xffefffef },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00020002 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x001c001c },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000001 },
{ 0x00000009, 0x2da00d29, 0x00210da0, 0x00000001 },
{ 0x00000001, 0x2dc00129, 0x00210da0, 0x00000000 },
{ 0x00800001, 0x2e000229, 0x00b10020, 0x00000000 },
{ 0x00800001, 0x2e200229, 0x00b10030, 0x00000000 },
{ 0x00800001, 0x2e400229, 0x00b10040, 0x00000000 },
{ 0x00800001, 0x2e600229, 0x00b10050, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x03f003e0 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000a1 },
{ 0x00800001, 0x270001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x272001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x274001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x276001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000009b },
{ 0x00800001, 0x278001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x27a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x27c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x27e001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000095 },
{ 0x00800001, 0x280001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x282001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x284001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x286001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000008f },
{ 0x00800001, 0x288001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x28a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x28c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x28e001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000089 },
{ 0x00800001, 0x290001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x292001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x294001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x296001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000083 },
{ 0x00800001, 0x298001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x29a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x29c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x29e001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x06f006e0 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000008f },
{ 0x00600040, 0x2a602dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2a802dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2aa02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2ac02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2ae02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2b002dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2b202dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2b402dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000085 },
{ 0x00600040, 0x2a702dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2a902dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2ab02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2ad02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2af02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2b102dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2b302dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2b502dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000007b },
{ 0x00600040, 0x2b602dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2b802dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2ba02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2bc02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2be02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2c002dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2c202dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2c402dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000071 },
{ 0x00600040, 0x2b702dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2b902dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2bb02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2bd02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2bf02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2c102dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2c302dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2c502dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000067 },
{ 0x00800040, 0x2c602dad, 0x00ae0400, 0x00800080 },
{ 0x00800040, 0x2c802dad, 0x00ae0440, 0x00800080 },
{ 0x00800040, 0x2ca02dad, 0x00ae0480, 0x00800080 },
{ 0x00800040, 0x2cc02dad, 0x00ae04c0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000061 },
{ 0x00800040, 0x2ce02dad, 0x00ae0400, 0x00800080 },
{ 0x00800040, 0x2d002dad, 0x00ae0440, 0x00800080 },
{ 0x00800040, 0x2d202dad, 0x00ae0480, 0x00800080 },
{ 0x00800040, 0x2d402dad, 0x00ae04c0, 0x00800080 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x4a6001b1, 0x00b10a60, 0x00000000 },
{ 0x80800001, 0x4a8001b1, 0x00b10a80, 0x00000000 },
{ 0x80800001, 0x4aa001b1, 0x00b10aa0, 0x00000000 },
{ 0x80800001, 0x4ac001b1, 0x00b10ac0, 0x00000000 },
{ 0x80800001, 0x4ae001b1, 0x00b10ae0, 0x00000000 },
{ 0x80800001, 0x4b0001b1, 0x00b10b00, 0x00000000 },
{ 0x80800001, 0x4b2001b1, 0x00b10b20, 0x00000000 },
{ 0x80800001, 0x4b4001b1, 0x00b10b40, 0x00000000 },
{ 0x80800001, 0x4b6001b1, 0x00b10b60, 0x00000000 },
{ 0x80800001, 0x4b8001b1, 0x00b10b80, 0x00000000 },
{ 0x80800001, 0x4ba001b1, 0x00b10ba0, 0x00000000 },
{ 0x80800001, 0x4bc001b1, 0x00b10bc0, 0x00000000 },
{ 0x80800001, 0x4be001b1, 0x00b10be0, 0x00000000 },
{ 0x80800001, 0x4c0001b1, 0x00b10c00, 0x00000000 },
{ 0x80800001, 0x4c2001b1, 0x00b10c20, 0x00000000 },
{ 0x80800001, 0x4c4001b1, 0x00b10c40, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
{ 0x00800001, 0x20200232, 0x00b20a60, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20a80, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20aa0, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20ac0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b20ae0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b20b00, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20b20, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20b40, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20b60, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20b80, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20ba0, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b20bc0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b20be0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b20c00, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20c20, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20c40, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00800001, 0x20200232, 0x00b20a60, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20b60, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a80, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20b80, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b20aa0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b20ba0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20ac0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20bc0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20ae0, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20be0, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20b00, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b20c00, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b20b20, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b20c20, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20b40, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20c40, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05902000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01d21, 0x00450a4c, 0x00000001 },
{ 0x80800001, 0x4c6001b1, 0x00b10c60, 0x00000000 },
{ 0x80800001, 0x4c8001b1, 0x00b10c80, 0x00000000 },
{ 0x80800001, 0x4ca001b1, 0x00b10ca0, 0x00000000 },
{ 0x80800001, 0x4cc001b1, 0x00b10cc0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20c60, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20c80, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20ca0, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20cc0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302001 },
{ 0x80800001, 0x4ce001b1, 0x00b10ce0, 0x00000000 },
{ 0x80800001, 0x4d0001b1, 0x00b10d00, 0x00000000 },
{ 0x80800001, 0x4d2001b1, 0x00b10d20, 0x00000000 },
{ 0x80800001, 0x4d4001b1, 0x00b10d40, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20ce0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20d00, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20d20, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20d40, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d03e0, 0x05302002 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00000001, 0x2de001ad, 0x00218000, 0x00000000 },
{ 0x00802041, 0x2e8025a5, 0x008d8000, 0x008d0e00 },
{ 0x00802041, 0x2e8024a5, 0x008d0e80, 0x008c0da0 },
{ 0x0080200c, 0x2e802ca5, 0x008d0e80, 0x00040004 },
{ 0x00000041, 0x2e8025a5, 0x00210de0, 0x00210da4 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2ec025a5, 0x008d8000, 0x008d0e20 },
{ 0x00802041, 0x2ec024a5, 0x008d0ec0, 0x008c0da0 },
{ 0x0080200c, 0x2ec02ca5, 0x008d0ec0, 0x00040004 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2f0025a5, 0x008d8000, 0x008d0e40 },
{ 0x00802041, 0x2f0024a5, 0x008d0f00, 0x008c0da0 },
{ 0x0080200c, 0x2f002ca5, 0x008d0f00, 0x00040004 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2f4025a5, 0x008d8000, 0x008d0e60 },
{ 0x00802041, 0x2f4024a5, 0x008d0f40, 0x008c0da0 },
{ 0x0080200c, 0x2f402ca5, 0x008d0f40, 0x00040004 },
{ 0x00000040, 0x34000c20, 0x00210fa0, 0x00000020 },
{ 0x00000001, 0x2fc00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000001a },
{ 0x00802040, 0x24000ca5, 0x008d0400, 0x00000400 },
{ 0x00802040, 0x24400ca5, 0x008d0440, 0x00000400 },
{ 0x00802040, 0x24800ca5, 0x008d0480, 0x00000400 },
{ 0x00802040, 0x24c00ca5, 0x008d04c0, 0x00000400 },
{ 0x00802008, 0x24000ca5, 0x008d0400, 0x0000000b },
{ 0x00802008, 0x24400ca5, 0x008d0440, 0x0000000b },
{ 0x00802008, 0x24800ca5, 0x008d0480, 0x0000000b },
{ 0x00802008, 0x24c00ca5, 0x008d04c0, 0x0000000b },
{ 0x00800001, 0x2dc001ad, 0x00ae0400, 0x00000000 },
{ 0x00800001, 0x2de001ad, 0x00ae0440, 0x00000000 },
{ 0x00800001, 0x2e0001ad, 0x00ae0480, 0x00000000 },
{ 0x00800001, 0x2e2001ad, 0x00ae04c0, 0x00000000 },
{ 0x00000001, 0x2a000001, 0x00210200, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0db00da0 },
{ 0x00000001, 0x2fc00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00802040, 0x24000ca5, 0x008d0400, 0x00080000 },
{ 0x00802040, 0x24400ca5, 0x008d0440, 0x00080000 },
{ 0x00802040, 0x24800ca5, 0x008d0480, 0x00080000 },
{ 0x00802040, 0x24c00ca5, 0x008d04c0, 0x00080000 },
{ 0x00802008, 0x24000ca5, 0x008d0400, 0x00000014 },
{ 0x00802008, 0x24400ca5, 0x008d0440, 0x00000014 },
{ 0x00802008, 0x24800ca5, 0x008d0480, 0x00000014 },
{ 0x00802008, 0x24c00ca5, 0x008d04c0, 0x00000014 },
{ 0x00000001, 0x22000020, 0x00210a00, 0x00000000 },
{ 0x00000040, 0x34000c20, 0x00210fa0, 0x00000020 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x240014a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x242014a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x244014a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x246014a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x248014a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24a014a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24c014a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24e014a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x240814a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x242814a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x244814a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x246814a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x248814a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24a814a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24c814a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24e814a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x241014a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x243014a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x245014a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x247014a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x249014a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24b014a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24d014a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24f014a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x241814a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x243814a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x245814a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x247814a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x249814a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24b814a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24d814a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24f814a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x34000c20, 0x00210fc0, 0x00000020 },
/drivers/video/i965/shaders/mpeg2/vld/frame_intra.g4b.gen5
0,0 → 1,313
{ 0x00600001, 0x2a400021, 0x008d03e0, 0x00000000 },
{ 0x00200001, 0x23e00121, 0x00450a4c, 0x00000000 },
{ 0x00000005, 0x2da02d29, 0x00210a48, 0x001f001f },
{ 0x00000005, 0x2da42d29, 0x00210a48, 0x60006000 },
{ 0x00000008, 0x2da42d29, 0x00210da4, 0x000d000d },
{ 0x00000001, 0x2da60169, 0x00000000, 0x00080008 },
{ 0x00000008, 0x2da42529, 0x00210da6, 0x00210da4 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00090009 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00110011 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000c },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00190019 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xffe7ffe7 },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00030003 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x00400040 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000012 },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xfff7fff7 },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00010001 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x000a000a },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xffefffef },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00020002 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x001c001c },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00000009, 0x2da00d29, 0x00210da0, 0x00000001 },
{ 0x00000001, 0x2dc00129, 0x00210da0, 0x00000000 },
{ 0x00800001, 0x2e000229, 0x00b10020, 0x00000000 },
{ 0x00800001, 0x2e200229, 0x00b10030, 0x00000000 },
{ 0x00800001, 0x2e400229, 0x00b10040, 0x00000000 },
{ 0x00800001, 0x2e600229, 0x00b10050, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x03f003e0 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000142 },
{ 0x00800001, 0x270001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x272001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x274001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x276001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000136 },
{ 0x00800001, 0x278001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x27a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x27c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x27e001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000012a },
{ 0x00800001, 0x280001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x282001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x284001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x286001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000011e },
{ 0x00800001, 0x288001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x28a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x28c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x28e001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000112 },
{ 0x00800001, 0x290001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x292001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x294001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x296001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000106 },
{ 0x00800001, 0x298001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x29a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x29c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x29e001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x06f006e0 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000011e },
{ 0x00600040, 0x2a602dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2a802dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2aa02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2ac02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2ae02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2b002dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2b202dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2b402dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000010a },
{ 0x00600040, 0x2a702dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2a902dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2ab02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2ad02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2af02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2b102dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2b302dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2b502dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000f6 },
{ 0x00600040, 0x2b602dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2b802dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2ba02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2bc02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2be02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2c002dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2c202dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2c402dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000e2 },
{ 0x00600040, 0x2b702dad, 0x00ae0400, 0x00800080 },
{ 0x00600040, 0x2b902dad, 0x00ae0420, 0x00800080 },
{ 0x00600040, 0x2bb02dad, 0x00ae0440, 0x00800080 },
{ 0x00600040, 0x2bd02dad, 0x00ae0460, 0x00800080 },
{ 0x00600040, 0x2bf02dad, 0x00ae0480, 0x00800080 },
{ 0x00600040, 0x2c102dad, 0x00ae04a0, 0x00800080 },
{ 0x00600040, 0x2c302dad, 0x00ae04c0, 0x00800080 },
{ 0x00600040, 0x2c502dad, 0x00ae04e0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000ce },
{ 0x00800040, 0x2c602dad, 0x00ae0400, 0x00800080 },
{ 0x00800040, 0x2c802dad, 0x00ae0440, 0x00800080 },
{ 0x00800040, 0x2ca02dad, 0x00ae0480, 0x00800080 },
{ 0x00800040, 0x2cc02dad, 0x00ae04c0, 0x00800080 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000c2 },
{ 0x00800040, 0x2ce02dad, 0x00ae0400, 0x00800080 },
{ 0x00800040, 0x2d002dad, 0x00ae0440, 0x00800080 },
{ 0x00800040, 0x2d202dad, 0x00ae0480, 0x00800080 },
{ 0x00800040, 0x2d402dad, 0x00ae04c0, 0x00800080 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x000f000f },
{ 0x80800001, 0x4a6001b1, 0x00b10a60, 0x00000000 },
{ 0x80800001, 0x4a8001b1, 0x00b10a80, 0x00000000 },
{ 0x80800001, 0x4aa001b1, 0x00b10aa0, 0x00000000 },
{ 0x80800001, 0x4ac001b1, 0x00b10ac0, 0x00000000 },
{ 0x80800001, 0x4ae001b1, 0x00b10ae0, 0x00000000 },
{ 0x80800001, 0x4b0001b1, 0x00b10b00, 0x00000000 },
{ 0x80800001, 0x4b2001b1, 0x00b10b20, 0x00000000 },
{ 0x80800001, 0x4b4001b1, 0x00b10b40, 0x00000000 },
{ 0x80800001, 0x4b6001b1, 0x00b10b60, 0x00000000 },
{ 0x80800001, 0x4b8001b1, 0x00b10b80, 0x00000000 },
{ 0x80800001, 0x4ba001b1, 0x00b10ba0, 0x00000000 },
{ 0x80800001, 0x4bc001b1, 0x00b10bc0, 0x00000000 },
{ 0x80800001, 0x4be001b1, 0x00b10be0, 0x00000000 },
{ 0x80800001, 0x4c0001b1, 0x00b10c00, 0x00000000 },
{ 0x80800001, 0x4c2001b1, 0x00b10c20, 0x00000000 },
{ 0x80800001, 0x4c4001b1, 0x00b10c40, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a42, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x00800001, 0x20200232, 0x00b20a60, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20a80, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20aa0, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20ac0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b20ae0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b20b00, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20b20, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20b40, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20b60, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20b80, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20ba0, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b20bc0, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b20be0, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b20c00, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20c20, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20c40, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000020 },
{ 0x00800001, 0x20200232, 0x00b20a60, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20b60, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20a80, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20b80, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b20aa0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b20ba0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00b20ac0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00b20bc0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00b20ae0, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00b20be0, 0x00000000 },
{ 0x00800001, 0x20c00232, 0x00b20b00, 0x00000000 },
{ 0x00800001, 0x20d00232, 0x00b20c00, 0x00000000 },
{ 0x00800001, 0x20e00232, 0x00b20b20, 0x00000000 },
{ 0x00800001, 0x20f00232, 0x00b20c20, 0x00000000 },
{ 0x00800001, 0x21000232, 0x00b20b40, 0x00000000 },
{ 0x00800001, 0x21100232, 0x00b20c40, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x12082000 },
{ 0x00000001, 0x23e80061, 0x00000000, 0x00070007 },
{ 0x00200008, 0x23e01d21, 0x00450a4c, 0x00000001 },
{ 0x80800001, 0x4c6001b1, 0x00b10c60, 0x00000000 },
{ 0x80800001, 0x4c8001b1, 0x00b10c80, 0x00000000 },
{ 0x80800001, 0x4ca001b1, 0x00b10ca0, 0x00000000 },
{ 0x80800001, 0x4cc001b1, 0x00b10cc0, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20c60, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20c80, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20ca0, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20cc0, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082001 },
{ 0x80800001, 0x4ce001b1, 0x00b10ce0, 0x00000000 },
{ 0x80800001, 0x4d0001b1, 0x00b10d00, 0x00000000 },
{ 0x80800001, 0x4d2001b1, 0x00b10d20, 0x00000000 },
{ 0x80800001, 0x4d4001b1, 0x00b10d40, 0x00000000 },
{ 0x00800001, 0x20200232, 0x00b20ce0, 0x00000000 },
{ 0x00800001, 0x20300232, 0x00b20d00, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b20d20, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b20d40, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x508d03e0, 0x06082002 },
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00000001, 0x2de001ad, 0x00218000, 0x00000000 },
{ 0x00802041, 0x2e8025a5, 0x008d8000, 0x008d0e00 },
{ 0x00802041, 0x2e8024a5, 0x008d0e80, 0x008c0da0 },
{ 0x0080200c, 0x2e802ca5, 0x008d0e80, 0x00040004 },
{ 0x00000041, 0x2e8025a5, 0x00210de0, 0x00210da4 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2ec025a5, 0x008d8000, 0x008d0e20 },
{ 0x00802041, 0x2ec024a5, 0x008d0ec0, 0x008c0da0 },
{ 0x0080200c, 0x2ec02ca5, 0x008d0ec0, 0x00040004 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2f0025a5, 0x008d8000, 0x008d0e40 },
{ 0x00802041, 0x2f0024a5, 0x008d0f00, 0x008c0da0 },
{ 0x0080200c, 0x2f002ca5, 0x008d0f00, 0x00040004 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2f4025a5, 0x008d8000, 0x008d0e60 },
{ 0x00802041, 0x2f4024a5, 0x008d0f40, 0x008c0da0 },
{ 0x0080200c, 0x2f402ca5, 0x008d0f40, 0x00040004 },
{ 0x00000040, 0x34000c20, 0x00210fa0, 0x00000020 },
{ 0x00000001, 0x2fc00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00802040, 0x24000ca5, 0x008d0400, 0x00000400 },
{ 0x00802040, 0x24400ca5, 0x008d0440, 0x00000400 },
{ 0x00802040, 0x24800ca5, 0x008d0480, 0x00000400 },
{ 0x00802040, 0x24c00ca5, 0x008d04c0, 0x00000400 },
{ 0x00802008, 0x24000ca5, 0x008d0400, 0x0000000b },
{ 0x00802008, 0x24400ca5, 0x008d0440, 0x0000000b },
{ 0x00802008, 0x24800ca5, 0x008d0480, 0x0000000b },
{ 0x00802008, 0x24c00ca5, 0x008d04c0, 0x0000000b },
{ 0x00800001, 0x2dc001ad, 0x00ae0400, 0x00000000 },
{ 0x00800001, 0x2de001ad, 0x00ae0440, 0x00000000 },
{ 0x00800001, 0x2e0001ad, 0x00ae0480, 0x00000000 },
{ 0x00800001, 0x2e2001ad, 0x00ae04c0, 0x00000000 },
{ 0x00000001, 0x2a000001, 0x00210200, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0db00da0 },
{ 0x00000001, 0x2fc00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x00802040, 0x24000ca5, 0x008d0400, 0x00080000 },
{ 0x00802040, 0x24400ca5, 0x008d0440, 0x00080000 },
{ 0x00802040, 0x24800ca5, 0x008d0480, 0x00080000 },
{ 0x00802040, 0x24c00ca5, 0x008d04c0, 0x00080000 },
{ 0x00802008, 0x24000ca5, 0x008d0400, 0x00000014 },
{ 0x00802008, 0x24400ca5, 0x008d0440, 0x00000014 },
{ 0x00802008, 0x24800ca5, 0x008d0480, 0x00000014 },
{ 0x00802008, 0x24c00ca5, 0x008d04c0, 0x00000014 },
{ 0x00000001, 0x22000020, 0x00210a00, 0x00000000 },
{ 0x00000040, 0x34000c20, 0x00210fa0, 0x00000020 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x240014a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x242014a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x244014a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x246014a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x248014a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24a014a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24c014a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24e014a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x240814a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x242814a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x244814a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x246814a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x248814a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24a814a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24c814a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24e814a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x241014a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x243014a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x245014a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x247014a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x249014a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24b014a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24d014a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24f014a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x241814a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x243814a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x245814a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x247814a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x249814a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24b814a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24d814a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24f814a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x34000c20, 0x00210fc0, 0x00000020 },
/drivers/video/i965/shaders/mpeg2/vld/lib.g4b
0,0 → 1,307
{ 0x00000005, 0x2da02d29, 0x00210a48, 0x001f001f },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000012 },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00090009 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00110011 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00190019 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xffe7ffe7 },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00030003 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x00400040 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000009 },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xfff7fff7 },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00010001 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x000a000a },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000005 },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xffefffef },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00020002 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x001c001c },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000001 },
{ 0x00000009, 0x2da00d29, 0x00210da0, 0x00000001 },
{ 0x00000001, 0x2dc00129, 0x00210da0, 0x00000000 },
{ 0x00800001, 0x2e000229, 0x00b10060, 0x00000000 },
{ 0x00800001, 0x2e200229, 0x00b10070, 0x00000000 },
{ 0x00800001, 0x2e400229, 0x00b10080, 0x00000000 },
{ 0x00800001, 0x2e600229, 0x00b10090, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x03f003e0 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x08000800 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000a1 },
{ 0x00800001, 0x270001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x272001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x274001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x276001ad, 0x00ae0f40, 0x00000000 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x04000400 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000099 },
{ 0x00800001, 0x278001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x27a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x27c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x27e001ad, 0x00ae0f40, 0x00000000 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x02000200 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000091 },
{ 0x00800001, 0x280001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x282001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x284001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x286001ad, 0x00ae0f40, 0x00000000 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x01000100 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000089 },
{ 0x00800001, 0x288001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x28a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x28c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x28e001ad, 0x00ae0f40, 0x00000000 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x00800080 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000081 },
{ 0x00800001, 0x290001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x292001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x294001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x296001ad, 0x00ae0f40, 0x00000000 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x00400040 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000079 },
{ 0x00800001, 0x298001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x29a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x29c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x29e001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x06f006e0 },
{ 0x02000005, 0x20002d3c, 0x00210a48, 0x08000800 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00600001, 0x2a600169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2a800169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2aa00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2ac00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2ae00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b000169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b200169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b400169, 0x00000000, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00800080 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000077 },
{ 0x00600001, 0x2a6001ad, 0x00ae0400, 0x00000000 },
{ 0x00600001, 0x2a8001ad, 0x00ae0420, 0x00000000 },
{ 0x00600001, 0x2aa001ad, 0x00ae0440, 0x00000000 },
{ 0x00600001, 0x2ac001ad, 0x00ae0460, 0x00000000 },
{ 0x00600001, 0x2ae001ad, 0x00ae0480, 0x00000000 },
{ 0x00600001, 0x2b0001ad, 0x00ae04a0, 0x00000000 },
{ 0x00600001, 0x2b2001ad, 0x00ae04c0, 0x00000000 },
{ 0x00600001, 0x2b4001ad, 0x00ae04e0, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a48, 0x04000400 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00600001, 0x2a700169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2a900169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2ab00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2ad00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2af00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b100169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b300169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b500169, 0x00000000, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00800080 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000061 },
{ 0x00600001, 0x2a7001ad, 0x00ae0400, 0x00000000 },
{ 0x00600001, 0x2a9001ad, 0x00ae0420, 0x00000000 },
{ 0x00600001, 0x2ab001ad, 0x00ae0440, 0x00000000 },
{ 0x00600001, 0x2ad001ad, 0x00ae0460, 0x00000000 },
{ 0x00600001, 0x2af001ad, 0x00ae0480, 0x00000000 },
{ 0x00600001, 0x2b1001ad, 0x00ae04a0, 0x00000000 },
{ 0x00600001, 0x2b3001ad, 0x00ae04c0, 0x00000000 },
{ 0x00600001, 0x2b5001ad, 0x00ae04e0, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a48, 0x02000200 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00600001, 0x2b600169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b800169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2ba00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2bc00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2be00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2c000169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2c200169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2c400169, 0x00000000, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00800080 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000004b },
{ 0x00600001, 0x2b6001ad, 0x00ae0400, 0x00000000 },
{ 0x00600001, 0x2b8001ad, 0x00ae0420, 0x00000000 },
{ 0x00600001, 0x2ba001ad, 0x00ae0440, 0x00000000 },
{ 0x00600001, 0x2bc001ad, 0x00ae0460, 0x00000000 },
{ 0x00600001, 0x2be001ad, 0x00ae0480, 0x00000000 },
{ 0x00600001, 0x2c0001ad, 0x00ae04a0, 0x00000000 },
{ 0x00600001, 0x2c2001ad, 0x00ae04c0, 0x00000000 },
{ 0x00600001, 0x2c4001ad, 0x00ae04e0, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a48, 0x01000100 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00600001, 0x2b700169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b900169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2bb00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2bd00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2bf00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2c100169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2c300169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2c500169, 0x00000000, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00800080 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000035 },
{ 0x00600001, 0x2b7001ad, 0x00ae0400, 0x00000000 },
{ 0x00600001, 0x2b9001ad, 0x00ae0420, 0x00000000 },
{ 0x00600001, 0x2bb001ad, 0x00ae0440, 0x00000000 },
{ 0x00600001, 0x2bd001ad, 0x00ae0460, 0x00000000 },
{ 0x00600001, 0x2bf001ad, 0x00ae0480, 0x00000000 },
{ 0x00600001, 0x2c1001ad, 0x00ae04a0, 0x00000000 },
{ 0x00600001, 0x2c3001ad, 0x00ae04c0, 0x00000000 },
{ 0x00600001, 0x2c5001ad, 0x00ae04e0, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a48, 0x00800080 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00800001, 0x2c600169, 0x00000000, 0x00000000 },
{ 0x00800001, 0x2c800169, 0x00000000, 0x00000000 },
{ 0x00800001, 0x2ca00169, 0x00000000, 0x00000000 },
{ 0x00800001, 0x2cc00169, 0x00000000, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00800080 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000023 },
{ 0x00800001, 0x2c6001ad, 0x00ae0400, 0x00000000 },
{ 0x00800001, 0x2c8001ad, 0x00ae0440, 0x00000000 },
{ 0x00800001, 0x2ca001ad, 0x00ae0480, 0x00000000 },
{ 0x00800001, 0x2cc001ad, 0x00ae04c0, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a48, 0x00400040 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000005 },
{ 0x00800001, 0x2ce00169, 0x00000000, 0x00000000 },
{ 0x00800001, 0x2d000169, 0x00000000, 0x00000000 },
{ 0x00800001, 0x2d200169, 0x00000000, 0x00000000 },
{ 0x00800001, 0x2d400169, 0x00000000, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000016 },
{ 0x00800001, 0x2ce001ad, 0x00ae0400, 0x00000000 },
{ 0x00800001, 0x2d0001ad, 0x00ae0440, 0x00000000 },
{ 0x00800001, 0x2d2001ad, 0x00ae0480, 0x00000000 },
{ 0x00800001, 0x2d4001ad, 0x00ae04c0, 0x00000000 },
{ 0x00000040, 0x34000c20, 0x00210fc8, 0x00000020 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2e8025a5, 0x008d8000, 0x008d0e00 },
{ 0x00802041, 0x2e8024a5, 0x008d0e80, 0x008c0da0 },
{ 0x0080200c, 0x2e802ca5, 0x008d0e80, 0x00040004 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2ec025a5, 0x008d8000, 0x008d0e20 },
{ 0x00802041, 0x2ec024a5, 0x008d0ec0, 0x008c0da0 },
{ 0x0080200c, 0x2ec02ca5, 0x008d0ec0, 0x00040004 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2f0025a5, 0x008d8000, 0x008d0e40 },
{ 0x00802041, 0x2f0024a5, 0x008d0f00, 0x008c0da0 },
{ 0x0080200c, 0x2f002ca5, 0x008d0f00, 0x00040004 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2f4025a5, 0x008d8000, 0x008d0e60 },
{ 0x00802041, 0x2f4024a5, 0x008d0f40, 0x008c0da0 },
{ 0x0080200c, 0x2f402ca5, 0x008d0f40, 0x00040004 },
{ 0x00000040, 0x34000c20, 0x00210fa0, 0x00000020 },
{ 0x00000001, 0x2fc00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000001a },
{ 0x00802040, 0x24000ca5, 0x008d0400, 0x00000400 },
{ 0x00802040, 0x24400ca5, 0x008d0440, 0x00000400 },
{ 0x00802040, 0x24800ca5, 0x008d0480, 0x00000400 },
{ 0x00802040, 0x24c00ca5, 0x008d04c0, 0x00000400 },
{ 0x00802008, 0x24000ca5, 0x008d0400, 0x0000000b },
{ 0x00802008, 0x24400ca5, 0x008d0440, 0x0000000b },
{ 0x00802008, 0x24800ca5, 0x008d0480, 0x0000000b },
{ 0x00802008, 0x24c00ca5, 0x008d04c0, 0x0000000b },
{ 0x00800001, 0x2dc001ad, 0x00ae0400, 0x00000000 },
{ 0x00800001, 0x2de001ad, 0x00ae0440, 0x00000000 },
{ 0x00800001, 0x2e0001ad, 0x00ae0480, 0x00000000 },
{ 0x00800001, 0x2e2001ad, 0x00ae04c0, 0x00000000 },
{ 0x00000001, 0x2a000001, 0x00210200, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0db00da0 },
{ 0x00000001, 0x2fc00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00802040, 0x24000ca5, 0x008d0400, 0x00080000 },
{ 0x00802040, 0x24400ca5, 0x008d0440, 0x00080000 },
{ 0x00802040, 0x24800ca5, 0x008d0480, 0x00080000 },
{ 0x00802040, 0x24c00ca5, 0x008d04c0, 0x00080000 },
{ 0x00802008, 0x24000ca5, 0x008d0400, 0x00000014 },
{ 0x00802008, 0x24400ca5, 0x008d0440, 0x00000014 },
{ 0x00802008, 0x24800ca5, 0x008d0480, 0x00000014 },
{ 0x00802008, 0x24c00ca5, 0x008d04c0, 0x00000014 },
{ 0x00000001, 0x22000020, 0x00210a00, 0x00000000 },
{ 0x00000040, 0x34000c20, 0x00210fa0, 0x00000020 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x240014a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x242014a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x244014a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x246014a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x248014a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24a014a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24c014a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24e014a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x240814a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x242814a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x244814a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x246814a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x248814a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24a814a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24c814a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24e814a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x241014a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x243014a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x245014a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x247014a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x249014a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24b014a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24d014a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24f014a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x241814a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x243814a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x245814a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x247814a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x249814a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24b814a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24d814a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24f814a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x34000c20, 0x00210fc0, 0x00000020 },
/drivers/video/i965/shaders/mpeg2/vld/lib.g4b.gen5
0,0 → 1,307
{ 0x00000005, 0x2da02d29, 0x00210a48, 0x001f001f },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x00200020 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00090009 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000022 },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00110011 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000c },
{ 0x05000010, 0x20002d3c, 0x00210da0, 0x00190019 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000010 },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xffe7ffe7 },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00030003 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x00400040 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000012 },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xfff7fff7 },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00010001 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x000a000a },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00000040, 0x2da03d29, 0x00210da0, 0xffefffef },
{ 0x00000009, 0x2da02d29, 0x00210da0, 0x00020002 },
{ 0x00000040, 0x2da02d29, 0x00210da0, 0x001c001c },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000002 },
{ 0x00000009, 0x2da00d29, 0x00210da0, 0x00000001 },
{ 0x00000001, 0x2dc00129, 0x00210da0, 0x00000000 },
{ 0x00800001, 0x2e000229, 0x00b10060, 0x00000000 },
{ 0x00800001, 0x2e200229, 0x00b10070, 0x00000000 },
{ 0x00800001, 0x2e400229, 0x00b10080, 0x00000000 },
{ 0x00800001, 0x2e600229, 0x00b10090, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x03f003e0 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x08000800 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000c },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000142 },
{ 0x00800001, 0x270001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x272001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x274001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x276001ad, 0x00ae0f40, 0x00000000 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x04000400 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000c },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000132 },
{ 0x00800001, 0x278001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x27a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x27c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x27e001ad, 0x00ae0f40, 0x00000000 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x02000200 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000c },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000122 },
{ 0x00800001, 0x280001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x282001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x284001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x286001ad, 0x00ae0f40, 0x00000000 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x01000100 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000c },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000112 },
{ 0x00800001, 0x288001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x28a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x28c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x28e001ad, 0x00ae0f40, 0x00000000 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x00800080 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000c },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000102 },
{ 0x00800001, 0x290001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x292001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x294001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x296001ad, 0x00ae0f40, 0x00000000 },
{ 0x01000005, 0x20002d3c, 0x00210a48, 0x00400040 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000c },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000f2 },
{ 0x00800001, 0x298001ad, 0x00ae0e80, 0x00000000 },
{ 0x00800001, 0x29a001ad, 0x00ae0ec0, 0x00000000 },
{ 0x00800001, 0x29c001ad, 0x00ae0f00, 0x00000000 },
{ 0x00800001, 0x29e001ad, 0x00ae0f40, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x06f006e0 },
{ 0x02000005, 0x20002d3c, 0x00210a48, 0x08000800 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x00600001, 0x2a600169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2a800169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2aa00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2ac00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2ae00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b000169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b200169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b400169, 0x00000000, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00800080 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000ee },
{ 0x00600001, 0x2a6001ad, 0x00ae0400, 0x00000000 },
{ 0x00600001, 0x2a8001ad, 0x00ae0420, 0x00000000 },
{ 0x00600001, 0x2aa001ad, 0x00ae0440, 0x00000000 },
{ 0x00600001, 0x2ac001ad, 0x00ae0460, 0x00000000 },
{ 0x00600001, 0x2ae001ad, 0x00ae0480, 0x00000000 },
{ 0x00600001, 0x2b0001ad, 0x00ae04a0, 0x00000000 },
{ 0x00600001, 0x2b2001ad, 0x00ae04c0, 0x00000000 },
{ 0x00600001, 0x2b4001ad, 0x00ae04e0, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a48, 0x04000400 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x00600001, 0x2a700169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2a900169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2ab00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2ad00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2af00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b100169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b300169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b500169, 0x00000000, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00800080 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x000000c2 },
{ 0x00600001, 0x2a7001ad, 0x00ae0400, 0x00000000 },
{ 0x00600001, 0x2a9001ad, 0x00ae0420, 0x00000000 },
{ 0x00600001, 0x2ab001ad, 0x00ae0440, 0x00000000 },
{ 0x00600001, 0x2ad001ad, 0x00ae0460, 0x00000000 },
{ 0x00600001, 0x2af001ad, 0x00ae0480, 0x00000000 },
{ 0x00600001, 0x2b1001ad, 0x00ae04a0, 0x00000000 },
{ 0x00600001, 0x2b3001ad, 0x00ae04c0, 0x00000000 },
{ 0x00600001, 0x2b5001ad, 0x00ae04e0, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a48, 0x02000200 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x00600001, 0x2b600169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b800169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2ba00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2bc00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2be00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2c000169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2c200169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2c400169, 0x00000000, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00800080 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000096 },
{ 0x00600001, 0x2b6001ad, 0x00ae0400, 0x00000000 },
{ 0x00600001, 0x2b8001ad, 0x00ae0420, 0x00000000 },
{ 0x00600001, 0x2ba001ad, 0x00ae0440, 0x00000000 },
{ 0x00600001, 0x2bc001ad, 0x00ae0460, 0x00000000 },
{ 0x00600001, 0x2be001ad, 0x00ae0480, 0x00000000 },
{ 0x00600001, 0x2c0001ad, 0x00ae04a0, 0x00000000 },
{ 0x00600001, 0x2c2001ad, 0x00ae04c0, 0x00000000 },
{ 0x00600001, 0x2c4001ad, 0x00ae04e0, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a48, 0x01000100 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x00600001, 0x2b700169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2b900169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2bb00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2bd00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2bf00169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2c100169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2c300169, 0x00000000, 0x00000000 },
{ 0x00600001, 0x2c500169, 0x00000000, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00800080 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000006a },
{ 0x00600001, 0x2b7001ad, 0x00ae0400, 0x00000000 },
{ 0x00600001, 0x2b9001ad, 0x00ae0420, 0x00000000 },
{ 0x00600001, 0x2bb001ad, 0x00ae0440, 0x00000000 },
{ 0x00600001, 0x2bd001ad, 0x00ae0460, 0x00000000 },
{ 0x00600001, 0x2bf001ad, 0x00ae0480, 0x00000000 },
{ 0x00600001, 0x2c1001ad, 0x00ae04a0, 0x00000000 },
{ 0x00600001, 0x2c3001ad, 0x00ae04c0, 0x00000000 },
{ 0x00600001, 0x2c5001ad, 0x00ae04e0, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a48, 0x00800080 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000c },
{ 0x00800001, 0x2c600169, 0x00000000, 0x00000000 },
{ 0x00800001, 0x2c800169, 0x00000000, 0x00000000 },
{ 0x00800001, 0x2ca00169, 0x00000000, 0x00000000 },
{ 0x00800001, 0x2cc00169, 0x00000000, 0x00000000 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00800080 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000c },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000046 },
{ 0x00800001, 0x2c6001ad, 0x00ae0400, 0x00000000 },
{ 0x00800001, 0x2c8001ad, 0x00ae0440, 0x00000000 },
{ 0x00800001, 0x2ca001ad, 0x00ae0480, 0x00000000 },
{ 0x00800001, 0x2cc001ad, 0x00ae04c0, 0x00000000 },
{ 0x02000005, 0x20002d3c, 0x00210a48, 0x00400040 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00800001, 0x2ce00169, 0x00000000, 0x00000000 },
{ 0x00800001, 0x2d000169, 0x00000000, 0x00000000 },
{ 0x00800001, 0x2d200169, 0x00000000, 0x00000000 },
{ 0x00800001, 0x2d400169, 0x00000000, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000c },
{ 0x00000001, 0x2fa00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000002c },
{ 0x00800001, 0x2ce001ad, 0x00ae0400, 0x00000000 },
{ 0x00800001, 0x2d0001ad, 0x00ae0440, 0x00000000 },
{ 0x00800001, 0x2d2001ad, 0x00ae0480, 0x00000000 },
{ 0x00800001, 0x2d4001ad, 0x00ae04c0, 0x00000000 },
{ 0x00000040, 0x34000c20, 0x00210fc8, 0x00000020 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2e8025a5, 0x008d8000, 0x008d0e00 },
{ 0x00802041, 0x2e8024a5, 0x008d0e80, 0x008c0da0 },
{ 0x0080200c, 0x2e802ca5, 0x008d0e80, 0x00040004 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2ec025a5, 0x008d8000, 0x008d0e20 },
{ 0x00802041, 0x2ec024a5, 0x008d0ec0, 0x008c0da0 },
{ 0x0080200c, 0x2ec02ca5, 0x008d0ec0, 0x00040004 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2f0025a5, 0x008d8000, 0x008d0e40 },
{ 0x00802041, 0x2f0024a5, 0x008d0f00, 0x008c0da0 },
{ 0x0080200c, 0x2f002ca5, 0x008d0f00, 0x00040004 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802041, 0x2f4025a5, 0x008d8000, 0x008d0e60 },
{ 0x00802041, 0x2f4024a5, 0x008d0f40, 0x008c0da0 },
{ 0x0080200c, 0x2f402ca5, 0x008d0f40, 0x00040004 },
{ 0x00000040, 0x34000c20, 0x00210fa0, 0x00000020 },
{ 0x00000001, 0x2fc00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00802040, 0x24000ca5, 0x008d0400, 0x00000400 },
{ 0x00802040, 0x24400ca5, 0x008d0440, 0x00000400 },
{ 0x00802040, 0x24800ca5, 0x008d0480, 0x00000400 },
{ 0x00802040, 0x24c00ca5, 0x008d04c0, 0x00000400 },
{ 0x00802008, 0x24000ca5, 0x008d0400, 0x0000000b },
{ 0x00802008, 0x24400ca5, 0x008d0440, 0x0000000b },
{ 0x00802008, 0x24800ca5, 0x008d0480, 0x0000000b },
{ 0x00802008, 0x24c00ca5, 0x008d04c0, 0x0000000b },
{ 0x00800001, 0x2dc001ad, 0x00ae0400, 0x00000000 },
{ 0x00800001, 0x2de001ad, 0x00ae0440, 0x00000000 },
{ 0x00800001, 0x2e0001ad, 0x00ae0480, 0x00000000 },
{ 0x00800001, 0x2e2001ad, 0x00ae04c0, 0x00000000 },
{ 0x00000001, 0x2a000001, 0x00210200, 0x00000000 },
{ 0x00000001, 0x22000060, 0x00000000, 0x0db00da0 },
{ 0x00000001, 0x2fc00001, 0x00001400, 0x00000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000014 },
{ 0x00802040, 0x24000ca5, 0x008d0400, 0x00080000 },
{ 0x00802040, 0x24400ca5, 0x008d0440, 0x00080000 },
{ 0x00802040, 0x24800ca5, 0x008d0480, 0x00080000 },
{ 0x00802040, 0x24c00ca5, 0x008d04c0, 0x00080000 },
{ 0x00802008, 0x24000ca5, 0x008d0400, 0x00000014 },
{ 0x00802008, 0x24400ca5, 0x008d0440, 0x00000014 },
{ 0x00802008, 0x24800ca5, 0x008d0480, 0x00000014 },
{ 0x00802008, 0x24c00ca5, 0x008d04c0, 0x00000014 },
{ 0x00000001, 0x22000020, 0x00210a00, 0x00000000 },
{ 0x00000040, 0x34000c20, 0x00210fa0, 0x00000020 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x240014a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x242014a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x244014a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x246014a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x248014a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24a014a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24c014a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24e014a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x240814a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x242814a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x244814a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x246814a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x248814a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24a814a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24c814a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24e814a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x241014a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x243014a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x245014a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x247014a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x249014a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24b014a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24d014a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24f014a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x22000c00, 0x00210200, 0x00200020 },
{ 0x00802054, 0x250015a5, 0x008d8000, 0x008d00a0 },
{ 0x00802054, 0x254015a5, 0x008d8000, 0x008d00e0 },
{ 0x00802054, 0x258015a5, 0x008d8000, 0x008d0120 },
{ 0x00802054, 0x25c015a5, 0x008d8000, 0x008d0160 },
{ 0x00802054, 0x260015a5, 0x008d8000, 0x008d01a0 },
{ 0x00802054, 0x264015a5, 0x008d8000, 0x008d01e0 },
{ 0x00802054, 0x268015a5, 0x008d8000, 0x008d0220 },
{ 0x00802054, 0x26c015a5, 0x008d8000, 0x008d0260 },
{ 0x00200040, 0x241814a5, 0x00800500, 0x00800510 },
{ 0x00200040, 0x243814a5, 0x00800540, 0x00800550 },
{ 0x00200040, 0x245814a5, 0x00800580, 0x00800590 },
{ 0x00200040, 0x247814a5, 0x008005c0, 0x008005d0 },
{ 0x00200040, 0x249814a5, 0x00800600, 0x00800610 },
{ 0x00200040, 0x24b814a5, 0x00800640, 0x00800650 },
{ 0x00200040, 0x24d814a5, 0x00800680, 0x00800690 },
{ 0x00200040, 0x24f814a5, 0x008006c0, 0x008006d0 },
{ 0x00000040, 0x34000c20, 0x00210fc0, 0x00000020 },
/drivers/video/i965/shaders/post_processing/gen5_6/Common/AYUV_Load_16x8.asm
0,0 → 1,53
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: AYUV_Load_16x8.asm
//----------------------------------------------------------------
 
 
#include "AYUV_Load_16x8.inc"
 
// In order to load 64x8 AYUV data (16x8 pixels), we need to divide the data
// into two regions and load them separately.
//
// 32 byte 32 byte
//|----------------|----------------|
//| | |
//| A | B |8
//| | |
//| | |
//|----------------|----------------|
 
// Load the first 32x8 data block
// Packed data block should be loaded as 32x8 pixel block
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Block origin
shl (1) rMSGSRC.0<1>:d acc0:w 2:w { NoDDClr } // H. block origin need to be four times larger
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_YUV:ud { NoDDChk } // Block width and height (32x8)
mov (8) mMSGHDRY<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_YUV(0)<1> mMSGHDRY udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_YUV+nBI_CURRENT_SRC_YUV:ud
 
//Load the second 32x8 data block
// Offset the origin X - move to next 32 colomns
add (1) rMSGSRC.0<1>:d rMSGSRC.0<0;1,0>:d 32:w // Increase X origin by 8
// Size stays the same - 32x8
mov (8) mMSGHDRY<1>:ud rMSGSRC<8;8,1>:ud // Copy message description to message header
send (8) udSRC_YUV(8)<1> mMSGHDRY udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_YUV+nBI_CURRENT_SRC_YUV:ud
 
// Give AYUV region addresses to address register
mov (1) SRC_YUV_OFFSET<1>:ud 0x00400038*32:ud //Address registers contain starting addresses of two halves
//Directly move the data to destination
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (16) uwDEST_Y(%1)<1> r[SRC_YUV_OFFSET,%1*32+2]<8,4>:ub
mov (16) uwDEST_U(%1)<1> r[SRC_YUV_OFFSET,%1*32+1]<8,4>:ub
mov (16) uwDEST_V(%1)<1> r[SRC_YUV_OFFSET,%1*32+0]<8,4>:ub
}
/drivers/video/i965/shaders/post_processing/gen5_6/Common/AYUV_Load_16x8.inc
0,0 → 1,43
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: AYUV_Load_16x8.inc
//
// AYUV data are first loaded to bottom I/O REGION_2, then unpacked to planar data
// and stored in top I/O REGION_1
 
#undef nY_NUM_OF_ROWS
 
#define nY_NUM_OF_ROWS 8 // Number of Y rows per block
 
#define nDPR_BLOCK_SIZE_YUV nBLOCK_WIDTH_32+nBLOCK_HEIGHT_8 // Y block size 32x8
#define nDPR_MSG_SIZE_YUV nRESLEN_8 // # of MRF's to hold Y block data (8)
 
//Temporary storage for unpacked AYUV data
#define rUNPACK_TEMP REG(r,nTEMP0)
.declare udUNPACK_TEMP Base=rUNPACK_TEMP ElementSize=4 SrcRegion=<8;8,1> Type=ud //1 GRF
.declare ubUNPACK_TEMP Base=rUNPACK_TEMP ElementSize=1 SrcRegion=<32;32,1> Type=ub //1 GRF
 
.declare ubBOT_Y_IO Base=REG(r,nBOT_Y) ElementSize=1 SrcRegion=REGION(32,1) Type=ub
 
 
#define udSRC_YUV udBOT_Y_IO
#define ubSRC_YUV ubBOT_Y_IO
#define nSRC_YUV_REG nBOT_Y
 
#define uwDEST_Y uwTOP_Y
#define uwDEST_U uwTOP_U
#define uwDEST_V uwTOP_V
 
#define SRC_YUV_OFFSET a0.0
 
#define nSRC_REGION nREGION_1 // REGION_1 will be the source region for first kernel
 
// End of AYUV_Load_16x8.inc
/drivers/video/i965/shaders/post_processing/gen5_6/Common/Expansion.inc
0,0 → 1,31
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: Expansion.inc
// Number of U/V rows per block definition
#undef nUV_NUM_OF_ROWS
#ifdef EXPAND_9x5
#define nUV_NUM_OF_ROWS 6
#else
#define nUV_NUM_OF_ROWS 8
#endif
 
// Source/destination region definitions
#undef uwDEST_U
#undef uwDEST_V
#if (nSRC_REGION==nREGION_1)
#define uwDEST_U uwTOP_U
#define uwDEST_V uwTOP_V
#elif (nSRC_REGION==nREGION_2)
#define uwDEST_U uwBOT_U
#define uwDEST_V uwBOT_V
#endif
 
// End of Expansion.inc
/drivers/video/i965/shaders/post_processing/gen5_6/Common/IMC3_Load_8x4.asm
0,0 → 1,47
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: IMC3_Load_8x4.asm
//
//----------------------------------------------------------------
 
#define IMC3_LOAD_8x4
#include "PL3_Load.inc"
 
// Load 16x8 planar Y ----------------------------------------------------------
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Y Block origin
#if !defined(LOAD_UV_ONLY)
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_Y:ud // Block width and height (16x8)
 
mov (8) mMSGHDRY<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_Y(0)<1> mMSGHDRY udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_Y+nBI_CURRENT_SRC_Y:ud
#endif
 
// Load 8x4 planar U and V -----------------------------------------------------
asr (2) rMSGSRC.0<1>:d rMSGSRC.0<2;2,1>:d 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_UV:ud // U/V block width and height (8x4)
 
mov (8) mMSGHDRU<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_U(0)<1> mMSGHDRU udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_CURRENT_SRC_U:ud
mov (8) mMSGHDRV<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_V(0)<1> mMSGHDRU udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_CURRENT_SRC_V:ud
 
// Convert to word-aligned format ----------------------------------------------
#if !defined(LOAD_UV_ONLY)
$for (nY_NUM_OF_ROWS-1; >-1; -1) {
mov (16) uwDEST_Y(0,%1*16)<1> ubSRC_Y(0,%1*16)
}
#endif
$for (nUV_NUM_OF_ROWS/2-1; >-1; -1) {
mov (16) uwDEST_U(0, %1*16)<1> ubSRC_U(0, %1*16)
mov (16) uwDEST_V(0, %1*16)<1> ubSRC_V(0, %1*16)
}
 
// End of IMC3_Load_8x4
/drivers/video/i965/shaders/post_processing/gen5_6/Common/IMC3_Load_8x5.asm
0,0 → 1,47
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: IMC3_Load_8x5.asm
//
//----------------------------------------------------------------
 
#define IMC3_LOAD_8x5
#include "PL3_Load.inc"
 
// Load 16x8 planar Y ----------------------------------------------------------
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Y Block origin
#if !defined(LOAD_UV_ONLY)
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_Y:ud // Block width and height (16x8)
 
mov (8) mMSGHDRY<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_Y(0)<1> mMSGHDRY udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_Y+nBI_CURRENT_SRC_Y:ud
#endif
 
// Load 8x5 planar U and V -----------------------------------------------------
asr (2) rMSGSRC.0<1>:d rMSGSRC.0<2;2,1>:d 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_UV:ud // U/V block width and height (8x5)
 
mov (8) mMSGHDRU<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_U(0)<1> mMSGHDRU udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_CURRENT_SRC_U:ud
mov (8) mMSGHDRV<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_V(0)<1> mMSGHDRU udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_CURRENT_SRC_V:ud
 
// Convert to word-aligned format ----------------------------------------------
#if !defined(LOAD_UV_ONLY)
$for (nY_NUM_OF_ROWS-1; >-1; -1) {
mov (16) uwDEST_Y(0,%1*16)<1> ubSRC_Y(0,%1*16)
}
#endif
$for (nUV_NUM_OF_ROWS/2-1; >-1; -1) {
mov (16) uwDEST_U(0, %1*16)<1> ubSRC_U(0, %1*16)
mov (16) uwDEST_V(0, %1*16)<1> ubSRC_V(0, %1*16)
}
 
// End of IMC3_Load_8x5
/drivers/video/i965/shaders/post_processing/gen5_6/Common/IMC3_Load_9x5.asm
0,0 → 1,50
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: IMC3_Load_9x5.asm
//
//----------------------------------------------------------------
// This module loads 16x8 Y, 9x5 U and 9x5 V planar data blocks for CSC module
// and stores it in byte-aligned format.
//----------------------------------------------------------------
 
#define IMC3_LOAD_9x5
#include "PL3_Load.inc"
 
// Load 16x8 planar Y ----------------------------------------------------------
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Y Block origin
#if !defined(LOAD_UV_ONLY)
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_Y:ud // Block width and height (16x8)
 
mov (8) mMSGHDRY<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_Y(0)<1> mMSGHDRY udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_Y+nBI_CURRENT_SRC_Y:ud
#endif
 
// Load 9x5 planar U and V -----------------------------------------------------
asr (2) rMSGSRC.0<1>:d rMSGSRC.0<2;2,1>:d 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_UV:ud // U/V block width and height (12x5)
 
mov (8) mMSGHDRU<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_U(0)<1> mMSGHDRU udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_CURRENT_SRC_U:ud
mov (8) mMSGHDRV<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_V(0)<1> mMSGHDRU udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_CURRENT_SRC_V:ud
 
// Convert to word-aligned format ----------------------------------------------
#if !defined(LOAD_UV_ONLY)
$for (nY_NUM_OF_ROWS-1; >-1; -1) {
mov (16) uwDEST_Y(0,%1*16)<1> ubSRC_Y(0,%1*16)
}
#endif
$for(nUV_NUM_OF_ROWS-2; >-1; -1) {
mov (16) uwDEST_U(0, %1*16)<1> ubSRC_U(0, %1*16)
mov (16) uwDEST_V(0, %1*16)<1> ubSRC_V(0, %1*16)
}
 
// End of IMC3_Load_9x5
/drivers/video/i965/shaders/post_processing/gen5_6/Common/Init_All_Regs.asm
0,0 → 1,18
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
#ifdef GT // to remove error messages of un-initialized GRF
.declare udGRF_space Base=r0.0 ElementSize=4 SrcRegion=REGION(8,1) Type=ud
 
$for (7; <80; 1) {
mov (8) udGRF_space(%1)<1> 0:ud
}
#else
#endif
/drivers/video/i965/shaders/post_processing/gen5_6/Common/Multiple_Loop.asm
0,0 → 1,84
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
/////////////////////////////////////////////////////////////////////////////////
// Multiple_Loop.asm
 
 
// This lable is for satisfying component kernel build.
// DL will remove this label and reference the real one in Multiple_Loop_Head.asm.
#if defined(COMPONENT)
VIDEO_PROCESSING_LOOP:
#endif
 
 
//===== Possible build flags for component kernels
// 1) INC_SCALING
// 2) INC_BLENDING
// 3) INC_BLENDING and INC_SCALING
// 4) (no flags)
 
 
#define MxN_MULTIPLE_BLOCKS
 
//------------------------------------------------------------------------------
#if defined(MxN_MULTIPLE_BLOCKS)
// Do Multiple Block Processing ------------------------------------------------
 
// The 1st block has been processed before entering the loop
 
// Processed all blocks?
add.z.f0.0 (1) wNUM_BLKS:w wNUM_BLKS:w -1:w
 
// Reached multi-block width?
add (1) wORIX:w wORIX:w 16:w
cmp.l.f0.1 (1) null:w wORIX:w wFRAME_ENDX:w // acc0.0 has wORIX
 
#if defined(INC_SCALING)
// Update SRC_VID_H_ORI for scaling
mul (1) REG(r,nTEMP0):f fVIDEO_STEP_X:f 16.0:f
add (1) fSRC_VID_H_ORI:f REG(r,nTEMP0):f fSRC_VID_H_ORI:f
#endif
 
#if defined(INC_BLENDING)
// Update SRC_ALPHA_H_ORI for blending
mul (1) REG(r,nTEMP0):f fALPHA_STEP_X:f 16.0:f
add (1) fSRC_ALPHA_H_ORI:f REG(r,nTEMP0):f fSRC_ALPHA_H_ORI:f
#endif
 
(f0.0)jmpi (1) END_VIDEO_PROCESSING // All blocks are done - Exit loop
 
(f0.1)jmpi (1) VIDEO_PROCESSING_LOOP // If not the end of row, goto the beginning of the loop
 
//If end of row, restart Horizontal offset and calculate Vertical offsets next row.
mov (1) wORIX:w wCOPY_ORIX:w
add (1) wORIY:w wORIY:w 8:w
 
#if defined(INC_SCALING)
// Update SRC_VID_H_ORI and SRC_VID_V_ORI for scaling
mov (1) fSRC_VID_H_ORI:f fFRAME_VID_ORIX:f // Reset normalised X origin to 0 for video and alpha
mul (1) REG(r,nTEMP0):f fVIDEO_STEP_Y:f 8.0:f
add (1) fSRC_VID_V_ORI:f REG(r,nTEMP0):f fSRC_VID_V_ORI:f
#endif
 
#if defined(INC_BLENDING)
// Update SRC_ALPHA_H_ORI and SRC_ALPHA_V_ORI for blending
mov (1) fSRC_ALPHA_H_ORI:f fFRAME_ALPHA_ORIX:f // Reset normalised X origin to 0 for video and alpha
mul (1) REG(r,nTEMP0):f fALPHA_STEP_Y:f 8.0:f
add (1) fSRC_ALPHA_V_ORI:f REG(r,nTEMP0):f fSRC_ALPHA_V_ORI:f
#endif
 
jmpi (1) VIDEO_PROCESSING_LOOP // Continue Loop
 
END_VIDEO_PROCESSING:
nop
 
#endif
END_THREAD // End of Thread
/drivers/video/i965/shaders/post_processing/gen5_6/Common/Multiple_Loop_Head.asm
0,0 → 1,23
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//////////////////////////////////////////////////////////////////////////////////
// Multiple_Loop_Head.asm
// This code sets up the loop control for multiple blocks per thread
 
mul (1) wFRAME_ENDX:w ubBLK_CNT_X:ub 16:uw { NoDDClr } // Build multi-block loop counters
mov (1) wNUM_BLKS:w ubNUM_BLKS:ub { NoDDClr, NoDDChk } // Copy num blocks to word variable
mov (1) wCOPY_ORIX:w wORIX:w { NoDDChk } // Copy multi-block origin in pixel
mov (2) fFRAME_VID_ORIX<1>:f fSRC_VID_H_ORI<4;2,2>:f // Copy src video origin for scaling, and alpha origin for blending
add (1) wFRAME_ENDX:w wFRAME_ENDX:w wORIX:w // Continue building multi-block loop counters
 
VIDEO_PROCESSING_LOOP: // Loop back entry point as the biginning of the loop for multiple blocks
// Beginning of the loop
/drivers/video/i965/shaders/post_processing/gen5_6/Common/NV11_Load_4x8.asm
0,0 → 1,42
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: NV11_Load_4x8.asm
//----------------------------------------------------------------
 
#define NV11_LOAD_4x8
#include "PL2_Load.inc"
 
// Load 16x8 NV11 Y ------------------------------------------------------------
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Y Block origin
#if !defined(LOAD_UV_ONLY)
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_Y:ud // Y block width and height (16x8)
mov (8) mMSGHDRY<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_Y(0)<1> mMSGHDRY udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_Y+nBI_CURRENT_SRC_Y:ud
#endif
 
// Load 8x8 NV11 UV ----------------------------------------------------------
asr (1) rMSGSRC.0<1>:d rMSGSRC.0<0;1,0>:d 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_UV:ud // U/V block width and height (8x8)
mov (8) mMSGHDRU<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_U(0)<1> mMSGHDRU udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_CURRENT_SRC_UV:ud
 
// Convert to word-aligned format ----------------------------------------------
#if !defined(LOAD_UV_ONLY)
$for (nY_NUM_OF_ROWS-1; >-1; -1) {
mov (16) uwDEST_Y(0,%1*16)<1> ubSRC_Y(0,%1*16)
}
#endif
$for (nUV_NUM_OF_ROWS/4-1; >-1; -1) {
mov (16) uwDEST_U(0,%1*16)<1> ubSRC_U(0,%1*32)<32;16,2>
mov (16) uwDEST_V(0,%1*16)<1> ubSRC_U(0,%1*32+1)<32;16,2>
}
 
// End of NV11_Load_4x8
/drivers/video/i965/shaders/post_processing/gen5_6/Common/NV11_Load_5x8.asm
0,0 → 1,42
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: NV11_Load_5x8.asm
//----------------------------------------------------------------
 
#define NV11_LOAD_5x8
#include "PL2_Load.inc"
 
// Load 16x8 NV11 Y ------------------------------------------------------------
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Y Block origin
#if !defined(LOAD_UV_ONLY)
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_Y:ud // Y block width and height (16x8)
mov (8) mMSGHDRY<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_Y(0)<1> mMSGHDRY udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_Y+nBI_CURRENT_SRC_Y:ud
#endif
 
// Load 12x8 NV11 UV ---------------------------------------------------------
asr (1) rMSGSRC.0<1>:d rMSGSRC.0<0;1,0>:d 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_UV:ud // U/V block width and height (12x8)
mov (8) mMSGHDRU<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_U(0)<1> mMSGHDRU udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_CURRENT_SRC_UV:ud
 
// Convert to word-aligned format ----------------------------------------------
#if !defined(LOAD_UV_ONLY)
$for (nY_NUM_OF_ROWS-1; >-1; -1) {
mov (16) uwDEST_Y(0,%1*16)<1> ubSRC_Y(0,%1*16)
}
#endif
$for (nUV_NUM_OF_ROWS/2-1; >-1; -1) {
mov (16) uwDEST_U(0,%1*16)<1> ubSRC_U(0,%1*32)<16;8,2>
mov (16) uwDEST_V(0,%1*16)<1> ubSRC_U(0,%1*32+1)<16;8,2>
}
 
// End of NV11_Load_5x8
/drivers/video/i965/shaders/post_processing/gen5_6/Common/NV12_Load_8x4.asm
0,0 → 1,42
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: NV12_Load_8x4.asm
//----------------------------------------------------------------
 
#define NV12_LOAD_8x4
#include "PL2_Load.inc"
 
// Load 16x8 planar Y ----------------------------------------------------------
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Y Block origin
#if !defined(LOAD_UV_ONLY)
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_Y:ud // Y block width and height (16x8)
mov (8) mMSGHDRY<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_Y(0)<1> mMSGHDRY udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_Y+nBI_CURRENT_SRC_Y:ud
#endif
 
// Load 8x4 planar U and V -----------------------------------------------------
asr (1) rMSGSRC.1<1>:d rMSGSRC.1<0;1,0>:d 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_UV:ud // U/V block width and height (16x4)
mov (8) mMSGHDRU<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_U(0)<1> mMSGHDRU udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_CURRENT_SRC_UV:ud
 
// Convert to word-aligned format ----------------------------------------------
#if !defined(LOAD_UV_ONLY)
$for (nY_NUM_OF_ROWS-1; >-1; -1) {
mov (16) uwDEST_Y(0,%1*16)<1> ubSRC_Y(0,%1*16)
}
#endif
$for (nUV_NUM_OF_ROWS/2-1; >-1; -1) {
mov (16) uwDEST_U(0,%1*16)<1> ubSRC_U(0,%1*32)<32;16,2>
mov (16) uwDEST_V(0,%1*16)<1> ubSRC_U(0,%1*32+1)<32;16,2>
}
 
// End of NV12_Load_8x4
/drivers/video/i965/shaders/post_processing/gen5_6/Common/NV12_Load_8x5.asm
0,0 → 1,42
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: NV12_Load_8x5.asm
//----------------------------------------------------------------
 
#define NV12_LOAD_8x5
#include "PL2_Load.inc"
 
// Load 16x8 planar Y ----------------------------------------------------------
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Y Block origin
#if !defined(LOAD_UV_ONLY)
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_Y:ud // Y block width and height (16x8)
mov (8) mMSGHDRY<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_Y(0)<1> mMSGHDRY udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_Y+nBI_CURRENT_SRC_Y:ud
#endif
 
// Load 8x5 planar U and V -----------------------------------------------------
asr (1) rMSGSRC.1<1>:d rMSGSRC.1<0;1,0>:d 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_UV:ud // U/V block width and height (16x5)
mov (8) mMSGHDRU<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_U(0)<1> mMSGHDRU udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_CURRENT_SRC_UV:ud
 
// Convert to word-aligned format ----------------------------------------------
#if !defined(LOAD_UV_ONLY)
$for (nY_NUM_OF_ROWS-1; >-1; -1) {
mov (16) uwDEST_Y(0,%1*16)<1> ubSRC_Y(0,%1*16)
}
#endif
$for (nUV_NUM_OF_ROWS/2-1; >-1; -1) {
mov (16) uwDEST_U(0,%1*16)<1> ubSRC_U(0,%1*32)<16;8,2>
mov (16) uwDEST_V(0,%1*16)<1> ubSRC_U(0,%1*32+1)<16;8,2>
}
 
// End of NV12_Load_8x5
/drivers/video/i965/shaders/post_processing/gen5_6/Common/NV12_Load_9x5.asm
0,0 → 1,42
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: NV12_Load_9x5.asm
//----------------------------------------------------------------
 
#define NV12_LOAD_9x5
#include "PL2_Load.inc"
 
// Load 16x8 planar Y ----------------------------------------------------------
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Y Block origin
#if !defined(LOAD_UV_ONLY)
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_Y:ud // Y block width and height (16x8)
mov (8) mMSGHDRY<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_Y(0)<1> mMSGHDRY udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_Y+nBI_CURRENT_SRC_Y:ud
#endif
 
// Load 9x5 planar U and V -----------------------------------------------------
asr (1) rMSGSRC.1<1>:d rMSGSRC.1<0;1,0>:d 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_UV:ud // U/V block width and height (20x5)
mov (8) mMSGHDRU<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_U(0)<1> mMSGHDRU udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_CURRENT_SRC_UV:ud
 
// Convert to word-aligned format ----------------------------------------------
#if !defined(LOAD_UV_ONLY)
$for (nY_NUM_OF_ROWS-1; >-1; -1) {
mov (16) uwDEST_Y(0,%1*16)<1> ubSRC_Y(0,%1*16)
}
#endif
$for(nUV_NUM_OF_ROWS-2; >-1; -1) {
mov (16) uwDEST_U(0,%1*16)<1> ubSRC_U(0,%1*32)<16;8,2>
mov (16) uwDEST_V(0,%1*16)<1> ubSRC_U(0,%1*32+1)<16;8,2>
}
 
// End of NV12_Load_9x5
/drivers/video/i965/shaders/post_processing/gen5_6/Common/P208_Load_8x8.asm
0,0 → 1,41
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: P208_Load_8x8.asm
//----------------------------------------------------------------
 
#define P208_LOAD_8x8
#include "PL2_Load.inc"
 
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Y Block origin
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_Y:ud // Y Block width and height (16x8) (U/V block size is the same)
 
// Load 16x8 P208 Y ------------------------------------------------------------
#if !defined(LOAD_UV_ONLY)
mov (8) mMSGHDRY<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_Y(0)<1> mMSGHDRY udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_Y+nBI_CURRENT_SRC_Y:ud
#endif
 
// Load 16x8 planar UV -----------------------------------------------------
mov (8) mMSGHDRU<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_U(0)<1> mMSGHDRU udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_CURRENT_SRC_UV:ud
 
// Convert to word-aligned format ----------------------------------------------
#if !defined(LOAD_UV_ONLY)
$for (0; <nY_NUM_OF_ROWS; 1) {
mov (16) uwDEST_Y(0,%1*16) ubSRC_Y(0,%1*16)
}
#endif
$for (0; <nUV_NUM_OF_ROWS/2; 1) {
mov (16) uwDEST_U(0,%1*16) ubSRC_U(0,%1*32)<32;16,2>
mov (16) uwDEST_V(0,%1*16) ubSRC_U(0,%1*32+1)<32;16,2>
}
 
// End of P208_Load_8x8.asm
/drivers/video/i965/shaders/post_processing/gen5_6/Common/P208_Load_9x8.asm
0,0 → 1,42
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: P208_Load_9x8.asm
//----------------------------------------------------------------
 
#define P208_LOAD_9x8
#include "PL2_Load.inc"
 
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Y Block origin
 
// Load 16x8 P208 Y ------------------------------------------------------------
#if !defined(LOAD_UV_ONLY)
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_Y:ud // Y block width and height (16x8)
mov (8) mMSGHDRY<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_Y(0)<1> mMSGHDRY udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_Y+nBI_CURRENT_SRC_Y:ud
#endif
 
// Load 16x8 planar UV -----------------------------------------------------
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_UV:ud // U/V block width and height (20x8)
mov (8) mMSGHDRU<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_U(0)<1> mMSGHDRU udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_CURRENT_SRC_UV:ud
 
// Convert to word-aligned format ----------------------------------------------
#if !defined(LOAD_UV_ONLY)
$for (0; <nY_NUM_OF_ROWS; 1) {
mov (16) uwDEST_Y(0,%1*16) ubSRC_Y(0,%1*16)
}
#endif
$for (0; <nUV_NUM_OF_ROWS; 1) {
mov (16) uwDEST_U(0,%1*16) ubSRC_U(0,%1*32)<32;16,2>
mov (16) uwDEST_V(0,%1*16) ubSRC_U(0,%1*32+1)<32;16,2>
}
 
// End of P208_Load_9x8.asm
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PA_Load.inc
0,0 → 1,42
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PA_Load.inc
//
// YUV422 data are first loaded to bottom I/O REGION_2, then unpacked to planar data
// and stored in top I/O REGION_1
 
#undef nY_NUM_OF_ROWS
#undef nUV_NUM_OF_ROWS
 
#define nY_NUM_OF_ROWS 8 // Number of Y rows per block
#define nUV_NUM_OF_ROWS 8 // Number of U/V rows per block
 
#if defined(PA_LOAD_8x8)
#define nDPR_BLOCK_SIZE_YUV nBLOCK_WIDTH_32+nBLOCK_HEIGHT_8 // Y block size 32x8
#define nDPR_MSG_SIZE_YUV nRESLEN_8 // # of MRF's to hold Y block data (8)
#endif
#if defined(PA_LOAD_9x8)
#define nDPR_BLOCK_SIZE_YUV_MAIN nBLOCK_WIDTH_32+nBLOCK_HEIGHT_8 // Main YUV block size 32x8
#define nDPR_MSG_SIZE_YUV_MAIN nRESLEN_8 // # of MRF's to hold Y block data (8)
#define nDPR_BLOCK_SIZE_YUV_ADDITION nBLOCK_WIDTH_4+nBLOCK_HEIGHT_8 // Additional YUV block size 4x8
#define nDPR_MSG_SIZE_YUV_ADDITION nRESLEN_1 // # of MRF's to hold Y block data (8)
#endif
 
#define udSRC_YUV udBOT_Y_IO
#define nSRC_YUV_REG nBOT_Y
 
#define uwDEST_Y uwTOP_Y
#define uwDEST_U uwTOP_U
#define uwDEST_V uwTOP_V
 
#define nSRC_REGION nREGION_1 // REGION_1 will be the source region for first kernel
 
// End of PA_Load.inc
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PA_Load_8x8.asm
0,0 → 1,33
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PA_Load_8x8.asm
//----------------------------------------------------------------
 
#define PA_LOAD_8x8
#include "PA_Load.inc"
 
// Load 16x8 packed data block
// Packed data block should be loaded as 32x8 pixel block
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Block origin
shl (1) rMSGSRC.0<1>:d rMSGSRC.0<0;1,0>:w 1:w // H. block origin need to be doubled
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_YUV:ud // Block width and height (32x8)
mov (8) mMSGHDRY<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_YUV(0)<1> mMSGHDRY udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_YUV+nBI_CURRENT_SRC_YUV:ud
 
// Unpack to "planar" YUV422 format in word-aligned bytes
add (4) pCF_Y_OFFSET<1>:uw ubSRC_CF_OFFSET<4;4,1>:ub nSRC_YUV_REG*nGRFWIB:w // Initial Y,U,V offset in YUV422 block
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (16) uwDEST_Y(0, %1*16)<1> r[pCF_Y_OFFSET, %1*nGRFWIB]REGION(16,2)
mov (8) uwDEST_U(0, %1*8)<1> r[pCF_U_OFFSET, %1*nGRFWIB]REGION(8,4)
mov (8) uwDEST_V(0, %1*8)<1> r[pCF_V_OFFSET, %1*nGRFWIB]REGION(8,4)
}
 
// End of PA_Load_8x8
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PA_Load_9x8.asm
0,0 → 1,47
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PA_Load_9x8.asm
//----------------------------------------------------------------
// This module loads 16x8 Y, 9x8 U and 9x8 V planar data blocks for CSC module
// and stores it in word-aligned format.
//----------------------------------------------------------------
 
#define PA_LOAD_9x8
#include "PA_Load.inc"
 
// Load 18x8 packed data block
// Packed data block should be loaded as 36x8 pixel block
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Block origin
shl (1) rMSGSRC.0<1>:d acc0:w 1:w // H. block origin need to be doubled
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_YUV_MAIN:ud // Block width and height (32x8)
mov (8) mMSGHDRY<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_YUV(0)<1> mMSGHDRY udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_YUV_MAIN+nBI_CURRENT_SRC_YUV:ud
 
add (1) rMSGSRC.0<1>:d rMSGSRC.0:d 32:w //the last 4 pixels are read again for optimization
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_YUV_ADDITION:ud // Block width and height (4x8)
mov (8) mMSGHDRY<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_YUV(8)<1> mMSGHDRY udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_YUV_ADDITION+nBI_CURRENT_SRC_YUV:ud
 
// Unpack to "planar" YUV422 format in word-aligned bytes
add (4) pCF_Y_OFFSET<1>:uw ubSRC_CF_OFFSET<4;4,1>:ub nSRC_YUV_REG*nGRFWIB:w // Initial Y,U,V offset in YUV422 block
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (16) uwDEST_Y(0, %1*16)<1> r[pCF_Y_OFFSET, %1*nGRFWIB]REGION(16,2)
mov (8) uwDEST_U(0, %1*16)<1> r[pCF_U_OFFSET, %1*nGRFWIB]REGION(8,4)
mov (8) uwDEST_V(0, %1*16)<1> r[pCF_V_OFFSET, %1*nGRFWIB]REGION(8,4)
}
 
$for(0; <nUV_NUM_OF_ROWS; 1) {
mov (1) uwDEST_U(0, %1*16+8)<1> r[pCF_U_OFFSET, %1*4+256]REGION(1,0)
mov (1) uwDEST_V(0, %1*16+8)<1> r[pCF_V_OFFSET, %1*4+256]REGION(1,0)
}
//UV expansion done in PL9x8_PL16x8.asm module
 
// End of PA_Load_9x8
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL16x8_PL8x4.asm
0,0 → 1,38
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PL16x8_PL8x4.asm
//----------------------------------------------------------------
 
#include "common.inc"
 
#ifndef DEST_U //DEST_U, DEST_V not defined
 
#if (nSRC_REGION==nREGION_1)
#define DEST_Y uwTOP_Y
#define DEST_U uwTOP_U
#define DEST_V uwTOP_V
#elif (nSRC_REGION==nREGION_2)
#define DEST_Y uwBOT_Y
#define DEST_U uwBOT_U
#define DEST_V uwBOT_V
#endif
#endif
 
//Convert 444 from sampler to 422
$for (0, 0; <8; 2, 1) {
mov (8) DEST_U(0,%2*8)<1> DEST_U(%1)<16;8,2>
mov (8) DEST_V(0,%2*8)<1> DEST_V(%1)<16;8,2>
}
 
// Re-define new number of lines
#undef nUV_NUM_OF_ROWS
#define nUV_NUM_OF_ROWS 4
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL16x8_PL8x8.asm
0,0 → 1,36
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PL16x8_PL8x8.asm
//----------------------------------------------------------------
 
#include "common.inc"
 
#ifndef DEST_U
 
//DEST_U, DEST_V not defined
#if (nSRC_REGION==nREGION_1)
#define DEST_Y uwTOP_Y
#define DEST_U uwTOP_U
#define DEST_V uwTOP_V
#elif (nSRC_REGION==nREGION_2)
#define DEST_Y uwBOT_Y
#define DEST_U uwBOT_U
#define DEST_V uwBOT_V
#endif
#endif
 
 
//Convert 444 from sampler to 422
$for (0, 0; <8; 2, 1) {
mov DEST_U(%2)<1> DEST_U(%1)<16;8,2>
mov DEST_V(%2)<1> DEST_V(%1)<16;8,2>
}
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL2_Load.inc
0,0 → 1,78
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PL2_Load.inc
 
#undef nY_NUM_OF_ROWS
#undef nUV_NUM_OF_ROWS
 
#define nY_NUM_OF_ROWS 8 // Number of Y rows per block
#define nDPR_BLOCK_SIZE_Y nBLOCK_WIDTH_16+nBLOCK_HEIGHT_8 // Y block size 16x8
#define nDPR_MSG_SIZE_Y nRESLEN_4 // # of MRF's to hold Y block data (4)
 
 
#if defined(NV11_LOAD_4x8)
#define nUV_NUM_OF_ROWS 8 // Number of U/V rows per block
#define nDPR_BLOCK_SIZE_UV nBLOCK_WIDTH_8+nBLOCK_HEIGHT_8 // U/V block size 8x8
#define nDPR_MSG_SIZE_UV nRESLEN_2 // # of MRF's to hold U/V block data (2)
#endif
 
#if defined(NV11_LOAD_5x8)
#define nUV_NUM_OF_ROWS 8 // Number of U/V rows per block
#define nDPR_BLOCK_SIZE_UV nBLOCK_WIDTH_12+nBLOCK_HEIGHT_8 // U/V block size 12x8
#define nDPR_MSG_SIZE_UV nRESLEN_4 // # of MRF's to hold U/V block data (4)
#endif
#if defined(NV12_LOAD_8x4)
#define nUV_NUM_OF_ROWS 4 // Number of U/V rows per block
#define nDPR_BLOCK_SIZE_UV nBLOCK_WIDTH_16+nBLOCK_HEIGHT_4 // U/V block size 16x4
#define nDPR_MSG_SIZE_UV nRESLEN_2 // # of MRF's to hold U/V block data (2)
#endif
#if defined(NV12_LOAD_8x5)
#define nUV_NUM_OF_ROWS 6 // Number of U/V rows per block (Rounded Up to Nearest Even Number)
#define nDPR_BLOCK_SIZE_UV nBLOCK_WIDTH_16+nBLOCK_HEIGHT_5 // U/V block size 16x5
#define nDPR_MSG_SIZE_UV nRESLEN_3 // # of MRF's to hold U/V block data (3)
#endif
#if defined(NV12_LOAD_9x5)
#define nUV_NUM_OF_ROWS 6 // Number of U/V rows per block (Rounded Up to Nearest Even Number)
#define nDPR_BLOCK_SIZE_UV nBLOCK_WIDTH_20+nBLOCK_HEIGHT_5 // U/V block size 20x5
#define nDPR_MSG_SIZE_UV nRESLEN_5 // # of MRF's to hold U/V block data (5)
#endif
#if defined(P208_LOAD_8x8)
#define nUV_NUM_OF_ROWS 8 // Number of U/V rows per block
#define nDPR_BLOCK_SIZE_UV nBLOCK_WIDTH_16+nBLOCK_HEIGHT_8 // U/V block size 16x8
#define nDPR_MSG_SIZE_UV nRESLEN_4 // # of MRF's to hold U/V block data (4)
#endif
#if defined(P208_LOAD_9x8)
#define nUV_NUM_OF_ROWS 8 // Number of U/V rows per block
#define nDPR_BLOCK_SIZE_UV nBLOCK_WIDTH_20+nBLOCK_HEIGHT_8 // U/V block size 20x8
#define nDPR_MSG_SIZE_UV nRESLEN_8 // # of MRF's to hold U/V block data (8)
#endif
 
// Source/destination region definitions
#if !defined(udSRC_Y)
#define udSRC_Y udBOT_Y_IO // Default Y source region is top Y region
#endif
 
#if !defined(udSRC_U)
#define udSRC_U udBOT_U_IO // Default U source region is top U region
#endif
 
#define ubSRC_Y ubBOT_Y
#define nSRC_Y_REG nBOT_Y
#define ubSRC_U ubBOT_U
#define nSRC_U_REG nBOT_U
 
#define uwDEST_Y uwTOP_Y // However they can be transferred to word-aligned byte if desired
#define uwDEST_U uwTOP_U
#define uwDEST_V uwTOP_V
 
#define nSRC_REGION nREGION_1 // REGION_1 will be the source region for first kernel
 
// End of PL2_Load.inc
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL3_Load.inc
0,0 → 1,59
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PL3_Load.inc
 
#undef nY_NUM_OF_ROWS
#undef nUV_NUM_OF_ROWS
 
#define nY_NUM_OF_ROWS 8 // Number of Y rows per block
#define nDPR_BLOCK_SIZE_Y nBLOCK_WIDTH_16+nBLOCK_HEIGHT_8 // Y block size 16x8
#define nDPR_MSG_SIZE_Y nRESLEN_4 // # of MRF's to hold Y block data (4)
 
#if defined(IMC3_LOAD_8x4)
#define nUV_NUM_OF_ROWS 4 // Number of U/V rows per block
#define nDPR_BLOCK_SIZE_UV nBLOCK_WIDTH_8+nBLOCK_HEIGHT_4 // U/V block size 8x4
#define nDPR_MSG_SIZE_UV nRESLEN_1 // # of MRF's to hold U/V block data (1)
#endif
#if defined(IMC3_LOAD_8x5)
#define nUV_NUM_OF_ROWS 6 // Number of U/V rows per block (Rounded Up to Nearest Even Number)
#define nDPR_BLOCK_SIZE_UV nBLOCK_WIDTH_8+nBLOCK_HEIGHT_5 // U/V block size 8x5
#define nDPR_MSG_SIZE_UV nRESLEN_2 // # of MRF's to hold U/V block data (2)
#endif
#if defined(IMC3_LOAD_9x5)
#define nUV_NUM_OF_ROWS 6 // Number of U/V rows per block (Rounded Up to Nearest Even Number)
#define nDPR_BLOCK_SIZE_UV nBLOCK_WIDTH_12+nBLOCK_HEIGHT_5 // U/V block size 12x5
#define nDPR_MSG_SIZE_UV nRESLEN_3 // # of MRF's to hold U/V block data (3)
#endif
 
// Source/destination region definitions
#if !defined(udSRC_Y)
#define udSRC_Y udBOT_Y_IO // Default Y source region is top Y region
#endif
 
#if !defined(udSRC_U)
#define udSRC_U udBOT_U_IO // Default U source region is top U region
#endif
 
#if !defined(udSRC_V)
#define udSRC_V udBOT_V_IO // Default V source region is top V region
#endif
 
#define ubSRC_Y ubBOT_Y // Loading data are always in byte type
#define ubSRC_U ubBOT_U
#define ubSRC_V ubBOT_V
 
#define uwDEST_Y uwTOP_Y // However they can be transferred to word-aligned byte if desired
#define uwDEST_U uwTOP_U
#define uwDEST_V uwTOP_V
 
#define nSRC_REGION nREGION_1 // REGION_1 will be the source region for first kernel
 
// End of PL3_Load.inc
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL4x8_Save_NV11.asm
0,0 → 1,86
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
 
#include "PL4x8_Save_NV11.inc"
 
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
 
#if !defined(SAVE_UV_ONLY)
// Save current planar frame Y block data (16x8) -------------------------------
 
mov (2) mMSGHDR.0<1>:d wORIX<2;2,1>:w // Block origin
mov (1) mMSGHDR.2<1>:ud nDPW_BLOCK_SIZE_Y:ud // Block width and height (16x8)
 
///* Yoni - masking is not relevant for ILK?!?
//
// //Use the mask to determine which pixels shouldn't be over-written
// cmp.ge.f0.0 (1) NULLREG BLOCK_MASK_D:ud 0x00FFFFFF:ud //Check if all pixels in the block need to be modified
// (f0.0) jmpi WritePlanarToDataPort
//
// //If mask is not all 1's, then load the entire 16x8 block
// //so that only those bytes may be modified that need to be (using the mask)
// send (8) SRC_YD(0)<1> MSGHDR MSGSRC<8;8,1>:ud DWBRMSGDSC+0x00040000+BI_DEST_Y:ud //16x8
//
// asr (2) MSGSRC.0<1>:ud ORIX<2;2,1>:w 1:w // U/V block origin should be half of Y's
// mov (1) MSGSRC.2<1>:ud 0x00030007:ud // Block width and height (8x4)
// send (8) SRC_UD(0)<1> MSGHDR MSGSRC<8;8,1>:ud DWBRMSGDSC+0x00010000+BI_DEST_U:ud
// send (8) SRC_VD(0)<1> MSGHDR MSGSRC<8;8,1>:ud DWBRMSGDSC+0x00010000+BI_DEST_V:ud
//
// //Restore the origin information
// mov (2) MSGSRC.0<1>:ud ORIX<2;2,1>:w // Block origin
// mov (1) MSGSRC.2<1>:ud 0x0007000F:ud // Block width and height (16x8)
//
// //expand U and V to be aligned on word boundary
// mov (16) SRC_UW(1)<1> SRC_U(0,16)
// mov (16) SRC_UW(0)<1> SRC_U(0, 0)
// mov (16) SRC_VW(1)<1> SRC_V(0,16)
// mov (16) SRC_VW(0)<1> SRC_V(0, 0)
//
// //Merge the data
// mov (1) f0.1:uw BLOCK_MASK_V:uw //Load the mask on flag reg
// (f0.1) mov (8) TEMP0<1>:uw BLOCK_MASK_H:uw
// (-f0.1) mov (8) TEMP0<1>:uw 0:uw
//
// // Destination is Word aligned
// $for(0; <Y_ROW_SIZE; 2) {
// mov (1) f0.1:uw TEMP(0,%1)<0;1,0>
// (-f0.1) mov (16) DEST_Y(0, %1*32)<2> SRC_Y(0, %1*16)
// (-f0.1) mov (16) DEST_U(0, %1*8)<1> SRC_U(0, %1*8) //only works for Word aligned Byte data
// (-f0.1) mov (16) DEST_V(0, %1*8)<1> SRC_V(0, %1*8) //only works for Word aligned Byte data
//
// mov (1) f0.1:uw TEMP(0,1+%1)<0;1,0>
// (-f0.1) mov (16) DEST_Y(0, 1+%1*32)<2> SRC_Y(0, 1+%1*16)
//
// }
//
//*/ Yoni - masking is not relevant for ILK?!?
WritePlanarToDataPort:
$for(0,0; <nY_NUM_OF_ROWS; 2,1) {
mov (16) mubMSGPAYLOAD(%2,0)<1> ub2DEST_Y(%1)REGION(16,2)
mov (16) mubMSGPAYLOAD(%2,16)<1> ub2DEST_Y(%1+1)REGION(16,2)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_Y+nBI_DESTINATION_Y:ud
#endif
 
// Save U/V data block in planar format (4x8) ----------------------------------
mov (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w // Block origin
asr (1) rMSGSRC.0<1>:d rMSGSRC.0<0;1,0>:d 1:w // U/V block origin should be half of Y's
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
 
$for(0,0; <nY_NUM_OF_ROWS;4,1) {
mov (16) mubMSGPAYLOAD(%2,0)<2> ub2DEST_U(%2)REGION(16,2)
mov (16) mubMSGPAYLOAD(%2,1)<2> ub2DEST_V(%2)REGION(16,2)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_UV+nBI_DESTINATION_UV:ud
 
// End of PL4x8_Save_NV11
 
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL4x8_Save_NV11.inc
0,0 → 1,60
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//Module name: PL8x4_Save_NV11.inc
//
// Setup for storing planar data
//
 
#include "undefall.inc" //Undefine the SRC and DEST sysmbols
 
#define nDPW_BLOCK_SIZE_Y nBLOCK_WIDTH_16+nBLOCK_HEIGHT_8 // Y block size 16x8
#define nDPW_MSG_SIZE_Y nMSGLEN_4 // # of MRF's to hold Y block data (4)
#define nDPW_BLOCK_SIZE_UV nBLOCK_WIDTH_8+nBLOCK_HEIGHT_8 // U/V interleaved block width and height (8x8)
#define nDPW_MSG_SIZE_UV nMSGLEN_2 // # of MRF's to hold U/V block data (2)
 
#if (nSRC_REGION==nREGION_1)
#define udSRC_Y udBOT_Y_IO
#define udSRC_U udBOT_U_IO
#define udSRC_V udBOT_V_IO
#define ubSRC_Y ubBOT_Y
#define ubSRC_U ubBOT_U
#define ubSRC_V ubBOT_V
 
#define uwSRC_U uwBOT_U //For masking operation
#define uwSRC_V uwBOT_V
 
#define ub2DEST_Y ub2TOP_Y
#define ub2DEST_U ub2TOP_U
#define ub2DEST_V ub2TOP_V
#elif (nSRC_REGION==nREGION_2)
#define udSRC_Y udTOP_Y_IO
#define udSRC_U udTOP_U_IO
#define udSRC_V udTOP_V_IO
#define ubSRC_Y ubTOP_Y
#define ubSRC_U ubTOP_U
#define ubSRC_V ubTOP_V
 
#define uwSRC_U uwTOP_U //For masking operation
#define uwSRC_V uwTOP_V
 
#define ub2DEST_Y ub2BOT_Y
#define ub2DEST_U ub2BOT_U
#define ub2DEST_V ub2BOT_V
#endif
 
///* Yoni - masking is not relevant for ILK?!?
//#define TEMP0 REG(r,54)
//.declare TEMP Base=TEMP0 ElementSize=2 SrcRegion=<8;8,1> Type=uw
///* Yoni - masking is not relevant for ILK?!?
 
 
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL5x8_PL16x8.asm
0,0 → 1,29
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PL5x8_PL16x8.asm
 
#include "Expansion.inc"
 
//------------------------------ Horizontal Upconversion -----------------------------
$for (nUV_NUM_OF_ROWS/2-1; >-1; -1) {
avg.sat (16) uwDEST_U(0, %1*32+16) uwDEST_U(0, %1*16+7)<1;2,0> uwDEST_U(0, %1*16+7)<1;2,1>
avg.sat (16) uwDEST_V(0, %1*32+16) uwDEST_V(0, %1*16+7)<1;2,0> uwDEST_V(0, %1*16+7)<1;2,1>
avg.sat (16) uwDEST_U(0, %1*32) uwDEST_U(0, %1*16)<1;2,0> uwDEST_U(0, %1*16)<1;2,1>
avg.sat (16) uwDEST_V(0, %1*32) uwDEST_V(0, %1*16)<1;2,0> uwDEST_V(0, %1*16)<1;2,1>
}
$for (nUV_NUM_OF_ROWS/2-1; >-1; -1) {
avg.sat (16) uwDEST_U(0, %1*32+16) uwDEST_U(0, %1*32+18)<1;2,0> uwDEST_U(0, %1*32+18)<1;2,1>
avg.sat (16) uwDEST_V(0, %1*32+16) uwDEST_V(0, %1*32+18)<1;2,0> uwDEST_V(0, %1*32+18)<1;2,1>
avg.sat (16) uwDEST_U(0, %1*32) uwDEST_U(0, %1*32)<1;2,0> uwDEST_U(0, %1*32)<1;2,1>
avg.sat (16) uwDEST_V(0, %1*32) uwDEST_V(0, %1*32)<1;2,0> uwDEST_V(0, %1*32)<1;2,1>
}
 
// End of PL5x8_PL16x8
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL5x8_PL8x8.asm
0,0 → 1,21
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PL5x8_PL8x8.asm
 
#include "Expansion.inc"
 
//------------------------------ Horizontal Upconversion -----------------------------
$for (0; <nUV_NUM_OF_ROWS; 1) {
avg.sat (8) uwDEST_U(0, %1*8) uwDEST_U(0, %1*8)<1;2,0> uwDEST_U(0, %1*8)<1;2,1>
avg.sat (8) uwDEST_V(0, %1*8) uwDEST_V(0, %1*8)<1;2,0> uwDEST_V(0, %1*8)<1;2,1>
}
 
// End of PL5x8_PL8x8
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL8x4_Save_IMC3.asm
0,0 → 1,88
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PL8x4_Save_IMC3.asm
//
// Save planar YUV420 frame data block of size 16x8
 
#include "PL8x4_Save_IMC3.inc"
 
//Use the mask to determine which pixels shouldn't be over-written
and (1) acc0.0<1>:ud udBLOCK_MASK<0;1,0>:ud 0x00FFFFFF:ud
cmp.ge.f0.0(1) dNULLREG acc0.0<0;1,0>:ud 0x00FFFFFF:ud //Check if all pixels in the block need to be modified
(f0.0) jmpi WritePlanarToDataPort
 
//If mask is not all 1's, then load the entire 16x8 block
//so that only those bytes may be modified that need to be (using the mask)
 
// Load 16x8 planar Y ----------------------------------------------------------
mov (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w // Block origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_Y:ud // Block width and height (16x8)
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_Y(0)<1> mMSGHDR udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_Y+nBI_DESTINATION_Y:ud
// Load 8x4 planar U and V -----------------------------------------------------
asr (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_UV:ud // Block width and height (8x4)
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_U(0)<1> mMSGHDR udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_DESTINATION_U:ud
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
send (8) udSRC_V(0)<1> mMSGHDR udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_DESTINATION_V:ud
 
//expand U and V to be aligned on word boundary - Y remains in bytes
$for (nUV_NUM_OF_ROWS/2-1; >-1; -1) {
mov (16) uwSRC_U(0, %1*16)<1> ubSRC_U(0, %1*16)
mov (16) uwSRC_V(0, %1*16)<1> ubSRC_V(0, %1*16)
}
 
//Merge the data
mov (1) f0.0:uw ubBLOCK_MASK_V:ub //Load the mask on flag reg
(f0.0) mov (8) rMASK_TEMP<1>:uw uwBLOCK_MASK_H:uw
(-f0.0) mov (8) rMASK_TEMP<1>:uw 0:uw
 
// Destination is Word aligned
$for(0; <nY_NUM_OF_ROWS; 2) {
mov (1) f0.1:uw uwMASK_TEMP(0,%1)<0;1,0>
(-f0.1) mov (16) ub2DEST_Y(0, %1*32)<2> ubSRC_Y(0, %1*16)
(-f0.1) mov (16) ub2DEST_U(0, %1*8)<1> ubSRC_U(0, %1*8) //only works for Word aligned Byte data
(-f0.1) mov (16) ub2DEST_V(0, %1*8)<1> ubSRC_V(0, %1*8) //only works for Word aligned Byte data
 
mov (1) f0.1:uw uwMASK_TEMP(0,1+%1)<0;1,0>
(-f0.1) mov (16) ub2DEST_Y(0, 1+%1*32)<2> ubSRC_Y(0, 1+%1*16)
}
 
WritePlanarToDataPort:
#if !defined(SAVE_UV_ONLY)
// Save current planar frame Y block data (16x8) -------------------------------
mov (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w // Block origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_Y:ud // Block width and height (16x8)
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
$for(0,0; <nY_NUM_OF_ROWS; 2,1) {
mov(16) mubMSGPAYLOAD(%2,0)<1> ub2DEST_Y(%1)REGION(16,2)
mov(16) mubMSGPAYLOAD(%2,16)<1> ub2DEST_Y(%1+1)REGION(16,2)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_Y+nBI_DESTINATION_Y:ud
#endif
// Save U/V data block in planar format (8x4) ----------------------------------
asr (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_UV:ud // Block width and height (8x4)
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
 
// Save U picture data ---------------------------------------------------------
mov (16) mubMSGPAYLOAD(0,0)<1> ub2DEST_U(0)REGION(16,2) // U rows 0,1
mov (16) mubMSGPAYLOAD(0,16)<1> ub2DEST_U(1)REGION(16,2) // U rows 2,3
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_UV+nBI_DESTINATION_U:ud
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
 
// Save V picture data ---------------------------------------------------------
mov (16) mubMSGPAYLOAD(0,0)<1> ub2DEST_V(0)REGION(16,2) // V rows 0,1
mov (16) mubMSGPAYLOAD(0,16)<1> ub2DEST_V(1)REGION(16,2) // V rows 2,3
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_UV+nBI_DESTINATION_V:ud
 
// End of PL8x4_Save_IMC3
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL8x4_Save_IMC3.inc
0,0 → 1,62
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PL8x4_Save_IMC3.inc
//
// Setup for storing planar data
//
 
#include "undefall.inc" //Undefine the SRC and DEST sysmbols
 
// For saving
#define nDPW_BLOCK_SIZE_Y nBLOCK_WIDTH_16+nBLOCK_HEIGHT_8 // Y block size 16x8
#define nDPW_MSG_SIZE_Y nMSGLEN_4 // # of MRF's to hold Y block data (4)
#define nDPW_BLOCK_SIZE_UV nBLOCK_WIDTH_8+nBLOCK_HEIGHT_4 // U/V block size 8x4
#define nDPW_MSG_SIZE_UV nMSGLEN_1 // # of MRF's to hold U/V block data (1)
 
// For masking
#undef nDPR_MSG_SIZE_Y
#define nDPR_MSG_SIZE_Y nRESLEN_4 // # of MRF's to hold Y block data (4)
#undef nDPR_MSG_SIZE_UV
#define nDPR_MSG_SIZE_UV nRESLEN_1 // # of MRF's to hold U/V block data (1)
#define rMASK_TEMP REG(r,nTEMP0)
.declare uwMASK_TEMP Base=rMASK_TEMP ElementSize=2 SrcRegion=<8;8,1> Type=uw //1 GRF
 
#if (nSRC_REGION==nREGION_1)
// For saving
#define ub2DEST_Y ub2TOP_Y
#define ub2DEST_U ub2TOP_U
#define ub2DEST_V ub2TOP_V
//For masking operation
#define udSRC_Y udBOT_Y_IO
#define udSRC_U udBOT_U_IO
#define udSRC_V udBOT_V_IO
#define ubSRC_Y ubBOT_Y
#define ubSRC_U ubBOT_U
#define ubSRC_V ubBOT_V
#define uwSRC_U uwBOT_U
#define uwSRC_V uwBOT_V
 
#elif (nSRC_REGION==nREGION_2)
// For saving
#define ub2DEST_Y ub2BOT_Y
#define ub2DEST_U ub2BOT_U
#define ub2DEST_V ub2BOT_V
//For masking operation
#define udSRC_Y udTOP_Y_IO
#define udSRC_U udTOP_U_IO
#define udSRC_V udTOP_V_IO
#define ubSRC_Y ubTOP_Y
#define ubSRC_U ubTOP_U
#define ubSRC_V ubTOP_V
#define uwSRC_U uwTOP_U
#define uwSRC_V uwTOP_V
 
#endif
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL8x4_Save_NV12.asm
0,0 → 1,102
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
 
// Module name: PL8x4_Save_NV12.asm
//
// Save entire current planar frame data block of size 16x8
//---------------------------------------------------------------
// Symbols needed to be defined before including this module
//
// DWORD_ALIGNED_DEST: only if DEST_Y, DEST_U, DEST_V data are DWord aligned
// ORIX:
//---------------------------------------------------------------
 
#include "PL8x4_Save_NV12.inc"
 
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
 
#if !defined(SAVE_UV_ONLY)
// Save current planar frame Y block data (16x8) -------------------------------
 
mov (2) mMSGHDR.0<1>:d wORIX<2;2,1>:w // Block origin
mov (1) mMSGHDR.2<1>:ud nDPW_BLOCK_SIZE_Y:ud // Block width and height (16x8)
#endif
 
//Use the mask to determine which pixels shouldn't be over-written
and (1) acc0<1>:ud udBLOCK_MASK<0;1,0>:ud 0x00FFFFFF:ud
cmp.ge.f0.0 (1) dNULLREG acc0<0;1,0>:ud 0x00FFFFFF:ud //Check if all pixels in the block need to be modified
(f0.0) jmpi WritePlanarToDataPort
 
//If mask is not all 1's, then load the entire 16x8 block
//so that only those bytes may be modified that need to be (using the mask)
send (8) udSRC_Y(0)<1> mMSGHDR udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_Y+nBI_DESTINATION_Y:ud //16x8
asr (1) rMSGSRC.1<1>:ud wORIY<0;1,0>:w 1:w { NoDDClr } // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_UV:ud { NoDDChk } // Block width and height (16x4)
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud //move message desrcptor to the message header
send (8) udSRC_U(0)<1> mMSGHDR udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_UV+nBI_DESTINATION_UV:ud
//Restore the origin information
mov (2) rMSGSRC.0<1>:ud wORIX<2;2,1>:w // Block origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_Y:ud // Block width and height (16x8)
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud //move message desrcptor to the message header
//Merge the data
mov (1) f0.1:uw ubBLOCK_MASK_V:ub //Load the mask on flag reg
(f0.1) mov (8) rMASK_TEMP<1>:uw uwBLOCK_MASK_H:uw
(-f0.1) mov (8) rMASK_TEMP<1>:uw 0:uw
//convert the mask from 16bits to 8bits by selecting every other bit
mov (1) udMASK_TEMP1(0,0)<1> 0x00040001:ud
mov (1) udMASK_TEMP1(0,1)<1> 0x00400010:ud
mov (1) udMASK_TEMP1(0,2)<1> 0x04000100:ud
mov (1) udMASK_TEMP1(0,3)<1> 0x40001000:ud
 
//merge the loaded block with the current block
$for(0,0; <nY_NUM_OF_ROWS; 2,1) {
mov (1) f0.1:uw uwMASK_TEMP(0, %1)<0;1,0>
(-f0.1) mov (16) ubDEST_Y(0,%1*32)<2> ubSRC_Y(0,%1*16)
 
and.nz.f0.1 (8) wNULLREG uwMASK_TEMP(0,%1)<0;1,0> uwMASK_TEMP1(0,0) //change the mask by selecting every other bit
(-f0.1) mov (8) ubDEST_U(0, %2*16)<2> ub2SRC_U(0, %1*8)<16;8,2>
(-f0.1) mov (8) ubDEST_V(0, %2*16)<2> ub2SRC_U(0, %1*8+1)<16;8,2>
mov (1) f0.1:uw uwMASK_TEMP(0,1+%1)<0;1,0>
(-f0.1) mov (16) ubDEST_Y(0, (1+%1)*32)<2> ubSRC_Y(0, (1+%1)*16)
}
 
WritePlanarToDataPort:
#if !defined(SAVE_UV_ONLY)
$for(0,0; <nY_NUM_OF_ROWS; 2,1) {
mov (16) mubMSGPAYLOAD(%2,0)<1> ub2DEST_Y(%1)REGION(16,2)
mov (16) mubMSGPAYLOAD(%2,16)<1> ub2DEST_Y(%1+1)REGION(16,2)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_Y+nBI_DESTINATION_Y:ud
#endif
//** Save 8x4 packed U and V -----------------------------------------------------
// we could write directly wORIX to mMSGHDR and then execute asr on it, that way we could
// avoid using rMSGSRC as a buffer and have one command less in code, but it is unknown whether
//it is possible to do asr on mMSGHDR so we use rMSGSRC.
mov (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w // Block origin
asr (1) rMSGSRC.1<1>:d rMSGSRC.1<0;1,0>:d 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_UV:ud // U/V block width and height (16x4)
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
 
$for(0,0; <nY_NUM_OF_ROWS;4,1) {
mov (16) mubMSGPAYLOAD(%2,0)<2> ub2DEST_U(%2)REGION(16,2)
mov (16) mubMSGPAYLOAD(%2,1)<2> ub2DEST_V(%2)REGION(16,2)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_UV+nBI_DESTINATION_UV:ud
 
// End of PL8x4_Save_NV12
 
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL8x4_Save_NV12.inc
0,0 → 1,85
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//Module name: PL8x4_Save_NV12.inc
//
// Setup for storing planar data
//
 
#include "undefall.inc" //Undefine the SRC and DEST sysmbols
#undef nDPW_BLOCK_SIZE_Y
#undef nDPW_MSG_SIZE_Y
#undef nDPW_BLOCK_SIZE_UV
#undef nDPW_MSG_SIZE_UV
 
#define nDPW_BLOCK_SIZE_Y nBLOCK_WIDTH_16+nBLOCK_HEIGHT_8 // Y block size 16x8
#define nDPW_MSG_SIZE_Y nMSGLEN_4 // # of MRF's to hold Y block data (4)
#define nDPW_BLOCK_SIZE_UV nBLOCK_WIDTH_16+nBLOCK_HEIGHT_4 // U/V interleaved block width and height (16x4)
#define nDPW_MSG_SIZE_UV nMSGLEN_2 // # of MRF's to hold U/V block data (2)
 
// For masking
#undef nDPR_MSG_SIZE_Y
#define nDPR_MSG_SIZE_Y nRESLEN_4 // # of MRF's to hold Y block data (4)
#undef nDPR_MSG_SIZE_UV
#define nDPR_MSG_SIZE_UV nRESLEN_2
#define rMASK_TEMP REG(r,nTEMP0)
.declare uwMASK_TEMP Base=rMASK_TEMP ElementSize=2 SrcRegion=<8;8,1> Type=uw //1 GRF
#define rMASK_TEMP1 REG(r,nTEMP1)
.declare udMASK_TEMP1 Base=rMASK_TEMP1 ElementSize=4 SrcRegion=<4;4,1> Type=ud //1 GRF
.declare uwMASK_TEMP1 Base=rMASK_TEMP1 ElementSize=2 SrcRegion=<8;8,1> Type=uw //1 GRF
 
 
#if (nSRC_REGION==nREGION_1)
#define udSRC_Y udBOT_Y_IO
#define udSRC_U udBOT_U_IO
#define udSRC_V udBOT_V_IO
#define ubSRC_Y ubBOT_Y
#define ubSRC_U ubBOT_U
#define ubSRC_V ubBOT_V
 
#define uwSRC_U uwBOT_U //For masking operation
#define uwSRC_V uwBOT_V
 
#define ub2DEST_Y ub2TOP_Y
#define ub2DEST_U ub2TOP_U
#define ub2DEST_V ub2TOP_V
#define ubDEST_Y ubTOP_Y
#define ubDEST_U ubTOP_U
#define ubDEST_V ubTOP_V
#define ub2SRC_U ub2BOT_U
#elif (nSRC_REGION==nREGION_2)
#define udSRC_Y udTOP_Y_IO
#define udSRC_U udTOP_U_IO
#define udSRC_V udTOP_V_IO
#define ubSRC_Y ubTOP_Y
#define ubSRC_U ubTOP_U
#define ubSRC_V ubTOP_V
 
#define uwSRC_U uwTOP_U //For masking operation
#define uwSRC_V uwTOP_V
 
#define ub2DEST_Y ub2BOT_Y
#define ub2DEST_U ub2BOT_U
#define ub2DEST_V ub2BOT_V
 
#define ubDEST_Y ubBOT_Y
#define ubDEST_U ubBOT_U
#define ubDEST_V ubBOT_V
#define ub2SRC_U ub2TOP_U
#endif
 
///* Yoni - masking is not relevant for ILK?!?
//#define TEMP0 REG(r,54)
//.declare TEMP Base=TEMP0 ElementSize=2 SrcRegion=<8;8,1> Type=uw
///* Yoni - masking is not relevant for ILK?!?
 
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL8x5_PL8x8.asm
0,0 → 1,27
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PL8x5_PL8x8.asm
 
#include "Expansion.inc"
 
//------------------------------- Vertical Upconversion ------------------------------
avg.sat (8) uwDEST_U(0, 3*16+8)<1> uwDEST_U(0, 3*8) uwDEST_U(0, (1+3)*8) // Optimization
avg.sat (8) uwDEST_V(0, 3*16+8)<1> uwDEST_V(0, 3*8) uwDEST_V(0, (1+3)*8) // Optimization
 
$for(nUV_NUM_OF_ROWS/2-2; >-1; -1) {
mov (8) uwDEST_U(0, (1+%1)*16)<1> uwDEST_U(0, (1+%1)*8)
avg.sat (8) uwDEST_U(0, %1*16+8)<1> uwDEST_U(0, %1*8) uwDEST_U(0, (1+%1)*8)
 
mov (8) uwDEST_V(0, (1+%1)*16)<1> uwDEST_V(0, (1+%1)*8)
avg.sat (8) uwDEST_V(0, %1*16+8)<1> uwDEST_V(0, %1*8) uwDEST_V(0, (1+%1)*8)
}
 
// End of PL8x5_PL8x8
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL8x8_PL8x4.asm
0,0 → 1,30
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PL8x8_PL8x4.asm
//
// Convert PL 8x8 to PL8x4 in GRF
//---------------------------------------------------------------
// Symbols needed to be defined before including this module
//
// DWORD_ALIGNED_DEST: only if DEST_Y, DEST_U, DEST_V data are DWord aligned
// ORIX:
//---------------------------------------------------------------
 
#include "PL8x8_PL8x4.inc"
// Convert PL8x8 to PL8x4 ---------------------------------------------------------
 
mov (8) ubDEST_U(0,16)<2> ubDEST_U(1)<16;8,2> //selecting U every other row
mov (16) ubDEST_U(0,32)<2> ubDEST_U(2)<32;8,2> //selecting U every other row
mov (8) ubDEST_V(0,16)<2> ubDEST_V(1)<16;8,2> //selecting V every other row
mov (16) ubDEST_V(0,32)<2> ubDEST_V(2)<32;8,2> //selecting V every other row
// End of PL8x8_PL8x4.asm -------------------------------------------------------
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL8x8_PL8x4.inc
0,0 → 1,36
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PL8x8_PL8x4.inc
//
// Setup module for convert PL8x8 to PL8x4
//
//
 
// Source/destination region definitions
//
#include "undefall.inc" //Undefine the SRC and DEST sysmbols
 
#if (nSRC_REGION==nREGION_1)
 
//REGION_1 selected
#define ubDEST_Y ubTOP_Y
#define ubDEST_U ubTOP_U
#define ubDEST_V ubTOP_V
#elif (nSRC_REGION==nREGION_2)
 
//REGION_2 selected
#define ubDEST_Y ubBOT_Y
#define ubDEST_U ubBOT_U
#define ubDEST_V ubBOT_V
#endif
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL8x8_Save_P208.asm
0,0 → 1,56
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
 
// Module name: PL8x8_Save_P208.asm
//
// Save entire current planar frame data block of size 16x8
//---------------------------------------------------------------
// Symbols needed to be defined before including this module
//
// DWORD_ALIGNED_DEST: only if DEST_Y, DEST_U, DEST_V data are DWord aligned
// ORIX:
//---------------------------------------------------------------
 
#include "PL8x8_Save_P208.inc"
 
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
 
#if !defined(SAVE_UV_ONLY)
// Save current planar frame Y block data (16x8) -------------------------------
 
mov (2) mMSGHDR.0<1>:d wORIX<2;2,1>:w // Block origin
mov (1) mMSGHDR.2<1>:ud nDPW_BLOCK_SIZE_Y:ud // Block width and height (16x8)
 
WritePlanarToDataPort:
$for(0,0; <nY_NUM_OF_ROWS; 2,1) {
mov (16) mubMSGPAYLOAD(%2,0)<1> ub2DEST_Y(%1)REGION(16,2)
mov (16) mubMSGPAYLOAD(%2,16)<1> ub2DEST_Y(%1+1)REGION(16,2)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_Y+nBI_DESTINATION_Y:ud
#endif
//** Save 8x8 packed U and V -----------------------------------------------------
// we could write directly wORIX to mMSGHDR and then execute asr on it, that way we could
// avoid using rMSGSRC as a buffer and have one command less in code, but it is unknown whether
//it is possible to do asr on mMSGHDR so we use rMSGSRC.
mov (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w // Block origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_UV:ud // U/V block width and height (16x4)
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
 
$for(0,0; <nY_NUM_OF_ROWS;2,1) {
mov (16) mubMSGPAYLOAD(%2,0)<2> ub2DEST_U(%2)REGION(16,2)
mov (16) mubMSGPAYLOAD(%2,1)<2> ub2DEST_V(%2)REGION(16,2)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_UV+nBI_DESTINATION_UV:ud
 
//End of PL8x8_Save_P208.asm
 
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL8x8_Save_P208.inc
0,0 → 1,61
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
 
//Module name: PL8x8_Save_P208.inc
//
// Setup for storing planar data
//
 
#include "undefall.inc" //Undefine the SRC and DEST sysmbols
 
#define nDPW_BLOCK_SIZE_Y nBLOCK_WIDTH_16+nBLOCK_HEIGHT_8 // Y block size 16x8
#define nDPW_MSG_SIZE_Y nMSGLEN_4 // # of MRF's to hold Y block data (4)
#define nDPW_BLOCK_SIZE_UV nBLOCK_WIDTH_16+nBLOCK_HEIGHT_8 // U/V interleaved block width and height (16x8)
#define nDPW_MSG_SIZE_UV nMSGLEN_4 // # of MRF's to hold U/V block data (4)
 
#if (nSRC_REGION==nREGION_1)
#define udSRC_Y udBOT_Y_IO
#define udSRC_U udBOT_U_IO
#define udSRC_V udBOT_V_IO
#define ubSRC_Y ubBOT_Y
#define ubSRC_U ubBOT_U
#define ubSRC_V ubBOT_V
 
#define uwSRC_U uwBOT_U //For masking operation
#define uwSRC_V uwBOT_V
 
#define ub2DEST_Y ub2TOP_Y
#define ub2DEST_U ub2TOP_U
#define ub2DEST_V ub2TOP_V
#elif (nSRC_REGION==nREGION_2)
#define udSRC_Y udTOP_Y_IO
#define udSRC_U udTOP_U_IO
#define udSRC_V udTOP_V_IO
#define ubSRC_Y ubTOP_Y
#define ubSRC_U ubTOP_U
#define ubSRC_V ubTOP_V
 
#define uwSRC_U uwTOP_U //For masking operation
#define uwSRC_V uwTOP_V
 
#define ub2DEST_Y ub2BOT_Y
#define ub2DEST_U ub2BOT_U
#define ub2DEST_V ub2BOT_V
#endif
 
///* Yoni - masking is not relevant for ILK?!?
//#define TEMP0 REG(r,54)
//.declare TEMP Base=TEMP0 ElementSize=2 SrcRegion=<8;8,1> Type=uw
///* Yoni - masking is not relevant for ILK?!?
 
 
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL8x8_Save_PA.asm
0,0 → 1,71
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PL8x8_Save_PA.asm
//
// Save planar YUV422 to packed YUV422 format data
//
// Note: SRC_* must reference to regions with data type "BYTE"
// in order to save to byte-aligned byte location
 
#include "PL8x8_Save_PA.inc"
 
add (4) pCF_Y_OFFSET<1>:uw ubDEST_CF_OFFSET<4;4,1>:ub nDEST_YUV_REG*nGRFWIB:w // Initial Y,U,V offset in YUV422 block
 
// Pack Y
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (16) r[pCF_Y_OFFSET, %1*nGRFWIB]<2> ubSRC_Y(0,%1*32)
}
 
// Pack U/V
$for(0; <nUV_NUM_OF_ROWS; 1) {
mov (8) r[pCF_U_OFFSET, %1*nGRFWIB]<4> ubSRC_U(0, %1*16)
mov (8) r[pCF_V_OFFSET, %1*nGRFWIB]<4> ubSRC_V(0, %1*16)
}
 
shl (1) rMSGSRC.0<1>:d wORIX<0;1,0>:w 1:w { NoDDClr } // H. block origin need to be doubled
mov (1) rMSGSRC.1<1>:d wORIY<0;1,0>:w { NoDDClr, NoDDChk } // Block origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_YUV:ud { NoDDChk } // Block width and height (32x8)
 
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
 
//Use the mask to determine which pixels shouldn't be over-written
and (1) acc0.0<1>:ud udBLOCK_MASK<0;1,0>:ud 0x00FFFFFF:ud
cmp.ge.f0.0(1) dNULLREG acc0.0<0;1,0>:ud 0x00FFFFFF:ud //Check if all pixels in the block need to be modified
(f0.0) jmpi WritePackedToDataPort
 
//If mask is not all 1's, then load the entire 32x8 block
//so that only those bytes may be modified that need to be (using the mask)
 
// Load 32x8 packed YUV 422 ----------------------------------------------------
send (8) udSRC_YUV(0)<1> mMSGHDR udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_YUV+nBI_DESTINATION_YUV:ud
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
 
//Merge the data
mov (1) f0.0:uw ubBLOCK_MASK_V:ub //Load the mask on flag reg
(f0.0) mov (8) rMASK_TEMP<1>:uw uwBLOCK_MASK_H:uw
(-f0.0) mov (8) rMASK_TEMP<1>:uw 0:uw
 
// Destination is Byte aligned
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (1) f0.1:uw uwMASK_TEMP(0,%1)<0;1,0>
(-f0.1) mov (16) uwDEST_YUV(%1)<1> uwSRC_YUV(%1) //check the UV merge - vK
}
 
WritePackedToDataPort:
// Packed YUV data are stored in one of the I/O regions before moving to MRF
// Note: This is necessary since indirect addressing is not supported for MRF.
// Packed data block should be saved as 32x8 pixel block
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (8) mudMSGPAYLOAD(%1)<1> udDEST_YUV(%1)REGION(8,1)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_YUV+nBI_DESTINATION_YUV:ud
 
// End of PL8x8_Save_PA
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL8x8_Save_PA.inc
0,0 → 1,52
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PL8x8_Save_PA.inc
//
// Setup for storing packed data
//
 
#include "undefall.inc" //Undefine the SRC and DEST sysmbols
 
// For saving
#define nDPW_BLOCK_SIZE_YUV nBLOCK_WIDTH_32+nBLOCK_HEIGHT_8 // YUV block size 32x8
#define nDPW_MSG_SIZE_YUV nMSGLEN_8 // # of MRF's to hold YUV block data (8)
 
// For masking
#undef nDPR_MSG_SIZE_YUV
#define nDPR_MSG_SIZE_YUV nRESLEN_8 // # of MRF's to hold YUV block data (8)
#define rMASK_TEMP REG(r,nTEMP0)
.declare uwMASK_TEMP Base=rMASK_TEMP ElementSize=2 SrcRegion=<8;8,1> Type=uw //1 GRF
 
#if (nSRC_REGION==nREGION_1)
// For saving
#define udSRC_YUV udTOP_Y_IO
#define udDEST_YUV udBOT_Y_IO
#define nDEST_YUV_REG nBOT_Y
//For masking operation
#define ubSRC_Y ub2TOP_Y
#define ubSRC_U ub2TOP_U
#define ubSRC_V ub2TOP_V
#define uwSRC_YUV uwTOP_Y
#define uwDEST_YUV uwBOT_Y
 
#elif (nSRC_REGION==nREGION_2)
// For saving
#define udSRC_YUV udBOT_Y_IO
#define udDEST_YUV udTOP_Y_IO
#define nDEST_YUV_REG nTOP_Y
//For masking operation
#define ubSRC_Y ub2BOT_Y
#define ubSRC_U ub2BOT_U
#define ubSRC_V ub2BOT_V
#define uwSRC_YUV uwBOT_Y
#define uwDEST_YUV uwTOP_Y
 
#endif
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL9x5_PL16x8.asm
0,0 → 1,37
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PL9x5_PL16x8.asm
 
#define EXPAND_9x5
#include "Expansion.inc"
 
//------------------------------ Horizontal Upconversion -----------------------------
$for (nUV_NUM_OF_ROWS-2; >-1; -1) {
avg.sat (16) uwDEST_U(0, %1*16)<1> uwDEST_U(0, %1*16)<1;2,0> uwDEST_U(0, %1*16)<1;2,1>
avg.sat (16) uwDEST_V(0, %1*16)<1> uwDEST_V(0, %1*16)<1;2,0> uwDEST_V(0, %1*16)<1;2,1>
}
 
#undef nUV_NUM_OF_ROWS
#define nUV_NUM_OF_ROWS 8 //use packed version of all post-processing kernels
 
//------------------------------- Vertical Upconversion ------------------------------
avg.sat (16) uwDEST_U(0, 3*32+16)<1> uwDEST_U(0, 3*16) uwDEST_U(0, (1+3)*16)
avg.sat (16) uwDEST_V(0, 3*32+16)<1> uwDEST_V(0, 3*16) uwDEST_V(0, (1+3)*16)
 
$for(nUV_NUM_OF_ROWS/2-2; >-1; -1) {
mov (16) uwDEST_U(0, (1+%1)*32)<1> uwDEST_U(0, (1+%1)*16)
avg.sat (16) uwDEST_U(0, %1*32+16)<1> uwDEST_U(0, %1*16) uwDEST_U(0, (1+%1)*16)
 
mov (16) uwDEST_V(0, (1+%1)*32)<1> uwDEST_V(0, (1+%1)*16)
avg.sat (16) uwDEST_V(0, %1*32+16)<1> uwDEST_V(0, %1*16) uwDEST_V(0, (1+%1)*16)
}
 
// End of PL9x5_PL16x8
/drivers/video/i965/shaders/post_processing/gen5_6/Common/PL9x8_PL16x8.asm
0,0 → 1,21
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: PL9x5_PL16x8.asm
 
#include "Expansion.inc"
 
//------------------------------ Horizontal Upconversion -----------------------------
$for (0; <nUV_NUM_OF_ROWS; 1) {
avg.sat (16) uwDEST_U(0, %1*16)<1> uwDEST_U(0, %1*16)<1;2,0> uwDEST_U(0, %1*16)<1;2,1>
avg.sat (16) uwDEST_V(0, %1*16)<1> uwDEST_V(0, %1*16)<1;2,0> uwDEST_V(0, %1*16)<1;2,1>
}
 
// End of PL9x5_PL16x8
/drivers/video/i965/shaders/post_processing/gen5_6/Common/RGB16x8_Save_RGB.asm
0,0 → 1,88
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: RGB16x8_Save_RGB.asm
//
// Save packed ARGB 444 frame data block of size 16x8
//
// To save 16x8 block (64x8 byte layout for ARGB8888) we need 2 send instructions
// ---------
// | 1 | 2 |
// ---------
 
#include "RGB16x8_Save_RGB.inc"
 
shl (1) rMSGSRC.0<1>:d wORIX<0;1,0>:w 2:w { NoDDClr } // H. block origin need to be quadrupled
mov (1) rMSGSRC.1<1>:d wORIY<0;1,0>:w { NoDDClr, NoDDChk } // Block origin (1st quadrant)
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_ARGB:ud { NoDDChk } // Block width and height (32x8)
 
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
 
//Use the mask to determine which pixels shouldn't be over-written
and (1) acc0.0<1>:ud udBLOCK_MASK<0;1,0>:ud 0x00FFFFFF:ud
cmp.ge.f0.0(1) dNULLREG acc0.0<0;1,0>:ud 0x00FFFFFF:ud //Check if all pixels in the block need to be modified
(f0.0) jmpi WriteARGBToDataPort
 
//If mask is not all 1's, then load the entire 64x8 block
//so that only those bytes may be modified that need to be (using the mask)
 
// Load first block 16x8 packed ARGB 444 ---------------------------------------
or (1) acc0.0<1>:ud udBLOCK_MASK<0;1,0>:ud 0xFF00FF00:ud //Check first block
cmp.e.f0.0 (1) dNULLREG acc0.0<0;1,0>:ud 0xFFFFFFFF:ud
(f0.0) jmpi SkipFirstBlockMerge //If full mask then skip this block
 
send (8) udSRC_ARGB(0)<1> mMSGHDR udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_ARGB+nBI_DESTINATION_RGB:ud
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
 
//Merge the data
mov (1) f0.0:uw ubBLOCK_MASK_V:ub //Load the mask on flag reg
(f0.0) mov (8) rMASK_TEMP<1>:uw uwBLOCK_MASK_H:uw //use sel instruction - vK
(-f0.0) mov (8) rMASK_TEMP<1>:uw 0:uw
 
$for(0, 0; <nY_NUM_OF_ROWS; 1, 2) { //take care of the lines in the block, they are different in the src and dest
mov (1) f0.1:uw uwMASK_TEMP(0,%1)<0;1,0>
(-f0.1) mov (8) udDEST_ARGB(%2)<1> udSRC_ARGB(%1)
}
 
SkipFirstBlockMerge:
// Load second block 16x8 packed ARGB 444 ---------------------------------------
or (1) acc0.0<1>:ud udBLOCK_MASK<0;1,0>:ud 0xFF0000FF:ud //Check second block
cmp.e.f0.0 (1) dNULLREG acc0.0<0;1,0>:ud 0xFFFFFFFF:ud
(f0.0) jmpi WriteARGBToDataPort //If full mask then skip this block
 
add (1) mMSGHDR.0<1>:d rMSGSRC.0<0;1,0>:d 32:d // Point to 2nd part
send (8) udSRC_ARGB(0)<1> mMSGHDR udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_ARGB+nBI_DESTINATION_RGB:ud
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud // Point to 1st part again
 
//Merge the data
mov (1) f0.0:uw ubBLOCK_MASK_V:ub //Load the mask on flag reg
(f0.0) shr (8) rMASK_TEMP<1>:uw uwBLOCK_MASK_H:uw 8:uw //load the mask for second block
(-f0.0) mov (8) rMASK_TEMP<1>:uw 0:uw
 
$for(0, 1; <nY_NUM_OF_ROWS; 1, 2) { //take care of the lines in the block, they are different in the src and dest
mov (1) f0.1:uw uwMASK_TEMP(0,%1)<0;1,0>
(-f0.1) mov (8) udDEST_ARGB(%2)<1> udSRC_ARGB(%1)
}
 
WriteARGBToDataPort:
// Move packed data to MRF and output
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (8) mudMSGPAYLOAD(%1)<1> udDEST_ARGB(%1*2)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_ARGB+nBI_DESTINATION_RGB:ud
 
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
add (1) mMSGHDR.0<1>:d rMSGSRC.0<0;1,0>:d 32:d // Point to 2nd part
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (8) mudMSGPAYLOAD(%1)<1> udDEST_ARGB(%1*2+1)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_ARGB+nBI_DESTINATION_RGB:ud
 
// End of RGB16x8_Save_RGB
/drivers/video/i965/shaders/post_processing/gen5_6/Common/RGB16x8_Save_RGB.inc
0,0 → 1,38
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: RGB16x8_Save_RGB.inc
//
 
#include "undefall.inc" //Undefine the SRC and DEST sysmbols
 
// For saving
#define nDPW_BLOCK_SIZE_ARGB nBLOCK_WIDTH_32+nBLOCK_HEIGHT_8 // ARGB block size 32x8
#define nDPW_MSG_SIZE_ARGB nMSGLEN_8 // # of MRF's to hold ARGB block data (8)
 
// For masking
#undef nDPR_MSG_SIZE_ARGB
#define nDPR_MSG_SIZE_ARGB nRESLEN_8 // # of MRF's to hold ARGB block data (8)
#define rMASK_TEMP REG(r,nTEMP0)
.declare uwMASK_TEMP Base=rMASK_TEMP ElementSize=2 SrcRegion=<8;8,1> Type=uw //1 GRF
 
#if (nSRC_REGION==nREGION_1)
// For saving
#define udDEST_ARGB udTOP_Y_IO //The output of previous stage is stored here; This is modified and is written to render cache
//For masking operation
#define udSRC_ARGB udBOT_Y_IO //To hold the destination data that shouldn't be modified
 
#elif (nSRC_REGION==nREGION_2)
// For saving
#define udDEST_ARGB udBOT_Y_IO //The output of previous stage is stored here; This is modified and is written to render cache
//For masking operation
#define udSRC_ARGB udTOP_Y_IO //To hold the destination data that shouldn't be modified
 
#endif
/drivers/video/i965/shaders/post_processing/gen5_6/Common/RGB16x8_Save_RGB16.asm
0,0 → 1,72
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: RGB16x8_Save_RGB16.asm
//
// Save packed RGB565 frame data block of size 16x8
//
// To save 16x8 block (32x8 byte layout for RGB565) we need 1 send instruction
// -----
// | 1 |
// -----
 
#include "RGB16x8_Save_RGB16.inc"
 
//convert 32 bit RGB to 16 bit RGB
// Truncate A8R8G8B8 to A6R5G6B5 within byte.
// That is keeping 5 MSB of R and B, and 6 MSB of G.
 
$for (0, 0; <nY_NUM_OF_ROWS; 1, 2) {
shr uwCSC_TEMP(%1,0)<1> ubDEST_ARGB(%2,0)<32;8,4> 3:w // B >> 3
 
shl (16) uwTEMP_RGB16(0)<1> uwDEST_ARGB(%2,1)<16;8,2> 8:w // R << 8
and (16) uwTEMP_RGB16(0)<1> uwTEMP_RGB16(0) 0xF800:uw
or (16) uwCSC_TEMP(%1,0)<1> uwCSC_TEMP(%1,0)<16;16,1> uwTEMP_RGB16(0)
 
shr (16) uwTEMP_RGB16(0)<1> uwDEST_ARGB(%2,0)<16;8,2> 5:w // G >> 5
and (16) uwTEMP_RGB16(0)<1> uwTEMP_RGB16(0) 0x07E0:uw
or (16) uwCSC_TEMP(%1,0)<1> uwCSC_TEMP(%1,0)<16;16,1> uwTEMP_RGB16(0)
}
 
mov (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w // Block origin (1st quadrant)
shl (1) rMSGSRC.0<1>:d wORIX<0;1,0>:w 1:w // H. block origin need to be doubled for byte offset
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_RGB16:ud // Block width and height (32x8)
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
 
//Use the mask to determine which pixels shouldn't be over-written
and (1) acc0.0<1>:ud udBLOCK_MASK<0;1,0>:ud 0x00FFFFFF:ud
cmp.ge.f0.0(1) dNULLREG acc0.0<0;1,0>:ud 0x00FFFFFF:ud //Check if all pixels in the block need to be modified
(f0.0) jmpi WriteRGB16ToDataPort
 
//If mask is not all 1's, then load the entire 32x8 block
//so that only those bytes may be modified that need to be (using the mask)
 
// Load 32x8 packed RGB565 -----------------------------------------------------
send (8) udSRC_RGB16(0)<1> mMSGHDR udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_RGB16+nBI_DESTINATION_RGB:ud
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
 
//Merge the data
mov (1) f0.0:uw ubBLOCK_MASK_V:ub //Load the mask on flag reg
(f0.0) mov (8) rMASK_TEMP<1>:uw uwBLOCK_MASK_H:uw //use sel instruction - vK
(-f0.0) mov (8) rMASK_TEMP<1>:uw 0:uw
 
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (1) f0.1:uw uwMASK_TEMP(0,%1)<0;1,0>
(-f0.1) mov (16) uwCSC_TEMP(%1)<1> uwSRC_RGB16(%1)
}
 
WriteRGB16ToDataPort:
// Move packed data to MRF and output
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (8) mudMSGPAYLOAD(%1)<1> udCSC_TEMP(%1)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_RGB16+nBI_DESTINATION_RGB:ud
 
// End of RGB16x8_Save_RGB16
/drivers/video/i965/shaders/post_processing/gen5_6/Common/RGB16x8_Save_RGB16.inc
0,0 → 1,49
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: RGB16x8_Save_RGB16.inc
//
 
#include "undefall.inc" //Undefine the SRC and DEST sysmbols
 
// For saving
#define nDPW_BLOCK_SIZE_RGB16 nBLOCK_WIDTH_32+nBLOCK_HEIGHT_8 // RGB16 block size 32x8
#define nDPW_MSG_SIZE_RGB16 nMSGLEN_8 // # of MRF's to hold RGB16 block data (8)
 
// For conversion to 16bit
.declare uwTEMP_RGB16 Base=REG(r,nTEMP1) ElementSize=2 SrcRegion=<16;16,1> Type=uw //1 GRF
 
// For masking
#undef nDPR_MSG_SIZE_RGB16
#define nDPR_MSG_SIZE_RGB16 nRESLEN_8 // # of MRF's to hold ARGB block data (8)
#define rMASK_TEMP REG(r,nTEMP0)
.declare uwMASK_TEMP Base=rMASK_TEMP ElementSize=2 SrcRegion=<8;8,1> Type=uw //1 GRF
 
#if (nSRC_REGION==nREGION_1)
// For saving
#define ubDEST_ARGB ubTOP_Y //Data from previous module
#define uwDEST_ARGB uwTOP_Y //Data from previous module
#define udCSC_TEMP udBOT_Y_IO //Data Converted to 16 bits
#define uwCSC_TEMP uwBOT_Y
//For masking operation
#define udSRC_RGB16 udTOP_Y_IO //To hold the destination data that shouldn't be modified
#define uwSRC_RGB16 uwTOP_Y
 
#elif (nSRC_REGION==nREGION_2)
// For saving
#define ubDEST_ARGB ubBOT_Y //Data from previous module
#define uwDEST_ARGB uwBOT_Y //Data from previous module
#define udCSC_TEMP udTOP_Y_IO //Data Converted to 16 bits
#define uwCSC_TEMP uwTOP_Y
//For masking operation
#define udSRC_RGB16 udBOT_Y_IO //To hold the destination data that shouldn't be modified
#define uwSRC_RGB16 uwBOT_Y
 
#endif
/drivers/video/i965/shaders/post_processing/gen5_6/Common/RGB16x8_Save_Y416.asm
0,0 → 1,107
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: RGB16x8_Save_Y416.asm
//
// Save packed ARGB 444 frame data block of size 16x8
//
// To save 16x8 block (128x8 byte layout for ARGB 16bit per component) we need 4 send instructions
// -----------------
// | 1 | 2 | 3 | 4 |
// -----------------
 
#include "RGB16x8_Save_RGB.inc"
 
shl (1) rMSGSRC.0<1>:d wORIX<0;1,0>:w 3:w { NoDDClr } // H. block origin need to become 8 times
mov (1) rMSGSRC.1<1>:d wORIY<0;1,0>:w { NoDDClr, NoDDChk } // Block origin (1st quadrant)
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_ARGB:ud { NoDDChk } // Block width and height (32x8)
 
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
/* Not needed for validation kernels for now -vK
//Use the mask to determine which pixels shouldn't be over-written
and (1) acc0.0<1>:ud udBLOCK_MASK<0;1,0>:ud 0x00FFFFFF:ud
cmp.ge.f0.0(1) dNULLREG acc0.0<0;1,0>:ud 0x00FFFFFF:ud //Check if all pixels in the block need to be modified
(f0.0) jmpi WriteARGBToDataPort
 
//If mask is not all 1's, then load the entire 64x8 block
//so that only those bytes may be modified that need to be (using the mask)
 
// Load first block 16x8 packed ARGB 444 ---------------------------------------
or (1) acc0.0<1>:ud udBLOCK_MASK<0;1,0>:ud 0xFF00FF00:ud //Check first block
cmp.e.f0.0 (1) dNULLREG acc0.0<0;1,0>:ud 0xFFFFFFFF:ud
(f0.0) jmpi SkipFirstBlockMerge //If full mask then skip this block
 
send (8) udSRC_ARGB(0)<1> mMSGHDR udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_ARGB+nBI_DESTINATION_RGB:ud
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
 
//Merge the data
mov (1) f0.0:uw ubBLOCK_MASK_V:ub //Load the mask on flag reg
(f0.0) mov (8) rMASK_TEMP<1>:uw uwBLOCK_MASK_H:uw //use sel instruction - vK
(-f0.0) mov (8) rMASK_TEMP<1>:uw 0:uw
 
$for(0, 0; <nY_NUM_OF_ROWS; 1, 2) { //take care of the lines in the block, they are different in the src and dest
mov (1) f0.1:uw uwMASK_TEMP(0,%1)<0;1,0>
(-f0.1) mov (8) udDEST_ARGB(%2)<1> udSRC_ARGB(%1)
}
 
SkipFirstBlockMerge:
// Load second block 16x8 packed ARGB 444 ---------------------------------------
or (1) acc0.0<1>:ud udBLOCK_MASK<0;1,0>:ud 0xFF0000FF:ud //Check second block
cmp.e.f0.0 (1) dNULLREG acc0.0<0;1,0>:ud 0xFFFFFFFF:ud
(f0.0) jmpi WriteARGBToDataPort //If full mask then skip this block
 
add (1) mMSGHDR.0<1>:d rMSGSRC.0<0;1,0>:d 32:d // Point to 2nd part
send (8) udSRC_ARGB(0)<1> mMSGHDR udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nDPR_MSG_SIZE_ARGB+nBI_DESTINATION_RGB:ud
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud // Point to 1st part again
 
//Merge the data
mov (1) f0.0:uw ubBLOCK_MASK_V:ub //Load the mask on flag reg
(f0.0) shr (8) rMASK_TEMP<1>:uw uwBLOCK_MASK_H:uw 8:uw //load the mask for second block
(-f0.0) mov (8) rMASK_TEMP<1>:uw 0:uw
 
$for(0, 1; <nY_NUM_OF_ROWS; 1, 2) { //take care of the lines in the block, they are different in the src and dest
mov (1) f0.1:uw uwMASK_TEMP(0,%1)<0;1,0>
(-f0.1) mov (8) udDEST_ARGB(%2)<1> udSRC_ARGB(%1)
}
*/
WriteARGBToDataPort:
// Move packed data to MRF and output
//Write 1st 4X8 pixels
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (8) mudMSGPAYLOAD(%1)<1> udDEST_ARGB(%1*4)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_ARGB+nBI_DESTINATION_RGB:ud
 
//Write 2nd 4X8 pixels
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
add (1) mMSGHDR.0<1>:d rMSGSRC.0<0;1,0>:d 32:d // Point to 2nd part
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (8) mudMSGPAYLOAD(%1)<1> udDEST_ARGB(%1*4+1)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_ARGB+nBI_DESTINATION_RGB:ud
 
//Write 3rd 4X8 pixels
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
add (1) mMSGHDR.0<1>:d rMSGSRC.0<0;1,0>:d 64:d // Point to 2nd part
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (8) mudMSGPAYLOAD(%1)<1> udDEST_ARGB(%1*4+2)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_ARGB+nBI_DESTINATION_RGB:ud
 
//Write 4th 4X8 pixels
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
add (1) mMSGHDR.0<1>:d rMSGSRC.0<0;1,0>:d 96:d // Point to 2nd part
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (8) mudMSGPAYLOAD(%1)<1> udDEST_ARGB(%1*4+3)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_ARGB+nBI_DESTINATION_RGB:ud
 
// End of RGB16x8_Save_Y416
/drivers/video/i965/shaders/post_processing/gen5_6/Common/RGB16x8_Save_Y416.inc
0,0 → 1,38
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: RGB16x8_Save_Y416.inc
//
 
#include "undefall.inc" //Undefine the SRC and DEST sysmbols
 
// For saving
#define nDPW_BLOCK_SIZE_ARGB nBLOCK_WIDTH_32+nBLOCK_HEIGHT_8 // ARGB block size 32x8
#define nDPW_MSG_SIZE_ARGB nMSGLEN_8 // # of MRF's to hold ARGB block data (8)
 
// For masking
#undef nDPR_MSG_SIZE_ARGB
#define nDPR_MSG_SIZE_ARGB nRESLEN_8 // # of MRF's to hold ARGB block data (8)
#define rMASK_TEMP REG(r,nTEMP0)
.declare uwMASK_TEMP Base=rMASK_TEMP ElementSize=2 SrcRegion=<8;8,1> Type=uw //1 GRF
 
#if (nSRC_REGION==nREGION_1)
// For saving
#define udDEST_ARGB udTOP_Y_IO //The output of previous stage is stored here; This is modified and is written to render cache
//For masking operation
#define udSRC_ARGB udBOT_Y_IO //To hold the destination data that shouldn't be modified
 
#elif (nSRC_REGION==nREGION_2)
// For saving
#define udDEST_ARGB udBOT_Y_IO //The output of previous stage is stored here; This is modified and is written to render cache
//For masking operation
#define udSRC_ARGB udTOP_Y_IO //To hold the destination data that shouldn't be modified
 
#endif
/drivers/video/i965/shaders/post_processing/gen5_6/Common/RGB_Pack.asm
0,0 → 1,40
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
 
.declare SRC_B Base=REG(r,10) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
.declare SRC_G Base=REG(r,18) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
.declare SRC_R Base=REG(r,26) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
.declare SRC_A Base=REG(r,34) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
 
#define DEST_ARGB ubBOT_ARGB
 
#undef nSRC_REGION
#define nSRC_REGION nREGION_2
 
 
//Pack directly to mrf as optimization - vK
 
$for(0, 0; <8; 1, 2) {
// mov (16) DEST_ARGB(%2,0)<4> SRC_B(%1) { Compr, NoDDClr } // 16 B
// mov (16) DEST_ARGB(%2,1)<4> SRC_G(%1) { Compr, NoDDClr, NoDDChk } // 16 G
// mov (16) DEST_ARGB(%2,2)<4> SRC_R(%1) { Compr, NoDDClr, NoDDChk } // 16 R //these 2 inst can be merged - vK
// mov (16) DEST_ARGB(%2,3)<4> SRC_A(%1) { Compr, NoDDChk } //DEST_RGB_FORMAT<0;1,0>:ub { Compr, NoDDChk } // 16 A
 
mov (8) DEST_ARGB(%2, 0)<4> SRC_B(%1) { NoDDClr } // 8 B
mov (8) DEST_ARGB(%2, 1)<4> SRC_G(%1) { NoDDClr, NoDDChk } // 8 G
mov (8) DEST_ARGB(%2, 2)<4> SRC_R(%1) { NoDDClr, NoDDChk } // 8 R
mov (8) DEST_ARGB(%2, 3)<4> SRC_A(%1) { NoDDChk } // 8 A
 
mov (8) DEST_ARGB(%2+1,0)<4> SRC_B(%1,8) { NoDDClr } // 8 B
mov (8) DEST_ARGB(%2+1,1)<4> SRC_G(%1,8) { NoDDClr, NoDDChk } // 8 G
mov (8) DEST_ARGB(%2+1,2)<4> SRC_R(%1,8) { NoDDClr, NoDDChk } // 8 R
mov (8) DEST_ARGB(%2+1,3)<4> SRC_A(%1,8) { NoDDChk } // 8 A
}
/drivers/video/i965/shaders/post_processing/gen5_6/Common/SetupVPKernel.asm
0,0 → 1,34
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Modual name: SetupVPKernel.asm
//
// Initial setup for running video-processing kernels
//
 
#include "common.inc"
 
//
// Now, begin source code....
//
.code
 
#include "Init_All_Regs.asm"
 
mov (8) rMSGSRC.0<1>:ud r0.0<8;8,1>:ud // Initialize message payload header with R0
#if defined (INC_BLENDING)
mul (1) fALPHA_STEP_X:f fSCALING_STEP_RATIO:f fVIDEO_STEP_X:f //StepX_ratio = AlphaStepX / VideoStepX
#endif
 
// End of SetupVPKernel
 
 
/drivers/video/i965/shaders/post_processing/gen5_6/Common/common.inc
0,0 → 1,610
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
#ifndef COMMON_INC
#define COMMON_INC
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 80
.reg_count_payload 4
 
 
//========== Common constants ==========
 
// Bit position constants
#define BIT0 0x01
#define BIT1 0x02
#define BIT2 0x04
#define BIT3 0x08
#define BIT4 0x10
#define BIT5 0x20
#define BIT6 0x40
#define BIT7 0x80
#define BIT8 0x0100
#define BIT9 0x0200
#define BIT10 0x0400
#define BIT11 0x0800
#define BIT12 0x1000
#define BIT13 0x2000
#define BIT14 0x4000
#define BIT15 0x8000
#define BIT16 0x00010000
#define BIT17 0x00020000
#define BIT18 0x00040000
#define BIT19 0x00080000
#define BIT20 0x00100000
#define BIT21 0x00200000
#define BIT22 0x00400000
#define BIT23 0x00800000
#define BIT24 0x01000000
#define BIT25 0x02000000
#define BIT26 0x04000000
#define BIT27 0x08000000
#define BIT28 0x10000000
#define BIT29 0x20000000
#define BIT30 0x40000000
#define BIT31 0x80000000
 
#define nGRFWIB 32 // GRF register width in byte
#define nGRFWIW 16 // GRF register width in word
#define nGRFWID 8 // GRF register width in dword
 
#define nTOP_FIELD 0
#define nBOTTOM_FIELD 1
 
#define nPREVIOUS_FRAME 0 // Previous frame
#define nCURRENT_FRAME 1 // Current frame
#define nNEXT_FRAME 2 // Next frame
 
#ifdef GT
// GT DI Kernel
#else // ILK
// ILK DI Kernel
#endif
 
//===================================
 
//========== Macros ==========
#define REGION(Width,HStride) <Width*HStride;Width,HStride> // Region definition when ExecSize = Width
 
#define RegFile(a) a
#define REG(r,n) _REG(RegFile(r),n)
#define _REG(r,n) __REG(r,n)
#define __REG(r,n) r##n.0
#define REG2(r,n,s) _REG2(RegFile(r),n,s)
#define _REG2(r,n,s) __REG2(r,n,s)
#define __REG2(r,n,s) r##n.##s
 
#define dNULLREG null<1>:d
#define wNULLREG null<1>:w
#define KERNEL_ID(kernel_ID) mov NULLREG kernel_ID:ud
 
 
#define NODDCLR
#define NODDCLR_NODDCHK
#define NODDCHK
 
//#define NODDCLR { NoDDClr }
//#define NODDCLR_NODDCHK { NoDDClr, NoDDChk }
//#define NODDCHK { NoDDChk }
 
 
//========== Defines ====================
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r5 (5 GRFS)
// Inline parameters : r6 - r7 (2 GRFs)
// MSGSRC : r9 (1 GRF)
// Top IO region : r10 - r33 (24 GRFS 8 for each component Y,U,V 16X8:w)
// Free space : r34 - r55 (22 GRFS)
// Bottom IO region : r56 - r79 (24 GRFS 8 for each component Y,U,V 16X8:w)
//===================================
 
 
//========== Static Parameters ==========
// r1
#define fPROCAMP_C0 r1.0 // DWORD 0, Procamp constant C0 in :f
#define wPROCAMP_C0 r1.0 // DWORD 0, Procamp constant C0 in :w
#define NUMBER_0002 r1.1 // DWORD 0, 0x0002 used in procamp for GT
#define udCP_MessageFormat r1.0 // DWORD 0, bits 2:3 of DWORD. (CE)
#define udCP_StatePointer r1.0 // DWORD 0, bits 31:5 of DWORD.(CE)
 
#define ubSRC_CF_OFFSET r1.4 // DWORD 1, byte 0-2. SRC packed color format YUV offset in :ub
 
#define ubDEST_RGB_FORMAT r1.8 // DWORD 2, byte 0. Dest RGB color format (0:ARGB FF:XRGB)
#define ubDEST_CF_OFFSET r1.8 // DWORD 2, byte 0-2. Dest packed color format YUV offset in :ub
 
#define fPROCAMP_C1 r1.3 // DWORD 3, Procamp constant C1 in :f
#define wPROCAMP_C1 r1.6 // DWORD 3, Procamp constant C1 in :w
#define NUMBER_0100 r1.7 // DWORD 3, 0x0100 used in procamp for GT
 
#define fPROCAMP_C2 r1.4 // DWORD 4, Procamp constant C2 in :f
#define wPROCAMP_C2 r1.8 // DWORD 4, Procamp constant C2 in :w
 
#define uwSPITCH_DIV2 r1.10 // DWORD 5, byte 0-1. statistics surface pitch divided by 2
 
#define fVIDEO_STEP_Y r1.6 // DWORD 6, :f, AVS normalized reciprocal of Y Scaling factor
#define ubSTMM_SHIFT r1.24 // DWORD 6, byte 0. Amount of right shift for the DI blending equation
#define ubSTMM_MIN r1.25 // DWORD 6, byte 1. Min STMM for DI blending equation
#define ubSTMM_MAX r1.26 // DWORD 6, byte 2. Max STMM for DI blending equation
#define ubTFLD_FIRST r1.27 // DWORD 6, byte 3. Field parity order
 
#define fPROCAMP_C5 r1.7 // DWORD 7, Procamp constant C3 in :f
#define wPROCAMP_C5 r1.14 // DWORD 7, Procamp constant C3 in :w
 
// r2
#define fPROCAMP_C3 r2.0 // DWORD 0, Procamp constant C4 in :f
#define wPROCAMP_C3 r2.0 // DWORD 0, Procamp constant C4 in :w
#define fCSC_C5 r2.2 // DWORD 2. WG+CSC constant C5
#define wCSC_C5 r2.4 // DWORD 2. WG+CSC constant C5
 
#define fPROCAMP_C4 r2.3 // DWORD 3, Procamp constant C5 in :f
#define wPROCAMP_C4 r2.6 // DWORD 3, Procamp constant C5 in :w
 
#define fCSC_C8 r2.4 // DWORD 4. WG+CSC constant C8
#define wCSC_C8 r2.8 // DWORD 4. WG+CSC constant C8
#define fCSC_C9 r2.7 // DWORD 7. WG+CSC constant C9
#define wCSC_C9 r2.14 // DWORD 7. WG+CSC constant C9
 
// r3
#define fCSC_C0 r3.0 // DWORD 0. WG+CSC constant C0
#define wCSC_C0 r3.0 // DWORD 0. WG+CSC constant C0
 
#define fSCALING_STEP_RATIO r3.1 // DWORD 1, = Alpha_X_Scaling_Step / Video_X_scaling_Step :f (blending)
#define fALPHA_STEP_X r3.1 // DWORD 1, = 1/Scale X, 0.5 = 2x, in :f (blending)
 
#define fALPHA_STEP_Y r3.2 // DWORD 2, = 1/Scale Y, in :f
 
#define fCSC_C4 r3.3 // DWORD 3. WG+CSC constant C4
#define wCSC_C4 r3.6 // DWORD 3. WG+CSC constant C4
#define fCSC_C1 r3.4 // DWORD 4. WG+CSC constant C1
#define wCSC_C1 r3.8 // DWORD 4. WG+CSC constant C1
 
#define wSRC_H_ORI_OFFSET r3.10 // DWORD 5, bytes 0,1 :w
#define wSRC_V_ORI_OFFSET r3.11 // DWORD 5, bytes 2,3 :w
 
#define dCOLOR_PIXEL r3.6 // DWORD 6. Color pixel for Colorfill
 
#define fCSC_C2 r3.6 // DWORD 6. WG+CSC constant C2
#define wCSC_C2 r3.12 // DWORD 6. WG+CSC constant C2
#define fCSC_C3 r3.7 // DWORD 7. WG+CSC constant C3
#define wCSC_C3 r3.14 // DWORD 7. WG+CSC constant C3
 
// r4
#define fCSC_C6 r4.0 // DWORD 0. WG+CSC constant C6
#define wCSC_C6 r4.0 // DWORD 0. WG+CSC constant C6
 
#define wFRAME_ENDX r4.2 // DWORD 1, word 0. Horizontal end = Origin+Width (in pixels)(for multiple blocks)
#define wNUM_BLKS r4.3 // DWORD 1, word 1. Number of blocks to process (for multiple blocks)
 
#define wCOPY_ORIX r4.5 // DWORD 2, word 1. A copy of X origin (for multiple blocks)
#define uwNLAS_ENABLE r4.4 // DWORD 2, bit 15, NLAS enble bit
 
#define fCSC_C7 r4.3 // DWORD 3. WG+CSC constant C7
#define wCSC_C7 r4.6 // DWORD 3. WG+CSC constant C7
#define fCSC_C10 r4.4 // DWORD 4. WG+CSC constant C10
#define wCSC_C10 r4.8 // DWORD 4. WG+CSC constant C10
 
#define fFRAME_VID_ORIX r4.5 // DWORD 5, Frame horizontal origin normalized for scale kernel
 
#define fFRAME_ALPHA_ORIX r4.6 // DWORD 6. Normalized alpha horiz origin for the frame
 
#define fCSC_C11 r4.7 // DWORD 7. WG+CSC constant C11
#define wCSC_C11 r4.14 // DWORD 7. WG+CSC constant C11
 
//========================================
 
//========== Inline parameters ===========
// r5
#define wORIX r5.0 // DWORD 0, byte 0-1. :w, Destination Block Horizontal Origin in pel
#define wORIY r5.1 // DWORD 0, byte 2-3. :w, Destination Block Vertical Origin in pel
 
#define fSRC_VID_H_ORI r5.1 // DWORD 1, :f, SRC Y horizontal origin normalized for scale kernel
 
#define fSRC_VID_V_ORI r5.2 // DWORD 2, :f, SRC Y vertical origin normalized for scale kernel
 
#define fSRC_ALPHA_H_ORI r5.3 // DWORD 3, :f, Normalized alpha horizontal origin
 
#define fSRC_ALPHA_V_ORI r5.4 // DWORD 4, :f, Normalized alpha vertical origin
 
#define uwALPHA_MASK_X r5.10 // DWORD 5, byte 0-1 :w, H. alpha mask
#define ubALPHA_MASK_Y r5.22 // DWORD 5, byte 2. :ub,V. alpha mask
#define ubBLK_CNT_X r5.23 // DWORD 5, byte 3, :ub, Horizontal Block Count per thread
 
#define udBLOCK_MASK r5.6 // DWORD 6
#define uwBLOCK_MASK_H r5.12 // DWORD 6, byte 0-1 :uw, Block horizontal mask used in non-DWord aligned kernels
#define ubBLOCK_MASK_V r5.26 // DWORD 6, byte 2 :ub, Block vertical mask used in non-DWord aligned kernels
#define ubNUM_BLKS r5.27 // DWORD 6, byte 3, :ub, Total Block Count per thread
 
#define fVIDEO_STEP_X r5.7 // DWORD 7. :f, AVS normalized reciprocal of X Scaling factor
 
// r6
#define fVIDEO_STEP_DELTA r6.0 // DWORD 0. :f, AVS normalized delta between 2 adjacent scaling steps (used for non-linear scaling)
 
 
//====================== Binding table =========================================
 
#if defined(DNDI)
// DNDI Surface Binding Table
//#define nBI_SRC_CURR 0 // Current input frame surface
//#define nBI_SRC_PRIV 1 // Denoised previous input frame surface
//#define nBI_SRC_STAT 2 // Statistics input surface (STMM / Noise motion history)
//#define nBI_DEST_1ST 3 // 1st deinterlaced output frame surface
// #define nBI_DEST_YUV 3 // Dest frame YUV (for DN only)
//#define nBI_DEST_Y 3 // Dest frame Y (for DN only)
//#define nBI_DEST_2ND 4 // 2nd deinterlaced output frame surface
//#define nBI_DEST_DN_CURR 6 // Denoised current output frame surface
//#define nBI_DEST_STAT 7 // Statistics output surface (STMM / Noise motion history)
// #define nBI_DEST_U 8 // Dest frame U (for DN only)
// #define nBI_DEST_V 9 // Dest frame V (for DN only)
// #define nBI_SRC_U 10 // Src frame U (for DN only)
// #define nBI_SRC_V 11 // Src frame V (for DN only)
// #define nBI_SRC_UV 10 // Current src frame for UV
#endif
 
#if defined(INPUT_PL3)
// PL3 Surface Binding Table
// #define nBI_SRC_ALPHA 0 // Alpha
// #define nBI_SRC_Y 1 // Current src frame
// #define nBI_SRC_U 2 // Current src frame
// #define nBI_SRC_V 3 // Current src frame
// #define nBI_DEST_Y 10 // Dest frame
// #define nBI_DEST_U 11 // Dest frame
// #define nBI_DEST_V 12 // Dest frame
// #define nBI_DEST_YUV 7 // Dest frame
// #define nBI_DEST_RGB 7 // same num as BI_DEST_YUV, never used at the same time
#endif
 
#if defined(INPUT_PL2)
// PL2 Surface Binding Table
// #define nBI_SRC_ALPHA 0 // Alpha
// #define nBI_SRC_Y 1 // Current src frame for Y + offseted UV
// #define nBI_SRC_YUV 1 // Current src frame for YUV in case of NV12_AVS
// #define nBI_SRC_UV 2 // Current src frame for UV
// #define nBI_DEST_YUV 7 // Current dest frame for Y + offseted UV
// #define nBI_DEST_RGB 7 // same num as BI_DEST_YUV, never used at the same time
// #define nBI_DEST_Y 10 // Dest frame
// #define nBI_DEST_U 11 // Dest frame
// #define nBI_DEST_V 12 // Dest frame
#endif
 
#if defined(INPUT_PA) || defined(COLORFILL)
// Packed Surface Binding Table
// #define nBI_SRC_ALPHA 0 // Alpha
// #define nBI_SRC_YUV 1 // Current src frame
// #define nBI_DEST_YUV 3 // Dest frame
// #define nBI_DEST_RGB 3 // same num as BI_DEST_YUV, never used at the same time
#endif
 
 
//supper binding table
#define nBI_ALPHA_SRC 0
#define nBI_CURRENT_SRC_YUV 1
#define nBI_FIELD_COPY_SRC_1_YUV 1
#define nBI_CURRENT_SRC_Y 1
#define nBI_FIELD_COPY_SRC_1_Y 1
#define nBI_CURRENT_SRC_RGB 1
#define nBI_CURRENT_SRC_UV 2
#define nBI_FIELD_COPY_SRC_1_UV 2
#define nBI_CURRENT_SRC_U 2
#define nBI_FIELD_COPY_SRC_1_U 2
#define nBI_CURRENT_SRC_V 3
#define nBI_FIELD_COPY_SRC_1_V 3
#define nBI_TEMPORAL_REFERENCE_YUV 4
#define nBI_FIELD_COPY_SRC_2_YUV 4
#define nBI_TEMPORAL_REFERENCE_Y 4
#define nBI_FIELD_COPY_SRC_2_Y 4
#define nBI_CURRENT_SRC_YUV_HW_DI 4
#define nBI_TEMPORAL_REFERENCE_UV 5
#define nBI_FIELD_COPY_SRC_2_UV 5
#define nBI_TEMPORAL_REFERENCE_U 5
#define nBI_FIELD_COPY_SRC_2_U 5
#define nBI_DENOISED_PREV_HW_DI 5
#define nBI_TEMPORAL_REFERENCE_V 6
#define nBI_FIELD_COPY_SRC_2_V 6
#define nBI_STMM_HISTORY 6
#define nBI_DESTINATION_YUV 7
#define nBI_DESTINATION_RGB 7
#define nBI_DESTINATION_Y 7
#define nBI_DESTINATION_UV 8
#define nBI_DESTINATION_U 8
#define nBI_DESTINATION_V 9
#define nBI_DESTINATION_1_YUV 10
#define nBI_DESTINATION_1_Y 10
#define nBI_DESTINATION_1_UV 11
#define nBI_DESTINATION_1_U 11
#define nBI_DESTINATION_1_V 12
#define nBI_DESTINATION_2_YUV 13
#define nBI_DESTINATION_2_Y 13
#define nBI_DESTINATION_2_UV 14
#define nBI_DESTINATION_2_U 14
#define nBI_DESTINATION_2_V 15
#define nBI_STMM_HISTORY_OUTPUT 20
#define nBI_TEMPORAL_REFERENCE_YUV_PDI 21
#define nBI_TEMPORAL_REFERENCE_Y_PDI 21
#define nBI_TEMPORAL_REFERENCE_UV_PDI 22
#define nBI_TEMPORAL_REFERENCE_U_PDI 22
#define nBI_TEMPORAL_REFERENCE_V_PDI 23
#define nBI_SUBVIDEO_YUV 26
#define nBI_SUBVIDEO_Y 26
#define nBI_SUBVIDEO_UV 27
#define nBI_SUBVIDEO_U 27
#define nBI_SUBVIDEO_V 28
#define nBI_SUBPICTURE_YUV 29
#define nBI_SUBPICTURE_P8 29
#define nBI_SUBPICTURE_A8 30
#define nBI_GRAPHIC_YUV 31
#define nBI_GRAPHIC_P8 31
#define nBI_GRAPHIC_A8 32
 
 
 
//========== Planar Sampler State Table Index ==========
#define nSI_SRC_ALPHA 0x000 // Sampler State for Alpha
 
//Sampler Index for AVS/IEF messages
#define nSI_SRC_Y 0x400 // Sampler State for Y
#define nSI_SRC_U 0x800 // Sampler State for U
#define nSI_SRC_V 0xC00 // Sampler State for V
#define nSI_SRC_UV 0x800 // For NV12 surfaces
#define nSI_SRC_YUV 0x400 // For Packed surfaces
#define nSI_SRC_RGB 0x400 // For ARGB surfaces
 
//Sampler Index for SIMD16 sampler messages
#define nSI_SRC_SIMD16_Y 0x100 // Sampler State for Y
#define nSI_SRC_SIMD16_U 0x200 // Sampler State for U
#define nSI_SRC_SIMD16_V 0x300 // Sampler State for V
#define nSI_SRC_SIMD16_UV 0x200 // For NV12 surfaces
#define nSI_SRC_SIMD16_YUV 0x100 // For Packed surfaces
#define nSI_SRC_SIMD16_RGB 0x100 // For ARGB surfaces
 
 
 
// Common Registers
#define pCF_Y_OFFSET a0.4 // Address register holding Y offset
#define pCF_U_OFFSET a0.5 // Address register holding U offset
#define pCF_V_OFFSET a0.6 // Address register holding V offset
 
// #define YUV_ORI ORIX // Used by writing packed data to dport
 
 
//================= Message Payload Header fields ==============================
#define IDP r0.2:ud // Interface Descriptor Pointer
 
//================= Common Message Descriptor TBD add common load and save =====
// Message descriptor for dataport media write
#ifdef GT
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 0 1010 (media block write) 00000
// 00000000 (binding table index - set later)
// = 0x02094000
#define nDPMW_MSGDSC 0x02094000
#define nDPMR_MSGDSC 0x02098000 // Data Port Media Block Read Message Descriptor
// TBD
#else // ILK
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 000 0 010 (media block write) 0000
// 00000000 (binding table index - set later)
// = 0x02082000
#define nDPMW_MSGDSC 0x02082000 // Data Port Media Block Write Message Descriptor
#define nDPMR_MSGDSC 0x0208A000 // Data Port Media Block Read Message Descriptor
#endif
 
// Message Length defines
#define nMSGLEN_1 0x02000000 // Message Length of 1 GRF for Send
#define nMSGLEN_2 0x04000000 // Message Length of 2 GRF for Send
#define nMSGLEN_4 0x08000000 // Message Length of 4 GRF for Send
#define nMSGLEN_8 0x10000000 // Message Length of 8 GRF for Send
 
// Response Length defines
#define nRESLEN_1 0x00100000 // Message Response Length of 1 GRF from Send
#define nRESLEN_2 0x00200000 // Message Response Length of 2 GRF from Send
#define nRESLEN_3 0x00300000 // Message Response Length of 3 GRF from Send
#define nRESLEN_4 0x00400000 // Message Response Length of 4 GRF from Send
#define nRESLEN_5 0x00500000 // Message Response Length of 5 GRF from Send
#define nRESLEN_8 0x00800000 // Message Response Length of 8 GRF from Send
#define nRESLEN_9 0x00900000 // Message Response Length of 9 GRF from Send
#define nRESLEN_11 0x00B00000 // Message Response Length of 11 GRF from Send
#define nRESLEN_12 0x00C00000 // Message Response Length of 12 GRF from Send
#define nRESLEN_16 0x01000000 // Message Response Length of 16 GRF from Send
 
// Block Width and Height Size defines
#define nBLOCK_WIDTH_4 0x00000003 // Block Width 4
#define nBLOCK_WIDTH_5 0x00000004 // Block Width 5
#define nBLOCK_WIDTH_8 0x00000007 // Block Width 8
#define nBLOCK_WIDTH_9 0x00000008 // Block Width 9
#define nBLOCK_WIDTH_12 0x0000000B // Block Width 12
#define nBLOCK_WIDTH_16 0x0000000F // Block Width 16
#define nBLOCK_WIDTH_20 0x00000013 // Block Width 20
#define nBLOCK_WIDTH_32 0x0000001F // Block Width 32
#define nBLOCK_HEIGHT_1 0x00000000 // Block Height 1
#define nBLOCK_HEIGHT_2 0x00010000 // Block Height 2
#define nBLOCK_HEIGHT_4 0x00030000 // Block Height 4
#define nBLOCK_HEIGHT_5 0x00040000 // Block Height 5
#define nBLOCK_HEIGHT_8 0x00070000 // Block Height 8
 
// Extended Message Descriptors
#define nEXTENDED_MATH 0x1
#define nSMPL_ENGINE 0x2
#define nMESSAGE_GATEWAY 0x3
#define nDATAPORT_READ 0x4
#define nDATAPORT_WRITE 0x5
#define nURB 0x6
#define nTS_EOT 0x27 // with End-Of-Thread bit ON
 
// Common message descriptors:
#ifdef GT
#define nEOT_MSGDSC 0x02000010 // End of Thread Message Descriptor
#define IF_NULL null:uw null:uw null:uw //for different if instructions on ILK and Gen6
#else //ILK
#define nEOT_MSGDSC 0x02000000 // End of Thread Message Descriptor
#define IF_NULL
#endif
 
 
//===================== Math Function Control ===================================
#define mfcINV 0x1 // reciprocal
#define mfcLOG 0x2 // log
#define mfcEXP 0x3 // exponent
#define mfcSQRT 0x4 // square root
#define mfcRSQ 0x5 // reciprocal square root
#define mfcSIN 0x6 // sine (in radians)
#define mfcCOS 0x7 // cosine (in radians)
#define mfcSINCOS 0x8 // dst0 = sin of src0, dst1 = cosine of src0 (in radians) - GT+ ONLY
#define mfcPOW 0xA // abs(src0) raised to the src1 power
#define mfcINT_DIV_QR 0xB // return quotient and remainder
#define mfcINT_DIV_Q 0xC // return quotient
#define mfcINT_DIV_R 0xD // return remainder
 
 
//=================== Message related registers =================================
 
#ifdef GT
#define udDUMMY_NULL
#else // _ILK
#define udDUMMY_NULL null:ud // Used in send inst as src0
#endif
 
//----------- Message Registers ------------
#define mMSGHDR m1 // Message Payload Header
#define mMSGHDRY m1 // Message Payload Header register for Y data
#define mMSGHDRU m2 // Message Payload Header register for U data
#define mMSGHDRV m3 // Message Payload Header register for V data
#define mMSGHDRYA m4 // Second Message Payload Header register for Y data
#define mMSGHDRH m5 // Message Payload Header register for motion history
#define mMSGHDRY1 m1 // Message Payload Header register for first Y data
#define mMSGHDRY2 m2 // Message Payload Header register for second Y data
#define mMSGHDRY3 m3 // Message Payload Header register for third Y data
#define mMSGHDRY4 m4 // Message Payload Header register for fourth Y data
#define mMSGHDRY5 m5 // Message Payload Header register for fifth Y data
#define mMSGHDRY6 m6 // Message Payload Header register for sixth Y data
#define mMSGHDR_EOT m15 // Dummy Message Register for EOT
 
#define rMSGSRC r8 // Message source register
#define pMSGDSC a0.0:ud // Message Descriptor register (type DWORD)
 
#define udMH_ORI rMSGSRC.0 // Data Port Media Block R/W message header block offset
#define udMH_ORIX rMSGSRC.0 // Data Port Media Block R/W message header X offset
#define udMH_ORIY rMSGSRC.1 // Data Port Media Block R/W message header Y offset
#define udMH_SIZE rMSGSRC.2 // Data Port Media Block R/W message header block width & height
 
// M2 - M9 for message data payload
.declare mubMSGPAYLOAD Base=m2 ElementSize=1 SrcRegion=REGION(16,1) Type=ub
.declare muwMSGPAYLOAD Base=m2 ElementSize=2 SrcRegion=REGION(16,1) Type=uw
.declare mudMSGPAYLOAD Base=m2 ElementSize=4 SrcRegion=REGION(8,1) Type=ud
.declare mfMSGPAYLOAD Base=m2 ElementSize=4 SrcRegion=REGION(8,1) Type=f
 
//=================== End of thread instruction ===========================
#ifdef GT
#define END_THREAD mov (8) mMSGHDR_EOT<1>:ud r0.0<8;8,1>:ud \n\
send (1) null<1>:d mMSGHDR_EOT nTS_EOT nEOT_MSGDSC
#else // ILK This should be changed to 1 instruction; I have tested it and it works - vK
#define END_THREAD mov (8) mMSGHDR_EOT<1>:ud r0.0<8;8,1>:ud \n\
send (1) dNULLREG mMSGHDR_EOT udDUMMY_NULL nTS_EOT nEOT_MSGDSC:ud
#endif
 
 
//=======================================================================
// Region declarations for SRC and DEST as TOP and BOT
 
// Common I/O regions
#define nREGION_1 1
#define nREGION_2 2
 
//*** These region base GRFs are fixed regardless planar/packed, and data alignment.
//*** Each kernel is responsible to select the correct region declaration below.
//*** YUV regions are not necessarily next to each other.
#define nTOP_Y 10 // r10 - r17 (8 GRFs)
#define nTOP_U 18 // r18 - r25 (8 GRFs)
#define nTOP_V 26 // r26 - r33 (8 GRFs)
 
#define nBOT_Y 56 // r56 - r63 (8 GRFs)
#define nBOT_U 64 // r64 - r71 (8 GRFs)
#define nBOT_V 72 // r72 - r79 (8 GRFs)
 
// Define temp space for any usages
#define nTEMP0 34
#define nTEMP1 35
#define nTEMP2 36
#define nTEMP3 37
#define nTEMP4 38
#define nTEMP5 39
#define nTEMP6 40
#define nTEMP7 41
#define nTEMP8 42
#define nTEMP10 44
#define nTEMP12 46
#define nTEMP14 48
#define nTEMP16 50
#define nTEMP17 51
#define nTEMP18 52
 
#define nTEMP24 58
 
// Common region 1
.declare ubTOP_Y Base=REG(r,nTOP_Y) ElementSize=1 SrcRegion=REGION(16,1) DstRegion=<1> Type=ub
.declare ubTOP_U Base=REG(r,nTOP_U) ElementSize=1 SrcRegion=REGION(8,1) DstRegion=<1> Type=ub
.declare ubTOP_V Base=REG(r,nTOP_V) ElementSize=1 SrcRegion=REGION(8,1) DstRegion=<1> Type=ub
.declare uwTOP_Y Base=REG(r,nTOP_Y) ElementSize=2 SrcRegion=REGION(16,1) DstRegion=<1> Type=uw
.declare uwTOP_U Base=REG(r,nTOP_U) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
.declare uwTOP_V Base=REG(r,nTOP_V) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
.declare ub2TOP_Y Base=REG(r,nTOP_Y) ElementSize=1 SrcRegion=REGION(16,2) DstRegion=<1> Type=ub
.declare ub2TOP_U Base=REG(r,nTOP_U) ElementSize=1 SrcRegion=REGION(8,2) DstRegion=<1> Type=ub
.declare ub2TOP_V Base=REG(r,nTOP_V) ElementSize=1 SrcRegion=REGION(8,2) DstRegion=<1> Type=ub
 
.declare ub4TOP_Y Base=REG(r,nTOP_Y) ElementSize=1 SrcRegion=REGION(8,4) Type=ub
.declare ub4TOP_U Base=REG(r,nTOP_U) ElementSize=1 SrcRegion=REGION(8,4) Type=ub
.declare ub4TOP_V Base=REG(r,nTOP_V) ElementSize=1 SrcRegion=REGION(8,4) Type=ub
 
.declare ubTOP_ARGB Base=REG(r,nTOP_Y) ElementSize=1 SrcRegion=REGION(8,4) Type=ub
 
// Used by "send" instruction
.declare udTOP_Y_IO Base=REG(r,nTOP_Y) ElementSize=4 SrcRegion=REGION(8,1) Type=ud
.declare udTOP_U_IO Base=REG(r,nTOP_U) ElementSize=4 SrcRegion=REGION(8,1) Type=ud
.declare udTOP_V_IO Base=REG(r,nTOP_V) ElementSize=4 SrcRegion=REGION(8,1) Type=ud
 
// Common region 2
.declare ubBOT_Y Base=REG(r,nBOT_Y) ElementSize=1 SrcRegion=REGION(16,1) DstRegion=<1> Type=ub
.declare ubBOT_U Base=REG(r,nBOT_U) ElementSize=1 SrcRegion=REGION(8,1) DstRegion=<1> Type=ub
.declare ubBOT_V Base=REG(r,nBOT_V) ElementSize=1 SrcRegion=REGION(8,1) DstRegion=<1> Type=ub
.declare uwBOT_Y Base=REG(r,nBOT_Y) ElementSize=2 SrcRegion=REGION(16,1) DstRegion=<1> Type=uw
.declare uwBOT_U Base=REG(r,nBOT_U) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
.declare uwBOT_V Base=REG(r,nBOT_V) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
.declare ub2BOT_Y Base=REG(r,nBOT_Y) ElementSize=1 SrcRegion=REGION(16,2) DstRegion=<1> Type=ub
.declare ub2BOT_U Base=REG(r,nBOT_U) ElementSize=1 SrcRegion=REGION(8,2) DstRegion=<1> Type=ub
.declare ub2BOT_V Base=REG(r,nBOT_V) ElementSize=1 SrcRegion=REGION(8,2) DstRegion=<1> Type=ub
 
.declare ubBOT_ARGB Base=REG(r,nBOT_Y) ElementSize=1 SrcRegion=REGION(8,4) Type=ub
 
// Used by "send" instruction
.declare udBOT_Y_IO Base=REG(r,nBOT_Y) ElementSize=4 SrcRegion=REGION(8,1) Type=ud
.declare udBOT_U_IO Base=REG(r,nBOT_U) ElementSize=4 SrcRegion=REGION(8,1) Type=ud
.declare udBOT_V_IO Base=REG(r,nBOT_V) ElementSize=4 SrcRegion=REGION(8,1) Type=ud
 
// End of common.inc
 
#endif // COMMON_INC
/drivers/video/i965/shaders/post_processing/gen5_6/Common/readSampler16x1.asm
0,0 → 1,55
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: readSampler16x1.asm
//
// Read one row of pix through sampler
//
 
 
 
//#define SAMPLER_MSG_DSC 0x166A0000 // ILK Sampler Message Descriptor
 
 
 
// Send Message [DevILK] Message Descriptor
// MBZ MsgL=5 MsgR=8 H MBZ SIMD MsgType SmplrIndx BindTab
// 000 0 101 0 1000 1 0 10 0000 0000 00000000
// 0 A 8 A 0 0 0 0
 
// MsgL=1+2*2(u,v)=5 MsgR=8
#define SAMPLER_MSG_DSC 0x0A8A0000 // ILK Sampler Message Descriptor
 
 
 
 
 
 
// Assume MSGSRC is set already in the caller
//mov (8) rMSGSRC.0<1>:ud 0:ud // Unused fileds
 
 
 
// Read 16 sampled pixels and stored them in float32 in 8 GRFs
// 422 data is expanded to 444, return 8 GRF in the order of RGB- (UYV-).
// 420 data has three surfaces, return 8 GRF. Valid is always in the 1st GRF when in R8. Make sure no overwrite the following 3 GRFs.
// alpha data is expanded to 4444, return 8 GRF in the order of RGBA (UYVA).
 
mov(16) mMSGHDR<1>:uw rMSGSRC<16;16,1>:uw
send (16) DATABUF(0)<1> mMSGHDR udDUMMY_NULL 0x2 SAMPLER_MSG_DSC+SAMPLER_IDX+BINDING_IDX:ud
 
 
 
 
 
 
/drivers/video/i965/shaders/post_processing/gen5_6/Common/undefall.inc
0,0 → 1,65
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Modual name: undefall.inc
//
// undefine all global symbol for new process
//
 
//Source definitions
#undef ubSRC_Y
#undef ubSRC_U
#undef ubSRC_V
 
#undef ub2SRC_Y
#undef ub2SRC_U
#undef ub2SRC_V
 
#undef ub4SRC_Y
#undef ub4SRC_U
#undef ub4SRC_V
 
#undef uwSRC_Y
#undef uwSRC_U
#undef uwSRC_V
 
#undef udSRC_Y
#undef udSRC_U
#undef udSRC_V
 
#undef udSRC_YUV
#undef nSRC_YUV_REG
 
//Destination definitions
#undef ubDEST_Y
#undef ubDEST_U
#undef ubDEST_V
 
#undef ub2DEST_Y
#undef ub2DEST_U
#undef ub2DEST_V
 
#undef ub4DEST_Y
#undef ub4DEST_U
#undef ub4DEST_V
 
#undef uwDEST_Y
#undef uwDEST_U
#undef uwDEST_V
 
#undef udDEST_Y
#undef udDEST_U
#undef udDEST_V
 
#undef udDEST_YUV
#undef nDEST_YUV_REG
#undef ubDEST_ARGB
 
// End of undefall.inc
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/AVS_IEF.inc
0,0 → 1,108
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: AVS_IEF.inc
 
#ifndef _AVS_INF_INC_
#define _AVS_INF_INC_
 
#include "undefall.inc" //Undefine the SRC and DEST sysmbols
 
// Message Header
// m0.7 31:0 Debug
// m0.6 31:0 Debug
// m0.5 31:0 Ignored
// m0.4 31:0 Ignored
// m0.3 31:0 Ignored
// m0.2 31:16 Ignored
// 15 Alpha Write Channel Mask enable=0, disable=1
// 14 Blue Write Channel Mask (V)
// 13 Green Write Channel Mask (Y)
// 12 Red Write Channel Mask (U)
// 11:0 Ignored
// m0.1 Ignored
// m0.0 Ignored
 
#define mAVS_8x8_HDR m0 // Message Header
#define mAVS_PAYLOAD m1 // Message Payload Header
 
#define mAVS_8x8_HDR_2 m2 // Message Header
#define mAVS_PAYLOAD_2 m3 // Message Payload Header
 
#define mAVS_8x8_HDR_UV m2 // Message Header
#define mAVS_PAYLOAD_UV m3 // Message Payload Header
 
#define rAVS_8x8_HDR rMSGSRC // Mirror of Message Header
#define rAVS_PAYLOAD r9 // Mirror of Message Payload Header
// AVS payload
// m1.7 Ignored
// m1.6 Pixel 0 V Address ---> ORIY (Y0)
// m1.5 Delta V ---> Step Y
// m1.4 Ignored
// m1.3 Ignored
// m1.2 Pixel 0 U Address ---> ORIX (X0)
// m1.1 U 2nd Derivative ---> NLAS dx
// m1.0 Delta U ---> Step X
 
// Sampler Message Descriptor
// 31:29 Reserved 000
// 28:25 Message length 0010
// 24:20 Response length xxxxx ---> 4GRFs for each enabled channel
// 19 Header Present 1
// 18 MBZ 0
// 17:16 SIMD Mode 11 ---> SIMD64
// 15:12 Message Type 0011 ---> sample_8x8
// 11:8 Sampler Index xxxx
// 7:0 Binding Table Index xxxxxxxx
#define nAVS_MSG_DSC_1CH 0x044BB000
#define nAVS_MSG_DSC_2CH 0x048BB000
#define nAVS_MSG_DSC_3CH 0x04CBB000
#define nAVS_MSG_DSC_4CH 0x050BB000
 
#define nAVS_RED_CHANNEL_ONLY 0x0000E000 // Enable Red channel only
#define nAVS_GREEN_CHANNEL_ONLY 0x0000D000 // Enable Green channel only
#define nAVS_RED_BLUE_CHANNELS 0x0000A000 // Enable Red and Blue channels
#define nAVS_RGB_CHANNELS 0x00008000 // Enable RGB(YUV) channels
#define nAVS_ALL_CHANNELS 0x00000000 // Enable all channels (ARGB\AYUV)
 
 
.declare ubAVS_RESPONSE Base=REG(r,nTEMP8) ElementSize=1 SrcRegion=REGION(16,1) Type=ub
.declare uwAVS_RESPONSE Base=REG(r,nTEMP8) ElementSize=2 SrcRegion=REGION(16,1) Type=uw
 
.declare ubAVS_RESPONSE_2 Base=REG(r,nTEMP24) ElementSize=1 SrcRegion=REGION(16,1) Type=ub
.declare uwAVS_RESPONSE_2 Base=REG(r,nTEMP24) ElementSize=2 SrcRegion=REGION(16,1) Type=uw
 
 
#if (nSRC_REGION==nREGION_2)
#define uwDEST_Y uwBOT_Y
#define uwDEST_U uwBOT_U
#define uwDEST_V uwBOT_V
 
#define ubDEST_Y ubBOT_Y
#undef nSRC_REGION
#define nSRC_REGION nREGION_2
 
#else //(nSRC_REGION==nREGION_1)
#define uwDEST_Y uwTOP_Y
#define uwDEST_U uwTOP_U
#define uwDEST_V uwTOP_V
 
#define ubDEST_Y ubTOP_Y
#undef nSRC_REGION
#define nSRC_REGION nREGION_1
 
#endif
 
 
#endif //_AVS_INF_INC_
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/AVS_SetupFirstBlock.asm
0,0 → 1,35
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//------------------------------------------------------------------------------
// AVS_SetupFirstBlock.asm
//------------------------------------------------------------------------------
// Setup Message Header
// mov (8) mAVS_8x8_HDR<1>:ud rMSGSRC<8;8,1>:ud
 
// Check NLAS Enable bit
and.z.f0.0 (1) wNULLREG uwNLAS_ENABLE:uw BIT15:uw
(f0.0)mov (1) fVIDEO_STEP_DELTA:f 0.0:f
// Setup Message Payload Header for 1st block of Media Sampler 8x8
mov (1) rAVS_PAYLOAD.0:f fVIDEO_STEP_DELTA:f //NLAS dx
mov (1) rAVS_PAYLOAD.1:f fVIDEO_STEP_X:f //Step X
mov (1) rAVS_PAYLOAD.5:f fVIDEO_STEP_Y:f //Step Y
mov (2) rAVS_PAYLOAD.2<4>:f fSRC_VID_H_ORI<2;2,1>:f //Orig X and Y
 
 
 
 
 
 
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/AVS_SetupSecondBlock.asm
0,0 → 1,27
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//------------------------------------------------------------------------------
// AVS_SetupSecondBlock.asm
//------------------------------------------------------------------------------
//NLAS calculations for 2nd block of Media Sampler 8x8:
// X(i) = X0 + dx*i + ddx*i*(i-1)/2 ==> X(8) = X0 + dx*8 +ddx*28
// dx(i)= dx(0) + ddx*i ==> dx(8)= dx + ddx*8
 
// Calculating X(8)
mov (1) acc0.2<1>:f fSRC_VID_H_ORI:f
mac (1) acc0.2<1>:f fVIDEO_STEP_X:f 8.0:f
mac (1) rAVS_PAYLOAD.2:f fVIDEO_STEP_DELTA:f 28.0:f
// Calculating dx(8)
mov (1) acc0.1<1>:f fVIDEO_STEP_X:f
mac (1) rAVS_PAYLOAD.1:f fVIDEO_STEP_DELTA:f 8.0:f
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/DI.inc
0,0 → 1,194
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: DI.inc
 
#ifdef GT
// GT DI Kernel
#else // ILK
// ILK DI Kernel
#endif
 
//---------------------------------------------------------------------------
// Binding table indices
//---------------------------------------------------------------------------
#define nBIDX_DI_PRV 10 // Previous DI-ed frame
#define nBIDX_DI_CUR 13 // Current DI-ed frame
#define nBIDX_DN 7 // Denoised frame
#define nBIDX_STAT 20 // Statistics
#define nBIDX_DI_Source 4 // Source Surface
 
 
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
#define nSMPL_ENGINE 0x2
#define nDATAPORT_WRITE 0x5
#define nTS_EOT 0x27 // with End-Of-Thread bit ON
 
// Message descriptor for end-of-thread
// = 000 0001 (message len) 00000 (resp len)
// 0 (header present 0) 00000000000000 0 (URB dereferenced) 0000
#define nEOT_MSGDSC 0x02000000
 
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
// comment begin
// The following is commented out because of walker feature
// It corresponds to the #ifdef GT #else and #endif
//#define nSMPL_MSGDSC 0x040b8000
//#define nSMPL_RESP_LEN_DI 0x00c00000 // 12
//#define nSMPL_RESP_LEN_NODI_PL 0x00500000 // 5
//#define nSMPL_RESP_LEN_NODI_PA 0x00900000 // 9
//#define nSMPL_RESP_LEN_NODN 0x00900000 // 9
//#define nSMPL_RESP_LEN_PDI 0x00b00000 // 11
// comment end
 
#ifdef GT
 
#define nSMPL_MSGDSC 0x040b8000
#define nSMPL_RESP_LEN_DI 0x00c00000 // 12
#define nSMPL_RESP_LEN_NODI_PL 0x00500000 // 5 //DI disable, the XY stored in 5th GRF, no impact to return length
#define nSMPL_RESP_LEN_NODI_PA 0x00900000 // 9 //DI disable, the XY stored in 5th GRF, no impact to return length
#define nSMPL_RESP_LEN_NODN 0x00a00000 // 10 //NO DN, originally use 9, now we need use 10 to store the XY with walker
#define nSMPL_RESP_LEN_PDI 0x00b00000 // 11
 
#else
 
#define nSMPL_MSGDSC 0x040b8000
#define nSMPL_RESP_LEN_DI 0x00c00000 // 12
#define nSMPL_RESP_LEN_NODI_PL 0x00500000 // 5
#define nSMPL_RESP_LEN_NODI_PA 0x00900000 // 9
#define nSMPL_RESP_LEN_NODN 0x00900000 // 9
#define nSMPL_RESP_LEN_PDI 0x00b00000 // 11
 
#endif
 
// Message descriptor for dataport media write
#ifdef GT
// = 000 0000 (message len - set later) 00000 (resp len 0)
// 1 (header present 1) 0 0 1010 (media block write) 00000
// 00000000 (binding table index - set later)
// = 0x00094000
#define nDPMW_MSGDSC 0x00094000
#else // ILK
// = 000 0000 (message len - set later) 00000 (resp len 0)
// 1 (header present 1) 000 0 010 (media block write) 0000
// 00000000 (binding table index - set later)
// = 0x00082000
#define nDPMW_MSGDSC 0x00082000
#endif
#define nDPMW_MSG_LEN_STMM 0x04000000 // 2 - STMM
#define nDPMW_MSG_LEN_DH 0x04000000 // 2 - Denoise history
#define nDPMW_MSG_LEN_PA_DN 0x0a000000 // 5 - Denoised output
#define nDPMW_MSG_LEN_PA_NODI 0x12000000 // 9 - Denoised output - denoise only - DI disabled
#define nDPMW_MSG_LEN_PL_DN 0x06000000 // 3 - Denoised output
#define nDPMW_MSG_LEN_PL_NODI 0x0a000000 // 5 - Denoised output - denoise only - DI disabled
#define nDPMW_MSG_LEN_DI 0x0a000000 // 5 - DI output
 
 
//---------------------------------------------------------------------------
// Static and inline parameters
//---------------------------------------------------------------------------
// Static parameters
.declare ubTFLD_FIRST Base=r1.27 ElementSize=1 Type=ub // top field first
.declare ubSRCYUVOFFSET Base=r1.4 ElementSize=1 Type=ub // source packed format
.declare ubDSTYUVOFFSET Base=r1.8 ElementSize=1 Type=ub // destination packed format
.declare uwSPITCH_DIV2 Base=r1.10 ElementSize=2 Type=uw // statistics surface pitch divided by 2
 
// Inline parameters
.declare uwXORIGIN Base=r5.0 ElementSize=2 Type=uw // X and Y origin
.declare uwYORIGIN Base=r5.1 ElementSize=2 Type=uw
 
 
//---------------------------------------------------------------------------
// Kernel GRF variables
//---------------------------------------------------------------------------
// Message response (Denoised & DI-ed pixels & statistics)
.declare dRESP Base=r8 ElementSize=4 Type=d // Response message (12 or 5 or 11)
.declare ubRESP Base=r8 ElementSize=1 Type=ub
 
.declare dSTMM Base=r16 ElementSize=4 Type=d // STMM
.declare ubDN_HIST_NODI Base=r12 ElementSize=1 Type=ub // Denoise history data (DI disabled)
.declare ubDN_HIST_DI Base=r17 ElementSize=1 Type=ub // Denoise history data (DI enabled)
.declare uwRETURNED_POSITION_DI Base=r17 ElementSize=2 Type=uw // XY_Return_Data (DI enabled)
.declare uwRETURNED_POSITION_DN Base=r12 ElementSize=2 Type=uw // XY_Return_Data (DI disabled)
 
.declare ub1ST_FLD_DN Base=r12 ElementSize=1 Type=ub // 1st field Denoised data (DI enabled)
.declare d1ST_FLD_DN Base=r12 ElementSize=4 Type=d
.declare ub2ND_FLD_DN Base=r18 ElementSize=1 Type=ub // 2nd field Denoised data (DI enabled)
.declare d2ND_FLD_DN Base=r18 ElementSize=4 Type=d
.declare ubPRV_DI Base=r8 ElementSize=1 Type=ub // Previous frame DI (DI enabled)
.declare ubCUR_DI Base=r12 ElementSize=1 Type=ub // Previous frame DI (DI enabled)
 
// Packed denoised output
.declare ubDN_YUV Base=r22 ElementSize=1 Type=ub // Denoised YUV422
.declare dDN_YUV Base=r22 ElementSize=4 Type=d
#define npDN_YUV 704 // = 22*32 = 0x280
 
// Packed DI output
.declare dDI_YUV_PRV Base=r32 ElementSize=4 Type=d // Previous frame DI output
.declare dDI_YUV_CUR Base=r36 ElementSize=4 Type=d // Current frame DI output
#define npDI_YUV 1024 // = 32*32 = 0x
 
// For packed output
#define p422_YOFFSET a0.2
#define p422_UOFFSET a0.3
#define p422_VOFFSET a0.4
#define pDN_TFLDSRC a0.6
#define pDN_BFLDSRC a0.7
#define npRESP 192 // = 6*32
 
// Message source
.declare udMSGSRC Base=r70 ElementSize=4 Type=ud
.declare uwMSGSRC Base=r70 ElementSize=2 Type=uw
.declare dMSGSRC Base=r70 ElementSize=4 Type=d
 
 
//---------------------------------------------------------------------------
// Kernel MRF variables
//---------------------------------------------------------------------------
#define mMSGHDR_SMPL m1 // Sampler response: m1~m2
.declare mudMSGHDR_SMPL Base=m1 ElementSize=4 Type=ud
.declare muwMSGHDR_SMPL Base=m1 ElementSize=2 Type=uw
#define mMSGHDR_DN m3 // Denoise output: m3~m7 for PA, m3~m5 for PL
.declare mdMSGHDR_DN Base=m3 ElementSize=4 Type=d
#define mMSGHDR_STAT m8 // Statistics output: m8~m9
.declare mdMSGHDR_STAT Base=m8 ElementSize=4 Type=d
.declare mubMSGHDR_STAT Base=m8 ElementSize=1 Type=ub
#define mMSGHDR_DI m10 // DI output: m10~m14
.declare mdMSGHDR_DI Base=m10 ElementSize=4 Type=d
#define mMSGHDR_EOT m15 // EOT
 
#ifdef GT
#define MSGSRC
#else
#define MSGSRC null:ud
#endif
 
//---------------------------------------------------------------------------
// End of thread instruction
//---------------------------------------------------------------------------
#ifdef GT
#define END_THREAD send (8) null<1>:d mMSGHDR_EOT nTS_EOT nEOT_MSGDSC
#else // ILK
#define END_THREAD send (8) null<1>:d mMSGHDR_EOT null:ud nTS_EOT nEOT_MSGDSC
#endif
 
 
// end of DI.inc
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/DI_Hist_Save.asm
0,0 → 1,24
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
 
// Write denoise history to memory
shr (2) rMSGSRC.0<1>:ud wORIX<2;2,1>:w 2:w NODDCLR // X,Y origin / 4
add (1) rMSGSRC.0<1>:ud rMSGSRC.0<0;1,0>:ud uwSPITCH_DIV2<0;1,0>:uw NODDCLR_NODDCHK // Add pitch to X origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_HIST:ud NODDCHK // block width and height (4x2)
 
mov (8) mMSGHDR_HIST<1>:ud rMSGSRC.0<8;8,1>:ud // message header
mov (1) mudMSGHDR_HIST(1)<1> udRESP(nDI_HIST_OFFSET,0)<0;1,0> // Move denoise history to MRF
 
send (8) dNULLREG mMSGHDR_HIST udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_HIST+nBI_STMM_HISTORY_OUTPUT:ud
 
 
 
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/DI_SAVE_PA.asm
0,0 → 1,56
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
shl (1) rMSGSRC.0<1>:ud wORIX<0;1,0>:w 1:w NODDCLR // H. block origin need to be doubled
mov (1) rMSGSRC.1<1>:ud wORIY<0;1,0>:w NODDCLR_NODDCHK // Block origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_DI:ud NODDCHK // Block width and height (32x8)
add (4) pCF_Y_OFFSET<1>:uw ubDEST_CF_OFFSET<4;4,1>:ub nDEST_YUV_REG*nGRFWIB:w // Initial Y,U,V offset in YUV422 block
 
// Pack 2nd field Y
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (16) r[pCF_Y_OFFSET, %1*nGRFWIB]<2> ubRESP(nDI_PREV_FRAME_LUMA_OFFSET,%1*16)
}
// Pack 1st field Y
$for(0; <nY_NUM_OF_ROWS; 1) {
mov (16) r[pCF_Y_OFFSET, %1+4*nGRFWIB]<2> ubRESP(nDI_CURR_FRAME_LUMA_OFFSET,%1*16)
}
// Pack 2nd field U
$for(0; <nUV_NUM_OF_ROWS; 1) {
mov (8) r[pCF_U_OFFSET, %1*nGRFWIB]<4> ubRESP(nDI_PREV_FRAME_CHROMA_OFFSET,%1*16+1)<16;8,2> //U pixels
}
// Pack 1st field U
$for(0; <nUV_NUM_OF_ROWS; 1) {
mov (8) r[pCF_U_OFFSET, %1+4*nGRFWIB]<4> ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET,%1*16+1)<16;8,2> //U pixels
}
// Pack 2nd field V
$for(0; <nUV_NUM_OF_ROWS; 1) {
mov (8) r[pCF_V_OFFSET, %1*nGRFWIB]<4> ubRESP(nDI_PREV_FRAME_CHROMA_OFFSET,%1*16)<16;8,2> //Vpixels
}
// Packs1st field V
$for(0; <nUV_NUM_OF_ROWS; 1) {
mov (8) r[pCF_V_OFFSET, %1+4*nGRFWIB]<4> ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET,%1*16)<16;8,2> //Vpixels
}
 
//save the previous frame
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
$for(0; <4; 1) {
mov (8) mudMSGPAYLOAD(%1)<1> udDEST_YUV(%1)REGION(8,1)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_DI+nBI_DESTINATION_1_YUV:ud
 
//save the current frame
mov (8) mMSGHDR<1>:ud rMSGSRC<8;8,1>:ud
$for(0; <4; 1) {
mov (8) mudMSGPAYLOAD(%1)<1> udDEST_YUV(%1+4)REGION(8,1)
}
send (8) dNULLREG mMSGHDR udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPW_MSG_SIZE_DI+nBI_DESTINATION_2_YUV:ud
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/DNDI.inc
0,0 → 1,162
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Module name: DI.inc
 
#ifdef GT
// GT DI Kernel
#else // ILK
// ILK DI Kernel
#endif
 
#include "undefall.inc"
 
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// // = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// // 1 (header present 1) 0 11 (SIMD32/64 mode)
// // 1000 (message type) 0000 (DI state index)
// // 00000000 (binding table index - set later)
// // = 0x040b8000
#define nSMPL_DI_MSGDSC 0x040b8000
 
#define nSMPL_RESP_LEN_DNDI nRESLEN_12 // 12 - for DN + DI Alg
#define nSMPL_RESP_LEN_DN_PL nRESLEN_5 // 5 - for DN Planar Alg
#define nSMPL_RESP_LEN_DN_PA nRESLEN_9 // 9 - for DN Packed Alg
#define nSMPL_RESP_LEN_DI nRESLEN_9 // 9 - for DI Only Alg
#define nSMPL_RESP_LEN_PDI nRESLEN_11 // 11 - for Partial DI Alg
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
#define nDPMW_MSG_LEN_STMM nMSGLEN_1 // 1 - For STMM Save
#define nDPMW_MSG_LEN_HIST nMSGLEN_1 // 1 - For Denoise History Save
#define nDPMW_MSG_LEN_PA_DN_DI nMSGLEN_4 // 4 - For DN Curr Save
#define nDPMW_MSG_LEN_PA_DN_NODI nMSGLEN_8 // 8 - For DN Curr Save (denoise only - DI disabled)
#define nDPMW_MSG_LEN_PL_DN_DI nMSGLEN_2 // 2 - For DN Curr Save
#define nDPMW_MSG_LEN_PL_DN_NODI nMSGLEN_4 // 4 - For DN Curr Save (denoise only - DI disabled)
 
#define nDPW_BLOCK_SIZE_STMM nBLOCK_WIDTH_8+nBLOCK_HEIGHT_4 // Y block size 8x4
 
#undef nDPW_BLOCK_SIZE_DI
#undef nDPW_MSG_SIZE_DI
#define nDPW_BLOCK_SIZE_DI nBLOCK_WIDTH_32+nBLOCK_HEIGHT_4
#define nDPW_MSG_SIZE_DI nMSGLEN_4
 
 
//---------------------------------------------------------------------------
// Kernel GRF variables
//---------------------------------------------------------------------------
// Defines for DI enabled
#define nDI_PREV_FRAME_LUMA_OFFSET 0
#define nDI_PREV_FRAME_CHROMA_OFFSET 2
#define nDI_CURR_FRAME_LUMA_OFFSET 4
#define nDI_CURR_FRAME_CHROMA_OFFSET 6
#define nDI_STMM_OFFSET 8
#define nDI_HIST_OFFSET 9
#define nDI_CURR_2ND_FIELD_LUMA_OFFSET 10
#define nDI_CURR_2ND_FIELD_CHROMA_OFFSET 11
 
// Defines for DI disabled
#define nNODI_LUMA_OFFSET 0
#define nNODI_HIST_OFFSET 4
#define nNODI_CHROMA_OFFSET 5
 
#ifdef DI_ENABLE
#define nHIST_OFFSET nDI_HIST_OFFSET
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8 // Number of Y rows per block (4 rows for each frame)
#undef nUV_NUM_OF_ROWS
#define nUV_NUM_OF_ROWS 8 // Number of U/V rows per block
#endif
 
#ifdef DI_DISABLE
#define nHIST_OFFSET nNODI_HIST_OFFSET
#endif
 
#if (nSRC_REGION==nREGION_2)
#define ub2SRC_Y ub2BOT_Y
#define ub2SRC_U ub2BOT_U
#define ub2SRC_V ub2BOT_V
#define uwDEST_Y uwBOT_Y
#define uwDEST_U uwBOT_U
#define uwDEST_V uwBOT_V
#define nDEST_YUV_REG nTOP_Y
#define udDEST_YUV udTOP_Y_IO
 
#define nRESP nTEMP0 // DI return message requires 12 GRFs
#define nDN_YUV nTOP_Y // Space for Packing DN for next run requires 8 GRFs
 
#undef nSRC_REGION
#define nSRC_REGION nREGION_2
 
#else
#define ub2SRC_Y ub2TOP_Y
#define ub2SRC_U ub2TOP_U
#define ub2SRC_V ub2TOP_V
#define uwDEST_Y uwTOP_Y
#define uwDEST_U uwTOP_U
#define uwDEST_V uwTOP_V
#define nDEST_YUV_REG nBOT_Y
#define udDEST_YUV udBOT_Y_IO
#define nRESP nTEMP0 // DI return message requires 12 GRFs
#define nDN_YUV nBOT_Y // Space for Packing DN for next run requires 8 GRFs
 
#undef nSRC_REGION
#define nSRC_REGION nREGION_1 // REGION_1 will be the source region for first kernel
 
#endif
 
 
 
 
 
 
 
 
// Message response (Denoised & DI-ed pixels & statistics)
.declare udRESP Base=REG(r,nRESP) ElementSize=4 SrcRegion=REGION(8,1) DstRegion=<1> Type=ud
.declare ubRESP Base=REG(r,nRESP) ElementSize=1 SrcRegion=REGION(16,1) DstRegion=<1> Type=ub
 
// For Denoised Curr Output (Used as Priv in Next Run)
.declare ubDN_YUV Base=REG(r,nDN_YUV) ElementSize=1 Type=ub
.declare udDN_YUV Base=REG(r,nDN_YUV) ElementSize=4 Type=ud
#define npDN_YUV nDN_YUV*nGRFWIB
 
// For DI Process Output (1st and 2nd Frames Output)
//.declare udDI_YUV_PRIV Base=REG(r,nTEMP0) ElementSize=4 Type=ud // Previous frame DI output
//.declare udDI_YUV_CURR Base=REG(r,nTEMP0) ElementSize=4 Type=ud // Current frame DI output
//#define npDI_YUV nTEMP0*nGRFWIB
 
//---------------------------------------------------------------------------
// Kernel MRF variables
//---------------------------------------------------------------------------
#define mMSG_SMPL m1 // Sampler Command is in: m1~m2
.declare mudMSG_SMPL Base=mMSG_SMPL ElementSize=4 Type=ud
.declare muwMSG_SMPL Base=mMSG_SMPL ElementSize=2 Type=uw
 
#define mMSGHDR_DN m1 // Denoise Output: m1~m9 for PA, m3~m5 for PL
.declare mudMSGHDR_DN Base=mMSGHDR_DN ElementSize=4 Type=ud
.declare mubMSGHDR_DN Base=mMSGHDR_DN ElementSize=1 Type=ub
 
#define mMSGHDR_STMM m11 // STMM Output: m11~m12
.declare mudMSGHDR_STMM Base=mMSGHDR_STMM ElementSize=4 Type=ud
#define mMSGHDR_HIST m13 // HIST Output: m13~m14
.declare mudMSGHDR_HIST Base=mMSGHDR_HIST ElementSize=1 Type=ud
 
#define mMSGHDR_DI_1ST m1 // DI output: m1~m5
.declare mudMSGHDR_DI_1ST Base=mMSGHDR_DI_1ST ElementSize=4 Type=ud
#define mMSGHDR_DI_2ND m6 // DI output: m6~m10
.declare mudMSGHDR_DI_2ND Base=mMSGHDR_DI_2ND ElementSize=4 Type=ud
 
// end of DNDI.inc
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/DNDI_COMMAND.asm
0,0 → 1,17
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// Activate the DNDI send command
mov (8) mudMSG_SMPL(0)<1> rMSGSRC.0<8;8,1>:ud NODDCLR // message header
mov (1) muwMSG_SMPL(1,4)<1> wORIX<0;1,0>:w NODDCLR_NODDCHK// horizontal origin
mov (1) muwMSG_SMPL(1,12)<1> wORIY<0;1,0>:w NODDCLR_NODDCHK // vertical origin
//mov (2) muwMSG_SMPL(1,4)<2> wORIX<2;2,1>:w NODDCHK// problem during compile !! when using this line
 
send (8) udRESP(0)<1> mMSG_SMPL udDUMMY_NULL nSMPL_ENGINE nSMPL_DI_MSGDSC+nSMPL_RESP_LEN+nBI_CURRENT_SRC_YUV_HW_DI:ud
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/DNDI_Hist_Save.asm
0,0 → 1,20
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
 
// Write denoise history to memory
shr (2) rMSGSRC.0<1>:ud wORIX<2;2,1>:w 2:w NODDCLR // X,Y origin / 4
add (1) rMSGSRC.0<1>:ud rMSGSRC.0<0;1,0>:ud uwSPITCH_DIV2<0;1,0>:uw NODDCLR_NODDCHK// Add pitch to X origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_HIST:ud NODDCHK // block width and height (4x2)
 
mov (8) mMSGHDR_HIST<1>:ud rMSGSRC.0<8;8,1>:ud // message header
mov (2) mudMSGHDR_HIST(1)<1> udRESP(nNODI_HIST_OFFSET,0)<2;2,1> // Move denoise history to MRF
 
send (8) dNULLREG mMSGHDR_HIST udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_HIST+nBI_STMM_HISTORY_OUTPUT:ud
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PA_AVS_IEF_16x8.asm
0,0 → 1,26
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PA_AVS_IEF_16x8.asm ----------
 
#include "AVS_IEF.inc"
 
//------------------------------------------------------------------------------
// 2 sampler reads for 8x8 YUV packed
//------------------------------------------------------------------------------
#include "PA_AVS_IEF_Sample.asm"
 
//------------------------------------------------------------------------------
// Unpacking sampler reads to 4:4:4 internal planar
//------------------------------------------------------------------------------
#include "PA_AVS_IEF_Unpack_16x8.asm"
 
//------------------------------------------------------------------------------
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PA_AVS_IEF_8x4.asm
0,0 → 1,25
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PA_AVS_IEF_8x4.asm ----------
 
#include "AVS_IEF.inc"
 
//------------------------------------------------------------------------------
// 2 sampler reads for 8x8 YUV packed
//------------------------------------------------------------------------------
#include "PA_AVS_IEF_Sample.asm"
 
//------------------------------------------------------------------------------
// Unpacking sampler data to 4:2:0 internal planar
//------------------------------------------------------------------------------
#include "PA_AVS_IEF_Unpack_8x4.asm"
 
//------------------------------------------------------------------------------
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PA_AVS_IEF_8x8.asm
0,0 → 1,25
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PA_AVS_IEF_8x8.asm ----------
 
#include "AVS_IEF.inc"
 
//------------------------------------------------------------------------------
// 2 sampler reads for 8x8 YUV packed
//------------------------------------------------------------------------------
#include "PA_AVS_IEF_Sample.asm"
 
//------------------------------------------------------------------------------
// Unpacking sampler data to 4:2:2 internal planar
//------------------------------------------------------------------------------
#include "PA_AVS_IEF_Unpack_8x8.asm"
 
//------------------------------------------------------------------------------
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PA_AVS_IEF_Sample.asm
0,0 → 1,34
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PA_AVS_IEF_Sample.asm ----------
 
//------------------------------------------------------------------------------
// 2 sampler reads for 8x8 YUV packed
//------------------------------------------------------------------------------
// 1st 8x8 setup
#include "AVS_SetupFirstBlock.asm"
 
// Enable RGB(YUV) channels
mov (1) rAVS_8x8_HDR.2:ud nAVS_RGB_CHANNELS:ud
 
mov (16) mAVS_8x8_HDR.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(0)<1> mAVS_8x8_HDR udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_3CH+nSI_SRC_YUV+nBI_CURRENT_SRC_YUV
// Return YUV in 12 GRFs
 
// 2nd 8x8 setup
#include "AVS_SetupSecondBlock.asm"
 
mov (16) mAVS_8x8_HDR_2.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE_2(0)<1> mAVS_8x8_HDR_2 udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_3CH+nSI_SRC_YUV+nBI_CURRENT_SRC_YUV
// Return YUV in 12 GRFs
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PA_AVS_IEF_Unpack_16x8.asm
0,0 → 1,288
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PA_AVS_IEF_Unpack_16x8.asm ----------
#ifdef AVS_OUTPUT_16_BIT //Output is packed in AVYU format
// Move first 8x8 words of Y to dest GRF (as packed)
mov (4) uwDEST_Y(0,1)<4> uwAVS_RESPONSE(2,0)<4;4,1>
mov (4) uwDEST_Y(1,1)<4> uwAVS_RESPONSE(2,8)<4;4,1>
mov (4) uwDEST_Y(4,1)<4> uwAVS_RESPONSE(2,4)<4;4,1>
mov (4) uwDEST_Y(5,1)<4> uwAVS_RESPONSE(2,12)<4;4,1>
mov (4) uwDEST_Y(8,1)<4> uwAVS_RESPONSE(3,0)<4;4,1>
mov (4) uwDEST_Y(9,1)<4> uwAVS_RESPONSE(3,8)<4;4,1>
mov (4) uwDEST_Y(12,1)<4> uwAVS_RESPONSE(3,4)<4;4,1>
mov (4) uwDEST_Y(13,1)<4> uwAVS_RESPONSE(3,12)<4;4,1>
mov (4) uwDEST_Y(16,1)<4> uwAVS_RESPONSE(8,0)<4;4,1>
mov (4) uwDEST_Y(17,1)<4> uwAVS_RESPONSE(8,8)<4;4,1>
mov (4) uwDEST_Y(20,1)<4> uwAVS_RESPONSE(8,4)<4;4,1>
mov (4) uwDEST_Y(21,1)<4> uwAVS_RESPONSE(8,12)<4;4,1>
mov (4) uwDEST_Y(24,1)<4> uwAVS_RESPONSE(9,0)<4;4,1>
mov (4) uwDEST_Y(25,1)<4> uwAVS_RESPONSE(9,8)<4;4,1>
mov (4) uwDEST_Y(28,1)<4> uwAVS_RESPONSE(9,4)<4;4,1>
mov (4) uwDEST_Y(29,1)<4> uwAVS_RESPONSE(9,12)<4;4,1>
 
// Move first 8x8 words of U to dest GRF (as packed)
mov (4) uwDEST_Y(0,0)<4> uwAVS_RESPONSE(4,0)<4;4,1>
mov (4) uwDEST_Y(1,0)<4> uwAVS_RESPONSE(4,8)<4;4,1>
mov (4) uwDEST_Y(4,0)<4> uwAVS_RESPONSE(4,4)<4;4,1>
mov (4) uwDEST_Y(5,0)<4> uwAVS_RESPONSE(4,12)<4;4,1>
mov (4) uwDEST_Y(8,0)<4> uwAVS_RESPONSE(5,0)<4;4,1>
mov (4) uwDEST_Y(9,0)<4> uwAVS_RESPONSE(5,8)<4;4,1>
mov (4) uwDEST_Y(12,0)<4> uwAVS_RESPONSE(5,4)<4;4,1>
mov (4) uwDEST_Y(13,0)<4> uwAVS_RESPONSE(5,12)<4;4,1>
mov (4) uwDEST_Y(16,0)<4> uwAVS_RESPONSE(10,0)<4;4,1>
mov (4) uwDEST_Y(17,0)<4> uwAVS_RESPONSE(10,8)<4;4,1>
mov (4) uwDEST_Y(20,0)<4> uwAVS_RESPONSE(10,4)<4;4,1>
mov (4) uwDEST_Y(21,0)<4> uwAVS_RESPONSE(10,12)<4;4,1>
mov (4) uwDEST_Y(24,0)<4> uwAVS_RESPONSE(11,0)<4;4,1>
mov (4) uwDEST_Y(25,0)<4> uwAVS_RESPONSE(11,8)<4;4,1>
mov (4) uwDEST_Y(28,0)<4> uwAVS_RESPONSE(11,4)<4;4,1>
mov (4) uwDEST_Y(29,0)<4> uwAVS_RESPONSE(11,12)<4;4,1>
 
// Move first 8x8 words of V to dest GRF (as packed)
mov (4) uwDEST_Y(0,2)<4> uwAVS_RESPONSE(0,0)<4;4,1>
mov (4) uwDEST_Y(1,2)<4> uwAVS_RESPONSE(0,8)<4;4,1>
mov (4) uwDEST_Y(4,2)<4> uwAVS_RESPONSE(0,4)<4;4,1>
mov (4) uwDEST_Y(5,2)<4> uwAVS_RESPONSE(0,12)<4;4,1>
mov (4) uwDEST_Y(8,2)<4> uwAVS_RESPONSE(1,0)<4;4,1>
mov (4) uwDEST_Y(9,2)<4> uwAVS_RESPONSE(1,8)<4;4,1>
mov (4) uwDEST_Y(12,2)<4> uwAVS_RESPONSE(1,4)<4;4,1>
mov (4) uwDEST_Y(13,2)<4> uwAVS_RESPONSE(1,12)<4;4,1>
mov (4) uwDEST_Y(16,2)<4> uwAVS_RESPONSE(6,0)<4;4,1>
mov (4) uwDEST_Y(17,2)<4> uwAVS_RESPONSE(6,8)<4;4,1>
mov (4) uwDEST_Y(20,2)<4> uwAVS_RESPONSE(6,4)<4;4,1>
mov (4) uwDEST_Y(21,2)<4> uwAVS_RESPONSE(6,12)<4;4,1>
mov (4) uwDEST_Y(24,2)<4> uwAVS_RESPONSE(7,0)<4;4,1>
mov (4) uwDEST_Y(25,2)<4> uwAVS_RESPONSE(7,8)<4;4,1>
mov (4) uwDEST_Y(28,2)<4> uwAVS_RESPONSE(7,4)<4;4,1>
mov (4) uwDEST_Y(29,2)<4> uwAVS_RESPONSE(7,12)<4;4,1>
 
// Move first 8x8 words of A to dest GRF (as packed)
mov (4) uwDEST_Y(0,3)<4> 0:uw
mov (4) uwDEST_Y(1,3)<4> 0:uw
mov (4) uwDEST_Y(4,3)<4> 0:uw
mov (4) uwDEST_Y(5,3)<4> 0:uw
mov (4) uwDEST_Y(8,3)<4> 0:uw
mov (4) uwDEST_Y(9,3)<4> 0:uw
mov (4) uwDEST_Y(12,3)<4> 0:uw
mov (4) uwDEST_Y(13,3)<4> 0:uw
mov (4) uwDEST_Y(16,3)<4> 0:uw
mov (4) uwDEST_Y(17,3)<4> 0:uw
mov (4) uwDEST_Y(20,3)<4> 0:uw
mov (4) uwDEST_Y(21,3)<4> 0:uw
mov (4) uwDEST_Y(24,3)<4> 0:uw
mov (4) uwDEST_Y(25,3)<4> 0:uw
mov (4) uwDEST_Y(28,3)<4> 0:uw
mov (4) uwDEST_Y(29,3)<4> 0:uw
 
// Move second 8x8 words of Y to dest GRF
mov (4) uwDEST_Y(2,1)<4> uwAVS_RESPONSE_2(2,0)<4;4,1>
mov (4) uwDEST_Y(3,1)<4> uwAVS_RESPONSE_2(2,8)<4;4,1>
mov (4) uwDEST_Y(6,1)<4> uwAVS_RESPONSE_2(2,4)<4;4,1>
mov (4) uwDEST_Y(7,1)<4> uwAVS_RESPONSE_2(2,12)<4;4,1>
mov (4) uwDEST_Y(10,1)<4> uwAVS_RESPONSE_2(3,0)<4;4,1>
mov (4) uwDEST_Y(11,1)<4> uwAVS_RESPONSE_2(3,8)<4;4,1>
mov (4) uwDEST_Y(14,1)<4> uwAVS_RESPONSE_2(3,4)<4;4,1>
mov (4) uwDEST_Y(15,1)<4> uwAVS_RESPONSE_2(3,12)<4;4,1>
mov (4) uwDEST_Y(18,1)<4> uwAVS_RESPONSE_2(8,0)<4;4,1>
mov (4) uwDEST_Y(19,1)<4> uwAVS_RESPONSE_2(8,8)<4;4,1>
mov (4) uwDEST_Y(22,1)<4> uwAVS_RESPONSE_2(8,4)<4;4,1>
mov (4) uwDEST_Y(23,1)<4> uwAVS_RESPONSE_2(8,12)<4;4,1>
mov (4) uwDEST_Y(26,1)<4> uwAVS_RESPONSE_2(9,0)<4;4,1>
mov (4) uwDEST_Y(27,1)<4> uwAVS_RESPONSE_2(9,8)<4;4,1>
mov (4) uwDEST_Y(30,1)<4> uwAVS_RESPONSE_2(9,4)<4;4,1>
mov (4) uwDEST_Y(31,1)<4> uwAVS_RESPONSE_2(9,12)<4;4,1>
 
// Move second 8x8 words of U to dest GRF
mov (4) uwDEST_Y(2,0)<4> uwAVS_RESPONSE_2(4,0)<4;4,1>
mov (4) uwDEST_Y(3,0)<4> uwAVS_RESPONSE_2(4,8)<4;4,1>
mov (4) uwDEST_Y(6,0)<4> uwAVS_RESPONSE_2(4,4)<4;4,1>
mov (4) uwDEST_Y(7,0)<4> uwAVS_RESPONSE_2(4,12)<4;4,1>
mov (4) uwDEST_Y(10,0)<4> uwAVS_RESPONSE_2(5,0)<4;4,1>
mov (4) uwDEST_Y(11,0)<4> uwAVS_RESPONSE_2(5,8)<4;4,1>
mov (4) uwDEST_Y(14,0)<4> uwAVS_RESPONSE_2(5,4)<4;4,1>
mov (4) uwDEST_Y(15,0)<4> uwAVS_RESPONSE_2(5,12)<4;4,1>
mov (4) uwDEST_Y(18,0)<4> uwAVS_RESPONSE_2(10,0)<4;4,1>
mov (4) uwDEST_Y(19,0)<4> uwAVS_RESPONSE_2(10,8)<4;4,1>
mov (4) uwDEST_Y(22,0)<4> uwAVS_RESPONSE_2(10,4)<4;4,1>
mov (4) uwDEST_Y(23,0)<4> uwAVS_RESPONSE_2(10,12)<4;4,1>
mov (4) uwDEST_Y(26,0)<4> uwAVS_RESPONSE_2(11,0)<4;4,1>
mov (4) uwDEST_Y(27,0)<4> uwAVS_RESPONSE_2(11,8)<4;4,1>
mov (4) uwDEST_Y(30,0)<4> uwAVS_RESPONSE_2(11,4)<4;4,1>
mov (4) uwDEST_Y(31,0)<4> uwAVS_RESPONSE_2(11,12)<4;4,1>
 
// Move second 8x8 words of V to dest GRF
mov (4) uwDEST_Y(2,2)<4> uwAVS_RESPONSE_2(0,0)<4;4,1>
mov (4) uwDEST_Y(3,2)<4> uwAVS_RESPONSE_2(0,8)<4;4,1>
mov (4) uwDEST_Y(6,2)<4> uwAVS_RESPONSE_2(0,4)<4;4,1>
mov (4) uwDEST_Y(7,2)<4> uwAVS_RESPONSE_2(0,12)<4;4,1>
mov (4) uwDEST_Y(10,2)<4> uwAVS_RESPONSE_2(1,0)<4;4,1>
mov (4) uwDEST_Y(11,2)<4> uwAVS_RESPONSE_2(1,8)<4;4,1>
mov (4) uwDEST_Y(14,2)<4> uwAVS_RESPONSE_2(1,4)<4;4,1>
mov (4) uwDEST_Y(15,2)<4> uwAVS_RESPONSE_2(1,12)<4;4,1>
mov (4) uwDEST_Y(18,2)<4> uwAVS_RESPONSE_2(6,0)<4;4,1>
mov (4) uwDEST_Y(19,2)<4> uwAVS_RESPONSE_2(6,8)<4;4,1>
mov (4) uwDEST_Y(22,2)<4> uwAVS_RESPONSE_2(6,4)<4;4,1>
mov (4) uwDEST_Y(23,2)<4> uwAVS_RESPONSE_2(6,12)<4;4,1>
mov (4) uwDEST_Y(26,2)<4> uwAVS_RESPONSE_2(7,0)<4;4,1>
mov (4) uwDEST_Y(27,2)<4> uwAVS_RESPONSE_2(7,8)<4;4,1>
mov (4) uwDEST_Y(30,2)<4> uwAVS_RESPONSE_2(7,4)<4;4,1>
mov (4) uwDEST_Y(31,2)<4> uwAVS_RESPONSE_2(7,12)<4;4,1>
 
// Move second 8x8 words of A to dest GRF
mov (4) uwDEST_Y(2,3)<4> 0:uw
mov (4) uwDEST_Y(3,3)<4> 0:uw
mov (4) uwDEST_Y(6,3)<4> 0:uw
mov (4) uwDEST_Y(7,3)<4> 0:uw
mov (4) uwDEST_Y(10,3)<4> 0:uw
mov (4) uwDEST_Y(11,3)<4> 0:uw
mov (4) uwDEST_Y(14,3)<4> 0:uw
mov (4) uwDEST_Y(15,3)<4> 0:uw
mov (4) uwDEST_Y(18,3)<4> 0:uw
mov (4) uwDEST_Y(19,3)<4> 0:uw
mov (4) uwDEST_Y(22,3)<4> 0:uw
mov (4) uwDEST_Y(23,3)<4> 0:uw
mov (4) uwDEST_Y(26,3)<4> 0:uw
mov (4) uwDEST_Y(27,3)<4> 0:uw
mov (4) uwDEST_Y(30,3)<4> 0:uw
mov (4) uwDEST_Y(31,3)<4> 0:uw
 
/* This section will be used if 16-bit output is needed in planar format -vK
// Move first 8x8 words of Y to dest GRF
mov (8) uwDEST_Y(0)<1> uwAVS_RESPONSE(2,0)<8;4,1>
mov (8) uwDEST_Y(1)<1> uwAVS_RESPONSE(2,8)<8;4,1>
mov (8) uwDEST_Y(2)<1> uwAVS_RESPONSE(3,0)<8;4,1>
mov (8) uwDEST_Y(3)<1> uwAVS_RESPONSE(3,8)<8;4,1>
mov (8) uwDEST_Y(4)<1> uwAVS_RESPONSE(8,0)<8;4,1>
mov (8) uwDEST_Y(5)<1> uwAVS_RESPONSE(8,8)<8;4,1>
mov (8) uwDEST_Y(6)<1> uwAVS_RESPONSE(9,0)<8;4,1>
mov (8) uwDEST_Y(7)<1> uwAVS_RESPONSE(9,8)<8;4,1>
// Move first 8x8 words of V to dest GRF
mov (8) uwDEST_V(0)<1> ubAVS_RESPONSE(0,0)<8;4,1>
mov (8) uwDEST_V(1)<1> ubAVS_RESPONSE(0,8)<8;4,1>
mov (8) uwDEST_V(2)<1> ubAVS_RESPONSE(1,0)<8;4,1>
mov (8) uwDEST_V(3)<1> ubAVS_RESPONSE(1,8)<8;4,1>
mov (8) uwDEST_V(4)<1> ubAVS_RESPONSE(6,0)<8;4,1>
mov (8) uwDEST_V(5)<1> ubAVS_RESPONSE(6,8)<8;4,1>
mov (8) uwDEST_V(6)<1> ubAVS_RESPONSE(7,0)<8;4,1>
mov (8) uwDEST_V(7)<1> ubAVS_RESPONSE(7,8)<8;4,1>
// Move first 8x8 words of U to dest GRF
mov (8) uwDEST_U(0)<1> ubAVS_RESPONSE(4,0)<8;4,1>
mov (8) uwDEST_U(1)<1> ubAVS_RESPONSE(4,8)<8;4,1>
mov (8) uwDEST_U(2)<1> ubAVS_RESPONSE(5,0)<8;4,1>
mov (8) uwDEST_U(3)<1> ubAVS_RESPONSE(5,8)<8;4,1>
mov (8) uwDEST_U(4)<1> ubAVS_RESPONSE(10,0)<8;4,1>
mov (8) uwDEST_U(5)<1> ubAVS_RESPONSE(10,8)<8;4,1>
mov (8) uwDEST_U(6)<1> ubAVS_RESPONSE(11,0)<8;4,1>
mov (8) uwDEST_U(7)<1> ubAVS_RESPONSE(11,8)<8;4,1>
// Move second 8x8 words of Y to dest GRF
mov (8) uwDEST_Y(0,8)<1> uwAVS_RESPONSE_2(2,0)<8;4,1>
mov (8) uwDEST_Y(1,8)<1> uwAVS_RESPONSE_2(2,8)<8;4,1>
mov (8) uwDEST_Y(2,8)<1> uwAVS_RESPONSE_2(3,0)<8;4,1>
mov (8) uwDEST_Y(3,8)<1> uwAVS_RESPONSE_2(3,8)<8;4,1>
mov (8) uwDEST_Y(4,8)<1> uwAVS_RESPONSE_2(8,0)<8;4,1>
mov (8) uwDEST_Y(5,8)<1> uwAVS_RESPONSE_2(8,8)<8;4,1>
mov (8) uwDEST_Y(6,8)<1> uwAVS_RESPONSE_2(9,0)<8;4,1>
mov (8) uwDEST_Y(7,8)<1> uwAVS_RESPONSE_2(9,8)<8;4,1>
// Move second 8x8 words of V to dest GRF
mov (8) uwDEST_V(0,8)<1> ubAVS_RESPONSE_2(0,0)<8;4,1>
mov (8) uwDEST_V(1,8)<1> ubAVS_RESPONSE_2(0,8)<8;4,1>
mov (8) uwDEST_V(2,8)<1> ubAVS_RESPONSE_2(1,0)<8;4,1>
mov (8) uwDEST_V(3,8)<1> ubAVS_RESPONSE_2(1,8)<8;4,1>
mov (8) uwDEST_V(4,8)<1> ubAVS_RESPONSE_2(6,0)<8;4,1>
mov (8) uwDEST_V(5,8)<1> ubAVS_RESPONSE_2(6,8)<8;4,1>
mov (8) uwDEST_V(6,8)<1> ubAVS_RESPONSE_2(7,0)<8;4,1>
mov (8) uwDEST_V(7,8)<1> ubAVS_RESPONSE_2(7,8)<8;4,1>
// Move second 8x8 words of U to dest GRF
mov (8) uwDEST_U(0,8)<1> ubAVS_RESPONSE_2(4,0)<8;4,1>
mov (8) uwDEST_U(1,8)<1> ubAVS_RESPONSE_2(4,8)<8;4,1>
mov (8) uwDEST_U(2,8)<1> ubAVS_RESPONSE_2(5,0)<8;4,1>
mov (8) uwDEST_U(3,8)<1> ubAVS_RESPONSE_2(5,8)<8;4,1>
mov (8) uwDEST_U(4,8)<1> ubAVS_RESPONSE_2(10,0)<8;4,1>
mov (8) uwDEST_U(5,8)<1> ubAVS_RESPONSE_2(10,8)<8;4,1>
mov (8) uwDEST_U(6,8)<1> ubAVS_RESPONSE_2(11,0)<8;4,1>
mov (8) uwDEST_U(7,8)<1> ubAVS_RESPONSE_2(11,8)<8;4,1>
*/
#else /* OUTPUT_8_BIT */
// Move first 8x8 words of Y to dest GRF
mov (8) uwDEST_Y(0)<1> ubAVS_RESPONSE(2,1)<16;4,2>
mov (8) uwDEST_Y(1)<1> ubAVS_RESPONSE(2,8+1)<16;4,2>
mov (8) uwDEST_Y(2)<1> ubAVS_RESPONSE(3,1)<16;4,2>
mov (8) uwDEST_Y(3)<1> ubAVS_RESPONSE(3,8+1)<16;4,2>
mov (8) uwDEST_Y(4)<1> ubAVS_RESPONSE(8,1)<16;4,2>
mov (8) uwDEST_Y(5)<1> ubAVS_RESPONSE(8,8+1)<16;4,2>
mov (8) uwDEST_Y(6)<1> ubAVS_RESPONSE(9,1)<16;4,2>
mov (8) uwDEST_Y(7)<1> ubAVS_RESPONSE(9,8+1)<16;4,2>
 
// Move first 8x8 words of V to dest GRF
mov (8) uwDEST_V(0)<1> ubAVS_RESPONSE(0,1)<16;4,2>
mov (8) uwDEST_V(1)<1> ubAVS_RESPONSE(0,8+1)<16;4,2>
mov (8) uwDEST_V(2)<1> ubAVS_RESPONSE(1,1)<16;4,2>
mov (8) uwDEST_V(3)<1> ubAVS_RESPONSE(1,8+1)<16;4,2>
mov (8) uwDEST_V(4)<1> ubAVS_RESPONSE(6,1)<16;4,2>
mov (8) uwDEST_V(5)<1> ubAVS_RESPONSE(6,8+1)<16;4,2>
mov (8) uwDEST_V(6)<1> ubAVS_RESPONSE(7,1)<16;4,2>
mov (8) uwDEST_V(7)<1> ubAVS_RESPONSE(7,8+1)<16;4,2>
 
// Move first 8x8 words of U to dest GRF
mov (8) uwDEST_U(0)<1> ubAVS_RESPONSE(4,1)<16;4,2>
mov (8) uwDEST_U(1)<1> ubAVS_RESPONSE(4,8+1)<16;4,2>
mov (8) uwDEST_U(2)<1> ubAVS_RESPONSE(5,1)<16;4,2>
mov (8) uwDEST_U(3)<1> ubAVS_RESPONSE(5,8+1)<16;4,2>
mov (8) uwDEST_U(4)<1> ubAVS_RESPONSE(10,1)<16;4,2>
mov (8) uwDEST_U(5)<1> ubAVS_RESPONSE(10,8+1)<16;4,2>
mov (8) uwDEST_U(6)<1> ubAVS_RESPONSE(11,1)<16;4,2>
mov (8) uwDEST_U(7)<1> ubAVS_RESPONSE(11,8+1)<16;4,2>
 
// Move second 8x8 words of Y to dest GRF
mov (8) uwDEST_Y(0,8)<1> ubAVS_RESPONSE_2(2,1)<16;4,2>
mov (8) uwDEST_Y(1,8)<1> ubAVS_RESPONSE_2(2,8+1)<16;4,2>
mov (8) uwDEST_Y(2,8)<1> ubAVS_RESPONSE_2(3,1)<16;4,2>
mov (8) uwDEST_Y(3,8)<1> ubAVS_RESPONSE_2(3,8+1)<16;4,2>
mov (8) uwDEST_Y(4,8)<1> ubAVS_RESPONSE_2(8,1)<16;4,2>
mov (8) uwDEST_Y(5,8)<1> ubAVS_RESPONSE_2(8,8+1)<16;4,2>
mov (8) uwDEST_Y(6,8)<1> ubAVS_RESPONSE_2(9,1)<16;4,2>
mov (8) uwDEST_Y(7,8)<1> ubAVS_RESPONSE_2(9,8+1)<16;4,2>
 
// Move second 8x8 words of V to dest GRF
mov (8) uwDEST_V(0,8)<1> ubAVS_RESPONSE_2(0,1)<16;4,2>
mov (8) uwDEST_V(1,8)<1> ubAVS_RESPONSE_2(0,8+1)<16;4,2>
mov (8) uwDEST_V(2,8)<1> ubAVS_RESPONSE_2(1,1)<16;4,2>
mov (8) uwDEST_V(3,8)<1> ubAVS_RESPONSE_2(1,8+1)<16;4,2>
mov (8) uwDEST_V(4,8)<1> ubAVS_RESPONSE_2(6,1)<16;4,2>
mov (8) uwDEST_V(5,8)<1> ubAVS_RESPONSE_2(6,8+1)<16;4,2>
mov (8) uwDEST_V(6,8)<1> ubAVS_RESPONSE_2(7,1)<16;4,2>
mov (8) uwDEST_V(7,8)<1> ubAVS_RESPONSE_2(7,8+1)<16;4,2>
 
// Move second 8x8 words of U to dest GRF
mov (8) uwDEST_U(0,8)<1> ubAVS_RESPONSE_2(4,1)<16;4,2>
mov (8) uwDEST_U(1,8)<1> ubAVS_RESPONSE_2(4,8+1)<16;4,2>
mov (8) uwDEST_U(2,8)<1> ubAVS_RESPONSE_2(5,1)<16;4,2>
mov (8) uwDEST_U(3,8)<1> ubAVS_RESPONSE_2(5,8+1)<16;4,2>
mov (8) uwDEST_U(4,8)<1> ubAVS_RESPONSE_2(10,1)<16;4,2>
mov (8) uwDEST_U(5,8)<1> ubAVS_RESPONSE_2(10,8+1)<16;4,2>
mov (8) uwDEST_U(6,8)<1> ubAVS_RESPONSE_2(11,1)<16;4,2>
mov (8) uwDEST_U(7,8)<1> ubAVS_RESPONSE_2(11,8+1)<16;4,2>
#endif
//------------------------------------------------------------------------------
 
// Re-define new number of lines
#undef nUV_NUM_OF_ROWS
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8
#define nUV_NUM_OF_ROWS 8
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PA_AVS_IEF_Unpack_8x4.asm
0,0 → 1,77
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PA_AVS_IEF_Unpack_8x8.asm ----------
 
// Yoni: In order to optimize unpacking, 3 methods are being checked:
// 1. AVS_ORIGINAL
// 2. AVS_ROUND_TO_8_BITS
// 3. AVS_INDIRECT_ACCESS
//
// Only 1 method should stay in the code
 
 
//#define AVS_ROUND_TO_8_BITS
//#define AVS_INDIRECT_ACCESS
 
 
// Move first 8x8 words of Y to dest GRF
mov (8) uwDEST_Y(0)<1> ubAVS_RESPONSE(2,1)<16;4,2>
mov (8) uwDEST_Y(1)<1> ubAVS_RESPONSE(2,8+1)<16;4,2>
mov (8) uwDEST_Y(2)<1> ubAVS_RESPONSE(3,1)<16;4,2>
mov (8) uwDEST_Y(3)<1> ubAVS_RESPONSE(3,8+1)<16;4,2>
mov (8) uwDEST_Y(4)<1> ubAVS_RESPONSE(8,1)<16;4,2>
mov (8) uwDEST_Y(5)<1> ubAVS_RESPONSE(8,8+1)<16;4,2>
mov (8) uwDEST_Y(6)<1> ubAVS_RESPONSE(9,1)<16;4,2>
mov (8) uwDEST_Y(7)<1> ubAVS_RESPONSE(9,8+1)<16;4,2>
 
// Move first 4x8 words of V to dest GRF
mov (4) uwDEST_V(0)<1> ubAVS_RESPONSE(0,1)<16;2,4>
mov (4) uwDEST_V(0,8)<1> ubAVS_RESPONSE(1,1)<16;2,4>
mov (4) uwDEST_V(1)<1> ubAVS_RESPONSE(6,1)<16;2,4>
mov (4) uwDEST_V(1,8)<1> ubAVS_RESPONSE(7,1)<16;2,4>
 
// Move first 4x8 words of U to dest GRF
mov (4) uwDEST_U(0)<1> ubAVS_RESPONSE(4,1)<16;2,4>
mov (4) uwDEST_U(0,8)<1> ubAVS_RESPONSE(5,1)<16;2,4>
mov (4) uwDEST_U(1)<1> ubAVS_RESPONSE(10,1)<16;2,4>
mov (4) uwDEST_U(1,8)<1> ubAVS_RESPONSE(11,1)<16;2,4>
 
// Move second 8x8 words of Y to dest GRF
mov (8) uwDEST_Y(0,8)<1> ubAVS_RESPONSE_2(2,1)<16;4,2>
mov (8) uwDEST_Y(1,8)<1> ubAVS_RESPONSE_2(2,8+1)<16;4,2>
mov (8) uwDEST_Y(2,8)<1> ubAVS_RESPONSE_2(3,1)<16;4,2>
mov (8) uwDEST_Y(3,8)<1> ubAVS_RESPONSE_2(3,8+1)<16;4,2>
mov (8) uwDEST_Y(4,8)<1> ubAVS_RESPONSE_2(8,1)<16;4,2>
mov (8) uwDEST_Y(5,8)<1> ubAVS_RESPONSE_2(8,8+1)<16;4,2>
mov (8) uwDEST_Y(6,8)<1> ubAVS_RESPONSE_2(9,1)<16;4,2>
mov (8) uwDEST_Y(7,8)<1> ubAVS_RESPONSE_2(9,8+1)<16;4,2>
 
// Move second 4x8 words of V to dest GRF
mov (4) uwDEST_V(0,4)<1> ubAVS_RESPONSE_2(0,1)<16;2,4>
mov (4) uwDEST_V(0,12)<1> ubAVS_RESPONSE_2(1,1)<16;2,4>
mov (4) uwDEST_V(1,4)<1> ubAVS_RESPONSE_2(6,1)<16;2,4>
mov (4) uwDEST_V(1,12)<1> ubAVS_RESPONSE_2(7,1)<16;2,4>
 
// Move second 4x8 words of U to dest GRF
mov (4) uwDEST_U(0,4)<1> ubAVS_RESPONSE_2(4,1)<16;2,4>
mov (4) uwDEST_U(0,12)<1> ubAVS_RESPONSE_2(5,1)<16;2,4>
mov (4) uwDEST_U(1,4)<1> ubAVS_RESPONSE_2(10,1)<16;2,4>
mov (4) uwDEST_U(1,12)<1> ubAVS_RESPONSE_2(11,1)<16;2,4>
 
//------------------------------------------------------------------------------
 
// Re-define new number of lines
#undef nUV_NUM_OF_ROWS
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8
#define nUV_NUM_OF_ROWS 8
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PA_AVS_IEF_Unpack_8x8.asm
0,0 → 1,93
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PA_AVS_IEF_Unpack_8x8.asm ----------
 
// Yoni: In order to optimize unpacking, 3 methods are being checked:
// 1. AVS_ORIGINAL
// 2. AVS_ROUND_TO_8_BITS
// 3. AVS_INDIRECT_ACCESS
//
// Only 1 method should stay in the code
 
 
//#define AVS_ROUND_TO_8_BITS
//#define AVS_INDIRECT_ACCESS
 
 
// Move first 8x8 words of Y to dest GRF
mov (8) uwDEST_Y(0)<1> ubAVS_RESPONSE(2,1)<16;4,2>
mov (8) uwDEST_Y(1)<1> ubAVS_RESPONSE(2,8+1)<16;4,2>
mov (8) uwDEST_Y(2)<1> ubAVS_RESPONSE(3,1)<16;4,2>
mov (8) uwDEST_Y(3)<1> ubAVS_RESPONSE(3,8+1)<16;4,2>
mov (8) uwDEST_Y(4)<1> ubAVS_RESPONSE(8,1)<16;4,2>
mov (8) uwDEST_Y(5)<1> ubAVS_RESPONSE(8,8+1)<16;4,2>
mov (8) uwDEST_Y(6)<1> ubAVS_RESPONSE(9,1)<16;4,2>
mov (8) uwDEST_Y(7)<1> ubAVS_RESPONSE(9,8+1)<16;4,2>
 
// Move first 4x8 words of V to dest GRF
mov (4) uwDEST_V(0)<1> ubAVS_RESPONSE(0,1)<16;2,4>
mov (4) uwDEST_V(0,8)<1> ubAVS_RESPONSE(0,8+1)<16;2,4>
mov (4) uwDEST_V(1)<1> ubAVS_RESPONSE(1,1)<16;2,4>
mov (4) uwDEST_V(1,8)<1> ubAVS_RESPONSE(1,8+1)<16;2,4>
mov (4) uwDEST_V(2)<1> ubAVS_RESPONSE(6,1)<16;2,4>
mov (4) uwDEST_V(2,8)<1> ubAVS_RESPONSE(6,8+1)<16;2,4>
mov (4) uwDEST_V(3)<1> ubAVS_RESPONSE(7,1)<16;2,4>
mov (4) uwDEST_V(3,8)<1> ubAVS_RESPONSE(7,8+1)<16;2,4>
 
// Move first 4x8 words of U to dest GRF
mov (4) uwDEST_U(0)<1> ubAVS_RESPONSE(4,1)<16;2,4>
mov (4) uwDEST_U(0,8)<1> ubAVS_RESPONSE(4,8+1)<16;2,4>
mov (4) uwDEST_U(1)<1> ubAVS_RESPONSE(5,1)<16;2,4>
mov (4) uwDEST_U(1,8)<1> ubAVS_RESPONSE(5,8+1)<16;2,4>
mov (4) uwDEST_U(2)<1> ubAVS_RESPONSE(10,1)<16;2,4>
mov (4) uwDEST_U(2,8)<1> ubAVS_RESPONSE(10,8+1)<16;2,4>
mov (4) uwDEST_U(3)<1> ubAVS_RESPONSE(11,1)<16;2,4>
mov (4) uwDEST_U(3,8)<1> ubAVS_RESPONSE(11,8+1)<16;2,4>
 
// Move second 8x8 words of Y to dest GRF
mov (8) uwDEST_Y(0,8)<1> ubAVS_RESPONSE_2(2,1)<16;4,2>
mov (8) uwDEST_Y(1,8)<1> ubAVS_RESPONSE_2(2,8+1)<16;4,2>
mov (8) uwDEST_Y(2,8)<1> ubAVS_RESPONSE_2(3,1)<16;4,2>
mov (8) uwDEST_Y(3,8)<1> ubAVS_RESPONSE_2(3,8+1)<16;4,2>
mov (8) uwDEST_Y(4,8)<1> ubAVS_RESPONSE_2(8,1)<16;4,2>
mov (8) uwDEST_Y(5,8)<1> ubAVS_RESPONSE_2(8,8+1)<16;4,2>
mov (8) uwDEST_Y(6,8)<1> ubAVS_RESPONSE_2(9,1)<16;4,2>
mov (8) uwDEST_Y(7,8)<1> ubAVS_RESPONSE_2(9,8+1)<16;4,2>
 
// Move second 4x8 words of V to dest GRF
mov (4) uwDEST_V(0,4)<1> ubAVS_RESPONSE_2(0,1)<16;2,4>
mov (4) uwDEST_V(0,12)<1> ubAVS_RESPONSE_2(0,8+1)<16;2,4>
mov (4) uwDEST_V(1,4)<1> ubAVS_RESPONSE_2(1,1)<16;2,4>
mov (4) uwDEST_V(1,12)<1> ubAVS_RESPONSE_2(1,8+1)<16;2,4>
mov (4) uwDEST_V(2,4)<1> ubAVS_RESPONSE_2(6,1)<16;2,4>
mov (4) uwDEST_V(2,12)<1> ubAVS_RESPONSE_2(6,8+1)<16;2,4>
mov (4) uwDEST_V(3,4)<1> ubAVS_RESPONSE_2(7,1)<16;2,4>
mov (4) uwDEST_V(3,12)<1> ubAVS_RESPONSE_2(7,8+1)<16;2,4>
 
// Move second 4x8 words of U to dest GRF
mov (4) uwDEST_U(0,4)<1> ubAVS_RESPONSE_2(4,1)<16;2,4>
mov (4) uwDEST_U(0,12)<1> ubAVS_RESPONSE_2(4,8+1)<16;2,4>
mov (4) uwDEST_U(1,4)<1> ubAVS_RESPONSE_2(5,1)<16;2,4>
mov (4) uwDEST_U(1,12)<1> ubAVS_RESPONSE_2(5,8+1)<16;2,4>
mov (4) uwDEST_U(2,4)<1> ubAVS_RESPONSE_2(10,1)<16;2,4>
mov (4) uwDEST_U(2,12)<1> ubAVS_RESPONSE_2(10,8+1)<16;2,4>
mov (4) uwDEST_U(3,4)<1> ubAVS_RESPONSE_2(11,1)<16;2,4>
mov (4) uwDEST_U(3,12)<1> ubAVS_RESPONSE_2(11,8+1)<16;2,4>
 
//------------------------------------------------------------------------------
 
// Re-define new number of lines
#undef nUV_NUM_OF_ROWS
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8
#define nUV_NUM_OF_ROWS 8
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PA_DNDI_ALG.asm
0,0 → 1,139
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
#define DI_ENABLE
 
#include "DNDI.inc"
 
#ifdef DI_ONLY
#undef nSMPL_RESP_LEN
#define nSMPL_RESP_LEN nSMPL_RESP_LEN_DI // set the number of GRF
#else
#undef nSMPL_RESP_LEN
#define nSMPL_RESP_LEN nSMPL_RESP_LEN_DNDI // set the number of GRF
#endif
#undef nDPW_BLOCK_SIZE_HIST
#define nDPW_BLOCK_SIZE_HIST nBLOCK_WIDTH_4+nBLOCK_HEIGHT_1 // HIST Block Size for Write is 4x2
#undef nDPW_BLOCK_SIZE_DN
#define nDPW_BLOCK_SIZE_DN nBLOCK_WIDTH_32+nBLOCK_HEIGHT_4 // DN Block Size for Write is 32x4
////////////////////////////////////// Run the DN Algorithm ///////////////////////////////////////
#include "DNDI_Command.asm"
 
////////////////////////////////////// Rearrange for Internal Planar //////////////////////////////
//// move the previous frame Y component to internal planar format
//$for (0; <nY_NUM_OF_ROWS/2; 1) {
// mov (16) uwDEST_Y(%1,0)<1> ubRESP(nDI_PREV_FRAME_LUMA_OFFSET,%1*16)
//}
//// move the previous frame U,V components to internal planar format
//$for (0; <nUV_NUM_OF_ROWS/2; 1) {
// mov (8) uwDEST_U(0,%1*8)<1> ubRESP(nDI_PREV_FRAME_CHROMA_OFFSET,%1*16+1)<16;8,2> //U pixels
// mov (8) uwDEST_V(0,%1*8)<1> ubRESP(nDI_PREV_FRAME_CHROMA_OFFSET,%1*16)<16;8,2> //V pixels
//}
//// move the current frame Y component to internal planar format
//$for (0; <nY_NUM_OF_ROWS/2; 1) {
// mov (16) uwDEST_Y(%1+4,0)<1> ubRESP(nDI_CURR_FRAME_LUMA_OFFSET,%1*16)
//}
//// move the current frame U,V components to internal planar format
//$for (0; <nUV_NUM_OF_ROWS/2; 1) {
// mov (8) uwDEST_U(2,%1*8)<1> ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET,%1*16+1)<16;8,2> //U pixels
// mov (8) uwDEST_V(2,%1*8)<1> ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET,%1*16)<16;8,2> //V pixels
//}
 
////////////////////////////////////// Save the STMM Data for Next Run /////////////////////////
// Write STMM to memory
shr (1) rMSGSRC.0<1>:ud wORIX<0;1,0>:w 1:w NODDCLR // X origin / 2
mov (1) rMSGSRC.1<1>:ud wORIY<0;1,0>:w NODDCLR_NODDCHK // Y origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_STMM:ud NODDCHK // block width and height (8x4)
mov (8) mudMSGHDR_STMM(0)<1> rMSGSRC.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udRESP(nDI_STMM_OFFSET,0) // Move STMM to MRF
send (8) dNULLREG mMSGHDR_STMM udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_STMM+nBI_STMM_HISTORY_OUTPUT:ud
 
////////////////////////////////////// Save the History Data for Next Run /////////////////////////
#ifdef DI_ONLY
#else
 
#include "DI_Hist_Save.asm"
 
////////////////////////////////////// Pack and Save the DN Curr Frame for Next Run ///////////////
// check top/bottom field first
cmp.e.f0.0 (1) null<1>:w ubTFLD_FIRST<0;1,0>:ub 1:w
add (4) pCF_Y_OFFSET<1>:uw ubSRC_CF_OFFSET<4;4,1>:ub npDN_YUV:uw
//set the save DN position
shl (1) rMSGSRC.0<1>:ud wORIX<0;1,0>:w 1:w NODDCLR // X origin * 2
mov (1) rMSGSRC.1<1>:ud wORIY<0;1,0>:w NODDCLR_NODDCHK // Y origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_DN:ud NODDCHK // block width and height (8x4)
mov (8) mudMSGHDR_DN(0)<1> rMSGSRC.0<8;8,1>:ud
(f0.0) jmpi (1) TOP_FIELD_FIRST
 
BOTTOM_FIELD_FIRST:
//$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
// mov (16) r[pCF_Y_OFFSET, %1*32]<2>:ub ubRESP(nDI_CURR_2ND_FIELD_LUMA_OFFSET,%2*16) // 2nd field luma from current frame (line 0,2)
// mov (16) r[pCF_Y_OFFSET, %1+1*32]<2>:ub ubRESP(nDI_CURR_FRAME_LUMA_OFFSET+%2,16) // 1st field luma from current frame (line 1,3)
// mov (8) r[pCF_U_OFFSET, %1*32]<4>:ub ubRESP(nDI_CURR_2ND_FIELD_CHROMA_OFFSET,%2*16+1)<16;8,2> // 2nd field U from current frame (line 0,2)
// mov (8) r[pCF_V_OFFSET, %1*32]<4>:ub ubRESP(nDI_CURR_2ND_FIELD_CHROMA_OFFSET,%2*16)<16;8,2> // 2nd field V from current frame (line 0,2)
// mov (8) r[pCF_U_OFFSET, %1+1*32]<4>:ub ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET+%2,16+1)<16;8,2> // 1st field U from current frame (line 1,3)
// mov (8) r[pCF_V_OFFSET, %1+1*32]<4>:ub ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET+%2,16)<16;8,2> // 1st field U from current frame (line 1,3)
//}
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (16) r[pCF_Y_OFFSET, %1*32]<2>:ub ubRESP(nDI_CURR_2ND_FIELD_LUMA_OFFSET,%2*16) // 2nd field luma from current frame (line 0,2)
mov (16) r[pCF_Y_OFFSET, %1+1*32]<2>:ub ubRESP(nDI_CURR_FRAME_LUMA_OFFSET+%2,16) // 1st field luma from current frame (line 1,3)
}
 
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (8) r[pCF_U_OFFSET, %1*32]<4>:ub ubRESP(nDI_CURR_2ND_FIELD_CHROMA_OFFSET,%2*16+1)<16;8,2> // 2nd field U from current frame (line 0,2)
mov (8) r[pCF_U_OFFSET, %1+1*32]<4>:ub ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET+%2,16+1)<16;8,2> // 1st field U from current frame (line 1,3)
}
 
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (8) r[pCF_V_OFFSET, %1*32]<4>:ub ubRESP(nDI_CURR_2ND_FIELD_CHROMA_OFFSET,%2*16)<16;8,2> // 2nd field V from current frame (line 0,2)
mov (8) r[pCF_V_OFFSET, %1+1*32]<4>:ub ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET+%2,16)<16;8,2> // 1st field U from current frame (line 1,3)
}
 
jmpi (1) SAVE_DN_CURR
TOP_FIELD_FIRST:
//$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
// mov (16) r[pCF_Y_OFFSET, %1*32]<2>:ub ubRESP(nDI_CURR_FRAME_LUMA_OFFSET+%2,0) // 1st field luma from current frame (line 0,2)
// mov (16) r[pCF_Y_OFFSET, %1+1*32]<2>:ub ubRESP(nDI_CURR_2ND_FIELD_LUMA_OFFSET,%2*16) // 2nd field luma from current frame (line 1,3)
// mov (8) r[pCF_U_OFFSET, %1*32]<4>:ub ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET+%2,1)<16;8,2> // 1st field U from current frame (line 0,2)
// mov (8) r[pCF_V_OFFSET, %1*32]<4>:ub ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET+%2,0)<16;8,2> // 1st field V from current frame (line 0,2)
// mov (8) r[pCF_U_OFFSET, %1+1*32]<4>:ub ubRESP(nDI_CURR_2ND_FIELD_CHROMA_OFFSET,%2*16+1)<16;8,2> // 2nd field U from current frame (line 1,3)
// mov (8) r[pCF_V_OFFSET, %1+1*32]<4>:ub ubRESP(nDI_CURR_2ND_FIELD_CHROMA_OFFSET,%2*16)<16;8,2> // 2nd field V from current frame (line 1,3)
//}
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (16) r[pCF_Y_OFFSET, %1*32]<2>:ub ubRESP(nDI_CURR_FRAME_LUMA_OFFSET+%2,0) // 1st field luma from current frame (line 0,2)
mov (16) r[pCF_Y_OFFSET, %1+1*32]<2>:ub ubRESP(nDI_CURR_2ND_FIELD_LUMA_OFFSET,%2*16) // 2nd field luma from current frame (line 1,3)
}
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (8) r[pCF_U_OFFSET, %1*32]<4>:ub ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET+%2,1)<16;8,2> // 1st field U from current frame (line 0,2)
mov (8) r[pCF_U_OFFSET, %1+1*32]<4>:ub ubRESP(nDI_CURR_2ND_FIELD_CHROMA_OFFSET,%2*16+1)<16;8,2> // 2nd field U from current frame (line 1,3)
}
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (8) r[pCF_V_OFFSET, %1*32]<4>:ub ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET+%2,0)<16;8,2> // 1st field V from current frame (line 0,2)
mov (8) r[pCF_V_OFFSET, %1+1*32]<4>:ub ubRESP(nDI_CURR_2ND_FIELD_CHROMA_OFFSET,%2*16)<16;8,2> // 2nd field V from current frame (line 1,3)
}
SAVE_DN_CURR:
$for(0; <nY_NUM_OF_ROWS/2; 1) {
mov (8) mudMSGHDR_DN(%1+1)<1> udDN_YUV(%1)REGION(8,1)
}
send (8) dNULLREG mMSGHDR_DN udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_PA_DN_DI+nBI_DESTINATION_YUV:ud
#endif
 
// Save Processed frames
#include "DI_Save_PA.asm"
 
 
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PA_DN_ALG.asm
0,0 → 1,54
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
#define DI_DISABLE
 
#include "DNDI.inc"
 
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8 // Number of Y rows per block
#undef nUV_NUM_OF_ROWS
#define nUV_NUM_OF_ROWS 8 // Number of U/V rows per block
 
#undef nSMPL_RESP_LEN
#define nSMPL_RESP_LEN nSMPL_RESP_LEN_DN_PA // Set the Number of GRFs in DNDI response
#undef nDPW_BLOCK_SIZE_DN
#define nDPW_BLOCK_SIZE_DN nBLOCK_WIDTH_32+nBLOCK_HEIGHT_8 // DN Curr Block Size for Write is 32x8
#undef nDPW_BLOCK_SIZE_HIST
#define nDPW_BLOCK_SIZE_HIST nBLOCK_WIDTH_4+nBLOCK_HEIGHT_2 // HIST Block Size for Write is 4x2
 
////////////////////////////////////// Run the DN Algorithm ///////////////////////////////////////
#include "DNDI_COMMAND.asm"
 
////////////////////////////////////// Save the History Data for Next Run /////////////////////////
#include "DNDI_Hist_Save.asm"
 
////////////////////////////////////// Pack and Save the DN Curr Frame for Next Run ///////////////
add (4) pCF_Y_OFFSET<1>:uw ubDEST_CF_OFFSET<4;4,1>:ub npDN_YUV:w
$for (0; <nY_NUM_OF_ROWS; 1) {
mov (16) r[pCF_Y_OFFSET, %1*32]<2>:ub ubRESP(nNODI_LUMA_OFFSET,%1*16)<16;16,1> // copy line of Y
}
$for (0; <nUV_NUM_OF_ROWS; 1) {
mov (8) r[pCF_U_OFFSET, %1*32]<4>:ub ubRESP(nNODI_CHROMA_OFFSET,%1*16+1)<16;8,2> // copy line of U
mov (8) r[pCF_V_OFFSET, %1*32]<4>:ub ubRESP(nNODI_CHROMA_OFFSET,%1*16)<16;8,2> // copy line of V
}
 
shl (1) rMSGSRC.0<1>:ud wORIX<0;1,0>:w 1:w // X origin * 2 (422 output)
mov (1) rMSGSRC.1<1>:ud wORIY<0;1,0>:w // Y origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_DN:ud // block width and height (32x8)
mov (8) mMSGHDR_DN<1>:ud rMSGSRC<8;8,1>:ud // message header
 
$for(0; <nY_NUM_OF_ROWS; 2) {
mov (16) mudMSGHDR_DN(1+%1)<1> udDN_YUV(%1)REGION(8,1) // Move DN Curr to MRF
}
send (8) dNULLREG mMSGHDR_DN udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_PA_DN_NODI+nBI_DESTINATION_YUV:ud
 
 
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PA_Scaling.asm
0,0 → 1,70
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PA_Scaling.asm ----------
#include "Scaling.inc"
 
// Build 16 elements ramp in float32 and normalized it
// mov (8) SAMPLER_RAMP(0)<1> 0x76543210:v
// add (8) SAMPLER_RAMP(1)<1> SAMPLER_RAMP(0) 8.0:f
mov (4) SAMPLER_RAMP(0)<1> 0x48403000:vf //3, 2, 1, 0 in float vector
mov (4) SAMPLER_RAMP(0,4)<1> 0x5C585450:vf //7, 6, 5, 4 in float vector
add (8) SAMPLER_RAMP(1)<1> SAMPLER_RAMP(0) 8.0:f
 
//Module: PrepareScaleCoord.asm
 
// Setup for sampler msg hdr
mov (2) rMSGSRC.0<1>:ud 0:ud { NoDDClr } // Unused fields
mov (1) rMSGSRC.2<1>:ud 0:ud { NoDDChk } // Write and offset
 
// Calculate 16 v based on the step Y and vertical origin
mov (16) mfMSGPAYLOAD(2)<1> fSRC_VID_V_ORI<0;1,0>:f
mov (16) SCALE_COORD_Y<1>:f fSRC_VID_V_ORI<0;1,0>:f
 
// Calculate 16 u based on the step X and hori origin
// line (16) mfMSGPAYLOAD(0)<1> SCALE_STEP_X<0;1,0>:f SAMPLER_RAMP(0) // Assign to mrf directly
mov (16) acc0:f fSRC_VID_H_ORI<0;1,0>:f { Compr }
mac (16) mfMSGPAYLOAD(0)<1> fVIDEO_STEP_X<0;1,0>:f SAMPLER_RAMP(0) { Compr }
 
//Setup the constants for line instruction
mov (1) SCALE_LINE_P255<1>:f 255.0:f { NoDDClr } //{ NoDDClr, NoDDChk }
mov (1) SCALE_LINE_P0_5<1>:f 0.5:f { NoDDChk }
//------------------------------------------------------------------------------
 
$for (0; <nY_NUM_OF_ROWS; 1) {
 
// Read 16 sampled pixels and store them in float32 in 8 GRFs in the order of BGRA (VYUA).
mov (8) MSGHDR_SCALE.0:ud rMSGSRC.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (16) SCALE_RESPONSE_YW(0)<1> MSGHDR_SCALE udDUMMY_NULL nSMPL_ENGINE SMPLR_MSG_DSC+nSI_SRC_SIMD16_YUV+nBI_CURRENT_SRC_YUV
 
// Calculate 16 v for next line
add (16) mfMSGPAYLOAD(2)<1> SCALE_COORD_Y<8;8,1>:f fVIDEO_STEP_Y<0;1,0>:f // Assign to mrf directly
add (16) SCALE_COORD_Y<1>:f SCALE_COORD_Y<8;8,1>:f fVIDEO_STEP_Y<0;1,0>:f // Assign to mrf directly
 
// Scale back to [0, 255], convert f to ud
line (16) acc0:f SCALE_LINE_P255<0;1,0>:f SCALE_RESPONSE_YF(0) { Compr } // Process B, V
mov (16) SCALE_RESPONSE_YD(0)<1> acc0:f { Compr }
 
line (16) acc0:f SCALE_LINE_P255<0;1,0>:f SCALE_RESPONSE_YF(2) { Compr } // Process B, V
mov (16) SCALE_RESPONSE_YD(2)<1> acc0:f { Compr }
 
line (16) acc0:f SCALE_LINE_P255<0;1,0>:f SCALE_RESPONSE_YF(4) { Compr } // Process B, V
mov (16) SCALE_RESPONSE_YD(4)<1> acc0:f { Compr }
 
mov (16) DEST_V(%1)<1> SCALE_RESPONSE_YB(0) //possible error due to truncation - vK
mov (16) DEST_Y(%1)<1> SCALE_RESPONSE_YB(2) //possible error due to truncation - vK
mov (16) DEST_U(%1)<1> SCALE_RESPONSE_YB(4) //possible error due to truncation - vK
 
}
 
#define nSRC_REGION nREGION_1
 
//------------------------------------------------------------------------------
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL2_AVS_IEF_16x8.asm
0,0 → 1,60
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PL2_AVS_IEF_16x8.asm ----------
 
#include "AVS_IEF.inc"
 
//------------------------------------------------------------------------------
// 2 sampler reads for 8x8 Y each
// 2 sampler read for 8x8 U and 8x8 V (NV11\P208 input surface)
//------------------------------------------------------------------------------
 
// 1st 8x8 setup
#include "AVS_SetupFirstBlock.asm"
 
// Enable green channel only
mov (1) rAVS_8x8_HDR.2:ud nAVS_GREEN_CHANNEL_ONLY:ud
 
mov (16) mAVS_8x8_HDR.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(0)<1> mAVS_8x8_HDR udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_Y+nBI_CURRENT_SRC_Y
// Return Y in 4 GRFs
 
// 8x8 U and V sampling
// Enable red and blue channels
mov (1) rAVS_8x8_HDR.2:ud nAVS_RED_BLUE_CHANNELS:ud
 
mov (16) mAVS_8x8_HDR_UV.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(4)<1> mAVS_8x8_HDR_UV udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_2CH+nSI_SRC_UV+nBI_CURRENT_SRC_UV
// Return U and V in 8 GRFs
 
// 2nd 8x8 setup
#include "AVS_SetupSecondBlock.asm"
 
// 2nd 8x8 Y sampling
// Enable green channel only
mov (1) rAVS_8x8_HDR.2:ud nAVS_GREEN_CHANNEL_ONLY:ud
 
mov (16) mAVS_8x8_HDR.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE_2(0)<1> mAVS_8x8_HDR udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_Y+nBI_CURRENT_SRC_Y
 
// 2nd 8x8 U and V sampling
// Enable red and blue channels
mov (1) rAVS_8x8_HDR.2:ud nAVS_RED_BLUE_CHANNELS:ud
 
mov (16) mAVS_8x8_HDR_UV.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE_2(4)<1> mAVS_8x8_HDR_UV udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_2CH+nSI_SRC_UV+nBI_CURRENT_SRC_UV
// Return U and V in 8 GRFs
 
//------------------------------------------------------------------------------
// Unpacking sampler reads to 4:4:4 internal planar
//------------------------------------------------------------------------------
#include "PL2_AVS_IEF_Unpack_16x8.asm"
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL2_AVS_IEF_8x4.asm
0,0 → 1,58
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PL2_AVS_IEF_8x4.asm ----------
 
#include "AVS_IEF.inc"
 
//------------------------------------------------------------------------------
// 2 sampler reads for 8x8 Y each
// 1 sampler read for 8x8 U and 8x8 V (NV11\NV12 input surface)
//------------------------------------------------------------------------------
 
// 1st 8x8 setup
#include "AVS_SetupFirstBlock.asm"
 
// Enable green channel only
mov (1) rAVS_8x8_HDR.2:ud nAVS_GREEN_CHANNEL_ONLY:ud
 
mov (16) mAVS_8x8_HDR.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(0)<1> mAVS_8x8_HDR udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_Y+nBI_CURRENT_SRC_Y
// Return Y in 4 GRFs
 
// 8x8 U and V sampling
// Enable red and blue channels
//Only 8x4 wil be used
mov (1) rAVS_8x8_HDR.2:ud nAVS_RED_BLUE_CHANNELS:ud
 
// Calculate Chroma Step Size:
// for H direction: 16 Luma samples are covered by 8 Chroma samples. Thus Chroma_Step_X = 2 * Luma_Step_X
// for V direction: 8 Luma samples are covered by 8 Chroma samples. Thus Chroma_Step_Y = Luma_Step_Y
mul (1) rAVS_PAYLOAD.1:f fVIDEO_STEP_X:f 2.0:f // Step X for chroma
 
mov (16) mAVS_8x8_HDR_UV.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(4)<1> mAVS_8x8_HDR_UV udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_2CH+nSI_SRC_UV+nBI_CURRENT_SRC_UV
// Return U and V in 8 GRFs
 
// 2nd 8x8 setup
#include "AVS_SetupSecondBlock.asm"
 
// 2nd 8x8 Y sampling
// Enable green channel only
mov (1) rAVS_8x8_HDR.2:ud nAVS_GREEN_CHANNEL_ONLY:ud
 
mov (16) mAVS_8x8_HDR.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE_2(0)<1> mAVS_8x8_HDR udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_Y+nBI_CURRENT_SRC_Y
 
//------------------------------------------------------------------------------
// Unpacking sampler reads to 4:2:0 internal planar
//------------------------------------------------------------------------------
#include "PL2_AVS_IEF_Unpack_8x4.asm"
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL2_AVS_IEF_8x8.asm
0,0 → 1,57
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PL2_AVS_IEF_8x8.asm ----------
 
#include "AVS_IEF.inc"
 
//------------------------------------------------------------------------------
// 2 sampler reads for 8x8 Y each
// 1 sampler read for 8x8 U and 8x8 V (NV11\NV12 input surface)
//------------------------------------------------------------------------------
 
// 1st 8x8 setup
#include "AVS_SetupFirstBlock.asm"
 
// Enable green channel only
mov (1) rAVS_8x8_HDR.2:ud nAVS_GREEN_CHANNEL_ONLY:ud
 
mov (16) mAVS_8x8_HDR.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(0)<1> mAVS_8x8_HDR udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_Y+nBI_CURRENT_SRC_Y
// Return Y in 4 GRFs
 
// 8x8 U and V sampling
// Enable red and blue channels
mov (1) rAVS_8x8_HDR.2:ud nAVS_RED_BLUE_CHANNELS:ud
 
// Calculate Chroma Step Size:
// for H direction: 16 Luma samples are covered by 8 Chroma samples. Thus Chroma_Step_X = 2 * Luma_Step_X
// for V direction: 8 Luma samples are covered by 8 Chroma samples. Thus Chroma_Step_Y = Luma_Step_Y
mul (1) rAVS_PAYLOAD.1:f fVIDEO_STEP_X:f 2.0:f // Step X for chroma
 
mov (16) mAVS_8x8_HDR_UV.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(4)<1> mAVS_8x8_HDR_UV udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_2CH+nSI_SRC_UV+nBI_CURRENT_SRC_UV
// Return U and V in 8 GRFs
 
// 2nd 8x8 setup
#include "AVS_SetupSecondBlock.asm"
 
// 2nd 8x8 Y sampling
// Enable green channel only
mov (1) rAVS_8x8_HDR.2:ud nAVS_GREEN_CHANNEL_ONLY:ud
 
mov (16) mAVS_8x8_HDR.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE_2(0)<1> mAVS_8x8_HDR udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_Y+nBI_CURRENT_SRC_Y
 
//------------------------------------------------------------------------------
// Unpacking sampler reads to 4:2:2 internal planar
//------------------------------------------------------------------------------
#include "PL2_AVS_IEF_Unpack_8x8.asm"
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL2_AVS_IEF_Unpack_16x8.asm
0,0 → 1,271
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PL2_AVS_IEF_Unpack_16x8.asm ----------
#ifdef AVS_OUTPUT_16_BIT //Output is packed in AVYU format
// Move first 8x8 words of Y to dest GRF (as packed)
mov (4) uwDEST_Y(0,1)<4> uwAVS_RESPONSE(0,0)<4;4,1>
mov (4) uwDEST_Y(1,1)<4> uwAVS_RESPONSE(0,8)<4;4,1>
mov (4) uwDEST_Y(4,1)<4> uwAVS_RESPONSE(0,4)<4;4,1>
mov (4) uwDEST_Y(5,1)<4> uwAVS_RESPONSE(0,12)<4;4,1>
mov (4) uwDEST_Y(8,1)<4> uwAVS_RESPONSE(1,0)<4;4,1>
mov (4) uwDEST_Y(9,1)<4> uwAVS_RESPONSE(1,8)<4;4,1>
mov (4) uwDEST_Y(12,1)<4> uwAVS_RESPONSE(1,4)<4;4,1>
mov (4) uwDEST_Y(13,1)<4> uwAVS_RESPONSE(1,12)<4;4,1>
mov (4) uwDEST_Y(16,1)<4> uwAVS_RESPONSE(2,0)<4;4,1>
mov (4) uwDEST_Y(17,1)<4> uwAVS_RESPONSE(2,8)<4;4,1>
mov (4) uwDEST_Y(20,1)<4> uwAVS_RESPONSE(2,4)<4;4,1>
mov (4) uwDEST_Y(21,1)<4> uwAVS_RESPONSE(2,12)<4;4,1>
mov (4) uwDEST_Y(24,1)<4> uwAVS_RESPONSE(3,0)<4;4,1>
mov (4) uwDEST_Y(25,1)<4> uwAVS_RESPONSE(3,8)<4;4,1>
mov (4) uwDEST_Y(28,1)<4> uwAVS_RESPONSE(3,4)<4;4,1>
mov (4) uwDEST_Y(29,1)<4> uwAVS_RESPONSE(3,12)<4;4,1>
 
// Move first 8x8 words of U to dest GRF (as packed)
mov (4) uwDEST_Y(0,0)<4> uwAVS_RESPONSE(4,0)<4;4,1>
mov (4) uwDEST_Y(1,0)<4> uwAVS_RESPONSE(4,8)<4;4,1>
mov (4) uwDEST_Y(4,0)<4> uwAVS_RESPONSE(4,4)<4;4,1>
mov (4) uwDEST_Y(5,0)<4> uwAVS_RESPONSE(4,12)<4;4,1>
mov (4) uwDEST_Y(8,0)<4> uwAVS_RESPONSE(5,0)<4;4,1>
mov (4) uwDEST_Y(9,0)<4> uwAVS_RESPONSE(5,8)<4;4,1>
mov (4) uwDEST_Y(12,0)<4> uwAVS_RESPONSE(5,4)<4;4,1>
mov (4) uwDEST_Y(13,0)<4> uwAVS_RESPONSE(5,12)<4;4,1>
mov (4) uwDEST_Y(16,0)<4> uwAVS_RESPONSE(8,0)<4;4,1>
mov (4) uwDEST_Y(17,0)<4> uwAVS_RESPONSE(8,8)<4;4,1>
mov (4) uwDEST_Y(20,0)<4> uwAVS_RESPONSE(8,4)<4;4,1>
mov (4) uwDEST_Y(21,0)<4> uwAVS_RESPONSE(8,12)<4;4,1>
mov (4) uwDEST_Y(24,0)<4> uwAVS_RESPONSE(9,0)<4;4,1>
mov (4) uwDEST_Y(25,0)<4> uwAVS_RESPONSE(9,8)<4;4,1>
mov (4) uwDEST_Y(28,0)<4> uwAVS_RESPONSE(9,4)<4;4,1>
mov (4) uwDEST_Y(29,0)<4> uwAVS_RESPONSE(9,12)<4;4,1>
 
// Move first 8x8 words of V to dest GRF (as packed)
mov (4) uwDEST_Y(0,2)<4> uwAVS_RESPONSE(6,0)<4;4,1>
mov (4) uwDEST_Y(1,2)<4> uwAVS_RESPONSE(6,8)<4;4,1>
mov (4) uwDEST_Y(4,2)<4> uwAVS_RESPONSE(6,4)<4;4,1>
mov (4) uwDEST_Y(5,2)<4> uwAVS_RESPONSE(6,12)<4;4,1>
mov (4) uwDEST_Y(8,2)<4> uwAVS_RESPONSE(7,0)<4;4,1>
mov (4) uwDEST_Y(9,2)<4> uwAVS_RESPONSE(7,8)<4;4,1>
mov (4) uwDEST_Y(12,2)<4> uwAVS_RESPONSE(7,4)<4;4,1>
mov (4) uwDEST_Y(13,2)<4> uwAVS_RESPONSE(7,12)<4;4,1>
mov (4) uwDEST_Y(16,2)<4> uwAVS_RESPONSE(10,0)<4;4,1>
mov (4) uwDEST_Y(17,2)<4> uwAVS_RESPONSE(10,8)<4;4,1>
mov (4) uwDEST_Y(20,2)<4> uwAVS_RESPONSE(10,4)<4;4,1>
mov (4) uwDEST_Y(21,2)<4> uwAVS_RESPONSE(10,12)<4;4,1>
mov (4) uwDEST_Y(24,2)<4> uwAVS_RESPONSE(11,0)<4;4,1>
mov (4) uwDEST_Y(25,2)<4> uwAVS_RESPONSE(11,8)<4;4,1>
mov (4) uwDEST_Y(28,2)<4> uwAVS_RESPONSE(11,4)<4;4,1>
mov (4) uwDEST_Y(29,2)<4> uwAVS_RESPONSE(11,12)<4;4,1>
 
// Move first 8x8 words of A to dest GRF (as packed)
mov (4) uwDEST_Y(0,3)<4> 0:uw
mov (4) uwDEST_Y(1,3)<4> 0:uw
mov (4) uwDEST_Y(4,3)<4> 0:uw
mov (4) uwDEST_Y(5,3)<4> 0:uw
mov (4) uwDEST_Y(8,3)<4> 0:uw
mov (4) uwDEST_Y(9,3)<4> 0:uw
mov (4) uwDEST_Y(12,3)<4> 0:uw
mov (4) uwDEST_Y(13,3)<4> 0:uw
mov (4) uwDEST_Y(16,3)<4> 0:uw
mov (4) uwDEST_Y(17,3)<4> 0:uw
mov (4) uwDEST_Y(20,3)<4> 0:uw
mov (4) uwDEST_Y(21,3)<4> 0:uw
mov (4) uwDEST_Y(24,3)<4> 0:uw
mov (4) uwDEST_Y(25,3)<4> 0:uw
mov (4) uwDEST_Y(28,3)<4> 0:uw
mov (4) uwDEST_Y(29,3)<4> 0:uw
 
// Move second 8x8 words of Y to dest GRF
mov (4) uwDEST_Y(2,1)<4> uwAVS_RESPONSE_2(0,0)<4;4,1>
mov (4) uwDEST_Y(3,1)<4> uwAVS_RESPONSE_2(0,8)<4;4,1>
mov (4) uwDEST_Y(6,1)<4> uwAVS_RESPONSE_2(0,4)<4;4,1>
mov (4) uwDEST_Y(7,1)<4> uwAVS_RESPONSE_2(0,12)<4;4,1>
mov (4) uwDEST_Y(10,1)<4> uwAVS_RESPONSE_2(1,0)<4;4,1>
mov (4) uwDEST_Y(11,1)<4> uwAVS_RESPONSE_2(1,8)<4;4,1>
mov (4) uwDEST_Y(14,1)<4> uwAVS_RESPONSE_2(1,4)<4;4,1>
mov (4) uwDEST_Y(15,1)<4> uwAVS_RESPONSE_2(1,12)<4;4,1>
mov (4) uwDEST_Y(18,1)<4> uwAVS_RESPONSE_2(2,0)<4;4,1>
mov (4) uwDEST_Y(19,1)<4> uwAVS_RESPONSE_2(2,8)<4;4,1>
mov (4) uwDEST_Y(22,1)<4> uwAVS_RESPONSE_2(2,4)<4;4,1>
mov (4) uwDEST_Y(23,1)<4> uwAVS_RESPONSE_2(2,12)<4;4,1>
mov (4) uwDEST_Y(26,1)<4> uwAVS_RESPONSE_2(3,0)<4;4,1>
mov (4) uwDEST_Y(27,1)<4> uwAVS_RESPONSE_2(3,8)<4;4,1>
mov (4) uwDEST_Y(30,1)<4> uwAVS_RESPONSE_2(3,4)<4;4,1>
mov (4) uwDEST_Y(31,1)<4> uwAVS_RESPONSE_2(3,12)<4;4,1>
 
// Move second 8x8 words of U to dest GRF
mov (4) uwDEST_Y(2,0)<4> uwAVS_RESPONSE_2(4,0)<4;4,1>
mov (4) uwDEST_Y(3,0)<4> uwAVS_RESPONSE_2(4,8)<4;4,1>
mov (4) uwDEST_Y(6,0)<4> uwAVS_RESPONSE_2(4,4)<4;4,1>
mov (4) uwDEST_Y(7,0)<4> uwAVS_RESPONSE_2(4,12)<4;4,1>
mov (4) uwDEST_Y(10,0)<4> uwAVS_RESPONSE_2(5,0)<4;4,1>
mov (4) uwDEST_Y(11,0)<4> uwAVS_RESPONSE_2(5,8)<4;4,1>
mov (4) uwDEST_Y(14,0)<4> uwAVS_RESPONSE_2(5,4)<4;4,1>
mov (4) uwDEST_Y(15,0)<4> uwAVS_RESPONSE_2(5,12)<4;4,1>
mov (4) uwDEST_Y(18,0)<4> uwAVS_RESPONSE_2(8,0)<4;4,1>
mov (4) uwDEST_Y(19,0)<4> uwAVS_RESPONSE_2(8,8)<4;4,1>
mov (4) uwDEST_Y(22,0)<4> uwAVS_RESPONSE_2(8,4)<4;4,1>
mov (4) uwDEST_Y(23,0)<4> uwAVS_RESPONSE_2(8,12)<4;4,1>
mov (4) uwDEST_Y(26,0)<4> uwAVS_RESPONSE_2(9,0)<4;4,1>
mov (4) uwDEST_Y(27,0)<4> uwAVS_RESPONSE_2(9,8)<4;4,1>
mov (4) uwDEST_Y(30,0)<4> uwAVS_RESPONSE_2(9,4)<4;4,1>
mov (4) uwDEST_Y(31,0)<4> uwAVS_RESPONSE_2(9,12)<4;4,1>
 
// Move second 8x8 words of V to dest GRF
mov (4) uwDEST_Y(2,2)<4> uwAVS_RESPONSE_2(6,0)<4;4,1>
mov (4) uwDEST_Y(3,2)<4> uwAVS_RESPONSE_2(6,8)<4;4,1>
mov (4) uwDEST_Y(6,2)<4> uwAVS_RESPONSE_2(6,4)<4;4,1>
mov (4) uwDEST_Y(7,2)<4> uwAVS_RESPONSE_2(6,12)<4;4,1>
mov (4) uwDEST_Y(10,2)<4> uwAVS_RESPONSE_2(7,0)<4;4,1>
mov (4) uwDEST_Y(11,2)<4> uwAVS_RESPONSE_2(7,8)<4;4,1>
mov (4) uwDEST_Y(14,2)<4> uwAVS_RESPONSE_2(7,4)<4;4,1>
mov (4) uwDEST_Y(15,2)<4> uwAVS_RESPONSE_2(7,12)<4;4,1>
mov (4) uwDEST_Y(18,2)<4> uwAVS_RESPONSE_2(10,0)<4;4,1>
mov (4) uwDEST_Y(19,2)<4> uwAVS_RESPONSE_2(10,8)<4;4,1>
mov (4) uwDEST_Y(22,2)<4> uwAVS_RESPONSE_2(10,4)<4;4,1>
mov (4) uwDEST_Y(23,2)<4> uwAVS_RESPONSE_2(10,12)<4;4,1>
mov (4) uwDEST_Y(26,2)<4> uwAVS_RESPONSE_2(11,0)<4;4,1>
mov (4) uwDEST_Y(27,2)<4> uwAVS_RESPONSE_2(11,8)<4;4,1>
mov (4) uwDEST_Y(30,2)<4> uwAVS_RESPONSE_2(11,4)<4;4,1>
mov (4) uwDEST_Y(31,2)<4> uwAVS_RESPONSE_2(11,12)<4;4,1>
 
// Move second 8x8 words of A to dest GRF
mov (4) uwDEST_Y(2,3)<4> 0:uw
mov (4) uwDEST_Y(3,3)<4> 0:uw
mov (4) uwDEST_Y(6,3)<4> 0:uw
mov (4) uwDEST_Y(7,3)<4> 0:uw
mov (4) uwDEST_Y(10,3)<4> 0:uw
mov (4) uwDEST_Y(11,3)<4> 0:uw
mov (4) uwDEST_Y(14,3)<4> 0:uw
mov (4) uwDEST_Y(15,3)<4> 0:uw
mov (4) uwDEST_Y(18,3)<4> 0:uw
mov (4) uwDEST_Y(19,3)<4> 0:uw
mov (4) uwDEST_Y(22,3)<4> 0:uw
mov (4) uwDEST_Y(23,3)<4> 0:uw
mov (4) uwDEST_Y(26,3)<4> 0:uw
mov (4) uwDEST_Y(27,3)<4> 0:uw
mov (4) uwDEST_Y(30,3)<4> 0:uw
mov (4) uwDEST_Y(31,3)<4> 0:uw
 
/* This section will be used if 16-bit output is needed in planar format -vK
// Move 1st 8x8 words of Y to dest GRF at lower 8 words of each RGF.
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2)<1> uwAVS_RESPONSE(%1,0)<8;4,1>
mov (8) uwDEST_Y(%1*2+1)<1> uwAVS_RESPONSE(%1,8)<8;4,1>
}
// Move 1st 8x8 words of U to dest GRF (Copy high byte in a word)
mov (8) uwDEST_U(0)<1> uwAVS_RESPONSE(4,0)<8;4,1>
mov (8) uwDEST_U(1)<1> uwAVS_RESPONSE(4,8)<8;4,1>
mov (8) uwDEST_U(2)<1> uwAVS_RESPONSE(5,0)<8;4,1>
mov (8) uwDEST_U(3)<1> uwAVS_RESPONSE(5,8)<8;4,1>
mov (8) uwDEST_U(4)<1> uwAVS_RESPONSE(8,0)<8;4,1>
mov (8) uwDEST_U(5)<1> uwAVS_RESPONSE(8,8)<8;4,1>
mov (8) uwDEST_U(6)<1> uwAVS_RESPONSE(9,0)<8;4,1>
mov (8) uwDEST_U(7)<1> uwAVS_RESPONSE(9,8)<8;4,1>
 
// Move 1st 8x8 words of V to dest GRF
mov (8) uwDEST_V(0)<1> uwAVS_RESPONSE(6,0)<8;4,1>
mov (8) uwDEST_V(1)<1> uwAVS_RESPONSE(6,8)<8;4,1>
mov (8) uwDEST_V(2)<1> uwAVS_RESPONSE(7,0)<8;4,1>
mov (8) uwDEST_V(3)<1> uwAVS_RESPONSE(7,8)<8;4,1>
mov (8) uwDEST_V(4)<1> uwAVS_RESPONSE(10,0)<8;4,1>
mov (8) uwDEST_V(5)<1> uwAVS_RESPONSE(10,8)<8;4,1>
mov (8) uwDEST_V(6)<1> uwAVS_RESPONSE(11,0)<8;4,1>
mov (8) uwDEST_V(7)<1> uwAVS_RESPONSE(11,8)<8;4,1>
 
// Move 2nd 8x8 words of Y to dest GRF at higher 8 words of each GRF.
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2,8)<1> uwAVS_RESPONSE_2(%1,0)<8;4,1>
mov (8) uwDEST_Y(%1*2+1,8)<1> uwAVS_RESPONSE_2(%1,8)<8;4,1>
}
 
// Move 2st 8x8 words of U to dest GRF (Copy high byte in a word)
mov (8) uwDEST_U(0,8)<1> uwAVS_RESPONSE_2(4,0)<8;4,1>
mov (8) uwDEST_U(1,8)<1> uwAVS_RESPONSE_2(4,8)<8;4,1>
mov (8) uwDEST_U(2,8)<1> uwAVS_RESPONSE_2(5,0)<8;4,1>
mov (8) uwDEST_U(3,8)<1> uwAVS_RESPONSE_2(5,8)<8;4,1>
mov (8) uwDEST_U(4,8)<1> uwAVS_RESPONSE_2(8,0)<8;4,1>
mov (8) uwDEST_U(5,8)<1> uwAVS_RESPONSE_2(8,8)<8;4,1>
mov (8) uwDEST_U(6,8)<1> uwAVS_RESPONSE_2(9,0)<8;4,1>
mov (8) uwDEST_U(7,8)<1> uwAVS_RESPONSE_2(9,8)<8;4,1>
 
// Move 2st 8x8 words of V to dest GRF
mov (8) uwDEST_V(0,8)<1> uwAVS_RESPONSE_2(6,0)<8;4,1>
mov (8) uwDEST_V(1,8)<1> uwAVS_RESPONSE_2(6,8)<8;4,1>
mov (8) uwDEST_V(2,8)<1> uwAVS_RESPONSE_2(7,0)<8;4,1>
mov (8) uwDEST_V(3,8)<1> uwAVS_RESPONSE_2(7,8)<8;4,1>
mov (8) uwDEST_V(4,8)<1> uwAVS_RESPONSE_2(10,0)<8;4,1>
mov (8) uwDEST_V(5,8)<1> uwAVS_RESPONSE_2(10,8)<8;4,1>
mov (8) uwDEST_V(6,8)<1> uwAVS_RESPONSE_2(11,0)<8;4,1>
mov (8) uwDEST_V(7,8)<1> uwAVS_RESPONSE_2(11,8)<8;4,1>
*/
#else
// Move 1st 8x8 words of Y to dest GRF at lower 8 words of each RGF.
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2)<1> ubAVS_RESPONSE(%1,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_Y(%1*2+1)<1> ubAVS_RESPONSE(%1,8+1)<16;4,2> // Copy high byte in a word
}
 
// Move 1st 8x8 words of U to dest GRF (Copy high byte in a word)
mov (8) uwDEST_U(0)<1> ubAVS_RESPONSE(4,1)<16;4,2>
mov (8) uwDEST_U(1)<1> ubAVS_RESPONSE(4,8+1)<16;4,2>
mov (8) uwDEST_U(2)<1> ubAVS_RESPONSE(5,1)<16;4,2>
mov (8) uwDEST_U(3)<1> ubAVS_RESPONSE(5,8+1)<16;4,2>
mov (8) uwDEST_U(4)<1> ubAVS_RESPONSE(8,1)<16;4,2>
mov (8) uwDEST_U(5)<1> ubAVS_RESPONSE(8,8+1)<16;4,2>
mov (8) uwDEST_U(6)<1> ubAVS_RESPONSE(9,1)<16;4,2>
mov (8) uwDEST_U(7)<1> ubAVS_RESPONSE(9,8+1)<16;4,2>
 
// Move 1st 8x8 words of V to dest GRF
mov (8) uwDEST_V(0)<1> ubAVS_RESPONSE(6,1)<16;4,2>
mov (8) uwDEST_V(1)<1> ubAVS_RESPONSE(6,8+1)<16;4,2>
mov (8) uwDEST_V(2)<1> ubAVS_RESPONSE(7,1)<16;4,2>
mov (8) uwDEST_V(3)<1> ubAVS_RESPONSE(7,8+1)<16;4,2>
mov (8) uwDEST_V(4)<1> ubAVS_RESPONSE(10,1)<16;4,2>
mov (8) uwDEST_V(5)<1> ubAVS_RESPONSE(10,8+1)<16;4,2>
mov (8) uwDEST_V(6)<1> ubAVS_RESPONSE(11,1)<16;4,2>
mov (8) uwDEST_V(7)<1> ubAVS_RESPONSE(11,8+1)<16;4,2>
 
// Move 2nd 8x8 words of Y to dest GRF at higher 8 words of each GRF.
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2,8)<1> ubAVS_RESPONSE_2(%1,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_Y(%1*2+1,8)<1> ubAVS_RESPONSE_2(%1,8+1)<16;4,2> // Copy high byte in a word
}
 
// Move 2st 8x8 words of U to dest GRF (Copy high byte in a word)
mov (8) uwDEST_U(0,8)<1> ubAVS_RESPONSE_2(4,1)<16;4,2>
mov (8) uwDEST_U(1,8)<1> ubAVS_RESPONSE_2(4,8+1)<16;4,2>
mov (8) uwDEST_U(2,8)<1> ubAVS_RESPONSE_2(5,1)<16;4,2>
mov (8) uwDEST_U(3,8)<1> ubAVS_RESPONSE_2(5,8+1)<16;4,2>
mov (8) uwDEST_U(4,8)<1> ubAVS_RESPONSE_2(8,1)<16;4,2>
mov (8) uwDEST_U(5,8)<1> ubAVS_RESPONSE_2(8,8+1)<16;4,2>
mov (8) uwDEST_U(6,8)<1> ubAVS_RESPONSE_2(9,1)<16;4,2>
mov (8) uwDEST_U(7,8)<1> ubAVS_RESPONSE_2(9,8+1)<16;4,2>
 
// Move 2st 8x8 words of V to dest GRF
mov (8) uwDEST_V(0,8)<1> ubAVS_RESPONSE_2(6,1)<16;4,2>
mov (8) uwDEST_V(1,8)<1> ubAVS_RESPONSE_2(6,8+1)<16;4,2>
mov (8) uwDEST_V(2,8)<1> ubAVS_RESPONSE_2(7,1)<16;4,2>
mov (8) uwDEST_V(3,8)<1> ubAVS_RESPONSE_2(7,8+1)<16;4,2>
mov (8) uwDEST_V(4,8)<1> ubAVS_RESPONSE_2(10,1)<16;4,2>
mov (8) uwDEST_V(5,8)<1> ubAVS_RESPONSE_2(10,8+1)<16;4,2>
mov (8) uwDEST_V(6,8)<1> ubAVS_RESPONSE_2(11,1)<16;4,2>
mov (8) uwDEST_V(7,8)<1> ubAVS_RESPONSE_2(11,8+1)<16;4,2>
#endif
 
// Re-define new # of lines
#undef nUV_NUM_OF_ROWS
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8
#define nUV_NUM_OF_ROWS 8
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL2_AVS_IEF_Unpack_8x4.asm
0,0 → 1,45
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PL2_AVS_IEF_8x4.asm ----------
// Move first 8x8 words of Y to dest GRF at lower 8 words of each RGF.
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2)<1> ubAVS_RESPONSE(%1,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_Y(%1*2+1)<1> ubAVS_RESPONSE(%1,8+1)<16;4,2> // Copy high byte in a word
}
 
// Move 8x4 words of U to dest GRF (Copy high byte in a word)
mov (8) uwDEST_U(0)<1> ubAVS_RESPONSE(4,1)<16;4,2>
mov (8) uwDEST_U(0,8)<1> ubAVS_RESPONSE(5,1)<16;4,2>
mov (8) uwDEST_U(1)<1> ubAVS_RESPONSE(8,1)<16;4,2>
mov (8) uwDEST_U(1,8)<1> ubAVS_RESPONSE(9,1)<16;4,2>
 
// Move 8x4 words of V to dest GRF
mov (8) uwDEST_V(0)<1> ubAVS_RESPONSE(6,1)<16;4,2>
mov (8) uwDEST_V(0,8)<1> ubAVS_RESPONSE(7,1)<16;4,2>
mov (8) uwDEST_V(1)<1> ubAVS_RESPONSE(10,1)<16;4,2>
mov (8) uwDEST_V(1,8)<1> ubAVS_RESPONSE(11,1)<16;4,2>
 
// Move 2nd 8x8 words of Y to dest GRF at higher 8 words of each GRF.
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2,8)<1> ubAVS_RESPONSE_2(%1,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_Y(%1*2+1,8)<1> ubAVS_RESPONSE_2(%1,8+1)<16;4,2> // Copy high byte in a word
}
 
//------------------------------------------------------------------------------
 
// Re-define new # of lines
#undef nUV_NUM_OF_ROWS
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8
#define nUV_NUM_OF_ROWS 4
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL2_AVS_IEF_Unpack_8x8.asm
0,0 → 1,53
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PL2_AVS_IEF_8x8.asm ----------
// Move first 8x8 words of Y to dest GRF at lower 8 words of each RGF.
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2)<1> ubAVS_RESPONSE(%1,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_Y(%1*2+1)<1> ubAVS_RESPONSE(%1,8+1)<16;4,2> // Copy high byte in a word
}
 
// Move 8x8 words of U to dest GRF (Copy high byte in a word)
mov (8) uwDEST_U(0)<1> ubAVS_RESPONSE(4,1)<16;4,2>
mov (8) uwDEST_U(0,8)<1> ubAVS_RESPONSE(4,8+1)<16;4,2>
mov (8) uwDEST_U(1)<1> ubAVS_RESPONSE(5,1)<16;4,2>
mov (8) uwDEST_U(1,8)<1> ubAVS_RESPONSE(5,8+1)<16;4,2>
mov (8) uwDEST_U(2)<1> ubAVS_RESPONSE(8,1)<16;4,2>
mov (8) uwDEST_U(2,8)<1> ubAVS_RESPONSE(8,8+1)<16;4,2>
mov (8) uwDEST_U(3)<1> ubAVS_RESPONSE(9,1)<16;4,2>
mov (8) uwDEST_U(3,8)<1> ubAVS_RESPONSE(9,8+1)<16;4,2>
 
// Move 8x8 words of V to dest GRF
mov (8) uwDEST_V(0)<1> ubAVS_RESPONSE(6,1)<16;4,2>
mov (8) uwDEST_V(0,8)<1> ubAVS_RESPONSE(6,8+1)<16;4,2>
mov (8) uwDEST_V(1)<1> ubAVS_RESPONSE(7,1)<16;4,2>
mov (8) uwDEST_V(1,8)<1> ubAVS_RESPONSE(7,8+1)<16;4,2>
mov (8) uwDEST_V(2)<1> ubAVS_RESPONSE(10,1)<16;4,2>
mov (8) uwDEST_V(2,8)<1> ubAVS_RESPONSE(10,8+1)<16;4,2>
mov (8) uwDEST_V(3)<1> ubAVS_RESPONSE(11,1)<16;4,2>
mov (8) uwDEST_V(3,8)<1> ubAVS_RESPONSE(11,8+1)<16;4,2>
 
// Move 2nd 8x8 words of Y to dest GRF at higher 8 words of each GRF.
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2,8)<1> ubAVS_RESPONSE_2(%1,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_Y(%1*2+1,8)<1> ubAVS_RESPONSE_2(%1,8+1)<16;4,2> // Copy high byte in a word
}
 
//------------------------------------------------------------------------------
 
// Re-define new # of lines
#undef nUV_NUM_OF_ROWS
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8
#define nUV_NUM_OF_ROWS 8
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL2_Scaling.asm
0,0 → 1,71
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PL2_Scaling.asm ----------
#include "Scaling.inc"
 
// Build 16 elements ramp in float32 and normalized it
// mov (8) SAMPLER_RAMP(0)<1> 0x76543210:v
// add (8) SAMPLER_RAMP(1)<1> SAMPLER_RAMP(0) 8.0:f
mov (4) SAMPLER_RAMP(0)<1> 0x48403000:vf //3, 2, 1, 0 in float vector
mov (4) SAMPLER_RAMP(0,4)<1> 0x5C585450:vf //7, 6, 5, 4 in float vector
add (8) SAMPLER_RAMP(1)<1> SAMPLER_RAMP(0) 8.0:f
//Module: PrepareScaleCoord.asm
 
// Setup for sampler msg hdr
mov (2) rMSGSRC.0<1>:ud 0:ud { NoDDClr } // Unused fields
mov (1) rMSGSRC.2<1>:ud 0:ud { NoDDChk } // Write and offset
 
// Calculate 16 v based on the step Y and vertical origin
mov (16) mfMSGPAYLOAD(2)<1> fSRC_VID_V_ORI<0;1,0>:f
mov (16) SCALE_COORD_Y<1>:f fSRC_VID_V_ORI<0;1,0>:f
 
// Calculate 16 u based on the step X and hori origin
// line (16) mfMSGPAYLOAD(0)<1> SCALE_STEP_X<0;1,0>:f SAMPLER_RAMP(0) // Assign to mrf directly
mov (16) acc0:f fSRC_VID_H_ORI<0;1,0>:f { Compr }
mac (16) mfMSGPAYLOAD(0)<1> fVIDEO_STEP_X<0;1,0>:f SAMPLER_RAMP(0) { Compr }
 
//Setup the constants for line instruction
mov (1) SCALE_LINE_P255<1>:f 255.0:f { NoDDClr } //{ NoDDClr, NoDDChk }
mov (1) SCALE_LINE_P0_5<1>:f 0.5:f { NoDDChk }
 
//------------------------------------------------------------------------------
 
$for (0; <nY_NUM_OF_ROWS; 1) {
 
// Read 16 sampled pixels and store them in float32 in 8 GRFs in the order of BGRA (VYUA).
mov (8) MSGHDR_SCALE.0:ud rMSGSRC.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (16) SCALE_RESPONSE_YW(0)<1> MSGHDR_SCALE udDUMMY_NULL nSMPL_ENGINE SMPLR_MSG_DSC+nSI_SRC_SIMD16_Y+nBI_CURRENT_SRC_Y
send (16) SCALE_RESPONSE_UW(0)<1> MSGHDR_SCALE udDUMMY_NULL nSMPL_ENGINE SMPLR_MSG_DSC+nSI_SRC_SIMD16_UV+nBI_CURRENT_SRC_UV
 
// Calculate 16 v for next line
add (16) mfMSGPAYLOAD(2)<1> SCALE_COORD_Y<8;8,1>:f fVIDEO_STEP_Y<0;1,0>:f // Assign to mrf directly
add (16) SCALE_COORD_Y<1>:f SCALE_COORD_Y<8;8,1>:f fVIDEO_STEP_Y<0;1,0>:f // Assign to mrf directly
 
// Scale back to [0, 255], convert f to ud
line (16) acc0:f SCALE_LINE_P255<0;1,0>:f SCALE_RESPONSE_YF(0) { Compr } // Process B, V
mov (16) SCALE_RESPONSE_YD(0)<1> acc0:f { Compr }
 
line (16) acc0:f SCALE_LINE_P255<0;1,0>:f SCALE_RESPONSE_UF(0) { Compr } // Process B, V
mov (16) SCALE_RESPONSE_UD(0)<1> acc0:f { Compr }
 
line (16) acc0:f SCALE_LINE_P255<0;1,0>:f SCALE_RESPONSE_UF(2) { Compr } // Process B, V
mov (16) SCALE_RESPONSE_UD(2)<1> acc0:f { Compr }
 
mov (16) DEST_Y(%1)<1> SCALE_RESPONSE_YB(0) //possible error due to truncation - vK
mov (16) DEST_U(%1)<1> SCALE_RESPONSE_UB(0) //possible error due to truncation - vK
mov (16) DEST_V(%1)<1> SCALE_RESPONSE_UB(2) //possible error due to truncation - vK
 
}
 
#define nSRC_REGION nREGION_1
 
//------------------------------------------------------------------------------
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL3_AVS_IEF_16x8.asm
0,0 → 1,69
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PL3_AVS_IEF_16x8.asm ----------
 
#include "AVS_IEF.inc"
 
//------------------------------------------------------------------------------
// 2 sampler reads for 8x8 Y surface
// 2 sampler read for 8x8 U surface
// 2 sampler read for 8x8 V surface
//------------------------------------------------------------------------------
 
// 1st 8x8 setup
#include "AVS_SetupFirstBlock.asm"
 
// 1st 8x8 Y sampling
mov (1) rAVS_8x8_HDR.2:ud nAVS_GREEN_CHANNEL_ONLY:ud // Enable green channel
mov (16) mAVS_8x8_HDR.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(0)<1> mAVS_8x8_HDR udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_Y+nBI_CURRENT_SRC_Y
// Return Y in 4 GRFs
 
// 1st 8x8 U sampling
mov (1) rAVS_8x8_HDR.2:ud nAVS_RED_CHANNEL_ONLY:ud // Enable red channel
mov (16) mAVS_8x8_HDR_UV.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(4)<1> mAVS_8x8_HDR_UV udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_U+nBI_CURRENT_SRC_U
// Return U in 4 GRFs
 
// 1st 8x8 V sampling
mov (1) rAVS_8x8_HDR.2:ud nAVS_RED_CHANNEL_ONLY:ud // Dummy instruction to avoid back-2-back send instructions
mov (16) mAVS_8x8_HDR_UV.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(8)<1> mAVS_8x8_HDR_UV udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_V+nBI_CURRENT_SRC_V
// Return V in 4 GRFs
 
// 2nd 8x8 setup
#include "AVS_SetupSecondBlock.asm"
 
// 2nd 8x8 Y sampling
mov (1) rAVS_8x8_HDR.2:ud nAVS_GREEN_CHANNEL_ONLY:ud // Enable green channel
mov (16) mAVS_8x8_HDR.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE_2(0)<1> mAVS_8x8_HDR udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_Y+nBI_CURRENT_SRC_Y
// Return Y in 4 GRFs
 
// 2nd 8x8 U sampling
mov (1) rAVS_8x8_HDR.2:ud nAVS_RED_CHANNEL_ONLY:ud // Enable red channel
mov (16) mAVS_8x8_HDR_UV.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE_2(4)<1> mAVS_8x8_HDR_UV udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_U+nBI_CURRENT_SRC_U
// Return U in 4 GRFs
mov (1) rAVS_8x8_HDR.2:ud nAVS_RED_CHANNEL_ONLY:ud // Dummy instruction just in order to avoid back-2-back send instructions!
 
// 2nd 8x8 V sampling
mov (16) mAVS_8x8_HDR_UV.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE_2(8)<1> mAVS_8x8_HDR_UV udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_V+nBI_CURRENT_SRC_V
// Return V in 4 GRFs
 
//------------------------------------------------------------------------------
// Unpacking sampler reads to 4:4:4 internal planar
//------------------------------------------------------------------------------
#include "PL3_AVS_IEF_Unpack_16x8.asm"
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL3_AVS_IEF_8x4.asm
0,0 → 1,60
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PL3_AVS_IEF_8x4.asm ----------
 
#include "AVS_IEF.inc"
 
//------------------------------------------------------------------------------
// 2 sampler reads for 8x8 Y surface
// 1 sampler read for 8x8 U surface
// 1 sampler read for 8x8 V surface
//------------------------------------------------------------------------------
 
// 1st 8x8 setup
#include "AVS_SetupFirstBlock.asm"
 
// 1st 8x8 Y sampling
mov (1) rAVS_8x8_HDR.2:ud nAVS_GREEN_CHANNEL_ONLY:ud // Enable green channel
mov (16) mAVS_8x8_HDR.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(0)<1> mAVS_8x8_HDR udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_Y+nBI_CURRENT_SRC_Y
// Return Y in 4 GRFs
 
// 8x8 U sampling ; Only 8x4 will be used
mov (1) rAVS_8x8_HDR.2:ud nAVS_RED_CHANNEL_ONLY:ud // Enable red channel
mul (1) rAVS_PAYLOAD.1:f fVIDEO_STEP_X:f 2.0:f // Calculate Step X for chroma
mov (16) mAVS_8x8_HDR_UV.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(4)<1> mAVS_8x8_HDR_UV udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_U+nBI_CURRENT_SRC_U
// Return U in 4 GRFs
 
// 8x8 V sampling ; Only 8x4 will be used
mov (1) rAVS_8x8_HDR.2:ud nAVS_RED_CHANNEL_ONLY:ud // Dummy instruction just in order to avoid back-2-back send instructions!
mov (16) mAVS_8x8_HDR_UV.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(8)<1> mAVS_8x8_HDR_UV udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_V+nBI_CURRENT_SRC_V
// Return V in 4 GRFs
 
// 2nd 8x8 setup
#include "AVS_SetupSecondBlock.asm"
 
// 2nd 8x8 Y sampling
mov (1) rAVS_8x8_HDR.2:ud nAVS_GREEN_CHANNEL_ONLY:ud // Enable green channel
mov (1) rAVS_PAYLOAD.1:f fVIDEO_STEP_X:f // Restore Step X for luma
mov (16) mAVS_8x8_HDR.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(12)<1> mAVS_8x8_HDR udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_Y+nBI_CURRENT_SRC_Y
// Return Y in 4 GRFs
 
//------------------------------------------------------------------------------
// Unpacking sampler reads to 4:2:0 internal planar
//------------------------------------------------------------------------------
#include "PL3_AVS_IEF_Unpack_8x4.asm"
 
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL3_AVS_IEF_8x8.asm
0,0 → 1,60
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PL3_AVS_IEF_8x8.asm ----------
 
#include "AVS_IEF.inc"
 
//------------------------------------------------------------------------------
// 2 sampler reads for 8x8 Y surface
// 1 sampler read for 8x8 U surface
// 1 sampler read for 8x8 V surface
//------------------------------------------------------------------------------
 
// 1st 8x8 setup
#include "AVS_SetupFirstBlock.asm"
 
// 1st 8x8 Y sampling
mov (1) rAVS_8x8_HDR.2:ud nAVS_GREEN_CHANNEL_ONLY:ud // Enable green channel
mov (16) mAVS_8x8_HDR.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(0)<1> mAVS_8x8_HDR udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_Y+nBI_CURRENT_SRC_Y
// Return Y in 4 GRFs
 
// 8x8 U sampling
mov (1) rAVS_8x8_HDR.2:ud nAVS_RED_CHANNEL_ONLY:ud // Enable red channel
mul (1) rAVS_PAYLOAD.1:f fVIDEO_STEP_X:f 2.0:f // Calculate Step X for chroma
mov (16) mAVS_8x8_HDR_UV.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(4)<1> mAVS_8x8_HDR_UV udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_U+nBI_CURRENT_SRC_U
// Return U in 4 GRFs
 
// 8x8 V sampling
mov (1) rAVS_8x8_HDR.2:ud nAVS_RED_CHANNEL_ONLY:ud // Dummy instruction just in order to avoid back-2-back send instructions!
mov (16) mAVS_8x8_HDR_UV.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(8)<1> mAVS_8x8_HDR_UV udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_V+nBI_CURRENT_SRC_V
// Return V in 4 GRFs
 
// 2nd 8x8 setup
#include "AVS_SetupSecondBlock.asm"
 
// 2nd 8x8 Y sampling
mov (1) rAVS_8x8_HDR.2:ud nAVS_GREEN_CHANNEL_ONLY:ud // Enable green channel
mov (1) rAVS_PAYLOAD.1:f fVIDEO_STEP_X:f // Restore Step X for luma
mov (16) mAVS_8x8_HDR.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(12)<1> mAVS_8x8_HDR udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_1CH+nSI_SRC_Y+nBI_CURRENT_SRC_Y
// Return Y in 4 GRFs
 
//------------------------------------------------------------------------------
// Unpacking sampler reads to 4:2:2 internal planar
//------------------------------------------------------------------------------
#include "PL3_AVS_IEF_Unpack_8x8.asm"
 
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL3_AVS_IEF_Unpack_16x8.asm
0,0 → 1,240
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PL3_AVS_IEF_Unpack_16x8.asm ----------
#ifdef AVS_OUTPUT_16_BIT //Output is packed in AVYU format
// Move first 8x8 words of Y to dest GRF (as packed)
mov (4) uwDEST_Y(0,1)<4> uwAVS_RESPONSE(0,0)<4;4,1>
mov (4) uwDEST_Y(1,1)<4> uwAVS_RESPONSE(0,8)<4;4,1>
mov (4) uwDEST_Y(4,1)<4> uwAVS_RESPONSE(0,4)<4;4,1>
mov (4) uwDEST_Y(5,1)<4> uwAVS_RESPONSE(0,12)<4;4,1>
mov (4) uwDEST_Y(8,1)<4> uwAVS_RESPONSE(1,0)<4;4,1>
mov (4) uwDEST_Y(9,1)<4> uwAVS_RESPONSE(1,8)<4;4,1>
mov (4) uwDEST_Y(12,1)<4> uwAVS_RESPONSE(1,4)<4;4,1>
mov (4) uwDEST_Y(13,1)<4> uwAVS_RESPONSE(1,12)<4;4,1>
mov (4) uwDEST_Y(16,1)<4> uwAVS_RESPONSE(2,0)<4;4,1>
mov (4) uwDEST_Y(17,1)<4> uwAVS_RESPONSE(2,8)<4;4,1>
mov (4) uwDEST_Y(20,1)<4> uwAVS_RESPONSE(2,4)<4;4,1>
mov (4) uwDEST_Y(21,1)<4> uwAVS_RESPONSE(2,12)<4;4,1>
mov (4) uwDEST_Y(24,1)<4> uwAVS_RESPONSE(3,0)<4;4,1>
mov (4) uwDEST_Y(25,1)<4> uwAVS_RESPONSE(3,8)<4;4,1>
mov (4) uwDEST_Y(28,1)<4> uwAVS_RESPONSE(3,4)<4;4,1>
mov (4) uwDEST_Y(29,1)<4> uwAVS_RESPONSE(3,12)<4;4,1>
 
// Move first 8x8 words of U to dest GRF (as packed)
mov (4) uwDEST_Y(0,0)<4> uwAVS_RESPONSE(4,0)<4;4,1>
mov (4) uwDEST_Y(1,0)<4> uwAVS_RESPONSE(4,8)<4;4,1>
mov (4) uwDEST_Y(4,0)<4> uwAVS_RESPONSE(4,4)<4;4,1>
mov (4) uwDEST_Y(5,0)<4> uwAVS_RESPONSE(4,12)<4;4,1>
mov (4) uwDEST_Y(8,0)<4> uwAVS_RESPONSE(5,0)<4;4,1>
mov (4) uwDEST_Y(9,0)<4> uwAVS_RESPONSE(5,8)<4;4,1>
mov (4) uwDEST_Y(12,0)<4> uwAVS_RESPONSE(5,4)<4;4,1>
mov (4) uwDEST_Y(13,0)<4> uwAVS_RESPONSE(5,12)<4;4,1>
mov (4) uwDEST_Y(16,0)<4> uwAVS_RESPONSE(6,0)<4;4,1>
mov (4) uwDEST_Y(17,0)<4> uwAVS_RESPONSE(6,8)<4;4,1>
mov (4) uwDEST_Y(20,0)<4> uwAVS_RESPONSE(6,4)<4;4,1>
mov (4) uwDEST_Y(21,0)<4> uwAVS_RESPONSE(6,12)<4;4,1>
mov (4) uwDEST_Y(24,0)<4> uwAVS_RESPONSE(7,0)<4;4,1>
mov (4) uwDEST_Y(25,0)<4> uwAVS_RESPONSE(7,8)<4;4,1>
mov (4) uwDEST_Y(28,0)<4> uwAVS_RESPONSE(7,4)<4;4,1>
mov (4) uwDEST_Y(29,0)<4> uwAVS_RESPONSE(7,12)<4;4,1>
 
// Move first 8x8 words of V to dest GRF (as packed)
mov (4) uwDEST_Y(0,2)<4> uwAVS_RESPONSE(8,0)<4;4,1>
mov (4) uwDEST_Y(1,2)<4> uwAVS_RESPONSE(8,8)<4;4,1>
mov (4) uwDEST_Y(4,2)<4> uwAVS_RESPONSE(8,4)<4;4,1>
mov (4) uwDEST_Y(5,2)<4> uwAVS_RESPONSE(8,12)<4;4,1>
mov (4) uwDEST_Y(8,2)<4> uwAVS_RESPONSE(9,0)<4;4,1>
mov (4) uwDEST_Y(9,2)<4> uwAVS_RESPONSE(9,8)<4;4,1>
mov (4) uwDEST_Y(12,2)<4> uwAVS_RESPONSE(9,4)<4;4,1>
mov (4) uwDEST_Y(13,2)<4> uwAVS_RESPONSE(9,12)<4;4,1>
mov (4) uwDEST_Y(16,2)<4> uwAVS_RESPONSE(10,0)<4;4,1>
mov (4) uwDEST_Y(17,2)<4> uwAVS_RESPONSE(10,8)<4;4,1>
mov (4) uwDEST_Y(20,2)<4> uwAVS_RESPONSE(10,4)<4;4,1>
mov (4) uwDEST_Y(21,2)<4> uwAVS_RESPONSE(10,12)<4;4,1>
mov (4) uwDEST_Y(24,2)<4> uwAVS_RESPONSE(11,0)<4;4,1>
mov (4) uwDEST_Y(25,2)<4> uwAVS_RESPONSE(11,8)<4;4,1>
mov (4) uwDEST_Y(28,2)<4> uwAVS_RESPONSE(11,4)<4;4,1>
mov (4) uwDEST_Y(29,2)<4> uwAVS_RESPONSE(11,12)<4;4,1>
 
// Move first 8x8 words of A to dest GRF (as packed)
mov (4) uwDEST_Y(0,3)<4> 0:uw
mov (4) uwDEST_Y(1,3)<4> 0:uw
mov (4) uwDEST_Y(4,3)<4> 0:uw
mov (4) uwDEST_Y(5,3)<4> 0:uw
mov (4) uwDEST_Y(8,3)<4> 0:uw
mov (4) uwDEST_Y(9,3)<4> 0:uw
mov (4) uwDEST_Y(12,3)<4> 0:uw
mov (4) uwDEST_Y(13,3)<4> 0:uw
mov (4) uwDEST_Y(16,3)<4> 0:uw
mov (4) uwDEST_Y(17,3)<4> 0:uw
mov (4) uwDEST_Y(20,3)<4> 0:uw
mov (4) uwDEST_Y(21,3)<4> 0:uw
mov (4) uwDEST_Y(24,3)<4> 0:uw
mov (4) uwDEST_Y(25,3)<4> 0:uw
mov (4) uwDEST_Y(28,3)<4> 0:uw
mov (4) uwDEST_Y(29,3)<4> 0:uw
 
// Move second 8x8 words of Y to dest GRF
mov (4) uwDEST_Y(2,1)<4> uwAVS_RESPONSE_2(0,0)<4;4,1>
mov (4) uwDEST_Y(3,1)<4> uwAVS_RESPONSE_2(0,8)<4;4,1>
mov (4) uwDEST_Y(6,1)<4> uwAVS_RESPONSE_2(0,4)<4;4,1>
mov (4) uwDEST_Y(7,1)<4> uwAVS_RESPONSE_2(0,12)<4;4,1>
mov (4) uwDEST_Y(10,1)<4> uwAVS_RESPONSE_2(1,0)<4;4,1>
mov (4) uwDEST_Y(11,1)<4> uwAVS_RESPONSE_2(1,8)<4;4,1>
mov (4) uwDEST_Y(14,1)<4> uwAVS_RESPONSE_2(1,4)<4;4,1>
mov (4) uwDEST_Y(15,1)<4> uwAVS_RESPONSE_2(1,12)<4;4,1>
mov (4) uwDEST_Y(18,1)<4> uwAVS_RESPONSE_2(2,0)<4;4,1>
mov (4) uwDEST_Y(19,1)<4> uwAVS_RESPONSE_2(2,8)<4;4,1>
mov (4) uwDEST_Y(22,1)<4> uwAVS_RESPONSE_2(2,4)<4;4,1>
mov (4) uwDEST_Y(23,1)<4> uwAVS_RESPONSE_2(2,12)<4;4,1>
mov (4) uwDEST_Y(26,1)<4> uwAVS_RESPONSE_2(3,0)<4;4,1>
mov (4) uwDEST_Y(27,1)<4> uwAVS_RESPONSE_2(3,8)<4;4,1>
mov (4) uwDEST_Y(30,1)<4> uwAVS_RESPONSE_2(3,4)<4;4,1>
mov (4) uwDEST_Y(31,1)<4> uwAVS_RESPONSE_2(3,12)<4;4,1>
 
// Move second 8x8 words of U to dest GRF
mov (4) uwDEST_Y(2,0)<4> uwAVS_RESPONSE_2(4,0)<4;4,1>
mov (4) uwDEST_Y(3,0)<4> uwAVS_RESPONSE_2(4,8)<4;4,1>
mov (4) uwDEST_Y(6,0)<4> uwAVS_RESPONSE_2(4,4)<4;4,1>
mov (4) uwDEST_Y(7,0)<4> uwAVS_RESPONSE_2(4,12)<4;4,1>
mov (4) uwDEST_Y(10,0)<4> uwAVS_RESPONSE_2(5,0)<4;4,1>
mov (4) uwDEST_Y(11,0)<4> uwAVS_RESPONSE_2(5,8)<4;4,1>
mov (4) uwDEST_Y(14,0)<4> uwAVS_RESPONSE_2(5,4)<4;4,1>
mov (4) uwDEST_Y(15,0)<4> uwAVS_RESPONSE_2(5,12)<4;4,1>
mov (4) uwDEST_Y(18,0)<4> uwAVS_RESPONSE_2(6,0)<4;4,1>
mov (4) uwDEST_Y(19,0)<4> uwAVS_RESPONSE_2(6,8)<4;4,1>
mov (4) uwDEST_Y(22,0)<4> uwAVS_RESPONSE_2(6,4)<4;4,1>
mov (4) uwDEST_Y(23,0)<4> uwAVS_RESPONSE_2(6,12)<4;4,1>
mov (4) uwDEST_Y(26,0)<4> uwAVS_RESPONSE_2(7,0)<4;4,1>
mov (4) uwDEST_Y(27,0)<4> uwAVS_RESPONSE_2(7,8)<4;4,1>
mov (4) uwDEST_Y(30,0)<4> uwAVS_RESPONSE_2(7,4)<4;4,1>
mov (4) uwDEST_Y(31,0)<4> uwAVS_RESPONSE_2(7,12)<4;4,1>
 
// Move second 8x8 words of V to dest GRF
mov (4) uwDEST_Y(2,2)<4> uwAVS_RESPONSE_2(8,0)<4;4,1>
mov (4) uwDEST_Y(3,2)<4> uwAVS_RESPONSE_2(8,8)<4;4,1>
mov (4) uwDEST_Y(6,2)<4> uwAVS_RESPONSE_2(8,4)<4;4,1>
mov (4) uwDEST_Y(7,2)<4> uwAVS_RESPONSE_2(8,12)<4;4,1>
mov (4) uwDEST_Y(10,2)<4> uwAVS_RESPONSE_2(9,0)<4;4,1>
mov (4) uwDEST_Y(11,2)<4> uwAVS_RESPONSE_2(9,8)<4;4,1>
mov (4) uwDEST_Y(14,2)<4> uwAVS_RESPONSE_2(9,4)<4;4,1>
mov (4) uwDEST_Y(15,2)<4> uwAVS_RESPONSE_2(9,12)<4;4,1>
mov (4) uwDEST_Y(18,2)<4> uwAVS_RESPONSE_2(10,0)<4;4,1>
mov (4) uwDEST_Y(19,2)<4> uwAVS_RESPONSE_2(10,8)<4;4,1>
mov (4) uwDEST_Y(22,2)<4> uwAVS_RESPONSE_2(10,4)<4;4,1>
mov (4) uwDEST_Y(23,2)<4> uwAVS_RESPONSE_2(10,12)<4;4,1>
mov (4) uwDEST_Y(26,2)<4> uwAVS_RESPONSE_2(11,0)<4;4,1>
mov (4) uwDEST_Y(27,2)<4> uwAVS_RESPONSE_2(11,8)<4;4,1>
mov (4) uwDEST_Y(30,2)<4> uwAVS_RESPONSE_2(11,4)<4;4,1>
mov (4) uwDEST_Y(31,2)<4> uwAVS_RESPONSE_2(11,12)<4;4,1>
 
// Move second 8x8 words of A to dest GRF
mov (4) uwDEST_Y(2,3)<4> 0:uw
mov (4) uwDEST_Y(3,3)<4> 0:uw
mov (4) uwDEST_Y(6,3)<4> 0:uw
mov (4) uwDEST_Y(7,3)<4> 0:uw
mov (4) uwDEST_Y(10,3)<4> 0:uw
mov (4) uwDEST_Y(11,3)<4> 0:uw
mov (4) uwDEST_Y(14,3)<4> 0:uw
mov (4) uwDEST_Y(15,3)<4> 0:uw
mov (4) uwDEST_Y(18,3)<4> 0:uw
mov (4) uwDEST_Y(19,3)<4> 0:uw
mov (4) uwDEST_Y(22,3)<4> 0:uw
mov (4) uwDEST_Y(23,3)<4> 0:uw
mov (4) uwDEST_Y(26,3)<4> 0:uw
mov (4) uwDEST_Y(27,3)<4> 0:uw
mov (4) uwDEST_Y(30,3)<4> 0:uw
mov (4) uwDEST_Y(31,3)<4> 0:uw
 
/* This section will be used if 16-bit output is needed in planar format -vK
// Move 1st 8x8 words of Y to dest GRF at lower 8 words of each RGF.
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2)<1> uwAVS_RESPONSE(%1)<8;4,1>
mov (8) uwDEST_Y(%1*2+1)<1> uwAVS_RESPONSE(%1,8)<8;4,1>
}
 
// Move 8x8 words of U to dest GRF
$for(0; <8/2; 1) {
mov (8) uwDEST_U(%1*2)<1> uwAVS_RESPONSE(%1+4)<8;4,1>
mov (8) uwDEST_U(%1*2+1)<1> uwAVS_RESPONSE(%1+4,8)<8;4,1>
}
 
// Move 8x8 words of V to dest GRF
$for(0; <8/2; 1) {
mov (8) uwDEST_V(%1*2)<1> uwAVS_RESPONSE(%1+8)<8;4,1>
mov (8) uwDEST_V(%1*2+1)<1> uwAVS_RESPONSE(%1+8,8)<8;4,1>
}
 
// Move 2nd 8x8 words of Y to dest GRF
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2,8)<1> uwAVS_RESPONSE_2(%1)<8;4,1>
mov (8) uwDEST_Y(%1*2+1,8)<1> uwAVS_RESPONSE_2(%1,8)<8;4,1>
}
 
// Move 2nd 8x8 words of U to dest GRF
$for(0; <8/2; 1) {
mov (8) uwDEST_U(%1*2,8)<1> uwAVS_RESPONSE_2(%1+4)<8;4,1>
mov (8) uwDEST_U(%1*2+1,8)<1> uwAVS_RESPONSE_2(%1+4,8)<8;4,1>
}
 
// Move 2nd 8x8 words of V to dest GRF
$for(0; <8/2; 1) {
mov (8) uwDEST_V(%1*2,8)<1> uwAVS_RESPONSE_2(%1+8)<8;4,1>
mov (8) uwDEST_V(%1*2+1,8)<1> uwAVS_RESPONSE_2(%1+8,8)<8;4,1>
}
*/
#else /* OUTPUT_8_BIT */
// Move 1st 8x8 words of Y to dest GRF at lower 8 words of each RGF.
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2)<1> ubAVS_RESPONSE(%1,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_Y(%1*2+1)<1> ubAVS_RESPONSE(%1,8+1)<16;4,2> // Copy high byte in a word
}
 
// Move 8x8 words of U to dest GRF
$for(0; <8/2; 1) {
mov (8) uwDEST_U(%1*2)<1> ubAVS_RESPONSE(%1+4,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_U(%1*2+1)<1> ubAVS_RESPONSE(%1+4,8+1)<16;4,2> // Copy high byte in a word
}
 
// Move 8x8 words of V to dest GRF
$for(0; <8/2; 1) {
mov (8) uwDEST_V(%1*2)<1> ubAVS_RESPONSE(%1+8,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_V(%1*2+1)<1> ubAVS_RESPONSE(%1+8,8+1)<16;4,2> // Copy high byte in a word
}
 
// Move 2nd 8x8 words of Y to dest GRF at higher 8 words of each RGF.
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2,8)<1> ubAVS_RESPONSE_2(%1,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_Y(%1*2+1,8)<1> ubAVS_RESPONSE_2(%1,8+1)<16;4,2> // Copy high byte in a word
}
 
// Move 2nd 8x8 words of U to dest GRF
$for(0; <8/2; 1) {
mov (8) uwDEST_U(%1*2,8)<1> ubAVS_RESPONSE_2(%1+4,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_U(%1*2+1,8)<1> ubAVS_RESPONSE_2(%1+4,8+1)<16;4,2> // Copy high byte in a word
}
 
// Move 2nd 8x8 words of V to dest GRF
$for(0; <8/2; 1) {
mov (8) uwDEST_V(%1*2,8)<1> ubAVS_RESPONSE_2(%1+8,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_V(%1*2+1,8)<1> ubAVS_RESPONSE_2(%1+8,8+1)<16;4,2> // Copy high byte in a word
}
#endif
//------------------------------------------------------------------------------
// Re-define new # of lines
#undef nUV_NUM_OF_ROWS
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8
#define nUV_NUM_OF_ROWS 8
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL3_AVS_IEF_Unpack_8x4.asm
0,0 → 1,45
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PL3_AVS_IEF_Unpack_8x4.asm ----------
// Move 1st 8x8 words of Y to dest GRF at lower 8 words of each RGF.
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2)<1> ubAVS_RESPONSE(%1,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_Y(%1*2+1)<1> ubAVS_RESPONSE(%1,8+1)<16;4,2> // Copy high byte in a word
}
 
// Move 8x4 words of U to dest GRF (Copy high byte in a word)
mov (8) uwDEST_U(0)<1> ubAVS_RESPONSE(4,1)<16;4,2>
mov (8) uwDEST_U(0,8)<1> ubAVS_RESPONSE(4,9)<16;4,2>
mov (8) uwDEST_U(1)<1> ubAVS_RESPONSE(5,1)<16;4,2>
mov (8) uwDEST_U(1,8)<1> ubAVS_RESPONSE(5,9)<16;4,2>
 
// Move 8x4 words of V to dest GRF
mov (8) uwDEST_V(0)<1> ubAVS_RESPONSE(8,1)<16;4,2>
mov (8) uwDEST_V(0,8)<1> ubAVS_RESPONSE(8,9)<16;4,2>
mov (8) uwDEST_V(1)<1> ubAVS_RESPONSE(9,1)<16;4,2>
mov (8) uwDEST_V(1,8)<1> ubAVS_RESPONSE(9,9)<16;4,2>
 
// Move 2nd 8x8 words of Y to dest GRF at higher 8 words of each RGF.
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2,8)<1> ubAVS_RESPONSE(%1+12,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_Y(%1*2+1,8)<1> ubAVS_RESPONSE(%1+12,8+1)<16;4,2> // Copy high byte in a word
}
 
//------------------------------------------------------------------------------
// Re-define new # of lines
#undef nUV_NUM_OF_ROWS
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8
#define nUV_NUM_OF_ROWS 4
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL3_AVS_IEF_Unpack_8x8.asm
0,0 → 1,44
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PL3_AVS_IEF_Unpack_8x8.asm ----------
// Move 1st 8x8 words of Y to dest GRF at lower 8 words of each RGF.
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2)<1> ubAVS_RESPONSE(%1,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_Y(%1*2+1)<1> ubAVS_RESPONSE(%1,8+1)<16;4,2> // Copy high byte in a word
}
// Move 8x8 words of U to dest GRF
$for(0; <8/2; 1) {
mov (8) uwDEST_U(%1)<1> ubAVS_RESPONSE(%1+4,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_U(%1,8)<1> ubAVS_RESPONSE(%1+4,8+1)<16;4,2> // Copy high byte in a word
}
 
// Move 8x8 words of V to dest GRF
$for(0; <8/2; 1) {
mov (8) uwDEST_V(%1)<1> ubAVS_RESPONSE(%1+8,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_V(%1,8)<1> ubAVS_RESPONSE(%1+8,8+1)<16;4,2> // Copy high byte in a word
}
 
// Move 2nd 8x8 words of Y to dest GRF at higher 8 words of each RGF.
$for(0; <8/2; 1) {
mov (8) uwDEST_Y(%1*2,8)<1> ubAVS_RESPONSE(%1+12,1)<16;4,2> // Copy high byte in a word
mov (8) uwDEST_Y(%1*2+1,8)<1> ubAVS_RESPONSE(%1+12,8+1)<16;4,2> // Copy high byte in a word
}
 
//------------------------------------------------------------------------------
// Re-define new # of lines
#undef nUV_NUM_OF_ROWS
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8
#define nUV_NUM_OF_ROWS 8
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL3_Scaling.asm
0,0 → 1,72
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- PL3_Scaling.asm ----------
#include "Scaling.inc"
 
// Build 16 elements ramp in float32 and normalized it
// mov (8) SAMPLER_RAMP(0)<1> 0x76543210:v
// add (8) SAMPLER_RAMP(1)<1> SAMPLER_RAMP(0) 8.0:f
mov (4) SAMPLER_RAMP(0)<1> 0x48403000:vf { NoDDClr }//3, 2, 1, 0 in float vector
mov (4) SAMPLER_RAMP(0,4)<1> 0x5C585450:vf { NoDDChk }//7, 6, 5, 4 in float vector
add (8) SAMPLER_RAMP(1)<1> SAMPLER_RAMP(0) 8.0:f
 
//Module: PrepareScaleCoord.asm
 
// Setup for sampler msg hdr
mov (2) rMSGSRC.0<1>:ud 0:ud { NoDDClr } // Unused fields
mov (1) rMSGSRC.2<1>:ud 0:ud { NoDDChk } // Write and offset
 
// Calculate 16 v based on the step Y and vertical origin
mov (16) mfMSGPAYLOAD(2)<1> fSRC_VID_V_ORI<0;1,0>:f
mov (16) SCALE_COORD_Y<1>:f fSRC_VID_V_ORI<0;1,0>:f
 
// Calculate 16 u based on the step X and hori origin
// line (16) mfMSGPAYLOAD(0)<1> SCALE_STEP_X<0;1,0>:f SAMPLER_RAMP(0) // Assign to mrf directly
mov (16) acc0:f fSRC_VID_H_ORI<0;1,0>:f { Compr }
mac (16) mfMSGPAYLOAD(0)<1> fVIDEO_STEP_X<0;1,0>:f SAMPLER_RAMP(0) { Compr }
 
//Setup the constants for line instruction
mov (1) SCALE_LINE_P255<1>:f 255.0:f { NoDDClr } //{ NoDDClr, NoDDChk }
mov (1) SCALE_LINE_P0_5<1>:f 0.5:f { NoDDChk }
 
//------------------------------------------------------------------------------
 
$for (0; <nY_NUM_OF_ROWS; 1) {
// Read 16 sampled pixels and store them in float32 in 8 GRFs in the order of BGRA (VYUA).
mov (8) MSGHDR_SCALE<1>:ud rMSGSRC<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (16) SCALE_RESPONSE_VW(0)<1> MSGHDR_SCALE udDUMMY_NULL nSMPL_ENGINE SMPLR_MSG_DSC+nSI_SRC_SIMD16_V+nBI_CURRENT_SRC_V
send (16) SCALE_RESPONSE_YW(0)<1> MSGHDR_SCALE udDUMMY_NULL nSMPL_ENGINE SMPLR_MSG_DSC+nSI_SRC_SIMD16_Y+nBI_CURRENT_SRC_Y
send (16) SCALE_RESPONSE_UW(0)<1> MSGHDR_SCALE udDUMMY_NULL nSMPL_ENGINE SMPLR_MSG_DSC+nSI_SRC_SIMD16_U+nBI_CURRENT_SRC_U
 
// Calculate 16 v for next line
add (16) mfMSGPAYLOAD(2)<1> SCALE_COORD_Y<8;8,1>:f fVIDEO_STEP_Y<0;1,0>:f // Assign to mrf directly
add (16) SCALE_COORD_Y<1>:f SCALE_COORD_Y<8;8,1>:f fVIDEO_STEP_Y<0;1,0>:f // Assign to mrf directly
 
// Scale back to [0, 255], convert f to ud
line (16) acc0:f SCALE_LINE_P255<0;1,0>:f SCALE_RESPONSE_VF(0) { Compr } // Process B, V
mov (16) SCALE_RESPONSE_VD(0)<1> acc0:f { Compr }
 
line (16) acc0:f SCALE_LINE_P255<0;1,0>:f SCALE_RESPONSE_YF(0) { Compr } // Process B, V
mov (16) SCALE_RESPONSE_YD(0)<1> acc0:f { Compr }
 
line (16) acc0:f SCALE_LINE_P255<0;1,0>:f SCALE_RESPONSE_UF(0) { Compr } // Process B, V
mov (16) SCALE_RESPONSE_UD(0)<1> acc0:f { Compr }
 
mov (16) DEST_V(%1)<1> SCALE_RESPONSE_VB(0) //possible error due to truncation - vK
mov (16) DEST_Y(%1)<1> SCALE_RESPONSE_YB(0) //possible error due to truncation - vK
mov (16) DEST_U(%1)<1> SCALE_RESPONSE_UB(0) //possible error due to truncation - vK
 
}
 
#define nSRC_REGION nREGION_1
 
//------------------------------------------------------------------------------
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL_DNDI_ALG.asm
0,0 → 1,85
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
#define DI_ENABLE
 
#include "DNDI.inc"
 
#ifdef DI_ONLY
#undef nSMPL_RESP_LEN
#define nSMPL_RESP_LEN nSMPL_RESP_LEN_DI // set the number of GRF
#else
#undef nSMPL_RESP_LEN
#define nSMPL_RESP_LEN nSMPL_RESP_LEN_DNDI // set the number of GRF
#endif
#undef nDPW_BLOCK_SIZE_HIST
#define nDPW_BLOCK_SIZE_HIST nBLOCK_WIDTH_4+nBLOCK_HEIGHT_1 // HIST Block Size for Write is 4x2
#undef nDPW_BLOCK_SIZE_DN
#define nDPW_BLOCK_SIZE_DN nBLOCK_WIDTH_16+nBLOCK_HEIGHT_4 // DN Block Size for Write is 16x4
////////////////////////////////////// Run the DN Algorithm ///////////////////////////////////////
#include "DNDI_Command.asm"
 
////////////////////////////////////// Rearrange for Internal Planar //////////////////////////////
 
////////////////////////////////////// Save the STMM Data for Next Run /////////////////////////
// Write STMM to memory
shr (1) rMSGSRC.0<1>:ud wORIX<0;1,0>:w 1:w NODDCLR_NODDCHK // X origin / 2
mov (1) rMSGSRC.1<1>:ud wORIY<0;1,0>:w NODDCLR_NODDCHK // Y origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_STMM:ud NODDCHK // block width and height (8x4)
mov (8) mudMSGHDR_STMM(0)<1> rMSGSRC.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udRESP(nDI_STMM_OFFSET,0) // Move STMM to MRF
send (8) dNULLREG mMSGHDR_STMM udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_STMM+nBI_STMM_HISTORY_OUTPUT:ud
 
#ifdef DI_ONLY
#else
 
////////////////////////////////////// Save the History Data for Next Run /////////////////////////
#include "DI_Hist_Save.asm"
 
////////////////////////////////////// Save the DN Curr Frame for Next Run ////////////////////////
//set the save DN parameters
mov (2) rMSGSRC.0<1>:ud wORIX<2;2,1>:w NODDCLR // X origin and Y origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_DN:ud NODDCLR_NODDCHK // block width and height (16x4)
mov (8) mudMSGHDR_DN(0)<1> rMSGSRC.0<8;8,1>:ud
// check top/bottom field first
cmp.e.f0.0 (1) null<1>:w ubTFLD_FIRST<0;1,0>:ub 1:w
(f0.0) jmpi (1) TOP_FIELD_FIRST
 
BOTTOM_FIELD_FIRST:
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (4) mudMSGHDR_DN(1,%1*4)<1> udRESP(nDI_CURR_2ND_FIELD_LUMA_OFFSET,%2*4)<4;4,1> // 2nd field luma from current frame (line 0,2)
}
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (4) mudMSGHDR_DN(1,%1*4+4)<1> udRESP(nDI_CURR_FRAME_LUMA_OFFSET+%2,4)<4;4,1> // 1st field luma from current frame (line 1,3)
}
jmpi (1) SAVE_DN_CURR
TOP_FIELD_FIRST:
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (4) mudMSGHDR_DN(1,%1*4)<1> udRESP(nDI_CURR_FRAME_LUMA_OFFSET+%2,0)<4;4,1> // 2nd field luma from current frame (line 0,2)
}
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (4) mudMSGHDR_DN(1,%1*4+4)<1> udRESP(nDI_CURR_2ND_FIELD_LUMA_OFFSET,%2*4)<4;4,1> // 1st field luma from current frame (line 1,3)
}
SAVE_DN_CURR:
send (8) dNULLREG mMSGHDR_DN udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_PL_DN_DI+nBI_DESTINATION_Y:ud
#endif
 
// Save Processed frames
#include "DI_Save_PA.asm"
 
 
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL_DNDI_ALG_UVCopy_NV11.asm
0,0 → 1,103
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
#define DI_ENABLE
 
#include "DNDI.inc"
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8 // Number of Y rows per block (4 rows for each frame)
#undef nUV_NUM_OF_ROWS
#define nUV_NUM_OF_ROWS 8 // Number of U/V rows per block
 
#undef nSMPL_RESP_LEN
#define nSMPL_RESP_LEN nSMPL_RESP_LEN_DNDI // set the number of GRF
#undef nDPW_BLOCK_SIZE_HIST
#define nDPW_BLOCK_SIZE_HIST nBLOCK_WIDTH_4+nBLOCK_HEIGHT_1 // HIST Block Size for Write is 4x2
#undef nDPW_BLOCK_SIZE_DN
#define nDPW_BLOCK_SIZE_DN nBLOCK_WIDTH_16+nBLOCK_HEIGHT_4 // DN Block Size for Write is 16x4
#undef nDPR_BLOCK_SIZE_UV
#define nDPR_BLOCK_SIZE_UV nBLOCK_WIDTH_8+nBLOCK_HEIGHT_4 // DN Block Size for UV Write/Read is 8x4
////////////////////////////////////// Run the DN Algorithm ///////////////////////////////////////
#include "DNDI_Command.asm"
 
////////////////////////////////////// Rearrange for Internal Planar //////////////////////////////
// move the previous frame Y component to internal planar format
$for (0; <nY_NUM_OF_ROWS/2; 1) {
mov (16) uwDEST_Y(%1,0)<1> ubRESP(nDI_PREV_FRAME_LUMA_OFFSET,%1*16)
}
// move the previous frame U,V components to internal planar format
$for (0; <nUV_NUM_OF_ROWS/2; 1) {
mov (8) uwDEST_U(0,%1*8)<1> ubRESP(nDI_PREV_FRAME_CHROMA_OFFSET,%1*16+1)<16;8,2> //U pixels
mov (8) uwDEST_V(0,%1*8)<1> ubRESP(nDI_PREV_FRAME_CHROMA_OFFSET,%1*16)<16;8,2> //V pixels
}
// move the current frame Y component to internal planar format
$for (0; <nY_NUM_OF_ROWS/2; 1) {
mov (16) uwDEST_Y(%1+4,0)<1> ubRESP(nDI_CURR_FRAME_LUMA_OFFSET,%1*16)
}
// move the current frame U,V components to internal planar format
$for (0; <nUV_NUM_OF_ROWS/2; 1) {
mov (8) uwDEST_U(2,%1*8)<1> ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET,%1*16+1)<16;8,2> //U pixels
mov (8) uwDEST_V(2,%1*8)<1> ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET,%1*16)<16;8,2> //V pixels
}
 
////////////////////////////////////// Save the STMM Data for Next Run /////////////////////////
// Write STMM to memory
shr (1) rMSGSRC.0<1>:ud wORIX<0;1,0>:w 1:w // X origin / 2
mov (1) rMSGSRC.1<1>:ud wORIY<0;1,0>:w // Y origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_STMM:ud // block width and height (8x4)
mov (8) mudMSGHDR_STMM(0)<1> rMSGSRC.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udRESP(nDI_STMM_OFFSET,0) // Move STMM to MRF
send (8) dNULLREG mMSGHDR_STMM udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_STMM+nBI_STMM_HISTORY_OUTPUT:ud
 
////////////////////////////////////// Save the History Data for Next Run /////////////////////////
#include "DI_Hist_Save.asm"
 
////////////////////////////////////// Save the DN Curr Frame for Next Run ////////////////////////
add (4) pCF_Y_OFFSET<1>:uw ubSRC_CF_OFFSET<4;4,1>:ub npDN_YUV:w
// check top/bottom field first
cmp.e.f0.0 (1) null<1>:w ubTFLD_FIRST<0;1,0>:ub 1:w
(f0.0) jmpi (1) TOP_FIELD_FIRST
 
BOTTOM_FIELD_FIRST:
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (4) mudMSGHDR_DN(1,%1*4)<1> udRESP(nDI_CURR_2ND_FIELD_LUMA_OFFSET,%2*4)<4;4,1> // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN(1,%1*4+4)<1> udRESP(nDI_CURR_FRAME_LUMA_OFFSET+%2,4)<4;4,1> // 1st field luma from current frame (line 1,3)
}
jmpi (1) SAVE_DN_CURR
TOP_FIELD_FIRST:
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (4) mudMSGHDR_DN(1,%1*4)<1> udRESP(nDI_CURR_FRAME_LUMA_OFFSET+%2,0)<4;4,1> // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN(1,%1*4+4)<1> udRESP(nDI_CURR_2ND_FIELD_LUMA_OFFSET,%2*4)<4;4,1> // 1st field luma from current frame (line 1,3)
}
SAVE_DN_CURR:
mov (2) rMSGSRC.0<1>:ud wORIX<2;2,1>:w // X origin and Y origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_DN:ud // block width and height (16x4)
mov (8) mudMSGHDR_DN(0)<1> rMSGSRC.0<8;8,1>:ud
send (8) dNULLREG mMSGHDR_DN udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_PL_DN_DI+nBI_DESTINATION_Y:ud
 
 
/////////////////////////////P208 UV Copy 422/////////////////////////////////////////////////////
//Read UV through DATAPORT
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Y Block origin
asr (1) rMSGSRC.0<1>:d rMSGSRC.0<0;1,0>:d 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_UV:ud // U/V block width and height (16x2)
mov (8) mudMSGHDR_DN<1> rMSGSRC<8;8,1>:ud
send (8) udBOT_U_IO(0)<1> mMSGHDR_DN udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nRESLEN_1+nBI_CURRENT_SRC_UV:ud
 
//Write UV through DATAPORT
mov (2) rMSGSRC.0<1>:ud wORIX<2;2,1>:w // X origin and Y origin
asr (1) rMSGSRC.0<1>:d rMSGSRC.0<0;1,0>:d 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_UV:ud // block width and height (16x2)
mov (8) mudMSGHDR_DN(0)<1> rMSGSRC.0<8;8,1>:ud
mov (8) mudMSGHDR_DN(1)<1> udBOT_U_IO(0)<8;8,1>
send (8) dNULLREG mMSGHDR_DN udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nMSGLEN_1+nBI_DESTINATION_UV:ud
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL_DNDI_ALG_UVCopy_NV12.asm
0,0 → 1,107
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
#define DI_ENABLE
 
#include "DNDI.inc"
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8 // Number of Y rows per block (4 rows for each frame)
#undef nUV_NUM_OF_ROWS
#define nUV_NUM_OF_ROWS 8 // Number of U/V rows per block
 
#undef nSMPL_RESP_LEN
#define nSMPL_RESP_LEN nSMPL_RESP_LEN_DNDI // set the number of GRF
#undef nDPW_BLOCK_SIZE_HIST
#define nDPW_BLOCK_SIZE_HIST nBLOCK_WIDTH_4+nBLOCK_HEIGHT_1 // HIST Block Size for Write is 4x2
#undef nDPW_BLOCK_SIZE_DN
#define nDPW_BLOCK_SIZE_DN nBLOCK_WIDTH_16+nBLOCK_HEIGHT_4 // DN Block Size for Write is 16x4
#undef nDPR_BLOCK_SIZE_UV
#define nDPR_BLOCK_SIZE_UV nBLOCK_WIDTH_16+nBLOCK_HEIGHT_2 // DN Block Size for UV Write/Read is 16x2
////////////////////////////////////// Run the DN Algorithm ///////////////////////////////////////
#include "DNDI_COMMAND.asm"
 
////////////////////////////////////// Rearrange for Internal Planar //////////////////////////////
// move the previous frame Y component to internal planar format
$for (0; <nY_NUM_OF_ROWS/2; 1) {
mov (16) uwDEST_Y(%1,0)<1> ubRESP(nDI_PREV_FRAME_LUMA_OFFSET,%1*16)
}
// move the previous frame U,V components to internal planar format
$for (0; <nUV_NUM_OF_ROWS/2; 1) {
mov (8) uwDEST_U(0,%1*8)<1> ubRESP(nDI_PREV_FRAME_CHROMA_OFFSET,%1*16+1)<16;8,2> //U pixels
mov (8) uwDEST_V(0,%1*8)<1> ubRESP(nDI_PREV_FRAME_CHROMA_OFFSET,%1*16)<16;8,2> //V pixels
}
// move the current frame Y component to internal planar format
$for (0; <nY_NUM_OF_ROWS/2; 1) {
mov (16) uwDEST_Y(%1+4,0)<1> ubRESP(nDI_CURR_FRAME_LUMA_OFFSET,%1*16)
}
// move the current frame U,V components to internal planar format
$for (0; <nUV_NUM_OF_ROWS/2; 1) {
mov (8) uwDEST_U(2,%1*8)<1> ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET,%1*16+1)<16;8,2> //U pixels
mov (8) uwDEST_V(2,%1*8)<1> ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET,%1*16)<16;8,2> //V pixels
}
 
////////////////////////////////////// Save the STMM Data for Next Run /////////////////////////
// Write STMM to memory
shr (1) rMSGSRC.0<1>:ud wORIX<0;1,0>:w 1:w // X origin / 2
mov (1) rMSGSRC.1<1>:ud wORIY<0;1,0>:w // Y origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_STMM:ud // block width and height (8x4)
mov (8) mudMSGHDR_STMM(0)<1> rMSGSRC.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udRESP(nDI_STMM_OFFSET,0) // Move STMM to MRF
send (8) dNULLREG mMSGHDR_STMM udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_STMM+nBI_STMM_HISTORY_OUTPUT:ud
 
////////////////////////////////////// Save the History Data for Next Run /////////////////////////
#include "DI_Hist_Save.asm"
 
////////////////////////////////////// Save the DN Curr Frame for Next Run ////////////////////////
add (4) pCF_Y_OFFSET<1>:uw ubSRC_CF_OFFSET<4;4,1>:ub npDN_YUV:w
// check top/bottom field first
cmp.e.f0.0 (1) null<1>:w ubTFLD_FIRST<0;1,0>:ub 1:w
(f0.0) jmpi (1) TOP_FIELD_FIRST
 
BOTTOM_FIELD_FIRST:
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (4) mudMSGHDR_DN(1,%1*4)<1> udRESP(nDI_CURR_2ND_FIELD_LUMA_OFFSET,%2*4)<4;4,1> // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN(1,%1*4+4)<1> udRESP(nDI_CURR_FRAME_LUMA_OFFSET+%2,4)<4;4,1> // 1st field luma from current frame (line 1,3)
}
jmpi (1) SAVE_DN_CURR
TOP_FIELD_FIRST:
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (4) mudMSGHDR_DN(1,%1*4)<1> udRESP(nDI_CURR_FRAME_LUMA_OFFSET+%2,0)<4;4,1> // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN(1,%1*4+4)<1> udRESP(nDI_CURR_2ND_FIELD_LUMA_OFFSET,%2*4)<4;4,1> // 1st field luma from current frame (line 1,3)
}
SAVE_DN_CURR:
$for (0; <nY_NUM_OF_ROWS/2; 1) {
mov (16) mubMSGHDR_DN(1, %1*16)<1> ubRESP(nDI_CURR_FRAME_LUMA_OFFSET,%1*16)
}
mov (2) rMSGSRC.0<1>:ud wORIX<2;2,1>:w // X origin and Y origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_DN:ud // block width and height (16x4)
mov (8) mudMSGHDR_DN(0)<1> rMSGSRC.0<8;8,1>:ud
send (8) dNULLREG mMSGHDR_DN udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_PL_DN_DI+nBI_DESTINATION_Y:ud
 
 
/////////////////////////////NV12 UV Copy 422/////////////////////////////////////////////////////
//Read UV through DATAPORT
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Y Block origin
asr (1) rMSGSRC.1<1>:d rMSGSRC.1<0;1,0>:d 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_UV:ud // U/V block width and height (16x2)
mov (8) mudMSGHDR_DN<1> rMSGSRC<8;8,1>:ud
send (8) udBOT_U_IO(0)<1> mMSGHDR_DN udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nRESLEN_1+nBI_CURRENT_SRC_UV:ud
 
//Write UV through DATAPORT
mov (2) rMSGSRC.0<1>:ud wORIX<2;2,1>:w // X origin and Y origin
asr (1) rMSGSRC.1<1>:d rMSGSRC.1<0;1,0>:d 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_UV:ud // block width and height (16x2)
mov (8) mudMSGHDR_DN(0)<1> rMSGSRC.0<8;8,1>:ud
mov (8) mudMSGHDR_DN(1)<1> udBOT_U_IO(0)<8;8,1>
send (8) dNULLREG mMSGHDR_DN udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nMSGLEN_1+nBI_DESTINATION_UV:ud
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL_DNDI_ALG_UVCopy_P208.asm
0,0 → 1,101
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
#define DI_ENABLE
 
#include "DNDI.inc"
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8 // Number of Y rows per block (4 rows for each frame)
#undef nUV_NUM_OF_ROWS
#define nUV_NUM_OF_ROWS 8 // Number of U/V rows per block
 
#undef nSMPL_RESP_LEN
#define nSMPL_RESP_LEN nSMPL_RESP_LEN_DNDI // set the number of GRF
#undef nDPW_BLOCK_SIZE_HIST
#define nDPW_BLOCK_SIZE_HIST nBLOCK_WIDTH_4+nBLOCK_HEIGHT_1 // HIST Block Size for Write is 4x2
#undef nDPW_BLOCK_SIZE_DN
#define nDPW_BLOCK_SIZE_DN nBLOCK_WIDTH_16+nBLOCK_HEIGHT_4 // DN Block Size for Write is 16x4
////////////////////////////////////// Run the DN Algorithm ///////////////////////////////////////
#include "DNDI_Command.asm"
 
////////////////////////////////////// Rearrange for Internal Planar //////////////////////////////
// move the previous frame Y component to internal planar format
$for (0; <nY_NUM_OF_ROWS/2; 1) {
mov (16) uwDEST_Y(%1,0)<1> ubRESP(nDI_PREV_FRAME_LUMA_OFFSET,%1*16)
}
// move the previous frame U,V components to internal planar format
$for (0; <nUV_NUM_OF_ROWS/2; 1) {
mov (8) uwDEST_U(0,%1*8)<1> ubRESP(nDI_PREV_FRAME_CHROMA_OFFSET,%1*16+1)<16;8,2> //U pixels
mov (8) uwDEST_V(0,%1*8)<1> ubRESP(nDI_PREV_FRAME_CHROMA_OFFSET,%1*16)<16;8,2> //V pixels
}
// move the current frame Y component to internal planar format
$for (0; <nY_NUM_OF_ROWS/2; 1) {
mov (16) uwDEST_Y(%1+4,0)<1> ubRESP(nDI_CURR_FRAME_LUMA_OFFSET,%1*16)
}
// move the current frame U,V components to internal planar format
$for (0; <nUV_NUM_OF_ROWS/2; 1) {
mov (8) uwDEST_U(2,%1*8)<1> ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET,%1*16+1)<16;8,2> //U pixels
mov (8) uwDEST_V(2,%1*8)<1> ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET,%1*16)<16;8,2> //V pixels
}
 
////////////////////////////////////// Save the STMM Data for Next Run /////////////////////////
// Write STMM to memory
shr (1) rMSGSRC.0<1>:ud wORIX<0;1,0>:w 1:w // X origin / 2
mov (1) rMSGSRC.1<1>:ud wORIY<0;1,0>:w // Y origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_STMM:ud // block width and height (8x4)
mov (8) mudMSGHDR_STMM(0)<1> rMSGSRC.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udRESP(nDI_STMM_OFFSET,0) // Move STMM to MRF
send (8) dNULLREG mMSGHDR_STMM udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_STMM+nBI_STMM_HISTORY_OUTPUT:ud
 
////////////////////////////////////// Save the History Data for Next Run /////////////////////////
#include "DI_Hist_Save.asm"
 
////////////////////////////////////// Save the DN Curr Frame for Next Run ////////////////////////
add (4) pCF_Y_OFFSET<1>:uw ubSRC_CF_OFFSET<4;4,1>:ub npDN_YUV:w
// check top/bottom field first
cmp.e.f0.0 (1) null<1>:w ubTFLD_FIRST<0;1,0>:ub 1:w
(f0.0) jmpi (1) TOP_FIELD_FIRST
 
BOTTOM_FIELD_FIRST:
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (4) mudMSGHDR_DN(1,%1*4)<1> udRESP(nDI_CURR_2ND_FIELD_LUMA_OFFSET,%2*4)<4;4,1> // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN(1,%1*4+4)<1> udRESP(nDI_CURR_FRAME_LUMA_OFFSET+%2,4)<4;4,1> // 1st field luma from current frame (line 1,3)
}
jmpi (1) SAVE_DN_CURR
TOP_FIELD_FIRST:
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (4) mudMSGHDR_DN(1,%1*4)<1> udRESP(nDI_CURR_FRAME_LUMA_OFFSET+%2,0)<4;4,1> // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN(1,%1*4+4)<1> udRESP(nDI_CURR_2ND_FIELD_LUMA_OFFSET,%2*4)<4;4,1> // 1st field luma from current frame (line 1,3)
}
SAVE_DN_CURR:
mov (2) rMSGSRC.0<1>:ud wORIX<2;2,1>:w // X origin and Y origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_DN:ud // block width and height (16x4)
mov (8) mudMSGHDR_DN(0)<1> rMSGSRC.0<8;8,1>:ud
send (8) dNULLREG mMSGHDR_DN udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_PL_DN_DI+nBI_DESTINATION_Y:ud
 
 
/////////////////////////////P208 UV Copy 422/////////////////////////////////////////////////////
//Read UV through DATAPORT
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Y Block origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_DN:ud // Y Block width and height (16x4) (U/V block size is the same)
mov (8) mudMSGHDR_DN<1> rMSGSRC<8;8,1>:ud
send (8) udBOT_U_IO(0)<1> mMSGHDR_DN udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nRESLEN_2+nBI_CURRENT_SRC_UV:ud
 
//Write UV through DATAPORT
mov (2) rMSGSRC.0<1>:ud wORIX<2;2,1>:w // X origin and Y origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_DN:ud // block width and height (16x4)
mov (8) mudMSGHDR_DN(0)<1> rMSGSRC.0<8;8,1>:ud
mov (8) mudMSGHDR_DN(1)<1> udBOT_U_IO(0)<8;8,1>
mov (8) mudMSGHDR_DN(2)<1> udBOT_U_IO(1)<8;8,1>
send (8) dNULLREG mMSGHDR_DN udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_PL_DN_DI+nBI_DESTINATION_UV:ud
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL_DNDI_ALG_UVCopy_PL3.asm
0,0 → 1,106
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
#define DI_ENABLE
 
#include "DNDI.inc"
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8 // Number of Y rows per block (4 rows for each frame)
#undef nUV_NUM_OF_ROWS
#define nUV_NUM_OF_ROWS 8 // Number of U/V rows per block
 
#undef nSMPL_RESP_LEN
#define nSMPL_RESP_LEN nSMPL_RESP_LEN_DNDI // set the number of GRF
#undef nDPW_BLOCK_SIZE_HIST
#define nDPW_BLOCK_SIZE_HIST nBLOCK_WIDTH_4+nBLOCK_HEIGHT_1 // HIST Block Size for Write is 4x2
#undef nDPW_BLOCK_SIZE_DN
#define nDPW_BLOCK_SIZE_DN nBLOCK_WIDTH_16+nBLOCK_HEIGHT_4 // DN Block Size for Write is 16x4
#undef nDPR_BLOCK_SIZE_UV
#define nDPR_BLOCK_SIZE_UV nBLOCK_WIDTH_8+nBLOCK_HEIGHT_2 // DN Block Size for UV Write/Read is 8x2
////////////////////////////////////// Run the DN Algorithm ///////////////////////////////////////
#include "DNDI_Command.asm"
 
////////////////////////////////////// Rearrange for Internal Planar //////////////////////////////
// move the previous frame Y component to internal planar format
$for (0; <nY_NUM_OF_ROWS/2; 1) {
mov (16) uwDEST_Y(%1,0)<1> ubRESP(nDI_PREV_FRAME_LUMA_OFFSET,%1*16)
}
// move the previous frame U,V components to internal planar format
$for (0; <nUV_NUM_OF_ROWS/2; 1) {
mov (8) uwDEST_U(0,%1*8)<1> ubRESP(nDI_PREV_FRAME_CHROMA_OFFSET,%1*16+1)<16;8,2> //U pixels
mov (8) uwDEST_V(0,%1*8)<1> ubRESP(nDI_PREV_FRAME_CHROMA_OFFSET,%1*16)<16;8,2> //V pixels
}
// move the current frame Y component to internal planar format
$for (0; <nY_NUM_OF_ROWS/2; 1) {
mov (16) uwDEST_Y(%1+4,0)<1> ubRESP(nDI_CURR_FRAME_LUMA_OFFSET,%1*16)
}
// move the current frame U,V components to internal planar format
$for (0; <nUV_NUM_OF_ROWS/2; 1) {
mov (8) uwDEST_U(2,%1*8)<1> ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET,%1*16+1)<16;8,2> //U pixels
mov (8) uwDEST_V(2,%1*8)<1> ubRESP(nDI_CURR_FRAME_CHROMA_OFFSET,%1*16)<16;8,2> //V pixels
}
 
////////////////////////////////////// Save the STMM Data for Next Run /////////////////////////
// Write STMM to memory
shr (1) rMSGSRC.0<1>:ud wORIX<0;1,0>:w 1:w // X origin / 2
mov (1) rMSGSRC.1<1>:ud wORIY<0;1,0>:w // Y origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_STMM:ud // block width and height (8x4)
mov (8) mudMSGHDR_STMM(0)<1> rMSGSRC.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udRESP(nDI_STMM_OFFSET,0) // Move STMM to MRF
send (8) dNULLREG mMSGHDR_STMM udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_STMM+nBI_STMM_HISTORY_OUTPUT:ud
 
////////////////////////////////////// Save the History Data for Next Run /////////////////////////
#include "DI_Hist_Save.asm"
 
////////////////////////////////////// Save the DN Curr Frame for Next Run ////////////////////////
add (4) pCF_Y_OFFSET<1>:uw ubSRC_CF_OFFSET<4;4,1>:ub npDN_YUV:w
// check top/bottom field first
cmp.e.f0.0 (1) null<1>:w ubTFLD_FIRST<0;1,0>:ub 1:w
(f0.0) jmpi (1) TOP_FIELD_FIRST
 
BOTTOM_FIELD_FIRST:
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (4) mudMSGHDR_DN(1,%1*4)<1> udRESP(nDI_CURR_2ND_FIELD_LUMA_OFFSET,%2*4)<4;4,1> // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN(1,%1*4+4)<1> udRESP(nDI_CURR_FRAME_LUMA_OFFSET+%2,4)<4;4,1> // 1st field luma from current frame (line 1,3)
}
jmpi (1) SAVE_DN_CURR
TOP_FIELD_FIRST:
$for (0,0; <nY_NUM_OF_ROWS/2; 2,1) {
mov (4) mudMSGHDR_DN(1,%1*4)<1> udRESP(nDI_CURR_FRAME_LUMA_OFFSET+%2,0)<4;4,1> // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN(1,%1*4+4)<1> udRESP(nDI_CURR_2ND_FIELD_LUMA_OFFSET,%2*4)<4;4,1> // 1st field luma from current frame (line 1,3)
}
SAVE_DN_CURR:
mov (2) rMSGSRC.0<1>:ud wORIX<2;2,1>:w // X origin and Y origin
mov (1) rMSGSRC.2<1>:ud nDPW_BLOCK_SIZE_DN:ud // block width and height (16x4)
mov (8) mudMSGHDR_DN(0)<1> rMSGSRC.0<8;8,1>:ud
send (8) dNULLREG mMSGHDR_DN udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nDPMW_MSG_LEN_PL_DN_DI+nBI_DESTINATION_Y:ud
 
 
/////////////////////////////IMC3 UV Copy 422/////////////////////////////////////////////////////
//Read UV through DATAPORT
add (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w wSRC_H_ORI_OFFSET<2;2,1>:w // Source Y Block origin
asr (2) rMSGSRC.0<1>:d rMSGSRC.0<2;2,1>:d 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_UV:ud // U/V block width and height (8x2)
mov (8) mudMSGHDR_DN<1> rMSGSRC<8;8,1>:ud
send (4) udBOT_U_IO(0)<1> mMSGHDR_DN udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nRESLEN_1+nBI_CURRENT_SRC_U:ud
send (4) udBOT_V_IO(0)<1> mMSGHDR_DN udDUMMY_NULL nDATAPORT_READ nDPMR_MSGDSC+nRESLEN_1+nBI_CURRENT_SRC_V:ud
 
//Write UV through DATAPORT
mov (2) rMSGSRC.0<1>:ud wORIX<2;2,1>:w // X origin and Y origin
asr (2) rMSGSRC.0<1>:d wORIX<2;2,1>:w 1:w // U/V block origin should be half of Y's
mov (1) rMSGSRC.2<1>:ud nDPR_BLOCK_SIZE_UV:ud // block width and height (8x2)
mov (8) mudMSGHDR_DN(0)<1> rMSGSRC.0<8;8,1>:ud
mov (4) mudMSGHDR_DN(1)<1> udBOT_U_IO(0)<4;4,1>
send (4) dNULLREG mMSGHDR_DN udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nMSGLEN_1+nBI_DESTINATION_U:ud
mov (4) mudMSGHDR_DN(1)<1> udBOT_V_IO(0)<4;4,1>
send (4) dNULLREG mMSGHDR_DN udDUMMY_NULL nDATAPORT_WRITE nDPMW_MSGDSC+nMSGLEN_1+nBI_DESTINATION_V:ud
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/PL_DN_ALG.asm
0,0 → 1,35
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
#define DI_DISABLE
 
#include "DNDI.inc"
 
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8 // Number of Y rows per block
 
#undef nSMPL_RESP_LEN
#define nSMPL_RESP_LEN nSMPL_RESP_LEN_DN_PL // Set the Number of GRFs in DNDI response
#undef nDPW_BLOCK_SIZE_DN
#define nDPW_BLOCK_SIZE_DN nBLOCK_WIDTH_16+nBLOCK_HEIGHT_8 // DN Curr Block Size for Write is 16x8
#undef nDPW_BLOCK_SIZE_HIST
#define nDPW_BLOCK_SIZE_HIST nBLOCK_WIDTH_4+nBLOCK_HEIGHT_2 // HIST Block Size for Write is 4x2
 
////////////////////////////////////// Run the DN Algorithm ///////////////////////////////////////
#include "DNDI_COMMAND.asm"
 
////////////////////////////////////// Rearrange for Internal Planar //////////////////////////////
$for (0; <nY_NUM_OF_ROWS; 1) {
mov (16) uwDEST_Y(0,%1*16)<1> ubRESP(nNODI_LUMA_OFFSET,%1*16)<16;16,1> // copy line of Y
}
 
////////////////////////////////////// Save the History Data for Next Run /////////////////////////
#include "DNDI_Hist_Save.asm"
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/RGB_AVS_IEF_16x8.asm
0,0 → 1,33
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- RGB_AVS_IEF_16x8.asm ----------
 
#include "AVS_IEF.inc"
 
//------------------------------------------------------------------------------
// 2 sampler reads for 8x8 ARGB packed
//------------------------------------------------------------------------------
 
// 1st 8x8 setup
#include "AVS_SetupFirstBlock.asm"
 
mov (1) rAVS_8x8_HDR.2:ud nAVS_ALL_CHANNELS:ud // Enable ARGB channels
mov (16) mAVS_8x8_HDR.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE(0)<1> mAVS_8x8_HDR udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_4CH+nSI_SRC_RGB+nBI_CURRENT_SRC_YUV
// Return ARGB in 16 GRFs
 
// 2nd 8x8 setup
#include "AVS_SetupSecondBlock.asm"
mov (16) mAVS_8x8_HDR_2.0:ud rAVS_8x8_HDR.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (1) uwAVS_RESPONSE_2(0)<1> mAVS_8x8_HDR_2 udDUMMY_NULL nSMPL_ENGINE nAVS_MSG_DSC_4CH+nSI_SRC_RGB+nBI_CURRENT_SRC_YUV
// Return ARGB in 16 GRFs
 
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/RGB_AVS_IEF_Unpack_16x8.asm
0,0 → 1,251
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- RGB_AVS_IEF_Unpack_16x8.asm ----------
#include "AVS_IEF.inc"
 
#ifdef AVS_OUTPUT_16_BIT
// Move first 8x8 words of B to dest GRF (as packed)
mov (4) uwDEST_Y(0,2)<4> uwAVS_RESPONSE(4,0)<4;4,1>
mov (4) uwDEST_Y(1,2)<4> uwAVS_RESPONSE(4,8)<4;4,1>
mov (4) uwDEST_Y(4,2)<4> uwAVS_RESPONSE(4,4)<4;4,1>
mov (4) uwDEST_Y(5,2)<4> uwAVS_RESPONSE(4,12)<4;4,1>
mov (4) uwDEST_Y(8,2)<4> uwAVS_RESPONSE(5,0)<4;4,1>
mov (4) uwDEST_Y(9,2)<4> uwAVS_RESPONSE(5,8)<4;4,1>
mov (4) uwDEST_Y(12,2)<4> uwAVS_RESPONSE(5,4)<4;4,1>
mov (4) uwDEST_Y(13,2)<4> uwAVS_RESPONSE(5,12)<4;4,1>
mov (4) uwDEST_Y(16,2)<4> uwAVS_RESPONSE(12,0)<4;4,1>
mov (4) uwDEST_Y(17,2)<4> uwAVS_RESPONSE(12,8)<4;4,1>
mov (4) uwDEST_Y(20,2)<4> uwAVS_RESPONSE(12,4)<4;4,1>
mov (4) uwDEST_Y(21,2)<4> uwAVS_RESPONSE(12,12)<4;4,1>
mov (4) uwDEST_Y(24,2)<4> uwAVS_RESPONSE(13,0)<4;4,1>
mov (4) uwDEST_Y(25,2)<4> uwAVS_RESPONSE(13,8)<4;4,1>
mov (4) uwDEST_Y(28,2)<4> uwAVS_RESPONSE(13,4)<4;4,1>
mov (4) uwDEST_Y(29,2)<4> uwAVS_RESPONSE(13,12)<4;4,1>
 
// Move first 8x8 words of G to dest GRF (as packed)
mov (4) uwDEST_Y(0,1)<4> uwAVS_RESPONSE(2,0)<4;4,1>
mov (4) uwDEST_Y(1,1)<4> uwAVS_RESPONSE(2,8)<4;4,1>
mov (4) uwDEST_Y(4,1)<4> uwAVS_RESPONSE(2,4)<4;4,1>
mov (4) uwDEST_Y(5,1)<4> uwAVS_RESPONSE(2,12)<4;4,1>
mov (4) uwDEST_Y(8,1)<4> uwAVS_RESPONSE(3,0)<4;4,1>
mov (4) uwDEST_Y(9,1)<4> uwAVS_RESPONSE(3,8)<4;4,1>
mov (4) uwDEST_Y(12,1)<4> uwAVS_RESPONSE(3,4)<4;4,1>
mov (4) uwDEST_Y(13,1)<4> uwAVS_RESPONSE(3,12)<4;4,1>
mov (4) uwDEST_Y(16,1)<4> uwAVS_RESPONSE(10,0)<4;4,1>
mov (4) uwDEST_Y(17,1)<4> uwAVS_RESPONSE(10,8)<4;4,1>
mov (4) uwDEST_Y(20,1)<4> uwAVS_RESPONSE(10,4)<4;4,1>
mov (4) uwDEST_Y(21,1)<4> uwAVS_RESPONSE(10,12)<4;4,1>
mov (4) uwDEST_Y(24,1)<4> uwAVS_RESPONSE(11,0)<4;4,1>
mov (4) uwDEST_Y(25,1)<4> uwAVS_RESPONSE(11,8)<4;4,1>
mov (4) uwDEST_Y(28,1)<4> uwAVS_RESPONSE(11,4)<4;4,1>
mov (4) uwDEST_Y(29,1)<4> uwAVS_RESPONSE(11,12)<4;4,1>
 
// Move first 8x8 words of R to dest GRF (as packed)
mov (4) uwDEST_Y(0,0)<4> uwAVS_RESPONSE(0,0)<4;4,1>
mov (4) uwDEST_Y(1,0)<4> uwAVS_RESPONSE(0,8)<4;4,1>
mov (4) uwDEST_Y(4,0)<4> uwAVS_RESPONSE(0,4)<4;4,1>
mov (4) uwDEST_Y(5,0)<4> uwAVS_RESPONSE(0,12)<4;4,1>
mov (4) uwDEST_Y(8,0)<4> uwAVS_RESPONSE(1,0)<4;4,1>
mov (4) uwDEST_Y(9,0)<4> uwAVS_RESPONSE(1,8)<4;4,1>
mov (4) uwDEST_Y(12,0)<4> uwAVS_RESPONSE(1,4)<4;4,1>
mov (4) uwDEST_Y(13,0)<4> uwAVS_RESPONSE(1,12)<4;4,1>
mov (4) uwDEST_Y(16,0)<4> uwAVS_RESPONSE(8,0)<4;4,1>
mov (4) uwDEST_Y(17,0)<4> uwAVS_RESPONSE(8,8)<4;4,1>
mov (4) uwDEST_Y(20,0)<4> uwAVS_RESPONSE(8,4)<4;4,1>
mov (4) uwDEST_Y(21,0)<4> uwAVS_RESPONSE(8,12)<4;4,1>
mov (4) uwDEST_Y(24,0)<4> uwAVS_RESPONSE(9,0)<4;4,1>
mov (4) uwDEST_Y(25,0)<4> uwAVS_RESPONSE(9,8)<4;4,1>
mov (4) uwDEST_Y(28,0)<4> uwAVS_RESPONSE(9,4)<4;4,1>
mov (4) uwDEST_Y(29,0)<4> uwAVS_RESPONSE(9,12)<4;4,1>
 
// Move first 8x8 words of A to dest GRF (as packed)
mov (4) uwDEST_Y(0,3)<4> uwAVS_RESPONSE(6,0)<4;4,1>
mov (4) uwDEST_Y(1,3)<4> uwAVS_RESPONSE(6,8)<4;4,1>
mov (4) uwDEST_Y(4,3)<4> uwAVS_RESPONSE(6,4)<4;4,1>
mov (4) uwDEST_Y(5,3)<4> uwAVS_RESPONSE(6,12)<4;4,1>
mov (4) uwDEST_Y(8,3)<4> uwAVS_RESPONSE(7,0)<4;4,1>
mov (4) uwDEST_Y(9,3)<4> uwAVS_RESPONSE(7,8)<4;4,1>
mov (4) uwDEST_Y(12,3)<4> uwAVS_RESPONSE(7,4)<4;4,1>
mov (4) uwDEST_Y(13,3)<4> uwAVS_RESPONSE(7,12)<4;4,1>
mov (4) uwDEST_Y(16,3)<4> uwAVS_RESPONSE(14,0)<4;4,1>
mov (4) uwDEST_Y(17,3)<4> uwAVS_RESPONSE(14,8)<4;4,1>
mov (4) uwDEST_Y(20,3)<4> uwAVS_RESPONSE(14,4)<4;4,1>
mov (4) uwDEST_Y(21,3)<4> uwAVS_RESPONSE(14,12)<4;4,1>
mov (4) uwDEST_Y(24,3)<4> uwAVS_RESPONSE(15,0)<4;4,1>
mov (4) uwDEST_Y(25,3)<4> uwAVS_RESPONSE(15,8)<4;4,1>
mov (4) uwDEST_Y(28,3)<4> uwAVS_RESPONSE(15,4)<4;4,1>
mov (4) uwDEST_Y(29,3)<4> uwAVS_RESPONSE(15,12)<4;4,1>
 
// Move second 8x8 words of B to dest GRF
mov (4) uwDEST_Y(2,2)<4> uwAVS_RESPONSE_2(4,0)<4;4,1>
mov (4) uwDEST_Y(3,2)<4> uwAVS_RESPONSE_2(4,8)<4;4,1>
mov (4) uwDEST_Y(6,2)<4> uwAVS_RESPONSE_2(4,4)<4;4,1>
mov (4) uwDEST_Y(7,2)<4> uwAVS_RESPONSE_2(4,12)<4;4,1>
mov (4) uwDEST_Y(10,2)<4> uwAVS_RESPONSE_2(5,0)<4;4,1>
mov (4) uwDEST_Y(11,2)<4> uwAVS_RESPONSE_2(5,8)<4;4,1>
mov (4) uwDEST_Y(14,2)<4> uwAVS_RESPONSE_2(5,4)<4;4,1>
mov (4) uwDEST_Y(15,2)<4> uwAVS_RESPONSE_2(5,12)<4;4,1>
mov (4) uwDEST_Y(18,2)<4> uwAVS_RESPONSE_2(12,0)<4;4,1>
mov (4) uwDEST_Y(19,2)<4> uwAVS_RESPONSE_2(12,8)<4;4,1>
mov (4) uwDEST_Y(22,2)<4> uwAVS_RESPONSE_2(12,4)<4;4,1>
mov (4) uwDEST_Y(23,2)<4> uwAVS_RESPONSE_2(12,12)<4;4,1>
mov (4) uwDEST_Y(26,2)<4> uwAVS_RESPONSE_2(13,0)<4;4,1>
mov (4) uwDEST_Y(27,2)<4> uwAVS_RESPONSE_2(13,8)<4;4,1>
mov (4) uwDEST_Y(30,2)<4> uwAVS_RESPONSE_2(13,4)<4;4,1>
mov (4) uwDEST_Y(31,2)<4> uwAVS_RESPONSE_2(13,12)<4;4,1>
 
// Move second 8x8 words of G to dest GRF
mov (4) uwDEST_Y(2,1)<4> uwAVS_RESPONSE_2(2,0)<4;4,1>
mov (4) uwDEST_Y(3,1)<4> uwAVS_RESPONSE_2(2,8)<4;4,1>
mov (4) uwDEST_Y(6,1)<4> uwAVS_RESPONSE_2(2,4)<4;4,1>
mov (4) uwDEST_Y(7,1)<4> uwAVS_RESPONSE_2(2,12)<4;4,1>
mov (4) uwDEST_Y(10,1)<4> uwAVS_RESPONSE_2(3,0)<4;4,1>
mov (4) uwDEST_Y(11,1)<4> uwAVS_RESPONSE_2(3,8)<4;4,1>
mov (4) uwDEST_Y(14,1)<4> uwAVS_RESPONSE_2(3,4)<4;4,1>
mov (4) uwDEST_Y(15,1)<4> uwAVS_RESPONSE_2(3,12)<4;4,1>
mov (4) uwDEST_Y(18,1)<4> uwAVS_RESPONSE_2(10,0)<4;4,1>
mov (4) uwDEST_Y(19,1)<4> uwAVS_RESPONSE_2(10,8)<4;4,1>
mov (4) uwDEST_Y(22,1)<4> uwAVS_RESPONSE_2(10,4)<4;4,1>
mov (4) uwDEST_Y(23,1)<4> uwAVS_RESPONSE_2(10,12)<4;4,1>
mov (4) uwDEST_Y(26,1)<4> uwAVS_RESPONSE_2(11,0)<4;4,1>
mov (4) uwDEST_Y(27,1)<4> uwAVS_RESPONSE_2(11,8)<4;4,1>
mov (4) uwDEST_Y(30,1)<4> uwAVS_RESPONSE_2(11,4)<4;4,1>
mov (4) uwDEST_Y(31,1)<4> uwAVS_RESPONSE_2(11,12)<4;4,1>
 
// Move second 8x8 words of R to dest GRF
mov (4) uwDEST_Y(2,0)<4> uwAVS_RESPONSE_2(0,0)<4;4,1>
mov (4) uwDEST_Y(3,0)<4> uwAVS_RESPONSE_2(0,8)<4;4,1>
mov (4) uwDEST_Y(6,0)<4> uwAVS_RESPONSE_2(0,4)<4;4,1>
mov (4) uwDEST_Y(7,0)<4> uwAVS_RESPONSE_2(0,12)<4;4,1>
mov (4) uwDEST_Y(10,0)<4> uwAVS_RESPONSE_2(1,0)<4;4,1>
mov (4) uwDEST_Y(11,0)<4> uwAVS_RESPONSE_2(1,8)<4;4,1>
mov (4) uwDEST_Y(14,0)<4> uwAVS_RESPONSE_2(1,4)<4;4,1>
mov (4) uwDEST_Y(15,0)<4> uwAVS_RESPONSE_2(1,12)<4;4,1>
mov (4) uwDEST_Y(18,0)<4> uwAVS_RESPONSE_2(8,0)<4;4,1>
mov (4) uwDEST_Y(19,0)<4> uwAVS_RESPONSE_2(8,8)<4;4,1>
mov (4) uwDEST_Y(22,0)<4> uwAVS_RESPONSE_2(8,4)<4;4,1>
mov (4) uwDEST_Y(23,0)<4> uwAVS_RESPONSE_2(8,12)<4;4,1>
mov (4) uwDEST_Y(26,0)<4> uwAVS_RESPONSE_2(9,0)<4;4,1>
mov (4) uwDEST_Y(27,0)<4> uwAVS_RESPONSE_2(9,8)<4;4,1>
mov (4) uwDEST_Y(30,0)<4> uwAVS_RESPONSE_2(9,4)<4;4,1>
mov (4) uwDEST_Y(31,0)<4> uwAVS_RESPONSE_2(9,12)<4;4,1>
 
// Move second 8x8 words of A to dest GRF
mov (4) uwDEST_Y(2,3)<4> uwAVS_RESPONSE_2(6,0)<4;4,1>
mov (4) uwDEST_Y(3,3)<4> uwAVS_RESPONSE_2(6,8)<4;4,1>
mov (4) uwDEST_Y(6,3)<4> uwAVS_RESPONSE_2(6,4)<4;4,1>
mov (4) uwDEST_Y(7,3)<4> uwAVS_RESPONSE_2(6,12)<4;4,1>
mov (4) uwDEST_Y(10,3)<4> uwAVS_RESPONSE_2(7,0)<4;4,1>
mov (4) uwDEST_Y(11,3)<4> uwAVS_RESPONSE_2(7,8)<4;4,1>
mov (4) uwDEST_Y(14,3)<4> uwAVS_RESPONSE_2(7,4)<4;4,1>
mov (4) uwDEST_Y(15,3)<4> uwAVS_RESPONSE_2(7,12)<4;4,1>
mov (4) uwDEST_Y(18,3)<4> uwAVS_RESPONSE_2(14,0)<4;4,1>
mov (4) uwDEST_Y(19,3)<4> uwAVS_RESPONSE_2(14,8)<4;4,1>
mov (4) uwDEST_Y(22,3)<4> uwAVS_RESPONSE_2(14,4)<4;4,1>
mov (4) uwDEST_Y(23,3)<4> uwAVS_RESPONSE_2(14,12)<4;4,1>
mov (4) uwDEST_Y(26,3)<4> uwAVS_RESPONSE_2(15,0)<4;4,1>
mov (4) uwDEST_Y(27,3)<4> uwAVS_RESPONSE_2(15,8)<4;4,1>
mov (4) uwDEST_Y(30,3)<4> uwAVS_RESPONSE_2(15,4)<4;4,1>
mov (4) uwDEST_Y(31,3)<4> uwAVS_RESPONSE_2(15,12)<4;4,1>
 
#else /* OUTPUT_8_BIT */
// Move first 8x8 words of B to dest GRF
mov (8) ubDEST_Y(0,2)<4> ubAVS_RESPONSE(4,1)<16;4,2>
mov (8) ubDEST_Y(2,2)<4> ubAVS_RESPONSE(4,8+1)<16;4,2>
mov (8) ubDEST_Y(4,2)<4> ubAVS_RESPONSE(5,1)<16;4,2>
mov (8) ubDEST_Y(6,2)<4> ubAVS_RESPONSE(5,8+1)<16;4,2>
mov (8) ubDEST_Y(8,2)<4> ubAVS_RESPONSE(12,1)<16;4,2>
mov (8) ubDEST_Y(10,2)<4> ubAVS_RESPONSE(12,8+1)<16;4,2>
mov (8) ubDEST_Y(12,2)<4> ubAVS_RESPONSE(13,1)<16;4,2>
mov (8) ubDEST_Y(14,2)<4> ubAVS_RESPONSE(13,8+1)<16;4,2>
 
// Move first 8x8 words of G to dest GRF
mov (8) ubDEST_Y(0,1)<4> ubAVS_RESPONSE(2,1)<16;4,2>
mov (8) ubDEST_Y(2,1)<4> ubAVS_RESPONSE(2,8+1)<16;4,2>
mov (8) ubDEST_Y(4,1)<4> ubAVS_RESPONSE(3,1)<16;4,2>
mov (8) ubDEST_Y(6,1)<4> ubAVS_RESPONSE(3,8+1)<16;4,2>
mov (8) ubDEST_Y(8,1)<4> ubAVS_RESPONSE(10,1)<16;4,2>
mov (8) ubDEST_Y(10,1)<4> ubAVS_RESPONSE(10,8+1)<16;4,2>
mov (8) ubDEST_Y(12,1)<4> ubAVS_RESPONSE(11,1)<16;4,2>
mov (8) ubDEST_Y(14,1)<4> ubAVS_RESPONSE(11,8+1)<16;4,2>
 
// Move first 8x8 words of R to dest GRF
mov (8) ubDEST_Y(0,0)<4> ubAVS_RESPONSE(0,1)<16;4,2>
mov (8) ubDEST_Y(2,0)<4> ubAVS_RESPONSE(0,8+1)<16;4,2>
mov (8) ubDEST_Y(4,0)<4> ubAVS_RESPONSE(1,1)<16;4,2>
mov (8) ubDEST_Y(6,0)<4> ubAVS_RESPONSE(1,8+1)<16;4,2>
mov (8) ubDEST_Y(8,0)<4> ubAVS_RESPONSE(8,1)<16;4,2>
mov (8) ubDEST_Y(10,0)<4> ubAVS_RESPONSE(8,8+1)<16;4,2>
mov (8) ubDEST_Y(12,0)<4> ubAVS_RESPONSE(9,1)<16;4,2>
mov (8) ubDEST_Y(14,0)<4> ubAVS_RESPONSE(9,8+1)<16;4,2>
 
// Move first 8x8 words of A to dest GRF
mov (8) ubDEST_Y(0,3)<4> ubAVS_RESPONSE(6,1)<16;4,2>
mov (8) ubDEST_Y(2,3)<4> ubAVS_RESPONSE(6,8+1)<16;4,2>
mov (8) ubDEST_Y(4,3)<4> ubAVS_RESPONSE(7,1)<16;4,2>
mov (8) ubDEST_Y(6,3)<4> ubAVS_RESPONSE(7,8+1)<16;4,2>
mov (8) ubDEST_Y(8,3)<4> ubAVS_RESPONSE(14,1)<16;4,2>
mov (8) ubDEST_Y(10,3)<4> ubAVS_RESPONSE(14,8+1)<16;4,2>
mov (8) ubDEST_Y(12,3)<4> ubAVS_RESPONSE(15,1)<16;4,2>
mov (8) ubDEST_Y(14,3)<4> ubAVS_RESPONSE(15,8+1)<16;4,2>
 
// Move second 8x8 words of B to dest GRF
mov (8) ubDEST_Y(1,2)<4> ubAVS_RESPONSE_2(4,1)<16;4,2>
mov (8) ubDEST_Y(3,2)<4> ubAVS_RESPONSE_2(4,8+1)<16;4,2>
mov (8) ubDEST_Y(5,2)<4> ubAVS_RESPONSE_2(5,1)<16;4,2>
mov (8) ubDEST_Y(7,2)<4> ubAVS_RESPONSE_2(5,8+1)<16;4,2>
mov (8) ubDEST_Y(9,2)<4> ubAVS_RESPONSE_2(12,1)<16;4,2>
mov (8) ubDEST_Y(11,2)<4> ubAVS_RESPONSE_2(12,8+1)<16;4,2>
mov (8) ubDEST_Y(13,2)<4> ubAVS_RESPONSE_2(13,1)<16;4,2>
mov (8) ubDEST_Y(15,2)<4> ubAVS_RESPONSE_2(13,8+1)<16;4,2>
 
// Move second 8x8 words of G to dest GRF
mov (8) ubDEST_Y(1,1)<4> ubAVS_RESPONSE_2(2,1)<16;4,2>
mov (8) ubDEST_Y(3,1)<4> ubAVS_RESPONSE_2(2,8+1)<16;4,2>
mov (8) ubDEST_Y(5,1)<4> ubAVS_RESPONSE_2(3,1)<16;4,2>
mov (8) ubDEST_Y(7,1)<4> ubAVS_RESPONSE_2(3,8+1)<16;4,2>
mov (8) ubDEST_Y(9,1)<4> ubAVS_RESPONSE_2(10,1)<16;4,2>
mov (8) ubDEST_Y(11,1)<4> ubAVS_RESPONSE_2(10,8+1)<16;4,2>
mov (8) ubDEST_Y(13,1)<4> ubAVS_RESPONSE_2(11,1)<16;4,2>
mov (8) ubDEST_Y(15,1)<4> ubAVS_RESPONSE_2(11,8+1)<16;4,2>
 
// Move second 8x8 words of R to dest GRF
mov (8) ubDEST_Y(1,0)<4> ubAVS_RESPONSE_2(0,1)<16;4,2>
mov (8) ubDEST_Y(3,0)<4> ubAVS_RESPONSE_2(0,8+1)<16;4,2>
mov (8) ubDEST_Y(5,0)<4> ubAVS_RESPONSE_2(1,1)<16;4,2>
mov (8) ubDEST_Y(7,0)<4> ubAVS_RESPONSE_2(1,8+1)<16;4,2>
mov (8) ubDEST_Y(9,0)<4> ubAVS_RESPONSE_2(8,1)<16;4,2>
mov (8) ubDEST_Y(11,0)<4> ubAVS_RESPONSE_2(8,8+1)<16;4,2>
mov (8) ubDEST_Y(13,0)<4> ubAVS_RESPONSE_2(9,1)<16;4,2>
mov (8) ubDEST_Y(15,0)<4> ubAVS_RESPONSE_2(9,8+1)<16;4,2>
 
// Move second 8x8 words of A to dest GRF
mov (8) ubDEST_Y(1,3)<4> ubAVS_RESPONSE_2(6,1)<16;4,2>
mov (8) ubDEST_Y(3,3)<4> ubAVS_RESPONSE_2(6,8+1)<16;4,2>
mov (8) ubDEST_Y(5,3)<4> ubAVS_RESPONSE_2(7,1)<16;4,2>
mov (8) ubDEST_Y(7,3)<4> ubAVS_RESPONSE_2(7,8+1)<16;4,2>
mov (8) ubDEST_Y(9,3)<4> ubAVS_RESPONSE_2(14,1)<16;4,2>
mov (8) ubDEST_Y(11,3)<4> ubAVS_RESPONSE_2(14,8+1)<16;4,2>
mov (8) ubDEST_Y(13,3)<4> ubAVS_RESPONSE_2(15,1)<16;4,2>
mov (8) ubDEST_Y(15,3)<4> ubAVS_RESPONSE_2(15,8+1)<16;4,2>
#endif
//------------------------------------------------------------------------------
 
// Set to write bottom region to memory
#define SRC_REGION REGION_2
// Re-define new # of lines
#undef nUV_NUM_OF_ROWS
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8
#define nUV_NUM_OF_ROWS 8
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/RGB_AVS_IEF_Unscramble_16x8.asm
0,0 → 1,260
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- RGB_AVS_IEF_Unpack_16x8.asm ----------
#include "AVS_IEF.inc"
 
.declare DEST_B Base=REG(r,10) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
.declare DEST_G Base=REG(r,18) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
.declare DEST_R Base=REG(r,26) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
.declare DEST_A Base=REG(r,34) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
 
 
#ifdef AVS_OUTPUT_16_BIT
//This portion will need to be changed if unpacking is required for Y416 kernels (in case of blending etc) - vK
 
//// Move first 8x8 words of B to dest GRF (as packed)
// mov (4) uwDEST_Y(0,2)<4> uwAVS_RESPONSE(4,0)<4;4,1>
// mov (4) uwDEST_Y(1,2)<4> uwAVS_RESPONSE(4,8)<4;4,1>
// mov (4) uwDEST_Y(4,2)<4> uwAVS_RESPONSE(4,4)<4;4,1>
// mov (4) uwDEST_Y(5,2)<4> uwAVS_RESPONSE(4,12)<4;4,1>
// mov (4) uwDEST_Y(8,2)<4> uwAVS_RESPONSE(5,0)<4;4,1>
// mov (4) uwDEST_Y(9,2)<4> uwAVS_RESPONSE(5,8)<4;4,1>
// mov (4) uwDEST_Y(12,2)<4> uwAVS_RESPONSE(5,4)<4;4,1>
// mov (4) uwDEST_Y(13,2)<4> uwAVS_RESPONSE(5,12)<4;4,1>
// mov (4) uwDEST_Y(16,2)<4> uwAVS_RESPONSE(12,0)<4;4,1>
// mov (4) uwDEST_Y(17,2)<4> uwAVS_RESPONSE(12,8)<4;4,1>
// mov (4) uwDEST_Y(20,2)<4> uwAVS_RESPONSE(12,4)<4;4,1>
// mov (4) uwDEST_Y(21,2)<4> uwAVS_RESPONSE(12,12)<4;4,1>
// mov (4) uwDEST_Y(24,2)<4> uwAVS_RESPONSE(13,0)<4;4,1>
// mov (4) uwDEST_Y(25,2)<4> uwAVS_RESPONSE(13,8)<4;4,1>
// mov (4) uwDEST_Y(28,2)<4> uwAVS_RESPONSE(13,4)<4;4,1>
// mov (4) uwDEST_Y(29,2)<4> uwAVS_RESPONSE(13,12)<4;4,1>
//
//// Move first 8x8 words of G to dest GRF (as packed)
// mov (4) uwDEST_Y(0,1)<4> uwAVS_RESPONSE(2,0)<4;4,1>
// mov (4) uwDEST_Y(1,1)<4> uwAVS_RESPONSE(2,8)<4;4,1>
// mov (4) uwDEST_Y(4,1)<4> uwAVS_RESPONSE(2,4)<4;4,1>
// mov (4) uwDEST_Y(5,1)<4> uwAVS_RESPONSE(2,12)<4;4,1>
// mov (4) uwDEST_Y(8,1)<4> uwAVS_RESPONSE(3,0)<4;4,1>
// mov (4) uwDEST_Y(9,1)<4> uwAVS_RESPONSE(3,8)<4;4,1>
// mov (4) uwDEST_Y(12,1)<4> uwAVS_RESPONSE(3,4)<4;4,1>
// mov (4) uwDEST_Y(13,1)<4> uwAVS_RESPONSE(3,12)<4;4,1>
// mov (4) uwDEST_Y(16,1)<4> uwAVS_RESPONSE(10,0)<4;4,1>
// mov (4) uwDEST_Y(17,1)<4> uwAVS_RESPONSE(10,8)<4;4,1>
// mov (4) uwDEST_Y(20,1)<4> uwAVS_RESPONSE(10,4)<4;4,1>
// mov (4) uwDEST_Y(21,1)<4> uwAVS_RESPONSE(10,12)<4;4,1>
// mov (4) uwDEST_Y(24,1)<4> uwAVS_RESPONSE(11,0)<4;4,1>
// mov (4) uwDEST_Y(25,1)<4> uwAVS_RESPONSE(11,8)<4;4,1>
// mov (4) uwDEST_Y(28,1)<4> uwAVS_RESPONSE(11,4)<4;4,1>
// mov (4) uwDEST_Y(29,1)<4> uwAVS_RESPONSE(11,12)<4;4,1>
//
//// Move first 8x8 words of R to dest GRF (as packed)
// mov (4) uwDEST_Y(0,0)<4> uwAVS_RESPONSE(0,0)<4;4,1>
// mov (4) uwDEST_Y(1,0)<4> uwAVS_RESPONSE(0,8)<4;4,1>
// mov (4) uwDEST_Y(4,0)<4> uwAVS_RESPONSE(0,4)<4;4,1>
// mov (4) uwDEST_Y(5,0)<4> uwAVS_RESPONSE(0,12)<4;4,1>
// mov (4) uwDEST_Y(8,0)<4> uwAVS_RESPONSE(1,0)<4;4,1>
// mov (4) uwDEST_Y(9,0)<4> uwAVS_RESPONSE(1,8)<4;4,1>
// mov (4) uwDEST_Y(12,0)<4> uwAVS_RESPONSE(1,4)<4;4,1>
// mov (4) uwDEST_Y(13,0)<4> uwAVS_RESPONSE(1,12)<4;4,1>
// mov (4) uwDEST_Y(16,0)<4> uwAVS_RESPONSE(8,0)<4;4,1>
// mov (4) uwDEST_Y(17,0)<4> uwAVS_RESPONSE(8,8)<4;4,1>
// mov (4) uwDEST_Y(20,0)<4> uwAVS_RESPONSE(8,4)<4;4,1>
// mov (4) uwDEST_Y(21,0)<4> uwAVS_RESPONSE(8,12)<4;4,1>
// mov (4) uwDEST_Y(24,0)<4> uwAVS_RESPONSE(9,0)<4;4,1>
// mov (4) uwDEST_Y(25,0)<4> uwAVS_RESPONSE(9,8)<4;4,1>
// mov (4) uwDEST_Y(28,0)<4> uwAVS_RESPONSE(9,4)<4;4,1>
// mov (4) uwDEST_Y(29,0)<4> uwAVS_RESPONSE(9,12)<4;4,1>
//
//// Move first 8x8 words of A to dest GRF (as packed)
// mov (4) uwDEST_Y(0,3)<4> uwAVS_RESPONSE(6,0)<4;4,1>
// mov (4) uwDEST_Y(1,3)<4> uwAVS_RESPONSE(6,8)<4;4,1>
// mov (4) uwDEST_Y(4,3)<4> uwAVS_RESPONSE(6,4)<4;4,1>
// mov (4) uwDEST_Y(5,3)<4> uwAVS_RESPONSE(6,12)<4;4,1>
// mov (4) uwDEST_Y(8,3)<4> uwAVS_RESPONSE(7,0)<4;4,1>
// mov (4) uwDEST_Y(9,3)<4> uwAVS_RESPONSE(7,8)<4;4,1>
// mov (4) uwDEST_Y(12,3)<4> uwAVS_RESPONSE(7,4)<4;4,1>
// mov (4) uwDEST_Y(13,3)<4> uwAVS_RESPONSE(7,12)<4;4,1>
// mov (4) uwDEST_Y(16,3)<4> uwAVS_RESPONSE(14,0)<4;4,1>
// mov (4) uwDEST_Y(17,3)<4> uwAVS_RESPONSE(14,8)<4;4,1>
// mov (4) uwDEST_Y(20,3)<4> uwAVS_RESPONSE(14,4)<4;4,1>
// mov (4) uwDEST_Y(21,3)<4> uwAVS_RESPONSE(14,12)<4;4,1>
// mov (4) uwDEST_Y(24,3)<4> uwAVS_RESPONSE(15,0)<4;4,1>
// mov (4) uwDEST_Y(25,3)<4> uwAVS_RESPONSE(15,8)<4;4,1>
// mov (4) uwDEST_Y(28,3)<4> uwAVS_RESPONSE(15,4)<4;4,1>
// mov (4) uwDEST_Y(29,3)<4> uwAVS_RESPONSE(15,12)<4;4,1>
//
//// Move second 8x8 words of B to dest GRF
// mov (4) uwDEST_Y(2,2)<4> uwAVS_RESPONSE_2(4,0)<4;4,1>
// mov (4) uwDEST_Y(3,2)<4> uwAVS_RESPONSE_2(4,8)<4;4,1>
// mov (4) uwDEST_Y(6,2)<4> uwAVS_RESPONSE_2(4,4)<4;4,1>
// mov (4) uwDEST_Y(7,2)<4> uwAVS_RESPONSE_2(4,12)<4;4,1>
// mov (4) uwDEST_Y(10,2)<4> uwAVS_RESPONSE_2(5,0)<4;4,1>
// mov (4) uwDEST_Y(11,2)<4> uwAVS_RESPONSE_2(5,8)<4;4,1>
// mov (4) uwDEST_Y(14,2)<4> uwAVS_RESPONSE_2(5,4)<4;4,1>
// mov (4) uwDEST_Y(15,2)<4> uwAVS_RESPONSE_2(5,12)<4;4,1>
// mov (4) uwDEST_Y(18,2)<4> uwAVS_RESPONSE_2(12,0)<4;4,1>
// mov (4) uwDEST_Y(19,2)<4> uwAVS_RESPONSE_2(12,8)<4;4,1>
// mov (4) uwDEST_Y(22,2)<4> uwAVS_RESPONSE_2(12,4)<4;4,1>
// mov (4) uwDEST_Y(23,2)<4> uwAVS_RESPONSE_2(12,12)<4;4,1>
// mov (4) uwDEST_Y(26,2)<4> uwAVS_RESPONSE_2(13,0)<4;4,1>
// mov (4) uwDEST_Y(27,2)<4> uwAVS_RESPONSE_2(13,8)<4;4,1>
// mov (4) uwDEST_Y(30,2)<4> uwAVS_RESPONSE_2(13,4)<4;4,1>
// mov (4) uwDEST_Y(31,2)<4> uwAVS_RESPONSE_2(13,12)<4;4,1>
//
//// Move second 8x8 words of G to dest GRF
// mov (4) uwDEST_Y(2,1)<4> uwAVS_RESPONSE_2(2,0)<4;4,1>
// mov (4) uwDEST_Y(3,1)<4> uwAVS_RESPONSE_2(2,8)<4;4,1>
// mov (4) uwDEST_Y(6,1)<4> uwAVS_RESPONSE_2(2,4)<4;4,1>
// mov (4) uwDEST_Y(7,1)<4> uwAVS_RESPONSE_2(2,12)<4;4,1>
// mov (4) uwDEST_Y(10,1)<4> uwAVS_RESPONSE_2(3,0)<4;4,1>
// mov (4) uwDEST_Y(11,1)<4> uwAVS_RESPONSE_2(3,8)<4;4,1>
// mov (4) uwDEST_Y(14,1)<4> uwAVS_RESPONSE_2(3,4)<4;4,1>
// mov (4) uwDEST_Y(15,1)<4> uwAVS_RESPONSE_2(3,12)<4;4,1>
// mov (4) uwDEST_Y(18,1)<4> uwAVS_RESPONSE_2(10,0)<4;4,1>
// mov (4) uwDEST_Y(19,1)<4> uwAVS_RESPONSE_2(10,8)<4;4,1>
// mov (4) uwDEST_Y(22,1)<4> uwAVS_RESPONSE_2(10,4)<4;4,1>
// mov (4) uwDEST_Y(23,1)<4> uwAVS_RESPONSE_2(10,12)<4;4,1>
// mov (4) uwDEST_Y(26,1)<4> uwAVS_RESPONSE_2(11,0)<4;4,1>
// mov (4) uwDEST_Y(27,1)<4> uwAVS_RESPONSE_2(11,8)<4;4,1>
// mov (4) uwDEST_Y(30,1)<4> uwAVS_RESPONSE_2(11,4)<4;4,1>
// mov (4) uwDEST_Y(31,1)<4> uwAVS_RESPONSE_2(11,12)<4;4,1>
//
//// Move second 8x8 words of R to dest GRF
// mov (4) uwDEST_Y(2,0)<4> uwAVS_RESPONSE_2(0,0)<4;4,1>
// mov (4) uwDEST_Y(3,0)<4> uwAVS_RESPONSE_2(0,8)<4;4,1>
// mov (4) uwDEST_Y(6,0)<4> uwAVS_RESPONSE_2(0,4)<4;4,1>
// mov (4) uwDEST_Y(7,0)<4> uwAVS_RESPONSE_2(0,12)<4;4,1>
// mov (4) uwDEST_Y(10,0)<4> uwAVS_RESPONSE_2(1,0)<4;4,1>
// mov (4) uwDEST_Y(11,0)<4> uwAVS_RESPONSE_2(1,8)<4;4,1>
// mov (4) uwDEST_Y(14,0)<4> uwAVS_RESPONSE_2(1,4)<4;4,1>
// mov (4) uwDEST_Y(15,0)<4> uwAVS_RESPONSE_2(1,12)<4;4,1>
// mov (4) uwDEST_Y(18,0)<4> uwAVS_RESPONSE_2(8,0)<4;4,1>
// mov (4) uwDEST_Y(19,0)<4> uwAVS_RESPONSE_2(8,8)<4;4,1>
// mov (4) uwDEST_Y(22,0)<4> uwAVS_RESPONSE_2(8,4)<4;4,1>
// mov (4) uwDEST_Y(23,0)<4> uwAVS_RESPONSE_2(8,12)<4;4,1>
// mov (4) uwDEST_Y(26,0)<4> uwAVS_RESPONSE_2(9,0)<4;4,1>
// mov (4) uwDEST_Y(27,0)<4> uwAVS_RESPONSE_2(9,8)<4;4,1>
// mov (4) uwDEST_Y(30,0)<4> uwAVS_RESPONSE_2(9,4)<4;4,1>
// mov (4) uwDEST_Y(31,0)<4> uwAVS_RESPONSE_2(9,12)<4;4,1>
//
//// Move second 8x8 words of A to dest GRF
// mov (4) uwDEST_Y(2,3)<4> uwAVS_RESPONSE_2(6,0)<4;4,1>
// mov (4) uwDEST_Y(3,3)<4> uwAVS_RESPONSE_2(6,8)<4;4,1>
// mov (4) uwDEST_Y(6,3)<4> uwAVS_RESPONSE_2(6,4)<4;4,1>
// mov (4) uwDEST_Y(7,3)<4> uwAVS_RESPONSE_2(6,12)<4;4,1>
// mov (4) uwDEST_Y(10,3)<4> uwAVS_RESPONSE_2(7,0)<4;4,1>
// mov (4) uwDEST_Y(11,3)<4> uwAVS_RESPONSE_2(7,8)<4;4,1>
// mov (4) uwDEST_Y(14,3)<4> uwAVS_RESPONSE_2(7,4)<4;4,1>
// mov (4) uwDEST_Y(15,3)<4> uwAVS_RESPONSE_2(7,12)<4;4,1>
// mov (4) uwDEST_Y(18,3)<4> uwAVS_RESPONSE_2(14,0)<4;4,1>
// mov (4) uwDEST_Y(19,3)<4> uwAVS_RESPONSE_2(14,8)<4;4,1>
// mov (4) uwDEST_Y(22,3)<4> uwAVS_RESPONSE_2(14,4)<4;4,1>
// mov (4) uwDEST_Y(23,3)<4> uwAVS_RESPONSE_2(14,12)<4;4,1>
// mov (4) uwDEST_Y(26,3)<4> uwAVS_RESPONSE_2(15,0)<4;4,1>
// mov (4) uwDEST_Y(27,3)<4> uwAVS_RESPONSE_2(15,8)<4;4,1>
// mov (4) uwDEST_Y(30,3)<4> uwAVS_RESPONSE_2(15,4)<4;4,1>
// mov (4) uwDEST_Y(31,3)<4> uwAVS_RESPONSE_2(15,12)<4;4,1>
 
#else /* OUTPUT_8_BIT */
 
// Move first 8x8 words of B to dest GRF
mov (8) DEST_B(0)<1> ubAVS_RESPONSE(4,1)<16;4,2>
mov (8) DEST_B(1)<1> ubAVS_RESPONSE(4,8+1)<16;4,2>
mov (8) DEST_B(2)<1> ubAVS_RESPONSE(5,1)<16;4,2>
mov (8) DEST_B(3)<1> ubAVS_RESPONSE(5,8+1)<16;4,2>
mov (8) DEST_B(4)<1> ubAVS_RESPONSE(12,1)<16;4,2>
mov (8) DEST_B(5)<1> ubAVS_RESPONSE(12,8+1)<16;4,2>
mov (8) DEST_B(6)<1> ubAVS_RESPONSE(13,1)<16;4,2>
mov (8) DEST_B(7)<1> ubAVS_RESPONSE(13,8+1)<16;4,2>
 
// Move first 8x8 words of G to dest GRF
mov (8) DEST_G(0)<1> ubAVS_RESPONSE(2,1)<16;4,2>
mov (8) DEST_G(1)<1> ubAVS_RESPONSE(2,8+1)<16;4,2>
mov (8) DEST_G(2)<1> ubAVS_RESPONSE(3,1)<16;4,2>
mov (8) DEST_G(3)<1> ubAVS_RESPONSE(3,8+1)<16;4,2>
mov (8) DEST_G(4)<1> ubAVS_RESPONSE(10,1)<16;4,2>
mov (8) DEST_G(5)<1> ubAVS_RESPONSE(10,8+1)<16;4,2>
mov (8) DEST_G(6)<1> ubAVS_RESPONSE(11,1)<16;4,2>
mov (8) DEST_G(7)<1> ubAVS_RESPONSE(11,8+1)<16;4,2>
 
// Move first 8x8 words of R to dest GRF
mov (8) DEST_R(0)<1> ubAVS_RESPONSE(0,1)<16;4,2>
mov (8) DEST_R(1)<1> ubAVS_RESPONSE(0,8+1)<16;4,2>
mov (8) DEST_R(2)<1> ubAVS_RESPONSE(1,1)<16;4,2>
mov (8) DEST_R(3)<1> ubAVS_RESPONSE(1,8+1)<16;4,2>
mov (8) DEST_R(4)<1> ubAVS_RESPONSE(8,1)<16;4,2>
mov (8) DEST_R(5)<1> ubAVS_RESPONSE(8,8+1)<16;4,2>
mov (8) DEST_R(6)<1> ubAVS_RESPONSE(9,1)<16;4,2>
mov (8) DEST_R(7)<1> ubAVS_RESPONSE(9,8+1)<16;4,2>
 
// Move first 8x8 words of A to dest GRF
mov (8) DEST_A(0)<1> ubAVS_RESPONSE(6,1)<16;4,2>
mov (8) DEST_A(1)<1> ubAVS_RESPONSE(6,8+1)<16;4,2>
mov (8) DEST_A(2)<1> ubAVS_RESPONSE(7,1)<16;4,2>
mov (8) DEST_A(3)<1> ubAVS_RESPONSE(7,8+1)<16;4,2>
mov (8) DEST_A(4)<1> ubAVS_RESPONSE(14,1)<16;4,2>
mov (8) DEST_A(5)<1> ubAVS_RESPONSE(14,8+1)<16;4,2>
mov (8) DEST_A(6)<1> ubAVS_RESPONSE(15,1)<16;4,2>
mov (8) DEST_A(7)<1> ubAVS_RESPONSE(15,8+1)<16;4,2>
 
// Move second 8x8 words of B to dest GRF
mov (8) DEST_B(0,8)<1> ubAVS_RESPONSE_2(4,1)<16;4,2>
mov (8) DEST_B(1,8)<1> ubAVS_RESPONSE_2(4,8+1)<16;4,2>
mov (8) DEST_B(2,8)<1> ubAVS_RESPONSE_2(5,1)<16;4,2>
mov (8) DEST_B(3,8)<1> ubAVS_RESPONSE_2(5,8+1)<16;4,2>
mov (8) DEST_B(4,8)<1> ubAVS_RESPONSE_2(12,1)<16;4,2>
mov (8) DEST_B(5,8)<1> ubAVS_RESPONSE_2(12,8+1)<16;4,2>
mov (8) DEST_B(6,8)<1> ubAVS_RESPONSE_2(13,1)<16;4,2>
mov (8) DEST_B(7,8)<1> ubAVS_RESPONSE_2(13,8+1)<16;4,2>
 
// Move second 8x8 words of G to dest GRF
mov (8) DEST_G(0,8)<1> ubAVS_RESPONSE_2(2,1)<16;4,2>
mov (8) DEST_G(1,8)<1> ubAVS_RESPONSE_2(2,8+1)<16;4,2>
mov (8) DEST_G(2,8)<1> ubAVS_RESPONSE_2(3,1)<16;4,2>
mov (8) DEST_G(3,8)<1> ubAVS_RESPONSE_2(3,8+1)<16;4,2>
mov (8) DEST_G(4,8)<1> ubAVS_RESPONSE_2(10,1)<16;4,2>
mov (8) DEST_G(5,8)<1> ubAVS_RESPONSE_2(10,8+1)<16;4,2>
mov (8) DEST_G(6,8)<1> ubAVS_RESPONSE_2(11,1)<16;4,2>
mov (8) DEST_G(7,8)<1> ubAVS_RESPONSE_2(11,8+1)<16;4,2>
 
// Move second 8x8 words of R to dest GRF
mov (8) DEST_R(0,8)<1> ubAVS_RESPONSE_2(0,1)<16;4,2>
mov (8) DEST_R(1,8)<1> ubAVS_RESPONSE_2(0,8+1)<16;4,2>
mov (8) DEST_R(2,8)<1> ubAVS_RESPONSE_2(1,1)<16;4,2>
mov (8) DEST_R(3,8)<1> ubAVS_RESPONSE_2(1,8+1)<16;4,2>
mov (8) DEST_R(4,8)<1> ubAVS_RESPONSE_2(8,1)<16;4,2>
mov (8) DEST_R(5,8)<1> ubAVS_RESPONSE_2(8,8+1)<16;4,2>
mov (8) DEST_R(6,8)<1> ubAVS_RESPONSE_2(9,1)<16;4,2>
mov (8) DEST_R(7,8)<1> ubAVS_RESPONSE_2(9,8+1)<16;4,2>
 
// Move second 8x8 words of A to dest GRF
mov (8) DEST_A(0,8)<1> ubAVS_RESPONSE_2(6,1)<16;4,2>
mov (8) DEST_A(1,8)<1> ubAVS_RESPONSE_2(6,8+1)<16;4,2>
mov (8) DEST_A(2,8)<1> ubAVS_RESPONSE_2(7,1)<16;4,2>
mov (8) DEST_A(3,8)<1> ubAVS_RESPONSE_2(7,8+1)<16;4,2>
mov (8) DEST_A(4,8)<1> ubAVS_RESPONSE_2(14,1)<16;4,2>
mov (8) DEST_A(5,8)<1> ubAVS_RESPONSE_2(14,8+1)<16;4,2>
mov (8) DEST_A(6,8)<1> ubAVS_RESPONSE_2(15,1)<16;4,2>
mov (8) DEST_A(7,8)<1> ubAVS_RESPONSE_2(15,8+1)<16;4,2>
#endif
//------------------------------------------------------------------------------
 
// Set to write bottom region to memory
#define SRC_REGION REGION_1
// Re-define new # of lines
#undef nUV_NUM_OF_ROWS
#undef nY_NUM_OF_ROWS
#define nY_NUM_OF_ROWS 8
#define nUV_NUM_OF_ROWS 8
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/RGB_Scaling.asm
0,0 → 1,72
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
//---------- RGB_Scaling.asm ----------
#include "Scaling.inc"
 
// Build 16 elements ramp in float32 and normalized it
// mov (8) SAMPLER_RAMP(0)<1> 0x76543210:v
// add (8) SAMPLER_RAMP(1)<1> SAMPLER_RAMP(0) 8.0:f
mov (4) SAMPLER_RAMP(0)<1> 0x48403000:vf //3, 2, 1, 0 in float vector
mov (4) SAMPLER_RAMP(0,4)<1> 0x5C585450:vf //7, 6, 5, 4 in float vector
add (8) SAMPLER_RAMP(1)<1> SAMPLER_RAMP(0) 8.0:f
 
//Module: PrepareScaleCoord.asm
 
// Setup for sampler msg hdr
mov (2) rMSGSRC.0<1>:ud 0:ud { NoDDClr } // Unused fields
mov (1) rMSGSRC.2<1>:ud 0:ud { NoDDChk } // Write and offset
 
// Calculate 16 v based on the step Y and vertical origin
mov (16) mfMSGPAYLOAD(2)<1> fSRC_VID_V_ORI<0;1,0>:f
mov (16) SCALE_COORD_Y<1>:f fSRC_VID_V_ORI<0;1,0>:f
 
// Calculate 16 u based on the step X and hori origin
// line (16) mfMSGPAYLOAD(0)<1> SCALE_STEP_X<0;1,0>:f SAMPLER_RAMP(0) // Assign to mrf directly
mov (16) acc0:f fSRC_VID_H_ORI<0;1,0>:f { Compr }
mac (16) mfMSGPAYLOAD(0)<1> fVIDEO_STEP_X<0;1,0>:f SAMPLER_RAMP(0) { Compr }
 
//Setup the constants for line instruction
mov (1) SCALE_LINE_P255<1>:f 255.0:f { NoDDClr } //{ NoDDClr, NoDDChk }
mov (1) SCALE_LINE_P0_5<1>:f 0.5:f { NoDDChk }
 
//------------------------------------------------------------------------------
 
$for (0; <nY_NUM_OF_ROWS; 1) {
 
// Read 16 sampled pixels and store them in float32 in 8 GRFs in the order of BGRA (VYUA).
mov (8) MSGHDR_SCALE.0:ud rMSGSRC.0<8;8,1>:ud // Copy msg header and payload mirrors to MRFs
send (16) SCALE_RESPONSE_YW(0)<1> MSGHDR_SCALE udDUMMY_NULL nSMPL_ENGINE SMPLR_MSG_DSC+nSI_SRC_SIMD16_RGB+nBI_CURRENT_SRC_RGB
 
// Calculate 16 v for next line
add (16) mfMSGPAYLOAD(2)<1> SCALE_COORD_Y<8;8,1>:f fVIDEO_STEP_Y<0;1,0>:f // Assign to mrf directly
add (16) SCALE_COORD_Y<1>:f SCALE_COORD_Y<8;8,1>:f fVIDEO_STEP_Y<0;1,0>:f // Assign to mrf directly
 
// Scale back to [0, 255], convert f to ud
line (16) acc0:f SCALE_LINE_P255<0;1,0>:f SCALE_RESPONSE_YF(0) { Compr } // Process B, V
mov (16) SCALE_RESPONSE_YD(0)<1> acc0:f { Compr }
 
line (16) acc0:f SCALE_LINE_P255<0;1,0>:f SCALE_RESPONSE_YF(2) { Compr } // Process B, V
mov (16) SCALE_RESPONSE_YD(2)<1> acc0:f { Compr }
 
line (16) acc0:f SCALE_LINE_P255<0;1,0>:f SCALE_RESPONSE_YF(4) { Compr } // Process B, V
mov (16) SCALE_RESPONSE_YD(4)<1> acc0:f { Compr }
 
//#if defined(SAVE_ARGB) //Only needed if Alpha value is written to the destination
line (16) acc0:f SCALE_LINE_P255<0;1,0>:f SCALE_RESPONSE_YF(6) { Compr } // Process B, V
mov (16) SCALE_RESPONSE_YD(6)<1> acc0:f { Compr }
//#endif
 
mov (16) DEST_R(%1)<1> SCALE_RESPONSE_YB(0) //possible error due to truncation - vK
mov (16) DEST_G(%1)<1> SCALE_RESPONSE_YB(2) //possible error due to truncation - vK
mov (16) DEST_B(%1)<1> SCALE_RESPONSE_YB(4) //possible error due to truncation - vK
mov (16) DEST_A(%1)<1> SCALE_RESPONSE_YB(6) //possible error due to truncation - vK
}
/drivers/video/i965/shaders/post_processing/gen5_6/Core_Kernels/Scaling.inc
0,0 → 1,75
/*
* All Video Processing kernels
* Copyright © <2010>, Intel Corporation.
*
* This program is licensed under the terms and conditions of the
* Eclipse Public License (EPL), version 1.0. The full text of the EPL is at
* http://www.opensource.org/licenses/eclipse-1.0.php.
*
*/
 
// File name: Scaling.inc
 
#ifndef _SCALING_INC_
#define _SCALING_INC_
 
// Local variables----------------------------------------------------------------------------------
#define MSGHDR_SCALE m1 // Message Payload Header (Uses m2, m3, m4, m5 implicitly)
 
//--------------------------------------------------------------------------------------------------
//r10.0 thru r33.0; Primary surface read from sampler (16x8)
#define DEST_Y uwTOP_Y
#define DEST_U uwTOP_U
#define DEST_V uwTOP_V
 
//r10.0 thru r41.0
.declare DEST_B Base=REG(r,10) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
.declare DEST_G Base=REG(r,18) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
.declare DEST_R Base=REG(r,26) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
.declare DEST_A Base=REG(r,34) ElementSize=2 SrcRegion=REGION(8,1) DstRegion=<1> Type=uw
 
//r56.0 thru r79.0
.declare SCALE_RESPONSE_YF Base=REG(r,nBOT_Y) ElementSize=4 SrcRegion=REGION(8,1) Type=f
.declare SCALE_RESPONSE_UF Base=REG(r,nBOT_U) ElementSize=4 SrcRegion=REGION(8,1) Type=f
.declare SCALE_RESPONSE_VF Base=REG(r,nBOT_V) ElementSize=4 SrcRegion=REGION(8,1) Type=f
 
.declare SCALE_RESPONSE_YW Base=REG(r,nBOT_Y) ElementSize=2 SrcRegion=REGION(16,1) Type=uw
.declare SCALE_RESPONSE_UW Base=REG(r,nBOT_U) ElementSize=2 SrcRegion=REGION(16,1) Type=uw
.declare SCALE_RESPONSE_VW Base=REG(r,nBOT_V) ElementSize=2 SrcRegion=REGION(16,1) Type=uw
 
.declare SCALE_RESPONSE_YD Base=REG(r,nBOT_Y) ElementSize=4 SrcRegion=REGION(8,1) Type=ud
.declare SCALE_RESPONSE_UD Base=REG(r,nBOT_U) ElementSize=4 SrcRegion=REGION(8,1) Type=ud
.declare SCALE_RESPONSE_VD Base=REG(r,nBOT_V) ElementSize=4 SrcRegion=REGION(8,1) Type=ud
 
.declare SCALE_RESPONSE_YB Base=REG(r,nBOT_Y) ElementSize=1 SrcRegion=REGION(8,4) Type=ub
.declare SCALE_RESPONSE_UB Base=REG(r,nBOT_U) ElementSize=1 SrcRegion=REGION(8,4) Type=ub
.declare SCALE_RESPONSE_VB Base=REG(r,nBOT_V) ElementSize=1 SrcRegion=REGION(8,4) Type=ub
 
.declare SAMPLER_RAMP Base=REG(r,42) ElementSize=4 SrcRegion=<8;8,1> Type=f // 2 GRFs, 16 elements
 
//#define SCALE_STEP_X REG2(r,43,0)
//#define SCALE_COORD_X REG2(r,43,3)
 
#define SCALE_LINE_P255 REG2(r,43,4) // = 255.0 Used in 'line' inst to multiply 255, add 0.5, and round to int.
#define SCALE_LINE_P0_5 REG2(r,43,7) // = 0.5
 
//r44.0 thru r45.0
#define SCALE_COORD_Y REG(r,44) //2GRF
 
 
// Send Message [DevILK] Message Descriptor
// MBZ MsgL=5 MsgR=8 H MBZ SIMD MsgType SmplrIndx BindTab
// 000 0 101 0 1000 1 0 10 0000 0000 00000000
// 0 A 8 A 0 0 0 0
// MsgL=1+2*2(u,v)=5 MsgR=8
#define SMPLR_MSG_DSC 0x0A8A0000 // ILK Sampler Message Descriptor
 
// Re-define new number of lines
#undef nY_NUM_OF_ROWS
#undef nUV_NUM_OF_ROWS
 
#define nY_NUM_OF_ROWS 8
#define nUV_NUM_OF_ROWS 8
 
 
#endif //_SCALING_INC_
/drivers/video/i965/shaders/post_processing/gen5_6/null.g4a
0,0 → 1,3
/* Just for test */
 
send(16) 0 acc0<1>UW g0<8,8,1>UW thread_spawner(0, 0, 0) mlen 1 rlen 0 {align1 EOT};
/drivers/video/i965/shaders/post_processing/gen5_6/null.g4b
0,0 → 1,0
{ 0x00800031, 0x24001d28, 0x008d0000, 0x87100000 },
/drivers/video/i965/shaders/post_processing/gen5_6/null.g4b.gen5
0,0 → 1,0
{ 0x00800031, 0x24001d28, 0x748d0000, 0x82000000 },
/drivers/video/i965/shaders/post_processing/gen5_6/null.g6a
0,0 → 1,3
/* Just for test */
 
send(16) 0 acc0<1>UW g0<8,8,1>UW thread_spawner(0, 0, 0) mlen 1 rlen 0 {align1 EOT};
/drivers/video/i965/shaders/post_processing/gen5_6/null.g6b
0,0 → 1,0
{ 0x07800031, 0x24001cc8, 0x00000000, 0x82000000 },
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_avs_nv12.asm
0,0 → 1,20
// Module name: NV12_AVS_NV12
.kernel NV12_AVS_NV12
.code
 
#define INC_SCALING
#include "SetupVPKernel.asm"
#include "Multiple_Loop_Head.asm"
#include "PL2_AVS_IEF_16x8.asm"
#include "PL16x8_PL8x4.asm"
#include "PL8x4_Save_NV12.asm"
#include "Multiple_Loop.asm"
 
END_THREAD // End of Thread
 
.end_code
 
.end_kernel
 
// end of nv12_avs_nv12.asm
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_avs_nv12.g4b.gen5
0,0 → 1,170
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x01000005, 0x20002d2c, 0x00000088, 0x80008000 },
{ 0x00010001, 0x20c003fd, 0x00000000, 0x00000000 },
{ 0x00000001, 0x212003bd, 0x000000c0, 0x00000000 },
{ 0x00000001, 0x212403bd, 0x000000bc, 0x00000000 },
{ 0x00000001, 0x213403bd, 0x00000038, 0x00000000 },
{ 0x00200001, 0x612803bd, 0x004500a4, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0000d000 },
{ 0x00802001, 0x20000022, 0x008d0100, 0x00000000 },
{ 0x00000031, 0x25401c09, 0x208d0000, 0x044bb401 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0000a000 },
{ 0x00802001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x02000031, 0x25c01c09, 0x208d0000, 0x048bb802 },
{ 0x00000001, 0x240803bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x000000bc, 0x41000000 },
{ 0x00000048, 0x21287fbd, 0x000000c0, 0x41e00000 },
{ 0x00000001, 0x240403bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x21247fbd, 0x000000c0, 0x41000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0000d000 },
{ 0x00802001, 0x20000022, 0x008d0100, 0x00000000 },
{ 0x00000031, 0x27401c09, 0x208d0000, 0x044bb401 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0000a000 },
{ 0x00802001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x02000031, 0x27c01c09, 0x208d0000, 0x048bb802 },
{ 0x00600001, 0x21400229, 0x00aa0541, 0x00000000 },
{ 0x00600001, 0x21600229, 0x00aa0549, 0x00000000 },
{ 0x00600001, 0x21800229, 0x00aa0561, 0x00000000 },
{ 0x00600001, 0x21a00229, 0x00aa0569, 0x00000000 },
{ 0x00600001, 0x21c00229, 0x00aa0581, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x00aa0589, 0x00000000 },
{ 0x00600001, 0x22000229, 0x00aa05a1, 0x00000000 },
{ 0x00600001, 0x22200229, 0x00aa05a9, 0x00000000 },
{ 0x00600001, 0x22400229, 0x00aa05c1, 0x00000000 },
{ 0x00600001, 0x22600229, 0x00aa05c9, 0x00000000 },
{ 0x00600001, 0x22800229, 0x00aa05e1, 0x00000000 },
{ 0x00600001, 0x22a00229, 0x00aa05e9, 0x00000000 },
{ 0x00600001, 0x22c00229, 0x00aa0641, 0x00000000 },
{ 0x00600001, 0x22e00229, 0x00aa0649, 0x00000000 },
{ 0x00600001, 0x23000229, 0x00aa0661, 0x00000000 },
{ 0x00600001, 0x23200229, 0x00aa0669, 0x00000000 },
{ 0x00600001, 0x23400229, 0x00aa0601, 0x00000000 },
{ 0x00600001, 0x23600229, 0x00aa0609, 0x00000000 },
{ 0x00600001, 0x23800229, 0x00aa0621, 0x00000000 },
{ 0x00600001, 0x23a00229, 0x00aa0629, 0x00000000 },
{ 0x00600001, 0x23c00229, 0x00aa0681, 0x00000000 },
{ 0x00600001, 0x23e00229, 0x00aa0689, 0x00000000 },
{ 0x00600001, 0x24000229, 0x00aa06a1, 0x00000000 },
{ 0x00600001, 0x24200229, 0x00aa06a9, 0x00000000 },
{ 0x00600001, 0x21500229, 0x00aa0741, 0x00000000 },
{ 0x00600001, 0x21700229, 0x00aa0749, 0x00000000 },
{ 0x00600001, 0x21900229, 0x00aa0761, 0x00000000 },
{ 0x00600001, 0x21b00229, 0x00aa0769, 0x00000000 },
{ 0x00600001, 0x21d00229, 0x00aa0781, 0x00000000 },
{ 0x00600001, 0x21f00229, 0x00aa0789, 0x00000000 },
{ 0x00600001, 0x22100229, 0x00aa07a1, 0x00000000 },
{ 0x00600001, 0x22300229, 0x00aa07a9, 0x00000000 },
{ 0x00600001, 0x22500229, 0x00aa07c1, 0x00000000 },
{ 0x00600001, 0x22700229, 0x00aa07c9, 0x00000000 },
{ 0x00600001, 0x22900229, 0x00aa07e1, 0x00000000 },
{ 0x00600001, 0x22b00229, 0x00aa07e9, 0x00000000 },
{ 0x00600001, 0x22d00229, 0x00aa0841, 0x00000000 },
{ 0x00600001, 0x22f00229, 0x00aa0849, 0x00000000 },
{ 0x00600001, 0x23100229, 0x00aa0861, 0x00000000 },
{ 0x00600001, 0x23300229, 0x00aa0869, 0x00000000 },
{ 0x00600001, 0x23500229, 0x00aa0801, 0x00000000 },
{ 0x00600001, 0x23700229, 0x00aa0809, 0x00000000 },
{ 0x00600001, 0x23900229, 0x00aa0821, 0x00000000 },
{ 0x00600001, 0x23b00229, 0x00aa0829, 0x00000000 },
{ 0x00600001, 0x23d00229, 0x00aa0881, 0x00000000 },
{ 0x00600001, 0x23f00229, 0x00aa0889, 0x00000000 },
{ 0x00600001, 0x24100229, 0x00aa08a1, 0x00000000 },
{ 0x00600001, 0x24300229, 0x00aa08a9, 0x00000000 },
{ 0x00600001, 0x22400129, 0x00ae0240, 0x00000000 },
{ 0x00600001, 0x23400129, 0x00ae0340, 0x00000000 },
{ 0x00600001, 0x22500129, 0x00ae0280, 0x00000000 },
{ 0x00600001, 0x23500129, 0x00ae0380, 0x00000000 },
{ 0x00600001, 0x22600129, 0x00ae02c0, 0x00000000 },
{ 0x00600001, 0x23600129, 0x00ae03c0, 0x00000000 },
{ 0x00600001, 0x22700129, 0x00ae0300, 0x00000000 },
{ 0x00600001, 0x23700129, 0x00ae0400, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00200001, 0x202001a6, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x20280062, 0x00000000, 0x0007000f },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000056 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0248a007 },
{ 0x0000040c, 0x21043da1, 0x000000a2, 0x00010001 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x28000c01, 0x408d0000, 0x0228a008 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26020228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x020000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x02000000, 0x00000000 },
{ 0x00000001, 0x24600061, 0x00000000, 0x00040001 },
{ 0x00000001, 0x24640061, 0x00000000, 0x00400010 },
{ 0x00000001, 0x24680061, 0x00000000, 0x04000100 },
{ 0x00000001, 0x246c0061, 0x00000000, 0x40001000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000440, 0x008d0460 },
{ 0x00710001, 0x42400231, 0x02ae0800, 0x00000000 },
{ 0x00710001, 0x43400231, 0x02ae0801, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41600231, 0x02b10710, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000444, 0x008d0460 },
{ 0x00710001, 0x42500231, 0x02ae0810, 0x00000000 },
{ 0x00710001, 0x43500231, 0x02ae0811, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41a00231, 0x02b10730, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000448, 0x008d0460 },
{ 0x00710001, 0x42600231, 0x02ae0820, 0x00000000 },
{ 0x00710001, 0x43600231, 0x02ae0821, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41e00231, 0x02b10750, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x0200044c, 0x008d0460 },
{ 0x00710001, 0x42700231, 0x02ae0830, 0x00000000 },
{ 0x00710001, 0x43700231, 0x02ae0831, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42200231, 0x02b10770, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x0a082007 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x40400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x40410232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x40600232, 0x00d20260, 0x00000000 },
{ 0x00800001, 0x40610232, 0x00d20360, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x06082008 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00000041, 0x24407fbd, 0x000000bc, 0x41800000 },
{ 0x00000040, 0x20a477bd, 0x00000440, 0x000000a4 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010220, 0x34001c00, 0x02001400, 0xfffffece },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000001, 0x20a403bd, 0x00000094, 0x00000000 },
{ 0x00000041, 0x24407fbd, 0x00000038, 0x41000000 },
{ 0x00000040, 0x20a877bd, 0x00000440, 0x000000a8 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffec2 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_avs_nv12.g6b
0,0 → 1,243
{ 0x00600001, 0x20e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x01000005, 0x20002d2c, 0x00000088, 0x80008000 },
{ 0x00010001, 0x20c003fd, 0x00000000, 0x00000000 },
{ 0x00000001, 0x212003bd, 0x000000c0, 0x00000000 },
{ 0x00000001, 0x212403bd, 0x000000bc, 0x00000000 },
{ 0x00000001, 0x213403bd, 0x00000038, 0x00000000 },
{ 0x00200001, 0x612803bd, 0x004500a4, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0000d000 },
{ 0x00800001, 0x20000022, 0x008d0100, 0x00000000 },
{ 0x02000031, 0x25401cc9, 0x00000000, 0x044bb401 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0000a000 },
{ 0x00800001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x02000031, 0x25c01cc9, 0x00000040, 0x048bb802 },
{ 0x00000001, 0x240803bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x000000bc, 0x41000000 },
{ 0x00000048, 0x21287fbd, 0x000000c0, 0x41e00000 },
{ 0x00000001, 0x240403bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x21247fbd, 0x000000c0, 0x41000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0000d000 },
{ 0x00800001, 0x20000022, 0x008d0100, 0x00000000 },
{ 0x02000031, 0x27401cc9, 0x00000000, 0x044bb401 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0000a000 },
{ 0x00800001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x02000031, 0x27c01cc9, 0x00000040, 0x048bb802 },
{ 0x00600001, 0x21400229, 0x00aa0541, 0x00000000 },
{ 0x00600001, 0x21600229, 0x00aa0549, 0x00000000 },
{ 0x00600001, 0x21800229, 0x00aa0561, 0x00000000 },
{ 0x00600001, 0x21a00229, 0x00aa0569, 0x00000000 },
{ 0x00600001, 0x21c00229, 0x00aa0581, 0x00000000 },
{ 0x00600001, 0x21e00229, 0x00aa0589, 0x00000000 },
{ 0x00600001, 0x22000229, 0x00aa05a1, 0x00000000 },
{ 0x00600001, 0x22200229, 0x00aa05a9, 0x00000000 },
{ 0x00600001, 0x22400229, 0x00aa05c1, 0x00000000 },
{ 0x00600001, 0x22600229, 0x00aa05c9, 0x00000000 },
{ 0x00600001, 0x22800229, 0x00aa05e1, 0x00000000 },
{ 0x00600001, 0x22a00229, 0x00aa05e9, 0x00000000 },
{ 0x00600001, 0x22c00229, 0x00aa0641, 0x00000000 },
{ 0x00600001, 0x22e00229, 0x00aa0649, 0x00000000 },
{ 0x00600001, 0x23000229, 0x00aa0661, 0x00000000 },
{ 0x00600001, 0x23200229, 0x00aa0669, 0x00000000 },
{ 0x00600001, 0x23400229, 0x00aa0601, 0x00000000 },
{ 0x00600001, 0x23600229, 0x00aa0609, 0x00000000 },
{ 0x00600001, 0x23800229, 0x00aa0621, 0x00000000 },
{ 0x00600001, 0x23a00229, 0x00aa0629, 0x00000000 },
{ 0x00600001, 0x23c00229, 0x00aa0681, 0x00000000 },
{ 0x00600001, 0x23e00229, 0x00aa0689, 0x00000000 },
{ 0x00600001, 0x24000229, 0x00aa06a1, 0x00000000 },
{ 0x00600001, 0x24200229, 0x00aa06a9, 0x00000000 },
{ 0x00600001, 0x21500229, 0x00aa0741, 0x00000000 },
{ 0x00600001, 0x21700229, 0x00aa0749, 0x00000000 },
{ 0x00600001, 0x21900229, 0x00aa0761, 0x00000000 },
{ 0x00600001, 0x21b00229, 0x00aa0769, 0x00000000 },
{ 0x00600001, 0x21d00229, 0x00aa0781, 0x00000000 },
{ 0x00600001, 0x21f00229, 0x00aa0789, 0x00000000 },
{ 0x00600001, 0x22100229, 0x00aa07a1, 0x00000000 },
{ 0x00600001, 0x22300229, 0x00aa07a9, 0x00000000 },
{ 0x00600001, 0x22500229, 0x00aa07c1, 0x00000000 },
{ 0x00600001, 0x22700229, 0x00aa07c9, 0x00000000 },
{ 0x00600001, 0x22900229, 0x00aa07e1, 0x00000000 },
{ 0x00600001, 0x22b00229, 0x00aa07e9, 0x00000000 },
{ 0x00600001, 0x22d00229, 0x00aa0841, 0x00000000 },
{ 0x00600001, 0x22f00229, 0x00aa0849, 0x00000000 },
{ 0x00600001, 0x23100229, 0x00aa0861, 0x00000000 },
{ 0x00600001, 0x23300229, 0x00aa0869, 0x00000000 },
{ 0x00600001, 0x23500229, 0x00aa0801, 0x00000000 },
{ 0x00600001, 0x23700229, 0x00aa0809, 0x00000000 },
{ 0x00600001, 0x23900229, 0x00aa0821, 0x00000000 },
{ 0x00600001, 0x23b00229, 0x00aa0829, 0x00000000 },
{ 0x00600001, 0x23d00229, 0x00aa0881, 0x00000000 },
{ 0x00600001, 0x23f00229, 0x00aa0889, 0x00000000 },
{ 0x00600001, 0x24100229, 0x00aa08a1, 0x00000000 },
{ 0x00600001, 0x24300229, 0x00aa08a9, 0x00000000 },
{ 0x00600001, 0x22400129, 0x00ae0240, 0x00000000 },
{ 0x00600001, 0x23400129, 0x00ae0340, 0x00000000 },
{ 0x00600001, 0x22500129, 0x00ae0280, 0x00000000 },
{ 0x00600001, 0x23500129, 0x00ae0380, 0x00000000 },
{ 0x00600001, 0x22600129, 0x00ae02c0, 0x00000000 },
{ 0x00600001, 0x23600129, 0x00ae03c0, 0x00000000 },
{ 0x00600001, 0x22700129, 0x00ae0300, 0x00000000 },
{ 0x00600001, 0x23700129, 0x00ae0400, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00200001, 0x202001a6, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x20280062, 0x00000000, 0x0007000f },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000056 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02498007 },
{ 0x0000040c, 0x21043da1, 0x000000a2, 0x00010001 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000020, 0x02298008 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26020228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x020000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x02000000, 0x00000000 },
{ 0x00000001, 0x24600061, 0x00000000, 0x00040001 },
{ 0x00000001, 0x24640061, 0x00000000, 0x00400010 },
{ 0x00000001, 0x24680061, 0x00000000, 0x04000100 },
{ 0x00000001, 0x246c0061, 0x00000000, 0x40001000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000440, 0x008d0460 },
{ 0x00710001, 0x42400231, 0x02ae0800, 0x00000000 },
{ 0x00710001, 0x43400231, 0x02ae0801, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41600231, 0x02b10710, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000444, 0x008d0460 },
{ 0x00710001, 0x42500231, 0x02ae0810, 0x00000000 },
{ 0x00710001, 0x43500231, 0x02ae0811, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41a00231, 0x02b10730, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000448, 0x008d0460 },
{ 0x00710001, 0x42600231, 0x02ae0820, 0x00000000 },
{ 0x00710001, 0x43600231, 0x02ae0821, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41e00231, 0x02b10750, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x0200044c, 0x008d0460 },
{ 0x00710001, 0x42700231, 0x02ae0830, 0x00000000 },
{ 0x00710001, 0x43700231, 0x02ae0831, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42200231, 0x02b10770, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x0a094007 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x40400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x40410232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x40600232, 0x00d20260, 0x00000000 },
{ 0x00800001, 0x40610232, 0x00d20360, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x06094008 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00000041, 0x24407fbd, 0x000000bc, 0x41800000 },
{ 0x00000040, 0x20a477bd, 0x00000440, 0x000000a4 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010220, 0x34001c00, 0x02001400, 0xfffffece },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000001, 0x20a403bd, 0x00000094, 0x00000000 },
{ 0x00000041, 0x24407fbd, 0x00000038, 0x41000000 },
{ 0x00000040, 0x20a877bd, 0x00000440, 0x000000a8 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffec2 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_dn_nv12.asm
0,0 → 1,26
// Module name: NV12_DN_NV12
.kernel NV12_DN_NV12
.code
 
#define INC_DN
#include "SetupVPKernel.asm"
#include "Multiple_Loop_Head.asm"
 
#define LOAD_UV_ONLY
#include "NV12_Load_8x4.asm"
#undef LOAD_UV_ONLY
 
#include "PL_DN_ALG.asm"
#include "PL8x4_Save_NV12.asm"
#include "Multiple_Loop.asm"
 
END_THREAD // End of Thread
 
.end_code
 
.end_kernel
 
// end of nv12_dn_nv12.asm
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_dn_nv12.g4b.gen5
0,0 → 1,113
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x02600031, 0x28000c01, 0x408d0000, 0x0228a002 },
{ 0x00800001, 0x22600229, 0x00d20820, 0x00000000 },
{ 0x00800001, 0x23600229, 0x00d20821, 0x00000000 },
{ 0x00800001, 0x22400229, 0x00d20800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x00d20801, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x204801aa, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x205801aa, 0x000000a2, 0x00000000 },
{ 0x01600031, 0x24400c01, 0x208d0000, 0x045b8004 },
{ 0x00800001, 0x21400229, 0x00b10440, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10450, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10460, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10470, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b10480, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b10490, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b104a0, 0x00000000 },
{ 0x00800001, 0x22200229, 0x00b104b0, 0x00000000 },
{ 0x00200008, 0x21003da1, 0x004500a0, 0x00020002 },
{ 0x00000040, 0x21002421, 0x00000100, 0x00000034 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00010003 },
{ 0x00600001, 0x21a00022, 0x008d0100, 0x00000000 },
{ 0x00200001, 0x21c00022, 0x004504c0, 0x00000000 },
{ 0x0d600031, 0x20000c04, 0x508d0000, 0x04082014 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00200001, 0x202001a6, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x20280062, 0x00000000, 0x0007000f },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000056 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0248a007 },
{ 0x0000040c, 0x21043da1, 0x000000a2, 0x00010001 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x28000c01, 0x408d0000, 0x0228a008 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26020228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x020000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x02000000, 0x00000000 },
{ 0x00000001, 0x24600061, 0x00000000, 0x00040001 },
{ 0x00000001, 0x24640061, 0x00000000, 0x00400010 },
{ 0x00000001, 0x24680061, 0x00000000, 0x04000100 },
{ 0x00000001, 0x246c0061, 0x00000000, 0x40001000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000440, 0x008d0460 },
{ 0x00710001, 0x42400231, 0x02ae0800, 0x00000000 },
{ 0x00710001, 0x43400231, 0x02ae0801, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41600231, 0x02b10710, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000444, 0x008d0460 },
{ 0x00710001, 0x42500231, 0x02ae0810, 0x00000000 },
{ 0x00710001, 0x43500231, 0x02ae0811, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41a00231, 0x02b10730, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000448, 0x008d0460 },
{ 0x00710001, 0x42600231, 0x02ae0820, 0x00000000 },
{ 0x00710001, 0x43600231, 0x02ae0821, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41e00231, 0x02b10750, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x0200044c, 0x008d0460 },
{ 0x00710001, 0x42700231, 0x02ae0830, 0x00000000 },
{ 0x00710001, 0x43700231, 0x02ae0831, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42200231, 0x02b10770, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x0a082007 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x40400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x40410232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x40600232, 0x00d20260, 0x00000000 },
{ 0x00800001, 0x40610232, 0x00d20360, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x06082008 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff3a },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff34 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_dn_nv12.g6b
0,0 → 1,186
{ 0x00600001, 0x20e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000040, 0x02298002 },
{ 0x00800001, 0x22600229, 0x00d20820, 0x00000000 },
{ 0x00800001, 0x23600229, 0x00d20821, 0x00000000 },
{ 0x00800001, 0x22400229, 0x00d20800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x00d20801, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x204801aa, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x205801aa, 0x000000a2, 0x00000000 },
{ 0x02600031, 0x24400cc1, 0x00000020, 0x045b8004 },
{ 0x00800001, 0x21400229, 0x00b10440, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10450, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10460, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10470, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b10480, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b10490, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b104a0, 0x00000000 },
{ 0x00800001, 0x22200229, 0x00b104b0, 0x00000000 },
{ 0x00200008, 0x21003da1, 0x004500a0, 0x00020002 },
{ 0x00000040, 0x21002421, 0x00000100, 0x00000034 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00010003 },
{ 0x00600001, 0x21a00022, 0x008d0100, 0x00000000 },
{ 0x00200001, 0x21c00022, 0x004504c0, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x000001a0, 0x04094014 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00200001, 0x202001a6, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x20280062, 0x00000000, 0x0007000f },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000056 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02498007 },
{ 0x0000040c, 0x21043da1, 0x000000a2, 0x00010001 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000020, 0x02298008 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26020228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x020000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x02000000, 0x00000000 },
{ 0x00000001, 0x24600061, 0x00000000, 0x00040001 },
{ 0x00000001, 0x24640061, 0x00000000, 0x00400010 },
{ 0x00000001, 0x24680061, 0x00000000, 0x04000100 },
{ 0x00000001, 0x246c0061, 0x00000000, 0x40001000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000440, 0x008d0460 },
{ 0x00710001, 0x42400231, 0x02ae0800, 0x00000000 },
{ 0x00710001, 0x43400231, 0x02ae0801, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41600231, 0x02b10710, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000444, 0x008d0460 },
{ 0x00710001, 0x42500231, 0x02ae0810, 0x00000000 },
{ 0x00710001, 0x43500231, 0x02ae0811, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41a00231, 0x02b10730, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000448, 0x008d0460 },
{ 0x00710001, 0x42600231, 0x02ae0820, 0x00000000 },
{ 0x00710001, 0x43600231, 0x02ae0821, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41e00231, 0x02b10750, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x0200044c, 0x008d0460 },
{ 0x00710001, 0x42700231, 0x02ae0830, 0x00000000 },
{ 0x00710001, 0x43700231, 0x02ae0831, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42200231, 0x02b10770, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x0a094007 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x40400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x40410232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x40600232, 0x00d20260, 0x00000000 },
{ 0x00800001, 0x40610232, 0x00d20360, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x06094008 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff3a },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff34 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_dndi_nv12.asm
0,0 → 1,18
// Module name: NV12_DNDI_NV12
.kernel NV12_DNDI_NV12
.code
 
#define INC_DNDI
#include "SetupVPKernel.asm"
#include "Multiple_Loop_Head.asm"
#include "PL_DNDI_ALG_UVCopy_NV12.asm"
#include "Multiple_Loop.asm"
 
END_THREAD // End of Thread
 
.end_code
 
.end_kernel
 
// end of nv12_dndi_nv12.asm
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_dndi_nv12.g4b.gen5
0,0 → 1,90
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x204801aa, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x205801aa, 0x000000a2, 0x00000000 },
{ 0x01600031, 0x24400c01, 0x208d0000, 0x04cb8004 },
{ 0x00800001, 0x21400229, 0x00b10440, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10450, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10460, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10470, 0x00000000 },
{ 0x00600001, 0x22400229, 0x00ae0481, 0x00000000 },
{ 0x00600001, 0x23400229, 0x00ae0480, 0x00000000 },
{ 0x00600001, 0x22500229, 0x00ae0491, 0x00000000 },
{ 0x00600001, 0x23500229, 0x00ae0490, 0x00000000 },
{ 0x00600001, 0x22600229, 0x00ae04a1, 0x00000000 },
{ 0x00600001, 0x23600229, 0x00ae04a0, 0x00000000 },
{ 0x00600001, 0x22700229, 0x00ae04b1, 0x00000000 },
{ 0x00600001, 0x23700229, 0x00ae04b0, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b104d0, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b104e0, 0x00000000 },
{ 0x00800001, 0x22200229, 0x00b104f0, 0x00000000 },
{ 0x00600001, 0x22800229, 0x00ae0501, 0x00000000 },
{ 0x00600001, 0x23800229, 0x00ae0500, 0x00000000 },
{ 0x00600001, 0x22900229, 0x00ae0511, 0x00000000 },
{ 0x00600001, 0x23900229, 0x00ae0510, 0x00000000 },
{ 0x00600001, 0x22a00229, 0x00ae0521, 0x00000000 },
{ 0x00600001, 0x23a00229, 0x00ae0520, 0x00000000 },
{ 0x00600001, 0x22b00229, 0x00ae0531, 0x00000000 },
{ 0x00600001, 0x23b00229, 0x00ae0530, 0x00000000 },
{ 0x00000008, 0x21003da1, 0x000000a0, 0x00010001 },
{ 0x00000001, 0x210401a1, 0x000000a2, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x21600022, 0x008d0100, 0x00000000 },
{ 0x00600001, 0x21800022, 0x008d0540, 0x00000000 },
{ 0x0b600031, 0x20000c04, 0x508d0000, 0x04082014 },
{ 0x00200008, 0x21003da1, 0x004500a0, 0x00020002 },
{ 0x00000040, 0x21002421, 0x00000100, 0x00000034 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00000003 },
{ 0x00600001, 0x21a00022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x21c00022, 0x00000560, 0x00000000 },
{ 0x0d600031, 0x20000c04, 0x508d0000, 0x04082014 },
{ 0x00400040, 0x22083e28, 0x00690024, 0x07000700 },
{ 0x01000010, 0x20003e2c, 0x0000003b, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00400001, 0x20400022, 0x00690580, 0x00000000 },
{ 0x00400001, 0x20500022, 0x006904d0, 0x00000000 },
{ 0x00400001, 0x20600022, 0x00690590, 0x00000000 },
{ 0x00400001, 0x20700022, 0x006904f0, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00400001, 0x20400022, 0x006904c0, 0x00000000 },
{ 0x00400001, 0x20500022, 0x00690580, 0x00000000 },
{ 0x00400001, 0x20600022, 0x006904e0, 0x00000000 },
{ 0x00400001, 0x20700022, 0x00690590, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b104d0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b104e0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b104f0, 0x00000000 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x06082007 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0001000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x28000c01, 0x408d0000, 0x0218a002 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0001000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00600001, 0x20400022, 0x008d0800, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x04082008 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff68 },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff62 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_dndi_nv12.g6b
0,0 → 1,163
{ 0x00600001, 0x20e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x204801aa, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x205801aa, 0x000000a2, 0x00000000 },
{ 0x02600031, 0x24400cc1, 0x00000020, 0x04cb8004 },
{ 0x00800001, 0x21400229, 0x00b10440, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10450, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10460, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10470, 0x00000000 },
{ 0x00600001, 0x22400229, 0x00ae0481, 0x00000000 },
{ 0x00600001, 0x23400229, 0x00ae0480, 0x00000000 },
{ 0x00600001, 0x22500229, 0x00ae0491, 0x00000000 },
{ 0x00600001, 0x23500229, 0x00ae0490, 0x00000000 },
{ 0x00600001, 0x22600229, 0x00ae04a1, 0x00000000 },
{ 0x00600001, 0x23600229, 0x00ae04a0, 0x00000000 },
{ 0x00600001, 0x22700229, 0x00ae04b1, 0x00000000 },
{ 0x00600001, 0x23700229, 0x00ae04b0, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b104d0, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b104e0, 0x00000000 },
{ 0x00800001, 0x22200229, 0x00b104f0, 0x00000000 },
{ 0x00600001, 0x22800229, 0x00ae0501, 0x00000000 },
{ 0x00600001, 0x23800229, 0x00ae0500, 0x00000000 },
{ 0x00600001, 0x22900229, 0x00ae0511, 0x00000000 },
{ 0x00600001, 0x23900229, 0x00ae0510, 0x00000000 },
{ 0x00600001, 0x22a00229, 0x00ae0521, 0x00000000 },
{ 0x00600001, 0x23a00229, 0x00ae0520, 0x00000000 },
{ 0x00600001, 0x22b00229, 0x00ae0531, 0x00000000 },
{ 0x00600001, 0x23b00229, 0x00ae0530, 0x00000000 },
{ 0x00000008, 0x21003da1, 0x000000a0, 0x00010001 },
{ 0x00000001, 0x210401a1, 0x000000a2, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x21600022, 0x008d0100, 0x00000000 },
{ 0x00600001, 0x21800022, 0x008d0540, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000160, 0x04094014 },
{ 0x00200008, 0x21003da1, 0x004500a0, 0x00020002 },
{ 0x00000040, 0x21002421, 0x00000100, 0x00000034 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00000003 },
{ 0x00600001, 0x21a00022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x21c00022, 0x00000560, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x000001a0, 0x04094014 },
{ 0x00400040, 0x22083e28, 0x00690024, 0x07000700 },
{ 0x01000010, 0x20003e2c, 0x0000003b, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000a },
{ 0x00400001, 0x20400022, 0x00690580, 0x00000000 },
{ 0x00400001, 0x20500022, 0x006904d0, 0x00000000 },
{ 0x00400001, 0x20600022, 0x00690590, 0x00000000 },
{ 0x00400001, 0x20700022, 0x006904f0, 0x00000000 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00400001, 0x20400022, 0x006904c0, 0x00000000 },
{ 0x00400001, 0x20500022, 0x00690580, 0x00000000 },
{ 0x00400001, 0x20600022, 0x006904e0, 0x00000000 },
{ 0x00400001, 0x20700022, 0x00690590, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00b104c0, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00b104d0, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00b104e0, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00b104f0, 0x00000000 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x06094007 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0001000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000020, 0x02198002 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0001000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00600001, 0x20400022, 0x008d0800, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x04094008 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff68 },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff62 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_load_save_nv12.asm
0,0 → 1,17
// Module name: NV12_LOAD_SAVE_NV12
.kernel NV12_LOAD_SAVE_NV12
.code
 
#include "SetupVPKernel.asm"
#include "Multiple_Loop_Head.asm"
#include "NV12_Load_8x4.asm"
#include "PL8x4_Save_NV12.asm"
#include "Multiple_Loop.asm"
 
END_THREAD // End of Thread
 
.end_code
 
.end_kernel
 
// end of nv12_load_save_nv12.asm
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_load_save_nv12.g4b.gen5
0,0 → 1,106
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0248a001 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x02600031, 0x28000c01, 0x408d0000, 0x0228a002 },
{ 0x00800001, 0x22200229, 0x00b10770, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b10760, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b10750, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b10740, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10730, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10720, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10710, 0x00000000 },
{ 0x00800001, 0x21400229, 0x00b10700, 0x00000000 },
{ 0x00800001, 0x22600229, 0x00d20820, 0x00000000 },
{ 0x00800001, 0x23600229, 0x00d20821, 0x00000000 },
{ 0x00800001, 0x22400229, 0x00d20800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x00d20801, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00200001, 0x202001a6, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x20280062, 0x00000000, 0x0007000f },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000056 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0248a007 },
{ 0x0000040c, 0x21043da1, 0x000000a2, 0x00010001 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x28000c01, 0x408d0000, 0x0228a008 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26020228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x020000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x02000000, 0x00000000 },
{ 0x00000001, 0x24600061, 0x00000000, 0x00040001 },
{ 0x00000001, 0x24640061, 0x00000000, 0x00400010 },
{ 0x00000001, 0x24680061, 0x00000000, 0x04000100 },
{ 0x00000001, 0x246c0061, 0x00000000, 0x40001000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000440, 0x008d0460 },
{ 0x00710001, 0x42400231, 0x02ae0800, 0x00000000 },
{ 0x00710001, 0x43400231, 0x02ae0801, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41600231, 0x02b10710, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000444, 0x008d0460 },
{ 0x00710001, 0x42500231, 0x02ae0810, 0x00000000 },
{ 0x00710001, 0x43500231, 0x02ae0811, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41a00231, 0x02b10730, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000448, 0x008d0460 },
{ 0x00710001, 0x42600231, 0x02ae0820, 0x00000000 },
{ 0x00710001, 0x43600231, 0x02ae0821, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41e00231, 0x02b10750, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x0200044c, 0x008d0460 },
{ 0x00710001, 0x42700231, 0x02ae0830, 0x00000000 },
{ 0x00710001, 0x43700231, 0x02ae0831, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42200231, 0x02b10770, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x0a082007 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x40400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x40410232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x40600232, 0x00d20260, 0x00000000 },
{ 0x00800001, 0x40610232, 0x00d20360, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x06082008 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff48 },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff42 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_load_save_nv12.g6b
0,0 → 1,179
{ 0x00600001, 0x20e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02498001 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000040, 0x02298002 },
{ 0x00800001, 0x22200229, 0x00b10770, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b10760, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b10750, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b10740, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10730, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10720, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10710, 0x00000000 },
{ 0x00800001, 0x21400229, 0x00b10700, 0x00000000 },
{ 0x00800001, 0x22600229, 0x00d20820, 0x00000000 },
{ 0x00800001, 0x23600229, 0x00d20821, 0x00000000 },
{ 0x00800001, 0x22400229, 0x00d20800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x00d20801, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00200001, 0x202001a6, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x20280062, 0x00000000, 0x0007000f },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000056 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02498007 },
{ 0x0000040c, 0x21043da1, 0x000000a2, 0x00010001 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000020, 0x02298008 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26020228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x020000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x02000000, 0x00000000 },
{ 0x00000001, 0x24600061, 0x00000000, 0x00040001 },
{ 0x00000001, 0x24640061, 0x00000000, 0x00400010 },
{ 0x00000001, 0x24680061, 0x00000000, 0x04000100 },
{ 0x00000001, 0x246c0061, 0x00000000, 0x40001000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000440, 0x008d0460 },
{ 0x00710001, 0x42400231, 0x02ae0800, 0x00000000 },
{ 0x00710001, 0x43400231, 0x02ae0801, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41600231, 0x02b10710, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000444, 0x008d0460 },
{ 0x00710001, 0x42500231, 0x02ae0810, 0x00000000 },
{ 0x00710001, 0x43500231, 0x02ae0811, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41a00231, 0x02b10730, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000448, 0x008d0460 },
{ 0x00710001, 0x42600231, 0x02ae0820, 0x00000000 },
{ 0x00710001, 0x43600231, 0x02ae0821, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41e00231, 0x02b10750, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x0200044c, 0x008d0460 },
{ 0x00710001, 0x42700231, 0x02ae0830, 0x00000000 },
{ 0x00710001, 0x43700231, 0x02ae0831, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42200231, 0x02b10770, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x0a094007 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x40400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x40410232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x40600232, 0x00d20260, 0x00000000 },
{ 0x00800001, 0x40610232, 0x00d20360, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x06094008 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff48 },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff42 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_load_save_pa.asm
0,0 → 1,18
// Module name: NV12_LOAD_SAVE_pl1
.kernel NV12_LOAD_SAVE_PL1 // what's usage of it? just a name?
.code
 
#include "SetupVPKernel.asm"
#include "Multiple_Loop_Head.asm"
#include "NV12_Load_8x5.asm"
#include "PL8x5_PL8x8.asm"
#include "PL8x8_Save_PA.asm"
#include "Multiple_Loop.asm"
 
END_THREAD // End of Thread
 
.end_code
 
.end_kernel
 
// end of nv12_load_save_pl1.asm
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_load_save_pa.g4b.gen5
0,0 → 1,117
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0248a001 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0004000f },
{ 0x00600001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x02600031, 0x28000c01, 0x408d0000, 0x0238a002 },
{ 0x00800001, 0x22200229, 0x00b10770, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b10760, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b10750, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b10740, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10730, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10720, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10710, 0x00000000 },
{ 0x00800001, 0x21400229, 0x00b10700, 0x00000000 },
{ 0x00800001, 0x22800229, 0x00ae0840, 0x00000000 },
{ 0x00800001, 0x23800229, 0x00ae0841, 0x00000000 },
{ 0x00800001, 0x22600229, 0x00ae0820, 0x00000000 },
{ 0x00800001, 0x23600229, 0x00ae0821, 0x00000000 },
{ 0x00800001, 0x22400229, 0x00ae0800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x00ae0801, 0x00000000 },
{ 0x80600042, 0x22b02529, 0x008d0270, 0x008d0280 },
{ 0x80600042, 0x23b02529, 0x008d0370, 0x008d0380 },
{ 0x00600001, 0x22a00129, 0x008d0270, 0x00000000 },
{ 0x80600042, 0x22902529, 0x008d0260, 0x008d0270 },
{ 0x00600001, 0x23a00129, 0x008d0370, 0x00000000 },
{ 0x80600042, 0x23902529, 0x008d0360, 0x008d0370 },
{ 0x00600001, 0x22800129, 0x008d0260, 0x00000000 },
{ 0x80600042, 0x22702529, 0x008d0250, 0x008d0260 },
{ 0x00600001, 0x23800129, 0x008d0360, 0x00000000 },
{ 0x80600042, 0x23702529, 0x008d0350, 0x008d0360 },
{ 0x00600001, 0x22600129, 0x008d0250, 0x00000000 },
{ 0x80600042, 0x22502529, 0x008d0240, 0x008d0250 },
{ 0x00600001, 0x23600129, 0x008d0350, 0x00000000 },
{ 0x80600042, 0x23502529, 0x008d0340, 0x008d0350 },
{ 0x00400040, 0x22083e28, 0x00690028, 0x07000700 },
{ 0x00800001, 0xd0000231, 0x00d20140, 0x00000000 },
{ 0x00800001, 0xd0200231, 0x00d20160, 0x00000000 },
{ 0x00800001, 0xd0400231, 0x00d20180, 0x00000000 },
{ 0x00800001, 0xd0600231, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0xd0800231, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0xd0a00231, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0xd0c00231, 0x00d20200, 0x00000000 },
{ 0x00800001, 0xd0e00231, 0x00d20220, 0x00000000 },
{ 0x00600001, 0xf4000231, 0x00ae0240, 0x00000000 },
{ 0x00600001, 0xf8000231, 0x00ae0340, 0x00000000 },
{ 0x00600001, 0xf4200231, 0x00ae0250, 0x00000000 },
{ 0x00600001, 0xf8200231, 0x00ae0350, 0x00000000 },
{ 0x00600001, 0xf4400231, 0x00ae0260, 0x00000000 },
{ 0x00600001, 0xf8400231, 0x00ae0360, 0x00000000 },
{ 0x00600001, 0xf4600231, 0x00ae0270, 0x00000000 },
{ 0x00600001, 0xf8600231, 0x00ae0370, 0x00000000 },
{ 0x00600001, 0xf4800231, 0x00ae0280, 0x00000000 },
{ 0x00600001, 0xf8800231, 0x00ae0380, 0x00000000 },
{ 0x00600001, 0xf4a00231, 0x00ae0290, 0x00000000 },
{ 0x00600001, 0xf8a00231, 0x00ae0390, 0x00000000 },
{ 0x00600001, 0xf4c00231, 0x00ae02a0, 0x00000000 },
{ 0x00600001, 0xf8c00231, 0x00ae03a0, 0x00000000 },
{ 0x00600001, 0xf4e00231, 0x00ae02b0, 0x00000000 },
{ 0x00600001, 0xf8e00231, 0x00ae03b0, 0x00000000 },
{ 0x00000409, 0x21003da5, 0x000000a0, 0x00010001 },
{ 0x00000c01, 0x210401a5, 0x000000a2, 0x00000000 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0007001f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000002a },
{ 0x01600031, 0x21400c01, 0x408d0000, 0x0288a007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26000228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x000000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x27000129, 0x02b10140, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x27200129, 0x02b10160, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x27400129, 0x02b10180, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x27600129, 0x02b101a0, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x27800129, 0x02b101c0, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x27a00129, 0x02b101e0, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x27c00129, 0x02b10200, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x27e00129, 0x02b10220, 0x00000000 },
{ 0x00600001, 0x20400022, 0x008d0700, 0x00000000 },
{ 0x00600001, 0x20600022, 0x008d0720, 0x00000000 },
{ 0x00600001, 0x20800022, 0x008d0740, 0x00000000 },
{ 0x00600001, 0x20a00022, 0x008d0760, 0x00000000 },
{ 0x00600001, 0x20c00022, 0x008d0780, 0x00000000 },
{ 0x00600001, 0x20e00022, 0x008d07a0, 0x00000000 },
{ 0x00600001, 0x21000022, 0x008d07c0, 0x00000000 },
{ 0x00600001, 0x21200022, 0x008d07e0, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x12082007 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff32 },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff2c },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_load_save_pa.g6b
0,0 → 1,190
{ 0x00600001, 0x20e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02498001 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0004000f },
{ 0x00600001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000040, 0x02398002 },
{ 0x00800001, 0x22200229, 0x00b10770, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b10760, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b10750, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b10740, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10730, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10720, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10710, 0x00000000 },
{ 0x00800001, 0x21400229, 0x00b10700, 0x00000000 },
{ 0x00800001, 0x22800229, 0x00ae0840, 0x00000000 },
{ 0x00800001, 0x23800229, 0x00ae0841, 0x00000000 },
{ 0x00800001, 0x22600229, 0x00ae0820, 0x00000000 },
{ 0x00800001, 0x23600229, 0x00ae0821, 0x00000000 },
{ 0x00800001, 0x22400229, 0x00ae0800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x00ae0801, 0x00000000 },
{ 0x80600042, 0x22b02529, 0x008d0270, 0x008d0280 },
{ 0x80600042, 0x23b02529, 0x008d0370, 0x008d0380 },
{ 0x00600001, 0x22a00129, 0x008d0270, 0x00000000 },
{ 0x80600042, 0x22902529, 0x008d0260, 0x008d0270 },
{ 0x00600001, 0x23a00129, 0x008d0370, 0x00000000 },
{ 0x80600042, 0x23902529, 0x008d0360, 0x008d0370 },
{ 0x00600001, 0x22800129, 0x008d0260, 0x00000000 },
{ 0x80600042, 0x22702529, 0x008d0250, 0x008d0260 },
{ 0x00600001, 0x23800129, 0x008d0360, 0x00000000 },
{ 0x80600042, 0x23702529, 0x008d0350, 0x008d0360 },
{ 0x00600001, 0x22600129, 0x008d0250, 0x00000000 },
{ 0x80600042, 0x22502529, 0x008d0240, 0x008d0250 },
{ 0x00600001, 0x23600129, 0x008d0350, 0x00000000 },
{ 0x80600042, 0x23502529, 0x008d0340, 0x008d0350 },
{ 0x00400040, 0x22083e28, 0x00690028, 0x07000700 },
{ 0x00800001, 0xd0000231, 0x00d20140, 0x00000000 },
{ 0x00800001, 0xd0200231, 0x00d20160, 0x00000000 },
{ 0x00800001, 0xd0400231, 0x00d20180, 0x00000000 },
{ 0x00800001, 0xd0600231, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0xd0800231, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0xd0a00231, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0xd0c00231, 0x00d20200, 0x00000000 },
{ 0x00800001, 0xd0e00231, 0x00d20220, 0x00000000 },
{ 0x00600001, 0xf4000231, 0x00ae0240, 0x00000000 },
{ 0x00600001, 0xf8000231, 0x00ae0340, 0x00000000 },
{ 0x00600001, 0xf4200231, 0x00ae0250, 0x00000000 },
{ 0x00600001, 0xf8200231, 0x00ae0350, 0x00000000 },
{ 0x00600001, 0xf4400231, 0x00ae0260, 0x00000000 },
{ 0x00600001, 0xf8400231, 0x00ae0360, 0x00000000 },
{ 0x00600001, 0xf4600231, 0x00ae0270, 0x00000000 },
{ 0x00600001, 0xf8600231, 0x00ae0370, 0x00000000 },
{ 0x00600001, 0xf4800231, 0x00ae0280, 0x00000000 },
{ 0x00600001, 0xf8800231, 0x00ae0380, 0x00000000 },
{ 0x00600001, 0xf4a00231, 0x00ae0290, 0x00000000 },
{ 0x00600001, 0xf8a00231, 0x00ae0390, 0x00000000 },
{ 0x00600001, 0xf4c00231, 0x00ae02a0, 0x00000000 },
{ 0x00600001, 0xf8c00231, 0x00ae03a0, 0x00000000 },
{ 0x00600001, 0xf4e00231, 0x00ae02b0, 0x00000000 },
{ 0x00600001, 0xf8e00231, 0x00ae03b0, 0x00000000 },
{ 0x00000409, 0x21003da5, 0x000000a0, 0x00010001 },
{ 0x00000c01, 0x210401a5, 0x000000a2, 0x00000000 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0007001f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000002a },
{ 0x04600031, 0x21400cc1, 0x00000020, 0x02898007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26000228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x000000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x27000129, 0x02b10140, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x27200129, 0x02b10160, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x27400129, 0x02b10180, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x27600129, 0x02b101a0, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x27800129, 0x02b101c0, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x27a00129, 0x02b101e0, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x27c00129, 0x02b10200, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x27e00129, 0x02b10220, 0x00000000 },
{ 0x00600001, 0x20400022, 0x008d0700, 0x00000000 },
{ 0x00600001, 0x20600022, 0x008d0720, 0x00000000 },
{ 0x00600001, 0x20800022, 0x008d0740, 0x00000000 },
{ 0x00600001, 0x20a00022, 0x008d0760, 0x00000000 },
{ 0x00600001, 0x20c00022, 0x008d0780, 0x00000000 },
{ 0x00600001, 0x20e00022, 0x008d07a0, 0x00000000 },
{ 0x00600001, 0x21000022, 0x008d07c0, 0x00000000 },
{ 0x00600001, 0x21200022, 0x008d07e0, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x12094007 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff32 },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff2c },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_load_save_pl3.asm
0,0 → 1,17
// Module name: NV12_LOAD_SAVE_PL3
.kernel NV12_LOAD_SAVE_PL3
.code
 
#include "SetupVPKernel.asm"
#include "Multiple_Loop_Head.asm"
#include "NV12_Load_8x4.asm"
#include "PL8x4_Save_IMC3.asm"
#include "Multiple_Loop.asm"
 
END_THREAD // End of Thread
 
.end_code
 
.end_kernel
 
// end of nv12_load_save_pl3.asm
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_load_save_pl3.g4b.gen5
0,0 → 1,105
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0248a001 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x02600031, 0x28000c01, 0x408d0000, 0x0228a002 },
{ 0x00800001, 0x22200229, 0x00b10770, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b10760, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b10750, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b10740, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10730, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10720, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10710, 0x00000000 },
{ 0x00800001, 0x21400229, 0x00b10700, 0x00000000 },
{ 0x00800001, 0x22600229, 0x00d20820, 0x00000000 },
{ 0x00800001, 0x23600229, 0x00d20821, 0x00000000 },
{ 0x00800001, 0x22400229, 0x00d20800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x00d20801, 0x00000000 },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0248a007 },
{ 0x0020000c, 0x21003da5, 0x004500a0, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x28000c01, 0x408d0000, 0x0218a008 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x29000c01, 0x408d0000, 0x0218a009 },
{ 0x00800001, 0x28200229, 0x008d0810, 0x00000000 },
{ 0x00800001, 0x29200229, 0x008d0910, 0x00000000 },
{ 0x00800001, 0x28000229, 0x008d0800, 0x00000000 },
{ 0x00800001, 0x29000229, 0x008d0900, 0x00000000 },
{ 0x00000001, 0x26000228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x000000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x00910001, 0x22400231, 0x028d0800, 0x00000000 },
{ 0x00910001, 0x23400231, 0x028d0900, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41410231, 0x02b10701, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x00910001, 0x22500231, 0x028d0810, 0x00000000 },
{ 0x00910001, 0x23500231, 0x028d0910, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41810231, 0x02b10721, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x00910001, 0x22600231, 0x028d0820, 0x00000000 },
{ 0x00910001, 0x23600231, 0x028d0920, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41c10231, 0x02b10741, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x00910001, 0x22700231, 0x028d0830, 0x00000000 },
{ 0x00910001, 0x23700231, 0x028d0930, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42010231, 0x02b10761, 0x00000000 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x0a082007 },
{ 0x0020000c, 0x21003da5, 0x004500a0, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20260, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x04082008 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20360, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x04082009 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff4a },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff44 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_load_save_pl3.g6b
0,0 → 1,178
{ 0x00600001, 0x20e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02498001 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000040, 0x02298002 },
{ 0x00800001, 0x22200229, 0x00b10770, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b10760, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b10750, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b10740, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10730, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10720, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10710, 0x00000000 },
{ 0x00800001, 0x21400229, 0x00b10700, 0x00000000 },
{ 0x00800001, 0x22600229, 0x00d20820, 0x00000000 },
{ 0x00800001, 0x23600229, 0x00d20821, 0x00000000 },
{ 0x00800001, 0x22400229, 0x00d20800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x00d20801, 0x00000000 },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02498007 },
{ 0x0020000c, 0x21003da5, 0x004500a0, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000020, 0x02198008 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x29000cc1, 0x00000020, 0x02198009 },
{ 0x00800001, 0x28200229, 0x008d0810, 0x00000000 },
{ 0x00800001, 0x29200229, 0x008d0910, 0x00000000 },
{ 0x00800001, 0x28000229, 0x008d0800, 0x00000000 },
{ 0x00800001, 0x29000229, 0x008d0900, 0x00000000 },
{ 0x00000001, 0x26000228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x000000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x00910001, 0x22400231, 0x028d0800, 0x00000000 },
{ 0x00910001, 0x23400231, 0x028d0900, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41410231, 0x02b10701, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x00910001, 0x22500231, 0x028d0810, 0x00000000 },
{ 0x00910001, 0x23500231, 0x028d0910, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41810231, 0x02b10721, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x00910001, 0x22600231, 0x028d0820, 0x00000000 },
{ 0x00910001, 0x23600231, 0x028d0920, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41c10231, 0x02b10741, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x00910001, 0x22700231, 0x028d0830, 0x00000000 },
{ 0x00910001, 0x23700231, 0x028d0930, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42010231, 0x02b10761, 0x00000000 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x0a094007 },
{ 0x0020000c, 0x21003da5, 0x004500a0, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20260, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x04094008 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20360, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x04094009 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff4a },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff44 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_scaling_nv12.asm
0,0 → 1,20
// Module name: NV12_SCALING_NV12
.kernel NV12_SCALING_NV12
.code
 
#define INC_SCALING
#include "SetupVPKernel.asm"
#include "Multiple_Loop_Head.asm"
#include "PL2_Scaling.asm"
#include "PL16x8_PL8x4.asm"
#include "PL8x4_Save_NV12.asm"
#include "Multiple_Loop.asm"
 
END_THREAD // End of Thread
 
.end_code
 
.end_kernel
 
// end of nv12_scaling_nv12.asm
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_scaling_nv12.g4b.gen5
0,0 → 1,222
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00400001, 0x254002fd, 0x00000000, 0x48403000 },
{ 0x00400001, 0x255002fd, 0x00000000, 0x5c585450 },
{ 0x00600040, 0x25607fbd, 0x008d0540, 0x41000000 },
{ 0x00200401, 0x21000061, 0x00000000, 0x00000000 },
{ 0x00000801, 0x21080061, 0x00000000, 0x00000000 },
{ 0x00802001, 0x208003be, 0x000000a8, 0x00000000 },
{ 0x00802001, 0x258003bd, 0x000000a8, 0x00000000 },
{ 0x00802001, 0x240003bc, 0x000000a4, 0x00000000 },
{ 0x00802048, 0x204077be, 0x000000bc, 0x008d0540 },
{ 0x00000401, 0x257003fd, 0x00000000, 0x437f0000 },
{ 0x00000801, 0x257c03fd, 0x00000000, 0x3f000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01800031, 0x27001c09, 0x208d0000, 0x0a8a0101 },
{ 0x01800031, 0x28001c09, 0x208d0000, 0x0a8a0202 },
{ 0x00802040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00802040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00802001, 0x27000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00802001, 0x28000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00802001, 0x28400381, 0x00b10400, 0x00000000 },
{ 0x00800001, 0x21400229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x22400229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01800031, 0x27001c09, 0x208d0000, 0x0a8a0101 },
{ 0x01800031, 0x28001c09, 0x208d0000, 0x0a8a0202 },
{ 0x00802040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00802040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00802001, 0x27000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00802001, 0x28000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00802001, 0x28400381, 0x00b10400, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x22600229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x23600229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01800031, 0x27001c09, 0x208d0000, 0x0a8a0101 },
{ 0x01800031, 0x28001c09, 0x208d0000, 0x0a8a0202 },
{ 0x00802040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00802040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00802001, 0x27000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00802001, 0x28000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00802001, 0x28400381, 0x00b10400, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x22800229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x23800229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01800031, 0x27001c09, 0x208d0000, 0x0a8a0101 },
{ 0x01800031, 0x28001c09, 0x208d0000, 0x0a8a0202 },
{ 0x00802040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00802040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00802001, 0x27000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00802001, 0x28000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00802001, 0x28400381, 0x00b10400, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x22a00229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x23a00229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01800031, 0x27001c09, 0x208d0000, 0x0a8a0101 },
{ 0x01800031, 0x28001c09, 0x208d0000, 0x0a8a0202 },
{ 0x00802040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00802040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00802001, 0x27000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00802001, 0x28000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00802001, 0x28400381, 0x00b10400, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x22c00229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x23c00229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01800031, 0x27001c09, 0x208d0000, 0x0a8a0101 },
{ 0x01800031, 0x28001c09, 0x208d0000, 0x0a8a0202 },
{ 0x00802040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00802040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00802001, 0x27000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00802001, 0x28000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00802001, 0x28400381, 0x00b10400, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x22e00229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x23e00229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01800031, 0x27001c09, 0x208d0000, 0x0a8a0101 },
{ 0x01800031, 0x28001c09, 0x208d0000, 0x0a8a0202 },
{ 0x00802040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00802040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00802001, 0x27000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00802001, 0x28000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00802001, 0x28400381, 0x00b10400, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x23000229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x24000229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01800031, 0x27001c09, 0x208d0000, 0x0a8a0101 },
{ 0x01800031, 0x28001c09, 0x208d0000, 0x0a8a0202 },
{ 0x00802040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00802040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00802001, 0x27000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00802001, 0x28000381, 0x00b10400, 0x00000000 },
{ 0x00802059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00802001, 0x28400381, 0x00b10400, 0x00000000 },
{ 0x00800001, 0x22200229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x23200229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x22400129, 0x00ae0240, 0x00000000 },
{ 0x00600001, 0x23400129, 0x00ae0340, 0x00000000 },
{ 0x00600001, 0x22500129, 0x00ae0280, 0x00000000 },
{ 0x00600001, 0x23500129, 0x00ae0380, 0x00000000 },
{ 0x00600001, 0x22600129, 0x00ae02c0, 0x00000000 },
{ 0x00600001, 0x23600129, 0x00ae03c0, 0x00000000 },
{ 0x00600001, 0x22700129, 0x00ae0300, 0x00000000 },
{ 0x00600001, 0x23700129, 0x00ae0400, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00200001, 0x202001a6, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x20280062, 0x00000000, 0x0007000f },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000056 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0248a007 },
{ 0x0000040c, 0x21043da1, 0x000000a2, 0x00010001 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x28000c01, 0x408d0000, 0x0228a008 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26020228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x020000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x02000000, 0x00000000 },
{ 0x00000001, 0x24600061, 0x00000000, 0x00040001 },
{ 0x00000001, 0x24640061, 0x00000000, 0x00400010 },
{ 0x00000001, 0x24680061, 0x00000000, 0x04000100 },
{ 0x00000001, 0x246c0061, 0x00000000, 0x40001000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000440, 0x008d0460 },
{ 0x00710001, 0x42400231, 0x02ae0800, 0x00000000 },
{ 0x00710001, 0x43400231, 0x02ae0801, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41600231, 0x02b10710, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000444, 0x008d0460 },
{ 0x00710001, 0x42500231, 0x02ae0810, 0x00000000 },
{ 0x00710001, 0x43500231, 0x02ae0811, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41a00231, 0x02b10730, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000448, 0x008d0460 },
{ 0x00710001, 0x42600231, 0x02ae0820, 0x00000000 },
{ 0x00710001, 0x43600231, 0x02ae0821, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41e00231, 0x02b10750, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x0200044c, 0x008d0460 },
{ 0x00710001, 0x42700231, 0x02ae0830, 0x00000000 },
{ 0x00710001, 0x43700231, 0x02ae0831, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42200231, 0x02b10770, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x0a082007 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x40400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x40410232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x40600232, 0x00d20260, 0x00000000 },
{ 0x00800001, 0x40610232, 0x00d20360, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x06082008 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00000041, 0x24407fbd, 0x000000bc, 0x41800000 },
{ 0x00000040, 0x20a477bd, 0x00000440, 0x000000a4 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010220, 0x34001c00, 0x02001400, 0xfffffe66 },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000001, 0x20a403bd, 0x00000094, 0x00000000 },
{ 0x00000041, 0x24407fbd, 0x00000038, 0x41000000 },
{ 0x00000040, 0x20a877bd, 0x00000440, 0x000000a8 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffe5a },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
/drivers/video/i965/shaders/post_processing/gen5_6/nv12_scaling_nv12.g6b
0,0 → 1,295
{ 0x00600001, 0x20e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00400001, 0x254002fd, 0x00000000, 0x48403000 },
{ 0x00400001, 0x255002fd, 0x00000000, 0x5c585450 },
{ 0x00600040, 0x25607fbd, 0x008d0540, 0x41000000 },
{ 0x00200401, 0x21000061, 0x00000000, 0x00000000 },
{ 0x00000801, 0x21080061, 0x00000000, 0x00000000 },
{ 0x00800001, 0x208003be, 0x000000a8, 0x00000000 },
{ 0x00800001, 0x258003bd, 0x000000a8, 0x00000000 },
{ 0x00800001, 0x240003bc, 0x000000a4, 0x00000000 },
{ 0x00800048, 0x204077be, 0x000000bc, 0x008d0540 },
{ 0x00000401, 0x257003fd, 0x00000000, 0x437f0000 },
{ 0x00000801, 0x257c03fd, 0x00000000, 0x3f000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x02800031, 0x27001cc9, 0x00000020, 0x0a8a0101 },
{ 0x02800031, 0x28001cc9, 0x00000020, 0x0a8a0202 },
{ 0x00800040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00800040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00800001, 0x27000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00800001, 0x28000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00800001, 0x28400381, 0x008d0400, 0x00000000 },
{ 0x00800001, 0x21400229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x22400229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x02800031, 0x27001cc9, 0x00000020, 0x0a8a0101 },
{ 0x02800031, 0x28001cc9, 0x00000020, 0x0a8a0202 },
{ 0x00800040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00800040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00800001, 0x27000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00800001, 0x28000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00800001, 0x28400381, 0x008d0400, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x22600229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x23600229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x02800031, 0x27001cc9, 0x00000020, 0x0a8a0101 },
{ 0x02800031, 0x28001cc9, 0x00000020, 0x0a8a0202 },
{ 0x00800040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00800040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00800001, 0x27000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00800001, 0x28000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00800001, 0x28400381, 0x008d0400, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x22800229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x23800229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x02800031, 0x27001cc9, 0x00000020, 0x0a8a0101 },
{ 0x02800031, 0x28001cc9, 0x00000020, 0x0a8a0202 },
{ 0x00800040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00800040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00800001, 0x27000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00800001, 0x28000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00800001, 0x28400381, 0x008d0400, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x22a00229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x23a00229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x02800031, 0x27001cc9, 0x00000020, 0x0a8a0101 },
{ 0x02800031, 0x28001cc9, 0x00000020, 0x0a8a0202 },
{ 0x00800040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00800040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00800001, 0x27000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00800001, 0x28000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00800001, 0x28400381, 0x008d0400, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x22c00229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x23c00229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x02800031, 0x27001cc9, 0x00000020, 0x0a8a0101 },
{ 0x02800031, 0x28001cc9, 0x00000020, 0x0a8a0202 },
{ 0x00800040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00800040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00800001, 0x27000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00800001, 0x28000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00800001, 0x28400381, 0x008d0400, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x22e00229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x23e00229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x02800031, 0x27001cc9, 0x00000020, 0x0a8a0101 },
{ 0x02800031, 0x28001cc9, 0x00000020, 0x0a8a0202 },
{ 0x00800040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00800040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00800001, 0x27000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00800001, 0x28000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00800001, 0x28400381, 0x008d0400, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x23000229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x24000229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x02800031, 0x27001cc9, 0x00000020, 0x0a8a0101 },
{ 0x02800031, 0x28001cc9, 0x00000020, 0x0a8a0202 },
{ 0x00800040, 0x208077be, 0x008d0580, 0x00000038 },
{ 0x00800040, 0x258077bd, 0x008d0580, 0x00000038 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0700 },
{ 0x00800001, 0x27000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0800 },
{ 0x00800001, 0x28000381, 0x008d0400, 0x00000000 },
{ 0x00800059, 0x240077bc, 0x00000570, 0x008d0840 },
{ 0x00800001, 0x28400381, 0x008d0400, 0x00000000 },
{ 0x00800001, 0x22200229, 0x00cf0700, 0x00000000 },
{ 0x00800001, 0x23200229, 0x00cf0800, 0x00000000 },
{ 0x00800001, 0x24200229, 0x00cf0840, 0x00000000 },
{ 0x00600001, 0x22400129, 0x00ae0240, 0x00000000 },
{ 0x00600001, 0x23400129, 0x00ae0340, 0x00000000 },
{ 0x00600001, 0x22500129, 0x00ae0280, 0x00000000 },
{ 0x00600001, 0x23500129, 0x00ae0380, 0x00000000 },
{ 0x00600001, 0x22600129, 0x00ae02c0, 0x00000000 },
{ 0x00600001, 0x23600129, 0x00ae03c0, 0x00000000 },
{ 0x00600001, 0x22700129, 0x00ae0300, 0x00000000 },
{ 0x00600001, 0x23700129, 0x00ae0400, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00200001, 0x202001a6, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x20280062, 0x00000000, 0x0007000f },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000056 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02498007 },
{ 0x0000040c, 0x21043da1, 0x000000a2, 0x00010001 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000020, 0x02298008 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26020228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x020000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x02000000, 0x00000000 },
{ 0x00000001, 0x24600061, 0x00000000, 0x00040001 },
{ 0x00000001, 0x24640061, 0x00000000, 0x00400010 },
{ 0x00000001, 0x24680061, 0x00000000, 0x04000100 },
{ 0x00000001, 0x246c0061, 0x00000000, 0x40001000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000440, 0x008d0460 },
{ 0x00710001, 0x42400231, 0x02ae0800, 0x00000000 },
{ 0x00710001, 0x43400231, 0x02ae0801, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41600231, 0x02b10710, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000444, 0x008d0460 },
{ 0x00710001, 0x42500231, 0x02ae0810, 0x00000000 },
{ 0x00710001, 0x43500231, 0x02ae0811, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41a00231, 0x02b10730, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000448, 0x008d0460 },
{ 0x00710001, 0x42600231, 0x02ae0820, 0x00000000 },
{ 0x00710001, 0x43600231, 0x02ae0821, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41e00231, 0x02b10750, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x0200044c, 0x008d0460 },
{ 0x00710001, 0x42700231, 0x02ae0830, 0x00000000 },
{ 0x00710001, 0x43700231, 0x02ae0831, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42200231, 0x02b10770, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x0a094007 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x40400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x40410232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x40600232, 0x00d20260, 0x00000000 },
{ 0x00800001, 0x40610232, 0x00d20360, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x06094008 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00000041, 0x24407fbd, 0x000000bc, 0x41800000 },
{ 0x00000040, 0x20a477bd, 0x00000440, 0x000000a4 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00010220, 0x34001c00, 0x02001400, 0xfffffe66 },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000001, 0x20a403bd, 0x00000094, 0x00000000 },
{ 0x00000041, 0x24407fbd, 0x00000038, 0x41000000 },
{ 0x00000040, 0x20a877bd, 0x00000440, 0x000000a8 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xfffffe5a },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen5_6/pa_load_save_nv12.asm
0,0 → 1,18
// Module name: PA_LOAD_SAVE_NV12
.kernel PA_LOAD_SAVE_NV12
.code
 
#include "SetupVPKernel.asm"
#include "Multiple_Loop_Head.asm"
#include "PA_Load_8x8.asm"
#include "PL8x8_PL8x4.asm"
#include "PL8x4_Save_NV12.asm"
#include "Multiple_Loop.asm"
 
END_THREAD // End of Thread
 
.end_code
 
.end_kernel
 
// end of nv12_load_save_pl1.asm
/drivers/video/i965/shaders/post_processing/gen5_6/pa_load_save_nv12.g4b.gen5
0,0 → 1,120
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000009, 0x21003da5, 0x00000100, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007001f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0288a001 },
{ 0x00400040, 0x22083e28, 0x00690024, 0x07000700 },
{ 0x00800001, 0x21400229, 0x00d29000, 0x00000000 },
{ 0x00600001, 0x22400229, 0x00cf9400, 0x00000000 },
{ 0x00600001, 0x23400229, 0x00cf9800, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00d29020, 0x00000000 },
{ 0x00600001, 0x22500229, 0x00cf9420, 0x00000000 },
{ 0x00600001, 0x23500229, 0x00cf9820, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00d29040, 0x00000000 },
{ 0x00600001, 0x22600229, 0x00cf9440, 0x00000000 },
{ 0x00600001, 0x23600229, 0x00cf9840, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00d29060, 0x00000000 },
{ 0x00600001, 0x22700229, 0x00cf9460, 0x00000000 },
{ 0x00600001, 0x23700229, 0x00cf9860, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00d29080, 0x00000000 },
{ 0x00600001, 0x22800229, 0x00cf9480, 0x00000000 },
{ 0x00600001, 0x23800229, 0x00cf9880, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00d290a0, 0x00000000 },
{ 0x00600001, 0x22900229, 0x00cf94a0, 0x00000000 },
{ 0x00600001, 0x23900229, 0x00cf98a0, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00d290c0, 0x00000000 },
{ 0x00600001, 0x22a00229, 0x00cf94c0, 0x00000000 },
{ 0x00600001, 0x23a00229, 0x00cf98c0, 0x00000000 },
{ 0x00800001, 0x22200229, 0x00d290e0, 0x00000000 },
{ 0x00600001, 0x22b00229, 0x00cf94e0, 0x00000000 },
{ 0x00600001, 0x23b00229, 0x00cf98e0, 0x00000000 },
{ 0x00600001, 0x42500231, 0x00ae0260, 0x00000000 },
{ 0x00800001, 0x42600231, 0x00ce0280, 0x00000000 },
{ 0x00600001, 0x43500231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0x43600231, 0x00ce0380, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00200001, 0x202001a6, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x20280062, 0x00000000, 0x0007000f },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000056 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0248a007 },
{ 0x0000040c, 0x21043da1, 0x000000a2, 0x00010001 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x28000c01, 0x408d0000, 0x0228a008 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26020228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x020000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x02000000, 0x00000000 },
{ 0x00000001, 0x24600061, 0x00000000, 0x00040001 },
{ 0x00000001, 0x24640061, 0x00000000, 0x00400010 },
{ 0x00000001, 0x24680061, 0x00000000, 0x04000100 },
{ 0x00000001, 0x246c0061, 0x00000000, 0x40001000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000440, 0x008d0460 },
{ 0x00710001, 0x42400231, 0x02ae0800, 0x00000000 },
{ 0x00710001, 0x43400231, 0x02ae0801, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41600231, 0x02b10710, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000444, 0x008d0460 },
{ 0x00710001, 0x42500231, 0x02ae0810, 0x00000000 },
{ 0x00710001, 0x43500231, 0x02ae0811, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41a00231, 0x02b10730, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000448, 0x008d0460 },
{ 0x00710001, 0x42600231, 0x02ae0820, 0x00000000 },
{ 0x00710001, 0x43600231, 0x02ae0821, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41e00231, 0x02b10750, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x0200044c, 0x008d0460 },
{ 0x00710001, 0x42700231, 0x02ae0830, 0x00000000 },
{ 0x00710001, 0x43700231, 0x02ae0831, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42200231, 0x02b10770, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x0a082007 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x40400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x40410232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x40600232, 0x00d20260, 0x00000000 },
{ 0x00800001, 0x40610232, 0x00d20360, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x06082008 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff2c },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff26 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
/drivers/video/i965/shaders/post_processing/gen5_6/pa_load_save_nv12.g6b
0,0 → 1,193
{ 0x00600001, 0x20e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000009, 0x21003da5, 0x00000100, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007001f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02898001 },
{ 0x00400040, 0x22083e28, 0x00690024, 0x07000700 },
{ 0x00800001, 0x21400229, 0x00d29000, 0x00000000 },
{ 0x00600001, 0x22400229, 0x00cf9400, 0x00000000 },
{ 0x00600001, 0x23400229, 0x00cf9800, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00d29020, 0x00000000 },
{ 0x00600001, 0x22500229, 0x00cf9420, 0x00000000 },
{ 0x00600001, 0x23500229, 0x00cf9820, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00d29040, 0x00000000 },
{ 0x00600001, 0x22600229, 0x00cf9440, 0x00000000 },
{ 0x00600001, 0x23600229, 0x00cf9840, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00d29060, 0x00000000 },
{ 0x00600001, 0x22700229, 0x00cf9460, 0x00000000 },
{ 0x00600001, 0x23700229, 0x00cf9860, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00d29080, 0x00000000 },
{ 0x00600001, 0x22800229, 0x00cf9480, 0x00000000 },
{ 0x00600001, 0x23800229, 0x00cf9880, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00d290a0, 0x00000000 },
{ 0x00600001, 0x22900229, 0x00cf94a0, 0x00000000 },
{ 0x00600001, 0x23900229, 0x00cf98a0, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00d290c0, 0x00000000 },
{ 0x00600001, 0x22a00229, 0x00cf94c0, 0x00000000 },
{ 0x00600001, 0x23a00229, 0x00cf98c0, 0x00000000 },
{ 0x00800001, 0x22200229, 0x00d290e0, 0x00000000 },
{ 0x00600001, 0x22b00229, 0x00cf94e0, 0x00000000 },
{ 0x00600001, 0x23b00229, 0x00cf98e0, 0x00000000 },
{ 0x00600001, 0x42500231, 0x00ae0260, 0x00000000 },
{ 0x00800001, 0x42600231, 0x00ce0280, 0x00000000 },
{ 0x00600001, 0x43500231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0x43600231, 0x00ce0380, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00200001, 0x202001a6, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x20280062, 0x00000000, 0x0007000f },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000056 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02498007 },
{ 0x0000040c, 0x21043da1, 0x000000a2, 0x00010001 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000020, 0x02298008 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26020228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x020000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x02000000, 0x00000000 },
{ 0x00000001, 0x24600061, 0x00000000, 0x00040001 },
{ 0x00000001, 0x24640061, 0x00000000, 0x00400010 },
{ 0x00000001, 0x24680061, 0x00000000, 0x04000100 },
{ 0x00000001, 0x246c0061, 0x00000000, 0x40001000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000440, 0x008d0460 },
{ 0x00710001, 0x42400231, 0x02ae0800, 0x00000000 },
{ 0x00710001, 0x43400231, 0x02ae0801, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41600231, 0x02b10710, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000444, 0x008d0460 },
{ 0x00710001, 0x42500231, 0x02ae0810, 0x00000000 },
{ 0x00710001, 0x43500231, 0x02ae0811, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41a00231, 0x02b10730, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000448, 0x008d0460 },
{ 0x00710001, 0x42600231, 0x02ae0820, 0x00000000 },
{ 0x00710001, 0x43600231, 0x02ae0821, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41e00231, 0x02b10750, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x0200044c, 0x008d0460 },
{ 0x00710001, 0x42700231, 0x02ae0830, 0x00000000 },
{ 0x00710001, 0x43700231, 0x02ae0831, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42200231, 0x02b10770, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x0a094007 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x40400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x40410232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x40600232, 0x00d20260, 0x00000000 },
{ 0x00800001, 0x40610232, 0x00d20360, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x06094008 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff2c },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff26 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen5_6/pa_load_save_pl3.asm
0,0 → 1,18
// Module name: PA_LOAD_SAVE_PL3
.kernel PA_LOAD_SAVE_PL3
.code
 
#include "SetupVPKernel.asm"
#include "Multiple_Loop_Head.asm"
#include "PA_Load_8x8.asm"
#include "PL8x8_PL8x4.asm"
#include "PL8x4_Save_IMC3.asm"
#include "Multiple_Loop.asm"
 
END_THREAD // End of Thread
 
.end_code
 
.end_kernel
 
// end of pa_load_save_pl3.asm
/drivers/video/i965/shaders/post_processing/gen5_6/pa_load_save_pl3.g4b.gen5
0,0 → 1,123
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000009, 0x21003da5, 0x00000100, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007001f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0288a001 },
{ 0x00400040, 0x22083e28, 0x00690024, 0x07000700 },
{ 0x00800001, 0x21400229, 0x00d29000, 0x00000000 },
{ 0x00600001, 0x22400229, 0x00cf9400, 0x00000000 },
{ 0x00600001, 0x23400229, 0x00cf9800, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00d29020, 0x00000000 },
{ 0x00600001, 0x22500229, 0x00cf9420, 0x00000000 },
{ 0x00600001, 0x23500229, 0x00cf9820, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00d29040, 0x00000000 },
{ 0x00600001, 0x22600229, 0x00cf9440, 0x00000000 },
{ 0x00600001, 0x23600229, 0x00cf9840, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00d29060, 0x00000000 },
{ 0x00600001, 0x22700229, 0x00cf9460, 0x00000000 },
{ 0x00600001, 0x23700229, 0x00cf9860, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00d29080, 0x00000000 },
{ 0x00600001, 0x22800229, 0x00cf9480, 0x00000000 },
{ 0x00600001, 0x23800229, 0x00cf9880, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00d290a0, 0x00000000 },
{ 0x00600001, 0x22900229, 0x00cf94a0, 0x00000000 },
{ 0x00600001, 0x23900229, 0x00cf98a0, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00d290c0, 0x00000000 },
{ 0x00600001, 0x22a00229, 0x00cf94c0, 0x00000000 },
{ 0x00600001, 0x23a00229, 0x00cf98c0, 0x00000000 },
{ 0x00800001, 0x22200229, 0x00d290e0, 0x00000000 },
{ 0x00600001, 0x22b00229, 0x00cf94e0, 0x00000000 },
{ 0x00600001, 0x23b00229, 0x00cf98e0, 0x00000000 },
{ 0x00600001, 0x42500231, 0x00ae0260, 0x00000000 },
{ 0x00800001, 0x42600231, 0x00ce0280, 0x00000000 },
{ 0x00600001, 0x43500231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0x43600231, 0x00ce0380, 0x00000000 },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000005a },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0248a007 },
{ 0x0020000c, 0x21003da5, 0x004500a0, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x28000c01, 0x408d0000, 0x0218a008 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x29000c01, 0x408d0000, 0x0218a009 },
{ 0x00800001, 0x28600229, 0x008d0830, 0x00000000 },
{ 0x00800001, 0x29600229, 0x008d0930, 0x00000000 },
{ 0x00800001, 0x28400229, 0x008d0820, 0x00000000 },
{ 0x00800001, 0x29400229, 0x008d0920, 0x00000000 },
{ 0x00800001, 0x28200229, 0x008d0810, 0x00000000 },
{ 0x00800001, 0x29200229, 0x008d0910, 0x00000000 },
{ 0x00800001, 0x28000229, 0x008d0800, 0x00000000 },
{ 0x00800001, 0x29000229, 0x008d0900, 0x00000000 },
{ 0x00000001, 0x26000228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x000000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x00910001, 0x22400231, 0x028d0800, 0x00000000 },
{ 0x00910001, 0x23400231, 0x028d0900, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41410231, 0x02b10701, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x00910001, 0x22500231, 0x028d0810, 0x00000000 },
{ 0x00910001, 0x23500231, 0x028d0910, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41810231, 0x02b10721, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x00910001, 0x22600231, 0x028d0820, 0x00000000 },
{ 0x00910001, 0x23600231, 0x028d0920, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41c10231, 0x02b10741, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x00910001, 0x22700231, 0x028d0830, 0x00000000 },
{ 0x00910001, 0x23700231, 0x028d0930, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42010231, 0x02b10761, 0x00000000 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x0a082007 },
{ 0x0020000c, 0x21003da5, 0x004500a0, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20260, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x04082008 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20360, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x04082009 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff26 },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff20 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
/drivers/video/i965/shaders/post_processing/gen5_6/pa_load_save_pl3.g6b
0,0 → 1,196
{ 0x00600001, 0x20e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000009, 0x21003da5, 0x00000100, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007001f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02898001 },
{ 0x00400040, 0x22083e28, 0x00690024, 0x07000700 },
{ 0x00800001, 0x21400229, 0x00d29000, 0x00000000 },
{ 0x00600001, 0x22400229, 0x00cf9400, 0x00000000 },
{ 0x00600001, 0x23400229, 0x00cf9800, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00d29020, 0x00000000 },
{ 0x00600001, 0x22500229, 0x00cf9420, 0x00000000 },
{ 0x00600001, 0x23500229, 0x00cf9820, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00d29040, 0x00000000 },
{ 0x00600001, 0x22600229, 0x00cf9440, 0x00000000 },
{ 0x00600001, 0x23600229, 0x00cf9840, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00d29060, 0x00000000 },
{ 0x00600001, 0x22700229, 0x00cf9460, 0x00000000 },
{ 0x00600001, 0x23700229, 0x00cf9860, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00d29080, 0x00000000 },
{ 0x00600001, 0x22800229, 0x00cf9480, 0x00000000 },
{ 0x00600001, 0x23800229, 0x00cf9880, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00d290a0, 0x00000000 },
{ 0x00600001, 0x22900229, 0x00cf94a0, 0x00000000 },
{ 0x00600001, 0x23900229, 0x00cf98a0, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00d290c0, 0x00000000 },
{ 0x00600001, 0x22a00229, 0x00cf94c0, 0x00000000 },
{ 0x00600001, 0x23a00229, 0x00cf98c0, 0x00000000 },
{ 0x00800001, 0x22200229, 0x00d290e0, 0x00000000 },
{ 0x00600001, 0x22b00229, 0x00cf94e0, 0x00000000 },
{ 0x00600001, 0x23b00229, 0x00cf98e0, 0x00000000 },
{ 0x00600001, 0x42500231, 0x00ae0260, 0x00000000 },
{ 0x00800001, 0x42600231, 0x00ce0280, 0x00000000 },
{ 0x00600001, 0x43500231, 0x00ae0360, 0x00000000 },
{ 0x00800001, 0x43600231, 0x00ce0380, 0x00000000 },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000005a },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02498007 },
{ 0x0020000c, 0x21003da5, 0x004500a0, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000020, 0x02198008 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x29000cc1, 0x00000020, 0x02198009 },
{ 0x00800001, 0x28600229, 0x008d0830, 0x00000000 },
{ 0x00800001, 0x29600229, 0x008d0930, 0x00000000 },
{ 0x00800001, 0x28400229, 0x008d0820, 0x00000000 },
{ 0x00800001, 0x29400229, 0x008d0920, 0x00000000 },
{ 0x00800001, 0x28200229, 0x008d0810, 0x00000000 },
{ 0x00800001, 0x29200229, 0x008d0910, 0x00000000 },
{ 0x00800001, 0x28000229, 0x008d0800, 0x00000000 },
{ 0x00800001, 0x29000229, 0x008d0900, 0x00000000 },
{ 0x00000001, 0x26000228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x000000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x00910001, 0x22400231, 0x028d0800, 0x00000000 },
{ 0x00910001, 0x23400231, 0x028d0900, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41410231, 0x02b10701, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x00910001, 0x22500231, 0x028d0810, 0x00000000 },
{ 0x00910001, 0x23500231, 0x028d0910, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41810231, 0x02b10721, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x00910001, 0x22600231, 0x028d0820, 0x00000000 },
{ 0x00910001, 0x23600231, 0x028d0920, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41c10231, 0x02b10741, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x00910001, 0x22700231, 0x028d0830, 0x00000000 },
{ 0x00910001, 0x23700231, 0x028d0930, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42010231, 0x02b10761, 0x00000000 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x0a094007 },
{ 0x0020000c, 0x21003da5, 0x004500a0, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20260, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x04094008 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20360, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x04094009 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff26 },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff20 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen5_6/pl3_load_save_nv12.asm
0,0 → 1,17
// Module name: PL3_LOAD_SAVE_NV12
.kernel PL3_LOAD_SAVE_NV12
.code
 
#include "SetupVPKernel.asm"
#include "Multiple_Loop_Head.asm"
#include "IMC3_Load_8x4.asm"
#include "PL8x4_Save_NV12.asm"
#include "Multiple_Loop.asm"
 
END_THREAD // End of Thread
 
.end_code
 
.end_kernel
 
// end of pl3_load_save_nv12.asm
/drivers/video/i965/shaders/post_processing/gen5_6/pl3_load_save_nv12.g4b.gen5
0,0 → 1,108
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0248a001 },
{ 0x0020000c, 0x21003ca5, 0x00450100, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x02600031, 0x28000c01, 0x408d0000, 0x0218a002 },
{ 0x00600001, 0x20600022, 0x008d0100, 0x00000000 },
{ 0x02600031, 0x29000c01, 0x408d0000, 0x0218a003 },
{ 0x00800001, 0x22200229, 0x00b10770, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b10760, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b10750, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b10740, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10730, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10720, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10710, 0x00000000 },
{ 0x00800001, 0x21400229, 0x00b10700, 0x00000000 },
{ 0x00800001, 0x22600229, 0x008d0810, 0x00000000 },
{ 0x00800001, 0x23600229, 0x008d0910, 0x00000000 },
{ 0x00800001, 0x22400229, 0x008d0800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x008d0900, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00200001, 0x202001a6, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x20280062, 0x00000000, 0x0007000f },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000056 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0248a007 },
{ 0x0000040c, 0x21043da1, 0x000000a2, 0x00010001 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x28000c01, 0x408d0000, 0x0228a008 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26020228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x020000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x02000000, 0x00000000 },
{ 0x00000001, 0x24600061, 0x00000000, 0x00040001 },
{ 0x00000001, 0x24640061, 0x00000000, 0x00400010 },
{ 0x00000001, 0x24680061, 0x00000000, 0x04000100 },
{ 0x00000001, 0x246c0061, 0x00000000, 0x40001000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000440, 0x008d0460 },
{ 0x00710001, 0x42400231, 0x02ae0800, 0x00000000 },
{ 0x00710001, 0x43400231, 0x02ae0801, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41600231, 0x02b10710, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000444, 0x008d0460 },
{ 0x00710001, 0x42500231, 0x02ae0810, 0x00000000 },
{ 0x00710001, 0x43500231, 0x02ae0811, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41a00231, 0x02b10730, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000448, 0x008d0460 },
{ 0x00710001, 0x42600231, 0x02ae0820, 0x00000000 },
{ 0x00710001, 0x43600231, 0x02ae0821, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41e00231, 0x02b10750, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x0200044c, 0x008d0460 },
{ 0x00710001, 0x42700231, 0x02ae0830, 0x00000000 },
{ 0x00710001, 0x43700231, 0x02ae0831, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42200231, 0x02b10770, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x0a082007 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x40400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x40410232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x40600232, 0x00d20260, 0x00000000 },
{ 0x00800001, 0x40610232, 0x00d20360, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x06082008 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff44 },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff3e },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
/drivers/video/i965/shaders/post_processing/gen5_6/pl3_load_save_nv12.g6b
0,0 → 1,181
{ 0x00600001, 0x20e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02498001 },
{ 0x0020000c, 0x21003ca5, 0x00450100, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000040, 0x02198002 },
{ 0x00600001, 0x20600022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x29000cc1, 0x00000040, 0x02198003 },
{ 0x00800001, 0x22200229, 0x00b10770, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b10760, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b10750, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b10740, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10730, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10720, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10710, 0x00000000 },
{ 0x00800001, 0x21400229, 0x00b10700, 0x00000000 },
{ 0x00800001, 0x22600229, 0x008d0810, 0x00000000 },
{ 0x00800001, 0x23600229, 0x008d0910, 0x00000000 },
{ 0x00800001, 0x22400229, 0x008d0800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x008d0900, 0x00000000 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00200001, 0x202001a6, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x20280062, 0x00000000, 0x0007000f },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000056 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02498007 },
{ 0x0000040c, 0x21043da1, 0x000000a2, 0x00010001 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000020, 0x02298008 },
{ 0x00200001, 0x210001a1, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26020228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x020000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x02000000, 0x00000000 },
{ 0x00000001, 0x24600061, 0x00000000, 0x00040001 },
{ 0x00000001, 0x24640061, 0x00000000, 0x00400010 },
{ 0x00000001, 0x24680061, 0x00000000, 0x04000100 },
{ 0x00000001, 0x246c0061, 0x00000000, 0x40001000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000440, 0x008d0460 },
{ 0x00710001, 0x42400231, 0x02ae0800, 0x00000000 },
{ 0x00710001, 0x43400231, 0x02ae0801, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41600231, 0x02b10710, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000444, 0x008d0460 },
{ 0x00710001, 0x42500231, 0x02ae0810, 0x00000000 },
{ 0x00710001, 0x43500231, 0x02ae0811, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41a00231, 0x02b10730, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x02000448, 0x008d0460 },
{ 0x00710001, 0x42600231, 0x02ae0820, 0x00000000 },
{ 0x00710001, 0x43600231, 0x02ae0821, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41e00231, 0x02b10750, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x02600005, 0x2000252c, 0x0200044c, 0x008d0460 },
{ 0x00710001, 0x42700231, 0x02ae0830, 0x00000000 },
{ 0x00710001, 0x43700231, 0x02ae0831, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42200231, 0x02b10770, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x0a094007 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x0000000c, 0x21043ca5, 0x00000104, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x40400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x40410232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x40600232, 0x00d20260, 0x00000000 },
{ 0x00800001, 0x40610232, 0x00d20360, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x06094008 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff44 },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff3e },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen5_6/pl3_load_save_pa.asm
0,0 → 1,18
// Module name: PL3_LOAD_SAVE_pa
.kernel PL3_LOAD_SAVE_PA // what's usage of it? just a name?
.code
 
#include "SetupVPKernel.asm"
#include "Multiple_Loop_Head.asm"
#include "IMC3_Load_8x5.asm"
#include "PL8x5_PL8x8.asm"
#include "PL8x8_Save_PA.asm"
#include "Multiple_Loop.asm"
 
END_THREAD // End of Thread
 
.end_code
 
.end_kernel
 
// end of pl3_load_save_pa.asm
/drivers/video/i965/shaders/post_processing/gen5_6/pl3_load_save_pa.g4b.gen5
0,0 → 1,119
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0248a001 },
{ 0x0020000c, 0x21003ca5, 0x00450100, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00040007 },
{ 0x00600001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x02600031, 0x28000c01, 0x408d0000, 0x0228a002 },
{ 0x00600001, 0x20600022, 0x008d0100, 0x00000000 },
{ 0x02600031, 0x29000c01, 0x408d0000, 0x0228a003 },
{ 0x00800001, 0x22200229, 0x00b10770, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b10760, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b10750, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b10740, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10730, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10720, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10710, 0x00000000 },
{ 0x00800001, 0x21400229, 0x00b10700, 0x00000000 },
{ 0x00800001, 0x22800229, 0x008d0820, 0x00000000 },
{ 0x00800001, 0x23800229, 0x008d0920, 0x00000000 },
{ 0x00800001, 0x22600229, 0x008d0810, 0x00000000 },
{ 0x00800001, 0x23600229, 0x008d0910, 0x00000000 },
{ 0x00800001, 0x22400229, 0x008d0800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x008d0900, 0x00000000 },
{ 0x80600042, 0x22b02529, 0x008d0270, 0x008d0280 },
{ 0x80600042, 0x23b02529, 0x008d0370, 0x008d0380 },
{ 0x00600001, 0x22a00129, 0x008d0270, 0x00000000 },
{ 0x80600042, 0x22902529, 0x008d0260, 0x008d0270 },
{ 0x00600001, 0x23a00129, 0x008d0370, 0x00000000 },
{ 0x80600042, 0x23902529, 0x008d0360, 0x008d0370 },
{ 0x00600001, 0x22800129, 0x008d0260, 0x00000000 },
{ 0x80600042, 0x22702529, 0x008d0250, 0x008d0260 },
{ 0x00600001, 0x23800129, 0x008d0360, 0x00000000 },
{ 0x80600042, 0x23702529, 0x008d0350, 0x008d0360 },
{ 0x00600001, 0x22600129, 0x008d0250, 0x00000000 },
{ 0x80600042, 0x22502529, 0x008d0240, 0x008d0250 },
{ 0x00600001, 0x23600129, 0x008d0350, 0x00000000 },
{ 0x80600042, 0x23502529, 0x008d0340, 0x008d0350 },
{ 0x00400040, 0x22083e28, 0x00690028, 0x07000700 },
{ 0x00800001, 0xd0000231, 0x00d20140, 0x00000000 },
{ 0x00800001, 0xd0200231, 0x00d20160, 0x00000000 },
{ 0x00800001, 0xd0400231, 0x00d20180, 0x00000000 },
{ 0x00800001, 0xd0600231, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0xd0800231, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0xd0a00231, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0xd0c00231, 0x00d20200, 0x00000000 },
{ 0x00800001, 0xd0e00231, 0x00d20220, 0x00000000 },
{ 0x00600001, 0xf4000231, 0x00ae0240, 0x00000000 },
{ 0x00600001, 0xf8000231, 0x00ae0340, 0x00000000 },
{ 0x00600001, 0xf4200231, 0x00ae0250, 0x00000000 },
{ 0x00600001, 0xf8200231, 0x00ae0350, 0x00000000 },
{ 0x00600001, 0xf4400231, 0x00ae0260, 0x00000000 },
{ 0x00600001, 0xf8400231, 0x00ae0360, 0x00000000 },
{ 0x00600001, 0xf4600231, 0x00ae0270, 0x00000000 },
{ 0x00600001, 0xf8600231, 0x00ae0370, 0x00000000 },
{ 0x00600001, 0xf4800231, 0x00ae0280, 0x00000000 },
{ 0x00600001, 0xf8800231, 0x00ae0380, 0x00000000 },
{ 0x00600001, 0xf4a00231, 0x00ae0290, 0x00000000 },
{ 0x00600001, 0xf8a00231, 0x00ae0390, 0x00000000 },
{ 0x00600001, 0xf4c00231, 0x00ae02a0, 0x00000000 },
{ 0x00600001, 0xf8c00231, 0x00ae03a0, 0x00000000 },
{ 0x00600001, 0xf4e00231, 0x00ae02b0, 0x00000000 },
{ 0x00600001, 0xf8e00231, 0x00ae03b0, 0x00000000 },
{ 0x00000409, 0x21003da5, 0x000000a0, 0x00010001 },
{ 0x00000c01, 0x210401a5, 0x000000a2, 0x00000000 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0007001f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000002a },
{ 0x01600031, 0x21400c01, 0x408d0000, 0x0288a007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26000228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x000000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x27000129, 0x02b10140, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x27200129, 0x02b10160, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x27400129, 0x02b10180, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x27600129, 0x02b101a0, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x27800129, 0x02b101c0, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x27a00129, 0x02b101e0, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x27c00129, 0x02b10200, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x27e00129, 0x02b10220, 0x00000000 },
{ 0x00600001, 0x20400022, 0x008d0700, 0x00000000 },
{ 0x00600001, 0x20600022, 0x008d0720, 0x00000000 },
{ 0x00600001, 0x20800022, 0x008d0740, 0x00000000 },
{ 0x00600001, 0x20a00022, 0x008d0760, 0x00000000 },
{ 0x00600001, 0x20c00022, 0x008d0780, 0x00000000 },
{ 0x00600001, 0x20e00022, 0x008d07a0, 0x00000000 },
{ 0x00600001, 0x21000022, 0x008d07c0, 0x00000000 },
{ 0x00600001, 0x21200022, 0x008d07e0, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x12082007 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff2e },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff28 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
/drivers/video/i965/shaders/post_processing/gen5_6/pl3_load_save_pa.g6b
0,0 → 1,192
{ 0x00600001, 0x20e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02498001 },
{ 0x0020000c, 0x21003ca5, 0x00450100, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00040007 },
{ 0x00600001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000040, 0x02298002 },
{ 0x00600001, 0x20600022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x29000cc1, 0x00000040, 0x02298003 },
{ 0x00800001, 0x22200229, 0x00b10770, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b10760, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b10750, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b10740, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10730, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10720, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10710, 0x00000000 },
{ 0x00800001, 0x21400229, 0x00b10700, 0x00000000 },
{ 0x00800001, 0x22800229, 0x008d0820, 0x00000000 },
{ 0x00800001, 0x23800229, 0x008d0920, 0x00000000 },
{ 0x00800001, 0x22600229, 0x008d0810, 0x00000000 },
{ 0x00800001, 0x23600229, 0x008d0910, 0x00000000 },
{ 0x00800001, 0x22400229, 0x008d0800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x008d0900, 0x00000000 },
{ 0x80600042, 0x22b02529, 0x008d0270, 0x008d0280 },
{ 0x80600042, 0x23b02529, 0x008d0370, 0x008d0380 },
{ 0x00600001, 0x22a00129, 0x008d0270, 0x00000000 },
{ 0x80600042, 0x22902529, 0x008d0260, 0x008d0270 },
{ 0x00600001, 0x23a00129, 0x008d0370, 0x00000000 },
{ 0x80600042, 0x23902529, 0x008d0360, 0x008d0370 },
{ 0x00600001, 0x22800129, 0x008d0260, 0x00000000 },
{ 0x80600042, 0x22702529, 0x008d0250, 0x008d0260 },
{ 0x00600001, 0x23800129, 0x008d0360, 0x00000000 },
{ 0x80600042, 0x23702529, 0x008d0350, 0x008d0360 },
{ 0x00600001, 0x22600129, 0x008d0250, 0x00000000 },
{ 0x80600042, 0x22502529, 0x008d0240, 0x008d0250 },
{ 0x00600001, 0x23600129, 0x008d0350, 0x00000000 },
{ 0x80600042, 0x23502529, 0x008d0340, 0x008d0350 },
{ 0x00400040, 0x22083e28, 0x00690028, 0x07000700 },
{ 0x00800001, 0xd0000231, 0x00d20140, 0x00000000 },
{ 0x00800001, 0xd0200231, 0x00d20160, 0x00000000 },
{ 0x00800001, 0xd0400231, 0x00d20180, 0x00000000 },
{ 0x00800001, 0xd0600231, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0xd0800231, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0xd0a00231, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0xd0c00231, 0x00d20200, 0x00000000 },
{ 0x00800001, 0xd0e00231, 0x00d20220, 0x00000000 },
{ 0x00600001, 0xf4000231, 0x00ae0240, 0x00000000 },
{ 0x00600001, 0xf8000231, 0x00ae0340, 0x00000000 },
{ 0x00600001, 0xf4200231, 0x00ae0250, 0x00000000 },
{ 0x00600001, 0xf8200231, 0x00ae0350, 0x00000000 },
{ 0x00600001, 0xf4400231, 0x00ae0260, 0x00000000 },
{ 0x00600001, 0xf8400231, 0x00ae0360, 0x00000000 },
{ 0x00600001, 0xf4600231, 0x00ae0270, 0x00000000 },
{ 0x00600001, 0xf8600231, 0x00ae0370, 0x00000000 },
{ 0x00600001, 0xf4800231, 0x00ae0280, 0x00000000 },
{ 0x00600001, 0xf8800231, 0x00ae0380, 0x00000000 },
{ 0x00600001, 0xf4a00231, 0x00ae0290, 0x00000000 },
{ 0x00600001, 0xf8a00231, 0x00ae0390, 0x00000000 },
{ 0x00600001, 0xf4c00231, 0x00ae02a0, 0x00000000 },
{ 0x00600001, 0xf8c00231, 0x00ae03a0, 0x00000000 },
{ 0x00600001, 0xf4e00231, 0x00ae02b0, 0x00000000 },
{ 0x00600001, 0xf8e00231, 0x00ae03b0, 0x00000000 },
{ 0x00000409, 0x21003da5, 0x000000a0, 0x00010001 },
{ 0x00000c01, 0x210401a5, 0x000000a2, 0x00000000 },
{ 0x00000801, 0x21080061, 0x00000000, 0x0007001f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x0000002a },
{ 0x04600031, 0x21400cc1, 0x00000020, 0x02898007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00000001, 0x26000228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x000000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x27000129, 0x02b10140, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x27200129, 0x02b10160, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x27400129, 0x02b10180, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x27600129, 0x02b101a0, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x27800129, 0x02b101c0, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x27a00129, 0x02b101e0, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x27c00129, 0x02b10200, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x27e00129, 0x02b10220, 0x00000000 },
{ 0x00600001, 0x20400022, 0x008d0700, 0x00000000 },
{ 0x00600001, 0x20600022, 0x008d0720, 0x00000000 },
{ 0x00600001, 0x20800022, 0x008d0740, 0x00000000 },
{ 0x00600001, 0x20a00022, 0x008d0760, 0x00000000 },
{ 0x00600001, 0x20c00022, 0x008d0780, 0x00000000 },
{ 0x00600001, 0x20e00022, 0x008d07a0, 0x00000000 },
{ 0x00600001, 0x21000022, 0x008d07c0, 0x00000000 },
{ 0x00600001, 0x21200022, 0x008d07e0, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x12094007 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff2e },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff28 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen5_6/pl3_load_save_pl3.asm
0,0 → 1,17
// Module name: PL3_LOAD_SAVE_pl3
.kernel PL3_LOAD_SAVE_PL3
.code
 
#include "SetupVPKernel.asm"
#include "Multiple_Loop_Head.asm"
#include "IMC3_Load_8x4.asm"
#include "PL8x4_Save_IMC3.asm"
#include "Multiple_Loop.asm"
 
END_THREAD // End of Thread
 
.end_code
 
.end_kernel
 
// end of pl3_load_save_pl3.asm
/drivers/video/i965/shaders/post_processing/gen5_6/pl3_load_save_pl3.g4b.gen5
0,0 → 1,107
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0248a001 },
{ 0x0020000c, 0x21003ca5, 0x00450100, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x02600031, 0x28000c01, 0x408d0000, 0x0218a002 },
{ 0x00600001, 0x20600022, 0x008d0100, 0x00000000 },
{ 0x02600031, 0x29000c01, 0x408d0000, 0x0218a003 },
{ 0x00800001, 0x22200229, 0x00b10770, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b10760, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b10750, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b10740, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10730, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10720, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10710, 0x00000000 },
{ 0x00800001, 0x21400229, 0x00b10700, 0x00000000 },
{ 0x00800001, 0x22600229, 0x008d0810, 0x00000000 },
{ 0x00800001, 0x23600229, 0x008d0910, 0x00000000 },
{ 0x00800001, 0x22400229, 0x008d0800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x008d0900, 0x00000000 },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x27000c01, 0x408d0000, 0x0248a007 },
{ 0x0020000c, 0x21003da5, 0x004500a0, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x28000c01, 0x408d0000, 0x0218a008 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x01600031, 0x29000c01, 0x408d0000, 0x0218a009 },
{ 0x00800001, 0x28200229, 0x008d0810, 0x00000000 },
{ 0x00800001, 0x29200229, 0x008d0910, 0x00000000 },
{ 0x00800001, 0x28000229, 0x008d0800, 0x00000000 },
{ 0x00800001, 0x29000229, 0x008d0900, 0x00000000 },
{ 0x00000001, 0x26000228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x000000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x00910001, 0x22400231, 0x028d0800, 0x00000000 },
{ 0x00910001, 0x23400231, 0x028d0900, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41410231, 0x02b10701, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x00910001, 0x22500231, 0x028d0810, 0x00000000 },
{ 0x00910001, 0x23500231, 0x028d0910, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41810231, 0x02b10721, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x00910001, 0x22600231, 0x028d0820, 0x00000000 },
{ 0x00910001, 0x23600231, 0x028d0920, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41c10231, 0x02b10741, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x00910001, 0x22700231, 0x028d0830, 0x00000000 },
{ 0x00910001, 0x23700231, 0x028d0930, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42010231, 0x02b10761, 0x00000000 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x0a082007 },
{ 0x0020000c, 0x21003da5, 0x004500a0, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20260, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x04082008 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20360, 0x00000000 },
{ 0x01600031, 0x20000c04, 0x508d0000, 0x04082009 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff46 },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff40 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x0f000031, 0x20000c04, 0x708d0000, 0x82000000 },
/drivers/video/i965/shaders/post_processing/gen5_6/pl3_load_save_pl3.g6b
0,0 → 1,180
{ 0x00600001, 0x20e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x22e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x24e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x25e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x26e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x27e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29000061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29800061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29a00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x29e00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21000021, 0x008d0000, 0x00000000 },
{ 0x00000441, 0x20842e2d, 0x000000b7, 0x00100010 },
{ 0x00000c01, 0x2086022d, 0x000000bb, 0x00000000 },
{ 0x00000801, 0x208a01ad, 0x000000a0, 0x00000000 },
{ 0x00200001, 0x209403bd, 0x006600a4, 0x00000000 },
{ 0x00000040, 0x208435ad, 0x00000084, 0x000000a0 },
{ 0x00200040, 0x210035a5, 0x004500a0, 0x00450074 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02498001 },
{ 0x0020000c, 0x21003ca5, 0x00450100, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20400022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000040, 0x02198002 },
{ 0x00600001, 0x20600022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x29000cc1, 0x00000040, 0x02198003 },
{ 0x00800001, 0x22200229, 0x00b10770, 0x00000000 },
{ 0x00800001, 0x22000229, 0x00b10760, 0x00000000 },
{ 0x00800001, 0x21e00229, 0x00b10750, 0x00000000 },
{ 0x00800001, 0x21c00229, 0x00b10740, 0x00000000 },
{ 0x00800001, 0x21a00229, 0x00b10730, 0x00000000 },
{ 0x00800001, 0x21800229, 0x00b10720, 0x00000000 },
{ 0x00800001, 0x21600229, 0x00b10710, 0x00000000 },
{ 0x00800001, 0x21400229, 0x00b10700, 0x00000000 },
{ 0x00800001, 0x22600229, 0x008d0810, 0x00000000 },
{ 0x00800001, 0x23600229, 0x008d0910, 0x00000000 },
{ 0x00800001, 0x22400229, 0x008d0800, 0x00000000 },
{ 0x00800001, 0x23400229, 0x008d0900, 0x00000000 },
{ 0x00000005, 0x24000c20, 0x000000b8, 0x00ffffff },
{ 0x04000010, 0x20000c04, 0x00000400, 0x00ffffff },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000052 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x27000cc1, 0x00000020, 0x02498007 },
{ 0x0020000c, 0x21003da5, 0x004500a0, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x28000cc1, 0x00000020, 0x02198008 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x04600031, 0x29000cc1, 0x00000020, 0x02198009 },
{ 0x00800001, 0x28200229, 0x008d0810, 0x00000000 },
{ 0x00800001, 0x29200229, 0x008d0910, 0x00000000 },
{ 0x00800001, 0x28000229, 0x008d0800, 0x00000000 },
{ 0x00800001, 0x29000229, 0x008d0900, 0x00000000 },
{ 0x00000001, 0x26000228, 0x000000ba, 0x00000000 },
{ 0x00610001, 0x24400129, 0x000000b8, 0x00000000 },
{ 0x00710001, 0x24400169, 0x00000000, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000440, 0x00000000 },
{ 0x00910001, 0x41400231, 0x02b10700, 0x00000000 },
{ 0x00910001, 0x22400231, 0x028d0800, 0x00000000 },
{ 0x00910001, 0x23400231, 0x028d0900, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000442, 0x00000000 },
{ 0x00910001, 0x41410231, 0x02b10701, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000444, 0x00000000 },
{ 0x00910001, 0x41800231, 0x02b10720, 0x00000000 },
{ 0x00910001, 0x22500231, 0x028d0810, 0x00000000 },
{ 0x00910001, 0x23500231, 0x028d0910, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000446, 0x00000000 },
{ 0x00910001, 0x41810231, 0x02b10721, 0x00000000 },
{ 0x00000001, 0x26020128, 0x00000448, 0x00000000 },
{ 0x00910001, 0x41c00231, 0x02b10740, 0x00000000 },
{ 0x00910001, 0x22600231, 0x028d0820, 0x00000000 },
{ 0x00910001, 0x23600231, 0x028d0920, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044a, 0x00000000 },
{ 0x00910001, 0x41c10231, 0x02b10741, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044c, 0x00000000 },
{ 0x00910001, 0x42000231, 0x02b10760, 0x00000000 },
{ 0x00910001, 0x22700231, 0x028d0830, 0x00000000 },
{ 0x00910001, 0x23700231, 0x028d0930, 0x00000000 },
{ 0x00000001, 0x26020128, 0x0000044e, 0x00000000 },
{ 0x00910001, 0x42010231, 0x02b10761, 0x00000000 },
{ 0x00200001, 0x210001a5, 0x004500a0, 0x00000000 },
{ 0x00000001, 0x21080061, 0x00000000, 0x0007000f },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20140, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20160, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00d20180, 0x00000000 },
{ 0x00800001, 0x20700232, 0x00d201a0, 0x00000000 },
{ 0x00800001, 0x20800232, 0x00d201c0, 0x00000000 },
{ 0x00800001, 0x20900232, 0x00d201e0, 0x00000000 },
{ 0x00800001, 0x20a00232, 0x00d20200, 0x00000000 },
{ 0x00800001, 0x20b00232, 0x00d20220, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x0a094007 },
{ 0x0020000c, 0x21003da5, 0x004500a0, 0x00010001 },
{ 0x00000001, 0x21080061, 0x00000000, 0x00030007 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20240, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20260, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x04094008 },
{ 0x00600001, 0x20200022, 0x008d0100, 0x00000000 },
{ 0x00800001, 0x20400232, 0x00d20340, 0x00000000 },
{ 0x00800001, 0x20500232, 0x00d20360, 0x00000000 },
{ 0x05600031, 0x20000cc4, 0x00000020, 0x04094009 },
{ 0x01000040, 0x20863dad, 0x00000086, 0xffffffff },
{ 0x00000040, 0x20a03dad, 0x000000a0, 0x00100010 },
{ 0x05000010, 0x200035ac, 0x020000a0, 0x00000084 },
{ 0x00010220, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00010220, 0x34001c00, 0x02001400, 0xffffff46 },
{ 0x00000001, 0x20a001ad, 0x0000008a, 0x00000000 },
{ 0x00000040, 0x20a23dad, 0x000000a2, 0x00080008 },
{ 0x00000220, 0x34001c00, 0x00001400, 0xffffff40 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
{ 0x00600001, 0x21e00022, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001cc4, 0x000001e0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/DI_Core.g4a
0,0 → 1,309
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 22 // Total instruction count
// 1 // Total kernel count
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// End of common.inc
 
// FileName: DI.asm
// Author: Vivek Kumar
// Description: Tasks for DI only case (16x4 block)
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x4AE8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(9,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
// FileName: DI_STMM_Save.asm
// Author: Vivek Kumar
// Description: Saves DI STMM Data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write STMM to memory
mov (8) mudMSGHDR_STMM(0)<1> r0.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udDNDI_RESP(8,0) // Move STMM to MRF
 
shr (1) mudMSGHDR_STMM(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin / 2
mov (1) mudMSGHDR_STMM(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_STMM(0,2)<1> 0x30007:ud { NoDDChk } // block width and height (8x4)
 
send (8) null<1>:d r20 0x5 0x40A8021:ud
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x20007:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | MCNT | FCNT | TCNT | X | X | X | X |
//----------------------------------------------------
//| DcTpT | SVCM | DcBpT | DcTpB |
//----------------------------------------------------
//| SHCM | STAD | DcTcB | DcBpB |
//----------------------------------------------------
mov (1) mudMSGHDR_ENC_STATS(1,0)<1> udDNDI_RESP(9,1)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,3)<2> udDNDI_RESP(9,3)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,2)<2> udDNDI_RESP(9,5)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
/drivers/video/i965/shaders/post_processing/gen7/DI_Save_NV12_16x4.g4a
0,0 → 1,279
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 20 // Total instruction count
// 1 // Total kernel count
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// End of common.inc
 
// FileName: DI_Save_NV12_16x4.asm
// Author: Vivek Kumar
// Description: Save two 16x4 blocks of DI output in NV12 format
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
mov (2) r27.0<1>:d r7.0<2;2,1>:w { NoDDClr }
mov (1) r27.2<1>:ud 0x3000F:ud { NoDDChk } // Block width and height (16x4)
 
//Bottom field Y
mov (8) mudMSGHDR_DI_OUT1(1)<1> udDNDI_RESP(0,0)
mov (8) mudMSGHDR_DI_OUT1(2)<1> udDNDI_RESP(0,8)
// Top field Y
mov (8) mudMSGHDR_DI_OUT2(1)<1> udDNDI_RESP(4,0)
mov (8) mudMSGHDR_DI_OUT2(2)<1> udDNDI_RESP(4,8)
 
//copy message desrcptor to the message header
mov (8) r18.0<1>:ud r27<8;8,1>:ud
mov (8) r23.0<1>:ud r27<8;8,1>:ud
 
//Change origin to U/V block
asr (1) r27.1<1>:d r27.1<0;1,0>:d 1:w { NoDDClr } // U/V block origin should be half of Y's
mov (1) r27.2<1>:ud 0x1000F:ud { NoDDChk } // Block width and height (16x2)
 
// Bottom field U/V
mov (16) r21.0<2>:ub ubDNDI_RESP(2, 1)<32;8,2> { NoDDClr }
mov (16) r21.1<2>:ub ubDNDI_RESP(2, 0)<32;8,2> { NoDDChk }
 
// Top field U/V
mov (16) r26.0<2>:ub ubDNDI_RESP(6, 1)<32;8,2> { NoDDClr }
mov (16) r26.1<2>:ub ubDNDI_RESP(6, 0)<32;8,2> { NoDDChk }
 
//copy message desrcptor to the message header
mov (8) r21<1>:ud r27<8;8,1>:ud
mov (8) r26<1>:ud r27<8;8,1>:ud
 
//Send out Y component on previous frame to surface
send (8) null<1>:d r18.0 0x5 0x60A801B:ud
//Send out Y component on current frame to surface
send (8) null<1>:d r23.0 0x5 0x60A801E:ud
//Send out U/V component on previous frame to surface
send (8) null<1>:d r21 0x5 0x40A801C:ud
//Send out U/V component on current frame to surface
send (8) null<1>:d r26 0x5 0x40A801F:ud
/drivers/video/i965/shaders/post_processing/gen7/DI_Save_PA_16x4.g4a
0,0 → 1,289
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 33 // Total instruction count
// 1 // Total kernel count
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// End of common.inc
 
// FileName: DI_Save_PA_16x4.asm
// Author: Vivek Kumar
// Description: Save two 16x4 blocks of DI output in Packed format
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
add (4) a0.4<1>:uw r2.28<4;4,1>:ub 608:w // Initial Y,U,V offset in YUV422 block; it starts at m20
 
mov (8) r27.0<1>:ud r0.0<8;8,1>:ud
shl (1) r27.0<1>:d r7.0<0;1,0>:w 1:w { NoDDClr } // H. block origin need to be doubled
mov (1) r27.1<1>:d r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Block origin
mov (1) r27.2<1>:ud 0x3001F:ud { NoDDChk } // Block width and height (32x8)
 
//prepare the message headers
mov (8) r18.0<1>:ud r27<8;8,1>:ud
mov (8) r23.0<1>:ud r27<8;8,1>:ud
 
// Pack 2nd field Y
mov (16) r[a0.4, 0]<2> ubDNDI_RESP(0,0) { NoDDClr }
mov (16) r[a0.4, 32]<2> ubDNDI_RESP(0,16) { NoDDClr }
mov (16) r[a0.4, 64]<2> ubDNDI_RESP(0,32) { NoDDClr }
mov (16) r[a0.4, 96]<2> ubDNDI_RESP(0,48) { NoDDClr }
// Pack 2nd field U
mov (8) r[a0.5, 0]<4> ubDNDI_RESP(2,1)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 32]<4> ubDNDI_RESP(2,17)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 64]<4> ubDNDI_RESP(2,33)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 96]<4> ubDNDI_RESP(2,49)<16;8,2> { NoDDClr, NoDDChk } //U pixels
// Pack 2nd field V
mov (8) r[a0.6, 0]<4> ubDNDI_RESP(2,0)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 32]<4> ubDNDI_RESP(2,16)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 64]<4> ubDNDI_RESP(2,32)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 96]<4> ubDNDI_RESP(2,48)<16;8,2> { NoDDChk } //Vpixels
 
// Pack 1st field Y
mov (16) r[a0.4, 160]<2> ubDNDI_RESP(4,0) { NoDDClr }
mov (16) r[a0.4, 192]<2> ubDNDI_RESP(4,16) { NoDDClr }
mov (16) r[a0.4, 224]<2> ubDNDI_RESP(4,32) { NoDDClr }
mov (16) r[a0.4, 256]<2> ubDNDI_RESP(4,48) { NoDDClr }
// Pack 1st field U
mov (8) r[a0.5, 160]<4> ubDNDI_RESP(6,1)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 192]<4> ubDNDI_RESP(6,17)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 224]<4> ubDNDI_RESP(6,33)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 256]<4> ubDNDI_RESP(6,49)<16;8,2> { NoDDClr, NoDDChk } //U pixels
// Pack 1st field V
mov (8) r[a0.6, 160]<4> ubDNDI_RESP(6,0)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 192]<4> ubDNDI_RESP(6,16)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 224]<4> ubDNDI_RESP(6,32)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 256]<4> ubDNDI_RESP(6,48)<16;8,2> { NoDDChk } //Vpixels
 
//save the previous frame
send (8) null<1>:d r18.0 0x5 0xA0A801B:ud
 
//save the current frame
send (8) null<1>:d r23.0 0x5 0xA0A801E:ud
/drivers/video/i965/shaders/post_processing/gen7/EOT.g4a
0,0 → 1,166
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 2 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
/drivers/video/i965/shaders/post_processing/gen7/Makefile.am
0,0 → 1,97
INTEL_PP_G7B = \
avs.g7b \
dndi.g7b \
nv12_dn_nv12.g7b \
pa_to_pl2.g7b \
pa_to_pl3.g7b \
pl2_to_pa.g7b \
pl2_to_pl2.g7b \
pl2_to_pl3.g7b \
pl3_to_pa.g7b \
pl3_to_pl2.g7b \
pl3_to_pl3.g7b \
$(NULL)
 
INTEL_PP_G4A = \
DI_Core.g4a \
DI_Save_NV12_16x4.g4a \
DI_Save_PA_16x4.g4a \
EOT.g4a \
NV12_DI_NV12.g4a \
NV12_DNDI_422CP.g4a \
NV12_DNDI_PA.g4a \
NV12_DNUV_NV12.g4a \
NV12_DN_422CP.g4a \
NV12_DN_NV12.g4a \
PA_AVS_Buf_0.g4a \
PA_AVS_Buf_1.g4a \
PA_AVS_Buf_2.g4a \
PA_AVS_Buf_3.g4a \
PA_DI_422CP.g4a \
PA_DI_PA.g4a \
PA_DNDI_422CP.g4a \
PA_DNDI_PA.g4a \
PA_DNUV_PA.g4a \
PA_DN_422CP.g4a \
PA_DN_PA.g4a \
PL2_AVS_Buf_0.g4a \
PL2_AVS_Buf_1.g4a \
PL2_AVS_Buf_2.g4a \
PL2_AVS_Buf_3.g4a \
PL3_AVS_Buf_0.g4a \
PL3_AVS_Buf_1.g4a \
PL3_AVS_Buf_2.g4a \
PL3_AVS_Buf_3.g4a \
PL3_DNDI_422CP.g4a \
PL3_DNDI_PA.g4a \
PL3_DNUV_PL3.g4a \
PL3_DN_422CP.g4a \
PL3_DN_PL3.g4a \
PL_DI_422CP.g4a \
PL_DI_PA.g4a \
Save_AVS_PA.g4a \
Save_AVS_PL3.g4a \
Save_AVS_NV12.g4a \
Save_AVS_RGB.g4a \
Set_AVS_Buf_0123_BGRA.g4a \
Set_AVS_Buf_0123_PL2.g4a \
Set_AVS_Buf_0123_PL3.g4a \
Set_AVS_Buf_0123_VUYA.g4a \
Set_AVS_Buf_0123_VYUA.g4a \
Set_Layer_0.g4a \
VP_Setup.g4a \
$(NULL)
 
INTEL_PP_ASM = $(INTEL_PP_G7B:%.g7b=%.asm)
INTEL_PP_GEN7_ASM = $(INTEL_PP_G7B:%.g7b=%.g7s)
 
INTEL_PP_G75B = $(INTEL_PP_G7B:%.g7b=%.g75b)
 
TARGETS =
if HAVE_GEN4ASM
TARGETS += $(INTEL_PP_G7B) $(INTEL_PP_G75B)
endif
 
all-local: $(TARGETS)
 
SUFFIXES = .g7b .g7s .asm
 
$(INTEL_PP_GEN7_ASM): $(INTEL_PP_ASM) $(INTEL_PP_G4A)
.asm.g7s:
$(AM_V_GEN)cpp $< > _pp0.$@; \
../../gpp.py _pp0.$@ $@; \
rm _pp0.$@
.g7s.g7b:
$(AM_V_GEN)intel-gen4asm -a -o $@ -g 7 $<
 
.g7s.g75b:
$(AM_V_GEN)intel-gen4asm -a -o $@ -g 7.5 $<
 
CLEANFILES = $(INTEL_PP_GEN7_ASM)
 
EXTRA_DIST = \
$(INTEL_PP_G7B) \
$(INTEL_PP_G75B)
 
# Extra clean files so that maintainer-clean removes *everything*
MAINTAINERCLEANFILES = Makefile.in
/drivers/video/i965/shaders/post_processing/gen7/NV12_DI_NV12.g4a
0,0 → 1,392
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 57 // Total instruction count
// 1 // Total kernel count
 
.kernel NV12_DI_NV12
.code
 
 
 
// FileName: DI.asm
// Author: Vivek Kumar
// Description: Tasks for DI only case (16x4 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x4AE8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(9,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DI_STMM_Save.asm
// Author: Vivek Kumar
// Description: Saves DI STMM Data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write STMM to memory
mov (8) mudMSGHDR_STMM(0)<1> r0.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udDNDI_RESP(8,0) // Move STMM to MRF
 
shr (1) mudMSGHDR_STMM(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin / 2
mov (1) mudMSGHDR_STMM(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_STMM(0,2)<1> 0x30007:ud { NoDDChk } // block width and height (8x4)
 
send (8) null<1>:d r20 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x20007:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | MCNT | FCNT | TCNT | X | X | X | X |
//----------------------------------------------------
//| DcTpT | SVCM | DcBpT | DcTpB |
//----------------------------------------------------
//| SHCM | STAD | DcTcB | DcBpB |
//----------------------------------------------------
mov (1) mudMSGHDR_ENC_STATS(1,0)<1> udDNDI_RESP(9,1)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,3)<2> udDNDI_RESP(9,3)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,2)<2> udDNDI_RESP(9,5)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DI_Save_NV12_16x4.asm
// Author: Vivek Kumar
// Description: Save two 16x4 blocks of DI output in Packed format
 
 
// add (4) a0.4<1>:uw r2.28<4;4,1>:ub 608:w // Initial Y,U,V offset in YUV422 block; it starts at m20
 
mov (8) r28.0<1>:ud r0.0<8;8,1>:ud
mov (1) r28.0<1>:d r7.0<0;1,0>:w { NoDDClr } // H. block origin need to be doubled
mov (1) r28.1<1>:d r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Block origin
mov (1) r28.2<1>:ud 0x3000F:ud { NoDDChk } // Block width and height (32x8)
 
//prepare the message headers
mov (8) r18.0<1>:ud r28<8;8,1>:ud
mov (8) r23.0<1>:ud r28<8;8,1>:ud
 
//Bottom field Y
mov (8) mudMSGHDR_DI_OUT1(1)<1> udDNDI_RESP(0,0)
mov (8) mudMSGHDR_DI_OUT1(2)<1> udDNDI_RESP(0,8)
// Top field Y
mov (8) mudMSGHDR_DI_OUT2(1)<1> udDNDI_RESP(4,0)
mov (8) mudMSGHDR_DI_OUT2(2)<1> udDNDI_RESP(4,8)
 
//Change origin to U/V block
asr (1) r28.1<1>:d r28.1<0;1,0>:d 1:w { NoDDClr } // U/V block origin should be half of Y's
mov (1) r28.2<1>:ud 0x1000F:ud { NoDDChk } // Block width and height (16x2)
 
// Bottom field U/V
mov (16) r22.0<2>:ub ubDNDI_RESP(2, 1)<32;8,2> { NoDDClr }
mov (16) r22.1<2>:ub ubDNDI_RESP(2, 0)<32;8,2> { NoDDChk }
 
// Top field U/V
mov (16) r27.0<2>:ub ubDNDI_RESP(6, 1)<32;8,2> { NoDDClr }
mov (16) r27.1<2>:ub ubDNDI_RESP(6, 0)<32;8,2> { NoDDChk }
 
//copy message desrcptor to the message header
mov (8) r21<1>:ud r28<8;8,1>:ud
mov (8) r26<1>:ud r28<8;8,1>:ud
 
//Send out Y component on previous frame to surface
send (8) null<1>:d r18 0x5 0x60A801B:ud
//Send out Y component on current frame to surface
send (8) null<1>:d r23 0x5 0x60A801E:ud
//Send out U/V component on previous frame to surface
send (8) null<1>:d r21 0x5 0x40A801C:ud
//Send out U/V component on current frame to surface
send (8) null<1>:d r26 0x5 0x40A801F:ud
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/NV12_DNDI_422CP.g4a
0,0 → 1,557
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 116 // Total instruction count
// 1 // Total kernel count
 
.kernel NV12_DNDI_422CP
.code
 
 
 
// FileName: DNDI_PL_Core.asm
// Author: Tatiya, Rupesh
 
 
 
// FileName: DNDI_Core.asm
// Author: Vivek Kumar
// Description: Tasks for DN+DI case (16x4 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x4BE8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(9,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DI_STMM_Save.asm
// Author: Vivek Kumar
// Description: Saves DI STMM Data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write STMM to memory
mov (8) mudMSGHDR_STMM(0)<1> r0.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udDNDI_RESP(8,0) // Move STMM to MRF
 
shr (1) mudMSGHDR_STMM(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin / 2
mov (1) mudMSGHDR_STMM(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_STMM(0,2)<1> 0x30007:ud { NoDDChk } // block width and height (8x4)
 
send (8) null<1>:d r20 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Hist_Save.asm
// Author: Vivek Kumar
// Description: Saves DN history data to statistics surface
 
// Write denoise history to memory
mov (8) r27<1>:ud r0.0<8;8,1>:ud // message header
 
mov (1) mudMSGHDR_HIST(1)<1> udDNDI_RESP(9,0)<0;1,0> // Move denoise history to MRF (4x1)
 
 
shr (2) r27.0<1>:ud r7.0<2;2,1>:w 2:w // X,Y origin / 4
add (1) r27.0<1>:ud r27.0<0;1,0>:ud r1.12<0;1,0>:uw { NoDDClr } // Add pitch to X origin
mov (1) r27.2<1>:ud 0x3:ud { NoDDChk } // block width and height
 
mov (8) mudMSGHDR_HIST(0)<1> r27.0<8;8,1>:ud
send (8) null<1>:d r22 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x20007:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | MCNT | FCNT | TCNT | X | X | X | X |
//----------------------------------------------------
//| DcTpT | SVCM | DcBpT | DcTpB |
//----------------------------------------------------
//| SHCM | STAD | DcTcB | DcBpB |
//----------------------------------------------------
mov (1) mudMSGHDR_ENC_STATS(1,0)<1> udDNDI_RESP(9,1)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,3)<2> udDNDI_RESP(9,3)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,2)<2> udDNDI_RESP(9,5)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Load_UV_NV12_16x4.asm
// Author: Vivek Kumar
// Description: Read UV for 16x4 block through DATAPORT
 
 
 
// FileName: UVCopy_Load_16x4.asm
// Author: Vivek Kumar
// Description: Read UV for 16x4 block through DATAPORT
 
 
add (2) r27.0<1>:d r7.0<2;2,1>:w r4.4<2;2,1>:w // Source Y Block origin
asr (1) r27.1<1>:d r27.1<0;1,0>:d 1:w { NoDDClr } // U/V block origin should be half of Y's
mov (1) r27.2<1>:ud 0x1000F:ud { NoDDChk } // U/V block width and height (8x4)
mov (8) mudMSGHDR_UVCOPY(0)<1> r27.0<8;8,1>:ud
send (8) udDNDI_UV_RESP(0)<1> r36 0x4 0x2190001:ud
 
 
 
// FileName: DN_Save_Y_16x4.asm
// Author: Vivek Kumar
// Description: Save one 16x4 blocks of Y channel of DN output for reference
 
 
// check top/bottom field first
cmp.e.f0.0 (1) null<1>:w r1.28<0;1,0>:ub 1:w
 
mov (8) mudMSGHDR_DN_OUT(0)<1> r0<8;8,1>:ud // message header
mov (2) mdMSGHDR_DN_OUT(0,0)<1> r7.0<2;2,1>:w { NoDDClr } // X origin * 2 (422 output)
mov (1) mudMSGHDR_DN_OUT(0,2)<1> 0x3000F:ud { NoDDChk } // block width and height (32x8)
 
(f0.0) jmpi (1) TOP_FIELD_FIRST
 
BOTTOM_FIELD_FIRST:
 
mov (4) mudMSGHDR_DN_OUT(1,0)<1> udDNDI_RESP(10,0)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(1,4)<1> udDNDI_RESP(4,4)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
mov (4) mudMSGHDR_DN_OUT(2,0)<1> udDNDI_RESP(10,4)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(2,4)<1> udDNDI_RESP(5,4)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
 
jmpi (1) SAVE_DN_CURR
 
TOP_FIELD_FIRST:
mov (4) mudMSGHDR_DN_OUT(1,0)<1> udDNDI_RESP(4,0)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(1,4)<1> udDNDI_RESP(10,0)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
mov (4) mudMSGHDR_DN_OUT(2,0)<1> udDNDI_RESP(5,0)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(2,4)<1> udDNDI_RESP(10,4)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
 
SAVE_DN_CURR:
//send out data through data port
send (8) null<1>:d r31.0 0x5 0x60A8018:ud
 
 
 
// FileName: DI_Save_422CP_16x4.asm
// Author: Vivek Kumar
// Description: Save two 16x4 blocks of DI output in 422 format to Color Pipe (IECP)
 
 
.declare mubMSGHDR_DI_OUT1_1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mubMSGHDR_DI_OUT1_2 Base=r21.0 ElementSize=1 Type=ub
 
 
.declare mubMSGHDR_DI_OUT2_1 Base=r24.0 ElementSize=1 Type=ub
 
 
.declare mubMSGHDR_DI_OUT2_2 Base=r27.0 ElementSize=1 Type=ub
 
 
mov (8) r27.0<1>:ud r0.0<8;8,1>:ud
shl (1) r27.0<1>:ud r7.0<0;1,0>:w 1:w { NoDDClr } // H. block origin need to be doubled
mov (1) r27.1<1>:ud r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Block origin
mov (1) r27.2<1>:ud 0x3000F:ud { NoDDClr, NoDDChk } // Block width and height (16x8)
 
//M0.3 - 0 - CP Enable, 1 - Area of Interest, 3:2 Message Format(TBD), 4:3 - Ignored, 31:5 CP state pointer
//Compose area-of-interest bit + color pipe state pointer
or (1) r27.3<1>:ud r2.4<0;1,0>:ud r7.26<0;1,0>:b { NoDDChk }
 
//prepare the message headers
mov (8) r18.0<1>:ud r27<8;8,1>:ud
mov (8) r24.0<1>:ud r27<8;8,1>:ud
 
 
// Pack 2nd field Y; First 8x4 block
mov (8) mubMSGHDR_DI_OUT1_1(1)<2> ubDNDI_RESP(0,0)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_1(1,16)<2> ubDNDI_RESP(0,16)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_1(2)<2> ubDNDI_RESP(0,32)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_1(2,16)<2> ubDNDI_RESP(0,48)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 2nd field U, V; First 8x4 block
mov (4) mubMSGHDR_DI_OUT1_1(1,1)<4> ubDNDI_RESP(2,1)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(1,17)<4> ubDNDI_RESP(2,17)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_1(1,3)<4> ubDNDI_RESP(2,0)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(1,19)<4> ubDNDI_RESP(2,16)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(2,1)<4> ubDNDI_RESP(2,33)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(2,17)<4> ubDNDI_RESP(2,49)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_1(2,3)<4> ubDNDI_RESP(2,32)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(2,19)<4> ubDNDI_RESP(2,48)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
 
// Pack 2nd field Y; Second 8x4 block
mov (8) r21.0<1>:ud r18.0<8;8,1>:ud
add (1) r21.0<1>:ud r21.0<0;1,0>:w 0x10:w
 
mov (8) mubMSGHDR_DI_OUT1_2(1)<2> ubDNDI_RESP(0,8)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_2(1,16)<2> ubDNDI_RESP(0,24)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_2(2)<2> ubDNDI_RESP(0,40)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_2(2,16)<2> ubDNDI_RESP(0,56)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 2nd field U, V; Second 8x4 block
mov (4) mubMSGHDR_DI_OUT1_2(1,1)<4> ubDNDI_RESP(2,9)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(1,17)<4> ubDNDI_RESP(2,25)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_2(1,3)<4> ubDNDI_RESP(2,8)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(1,19)<4> ubDNDI_RESP(2,24)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(2,1)<4> ubDNDI_RESP(2,41)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(2,17)<4> ubDNDI_RESP(2,57)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_2(2,3)<4> ubDNDI_RESP(2,40)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(2,19)<4> ubDNDI_RESP(2,56)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
send (8) null<1>:d r18.0 0x5 0x60A801B:ud
send (8) null<1>:d r21.0 0x5 0x60A801B:ud
 
// Pack 1st field Y; 1st 8x4 block
mov (8) mubMSGHDR_DI_OUT2_1(1)<2> ubDNDI_RESP(4,0)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_1(1,16)<2> ubDNDI_RESP(4,16)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_1(2)<2> ubDNDI_RESP(4,32)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_1(2,16)<2> ubDNDI_RESP(4,48)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 1st field U,V; 1st 8x4 block
mov (4) mubMSGHDR_DI_OUT2_1(1,1)<4> ubDNDI_RESP(6,1)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(1,17)<4> ubDNDI_RESP(6,17)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_1(1,3)<4> ubDNDI_RESP(6,0)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(1,19)<4> ubDNDI_RESP(6,16)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(2,1)<4> ubDNDI_RESP(6,33)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(2,17)<4> ubDNDI_RESP(6,49)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_1(2,3)<4> ubDNDI_RESP(6,32)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(2,19)<4> ubDNDI_RESP(6,48)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
// Pack 1st field Y; 2nd 8x4 block
mov (8) r27.0<1>:ud r24.0<8;8,1>:ud
add (1) r27.0<1>:ud r27.0<0;1,0>:w 0x10:w
 
mov (8) mubMSGHDR_DI_OUT2_2(1)<2> ubDNDI_RESP(4,8)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_2(1,16)<2> ubDNDI_RESP(4,24)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_2(2)<2> ubDNDI_RESP(4,40)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_2(2,16)<2> ubDNDI_RESP(4,56)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 1st field U, V; 2nd 8x4 block
mov (4) mubMSGHDR_DI_OUT2_2(1,1)<4> ubDNDI_RESP(6,9)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(1,17)<4> ubDNDI_RESP(6,25)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_2(1,3)<4> ubDNDI_RESP(6,8)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(1,19)<4> ubDNDI_RESP(6,24)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(2,1)<4> ubDNDI_RESP(6,41)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(2,17)<4> ubDNDI_RESP(6,57)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_2(2,3)<4> ubDNDI_RESP(6,40)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(2,19)<4> ubDNDI_RESP(6,56)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
send (8) null<1>:d r24.0 0x5 0x60A801E:ud
send (8) null<1>:d r27.0 0x5 0x60A801E:ud
 
 
 
// FileName: DN_Save_UV_NV12_16x4.asm
// Author: Vivek Kumar
// Description: Save UV for 16x4 block through DATAPORT
 
 
 
// FileName: UVCopy_Save_16x4.asm
// Author: Vivek Kumar
// Description: Save UV for 16x4 block through DATAPORT
 
 
//Reuse the header from Load component
 
mov (8) mudMSGHDR_UVCOPY(1)<1> udDNDI_UV_RESP(0)<8;8,1>
send (8) null<1>:d r36 0x5 0x40A8019:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/NV12_DNDI_PA.g4a
0,0 → 1,495
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 86 // Total instruction count
// 1 // Total kernel count
 
.kernel NV12_DNDI_PA
.code
 
 
 
// FileName: DNDI_PL_Core.asm
// Author: Tatiya, Rupesh
 
 
 
// FileName: DNDI_Core.asm
// Author: Vivek Kumar
// Description: Tasks for DN+DI case (16x4 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x4BE8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(9,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DI_STMM_Save.asm
// Author: Vivek Kumar
// Description: Saves DI STMM Data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write STMM to memory
mov (8) mudMSGHDR_STMM(0)<1> r0.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udDNDI_RESP(8,0) // Move STMM to MRF
 
shr (1) mudMSGHDR_STMM(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin / 2
mov (1) mudMSGHDR_STMM(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_STMM(0,2)<1> 0x30007:ud { NoDDChk } // block width and height (8x4)
 
send (8) null<1>:d r20 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Hist_Save.asm
// Author: Vivek Kumar
// Description: Saves DN history data to statistics surface
 
// Write denoise history to memory
mov (8) r27<1>:ud r0.0<8;8,1>:ud // message header
 
mov (1) mudMSGHDR_HIST(1)<1> udDNDI_RESP(9,0)<0;1,0> // Move denoise history to MRF (4x1)
 
 
shr (2) r27.0<1>:ud r7.0<2;2,1>:w 2:w // X,Y origin / 4
add (1) r27.0<1>:ud r27.0<0;1,0>:ud r1.12<0;1,0>:uw { NoDDClr } // Add pitch to X origin
mov (1) r27.2<1>:ud 0x3:ud { NoDDChk } // block width and height
 
mov (8) mudMSGHDR_HIST(0)<1> r27.0<8;8,1>:ud
send (8) null<1>:d r22 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x20007:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | MCNT | FCNT | TCNT | X | X | X | X |
//----------------------------------------------------
//| DcTpT | SVCM | DcBpT | DcTpB |
//----------------------------------------------------
//| SHCM | STAD | DcTcB | DcBpB |
//----------------------------------------------------
mov (1) mudMSGHDR_ENC_STATS(1,0)<1> udDNDI_RESP(9,1)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,3)<2> udDNDI_RESP(9,3)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,2)<2> udDNDI_RESP(9,5)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Load_UV_NV12_16x4.asm
// Author: Vivek Kumar
// Description: Read UV for 16x4 block through DATAPORT
 
 
 
// FileName: UVCopy_Load_16x4.asm
// Author: Vivek Kumar
// Description: Read UV for 16x4 block through DATAPORT
 
 
add (2) r27.0<1>:d r7.0<2;2,1>:w r4.4<2;2,1>:w // Source Y Block origin
asr (1) r27.1<1>:d r27.1<0;1,0>:d 1:w { NoDDClr } // U/V block origin should be half of Y's
mov (1) r27.2<1>:ud 0x1000F:ud { NoDDChk } // U/V block width and height (8x4)
mov (8) mudMSGHDR_UVCOPY(0)<1> r27.0<8;8,1>:ud
send (8) udDNDI_UV_RESP(0)<1> r36 0x4 0x2190001:ud
 
 
 
// FileName: DN_Save_Y_16x4.asm
// Author: Vivek Kumar
// Description: Save one 16x4 blocks of Y channel of DN output for reference
 
 
// check top/bottom field first
cmp.e.f0.0 (1) null<1>:w r1.28<0;1,0>:ub 1:w
 
mov (8) mudMSGHDR_DN_OUT(0)<1> r0<8;8,1>:ud // message header
mov (2) mdMSGHDR_DN_OUT(0,0)<1> r7.0<2;2,1>:w { NoDDClr } // X origin * 2 (422 output)
mov (1) mudMSGHDR_DN_OUT(0,2)<1> 0x3000F:ud { NoDDChk } // block width and height (32x8)
 
(f0.0) jmpi (1) TOP_FIELD_FIRST
 
BOTTOM_FIELD_FIRST:
 
mov (4) mudMSGHDR_DN_OUT(1,0)<1> udDNDI_RESP(10,0)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(1,4)<1> udDNDI_RESP(4,4)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
mov (4) mudMSGHDR_DN_OUT(2,0)<1> udDNDI_RESP(10,4)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(2,4)<1> udDNDI_RESP(5,4)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
 
jmpi (1) SAVE_DN_CURR
 
TOP_FIELD_FIRST:
mov (4) mudMSGHDR_DN_OUT(1,0)<1> udDNDI_RESP(4,0)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(1,4)<1> udDNDI_RESP(10,0)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
mov (4) mudMSGHDR_DN_OUT(2,0)<1> udDNDI_RESP(5,0)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(2,4)<1> udDNDI_RESP(10,4)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
 
SAVE_DN_CURR:
//send out data through data port
send (8) null<1>:d r31.0 0x5 0x60A8018:ud
 
 
 
// FileName: DI_Save_PA_16x4.asm
// Author: Vivek Kumar
// Description: Save two 16x4 blocks of DI output in Packed format
 
 
add (4) a0.4<1>:uw r2.28<4;4,1>:ub 608:w // Initial Y,U,V offset in YUV422 block; it starts at m20
 
mov (8) r27.0<1>:ud r0.0<8;8,1>:ud
shl (1) r27.0<1>:d r7.0<0;1,0>:w 1:w { NoDDClr } // H. block origin need to be doubled
mov (1) r27.1<1>:d r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Block origin
mov (1) r27.2<1>:ud 0x3001F:ud { NoDDChk } // Block width and height (32x8)
 
//prepare the message headers
mov (8) r18.0<1>:ud r27<8;8,1>:ud
mov (8) r23.0<1>:ud r27<8;8,1>:ud
 
// Pack 2nd field Y
mov (16) r[a0.4, 0]<2> ubDNDI_RESP(0,0) { NoDDClr }
mov (16) r[a0.4, 32]<2> ubDNDI_RESP(0,16) { NoDDClr }
mov (16) r[a0.4, 64]<2> ubDNDI_RESP(0,32) { NoDDClr }
mov (16) r[a0.4, 96]<2> ubDNDI_RESP(0,48) { NoDDClr }
// Pack 2nd field U
mov (8) r[a0.5, 0]<4> ubDNDI_RESP(2,1)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 32]<4> ubDNDI_RESP(2,17)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 64]<4> ubDNDI_RESP(2,33)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 96]<4> ubDNDI_RESP(2,49)<16;8,2> { NoDDClr, NoDDChk } //U pixels
// Pack 2nd field V
mov (8) r[a0.6, 0]<4> ubDNDI_RESP(2,0)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 32]<4> ubDNDI_RESP(2,16)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 64]<4> ubDNDI_RESP(2,32)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 96]<4> ubDNDI_RESP(2,48)<16;8,2> { NoDDChk } //Vpixels
 
// Pack 1st field Y
mov (16) r[a0.4, 160]<2> ubDNDI_RESP(4,0) { NoDDClr }
mov (16) r[a0.4, 192]<2> ubDNDI_RESP(4,16) { NoDDClr }
mov (16) r[a0.4, 224]<2> ubDNDI_RESP(4,32) { NoDDClr }
mov (16) r[a0.4, 256]<2> ubDNDI_RESP(4,48) { NoDDClr }
// Pack 1st field U
mov (8) r[a0.5, 160]<4> ubDNDI_RESP(6,1)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 192]<4> ubDNDI_RESP(6,17)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 224]<4> ubDNDI_RESP(6,33)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 256]<4> ubDNDI_RESP(6,49)<16;8,2> { NoDDClr, NoDDChk } //U pixels
// Pack 1st field V
mov (8) r[a0.6, 160]<4> ubDNDI_RESP(6,0)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 192]<4> ubDNDI_RESP(6,16)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 224]<4> ubDNDI_RESP(6,32)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 256]<4> ubDNDI_RESP(6,48)<16;8,2> { NoDDChk } //Vpixels
 
//save the previous frame
send (8) null<1>:d r18.0 0x5 0xA0A801B:ud
 
//save the current frame
send (8) null<1>:d r23.0 0x5 0xA0A801E:ud
 
 
 
// FileName: DN_Save_UV_NV12_16x4.asm
// Author: Vivek Kumar
// Description: Save UV for 16x4 block through DATAPORT
 
 
 
// FileName: UVCopy_Save_16x4.asm
// Author: Vivek Kumar
// Description: Save UV for 16x4 block through DATAPORT
 
 
//Reuse the header from Load component
 
mov (8) mudMSGHDR_UVCOPY(1)<1> udDNDI_UV_RESP(0)<8;8,1>
send (8) null<1>:d r36 0x5 0x40A8019:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/NV12_DNUV_NV12.g4a
0,0 → 1,2491
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 1153 // Total instruction count
// 1 // Total kernel count
 
 
.kernel NV12_DNUV_NV12
.code
 
 
 
//Module : DN_UV_Setup
//Author : Tatiya, Rupesh
//Description : Initial Set-up for DN_UV
 
 
 
 
// Module name : ChromaDenoise.inc
// Author : Tatiya, Rupesh
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//======================================================
//Interface for serpent mode Chroma Denoise, added by Le
//======================================================
//r1
 
 
//noise history thresholds (low and high)
 
 
//temporal difference thresholds (high and low)
 
 
//noise history thresholds (low and high)
//#define ubNoiseHistMaxHigh r1.22
//#define ubNoiseHistMaxLow r1.23
//#define ubNoiseHistDeltaHigh r1.24
//#define ubNoiseHistDeltaLow r1.25
 
//Gaussian thresholds
 
 
//temporal difference thresholds (default)
 
 
//r2
//history thresholds (default)
 
 
//denoise factor (0-63)
 
 
//====================== Binding table (Explicit To DNUV)=========================================
//Used by DN_UV kernels
 
 
//Pointer to Current Frame UV
 
 
//r1-r6
//CURBE GRFs used as TEMP : Used for max computation and storing max temporarily. : r1-r6
 
 
.declare ubCURBE_TEMP Base=r1.0 ElementSize=1 Type=ub
.declare uwCURBE_TEMP Base=r1.0 ElementSize=2 Type=uw
.declare wCURBE_TEMP Base=r1.0 ElementSize=2 Type=w
.declare fCURBE_TEMP Base=r1.0 ElementSize=4 Type=f
.declare udCURBE_TEMP Base=r1.0 ElementSize=4 Type=ud
.declare uwMAX_ABS_DIFF Base=r5.0 ElementSize=2 Type=uw
 
//r1
 
 
//r3
 
 
//r4
 
//r7
//All of the following has to defined in Same GRF for optimal performance.
 
 
//r8-24
//Previous Frame UV
 
.declare udPREV_UV Base=r8.0 ElementSize=4 Type=ud
.declare ubPREV_UV Base=r8.0 ElementSize=1 Type=ub
 
 
//r25-48
//TEMP Space for any Usage.
 
 
//=========================================================================
//Definations and declarations for serpent mode Chroma Denoise, added by Le
//=========================================================================
 
 
.declare udGNE_UV Base=r24.0 ElementSize=4 Type=ud
.declare fGNE_UV Base=r24.0 ElementSize=4 Type=f
.declare ubGNE_UV Base=r24.0 ElementSize=1 Type=ub
 
.declare udMSGHDR_BNE_SERP Base=r25.0 ElementSize=4 Type=ud
.declare udMSGSRC_BNE_SERP Base=r26.0 ElementSize=4 Type=ud
 
 
.declare ubDN_UV_Thresholds Base=r26.0 ElementSize=1 Type=ub
.declare ubDN_UV_Thresholds_Temp Base=r27.0 ElementSize=1 Type=ub
.declare udDN_UV_Thresholds Base=r26.0 ElementSize=4 Type=ud
.declare udDN_UV_Thresholds_Temp Base=r27.0 ElementSize=4 Type=ud
.declare fDN_UV_Thresholds Base=r26.0 ElementSize=4 Type=f
.declare fDN_UV_Thresholds_Temp Base=r27.0 ElementSize=4 Type=f
 
 
//====================================================================================
 
 
//TEMP23: To hold V data for PL3 surfaces
.declare udCURR_V_TEMP Base=r25.0 ElementSize=4 Type=ud
.declare ubCURR_V_TEMP Base=r25.0 ElementSize=1 Type=ub
 
//GRFs to calculate Median: r25-r42
.declare ubMEDIAN_TEMP Base=r25.0 ElementSize=1 Type=ub
 
//18 GRFs to hold difference : r25-r42
.declare wDIFF Base=r25.0 ElementSize=2 Type=w
.declare uwDIFF Base=r25.0 ElementSize=2 Type=uw
 
//Temporal Diff
.declare wDIFF_TEMPORAL Base=r25.0 ElementSize=2 Type=w
.declare ubDIFF_TEMPORAL Base=r25.0 ElementSize=1 Type=ub
 
//4 GRFs to hold Sobel Value : r43-46
.declare wSOBEL_X Base=r43.0 ElementSize=2 Type=w
.declare uwSOBEL Base=r43.0 ElementSize=2 Type=uw
 
 
//2 GRFs to hold SOAD temporarily: r47-48
.declare uwSOAD Base=r47.0 ElementSize=2 Type=uw
 
//Temp GRFs to hold extra YUYV pixels: r43-r48
.declare ubTEMP5 Base=r43.0 ElementSize=1 Type=ub
 
//Temp GRFs in Median Calculation: r47-r48
.declare ubTEMP1 Base=r47.0 ElementSize=1 Type=ub
 
.declare uwTEMP0 Base=r48.0 ElementSize=2 Type=uw
.declare ubTEMP0 Base=r48.0 ElementSize=1 Type=ub
 
//Temp Space to store Median : r49-50
 
.declare ubMEDIAN Base=r49.0 ElementSize=1 Type=ub
 
//r49
 
 
//r50
//Message Source
 
 
//r51
//DN_UV History Surface
 
.declare udHIST_UV Base=r51.0 ElementSize=4 Type=ud
.declare ubHIST_UV Base=r51.0 ElementSize=1 Type=ub
 
//r52 - r91
//r52
//Current Frame UV
 
 
.declare udCURR_UV Base=r52.0 ElementSize=4 Type=ud
.declare ubCURR_UV Base=r52.0 ElementSize=1 Type=ub
 
//r54
//CURBE COPY
 
 
//r55
 
 
.declare uwSOAD_MIN_8x4 Base=r56.0 ElementSize=2 Type=uw
 
//r61
 
 
//r62
 
 
//History Surface Temp Origin
 
 
//r63
//Current Frame Y Temp Origin
 
 
//BNE Surface Origin
 
 
//r70
 
.declare uwDIFF_TEMPORAL_SUM4x4 Base=r70.0 ElementSize=2 Type=uw //4 GRFs
 
//r74-91 : For Saving Dest UV (PL2/PL3)
 
 
.declare ubMSGPAYLOAD_UV0 Base=r75.0 ElementSize=1 Type=ub
 
 
.declare ubMSGPAYLOAD_U Base=r75.0 ElementSize=1 Type=ub
 
 
.declare ubMSGPAYLOAD_UV1 Base=r84.0 ElementSize=1 Type=ub
 
 
.declare ubMSGPAYLOAD_V Base=r84.0 ElementSize=1 Type=ub
 
//r90
 
.declare uwDIFF_TEMPORAL_SUM4x4_FINAL Base=r90.0 ElementSize=2 Type=uw //2 GRFs
 
//r92-127
//Current Frame Y
 
 
//r92
.declare uwDIFF_TEMPORAL_SUM4x4_TEMP_0 Base=r92 ElementSize=2 Type=uw
//r101
.declare uwDIFF_TEMPORAL_SUM4x4_TEMP_1 Base=r101 ElementSize=2 Type=uw
//r110
.declare uwDIFF_TEMPORAL_SUM4x4_TEMP_2 Base=r110 ElementSize=2 Type=uw
//r119
.declare uwDIFF_TEMPORAL_SUM4x4_TEMP_3 Base=r119 ElementSize=2 Type=uw
 
.declare udCURR_Y0 Base=r93.0 ElementSize=4 Type=ud
.declare ubCURR_Y0 Base=r93.0 ElementSize=1 Type=ub
.declare udCURR_Y1 Base=r102.0 ElementSize=4 Type=ud
.declare ubCURR_Y1 Base=r102.0 ElementSize=1 Type=ub
.declare udCURR_Y2 Base=r111.0 ElementSize=4 Type=ud
.declare ubCURR_Y2 Base=r111.0 ElementSize=1 Type=ub
.declare udCURR_Y3 Base=r120.0 ElementSize=4 Type=ud
.declare ubCURR_Y3 Base=r120.0 ElementSize=1 Type=ub
 
//r92: To hold U data for PL3 surfaces
.declare udCURR_U_TEMP Base=r92.0 ElementSize=4 Type=ud
.declare ubCURR_U_TEMP Base=r92.0 ElementSize=1 Type=ub
 
//r112: To hold U data for PL3 surfaces
.declare udPREV_U_TEMP Base=r112.0 ElementSize=4 Type=ud
.declare ubPREV_U_TEMP Base=r112.0 ElementSize=1 Type=ub
 
//r120: To hold U data for PL3 surfaces
.declare udPREV_V_TEMP Base=r120.0 ElementSize=4 Type=ud
.declare ubPREV_V_TEMP Base=r120.0 ElementSize=1 Type=ub
 
 
// Initialize message source with r0.
mov (8) r50.0<1>:ud r0.0<8;8,1>:ud
mov (8) r92.0<1>:ud r0.0<8;8,1>:ud
mov (8) r101.0<1>:ud r0.0<8;8,1>:ud
mov (8) r110.0<1>:ud r0.0<8;8,1>:ud
mov (8) r119.0<1>:ud r0.0<8;8,1>:ud
 
 
 
//Module Name : DN_UV_PL2_Load_Curr_Frame_UV
//Author : Tatiya, Rupesh
//Description : Loads Current Frame UV data for PL2 input.
 
 
 
//Module name : DN_UV_Load_Curr_Frame_UV
//Author : Tatiya, Rupesh
//Description : Loads Current Frame (UV only).
// We need 4 extra rows (2 per field) and 2 extra pixel (1 each side) for both U and V each.
// The processing size is 16x16 U and V each. So we need : U size - 18x20, V size - 18x20, UV size - 36x20, YUYV size - 72x20.
 
 
 
 
//36x20 interleaved UV block is partitioned as follows:
// <------ 18 --------> <--------18 ------->
// -----------------------------------------
// | 20x8 A !| 20x8 D !
// | (overlapped) !| (overlapped) !
// |-------------------!|------------------!
// | 20x8 B !| 20x8 E !
// | (overlapped) !| (overlapped) !
// |-------------------!|------------------!
// | 20x4 C !| 20x4 F !
// | (overlapped) !| (overlapped) !
// -----------------------------------------
//
// Cordinates: (x-2, y-2), (x+14, y-2), (x-2, y+6), (x+14, y+6), (x-2, y+14), (x+14, y+14)
 
//UV surface origin: (ORIX, ORIY/2)
add (2) r7.4<1>:w r7.0<2;2,1>:w r4.4<2;2,1>:w { AccWrEn } // Source Block origin
shr (1) r7.5<1>:w acc0.5<0;1,0>:w 1:w
mov (2) acc0.0<1>:d r7.4<2;2,1>:w
 
//A
add (2) r50.0<1>:d acc0.0<2;2,1>:d -2:d { AccWrEn }
mov (1) r50.2<1>:ud 0x70013:ud
send (8) udCURR_UV(0)<1> r50 0x4 0x2890004:ud
 
//B
add (1) r50.1<1>:d acc0.1<0;1,0>:d 8:d
send (8) udCURR_UV(8)<1> r50 0x4 0x2890004:ud
 
//C
add (1) r50.1<1>:d acc0.1<0;1,0>:d 16:d
mov (1) r50.2<1>:ud 0x30013:ud
send (8) udCURR_UV(16)<1> r50 0x4 0x2490004:ud
 
//D
add (1) r50.0<1>:d acc0.0<0;1,0>:d 16:d { AccWrEn }
mov (1) r50.1<1>:d acc0.1<0;1,0>:d
mov (1) r50.2<1>:ud 0x70013:ud
send (8) udCURR_UV(20)<1> r50 0x4 0x2890004:ud
 
//E
add (1) r50.1<1>:d acc0.1<0;1,0>:d 8:d
send (8) udCURR_UV(28)<1> r50 0x4 0x2890004:ud
 
//F
add (1) r50.1<1>:d acc0.1<0;1,0>:d 16:d
mov (1) r50.2<1>:ud 0x30013:ud
send (8) udCURR_UV(36)<1> r50 0x4 0x2490004:ud
 
//History Origin, Current Y origin and BNE surface origin - all are in inline GRF. Use , . -rT.
 
//Calculate Origin For History Surface: (ORIX/4, ORIY/8)
mov (16) acc0.0<1>:w r7.0<0;2,1>:w
shr (1) r7.2<1>:w acc0.2<0;1,0>:w 2:w
shr (1) r7.3<1>:w acc0.3<0;1,0>:w 3:w
 
//Calculate Origin For BNE Surface: (ORIX/8, ORIY/16)
shr (1) r7.6<1>:w acc0.6<0;1,0>:w 3:w
shr (1) r7.7<1>:w acc0.7<0;1,0>:w 4:w
 
 
 
//Module Name : DN_UV_PL2_Load_Prev_Frame_UV
//Author : Tatiya, Rupesh
//Description : Loads Pevious Frame UV data for PL2 input.
 
 
 
//Module Name : DN_UV_Load_Prev_Frame_UV
//Author : Tatiya, Rupesh
//Description : Loads Prev Frame (UV only). U size - 16x16, V size - 16x16, UV size - 32x16, YUYV size - 64x16.
 
 
 
 
mov (2) r50.0<1>:d r7.4<2;2,1>:w { AccWrEn } // Source lock origin
mov (1) r50.2<1>:ud 0xF000F:ud // U/V block width and height (16x16)
send (8) udPREV_UV(0)<1> r50 0x4 0x2890001:ud
 
add (1) r50.0<1>:ud acc0.0<0;1,0>:d 16:w // Add 16 to X origin
send (8) udPREV_UV(8)<1> r50 0x4 0x2890001:ud
 
 
//TODO - See if History loading can be combined with Prev Frame Load. - rT
 
 
//Module name : DN_UV_Load_Hist_UV
//Author : Tatiya, Rupesh
//Description : Load DN History for UV denoise. 4x4 for each U & V.
 
 
 
 
mov (2) r50.0<1>:d r7.2<2;2,1>:w
mov (1) r50.2<1>:ud 0x30007:ud
send (8) udHIST_UV(0)<1> r50 0x4 0x2190022:ud
 
 
 
//Module Name : DN_UV_420_Load_Curr_Frame_Y
//Author : Tatiya, Rupesh
//Description : Load Curr Frame Y data for 420 Input
 
 
 
//Module Name : DN_UV_Load_Curr_Frame_Y
//Author : Tatiya, Rupesh
//Description : Loads Y of Current frame.
 
 
 
 
//For 16x16 U and 16x16 V for 420, we need to read 32x32 Y.
 
mov (8) acc0.0<1>:ud r0.0<8;8,1>:ud
mov (1) acc0.2<1>:ud 0xF000F:ud
add (2) acc0.0<1>:ud r7.0<2;2,1>:w r4.4<2;2,1>:w
 
mov (8) r92.0<1>:ud acc0.0<8;8,1>:ud
 
mov (8) r101.0<1>:ud acc0.0<8;8,1>:ud
mov (8) r110.0<1>:ud acc0.0<8;8,1>:ud
mov (8) r119.0<1>:ud acc0.0<8;8,1>:ud
 
add (1) r101.1<1>:d acc0.1<0;1,0>:d 16:d
 
add (1) r110.0<1>:d acc0.0<0;1,0>:d 16:d
 
add (2) r119.0<1>:d acc0.0<2;2,1>:d 16:d
 
send (8) udCURR_Y0(0)<1> r92 0x4 0x2890003:ud
send (8) udCURR_Y1(0)<1> r101 0x4 0x2890003:ud
send (8) udCURR_Y2(0)<1> r110 0x4 0x2890003:ud
send (8) udCURR_Y3(0)<1> r119 0x4 0x2890003:ud
 
 
 
//Module Name : DN_UV_Noise_Detection_UV
//Author : Tatiya, Rupesh
//Description : Performs noise detection on 16x16 U and 16x16 V each.
 
 
 
//Module Name : DN_UV_Move_CURBE_Inline_UV.asm
//Author : Tatiya, Rupesh
 
 
 
 
//Mov CURBE data to another space - so that it can be used as Temp Space --> r1 - r6
mov (4) r54.28<1>:ub r2.28<4;4,1>:ub //Dest. YUY2 offset
mov (2) r54.5<1>:ud r4.0<4;2,2>:ud //Src YUY2 offset and Origin offset
mov (4) r55.28<1>:ub r1.0<4;4,1>:ub
 
mov (8) r61.20<1>:ub r1.4<8;8,1>:ub
mov (4) r61.28<1>:ub r1.12<4;4,1>:ub
 
//Move Inline Data to another space - so that it can be used as Temp Space --> r7
mov (4) r62.10<1>:w r7.0<4;4,1>:w
mov (4) r63.10<1>:w r7.4<4;4,1>:w
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
mov (1) a0.0:uw 1664:uw
mov (1) a0.1:uw 1816:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 1792:uw
mov (1) a0.1:uw 1820:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 1920:uw
mov (1) a0.1:uw 1848:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 2048:uw
mov (1) a0.1:uw 1852:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
mov (1) a0.0:uw 2304:uw
mov (1) a0.1:uw 1880:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 2432:uw
mov (1) a0.1:uw 1884:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 2560:uw
mov (1) a0.1:uw 1912:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 2688:uw
mov (1) a0.1:uw 1916:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
//Module : DN_UV_Noise_Reduction_UV
//Author : Tatiya, Rupesh
//Description : Performs Noise Reduction on 16x16 U and 16x16 V.
//Tasks : 1. Update weight history
// 2. Find if it block is motion block
// 3. Compute Denoised Pixel.
 
 
 
 
//History is 1+1 byte every 4x4 U and 4x4 V.
 
cmp.l.f0.0 (16) null<1>:w ubHIST_UV(0,0)<16;16,1> r61.20<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w ubHIST_UV(0,0)<16;16,1> r61.22<0;2,1>:ub
 
mov (16) uwCURBE_TEMP(0)<1> 0:w
mov (16) uwCURBE_TEMP(1)<1> 0:w
 
//Compute diff betn curr and prev. - First 16 lines
// 8 lines here
add (16) wDIFF_TEMPORAL(0)<1> ubCURR_UV(2,2)<16;16,1> -ubPREV_UV(0,0)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(1)<1> ubCURR_UV(3,2)<16;16,1> -ubPREV_UV(0,16)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(2)<1> ubCURR_UV(4,2)<16;16,1> -ubPREV_UV(0,32)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(3)<1> ubCURR_UV(5,2)<16;16,1> -ubPREV_UV(0,48)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(4)<1> ubCURR_UV(6,2)<16;16,1> -ubPREV_UV(0,64)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(5)<1> ubCURR_UV(7,2)<16;16,1> -ubPREV_UV(0,80)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(6)<1> ubCURR_UV(8,2)<16;16,1> -ubPREV_UV(0,96)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(7)<1> ubCURR_UV(9,2)<16;16,1> -ubPREV_UV(0,112)<16;16,1> //Diff UV interleaved
 
//Update WT HIST
(-f0.0) shr (16) uwCURBE_TEMP(0)<1> ubHIST_UV(0,0)<16;16,1> 1:w
(f1.0) add (16) uwCURBE_TEMP(2)<1> ubHIST_UV(0,0)<16;16,1> r61.24<0;2,1>:ub
(f0.0) mov (16) uwCURBE_TEMP(2)<1> r61.20<0;2,1>:ub
(-f0.0.anyv) mov (16) uwCURBE_TEMP(2)<1> ubHIST_UV(0,0)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w ubHIST_UV(0,16)<16;16,1> r61.20<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w ubHIST_UV(0,16)<16;16,1> r61.22<0;2,1>:ub
 
//Compute diff betn curr and prev. - First 16 lines
// 8 more lines here
add (16) wDIFF_TEMPORAL(8)<1> ubCURR_UV(10,2)<16;16,1> -ubPREV_UV(0,128)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(9)<1> ubCURR_UV(11,2)<16;16,1> -ubPREV_UV(0,144)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(10)<1> ubCURR_UV(12,2)<16;16,1> -ubPREV_UV(0,160)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(11)<1> ubCURR_UV(13,2)<16;16,1> -ubPREV_UV(0,176)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(12)<1> ubCURR_UV(14,2)<16;16,1> -ubPREV_UV(0,192)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(13)<1> ubCURR_UV(15,2)<16;16,1> -ubPREV_UV(0,208)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(14)<1> ubCURR_UV(16,2)<16;16,1> -ubPREV_UV(0,224)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(15)<1> ubCURR_UV(17,2)<16;16,1> -ubPREV_UV(0,240)<16;16,1> //Diff UV interleaved
 
(-f0.0) shr (16) uwCURBE_TEMP(1)<1> ubHIST_UV(0,16)<16;16,1> 1:w
(f1.0) add (16) uwCURBE_TEMP(3)<1> ubHIST_UV(0,16)<16;16,1> r61.24<0;2,1>:ub
(f0.0) mov (16) uwCURBE_TEMP(3)<1> r61.20<0;2,1>:ub
(-f0.0.anyv) mov(16) uwCURBE_TEMP(3)<1> ubHIST_UV(0,16)<16;16,1>
 
//16x16 to 16x4 - First 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(0)<16;16,1> (abs)wDIFF_TEMPORAL(1)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(2)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(0)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(3)<16;16,1>
//16x16 to 16x4 - First 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(4)<16;16,1> (abs)wDIFF_TEMPORAL(5)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(6)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(1)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(7)<16;16,1>
//16x16 to 16x4 - First 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(8)<16;16,1> (abs)wDIFF_TEMPORAL(9)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(10)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(2)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(11)<16;16,1>
//16x16 to 16x4 - First 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(12)<16;16,1> (abs)wDIFF_TEMPORAL(13)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(14)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(3)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(15)<16;16,1>
 
//Compute diff betn curr and prev. - Second 16 lines
//13 lines.
add (16) wDIFF_TEMPORAL(16)<1> ubCURR_UV(22,2)<16;16,1> -ubPREV_UV(8,0)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(17)<1> ubCURR_UV(23,2)<16;16,1> -ubPREV_UV(8,16)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(18)<1> ubCURR_UV(24,2)<16;16,1> -ubPREV_UV(8,32)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(19)<1> ubCURR_UV(25,2)<16;16,1> -ubPREV_UV(8,48)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(20)<1> ubCURR_UV(26,2)<16;16,1> -ubPREV_UV(8,64)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(21)<1> ubCURR_UV(27,2)<16;16,1> -ubPREV_UV(8,80)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(22)<1> ubCURR_UV(28,2)<16;16,1> -ubPREV_UV(8,96)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(23)<1> ubCURR_UV(29,2)<16;16,1> -ubPREV_UV(8,112)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(24)<1> ubCURR_UV(30,2)<16;16,1> -ubPREV_UV(8,128)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(25)<1> ubCURR_UV(31,2)<16;16,1> -ubPREV_UV(8,144)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(26)<1> ubCURR_UV(32,2)<16;16,1> -ubPREV_UV(8,160)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(27)<1> ubCURR_UV(33,2)<16;16,1> -ubPREV_UV(8,176)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(28)<1> ubCURR_UV(34,2)<16;16,1> -ubPREV_UV(8,192)<16;16,1> //Diff UV interleaved
 
//3 more lines
add (16) wCURBE_TEMP(4)<1> ubCURR_UV(35,2)<16;16,1> -ubPREV_UV(8,208)<16;16,1> //Diff UV interleaved
add (16) wCURBE_TEMP(5)<1> ubCURR_UV(36,2)<16;16,1> -ubPREV_UV(8,224)<16;16,1> //Diff UV interleaved
add (16) wCURBE_TEMP(6)<1> ubCURR_UV(37,2)<16;16,1> -ubPREV_UV(8,240)<16;16,1> //Diff UV interleaved
 
//16x4 to 8x4 - First 16 lines
add (16) uwDIFF_TEMPORAL_SUM4x4(0)<1> uwDIFF_TEMPORAL_SUM4x4(0,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(0,2)<4;2,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(1)<1> uwDIFF_TEMPORAL_SUM4x4(2,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(2,2)<4;2,1>
 
//8x4 to 4x4 - First 16 lines
add (16) uwDIFF_TEMPORAL_SUM4x4_FINAL(0)<1> uwDIFF_TEMPORAL_SUM4x4(0,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(0,2)<4;2,1> { AccWrEn }
 
//16x16 to 16x4 - Second 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(16)<16;16,1> (abs)wDIFF_TEMPORAL(17)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(18)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(0)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(19)<16;16,1>
//16x16 to 16x4 - Second 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(20)<16;16,1> (abs)wDIFF_TEMPORAL(21)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(22)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(1)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(23)<16;16,1>
//16x16 to 16x4 - Second 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(24)<16;16,1> (abs)wDIFF_TEMPORAL(25)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(26)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(2)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(27)<16;16,1>
 
//16x16 to 16x4 - Second 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(28)<16;16,1> (abs)wCURBE_TEMP(4)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wCURBE_TEMP(5)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(3)<1> acc0.0<16;16,1>:uw (abs)wCURBE_TEMP(6)<16;16,1>
 
//Find if block is motion block - First 16 lines
cmp.g.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_FINAL(0)<16;16,1> r61.26<0;2,1>:ub
 
//Move TEMPORAL_SUM4x4 for SIMD16 use later.
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,0)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,2)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,4)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,6)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,8)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,10)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,12)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,14)<0;2,1>
 
//Pick Appropriate Weight History Based on motion. - First 16 lines
(-f0.0) mov (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(2)<16;16,1>
 
//Actual DN - First 16 lines
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(0)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(0)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(2,2)<8;8,1> -uwCURBE_TEMP(0,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(2,10)<8;8,1> -uwCURBE_TEMP(0,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(2,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,0)<8;8,1> uwCURBE_TEMP(0,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,8)<8;8,1> uwCURBE_TEMP(0,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(0)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(0)<1> ubCURR_UV(2,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(0)<1> wDIFF_TEMPORAL(0)<16;16,1> ubCURR_UV(2,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(1)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(1)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(3,2)<8;8,1> -uwCURBE_TEMP(0,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(3,10)<8;8,1> -uwCURBE_TEMP(0,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(3,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,16)<8;8,1> uwCURBE_TEMP(0,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,24)<8;8,1> uwCURBE_TEMP(0,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(1)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(1)<1> ubCURR_UV(3,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(1)<1> wDIFF_TEMPORAL(1)<16;16,1> ubCURR_UV(3,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(2)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(2)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(4,2)<8;8,1> -uwCURBE_TEMP(0,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(4,10)<8;8,1> -uwCURBE_TEMP(0,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(4,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,32)<8;8,1> uwCURBE_TEMP(0,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,40)<8;8,1> uwCURBE_TEMP(0,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(2)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(2)<1> ubCURR_UV(4,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(2)<1> wDIFF_TEMPORAL(2)<16;16,1> ubCURR_UV(4,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(3)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(3)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(5,2)<8;8,1> -uwCURBE_TEMP(0,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(5,10)<8;8,1> -uwCURBE_TEMP(0,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(5,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,48)<8;8,1> uwCURBE_TEMP(0,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,56)<8;8,1> uwCURBE_TEMP(0,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(3)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(3)<1> ubCURR_UV(5,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(3)<1> wDIFF_TEMPORAL(3)<16;16,1> ubCURR_UV(5,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(4)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(4)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(6,2)<8;8,1> -uwCURBE_TEMP(0,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(6,10)<8;8,1> -uwCURBE_TEMP(0,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(6,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,64)<8;8,1> uwCURBE_TEMP(0,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,72)<8;8,1> uwCURBE_TEMP(0,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(4)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(4)<1> ubCURR_UV(6,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(4)<1> wDIFF_TEMPORAL(4)<16;16,1> ubCURR_UV(6,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(5)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(5)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(7,2)<8;8,1> -uwCURBE_TEMP(0,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(7,10)<8;8,1> -uwCURBE_TEMP(0,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(7,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,80)<8;8,1> uwCURBE_TEMP(0,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,88)<8;8,1> uwCURBE_TEMP(0,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(5)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(5)<1> ubCURR_UV(7,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(5)<1> wDIFF_TEMPORAL(5)<16;16,1> ubCURR_UV(7,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(6)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(6)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(8,2)<8;8,1> -uwCURBE_TEMP(0,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(8,10)<8;8,1> -uwCURBE_TEMP(0,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(8,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,96)<8;8,1> uwCURBE_TEMP(0,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,104)<8;8,1> uwCURBE_TEMP(0,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(6)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(6)<1> ubCURR_UV(8,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(6)<1> wDIFF_TEMPORAL(6)<16;16,1> ubCURR_UV(8,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(7)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(7)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(9,2)<8;8,1> -uwCURBE_TEMP(0,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(9,10)<8;8,1> -uwCURBE_TEMP(0,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(9,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,112)<8;8,1> uwCURBE_TEMP(0,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,120)<8;8,1> uwCURBE_TEMP(0,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(7)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(7)<1> ubCURR_UV(9,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(7)<1> wDIFF_TEMPORAL(7)<16;16,1> ubCURR_UV(9,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(8)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(8)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(10,2)<8;8,1> -uwCURBE_TEMP(0,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(10,10)<8;8,1> -uwCURBE_TEMP(0,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(10,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,128)<8;8,1> uwCURBE_TEMP(0,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,136)<8;8,1> uwCURBE_TEMP(0,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(8)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(8)<1> ubCURR_UV(10,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(8)<1> wDIFF_TEMPORAL(8)<16;16,1> ubCURR_UV(10,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(9)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(9)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(11,2)<8;8,1> -uwCURBE_TEMP(0,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(11,10)<8;8,1> -uwCURBE_TEMP(0,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(11,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,144)<8;8,1> uwCURBE_TEMP(0,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,152)<8;8,1> uwCURBE_TEMP(0,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(9)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(9)<1> ubCURR_UV(11,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(9)<1> wDIFF_TEMPORAL(9)<16;16,1> ubCURR_UV(11,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(10)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(10)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(12,2)<8;8,1> -uwCURBE_TEMP(0,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(12,10)<8;8,1> -uwCURBE_TEMP(0,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(12,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,160)<8;8,1> uwCURBE_TEMP(0,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,168)<8;8,1> uwCURBE_TEMP(0,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(10)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(10)<1> ubCURR_UV(12,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(10)<1> wDIFF_TEMPORAL(10)<16;16,1> ubCURR_UV(12,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(11)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(11)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(13,2)<8;8,1> -uwCURBE_TEMP(0,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(13,10)<8;8,1> -uwCURBE_TEMP(0,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(13,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,176)<8;8,1> uwCURBE_TEMP(0,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,184)<8;8,1> uwCURBE_TEMP(0,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(11)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(11)<1> ubCURR_UV(13,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(11)<1> wDIFF_TEMPORAL(11)<16;16,1> ubCURR_UV(13,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(12)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(12)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(14,2)<8;8,1> -uwCURBE_TEMP(0,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(14,10)<8;8,1> -uwCURBE_TEMP(0,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(14,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,192)<8;8,1> uwCURBE_TEMP(0,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,200)<8;8,1> uwCURBE_TEMP(0,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(12)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(12)<1> ubCURR_UV(14,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(12)<1> wDIFF_TEMPORAL(12)<16;16,1> ubCURR_UV(14,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(13)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(13)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(15,2)<8;8,1> -uwCURBE_TEMP(0,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(15,10)<8;8,1> -uwCURBE_TEMP(0,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(15,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,208)<8;8,1> uwCURBE_TEMP(0,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,216)<8;8,1> uwCURBE_TEMP(0,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(13)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(13)<1> ubCURR_UV(15,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(13)<1> wDIFF_TEMPORAL(13)<16;16,1> ubCURR_UV(15,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(14)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(14)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(16,2)<8;8,1> -uwCURBE_TEMP(0,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(16,10)<8;8,1> -uwCURBE_TEMP(0,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(16,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,224)<8;8,1> uwCURBE_TEMP(0,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,232)<8;8,1> uwCURBE_TEMP(0,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(14)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(14)<1> ubCURR_UV(16,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(14)<1> wDIFF_TEMPORAL(14)<16;16,1> ubCURR_UV(16,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(15)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(15)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(17,2)<8;8,1> -uwCURBE_TEMP(0,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(17,10)<8;8,1> -uwCURBE_TEMP(0,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(17,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,240)<8;8,1> uwCURBE_TEMP(0,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,248)<8;8,1> uwCURBE_TEMP(0,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(15)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(15)<1> ubCURR_UV(17,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(15)<1> wDIFF_TEMPORAL(15)<16;16,1> ubCURR_UV(17,2)<16;16,1>
 
 
//16x4 to 8x4 - Second 16 lines
add (16) uwDIFF_TEMPORAL_SUM4x4(0)<1> uwDIFF_TEMPORAL_SUM4x4(0,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(0,2)<4;2,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(1)<1> uwDIFF_TEMPORAL_SUM4x4(2,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(2,2)<4;2,1>
 
//8x4 to 4x4 - Second 16 lines
add (16) uwDIFF_TEMPORAL_SUM4x4_FINAL(1)<1> uwDIFF_TEMPORAL_SUM4x4(0,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(0,2)<4;2,1> { AccWrEn }
 
//Find if block is motion block - Second 16 lines
cmp.g.f1.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_FINAL(1)<16;16,1> r61.26<0;2,1>:ub
 
//Move TEMPORAL_SUM4x4 for SIMD16 use later.
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,0)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,2)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,4)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,6)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,8)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,10)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,12)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,14)<0;2,1>
 
//Pick Appropriate Weight History Based on motion. - Second 16 lines
(-f1.0) mov (16) uwCURBE_TEMP(1)<1> uwCURBE_TEMP(3)<16;16,1>
 
//Actual DN - Second 16 lines
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(16)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(16)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(22,2)<8;8,1> -uwCURBE_TEMP(1,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(22,10)<8;8,1> -uwCURBE_TEMP(1,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(22,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,0)<8;8,1> uwCURBE_TEMP(1,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,8)<8;8,1> uwCURBE_TEMP(1,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(16)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(16)<1> ubCURR_UV(22,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(16)<1> wDIFF_TEMPORAL(16)<16;16,1> ubCURR_UV(22,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(17)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(17)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(23,2)<8;8,1> -uwCURBE_TEMP(1,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(23,10)<8;8,1> -uwCURBE_TEMP(1,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(23,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,16)<8;8,1> uwCURBE_TEMP(1,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,24)<8;8,1> uwCURBE_TEMP(1,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(17)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(17)<1> ubCURR_UV(23,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(17)<1> wDIFF_TEMPORAL(17)<16;16,1> ubCURR_UV(23,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(18)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(18)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(24,2)<8;8,1> -uwCURBE_TEMP(1,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(24,10)<8;8,1> -uwCURBE_TEMP(1,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(24,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,32)<8;8,1> uwCURBE_TEMP(1,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,40)<8;8,1> uwCURBE_TEMP(1,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(18)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(18)<1> ubCURR_UV(24,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(18)<1> wDIFF_TEMPORAL(18)<16;16,1> ubCURR_UV(24,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(19)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(19)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(25,2)<8;8,1> -uwCURBE_TEMP(1,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(25,10)<8;8,1> -uwCURBE_TEMP(1,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(25,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,48)<8;8,1> uwCURBE_TEMP(1,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,56)<8;8,1> uwCURBE_TEMP(1,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(19)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(19)<1> ubCURR_UV(25,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(19)<1> wDIFF_TEMPORAL(19)<16;16,1> ubCURR_UV(25,2)<16;16,1>
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(20)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(20)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(26,2)<8;8,1> -uwCURBE_TEMP(1,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(26,10)<8;8,1> -uwCURBE_TEMP(1,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(26,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,64)<8;8,1> uwCURBE_TEMP(1,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,72)<8;8,1> uwCURBE_TEMP(1,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(20)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(20)<1> ubCURR_UV(26,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(20)<1> wDIFF_TEMPORAL(20)<16;16,1> ubCURR_UV(26,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(21)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(21)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(27,2)<8;8,1> -uwCURBE_TEMP(1,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(27,10)<8;8,1> -uwCURBE_TEMP(1,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(27,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,80)<8;8,1> uwCURBE_TEMP(1,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,88)<8;8,1> uwCURBE_TEMP(1,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(21)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(21)<1> ubCURR_UV(27,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(21)<1> wDIFF_TEMPORAL(21)<16;16,1> ubCURR_UV(27,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(22)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(22)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(28,2)<8;8,1> -uwCURBE_TEMP(1,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(28,10)<8;8,1> -uwCURBE_TEMP(1,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(28,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,96)<8;8,1> uwCURBE_TEMP(1,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,104)<8;8,1> uwCURBE_TEMP(1,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(22)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(22)<1> ubCURR_UV(28,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(22)<1> wDIFF_TEMPORAL(22)<16;16,1> ubCURR_UV(28,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(23)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(23)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(29,2)<8;8,1> -uwCURBE_TEMP(1,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(29,10)<8;8,1> -uwCURBE_TEMP(1,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(29,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,112)<8;8,1> uwCURBE_TEMP(1,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,120)<8;8,1> uwCURBE_TEMP(1,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(23)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(23)<1> ubCURR_UV(29,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(23)<1> wDIFF_TEMPORAL(23)<16;16,1> ubCURR_UV(29,2)<16;16,1>
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(24)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(24)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(30,2)<8;8,1> -uwCURBE_TEMP(1,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(30,10)<8;8,1> -uwCURBE_TEMP(1,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(30,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,128)<8;8,1> uwCURBE_TEMP(1,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,136)<8;8,1> uwCURBE_TEMP(1,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(24)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(24)<1> ubCURR_UV(30,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(24)<1> wDIFF_TEMPORAL(24)<16;16,1> ubCURR_UV(30,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(25)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(25)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(31,2)<8;8,1> -uwCURBE_TEMP(1,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(31,10)<8;8,1> -uwCURBE_TEMP(1,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(31,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,144)<8;8,1> uwCURBE_TEMP(1,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,152)<8;8,1> uwCURBE_TEMP(1,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(25)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(25)<1> ubCURR_UV(31,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(25)<1> wDIFF_TEMPORAL(25)<16;16,1> ubCURR_UV(31,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(26)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(26)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(32,2)<8;8,1> -uwCURBE_TEMP(1,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(32,10)<8;8,1> -uwCURBE_TEMP(1,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(32,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,160)<8;8,1> uwCURBE_TEMP(1,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,168)<8;8,1> uwCURBE_TEMP(1,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(26)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(26)<1> ubCURR_UV(32,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(26)<1> wDIFF_TEMPORAL(26)<16;16,1> ubCURR_UV(32,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(27)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(27)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(33,2)<8;8,1> -uwCURBE_TEMP(1,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(33,10)<8;8,1> -uwCURBE_TEMP(1,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(33,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,176)<8;8,1> uwCURBE_TEMP(1,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,184)<8;8,1> uwCURBE_TEMP(1,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(27)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(27)<1> ubCURR_UV(33,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(27)<1> wDIFF_TEMPORAL(27)<16;16,1> ubCURR_UV(33,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(28)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(28)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(34,2)<8;8,1> -uwCURBE_TEMP(1,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(34,10)<8;8,1> -uwCURBE_TEMP(1,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(34,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,192)<8;8,1> uwCURBE_TEMP(1,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,200)<8;8,1> uwCURBE_TEMP(1,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(28)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(28)<1> ubCURR_UV(34,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(28)<1> wDIFF_TEMPORAL(28)<16;16,1> ubCURR_UV(34,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wCURBE_TEMP(4)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wCURBE_TEMP(4)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(35,2)<8;8,1> -uwCURBE_TEMP(1,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(35,10)<8;8,1> -uwCURBE_TEMP(1,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(35,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,208)<8;8,1> uwCURBE_TEMP(1,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,216)<8;8,1> uwCURBE_TEMP(1,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wCURBE_TEMP(4)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wCURBE_TEMP(4)<1> ubCURR_UV(35,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wCURBE_TEMP(4)<1> wCURBE_TEMP(4)<16;16,1> ubCURR_UV(35,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wCURBE_TEMP(5)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wCURBE_TEMP(5)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(36,2)<8;8,1> -uwCURBE_TEMP(1,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(36,10)<8;8,1> -uwCURBE_TEMP(1,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(36,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,224)<8;8,1> uwCURBE_TEMP(1,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,232)<8;8,1> uwCURBE_TEMP(1,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wCURBE_TEMP(5)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wCURBE_TEMP(5)<1> ubCURR_UV(36,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wCURBE_TEMP(5)<1> wCURBE_TEMP(5)<16;16,1> ubCURR_UV(36,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wCURBE_TEMP(6)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wCURBE_TEMP(6)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(37,2)<8;8,1> -uwCURBE_TEMP(1,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(37,10)<8;8,1> -uwCURBE_TEMP(1,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(37,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,240)<8;8,1> uwCURBE_TEMP(1,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,248)<8;8,1> uwCURBE_TEMP(1,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wCURBE_TEMP(6)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wCURBE_TEMP(6)<1> ubCURR_UV(37,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wCURBE_TEMP(6)<1> wCURBE_TEMP(6)<16;16,1> ubCURR_UV(37,2)<16;16,1>
 
//Pack Weight History WORD -> BYTE
mov (16) ubCURBE_TEMP(3,0)<1> ubCURBE_TEMP(0)<32;16,2>
mov (16) ubCURBE_TEMP(3,16)<1> ubCURBE_TEMP(1)<32;16,2>
 
 
 
//Module Name : DN_UV_Compute_BNE_UV
//Author : Tatiya, Rupesh
//Description : Computes minimum SOAD for each 16x4 block.
 
cmp.l.f0.0 (8) null:w uwSOAD_MIN_8x4(0,12)<16;4,1> uwSOAD_MIN_8x4(2,12)<16;4,1>
(f0.0)sel (8) uwCURBE_TEMP(1,0)<1> uwSOAD_MIN_8x4(0,12)<16;4,1> uwSOAD_MIN_8x4(2,12)<16;4,1>
 
mov (8) ubCURBE_TEMP(1)<1> ubCURBE_TEMP(1)<16;8,2>
 
 
 
//Module Name : DN_UV_PL2_Pack_Denoised_UV
//Name : Tatiya, Rupesh
//Description : Pack UV denoised data based on PL2 input.
 
 
 
//Module Name : DN_UV_Pack_Denoised_UV
//Name : Tatiya, Rupesh
//Description : Pack UV denoised data based on PL2/PL3/PA.
 
 
//First 16 lines.
mov (16) ubMSGPAYLOAD_UV0(0,0)<1> ubDIFF_TEMPORAL(0)<32;16,2>
mov (16) ubMSGPAYLOAD_UV0(0,16)<1> ubDIFF_TEMPORAL(1)<32;16,2>
mov (16) ubMSGPAYLOAD_UV0(1,0)<1> ubDIFF_TEMPORAL(2)<32;16,2>
mov (16) ubMSGPAYLOAD_UV0(1,16)<1> ubDIFF_TEMPORAL(3)<32;16,2>
mov (16) ubMSGPAYLOAD_UV0(2,0)<1> ubDIFF_TEMPORAL(4)<32;16,2>
mov (16) ubMSGPAYLOAD_UV0(2,16)<1> ubDIFF_TEMPORAL(5)<32;16,2>
mov (16) ubMSGPAYLOAD_UV0(3,0)<1> ubDIFF_TEMPORAL(6)<32;16,2>
mov (16) ubMSGPAYLOAD_UV0(3,16)<1> ubDIFF_TEMPORAL(7)<32;16,2>
mov (16) ubMSGPAYLOAD_UV0(4,0)<1> ubDIFF_TEMPORAL(8)<32;16,2>
mov (16) ubMSGPAYLOAD_UV0(4,16)<1> ubDIFF_TEMPORAL(9)<32;16,2>
mov (16) ubMSGPAYLOAD_UV0(5,0)<1> ubDIFF_TEMPORAL(10)<32;16,2>
mov (16) ubMSGPAYLOAD_UV0(5,16)<1> ubDIFF_TEMPORAL(11)<32;16,2>
mov (16) ubMSGPAYLOAD_UV0(6,0)<1> ubDIFF_TEMPORAL(12)<32;16,2>
mov (16) ubMSGPAYLOAD_UV0(6,16)<1> ubDIFF_TEMPORAL(13)<32;16,2>
mov (16) ubMSGPAYLOAD_UV0(7,0)<1> ubDIFF_TEMPORAL(14)<32;16,2>
mov (16) ubMSGPAYLOAD_UV0(7,16)<1> ubDIFF_TEMPORAL(15)<32;16,2>
 
//Second 16 lines.
//12 lines first
mov (16) ubMSGPAYLOAD_UV1(0,0)<1> ubDIFF_TEMPORAL(16)<32;16,2>
mov (16) ubMSGPAYLOAD_UV1(0,16)<1> ubDIFF_TEMPORAL(17)<32;16,2>
mov (16) ubMSGPAYLOAD_UV1(1,0)<1> ubDIFF_TEMPORAL(18)<32;16,2>
mov (16) ubMSGPAYLOAD_UV1(1,16)<1> ubDIFF_TEMPORAL(19)<32;16,2>
mov (16) ubMSGPAYLOAD_UV1(2,0)<1> ubDIFF_TEMPORAL(20)<32;16,2>
mov (16) ubMSGPAYLOAD_UV1(2,16)<1> ubDIFF_TEMPORAL(21)<32;16,2>
mov (16) ubMSGPAYLOAD_UV1(3,0)<1> ubDIFF_TEMPORAL(22)<32;16,2>
mov (16) ubMSGPAYLOAD_UV1(3,16)<1> ubDIFF_TEMPORAL(23)<32;16,2>
mov (16) ubMSGPAYLOAD_UV1(4,0)<1> ubDIFF_TEMPORAL(24)<32;16,2>
mov (16) ubMSGPAYLOAD_UV1(4,16)<1> ubDIFF_TEMPORAL(25)<32;16,2>
mov (16) ubMSGPAYLOAD_UV1(5,0)<1> ubDIFF_TEMPORAL(26)<32;16,2>
mov (16) ubMSGPAYLOAD_UV1(5,16)<1> ubDIFF_TEMPORAL(27)<32;16,2>
 
//3 lines next
mov (16) ubMSGPAYLOAD_UV1(6,0)<1> ubDIFF_TEMPORAL(28)<32;16,2>
mov (16) ubMSGPAYLOAD_UV1(6,16)<1> ubCURBE_TEMP(4)<32;16,2>
mov (16) ubMSGPAYLOAD_UV1(7,0)<1> ubCURBE_TEMP(5)<32;16,2>
mov (16) ubMSGPAYLOAD_UV1(7,16)<1> ubCURBE_TEMP(6)<32;16,2>
 
 
 
//Module Name : DN_UV_420_Save_Curr_Frame_Y
//Author : Tatiya, Rupesh
//Description : Save Curr Frame Y data for 420 Input
 
 
 
//Module Name : DN_UV_Load_Curr_Frame_Y
//Author : Tatiya, Rupesh
//Description : Saves Y or YUY2 of Current frame.
 
 
 
 
mov (8) acc0.0<1>:ud r0.0<8;8,1>:ud
mov (2) acc0.0<1>:d r62.10<2;2,1>:w
 
mov (1) acc0.2<1>:d 0xF000F:ud
 
mov (8) r92.0<1>:ud acc0.0<8;8,1>:ud
 
mov (8) r101.0<1>:ud acc0.0<8;8,1>:ud
mov (8) r110.0<1>:ud acc0.0<8;8,1>:ud
mov (8) r119.0<1>:ud acc0.0<8;8,1>:ud
 
add (1) r101.1<1>:d acc0.1<0;1,0>:d 16:d
 
add (1) r110.0<1>:d acc0.0<0;1,0>:d 16:d
 
add (2) r119.0<1>:d acc0.0<2;2,1>:d 16:d
 
send (8) null<1>:d r92 0x5 0x120A8018:ud
send (8) null<1>:d r101 0x5 0x120A8018:ud
send (8) null<1>:d r110 0x5 0x120A8018:ud
send (8) null<1>:d r119 0x5 0x120A8018:ud
 
 
//TODO - See if History saving can be combined with Curr Frame Save. - rT
 
 
//Module Name : DN_UV_Save_Hist_UV
//Author : Tatiya, Rupesh
//Description : Saves DN history for UV data.
 
mov (8) r3.0<1>:ud r0.0<8;8,1>:ud
mov (2) r3.0<1>:d r62.12<2;2,1>:w
mov (1) r3.2<1>:d 0x30007:ud
 
send (8) null<1>:d r3 0x5 0x40A8021:ud
 
 
 
//Module Name : DN_UV_Save_BNE_UV
//Author : Tatiya, Rupesh
//Description : Saves BNE values for 16x16 U and 16x16 V.
 
mov (8) r1.0<1>:ud r0.0<8;8,1>:ud
mov (2) r1.0<1>:d r63.12<2;2,1>:w
mov (1) r1.2<1>:d 0x10003:ud
 
send (8) null<1>:d r1 0x5 0x40A8023:ud
 
 
 
//Module Name : DN_UV_PL2_Save_Curr_Frame_UV
//Author : Tatiya, Rupesh
 
 
 
//Module name : DN_UV_Save_Curr_Frame_UV
//Author : Tatiya, Rupesh
//Description : Saves Current Frame (UV only).
 
 
 
 
mov (8) r74<1>:ud r0.0<8;8,1>:ud
mov (8) r83<1>:ud r0.0<8;8,1>:ud
 
mov (1) r74.0<1>:d r62.10<0;1,0>:w
shr (1) r74.1<1>:d r62.11<0;1,0>:w 1:w
mov (1) r74.2<1>:d 0xF000F:ud
 
add (1) r83.0<1>:d r62.10<0;1,0>:w 16:d
shr (1) r83.1<1>:d r62.11<0;1,0>:w 1:w
mov (1) r83.2<1>:d 0xF000F:ud
 
send (8) null<1>:d r74 0x5 0x120A8019:ud
send (8) null<1>:d r83 0x5 0x120A8019:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
//All sub-routines here
 
 
// Module Name : Noise_Detection
// Author : Tatiya, Rupesh
// Description : Performs noise detection on 32 pixels of U (8x4) and 32 pixels of V (8x4).
 
DN_UV_NOISE_DETECTION_UV:
 
// Find Field Block Median
//
// Purpose : Find the median value of the nine pixels in the same field
// which are centered at current pixel.
//
// Works on 9 pixels centered at the current pixel
// NOTE: pixels are within same field.
// v4 - current pixel
//
// v2 v1 v0
// * * * <--- Different field - not used
// v5 v4 v3
// * * * <--- Different field - not used
// v8 v7 v6
 
// Algorithm to find median modifies the data.
// Copy the data needed to calculate median so the original source data stays intact.
//
 
//TODO - Change Interleaved implementation to separated one if - , does not work on predication. - rT
 
//Delete Later - rT
//mov (1) pCUR_UV:uw 52*32:uw
 
// v0
mov (16) ubMEDIAN_TEMP(0,0)<1> r[a0.0,0]<16;16,1>
// v0
mov (16) ubMEDIAN_TEMP(0,16)<1> r[a0.0,32]<16;16,1>
// v1
mov (16) ubMEDIAN_TEMP(1,0)<1> r[a0.0,2]<16;16,1>
// v1
mov (16) ubMEDIAN_TEMP(1,16)<1> r[a0.0,34]<16;16,1>
// v2
mov (16) ubMEDIAN_TEMP(2,0)<1> r[a0.0,4]<16;16,1>
// v2
mov (16) ubMEDIAN_TEMP(2,16)<1> r[a0.0,36]<16;16,1>
// v3
mov (16) ubMEDIAN_TEMP(3,0)<1> r[a0.0,64]<16;16,1>
// v3
mov (16) ubMEDIAN_TEMP(3,16)<1> r[a0.0,96]<16;16,1>
// v4
mov (16) ubMEDIAN_TEMP(4,0)<1> r[a0.0,66]<16;16,1>
// v4
mov (16) ubMEDIAN_TEMP(4,16)<1> r[a0.0,98]<16;16,1>
// v5
mov (16) ubMEDIAN_TEMP(5,0)<1> r[a0.0,68]<16;16,1>
// v5
mov (16) ubMEDIAN_TEMP(5,16)<1> r[a0.0,100]<16;16,1>
// v6
mov (16) ubMEDIAN_TEMP(6,0)<1> r[a0.0,128]<16;16,1>
// v6
mov (16) ubMEDIAN_TEMP(6,16)<1> r[a0.0,160]<16;16,1>
// v7
mov (16) ubMEDIAN_TEMP(7,0)<1> r[a0.0,130]<16;16,1>
// v7
mov (16) ubMEDIAN_TEMP(7,16)<1> r[a0.0,162]<16;16,1>
// v8
mov (16) ubMEDIAN_TEMP(8,0)<1> r[a0.0,132]<16;16,1>
// v8
mov (16) ubMEDIAN_TEMP(8,16)<1> r[a0.0,164]<16;16,1>
 
//TODO - Optimize one instruction here.
add (1) a0.0:uw a0.0<0;1,0>:uw 64:uw
// v0
mov (16) ubMEDIAN_TEMP(9,0)<1> r[a0.0,0]<16;16,1>
// v0
mov (16) ubMEDIAN_TEMP(9,16)<1> r[a0.0,32]<16;16,1>
// v1
mov (16) ubMEDIAN_TEMP(10,0)<1> r[a0.0,2]<16;16,1>
// v1
mov (16) ubMEDIAN_TEMP(10,16)<1> r[a0.0,34]<16;16,1>
// v2
mov (16) ubMEDIAN_TEMP(11,0)<1> r[a0.0,4]<16;16,1>
// v2
mov (16) ubMEDIAN_TEMP(11,16)<1> r[a0.0,36]<16;16,1>
// v3
mov (16) ubMEDIAN_TEMP(12,0)<1> r[a0.0,64]<16;16,1>
// v3
mov (16) ubMEDIAN_TEMP(12,16)<1> r[a0.0,96]<16;16,1>
// v4
mov (16) ubMEDIAN_TEMP(13,0)<1> r[a0.0,66]<16;16,1>
// v4
mov (16) ubMEDIAN_TEMP(13,16)<1> r[a0.0,98]<16;16,1>
// v5
mov (16) ubMEDIAN_TEMP(14,0)<1> r[a0.0,68]<16;16,1>
// v5
mov (16) ubMEDIAN_TEMP(14,16)<1> r[a0.0,100]<16;16,1>
// v6
mov (16) ubMEDIAN_TEMP(15,0)<1> r[a0.0,128]<16;16,1>
// v6
mov (16) ubMEDIAN_TEMP(15,16)<1> r[a0.0,160]<16;16,1>
// v7
mov (16) ubMEDIAN_TEMP(16,0)<1> r[a0.0,130]<16;16,1>
// v7
mov (16) ubMEDIAN_TEMP(16,16)<1> r[a0.0,162]<16;16,1>
// v8
mov (16) ubMEDIAN_TEMP(17,0)<1> r[a0.0,132]<16;16,1>
// v8
mov (16) ubMEDIAN_TEMP(17,16)<1> r[a0.0,164]<16;16,1>
 
//TODO - Optimize one instruction here.
add (1) a0.0:uw a0.0<0;1,0>:uw 64:uw
 
// MedianSwap
//
// MedianSwap(inOutLeft, inOutRight)
// {
// if (inOutLeft > inOutRight)
// {
// temp = inOutLeft
// inOutLeft = inOutRight
// inOutRight = temp
// }
// }
 
// MedianSwap(v1, v2) - U
// MedianSwap(v4, v5) - U
// MedianSwap(v1, v2) - V
// MedianSwap(v4, v5) - V
 
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(1,0)<32;16,2> ubMEDIAN_TEMP(2,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(5,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(1,1)<32;16,2> ubMEDIAN_TEMP(2,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(5,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(1,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(4,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(1,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(1,0)<2> ubMEDIAN_TEMP(2,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(5,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(1,1)<2> ubMEDIAN_TEMP(2,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(5,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(2,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(5,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(2,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(5,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v7, v8) - U
// MedianSwap(v0, v1) - U
// MedianSwap(v7, v8) - V
// MedianSwap(v0, v1) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(7,0)<32;16,2> ubMEDIAN_TEMP(8,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(0,0)<32;16,2> ubMEDIAN_TEMP(1,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(7,1)<32;16,2> ubMEDIAN_TEMP(8,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(0,1)<32;16,2> ubMEDIAN_TEMP(1,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(7,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(0,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(7,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(0,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(7,0)<2> ubMEDIAN_TEMP(8,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(0,0)<2> ubMEDIAN_TEMP(1,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(7,1)<2> ubMEDIAN_TEMP(8,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(0,1)<2> ubMEDIAN_TEMP(1,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(8,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(1,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(8,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(1,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v3, v4) - U
// MedianSwap(v6, v7) - U
// MedianSwap(v3, v4) - V
// MedianSwap(v6, v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(3,0)<32;16,2> ubMEDIAN_TEMP(4,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(6,0)<32;16,2> ubMEDIAN_TEMP(7,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(3,1)<32;16,2> ubMEDIAN_TEMP(4,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(6,1)<32;16,2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(3,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(6,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(3,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(6,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(3,0)<2> ubMEDIAN_TEMP(4,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(6,0)<2> ubMEDIAN_TEMP(7,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(3,1)<2> ubMEDIAN_TEMP(4,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(6,1)<2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(4,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(7,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(4,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(7,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v1, v2) - U
// MedianSwap(v4, v5) - U
// MedianSwap(v1, v2) - V
// MedianSwap(v4, v5) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(1,0)<32;16,2> ubMEDIAN_TEMP(2,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(5,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(1,1)<32;16,2> ubMEDIAN_TEMP(2,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(5,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(1,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(4,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(1,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(1,0)<2> ubMEDIAN_TEMP(2,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(5,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(1,1)<2> ubMEDIAN_TEMP(2,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(5,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(2,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(5,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(2,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(5,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v7, v8) - U
// MedianSwap(v0, v3) - U
// MedianSwap(v7, v8) - V
// MedianSwap(v0, v3) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(7,0)<32;16,2> ubMEDIAN_TEMP(8,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(0,0)<32;16,2> ubMEDIAN_TEMP(3,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(7,1)<32;16,2> ubMEDIAN_TEMP(8,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(0,1)<32;16,2> ubMEDIAN_TEMP(3,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(7,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(0,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(7,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(0,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(7,0)<2> ubMEDIAN_TEMP(8,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(0,0)<2> ubMEDIAN_TEMP(3,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(7,1)<2> ubMEDIAN_TEMP(8,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(0,1)<2> ubMEDIAN_TEMP(3,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(8,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(3,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(8,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(3,1)<2> ubTEMP1(1,16)<16;16,1>
 
// NOTE:
// Compare v0 to v6 to find the minimum.
// Store the minimum for future use.
//TODO - Find if MIN is needed.
//cmp.l.f0.0 (16) null:w ubMEDIAN_TEMP(%1+0,0)<32;16,2> ubMEDIAN_TEMP(%1+6,0)<32;16,2>
//cmp.l.f1.0 (16) null:w ubMEDIAN_TEMP(%1+0,1)<32;16,2> ubMEDIAN_TEMP(%1+6,1)<32;16,2>
//(f0.0) mov (16) ubCURR_MIN(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+0,0)<32;16,2>
//(f1.0) mov (16) ubCURR_MIN(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+0,1)<32;16,2>
//(-f0.0) mov (16) ubCURR_MIN(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+6,0)<32;16,2>
//(-f1.0) mov (16) ubCURR_MIN(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+6,1)<32;16,2>
 
// MedianSwap(v5, v8) - U
// MedianSwap(v4, v7) - U
// MedianSwap(v5, v8) - V
// MedianSwap(v4, v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(5,0)<32;16,2> ubMEDIAN_TEMP(8,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(7,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(5,1)<32;16,2> ubMEDIAN_TEMP(8,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(5,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(4,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(5,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(5,0)<2> ubMEDIAN_TEMP(8,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(7,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(5,1)<2> ubMEDIAN_TEMP(8,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(8,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(7,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(8,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(7,1)<2> ubTEMP1(1,16)<16;16,1>
 
// NOTE:
// Compare v2 to v8 to find the maximum.
// Store the maximum for future use.
//TODO - Find if MAX is needed.
// cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(%1+2,0)<32;16,2> ubMEDIAN_TEMP(%1+8,0)<32;16,2>
// cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(%1+2,1)<32;16,2> ubMEDIAN_TEMP(%1+8,1)<32;16,2>
//(f0.0) mov (16) ubCURR_MAX(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+2,0)<32;16,2>
//(f1.0) mov (16) ubCURR_MAX(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+2,1)<32;16,2>
//(-f0.0) mov (16) ubCURR_MAX(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+8,0)<32;16,2>
//(-f1.0) mov (16) ubCURR_MAX(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+8,1)<32;16,2>
 
// MedianSwap(v3, v6) - U
// MedianSwap(v1, v4) - U
// MedianSwap(v3, v6) - V
// MedianSwap(v1, v4) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(3,0)<32;16,2> ubMEDIAN_TEMP(6,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(1,0)<32;16,2> ubMEDIAN_TEMP(4,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(3,1)<32;16,2> ubMEDIAN_TEMP(6,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(1,1)<32;16,2> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(6,0)<2> ubMEDIAN_TEMP(3,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(1,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(6,1)<2> ubMEDIAN_TEMP(3,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(1,1)<32;16,2>
 
// MedianSwap(v2,v5) - U
// MedianSwap(v4,v7) - U
// MedianSwap(v2,v5) - V
// MedianSwap(v4,v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(2,0)<32;16,2> ubMEDIAN_TEMP(5,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(7,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(2,1)<32;16,2> ubMEDIAN_TEMP(5,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(2,0)<2> ubMEDIAN_TEMP(5,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(7,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(2,1)<2> ubMEDIAN_TEMP(5,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
// MedianSwap(v4,v2) - U
// MedianSwap(v4,v2) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(2,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(2,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(4,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(2,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(2,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(2,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(2,1)<2> ubTEMP1(0,16)<16;16,1>
 
// MedianSwap(v6,v4) - U
// MedianSwap(v6,v4) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(6,0)<32;16,2> ubMEDIAN_TEMP(4,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(6,1)<32;16,2> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(6,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(6,1)<32;16,2>
 
// MedianSwap(v4,v2) - U
// MedianSwap(v4,v2) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(2,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(2,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(2,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(2,1)<32;16,2>
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(10,0)<32;16,2> ubMEDIAN_TEMP(11,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(14,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(10,1)<32;16,2> ubMEDIAN_TEMP(11,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(14,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(10,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(13,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(10,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(10,0)<2> ubMEDIAN_TEMP(11,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(14,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(10,1)<2> ubMEDIAN_TEMP(11,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(14,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(11,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(14,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(11,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(14,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v7, v8) - U
// MedianSwap(v0, v1) - U
// MedianSwap(v7, v8) - V
// MedianSwap(v0, v1) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(16,0)<32;16,2> ubMEDIAN_TEMP(17,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(9,0)<32;16,2> ubMEDIAN_TEMP(10,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(16,1)<32;16,2> ubMEDIAN_TEMP(17,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(9,1)<32;16,2> ubMEDIAN_TEMP(10,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(16,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(9,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(16,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(9,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(16,0)<2> ubMEDIAN_TEMP(17,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(9,0)<2> ubMEDIAN_TEMP(10,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(16,1)<2> ubMEDIAN_TEMP(17,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(9,1)<2> ubMEDIAN_TEMP(10,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(17,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(10,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(17,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(10,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v3, v4) - U
// MedianSwap(v6, v7) - U
// MedianSwap(v3, v4) - V
// MedianSwap(v6, v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(12,0)<32;16,2> ubMEDIAN_TEMP(13,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(15,0)<32;16,2> ubMEDIAN_TEMP(16,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(12,1)<32;16,2> ubMEDIAN_TEMP(13,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(15,1)<32;16,2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(12,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(15,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(12,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(15,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(12,0)<2> ubMEDIAN_TEMP(13,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(15,0)<2> ubMEDIAN_TEMP(16,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(12,1)<2> ubMEDIAN_TEMP(13,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(15,1)<2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(13,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(16,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(13,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(16,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v1, v2) - U
// MedianSwap(v4, v5) - U
// MedianSwap(v1, v2) - V
// MedianSwap(v4, v5) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(10,0)<32;16,2> ubMEDIAN_TEMP(11,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(14,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(10,1)<32;16,2> ubMEDIAN_TEMP(11,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(14,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(10,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(13,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(10,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(10,0)<2> ubMEDIAN_TEMP(11,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(14,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(10,1)<2> ubMEDIAN_TEMP(11,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(14,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(11,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(14,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(11,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(14,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v7, v8) - U
// MedianSwap(v0, v3) - U
// MedianSwap(v7, v8) - V
// MedianSwap(v0, v3) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(16,0)<32;16,2> ubMEDIAN_TEMP(17,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(9,0)<32;16,2> ubMEDIAN_TEMP(12,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(16,1)<32;16,2> ubMEDIAN_TEMP(17,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(9,1)<32;16,2> ubMEDIAN_TEMP(12,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(16,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(9,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(16,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(9,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(16,0)<2> ubMEDIAN_TEMP(17,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(9,0)<2> ubMEDIAN_TEMP(12,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(16,1)<2> ubMEDIAN_TEMP(17,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(9,1)<2> ubMEDIAN_TEMP(12,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(17,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(12,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(17,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(12,1)<2> ubTEMP1(1,16)<16;16,1>
 
// NOTE:
// Compare v0 to v6 to find the minimum.
// Store the minimum for future use.
//TODO - Find if MIN is needed.
//cmp.l.f0.0 (16) null:w ubMEDIAN_TEMP(%1+0,0)<32;16,2> ubMEDIAN_TEMP(%1+6,0)<32;16,2>
//cmp.l.f1.0 (16) null:w ubMEDIAN_TEMP(%1+0,1)<32;16,2> ubMEDIAN_TEMP(%1+6,1)<32;16,2>
//(f0.0) mov (16) ubCURR_MIN(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+0,0)<32;16,2>
//(f1.0) mov (16) ubCURR_MIN(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+0,1)<32;16,2>
//(-f0.0) mov (16) ubCURR_MIN(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+6,0)<32;16,2>
//(-f1.0) mov (16) ubCURR_MIN(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+6,1)<32;16,2>
 
// MedianSwap(v5, v8) - U
// MedianSwap(v4, v7) - U
// MedianSwap(v5, v8) - V
// MedianSwap(v4, v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(14,0)<32;16,2> ubMEDIAN_TEMP(17,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(16,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(14,1)<32;16,2> ubMEDIAN_TEMP(17,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(14,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(13,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(14,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(14,0)<2> ubMEDIAN_TEMP(17,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(16,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(14,1)<2> ubMEDIAN_TEMP(17,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(17,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(16,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(17,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(16,1)<2> ubTEMP1(1,16)<16;16,1>
 
// NOTE:
// Compare v2 to v8 to find the maximum.
// Store the maximum for future use.
//TODO - Find if MAX is needed.
// cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(%1+2,0)<32;16,2> ubMEDIAN_TEMP(%1+8,0)<32;16,2>
// cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(%1+2,1)<32;16,2> ubMEDIAN_TEMP(%1+8,1)<32;16,2>
//(f0.0) mov (16) ubCURR_MAX(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+2,0)<32;16,2>
//(f1.0) mov (16) ubCURR_MAX(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+2,1)<32;16,2>
//(-f0.0) mov (16) ubCURR_MAX(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+8,0)<32;16,2>
//(-f1.0) mov (16) ubCURR_MAX(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+8,1)<32;16,2>
 
// MedianSwap(v3, v6) - U
// MedianSwap(v1, v4) - U
// MedianSwap(v3, v6) - V
// MedianSwap(v1, v4) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(12,0)<32;16,2> ubMEDIAN_TEMP(15,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(10,0)<32;16,2> ubMEDIAN_TEMP(13,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(12,1)<32;16,2> ubMEDIAN_TEMP(15,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(10,1)<32;16,2> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(15,0)<2> ubMEDIAN_TEMP(12,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(10,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(15,1)<2> ubMEDIAN_TEMP(12,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(10,1)<32;16,2>
 
// MedianSwap(v2,v5) - U
// MedianSwap(v4,v7) - U
// MedianSwap(v2,v5) - V
// MedianSwap(v4,v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(11,0)<32;16,2> ubMEDIAN_TEMP(14,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(16,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(11,1)<32;16,2> ubMEDIAN_TEMP(14,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(11,0)<2> ubMEDIAN_TEMP(14,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(16,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(11,1)<2> ubMEDIAN_TEMP(14,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
// MedianSwap(v4,v2) - U
// MedianSwap(v4,v2) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(11,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(11,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(13,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(11,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(11,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(11,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(11,1)<2> ubTEMP1(0,16)<16;16,1>
 
// MedianSwap(v6,v4) - U
// MedianSwap(v6,v4) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(15,0)<32;16,2> ubMEDIAN_TEMP(13,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(15,1)<32;16,2> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(15,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(15,1)<32;16,2>
 
// MedianSwap(v4,v2) - U
// MedianSwap(v4,v2) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(11,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(11,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(11,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(11,1)<32;16,2>
 
// Sobel Value calculation for the current pixel v4
// v2 v1 v0
// * * * <--- Different field - not used
// v5 v4 v3
// * * * <--- Different field - not used
// v8 v7 v6
//
// Gx = -v0 - 2*v3 - v6 + v2 + 2*v5 + v8
// Gy = v0 + 2*v1 + v2 - v6 - 2*v7 - v8
//
// Sobel = (|Gx| + |Gy|) >> 3
 
//TODO - Change Later - rT
add (1) a0.0:uw a0.0<0;1,0>:uw -128:uw
 
// - 2 * v3
mul (16) acc0.0<1>:w r[a0.0,64]<16;16,1>:ub -2:w
// + v8
mac (16) acc0.0<1>:w r[a0.0,132]<16;16,1>:ub 1:w
// - v0
mac (16) acc0.0<1>:w r[a0.0,0]<16;16,1>:ub -1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,128]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,4]<16;16,1>:ub 1:w
// + 2 * v5
mac (16) wSOBEL_X(0)<1> r[a0.0,68]<16;16,1>:ub 2:w
// - 2 * v3
mul (16) acc0.0<1>:w r[a0.0,96]<16;16,1>:ub -2:w
// + v8
mac (16) acc0.0<1>:w r[a0.0,164]<16;16,1>:ub 1:w
// - v0
mac (16) acc0.0<1>:w r[a0.0,32]<16;16,1>:ub -1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,160]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,36]<16;16,1>:ub 1:w
// + 2 * v5
mac (16) wSOBEL_X(1)<1> r[a0.0,100]<16;16,1>:ub 2:w
// - 2 * v3
mul (16) acc0.0<1>:w r[a0.0,128]<16;16,1>:ub -2:w
// + v8
mac (16) acc0.0<1>:w r[a0.0,196]<16;16,1>:ub 1:w
// - v0
mac (16) acc0.0<1>:w r[a0.0,64]<16;16,1>:ub -1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,192]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,68]<16;16,1>:ub 1:w
// + 2 * v5
mac (16) wSOBEL_X(2)<1> r[a0.0,132]<16;16,1>:ub 2:w
// - 2 * v3
mul (16) acc0.0<1>:w r[a0.0,160]<16;16,1>:ub -2:w
// + v8
mac (16) acc0.0<1>:w r[a0.0,228]<16;16,1>:ub 1:w
// - v0
mac (16) acc0.0<1>:w r[a0.0,96]<16;16,1>:ub -1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,224]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,100]<16;16,1>:ub 1:w
// + 2 * v5
mac (16) wSOBEL_X(3)<1> r[a0.0,164]<16;16,1>:ub 2:w
 
// + 2 * v1
mul (16) acc0.0<1>:w r[a0.0,2]<16;16,1>:ub 2:w
// + v0
mac (16) acc0.0<1>:w r[a0.0,0]<16;16,1>:ub 1:w
// - v8
mac (16) acc0.0<1>:w r[a0.0,132]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,4]<16;16,1>:ub 1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,128]<16;16,1>:ub -1:w
// - 2 * v7
mac (16) acc0.0<1>:w r[a0.0,130]<16;16,1>:ub -2:w
 
add (16) acc0.0<1>:uw (abs)acc0.0<16;16,1>:w (abs)wSOBEL_X(0)<16;16,1>
 
shr (16) uwSOBEL(0)<1> acc0.0<16;16,1>:uw 3:uw
// + 2 * v1
mul (16) acc0.0<1>:w r[a0.0,34]<16;16,1>:ub 2:w
// + v0
mac (16) acc0.0<1>:w r[a0.0,32]<16;16,1>:ub 1:w
// - v8
mac (16) acc0.0<1>:w r[a0.0,164]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,36]<16;16,1>:ub 1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,160]<16;16,1>:ub -1:w
// - 2 * v7
mac (16) acc0.0<1>:w r[a0.0,162]<16;16,1>:ub -2:w
 
add (16) acc0.0<1>:uw (abs)acc0.0<16;16,1>:w (abs)wSOBEL_X(1)<16;16,1>
 
shr (16) uwSOBEL(1)<1> acc0.0<16;16,1>:uw 3:uw
// + 2 * v1
mul (16) acc0.0<1>:w r[a0.0,66]<16;16,1>:ub 2:w
// + v0
mac (16) acc0.0<1>:w r[a0.0,64]<16;16,1>:ub 1:w
// - v8
mac (16) acc0.0<1>:w r[a0.0,196]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,68]<16;16,1>:ub 1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,192]<16;16,1>:ub -1:w
// - 2 * v7
mac (16) acc0.0<1>:w r[a0.0,194]<16;16,1>:ub -2:w
 
add (16) acc0.0<1>:uw (abs)acc0.0<16;16,1>:w (abs)wSOBEL_X(2)<16;16,1>
 
shr (16) uwSOBEL(2)<1> acc0.0<16;16,1>:uw 3:uw
// + 2 * v1
mul (16) acc0.0<1>:w r[a0.0,98]<16;16,1>:ub 2:w
// + v0
mac (16) acc0.0<1>:w r[a0.0,96]<16;16,1>:ub 1:w
// - v8
mac (16) acc0.0<1>:w r[a0.0,228]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,100]<16;16,1>:ub 1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,224]<16;16,1>:ub -1:w
// - 2 * v7
mac (16) acc0.0<1>:w r[a0.0,226]<16;16,1>:ub -2:w
 
add (16) acc0.0<1>:uw (abs)acc0.0<16;16,1>:w (abs)wSOBEL_X(3)<16;16,1>
 
shr (16) uwSOBEL(3)<1> acc0.0<16;16,1>:uw 3:uw
 
//Mov Median in CURBE_TEMP to free up temp space.
mov (16) ubMEDIAN(0,0)<1> ubMEDIAN_TEMP(4,0)<16;16,1>
mov (16) ubMEDIAN(0,16)<1> ubMEDIAN_TEMP(4,16)<16;16,1>
mov (16) ubMEDIAN(0,32)<1> ubMEDIAN_TEMP(13,0)<16;16,1>
mov (16) ubMEDIAN(0,48)<1> ubMEDIAN_TEMP(13,16)<16;16,1>
 
// Find:
// absDiff = abs(ubCurY - ubMedian)
// Find the difference between pixel and median value.
 
//Median is interleaved. So difference is also interleaved.
 
//------------------------------------------------------------------------------------------
//Process 16 U and 16 V pixels here and rest later.
// first row - v0,v1,v2
add (16) wDIFF(0)<1> r[a0.0,0]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(1)<1> r[a0.0,2]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(2)<1> r[a0.0,4]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
 
// second row - v3,v4,v5
add (16) wDIFF(3)<1> r[a0.0,64]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(4)<1> r[a0.0,66]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(5)<1> r[a0.0,68]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
 
// third row - v6,v7,v8
add (16) wDIFF(6)<1> r[a0.0,128]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(7)<1> r[a0.0,130]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(8)<1> r[a0.0,132]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
// first row - v0,v1,v2
add (16) wDIFF(9)<1> r[a0.0,32]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(10)<1> r[a0.0,34]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(11)<1> r[a0.0,36]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
 
// second row - v3,v4,v5
add (16) wDIFF(12)<1> r[a0.0,96]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(13)<1> r[a0.0,98]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(14)<1> r[a0.0,100]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
 
// third row - v6,v7,v8
add (16) wDIFF(15)<1> r[a0.0,160]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(16)<1> r[a0.0,162]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(17)<1> r[a0.0,164]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
 
//TODO - Change Later - rT
add (1) a0.0:uw a0.0<0;1,0>:uw 64:uw
 
// Find sum of all absolute differences AND
// maximum absolute difference for 16 U and 16 V here.
//First 2 rows of 8x4
//Compare 0-1, 2-3, 4-5, 6-7
cmp.g.f0.0 (16) null:uw (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
cmp.g.f0.1 (16) null:uw (abs)wDIFF(2)<16;16,1> (abs)wDIFF(3)<16;16,1>
cmp.g.f1.0 (16) null:uw (abs)wDIFF(4)<16;16,1> (abs)wDIFF(5)<16;16,1>
cmp.g.f1.1 (16) null:uw (abs)wDIFF(6)<16;16,1> (abs)wDIFF(7)<16;16,1>
 
//Calculate SAD
add (16) acc0.0<1>:uw (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(2)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(3)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(4)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(5)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(6)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(7)<16;16,1>
add (16) uwSOAD(0)<1> acc0.0<16;16,1>:uw (abs)wDIFF(8)<16;16,1>
 
(f0.0) sel (16) uwCURBE_TEMP(0)<1> (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
(f0.1) sel (16) uwCURBE_TEMP(1)<1> (abs)wDIFF(2)<16;16,1> (abs)wDIFF(3)<16;16,1>
(f1.0) sel (16) uwCURBE_TEMP(2)<1> (abs)wDIFF(4)<16;16,1> (abs)wDIFF(5)<16;16,1>
(f1.1) sel (16) uwCURBE_TEMP(3)<1> (abs)wDIFF(6)<16;16,1> (abs)wDIFF(7)<16;16,1>
 
//------------
//DIFF(0-7) is not needed here. Populate it.
// first row - v0,v1,v2
add (16) wDIFF(0)<1> r[a0.0,0]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
add (16) wDIFF(1)<1> r[a0.0,2]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
add (16) wDIFF(2)<1> r[a0.0,4]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
 
// second row - v3,v4,v5
add (16) wDIFF(3)<1> r[a0.0,64]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
add (16) wDIFF(4)<1> r[a0.0,66]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
add (16) wDIFF(5)<1> r[a0.0,68]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
 
// third row - v6,v7
add (16) wDIFF(6)<1> r[a0.0,128]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
add (16) wDIFF(7)<1> r[a0.0,130]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
//------------
 
//Compare Max(0,1) - Max(2,3), Max(4,5) - Max(6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
cmp.g.f0.1 (16) null:uw uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
(f0.1)sel (16) uwCURBE_TEMP(2)<1> uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
//Compare Max(0,1,2,3) - Max(4,5,6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
 
//Compare Max(0,1,2,3,4,5,6,7) - 8
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(8)<16;16,1>
(f0.0)sel (16) uwMAX_ABS_DIFF(0)<1> uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(8)<16;16,1>
 
//------------
//Load v8 - DIFF(8)
add (16) wDIFF(8)<1> r[a0.0,132]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
//------------
//Compare 0-1, 2-3, 4-5, 6-7
cmp.g.f0.0 (16) null:uw (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
cmp.g.f0.1 (16) null:uw (abs)wDIFF(11)<16;16,1> (abs)wDIFF(12)<16;16,1>
cmp.g.f1.0 (16) null:uw (abs)wDIFF(13)<16;16,1> (abs)wDIFF(14)<16;16,1>
cmp.g.f1.1 (16) null:uw (abs)wDIFF(15)<16;16,1> (abs)wDIFF(16)<16;16,1>
 
//Calculate SAD
add (16) acc0.0<1>:uw (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(11)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(12)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(13)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(14)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(15)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(16)<16;16,1>
add (16) uwSOAD(1)<1> acc0.0<16;16,1>:uw (abs)wDIFF(17)<16;16,1>
 
(f0.0) sel (16) uwCURBE_TEMP(0)<1> (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
(f0.1) sel (16) uwCURBE_TEMP(1)<1> (abs)wDIFF(11)<16;16,1> (abs)wDIFF(12)<16;16,1>
(f1.0) sel (16) uwCURBE_TEMP(2)<1> (abs)wDIFF(13)<16;16,1> (abs)wDIFF(14)<16;16,1>
(f1.1) sel (16) uwCURBE_TEMP(3)<1> (abs)wDIFF(15)<16;16,1> (abs)wDIFF(16)<16;16,1>
 
//------------
//DIFF(0-7) is not needed here. Populate it.
// first row - v0,v1,v2
add (16) wDIFF(9)<1> r[a0.0,32]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
add (16) wDIFF(10)<1> r[a0.0,34]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
add (16) wDIFF(11)<1> r[a0.0,36]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
 
// second row - v3,v4,v5
add (16) wDIFF(12)<1> r[a0.0,96]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
add (16) wDIFF(13)<1> r[a0.0,98]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
add (16) wDIFF(14)<1> r[a0.0,100]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
 
// third row - v6,v7
add (16) wDIFF(15)<1> r[a0.0,160]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
add (16) wDIFF(16)<1> r[a0.0,162]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
//------------
 
//Compare Max(0,1) - Max(2,3), Max(4,5) - Max(6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
cmp.g.f0.1 (16) null:uw uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
(f0.1)sel (16) uwCURBE_TEMP(2)<1> uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
//Compare Max(0,1,2,3) - Max(4,5,6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
 
//Compare Max(0,1,2,3,4,5,6,7) - 8
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(17)<16;16,1>
(f0.0)sel (16) uwMAX_ABS_DIFF(1)<1> uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(17)<16;16,1>
 
//------------
//Load v8 - DIFF(8)
add (16) wDIFF(17)<1> r[a0.0,164]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
//------------
 
//if ((sobel_edge_measure < m_SobelEdgeThreshold) && ((block_max-block_min) < m_LocalDiffThreshold))
// if (sigma_mb_min > sigma)
// sigma_mb_min = sigma;
 
//NOTE: block_min is always zero as median is one of the value in 3x3 block. So no need o calculate it.
// So just do -
//if ((sobel_edge_measure < m_SobelEdgeThreshold) && ((block_max) < m_LocalDiffThreshold) && ( sigma < sigma_mb_min))
// sigma_mb_min = sigma;
 
//We are processing 32 bytes of U and 32 bytes of V - each of size 8x4.
//Compare first 8 bytes with max possible (255).
//Start above condition from second 8 bytes.
 
//TODO - Change Later - rT
// mov (1) pCUR_MIN_SOAD_8x4:uw 1752:uw //r54.24:ub
 
//First row of 8x4
cmp.l.f0.0 (16) null:uw uwSOBEL(0)<16;16,1> r55.30<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwMAX_ABS_DIFF(0)<16;16,1> r55.28<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwSOAD(0)<16;16,1> 255:uw
(f0.0) sel (16) uwSOBEL(0)<1> uwSOAD(0)<16;16,1> 255:uw
 
//Second row of 8x4
cmp.l.f0.0 (16) null:uw uwSOBEL(1)<16;16,1> r55.30<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwMAX_ABS_DIFF(1)<16;16,1> r55.28<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwSOAD(1)<16;16,1> uwSOBEL(0)<16;16,1>
(f0.0) mov (16) uwSOBEL(0)<1> uwSOAD(1)<16;16,1>
 
// Find sum of all absolute differences AND
// maximum absolute difference for 16 U and 16 V here.
//Second 2 rows of 8x4
//Compare 0-1, 2-3, 4-5, 6-7
cmp.g.f0.0 (16) null:uw (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
cmp.g.f0.1 (16) null:uw (abs)wDIFF(2)<16;16,1> (abs)wDIFF(3)<16;16,1>
cmp.g.f1.0 (16) null:uw (abs)wDIFF(4)<16;16,1> (abs)wDIFF(5)<16;16,1>
cmp.g.f1.1 (16) null:uw (abs)wDIFF(6)<16;16,1> (abs)wDIFF(7)<16;16,1>
 
//Calculate SAD
add (16) acc0.0<1>:uw (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(2)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(3)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(4)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(5)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(6)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(7)<16;16,1>
add (16) uwSOAD(0)<1> acc0.0<16;16,1>:uw (abs)wDIFF(8)<16;16,1>
 
(f0.0) sel (16) uwCURBE_TEMP(0)<1> (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
(f0.1) sel (16) uwCURBE_TEMP(1)<1> (abs)wDIFF(2)<16;16,1> (abs)wDIFF(3)<16;16,1>
(f1.0) sel (16) uwCURBE_TEMP(2)<1> (abs)wDIFF(4)<16;16,1> (abs)wDIFF(5)<16;16,1>
(f1.1) sel (16) uwCURBE_TEMP(3)<1> (abs)wDIFF(6)<16;16,1> (abs)wDIFF(7)<16;16,1>
 
//Compare Max(0,1) - Max(2,3), Max(4,5) - Max(6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
cmp.g.f0.1 (16) null:uw uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
(f0.1)sel (16) uwCURBE_TEMP(2)<1> uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
//Compare Max(0,1,2,3) - Max(4,5,6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
 
//Compare Max(0,1,2,3,4,5,6,7) - 8
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(8)<16;16,1>
(f0.0)sel (16) uwMAX_ABS_DIFF(0)<1> uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(8)<16;16,1>
//Compare 0-1, 2-3, 4-5, 6-7
cmp.g.f0.0 (16) null:uw (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
cmp.g.f0.1 (16) null:uw (abs)wDIFF(11)<16;16,1> (abs)wDIFF(12)<16;16,1>
cmp.g.f1.0 (16) null:uw (abs)wDIFF(13)<16;16,1> (abs)wDIFF(14)<16;16,1>
cmp.g.f1.1 (16) null:uw (abs)wDIFF(15)<16;16,1> (abs)wDIFF(16)<16;16,1>
 
//Calculate SAD
add (16) acc0.0<1>:uw (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(11)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(12)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(13)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(14)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(15)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(16)<16;16,1>
add (16) uwSOAD(1)<1> acc0.0<16;16,1>:uw (abs)wDIFF(17)<16;16,1>
 
(f0.0) sel (16) uwCURBE_TEMP(0)<1> (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
(f0.1) sel (16) uwCURBE_TEMP(1)<1> (abs)wDIFF(11)<16;16,1> (abs)wDIFF(12)<16;16,1>
(f1.0) sel (16) uwCURBE_TEMP(2)<1> (abs)wDIFF(13)<16;16,1> (abs)wDIFF(14)<16;16,1>
(f1.1) sel (16) uwCURBE_TEMP(3)<1> (abs)wDIFF(15)<16;16,1> (abs)wDIFF(16)<16;16,1>
 
//Compare Max(0,1) - Max(2,3), Max(4,5) - Max(6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
cmp.g.f0.1 (16) null:uw uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
(f0.1)sel (16) uwCURBE_TEMP(2)<1> uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
//Compare Max(0,1,2,3) - Max(4,5,6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
 
//Compare Max(0,1,2,3,4,5,6,7) - 8
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(17)<16;16,1>
(f0.0)sel (16) uwMAX_ABS_DIFF(1)<1> uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(17)<16;16,1>
 
//Third row of 8x4
cmp.l.f0.0 (16) null:uw uwSOBEL(2)<16;16,1> r55.30<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwMAX_ABS_DIFF(0)<16;16,1> r55.28<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwSOAD(0)<16;16,1> uwSOBEL(0)<16;16,1>
(f0.0) mov (16) uwSOBEL(0)<1> uwSOAD(0)<16;16,1>
 
//Fourth row of 8x4
cmp.l.f0.0 (16) null:uw uwSOBEL(3)<16;16,1> r55.30<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwMAX_ABS_DIFF(1)<16;16,1> r55.28<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwSOAD(1)<16;16,1> uwSOBEL(0)<16;16,1>
(f0.0) mov (16) uwSOBEL(0)<1> uwSOAD(1)<16;16,1>
 
cmp.l.f0.0 (8) null:uw uwSOBEL(0,0)<8;8,1> uwSOBEL(0,8)<8;8,1>
(f0.0) sel (8) uwSOBEL(0)<1> uwSOBEL(0,0)<8;8,1> uwSOBEL(0,8)<8;8,1>
 
cmp.l.f0.0 (4) null:uw uwSOBEL(0,0)<4;4,1> uwSOBEL(0,4)<4;4,1>
(f0.0) sel (4) uwSOBEL(0)<1> uwSOBEL(0,0)<4;4,1> uwSOBEL(0,4)<4;4,1>
 
cmp.l.f0.0 (2) null:uw uwSOBEL(0,0)<2;2,1> uwSOBEL(0,2)<2;2,1>
(f0.0) sel (2) r[a0.1,0]<1>:uw uwSOBEL(0,0)<2;2,1> uwSOBEL(0,2)<2;2,1>
 
 
 
 
 
 
// End of common.inc
 
mov (1) ip:ud r7.7<0;1,0>:d
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/NV12_DN_422CP.g4a
0,0 → 1,539
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 113 // Total instruction count
// 1 // Total kernel count
 
.kernel NV12_DN_422CP
.code
 
 
 
// FileName: DN_PL_Core.asm
// Author: Vivek Kumar
// Description: Tasks for DN only case (16x8 block) for planar format
 
 
 
// FileName: DN.asm
// Author: Vivek Kumar
// Description: Tasks for DN only case (16x8 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x45E8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(4,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DN_Hist_Save.asm
// Author: Vivek Kumar
// Description: Saves DN history data to statistics surface
 
// Write denoise history to memory
mov (8) r27<1>:ud r0.0<8;8,1>:ud // message header
 
 
mov (2) mudMSGHDR_HIST(1)<1> udDNDI_RESP(4,0)<2;2,1> // Move denoise history to MRF (4x2)
 
 
shr (2) r27.0<1>:ud r7.0<2;2,1>:w 2:w // X,Y origin / 4
add (1) r27.0<1>:ud r27.0<0;1,0>:ud r1.12<0;1,0>:uw { NoDDClr } // Add pitch to X origin
mov (1) r27.2<1>:ud 0x10003:ud { NoDDChk } // block width and height
 
mov (8) mudMSGHDR_HIST(0)<1> r27.0<8;8,1>:ud
send (8) null<1>:d r22 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x50003:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | X | X | X | X |
//----------------------------------------------------
//| X | SVCM | X |
//----------------------------------------------------
//| SHCM | STAD | X |
//----------------------------------------------------
//| X | X |
//----------------------------------------------------
//| X | SVCM | X |
//----------------------------------------------------
//| SHCM | STAD | X |
//----------------------------------------------------
mov (1) mubMSGHDR_ENC_STATS(1,0)<1> ubDNDI_RESP(4,8)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (1) muwMSGHDR_ENC_STATS(1,3)<1> uwDNDI_RESP(4,11)<0;1,0> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) muwMSGHDR_ENC_STATS(1,4)<1> uwDNDI_RESP(4,12)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (1) muwMSGHDR_ENC_STATS(1,9)<1> uwDNDI_RESP(4,8)<0;1,0> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) muwMSGHDR_ENC_STATS(1,10)<1> uwDNDI_RESP(4,9)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Load_UV_NV12_16x8.asm
// Author: Vivek Kumar
// Description: Read UV for 16x8 block through DATAPORT
 
 
 
// FileName: UVCopy_Load_16x8.asm
// Author: Vivek Kumar
// Description: Read UV for 16x8 block through DATAPORT
 
//CHANGE : Read extra UV data to convert to 422. -rT
//we are reading extra data in ALL cases irrespective of whether upsampling is reqd or not later on, to keep things simple.
 
 
add (2) r27.0<1>:d r7.0<2;2,1>:w r4.4<2;2,1>:w // Source Y Block origin
asr (1) r27.1<1>:d r27.1<0;1,0>:d 1:w { NoDDClr } // U/V block origin should be half of Y's
mov (1) r27.2<1>:ud 0x4000F:ud { NoDDChk } // U/V block width and height (8x5)
mov (8) mudMSGHDR_UVCOPY(0)<1> r27.0<8;8,1>:ud
send (8) udDNDI_UV_RESP(0)<1> r36 0x4 0x2390001:ud
 
//Update Header for Save
mov (1) mudMSGHDR_UVCOPY(0,2)<1> 0x3000F:ud // U/V block width and height (8x4)
 
 
 
// FileName: DN_Save_Y_16x8.asm
// Author: Vivek Kumar
// Description: Save one 16x8 blocks of Y channel of DN output for reference
 
 
mov (8) mudDN_Y_OUT(0,0)<1> r0<8;8,1>:ud // message header
mov (2) mudDN_Y_OUT(0,0)<1> r7.0<2;2,1>:w { NoDDClr } // X origin
mov (1) mudDN_Y_OUT(0,2)<1> 0x7000F:ud { NoDDChk } // block width and height (16x8)
 
//send out data through data port
send (8) null<1>:d mudDN_Y_OUT 0x5 0xA0A8018:ud
 
 
 
// FileName: DN_Save_UV_NV12_16x8.asm
// Author: Vivek Kumar
// Description: Save UV for 16x8 block through DATAPORT
 
 
 
// FileName: UVCopy_Save_16x8.asm
// Author: Vivek Kumar
// Description: Save UV for 16x8 block through DATAPORT
 
 
//Reuse the header from Load component
//Header is modified at the end of load - to be usable for save.
 
mov (8) mudMSGHDR_UVCOPY(1)<1> udDNDI_UV_RESP(0)<8;8,1>
mov (8) mudMSGHDR_UVCOPY(2)<1> udDNDI_UV_RESP(1)<8;8,1>
send (8) null<1>:d r36 0x5 0x60A8019:ud
 
 
 
// FileName: DN_Upsample_UV_NV12_16x8.asm
// Author: Tatiya, Rupesh
// Description: Upconvert 420 UV to 422
 
 
 
// FileName: UVCopy_Upsample_UV_16x8.asm
// Author: Tatiya, Rupesh
// Description: Convert 42X UV to 422 - to be used for IECP.
 
 
avg.sat (16) uwDNDI_UVCOPY_TEMP(0) ubDNDI_UV_RESP(0,0)<16;16,1> ubDNDI_UV_RESP(0,0)<16;16,1>
avg.sat (16) uwDNDI_UVCOPY_TEMP(1) ubDNDI_UV_RESP(0,0)<16;16,1> ubDNDI_UV_RESP(0,16)<16;16,1>
avg.sat (16) uwDNDI_UVCOPY_TEMP(2) ubDNDI_UV_RESP(0,16)<16;16,1> ubDNDI_UV_RESP(0,16)<16;16,1>
avg.sat (16) uwDNDI_UVCOPY_TEMP(3) ubDNDI_UV_RESP(0,16)<16;16,1> ubDNDI_UV_RESP(0,32)<16;16,1>
avg.sat (16) uwDNDI_UVCOPY_TEMP(4) ubDNDI_UV_RESP(0,32)<16;16,1> ubDNDI_UV_RESP(0,32)<16;16,1>
avg.sat (16) uwDNDI_UVCOPY_TEMP(5) ubDNDI_UV_RESP(0,32)<16;16,1> ubDNDI_UV_RESP(0,48)<16;16,1>
avg.sat (16) uwDNDI_UVCOPY_TEMP(6) ubDNDI_UV_RESP(0,48)<16;16,1> ubDNDI_UV_RESP(0,48)<16;16,1>
avg.sat (16) uwDNDI_UVCOPY_TEMP(7) ubDNDI_UV_RESP(0,48)<16;16,1> ubDNDI_UV_RESP(0,64)<16;16,1>
 
mov (16) ubDNDI_RESP(5,1)<2> ubDNDI_UVCOPY_TEMP(0,0)<32;8,4> { NoDDClr } //Copy U data
mov (16) ubDNDI_RESP(5,0)<2> ubDNDI_UVCOPY_TEMP(0,2)<32;8,4> { NoDDChk } //Copy V data
mov (16) ubDNDI_RESP(5,33)<2> ubDNDI_UVCOPY_TEMP(2,0)<32;8,4> { NoDDClr } //Copy U data
mov (16) ubDNDI_RESP(5,32)<2> ubDNDI_UVCOPY_TEMP(2,2)<32;8,4> { NoDDChk } //Copy V data
mov (16) ubDNDI_RESP(5,65)<2> ubDNDI_UVCOPY_TEMP(4,0)<32;8,4> { NoDDClr } //Copy U data
mov (16) ubDNDI_RESP(5,64)<2> ubDNDI_UVCOPY_TEMP(4,2)<32;8,4> { NoDDChk } //Copy V data
mov (16) ubDNDI_RESP(5,97)<2> ubDNDI_UVCOPY_TEMP(6,0)<32;8,4> { NoDDClr } //Copy U data
mov (16) ubDNDI_RESP(5,96)<2> ubDNDI_UVCOPY_TEMP(6,2)<32;8,4> { NoDDChk } //Copy V data
 
 
 
// FileName: DN_Save_422CP_16x8.asm
// Author: Vivek Kumar
// Description: Save one 16x8 blocks of DN output to the color pipe in 4-2-2 format
 
 
.declare mubMSGHDR_DN_OUT_2 Base=r36.0 ElementSize=1 Type=ub
 
 
mov (8) mudMSGHDR_DN_OUT(0)<1> r0<8;8,1>:ud // message header
shl (1) mdMSGHDR_DN_OUT(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin * 2 (422 output)
mov (1) mdMSGHDR_DN_OUT(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_DN_OUT(0,2)<1> 0x7000F:ud { NoDDClr, NoDDChk } // block width and height (16x8)
 
//M0.3 - 0 - CP Enable, 1 - Area of Interest, 3:2 Message Format(TBD), 4:3 - Ignored, 31:5 CP state pointer
//Compose area-of-interest bit + color pipe state pointer
or (1) mudMSGHDR_DN_OUT(0,3)<1> r2.4<0;1,0>:ud r7.26<0;1,0>:b { NoDDChk }
 
// First 8 x 8 Block
mov (8) mubMSGHDR_DN_OUT(1)<2> ubDNDI_RESP(0,0)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(1,16)<2> ubDNDI_RESP(0,16)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(2)<2> ubDNDI_RESP(0,32)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(2,16)<2> ubDNDI_RESP(0,48)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(3)<2> ubDNDI_RESP(0,64)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(3,16)<2> ubDNDI_RESP(0,80)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(4)<2> ubDNDI_RESP(0,96)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(4,16)<2> ubDNDI_RESP(0,112)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT(1,1)<4> ubDNDI_RESP(5,1)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(1,17)<4> ubDNDI_RESP(5,17)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT(1,3)<4> ubDNDI_RESP(5,0)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(1,19)<4> ubDNDI_RESP(5,16)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(2,1)<4> ubDNDI_RESP(5,33)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(2,17)<4> ubDNDI_RESP(5,49)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT(2,3)<4> ubDNDI_RESP(5,32)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(2,19)<4> ubDNDI_RESP(5,48)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(3,1)<4> ubDNDI_RESP(5,65)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(3,17)<4> ubDNDI_RESP(5,81)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT(3,3)<4> ubDNDI_RESP(5,64)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(3,19)<4> ubDNDI_RESP(5,80)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(4,1)<4> ubDNDI_RESP(5,97)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(4,17)<4> ubDNDI_RESP(5,113)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT(4,3)<4> ubDNDI_RESP(5,96)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(4,19)<4> ubDNDI_RESP(5,112)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
// Second 8 x 8 Block
mov (8) r36.0<1>:ud r31.0<8;8,1>:ud
add (1) r36.0<1>:ud r36.0<0;1,0>:w 0x10:w
 
mov (8) mubMSGHDR_DN_OUT_2(1)<2> ubDNDI_RESP(0,8)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(1,16)<2> ubDNDI_RESP(0,24)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(2)<2> ubDNDI_RESP(0,40)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(2,16)<2> ubDNDI_RESP(0,56)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(3)<2> ubDNDI_RESP(0,72)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(3,16)<2> ubDNDI_RESP(0,88)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(4)<2> ubDNDI_RESP(0,104)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(4,16)<2> ubDNDI_RESP(0,120)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT_2(1,1)<4> ubDNDI_RESP(5,9)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(1,17)<4> ubDNDI_RESP(5,25)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT_2(1,3)<4> ubDNDI_RESP(5,8)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(1,19)<4> ubDNDI_RESP(5,24)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(2,1)<4> ubDNDI_RESP(5,41)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(2,17)<4> ubDNDI_RESP(5,57)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT_2(2,3)<4> ubDNDI_RESP(5,40)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(2,19)<4> ubDNDI_RESP(5,56)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(3,1)<4> ubDNDI_RESP(5,73)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(3,17)<4> ubDNDI_RESP(5,89)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT_2(3,3)<4> ubDNDI_RESP(5,72)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(3,19)<4> ubDNDI_RESP(5,88)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(4,1)<4> ubDNDI_RESP(5,105)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(4,17)<4> ubDNDI_RESP(5,121)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT_2(4,3)<4> ubDNDI_RESP(5,104)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(4,19)<4> ubDNDI_RESP(5,120)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
//send out data through data port
send (8) null<1>:d r31.0 0x5 0xA0A801B:ud
send (8) null<1>:d r36.0 0x5 0xA0A801B:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/NV12_DN_NV12.g4a
0,0 → 1,420
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 40 // Total instruction count
// 1 // Total kernel count
 
.kernel NV12_DN_NV12
.code
 
 
 
// FileName: DN_PL_Core.asm
// Author: Vivek Kumar
// Description: Tasks for DN only case (16x8 block) for planar format
 
 
 
// FileName: DN.asm
// Author: Vivek Kumar
// Description: Tasks for DN only case (16x8 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x45E8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(4,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DN_Hist_Save.asm
// Author: Vivek Kumar
// Description: Saves DN history data to statistics surface
 
// Write denoise history to memory
mov (8) r27<1>:ud r0.0<8;8,1>:ud // message header
 
 
mov (2) mudMSGHDR_HIST(1)<1> udDNDI_RESP(4,0)<2;2,1> // Move denoise history to MRF (4x2)
 
 
shr (2) r27.0<1>:ud r7.0<2;2,1>:w 2:w // X,Y origin / 4
add (1) r27.0<1>:ud r27.0<0;1,0>:ud r1.12<0;1,0>:uw { NoDDClr } // Add pitch to X origin
mov (1) r27.2<1>:ud 0x10003:ud { NoDDChk } // block width and height
 
mov (8) mudMSGHDR_HIST(0)<1> r27.0<8;8,1>:ud
send (8) null<1>:d r22 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x50003:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | X | X | X | X |
//----------------------------------------------------
//| X | SVCM | X |
//----------------------------------------------------
//| SHCM | STAD | X |
//----------------------------------------------------
//| X | X |
//----------------------------------------------------
//| X | SVCM | X |
//----------------------------------------------------
//| SHCM | STAD | X |
//----------------------------------------------------
mov (1) mubMSGHDR_ENC_STATS(1,0)<1> ubDNDI_RESP(4,8)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (1) muwMSGHDR_ENC_STATS(1,3)<1> uwDNDI_RESP(4,11)<0;1,0> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) muwMSGHDR_ENC_STATS(1,4)<1> uwDNDI_RESP(4,12)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (1) muwMSGHDR_ENC_STATS(1,9)<1> uwDNDI_RESP(4,8)<0;1,0> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) muwMSGHDR_ENC_STATS(1,10)<1> uwDNDI_RESP(4,9)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Load_UV_NV12_16x8.asm
// Author: Vivek Kumar
// Description: Read UV for 16x8 block through DATAPORT
 
 
 
// FileName: UVCopy_Load_16x8.asm
// Author: Vivek Kumar
// Description: Read UV for 16x8 block through DATAPORT
 
//CHANGE : Read extra UV data to convert to 422. -rT
//we are reading extra data in ALL cases irrespective of whether upsampling is reqd or not later on, to keep things simple.
 
 
add (2) r27.0<1>:d r7.0<2;2,1>:w r4.4<2;2,1>:w // Source Y Block origin
asr (1) r27.1<1>:d r27.1<0;1,0>:d 1:w { NoDDClr } // U/V block origin should be half of Y's
mov (1) r27.2<1>:ud 0x4000F:ud { NoDDChk } // U/V block width and height (8x5)
mov (8) mudMSGHDR_UVCOPY(0)<1> r27.0<8;8,1>:ud
send (8) udDNDI_UV_RESP(0)<1> r36 0x4 0x2390001:ud
 
//Update Header for Save
mov (1) mudMSGHDR_UVCOPY(0,2)<1> 0x3000F:ud // U/V block width and height (8x4)
 
 
 
// FileName: DN_Save_Y_16x8.asm
// Author: Vivek Kumar
// Description: Save one 16x8 blocks of Y channel of DN output for reference
 
 
mov (8) mudDN_Y_OUT(0,0)<1> r0<8;8,1>:ud // message header
mov (2) mudDN_Y_OUT(0,0)<1> r7.0<2;2,1>:w { NoDDClr } // X origin
mov (1) mudDN_Y_OUT(0,2)<1> 0x7000F:ud { NoDDChk } // block width and height (16x8)
 
//send out data through data port
send (8) null<1>:d mudDN_Y_OUT 0x5 0xA0A8018:ud
 
 
 
// FileName: DN_Save_UV_NV12_16x8.asm
// Author: Vivek Kumar
// Description: Save UV for 16x8 block through DATAPORT
 
 
 
// FileName: UVCopy_Save_16x8.asm
// Author: Vivek Kumar
// Description: Save UV for 16x8 block through DATAPORT
 
 
//Reuse the header from Load component
//Header is modified at the end of load - to be usable for save.
 
mov (8) mudMSGHDR_UVCOPY(1)<1> udDNDI_UV_RESP(0)<8;8,1>
mov (8) mudMSGHDR_UVCOPY(2)<1> udDNDI_UV_RESP(1)<8;8,1>
send (8) null<1>:d r36 0x5 0x60A8019:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/PA_AVS_Buf_0.g4a
0,0 → 1,539
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 39 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: PA_AVS_Buf_0.asm
// Author: Vivek Kumar
// Description: Loads 8x8 AVS/IEF Packed data into Buffer 0
 
 
 
// FileName : PA_AVS_Buf.asm
// Author : Tatiya, Rupesh
// Description : Loads 8x8 AVS/IEF Packed data into Buffer N
 
//On IVB, for AVS module - set buffer pointers offset according to AVS Layout.
//Change it to Sample Unorm layout in Shuffle modules.
 
 
 
// Module name: Scaling.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
// Message Header
// m0.7 31:0 Debug
// m0.6 31:0 Debug
// m0.5 31:0 Ignored
// m0.4 31:0 Ignored
// m0.3 31:0 Ignored
// m0.2 31:16 Ignored
// 15 Alpha Write Channel Mask enable=0, disable=1
// 14 Blue Write Channel Mask (U)
// 13 Green Write Channel Mask (Y)
// 12 Red Write Channel Mask (V)
// 11:0 Ignored
// m0.1 Ignored
// m0.0 Ignored
 
 
// AVS payload
// m1.7 Group ID Number
// m1.6 U 2nd Derivative ---> NLAS dx
// m1.5 Delta V ---> Step Y
// m1.4 Delta U ---> Step X
// m1.3 Pixel 0 V Address ---> ORIY (Y0)
// m1.2 Pixel 0 U Address ---> ORIX (X0)
// m1.1 Vertical Block Number
// m1.0 Reserved
 
// Sampler Message Descriptor
// 31:29 Reserved 000
// 28:25 Message length 0010
// 24:20 Response length xxxxx ---> 4GRFs for each enabled channel (AVS), 2GRFs for each enabled channel (sample unorm)
// 19 Header Present 1
// 18:17 SIMD Mode 11 ---> SIMD32/64
// 16:12 Message Type xxxxx ---> 01011 sample_8x8, 01100 (sample_unorm), 01010 (sample_unorm+killpix)
// 11:8 Sampler Index xxxx
// 7:0 Binding Table Index xxxxxxxx
 
 
// Msg Header M0.2
// 15:15 Alpha Write Channel Mask, 0: written back, 1: not written back
// 14:14 Blue Write Channel Mask
// 13:13 Green Write Channel Mask
// 12:12 Red Write Channel Mask
 
 
//By design, Buffer 0,1,2,3 always have Layer 0 and Buffer 4,5 always have L1-L7
 
 
//used to generate LABELS at compile time.
 
 
// 18:17 SIMD Mode 10 ---> SIMD16
// 16:12 Message Type xxxxx ---> 00000 (SIMD16)
 
 
//r10-17 - 8 GRFs to load SIMD16 data (upto 4 channels)
//r18-19 - 2 GRFs to store sampler ramp.
 
.declare mfSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare muwSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare mudCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare mubCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=1 SrcRegion=<32;32,1> DstRegion=<1> Type=ub
 
 
.declare fSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare udSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ub4SCALING_0X_34X_TEMP Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<1> Type=ub
.declare uwSCALING_0X_34X_TEMP Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
// Sampler ramp is used for Scaling 0X_0.34X
.declare fSAMPLER_RAMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> Type=f // 1 GRFs, 8 elements
 
 
//#define rMSGDSC_UV r23.0
 
 
//End of _SCALING_
 
 
//NOTE: We need offsets for second halfof LAYER 0 - even if we do not load it.
//Update the channel offset in the buffers for the lower 8x4 data for BUFFER_0.
mov (1) r22.4<1>:ud 0x400040:ud
 
 
//Check if layer is to be skipped
 
 
// f0.1 pre-computed in Set_Layer_0
(-f0.1) jmpi (1) SKIP_AVS_LOAD_L0_0_
 
 
//AVS_PAYLOAD already has all the data loaded at this point
add (1) a0.0:ud r23.5<0;1,0>:ud 0x50EB400:ud //msg desc
 
mov (1) r16.2:ud 0x00000000:ud // Enable ARGB channels
 
 
//OPT: rAVS_PAYLOAD.1 and .7 --> use NODDCLR, NODDCHK -rT
mov (1) r25.7<1>:ud r7.7:ud { NoDDClr }
mov (1) r25.1<1>:ud r7.12:uw { NoDDChk }
 
 
// set the vertical block number
 
 
mov (8) r17.0:ud r25.0<8;8,1>:ud
 
// Gen7 AVS WA Only for YUV packed surfaces, NV12 and Y-channel only for Planar surfaces
// if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
// {
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
// }
// else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
// {
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
// }
// else{
// modified_u_coord = u_coord;
// }
// Where u_left = u – 2*du + 3*ddu for IEF On
// And u_left = u for IEF Off case
//
 
// check whether Gen7 AVS WA is enabled,
mov (1) r14.8:uw f0.0:uw // save f0.0
 
and.nz.f0.0 (1) null<1>:uw r2.3:uw 0x2:uw
(-f0.0)jmpi (1) GEN7_AVS_WA_DONE_L0_0_
 
 
// Gen7 AVS WA, check if IEF is ON for choosing Gen7 AVS WA formula
 
and.nz.f0.0 (8) null<1>:uw r2.3<0;1,0>:uw 0x4:uw
(f0.0)mov (8) acc0.0:f r17.2<0;1,0>:f
(f0.0)mac (8) acc0.0:f r17.4<0;1,0>:f -2.0:f
(f0.0)mac (8) acc0.0:f r17.6<0;1,0>:f 3.0:f
(f0.0)mov (1) r14.2:f acc0:f // IEF ON, rTEMP3.2 = u_left
(-f0.0)mov (1) r14.2:f r17.2<0;1,0>:f // IEF OFF, rTEMP3.2 = u_left
 
and (1) r14.1:ud r2.3:uw 0xFFF8:uw
asr (1) r14.1:ud r14.1:ud 3:d
mov (1) r14.1:f r14.1:ud
 
// Gen7 AVS WA, if (int)(u_left*width + 5.0/256) > (int)(u_left*width)
mul (1) r14.0:f r14.2:f r14.1:f // rTEMP3.0 = u_left*width
add (1) r14.2:f r14.0:f 0.01953125:f // rTEMP3.2 = u_left*width + 5.0/256
add (1) r14.3:f r14.0:f 0.99609375:f // rTEMP3.3 = u_left*width + 255.0/256
 
//Check if the values are < 0 and account for (int) cast of negative numbers
 
//(int)(u_left*width)
cmp.l.f0.0 (1) null<1>:f r14.0:f 0.00000000:f
mov (1) r14.0:d r14.0:f
(f0.0)add (1) r14.0:d r14.0<0;1,0>:d -1:d
 
//(int)(u_left*width + 5.0/256)
cmp.l.f0.0 (1) null<1>:f r14.2:f 0.00000000:f
mov (1) r14.2:d r14.2:f
(f0.0)add (1) r14.2:d r14.2<0;1,0>:d -1:d
 
//(int)(u_left*width + 255.0/256)
cmp.l.f0.0 (1) null<1>:f r14.3:f 0.00000000:f
mov (1) r14.3:d r14.3:f
(f0.0)add (1) r14.3:d r14.3<0;1,0>:d -1:d
 
mov (1) f0.0:uw 0:uw // clear flag
//if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
cmp.g.f1.0 (1) null<1>:d r14.2:d r14.0:d
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
(f1.0) add (1) r17.2:f r17.2<0;1,0>:f -r2.3:f
//else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
(-f1.0) cmp.e.f0.0 (1) null<1>:d r14.3:d r14.0:d
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
(f0.0) add (1) r17.2:f r17.2<0;1,0>:f r2.2:f
 
 
GEN7_AVS_WA_DONE_L0_0_:
mov (1) f0.0:uw r14.8:uw // restore f0.0
 
send (1) uwBUFFER_0(0)<1> r16 0x2 a0.0:ud
// Returns packed data in 16 GRFs in scrambled order
 
SKIP_AVS_LOAD_L0_0_:
nop
 
 
/drivers/video/i965/shaders/post_processing/gen7/PA_AVS_Buf_1.g4a
0,0 → 1,531
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 37 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: PA_AVS_Buf_1.asm
// Author: Vivek Kumar
// Description: Loads 8x8 AVS/IEF Packed data into Buffer 1
 
 
 
// FileName : PA_AVS_Buf.asm
// Author : Tatiya, Rupesh
// Description : Loads 8x8 AVS/IEF Packed data into Buffer N
 
//On IVB, for AVS module - set buffer pointers offset according to AVS Layout.
//Change it to Sample Unorm layout in Shuffle modules.
 
 
 
// Module name: Scaling.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
// Message Header
// m0.7 31:0 Debug
// m0.6 31:0 Debug
// m0.5 31:0 Ignored
// m0.4 31:0 Ignored
// m0.3 31:0 Ignored
// m0.2 31:16 Ignored
// 15 Alpha Write Channel Mask enable=0, disable=1
// 14 Blue Write Channel Mask (U)
// 13 Green Write Channel Mask (Y)
// 12 Red Write Channel Mask (V)
// 11:0 Ignored
// m0.1 Ignored
// m0.0 Ignored
 
 
// AVS payload
// m1.7 Group ID Number
// m1.6 U 2nd Derivative ---> NLAS dx
// m1.5 Delta V ---> Step Y
// m1.4 Delta U ---> Step X
// m1.3 Pixel 0 V Address ---> ORIY (Y0)
// m1.2 Pixel 0 U Address ---> ORIX (X0)
// m1.1 Vertical Block Number
// m1.0 Reserved
 
// Sampler Message Descriptor
// 31:29 Reserved 000
// 28:25 Message length 0010
// 24:20 Response length xxxxx ---> 4GRFs for each enabled channel (AVS), 2GRFs for each enabled channel (sample unorm)
// 19 Header Present 1
// 18:17 SIMD Mode 11 ---> SIMD32/64
// 16:12 Message Type xxxxx ---> 01011 sample_8x8, 01100 (sample_unorm), 01010 (sample_unorm+killpix)
// 11:8 Sampler Index xxxx
// 7:0 Binding Table Index xxxxxxxx
 
 
// Msg Header M0.2
// 15:15 Alpha Write Channel Mask, 0: written back, 1: not written back
// 14:14 Blue Write Channel Mask
// 13:13 Green Write Channel Mask
// 12:12 Red Write Channel Mask
 
 
//By design, Buffer 0,1,2,3 always have Layer 0 and Buffer 4,5 always have L1-L7
 
 
//used to generate LABELS at compile time.
 
 
// 18:17 SIMD Mode 10 ---> SIMD16
// 16:12 Message Type xxxxx ---> 00000 (SIMD16)
 
 
//r10-17 - 8 GRFs to load SIMD16 data (upto 4 channels)
//r18-19 - 2 GRFs to store sampler ramp.
 
.declare mfSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare muwSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare mudCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare mubCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=1 SrcRegion=<32;32,1> DstRegion=<1> Type=ub
 
 
.declare fSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare udSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ub4SCALING_0X_34X_TEMP Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<1> Type=ub
.declare uwSCALING_0X_34X_TEMP Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
// Sampler ramp is used for Scaling 0X_0.34X
.declare fSAMPLER_RAMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> Type=f // 1 GRFs, 8 elements
 
 
//#define rMSGDSC_UV r23.0
 
 
//End of _SCALING_
 
 
//Check if layer is to be skipped
 
 
// f0.1 pre-computed in Set_Layer_0
(-f0.1) jmpi (1) SKIP_AVS_LOAD_L0_1_
 
 
//AVS_PAYLOAD already has all the data loaded at this point
add (1) a0.0:ud r23.5<0;1,0>:ud 0x50EB400:ud //msg desc
 
mov (1) r16.2:ud 0x00000000:ud // Enable ARGB channels
 
 
// set the vertical block number
 
add (1) r25.1<1>:ud r7.12:uw 1:ud
 
 
mov (8) r17.0:ud r25.0<8;8,1>:ud
 
// Gen7 AVS WA Only for YUV packed surfaces, NV12 and Y-channel only for Planar surfaces
// if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
// {
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
// }
// else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
// {
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
// }
// else{
// modified_u_coord = u_coord;
// }
// Where u_left = u – 2*du + 3*ddu for IEF On
// And u_left = u for IEF Off case
//
 
// check whether Gen7 AVS WA is enabled,
mov (1) r14.8:uw f0.0:uw // save f0.0
 
and.nz.f0.0 (1) null<1>:uw r2.3:uw 0x2:uw
(-f0.0)jmpi (1) GEN7_AVS_WA_DONE_L0_1_
 
 
// Gen7 AVS WA, check if IEF is ON for choosing Gen7 AVS WA formula
 
and.nz.f0.0 (8) null<1>:uw r2.3<0;1,0>:uw 0x4:uw
(f0.0)mov (8) acc0.0:f r17.2<0;1,0>:f
(f0.0)mac (8) acc0.0:f r17.4<0;1,0>:f -2.0:f
(f0.0)mac (8) acc0.0:f r17.6<0;1,0>:f 3.0:f
(f0.0)mov (1) r14.2:f acc0:f // IEF ON, rTEMP3.2 = u_left
(-f0.0)mov (1) r14.2:f r17.2<0;1,0>:f // IEF OFF, rTEMP3.2 = u_left
 
and (1) r14.1:ud r2.3:uw 0xFFF8:uw
asr (1) r14.1:ud r14.1:ud 3:d
mov (1) r14.1:f r14.1:ud
 
// Gen7 AVS WA, if (int)(u_left*width + 5.0/256) > (int)(u_left*width)
mul (1) r14.0:f r14.2:f r14.1:f // rTEMP3.0 = u_left*width
add (1) r14.2:f r14.0:f 0.01953125:f // rTEMP3.2 = u_left*width + 5.0/256
add (1) r14.3:f r14.0:f 0.99609375:f // rTEMP3.3 = u_left*width + 255.0/256
 
//Check if the values are < 0 and account for (int) cast of negative numbers
 
//(int)(u_left*width)
cmp.l.f0.0 (1) null<1>:f r14.0:f 0.00000000:f
mov (1) r14.0:d r14.0:f
(f0.0)add (1) r14.0:d r14.0<0;1,0>:d -1:d
 
//(int)(u_left*width + 5.0/256)
cmp.l.f0.0 (1) null<1>:f r14.2:f 0.00000000:f
mov (1) r14.2:d r14.2:f
(f0.0)add (1) r14.2:d r14.2<0;1,0>:d -1:d
 
//(int)(u_left*width + 255.0/256)
cmp.l.f0.0 (1) null<1>:f r14.3:f 0.00000000:f
mov (1) r14.3:d r14.3:f
(f0.0)add (1) r14.3:d r14.3<0;1,0>:d -1:d
 
mov (1) f0.0:uw 0:uw // clear flag
//if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
cmp.g.f1.0 (1) null<1>:d r14.2:d r14.0:d
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
(f1.0) add (1) r17.2:f r17.2<0;1,0>:f -r2.3:f
//else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
(-f1.0) cmp.e.f0.0 (1) null<1>:d r14.3:d r14.0:d
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
(f0.0) add (1) r17.2:f r17.2<0;1,0>:f r2.2:f
 
 
GEN7_AVS_WA_DONE_L0_1_:
mov (1) f0.0:uw r14.8:uw // restore f0.0
 
send (1) uwBUFFER_1(0)<1> r16 0x2 a0.0:ud
// Returns packed data in 16 GRFs in scrambled order
 
SKIP_AVS_LOAD_L0_1_:
nop
 
 
/drivers/video/i965/shaders/post_processing/gen7/PA_AVS_Buf_2.g4a
0,0 → 1,532
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 37 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: PA_AVS_Buf_2.asm
// Author: Vivek Kumar
// Description: Loads 8x8 AVS/IEF Packed data into Buffer 2
 
 
 
// FileName : PA_AVS_Buf.asm
// Author : Tatiya, Rupesh
// Description : Loads 8x8 AVS/IEF Packed data into Buffer N
 
//On IVB, for AVS module - set buffer pointers offset according to AVS Layout.
//Change it to Sample Unorm layout in Shuffle modules.
 
 
 
// Module name: Scaling.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
// Message Header
// m0.7 31:0 Debug
// m0.6 31:0 Debug
// m0.5 31:0 Ignored
// m0.4 31:0 Ignored
// m0.3 31:0 Ignored
// m0.2 31:16 Ignored
// 15 Alpha Write Channel Mask enable=0, disable=1
// 14 Blue Write Channel Mask (U)
// 13 Green Write Channel Mask (Y)
// 12 Red Write Channel Mask (V)
// 11:0 Ignored
// m0.1 Ignored
// m0.0 Ignored
 
 
// AVS payload
// m1.7 Group ID Number
// m1.6 U 2nd Derivative ---> NLAS dx
// m1.5 Delta V ---> Step Y
// m1.4 Delta U ---> Step X
// m1.3 Pixel 0 V Address ---> ORIY (Y0)
// m1.2 Pixel 0 U Address ---> ORIX (X0)
// m1.1 Vertical Block Number
// m1.0 Reserved
 
// Sampler Message Descriptor
// 31:29 Reserved 000
// 28:25 Message length 0010
// 24:20 Response length xxxxx ---> 4GRFs for each enabled channel (AVS), 2GRFs for each enabled channel (sample unorm)
// 19 Header Present 1
// 18:17 SIMD Mode 11 ---> SIMD32/64
// 16:12 Message Type xxxxx ---> 01011 sample_8x8, 01100 (sample_unorm), 01010 (sample_unorm+killpix)
// 11:8 Sampler Index xxxx
// 7:0 Binding Table Index xxxxxxxx
 
 
// Msg Header M0.2
// 15:15 Alpha Write Channel Mask, 0: written back, 1: not written back
// 14:14 Blue Write Channel Mask
// 13:13 Green Write Channel Mask
// 12:12 Red Write Channel Mask
 
 
//By design, Buffer 0,1,2,3 always have Layer 0 and Buffer 4,5 always have L1-L7
 
 
//used to generate LABELS at compile time.
 
 
// 18:17 SIMD Mode 10 ---> SIMD16
// 16:12 Message Type xxxxx ---> 00000 (SIMD16)
 
 
//r10-17 - 8 GRFs to load SIMD16 data (upto 4 channels)
//r18-19 - 2 GRFs to store sampler ramp.
 
.declare mfSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare muwSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare mudCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare mubCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=1 SrcRegion=<32;32,1> DstRegion=<1> Type=ub
 
 
.declare fSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare udSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ub4SCALING_0X_34X_TEMP Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<1> Type=ub
.declare uwSCALING_0X_34X_TEMP Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
// Sampler ramp is used for Scaling 0X_0.34X
.declare fSAMPLER_RAMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> Type=f // 1 GRFs, 8 elements
 
 
//#define rMSGDSC_UV r23.0
 
 
//End of _SCALING_
 
 
//Check if layer is to be skipped
 
 
// f0.1 pre-computed in Set_Layer_0
(-f0.1) jmpi (1) SKIP_AVS_LOAD_L0_2_
 
 
//AVS_PAYLOAD already has all the data loaded at this point
add (1) a0.0:ud r23.5<0;1,0>:ud 0x50EB400:ud //msg desc
 
mov (1) r16.2:ud 0x00000000:ud // Enable ARGB channels
 
 
// set the vertical block number
 
 
add (1) r25.1<1>:ud r7.12:uw 2:ud
 
 
mov (8) r17.0:ud r25.0<8;8,1>:ud
 
// Gen7 AVS WA Only for YUV packed surfaces, NV12 and Y-channel only for Planar surfaces
// if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
// {
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
// }
// else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
// {
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
// }
// else{
// modified_u_coord = u_coord;
// }
// Where u_left = u – 2*du + 3*ddu for IEF On
// And u_left = u for IEF Off case
//
 
// check whether Gen7 AVS WA is enabled,
mov (1) r14.8:uw f0.0:uw // save f0.0
 
and.nz.f0.0 (1) null<1>:uw r2.3:uw 0x2:uw
(-f0.0)jmpi (1) GEN7_AVS_WA_DONE_L0_2_
 
 
// Gen7 AVS WA, check if IEF is ON for choosing Gen7 AVS WA formula
 
and.nz.f0.0 (8) null<1>:uw r2.3<0;1,0>:uw 0x4:uw
(f0.0)mov (8) acc0.0:f r17.2<0;1,0>:f
(f0.0)mac (8) acc0.0:f r17.4<0;1,0>:f -2.0:f
(f0.0)mac (8) acc0.0:f r17.6<0;1,0>:f 3.0:f
(f0.0)mov (1) r14.2:f acc0:f // IEF ON, rTEMP3.2 = u_left
(-f0.0)mov (1) r14.2:f r17.2<0;1,0>:f // IEF OFF, rTEMP3.2 = u_left
 
and (1) r14.1:ud r2.3:uw 0xFFF8:uw
asr (1) r14.1:ud r14.1:ud 3:d
mov (1) r14.1:f r14.1:ud
 
// Gen7 AVS WA, if (int)(u_left*width + 5.0/256) > (int)(u_left*width)
mul (1) r14.0:f r14.2:f r14.1:f // rTEMP3.0 = u_left*width
add (1) r14.2:f r14.0:f 0.01953125:f // rTEMP3.2 = u_left*width + 5.0/256
add (1) r14.3:f r14.0:f 0.99609375:f // rTEMP3.3 = u_left*width + 255.0/256
 
//Check if the values are < 0 and account for (int) cast of negative numbers
 
//(int)(u_left*width)
cmp.l.f0.0 (1) null<1>:f r14.0:f 0.00000000:f
mov (1) r14.0:d r14.0:f
(f0.0)add (1) r14.0:d r14.0<0;1,0>:d -1:d
 
//(int)(u_left*width + 5.0/256)
cmp.l.f0.0 (1) null<1>:f r14.2:f 0.00000000:f
mov (1) r14.2:d r14.2:f
(f0.0)add (1) r14.2:d r14.2<0;1,0>:d -1:d
 
//(int)(u_left*width + 255.0/256)
cmp.l.f0.0 (1) null<1>:f r14.3:f 0.00000000:f
mov (1) r14.3:d r14.3:f
(f0.0)add (1) r14.3:d r14.3<0;1,0>:d -1:d
 
mov (1) f0.0:uw 0:uw // clear flag
//if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
cmp.g.f1.0 (1) null<1>:d r14.2:d r14.0:d
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
(f1.0) add (1) r17.2:f r17.2<0;1,0>:f -r2.3:f
//else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
(-f1.0) cmp.e.f0.0 (1) null<1>:d r14.3:d r14.0:d
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
(f0.0) add (1) r17.2:f r17.2<0;1,0>:f r2.2:f
 
 
GEN7_AVS_WA_DONE_L0_2_:
mov (1) f0.0:uw r14.8:uw // restore f0.0
 
send (1) uwBUFFER_2(0)<1> r16 0x2 a0.0:ud
// Returns packed data in 16 GRFs in scrambled order
 
SKIP_AVS_LOAD_L0_2_:
nop
 
 
/drivers/video/i965/shaders/post_processing/gen7/PA_AVS_Buf_3.g4a
0,0 → 1,532
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 37 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: PA_AVS_Buf_3.asm
// Author: Vivek Kumar
// Description: Loads 8x8 AVS/IEF Packed data into Buffer 3
 
 
 
// FileName : PA_AVS_Buf.asm
// Author : Tatiya, Rupesh
// Description : Loads 8x8 AVS/IEF Packed data into Buffer N
 
//On IVB, for AVS module - set buffer pointers offset according to AVS Layout.
//Change it to Sample Unorm layout in Shuffle modules.
 
 
 
// Module name: Scaling.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
// Message Header
// m0.7 31:0 Debug
// m0.6 31:0 Debug
// m0.5 31:0 Ignored
// m0.4 31:0 Ignored
// m0.3 31:0 Ignored
// m0.2 31:16 Ignored
// 15 Alpha Write Channel Mask enable=0, disable=1
// 14 Blue Write Channel Mask (U)
// 13 Green Write Channel Mask (Y)
// 12 Red Write Channel Mask (V)
// 11:0 Ignored
// m0.1 Ignored
// m0.0 Ignored
 
 
// AVS payload
// m1.7 Group ID Number
// m1.6 U 2nd Derivative ---> NLAS dx
// m1.5 Delta V ---> Step Y
// m1.4 Delta U ---> Step X
// m1.3 Pixel 0 V Address ---> ORIY (Y0)
// m1.2 Pixel 0 U Address ---> ORIX (X0)
// m1.1 Vertical Block Number
// m1.0 Reserved
 
// Sampler Message Descriptor
// 31:29 Reserved 000
// 28:25 Message length 0010
// 24:20 Response length xxxxx ---> 4GRFs for each enabled channel (AVS), 2GRFs for each enabled channel (sample unorm)
// 19 Header Present 1
// 18:17 SIMD Mode 11 ---> SIMD32/64
// 16:12 Message Type xxxxx ---> 01011 sample_8x8, 01100 (sample_unorm), 01010 (sample_unorm+killpix)
// 11:8 Sampler Index xxxx
// 7:0 Binding Table Index xxxxxxxx
 
 
// Msg Header M0.2
// 15:15 Alpha Write Channel Mask, 0: written back, 1: not written back
// 14:14 Blue Write Channel Mask
// 13:13 Green Write Channel Mask
// 12:12 Red Write Channel Mask
 
 
//By design, Buffer 0,1,2,3 always have Layer 0 and Buffer 4,5 always have L1-L7
 
 
//used to generate LABELS at compile time.
 
 
// 18:17 SIMD Mode 10 ---> SIMD16
// 16:12 Message Type xxxxx ---> 00000 (SIMD16)
 
 
//r10-17 - 8 GRFs to load SIMD16 data (upto 4 channels)
//r18-19 - 2 GRFs to store sampler ramp.
 
.declare mfSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare muwSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare mudCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare mubCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=1 SrcRegion=<32;32,1> DstRegion=<1> Type=ub
 
 
.declare fSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare udSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ub4SCALING_0X_34X_TEMP Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<1> Type=ub
.declare uwSCALING_0X_34X_TEMP Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
// Sampler ramp is used for Scaling 0X_0.34X
.declare fSAMPLER_RAMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> Type=f // 1 GRFs, 8 elements
 
 
//#define rMSGDSC_UV r23.0
 
 
//End of _SCALING_
 
 
//Check if layer is to be skipped
 
 
// f0.1 pre-computed in Set_Layer_0
(-f0.1) jmpi (1) SKIP_AVS_LOAD_L0_3_
 
 
//AVS_PAYLOAD already has all the data loaded at this point
add (1) a0.0:ud r23.5<0;1,0>:ud 0x50EB400:ud //msg desc
 
mov (1) r16.2:ud 0x00000000:ud // Enable ARGB channels
 
 
// set the vertical block number
 
 
add (1) r25.1<1>:ud r7.12:uw 3:ud
 
 
mov (8) r17.0:ud r25.0<8;8,1>:ud
 
// Gen7 AVS WA Only for YUV packed surfaces, NV12 and Y-channel only for Planar surfaces
// if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
// {
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
// }
// else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
// {
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
// }
// else{
// modified_u_coord = u_coord;
// }
// Where u_left = u – 2*du + 3*ddu for IEF On
// And u_left = u for IEF Off case
//
 
// check whether Gen7 AVS WA is enabled,
mov (1) r14.8:uw f0.0:uw // save f0.0
 
and.nz.f0.0 (1) null<1>:uw r2.3:uw 0x2:uw
(-f0.0)jmpi (1) GEN7_AVS_WA_DONE_L0_3_
 
 
// Gen7 AVS WA, check if IEF is ON for choosing Gen7 AVS WA formula
 
and.nz.f0.0 (8) null<1>:uw r2.3<0;1,0>:uw 0x4:uw
(f0.0)mov (8) acc0.0:f r17.2<0;1,0>:f
(f0.0)mac (8) acc0.0:f r17.4<0;1,0>:f -2.0:f
(f0.0)mac (8) acc0.0:f r17.6<0;1,0>:f 3.0:f
(f0.0)mov (1) r14.2:f acc0:f // IEF ON, rTEMP3.2 = u_left
(-f0.0)mov (1) r14.2:f r17.2<0;1,0>:f // IEF OFF, rTEMP3.2 = u_left
 
and (1) r14.1:ud r2.3:uw 0xFFF8:uw
asr (1) r14.1:ud r14.1:ud 3:d
mov (1) r14.1:f r14.1:ud
 
// Gen7 AVS WA, if (int)(u_left*width + 5.0/256) > (int)(u_left*width)
mul (1) r14.0:f r14.2:f r14.1:f // rTEMP3.0 = u_left*width
add (1) r14.2:f r14.0:f 0.01953125:f // rTEMP3.2 = u_left*width + 5.0/256
add (1) r14.3:f r14.0:f 0.99609375:f // rTEMP3.3 = u_left*width + 255.0/256
 
//Check if the values are < 0 and account for (int) cast of negative numbers
 
//(int)(u_left*width)
cmp.l.f0.0 (1) null<1>:f r14.0:f 0.00000000:f
mov (1) r14.0:d r14.0:f
(f0.0)add (1) r14.0:d r14.0<0;1,0>:d -1:d
 
//(int)(u_left*width + 5.0/256)
cmp.l.f0.0 (1) null<1>:f r14.2:f 0.00000000:f
mov (1) r14.2:d r14.2:f
(f0.0)add (1) r14.2:d r14.2<0;1,0>:d -1:d
 
//(int)(u_left*width + 255.0/256)
cmp.l.f0.0 (1) null<1>:f r14.3:f 0.00000000:f
mov (1) r14.3:d r14.3:f
(f0.0)add (1) r14.3:d r14.3<0;1,0>:d -1:d
 
mov (1) f0.0:uw 0:uw // clear flag
//if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
cmp.g.f1.0 (1) null<1>:d r14.2:d r14.0:d
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
(f1.0) add (1) r17.2:f r17.2<0;1,0>:f -r2.3:f
//else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
(-f1.0) cmp.e.f0.0 (1) null<1>:d r14.3:d r14.0:d
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
(f0.0) add (1) r17.2:f r17.2<0;1,0>:f r2.2:f
 
 
GEN7_AVS_WA_DONE_L0_3_:
mov (1) f0.0:uw r14.8:uw // restore f0.0
 
send (1) uwBUFFER_3(0)<1> r16 0x2 a0.0:ud
// Returns packed data in 16 GRFs in scrambled order
 
SKIP_AVS_LOAD_L0_3_:
nop
 
 
/drivers/video/i965/shaders/post_processing/gen7/PA_DI_422CP.g4a
0,0 → 1,461
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 87 // Total instruction count
// 1 // Total kernel count
 
.kernel PA_DI_422CP
.code
 
 
 
// FileName: DI.asm
// Author: Vivek Kumar
// Description: Tasks for DI only case (16x4 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x4AE8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(9,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DI_STMM_Save.asm
// Author: Vivek Kumar
// Description: Saves DI STMM Data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write STMM to memory
mov (8) mudMSGHDR_STMM(0)<1> r0.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udDNDI_RESP(8,0) // Move STMM to MRF
 
shr (1) mudMSGHDR_STMM(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin / 2
mov (1) mudMSGHDR_STMM(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_STMM(0,2)<1> 0x30007:ud { NoDDChk } // block width and height (8x4)
 
send (8) null<1>:d r20 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x20007:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | MCNT | FCNT | TCNT | X | X | X | X |
//----------------------------------------------------
//| DcTpT | SVCM | DcBpT | DcTpB |
//----------------------------------------------------
//| SHCM | STAD | DcTcB | DcBpB |
//----------------------------------------------------
mov (1) mudMSGHDR_ENC_STATS(1,0)<1> udDNDI_RESP(9,1)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,3)<2> udDNDI_RESP(9,3)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,2)<2> udDNDI_RESP(9,5)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DI_Save_422CP_16x4.asm
// Author: Vivek Kumar
// Description: Save two 16x4 blocks of DI output in 422 format to Color Pipe (IECP)
 
 
.declare mubMSGHDR_DI_OUT1_1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mubMSGHDR_DI_OUT1_2 Base=r21.0 ElementSize=1 Type=ub
 
 
.declare mubMSGHDR_DI_OUT2_1 Base=r24.0 ElementSize=1 Type=ub
 
 
.declare mubMSGHDR_DI_OUT2_2 Base=r27.0 ElementSize=1 Type=ub
 
 
mov (8) r27.0<1>:ud r0.0<8;8,1>:ud
shl (1) r27.0<1>:ud r7.0<0;1,0>:w 1:w { NoDDClr } // H. block origin need to be doubled
mov (1) r27.1<1>:ud r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Block origin
mov (1) r27.2<1>:ud 0x3000F:ud { NoDDClr, NoDDChk } // Block width and height (16x8)
 
//M0.3 - 0 - CP Enable, 1 - Area of Interest, 3:2 Message Format(TBD), 4:3 - Ignored, 31:5 CP state pointer
//Compose area-of-interest bit + color pipe state pointer
or (1) r27.3<1>:ud r2.4<0;1,0>:ud r7.26<0;1,0>:b { NoDDChk }
 
//prepare the message headers
mov (8) r18.0<1>:ud r27<8;8,1>:ud
mov (8) r24.0<1>:ud r27<8;8,1>:ud
 
 
// Pack 2nd field Y; First 8x4 block
mov (8) mubMSGHDR_DI_OUT1_1(1)<2> ubDNDI_RESP(0,0)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_1(1,16)<2> ubDNDI_RESP(0,16)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_1(2)<2> ubDNDI_RESP(0,32)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_1(2,16)<2> ubDNDI_RESP(0,48)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 2nd field U, V; First 8x4 block
mov (4) mubMSGHDR_DI_OUT1_1(1,1)<4> ubDNDI_RESP(2,1)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(1,17)<4> ubDNDI_RESP(2,17)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_1(1,3)<4> ubDNDI_RESP(2,0)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(1,19)<4> ubDNDI_RESP(2,16)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(2,1)<4> ubDNDI_RESP(2,33)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(2,17)<4> ubDNDI_RESP(2,49)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_1(2,3)<4> ubDNDI_RESP(2,32)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(2,19)<4> ubDNDI_RESP(2,48)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
 
// Pack 2nd field Y; Second 8x4 block
mov (8) r21.0<1>:ud r18.0<8;8,1>:ud
add (1) r21.0<1>:ud r21.0<0;1,0>:w 0x10:w
 
mov (8) mubMSGHDR_DI_OUT1_2(1)<2> ubDNDI_RESP(0,8)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_2(1,16)<2> ubDNDI_RESP(0,24)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_2(2)<2> ubDNDI_RESP(0,40)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_2(2,16)<2> ubDNDI_RESP(0,56)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 2nd field U, V; Second 8x4 block
mov (4) mubMSGHDR_DI_OUT1_2(1,1)<4> ubDNDI_RESP(2,9)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(1,17)<4> ubDNDI_RESP(2,25)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_2(1,3)<4> ubDNDI_RESP(2,8)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(1,19)<4> ubDNDI_RESP(2,24)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(2,1)<4> ubDNDI_RESP(2,41)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(2,17)<4> ubDNDI_RESP(2,57)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_2(2,3)<4> ubDNDI_RESP(2,40)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(2,19)<4> ubDNDI_RESP(2,56)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
send (8) null<1>:d r18.0 0x5 0x60A801B:ud
send (8) null<1>:d r21.0 0x5 0x60A801B:ud
 
// Pack 1st field Y; 1st 8x4 block
mov (8) mubMSGHDR_DI_OUT2_1(1)<2> ubDNDI_RESP(4,0)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_1(1,16)<2> ubDNDI_RESP(4,16)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_1(2)<2> ubDNDI_RESP(4,32)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_1(2,16)<2> ubDNDI_RESP(4,48)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 1st field U,V; 1st 8x4 block
mov (4) mubMSGHDR_DI_OUT2_1(1,1)<4> ubDNDI_RESP(6,1)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(1,17)<4> ubDNDI_RESP(6,17)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_1(1,3)<4> ubDNDI_RESP(6,0)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(1,19)<4> ubDNDI_RESP(6,16)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(2,1)<4> ubDNDI_RESP(6,33)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(2,17)<4> ubDNDI_RESP(6,49)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_1(2,3)<4> ubDNDI_RESP(6,32)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(2,19)<4> ubDNDI_RESP(6,48)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
// Pack 1st field Y; 2nd 8x4 block
mov (8) r27.0<1>:ud r24.0<8;8,1>:ud
add (1) r27.0<1>:ud r27.0<0;1,0>:w 0x10:w
 
mov (8) mubMSGHDR_DI_OUT2_2(1)<2> ubDNDI_RESP(4,8)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_2(1,16)<2> ubDNDI_RESP(4,24)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_2(2)<2> ubDNDI_RESP(4,40)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_2(2,16)<2> ubDNDI_RESP(4,56)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 1st field U, V; 2nd 8x4 block
mov (4) mubMSGHDR_DI_OUT2_2(1,1)<4> ubDNDI_RESP(6,9)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(1,17)<4> ubDNDI_RESP(6,25)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_2(1,3)<4> ubDNDI_RESP(6,8)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(1,19)<4> ubDNDI_RESP(6,24)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(2,1)<4> ubDNDI_RESP(6,41)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(2,17)<4> ubDNDI_RESP(6,57)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_2(2,3)<4> ubDNDI_RESP(6,40)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(2,19)<4> ubDNDI_RESP(6,56)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
send (8) null<1>:d r24.0 0x5 0x60A801E:ud
send (8) null<1>:d r27.0 0x5 0x60A801E:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/PA_DI_PA.g4a
0,0 → 1,399
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 57 // Total instruction count
// 1 // Total kernel count
 
.kernel PA_DI_PA
.code
 
 
 
// FileName: DI.asm
// Author: Vivek Kumar
// Description: Tasks for DI only case (16x4 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x4AE8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(9,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DI_STMM_Save.asm
// Author: Vivek Kumar
// Description: Saves DI STMM Data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write STMM to memory
mov (8) mudMSGHDR_STMM(0)<1> r0.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udDNDI_RESP(8,0) // Move STMM to MRF
 
shr (1) mudMSGHDR_STMM(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin / 2
mov (1) mudMSGHDR_STMM(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_STMM(0,2)<1> 0x30007:ud { NoDDChk } // block width and height (8x4)
 
send (8) null<1>:d r20 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x20007:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | MCNT | FCNT | TCNT | X | X | X | X |
//----------------------------------------------------
//| DcTpT | SVCM | DcBpT | DcTpB |
//----------------------------------------------------
//| SHCM | STAD | DcTcB | DcBpB |
//----------------------------------------------------
mov (1) mudMSGHDR_ENC_STATS(1,0)<1> udDNDI_RESP(9,1)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,3)<2> udDNDI_RESP(9,3)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,2)<2> udDNDI_RESP(9,5)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DI_Save_PA_16x4.asm
// Author: Vivek Kumar
// Description: Save two 16x4 blocks of DI output in Packed format
 
 
add (4) a0.4<1>:uw r2.28<4;4,1>:ub 608:w // Initial Y,U,V offset in YUV422 block; it starts at m20
 
mov (8) r27.0<1>:ud r0.0<8;8,1>:ud
shl (1) r27.0<1>:d r7.0<0;1,0>:w 1:w { NoDDClr } // H. block origin need to be doubled
mov (1) r27.1<1>:d r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Block origin
mov (1) r27.2<1>:ud 0x3001F:ud { NoDDChk } // Block width and height (32x8)
 
//prepare the message headers
mov (8) r18.0<1>:ud r27<8;8,1>:ud
mov (8) r23.0<1>:ud r27<8;8,1>:ud
 
// Pack 2nd field Y
mov (16) r[a0.4, 0]<2> ubDNDI_RESP(0,0) { NoDDClr }
mov (16) r[a0.4, 32]<2> ubDNDI_RESP(0,16) { NoDDClr }
mov (16) r[a0.4, 64]<2> ubDNDI_RESP(0,32) { NoDDClr }
mov (16) r[a0.4, 96]<2> ubDNDI_RESP(0,48) { NoDDClr }
// Pack 2nd field U
mov (8) r[a0.5, 0]<4> ubDNDI_RESP(2,1)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 32]<4> ubDNDI_RESP(2,17)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 64]<4> ubDNDI_RESP(2,33)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 96]<4> ubDNDI_RESP(2,49)<16;8,2> { NoDDClr, NoDDChk } //U pixels
// Pack 2nd field V
mov (8) r[a0.6, 0]<4> ubDNDI_RESP(2,0)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 32]<4> ubDNDI_RESP(2,16)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 64]<4> ubDNDI_RESP(2,32)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 96]<4> ubDNDI_RESP(2,48)<16;8,2> { NoDDChk } //Vpixels
 
// Pack 1st field Y
mov (16) r[a0.4, 160]<2> ubDNDI_RESP(4,0) { NoDDClr }
mov (16) r[a0.4, 192]<2> ubDNDI_RESP(4,16) { NoDDClr }
mov (16) r[a0.4, 224]<2> ubDNDI_RESP(4,32) { NoDDClr }
mov (16) r[a0.4, 256]<2> ubDNDI_RESP(4,48) { NoDDClr }
// Pack 1st field U
mov (8) r[a0.5, 160]<4> ubDNDI_RESP(6,1)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 192]<4> ubDNDI_RESP(6,17)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 224]<4> ubDNDI_RESP(6,33)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 256]<4> ubDNDI_RESP(6,49)<16;8,2> { NoDDClr, NoDDChk } //U pixels
// Pack 1st field V
mov (8) r[a0.6, 160]<4> ubDNDI_RESP(6,0)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 192]<4> ubDNDI_RESP(6,16)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 224]<4> ubDNDI_RESP(6,32)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 256]<4> ubDNDI_RESP(6,48)<16;8,2> { NoDDChk } //Vpixels
 
//save the previous frame
send (8) null<1>:d r18.0 0x5 0xA0A801B:ud
 
//save the current frame
send (8) null<1>:d r23.0 0x5 0xA0A801E:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/PA_DNDI_422CP.g4a
0,0 → 1,537
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 127 // Total instruction count
// 1 // Total kernel count
 
.kernel PA_DNDI_422CP
.code
 
 
 
// FileName: DNDI_PL_Core.asm
// Author: Tatiya, Rupesh
 
 
 
// FileName: DNDI_Core.asm
// Author: Vivek Kumar
// Description: Tasks for DN+DI case (16x4 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x4CE8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(9,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DI_STMM_Save.asm
// Author: Vivek Kumar
// Description: Saves DI STMM Data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write STMM to memory
mov (8) mudMSGHDR_STMM(0)<1> r0.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udDNDI_RESP(8,0) // Move STMM to MRF
 
shr (1) mudMSGHDR_STMM(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin / 2
mov (1) mudMSGHDR_STMM(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_STMM(0,2)<1> 0x30007:ud { NoDDChk } // block width and height (8x4)
 
send (8) null<1>:d r20 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Hist_Save.asm
// Author: Vivek Kumar
// Description: Saves DN history data to statistics surface
 
// Write denoise history to memory
mov (8) r27<1>:ud r0.0<8;8,1>:ud // message header
 
mov (1) mudMSGHDR_HIST(1)<1> udDNDI_RESP(9,0)<0;1,0> // Move denoise history to MRF (4x1)
 
 
shr (2) r27.0<1>:ud r7.0<2;2,1>:w 2:w // X,Y origin / 4
add (1) r27.0<1>:ud r27.0<0;1,0>:ud r1.12<0;1,0>:uw { NoDDClr } // Add pitch to X origin
mov (1) r27.2<1>:ud 0x3:ud { NoDDChk } // block width and height
 
mov (8) mudMSGHDR_HIST(0)<1> r27.0<8;8,1>:ud
send (8) null<1>:d r22 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x20007:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | MCNT | FCNT | TCNT | X | X | X | X |
//----------------------------------------------------
//| DcTpT | SVCM | DcBpT | DcTpB |
//----------------------------------------------------
//| SHCM | STAD | DcTcB | DcBpB |
//----------------------------------------------------
mov (1) mudMSGHDR_ENC_STATS(1,0)<1> udDNDI_RESP(9,1)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,3)<2> udDNDI_RESP(9,3)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,2)<2> udDNDI_RESP(9,5)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Save_PA_16x4.asm
// Author: Vivek Kumar
// Description: Save one 16x4 blocks of DN output in Packed format for reference
 
 
// check top/bottom field first
cmp.e.f0.0 (1) null<1>:w r1.28<0;1,0>:ub 1:w
 
add (4) a0.4<1>:uw r4.0<4;4,1>:ub 1024:w // Initial Y,U,V offset in YUV422 block; it starts at m14
 
mov (8) mudMSGHDR_DN_OUT(0)<1> r0<8;8,1>:ud // message header
shl (1) mdMSGHDR_DN_OUT(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin * 2 (422 output)
mov (1) mdMSGHDR_DN_OUT(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_DN_OUT(0,2)<1> 0x3001F:ud { NoDDChk } // block width and height (32x8)
 
(f0.0) jmpi (1) TOP_FIELD_FIRST
 
BOTTOM_FIELD_FIRST:
mov (16) r[a0.4, 0]<2>:ub ubDNDI_RESP(10,0) { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (16) r[a0.4, 32]<2>:ub ubDNDI_RESP(4,16) { NoDDClr } // 1st field luma from current frame (line 1,3)
mov (16) r[a0.4, 64]<2>:ub ubDNDI_RESP(10,16) { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (16) r[a0.4, 96]<2>:ub ubDNDI_RESP(5,16) { NoDDClr } // 1st field luma from current frame (line 1,3)
mov (8) r[a0.5, 0]<4>:ub ubDNDI_RESP(11,1)<16;8,2> { NoDDClr, NoDDChk } // 2nd field U from current frame (line 0,2)
mov (8) r[a0.5, 32]<4>:ub ubDNDI_RESP(6,17)<16;8,2> { NoDDClr, NoDDChk } // 1st field U from current frame (line 1,3)
mov (8) r[a0.5, 64]<4>:ub ubDNDI_RESP(11,17)<16;8,2> { NoDDClr, NoDDChk } // 2nd field U from current frame (line 0,2)
mov (8) r[a0.5, 96]<4>:ub ubDNDI_RESP(7,17)<16;8,2> { NoDDClr, NoDDChk } // 1st field U from current frame (line 1,3)
mov (8) r[a0.6, 0]<4>:ub ubDNDI_RESP(11,0)<16;8,2> { NoDDChk } // 2nd field V from current frame (line 0,2)
mov (8) r[a0.6, 32]<4>:ub ubDNDI_RESP(6,16)<16;8,2> { NoDDChk } // 1st field U from current frame (line 1,3)
mov (8) r[a0.6, 64]<4>:ub ubDNDI_RESP(11,16)<16;8,2> { NoDDChk } // 2nd field V from current frame (line 0,2)
mov (8) r[a0.6, 96]<4>:ub ubDNDI_RESP(7,16)<16;8,2> { NoDDChk } // 1st field U from current frame (line 1,3)
jmpi (1) SAVE_DN_CURR
 
TOP_FIELD_FIRST:
mov (16) r[a0.4, 0]<2>:ub ubDNDI_RESP(4,0) { NoDDClr } // 1st field luma from current frame (line 0,2)
mov (16) r[a0.4, 32]<2>:ub ubDNDI_RESP(10,0) { NoDDClr } // 2nd field luma from current frame (line 1,3)
mov (16) r[a0.4, 64]<2>:ub ubDNDI_RESP(5,0) { NoDDClr } // 1st field luma from current frame (line 0,2)
mov (16) r[a0.4, 96]<2>:ub ubDNDI_RESP(10,16) { NoDDClr } // 2nd field luma from current frame (line 1,3)
mov (8) r[a0.5, 0]<4>:ub ubDNDI_RESP(6,1)<16;8,2> { NoDDClr, NoDDChk } // 1st field U from current frame (line 0,2)
mov (8) r[a0.5, 32]<4>:ub ubDNDI_RESP(11,1)<16;8,2> { NoDDClr, NoDDChk } // 2nd field U from current frame (line 1,3)
mov (8) r[a0.5, 64]<4>:ub ubDNDI_RESP(7,1)<16;8,2> { NoDDClr, NoDDChk } // 1st field U from current frame (line 0,2)
mov (8) r[a0.5, 96]<4>:ub ubDNDI_RESP(11,17)<16;8,2> { NoDDClr, NoDDChk } // 2nd field U from current frame (line 1,3)
mov (8) r[a0.6, 0]<4>:ub ubDNDI_RESP(6,0)<16;8,2> { NoDDChk } // 1st field V from current frame (line 0,2)
mov (8) r[a0.6, 32]<4>:ub ubDNDI_RESP(11,0)<16;8,2> { NoDDChk } // 2nd field V from current frame (line 1,3)
mov (8) r[a0.6, 64]<4>:ub ubDNDI_RESP(7,0)<16;8,2> { NoDDChk } // 1st field V from current frame (line 0,2)
mov (8) r[a0.6, 96]<4>:ub ubDNDI_RESP(11,16)<16;8,2> { NoDDChk } // 2nd field V from current frame (line 1,3)
 
SAVE_DN_CURR:
//send out data through data port
send (8) null<1>:d r31.0 0x5 0xA0A8018:ud
 
 
 
// FileName: DI_Save_422CP_16x4.asm
// Author: Vivek Kumar
// Description: Save two 16x4 blocks of DI output in 422 format to Color Pipe (IECP)
 
 
.declare mubMSGHDR_DI_OUT1_1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mubMSGHDR_DI_OUT1_2 Base=r21.0 ElementSize=1 Type=ub
 
 
.declare mubMSGHDR_DI_OUT2_1 Base=r24.0 ElementSize=1 Type=ub
 
 
.declare mubMSGHDR_DI_OUT2_2 Base=r27.0 ElementSize=1 Type=ub
 
 
mov (8) r27.0<1>:ud r0.0<8;8,1>:ud
shl (1) r27.0<1>:ud r7.0<0;1,0>:w 1:w { NoDDClr } // H. block origin need to be doubled
mov (1) r27.1<1>:ud r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Block origin
mov (1) r27.2<1>:ud 0x3000F:ud { NoDDClr, NoDDChk } // Block width and height (16x8)
 
//M0.3 - 0 - CP Enable, 1 - Area of Interest, 3:2 Message Format(TBD), 4:3 - Ignored, 31:5 CP state pointer
//Compose area-of-interest bit + color pipe state pointer
or (1) r27.3<1>:ud r2.4<0;1,0>:ud r7.26<0;1,0>:b { NoDDChk }
 
//prepare the message headers
mov (8) r18.0<1>:ud r27<8;8,1>:ud
mov (8) r24.0<1>:ud r27<8;8,1>:ud
 
 
// Pack 2nd field Y; First 8x4 block
mov (8) mubMSGHDR_DI_OUT1_1(1)<2> ubDNDI_RESP(0,0)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_1(1,16)<2> ubDNDI_RESP(0,16)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_1(2)<2> ubDNDI_RESP(0,32)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_1(2,16)<2> ubDNDI_RESP(0,48)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 2nd field U, V; First 8x4 block
mov (4) mubMSGHDR_DI_OUT1_1(1,1)<4> ubDNDI_RESP(2,1)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(1,17)<4> ubDNDI_RESP(2,17)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_1(1,3)<4> ubDNDI_RESP(2,0)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(1,19)<4> ubDNDI_RESP(2,16)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(2,1)<4> ubDNDI_RESP(2,33)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(2,17)<4> ubDNDI_RESP(2,49)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_1(2,3)<4> ubDNDI_RESP(2,32)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(2,19)<4> ubDNDI_RESP(2,48)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
 
// Pack 2nd field Y; Second 8x4 block
mov (8) r21.0<1>:ud r18.0<8;8,1>:ud
add (1) r21.0<1>:ud r21.0<0;1,0>:w 0x10:w
 
mov (8) mubMSGHDR_DI_OUT1_2(1)<2> ubDNDI_RESP(0,8)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_2(1,16)<2> ubDNDI_RESP(0,24)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_2(2)<2> ubDNDI_RESP(0,40)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_2(2,16)<2> ubDNDI_RESP(0,56)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 2nd field U, V; Second 8x4 block
mov (4) mubMSGHDR_DI_OUT1_2(1,1)<4> ubDNDI_RESP(2,9)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(1,17)<4> ubDNDI_RESP(2,25)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_2(1,3)<4> ubDNDI_RESP(2,8)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(1,19)<4> ubDNDI_RESP(2,24)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(2,1)<4> ubDNDI_RESP(2,41)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(2,17)<4> ubDNDI_RESP(2,57)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_2(2,3)<4> ubDNDI_RESP(2,40)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(2,19)<4> ubDNDI_RESP(2,56)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
send (8) null<1>:d r18.0 0x5 0x60A801B:ud
send (8) null<1>:d r21.0 0x5 0x60A801B:ud
 
// Pack 1st field Y; 1st 8x4 block
mov (8) mubMSGHDR_DI_OUT2_1(1)<2> ubDNDI_RESP(4,0)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_1(1,16)<2> ubDNDI_RESP(4,16)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_1(2)<2> ubDNDI_RESP(4,32)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_1(2,16)<2> ubDNDI_RESP(4,48)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 1st field U,V; 1st 8x4 block
mov (4) mubMSGHDR_DI_OUT2_1(1,1)<4> ubDNDI_RESP(6,1)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(1,17)<4> ubDNDI_RESP(6,17)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_1(1,3)<4> ubDNDI_RESP(6,0)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(1,19)<4> ubDNDI_RESP(6,16)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(2,1)<4> ubDNDI_RESP(6,33)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(2,17)<4> ubDNDI_RESP(6,49)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_1(2,3)<4> ubDNDI_RESP(6,32)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(2,19)<4> ubDNDI_RESP(6,48)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
// Pack 1st field Y; 2nd 8x4 block
mov (8) r27.0<1>:ud r24.0<8;8,1>:ud
add (1) r27.0<1>:ud r27.0<0;1,0>:w 0x10:w
 
mov (8) mubMSGHDR_DI_OUT2_2(1)<2> ubDNDI_RESP(4,8)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_2(1,16)<2> ubDNDI_RESP(4,24)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_2(2)<2> ubDNDI_RESP(4,40)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_2(2,16)<2> ubDNDI_RESP(4,56)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 1st field U, V; 2nd 8x4 block
mov (4) mubMSGHDR_DI_OUT2_2(1,1)<4> ubDNDI_RESP(6,9)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(1,17)<4> ubDNDI_RESP(6,25)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_2(1,3)<4> ubDNDI_RESP(6,8)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(1,19)<4> ubDNDI_RESP(6,24)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(2,1)<4> ubDNDI_RESP(6,41)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(2,17)<4> ubDNDI_RESP(6,57)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_2(2,3)<4> ubDNDI_RESP(6,40)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(2,19)<4> ubDNDI_RESP(6,56)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
send (8) null<1>:d r24.0 0x5 0x60A801E:ud
send (8) null<1>:d r27.0 0x5 0x60A801E:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/PA_DNDI_PA.g4a
0,0 → 1,475
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 97 // Total instruction count
// 1 // Total kernel count
 
.kernel PA_DNDI_PA
.code
 
 
 
// FileName: DNDI_PL_Core.asm
// Author: Tatiya, Rupesh
 
 
 
// FileName: DNDI_Core.asm
// Author: Vivek Kumar
// Description: Tasks for DN+DI case (16x4 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x4CE8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(9,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DI_STMM_Save.asm
// Author: Vivek Kumar
// Description: Saves DI STMM Data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write STMM to memory
mov (8) mudMSGHDR_STMM(0)<1> r0.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udDNDI_RESP(8,0) // Move STMM to MRF
 
shr (1) mudMSGHDR_STMM(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin / 2
mov (1) mudMSGHDR_STMM(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_STMM(0,2)<1> 0x30007:ud { NoDDChk } // block width and height (8x4)
 
send (8) null<1>:d r20 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Hist_Save.asm
// Author: Vivek Kumar
// Description: Saves DN history data to statistics surface
 
// Write denoise history to memory
mov (8) r27<1>:ud r0.0<8;8,1>:ud // message header
 
mov (1) mudMSGHDR_HIST(1)<1> udDNDI_RESP(9,0)<0;1,0> // Move denoise history to MRF (4x1)
 
 
shr (2) r27.0<1>:ud r7.0<2;2,1>:w 2:w // X,Y origin / 4
add (1) r27.0<1>:ud r27.0<0;1,0>:ud r1.12<0;1,0>:uw { NoDDClr } // Add pitch to X origin
mov (1) r27.2<1>:ud 0x3:ud { NoDDChk } // block width and height
 
mov (8) mudMSGHDR_HIST(0)<1> r27.0<8;8,1>:ud
send (8) null<1>:d r22 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x20007:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | MCNT | FCNT | TCNT | X | X | X | X |
//----------------------------------------------------
//| DcTpT | SVCM | DcBpT | DcTpB |
//----------------------------------------------------
//| SHCM | STAD | DcTcB | DcBpB |
//----------------------------------------------------
mov (1) mudMSGHDR_ENC_STATS(1,0)<1> udDNDI_RESP(9,1)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,3)<2> udDNDI_RESP(9,3)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,2)<2> udDNDI_RESP(9,5)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Save_PA_16x4.asm
// Author: Vivek Kumar
// Description: Save one 16x4 blocks of DN output in Packed format for reference
 
 
// check top/bottom field first
cmp.e.f0.0 (1) null<1>:w r1.28<0;1,0>:ub 1:w
 
add (4) a0.4<1>:uw r4.0<4;4,1>:ub 1024:w // Initial Y,U,V offset in YUV422 block; it starts at m14
 
mov (8) mudMSGHDR_DN_OUT(0)<1> r0<8;8,1>:ud // message header
shl (1) mdMSGHDR_DN_OUT(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin * 2 (422 output)
mov (1) mdMSGHDR_DN_OUT(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_DN_OUT(0,2)<1> 0x3001F:ud { NoDDChk } // block width and height (32x8)
 
(f0.0) jmpi (1) TOP_FIELD_FIRST
 
BOTTOM_FIELD_FIRST:
mov (16) r[a0.4, 0]<2>:ub ubDNDI_RESP(10,0) { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (16) r[a0.4, 32]<2>:ub ubDNDI_RESP(4,16) { NoDDClr } // 1st field luma from current frame (line 1,3)
mov (16) r[a0.4, 64]<2>:ub ubDNDI_RESP(10,16) { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (16) r[a0.4, 96]<2>:ub ubDNDI_RESP(5,16) { NoDDClr } // 1st field luma from current frame (line 1,3)
mov (8) r[a0.5, 0]<4>:ub ubDNDI_RESP(11,1)<16;8,2> { NoDDClr, NoDDChk } // 2nd field U from current frame (line 0,2)
mov (8) r[a0.5, 32]<4>:ub ubDNDI_RESP(6,17)<16;8,2> { NoDDClr, NoDDChk } // 1st field U from current frame (line 1,3)
mov (8) r[a0.5, 64]<4>:ub ubDNDI_RESP(11,17)<16;8,2> { NoDDClr, NoDDChk } // 2nd field U from current frame (line 0,2)
mov (8) r[a0.5, 96]<4>:ub ubDNDI_RESP(7,17)<16;8,2> { NoDDClr, NoDDChk } // 1st field U from current frame (line 1,3)
mov (8) r[a0.6, 0]<4>:ub ubDNDI_RESP(11,0)<16;8,2> { NoDDChk } // 2nd field V from current frame (line 0,2)
mov (8) r[a0.6, 32]<4>:ub ubDNDI_RESP(6,16)<16;8,2> { NoDDChk } // 1st field U from current frame (line 1,3)
mov (8) r[a0.6, 64]<4>:ub ubDNDI_RESP(11,16)<16;8,2> { NoDDChk } // 2nd field V from current frame (line 0,2)
mov (8) r[a0.6, 96]<4>:ub ubDNDI_RESP(7,16)<16;8,2> { NoDDChk } // 1st field U from current frame (line 1,3)
jmpi (1) SAVE_DN_CURR
 
TOP_FIELD_FIRST:
mov (16) r[a0.4, 0]<2>:ub ubDNDI_RESP(4,0) { NoDDClr } // 1st field luma from current frame (line 0,2)
mov (16) r[a0.4, 32]<2>:ub ubDNDI_RESP(10,0) { NoDDClr } // 2nd field luma from current frame (line 1,3)
mov (16) r[a0.4, 64]<2>:ub ubDNDI_RESP(5,0) { NoDDClr } // 1st field luma from current frame (line 0,2)
mov (16) r[a0.4, 96]<2>:ub ubDNDI_RESP(10,16) { NoDDClr } // 2nd field luma from current frame (line 1,3)
mov (8) r[a0.5, 0]<4>:ub ubDNDI_RESP(6,1)<16;8,2> { NoDDClr, NoDDChk } // 1st field U from current frame (line 0,2)
mov (8) r[a0.5, 32]<4>:ub ubDNDI_RESP(11,1)<16;8,2> { NoDDClr, NoDDChk } // 2nd field U from current frame (line 1,3)
mov (8) r[a0.5, 64]<4>:ub ubDNDI_RESP(7,1)<16;8,2> { NoDDClr, NoDDChk } // 1st field U from current frame (line 0,2)
mov (8) r[a0.5, 96]<4>:ub ubDNDI_RESP(11,17)<16;8,2> { NoDDClr, NoDDChk } // 2nd field U from current frame (line 1,3)
mov (8) r[a0.6, 0]<4>:ub ubDNDI_RESP(6,0)<16;8,2> { NoDDChk } // 1st field V from current frame (line 0,2)
mov (8) r[a0.6, 32]<4>:ub ubDNDI_RESP(11,0)<16;8,2> { NoDDChk } // 2nd field V from current frame (line 1,3)
mov (8) r[a0.6, 64]<4>:ub ubDNDI_RESP(7,0)<16;8,2> { NoDDChk } // 1st field V from current frame (line 0,2)
mov (8) r[a0.6, 96]<4>:ub ubDNDI_RESP(11,16)<16;8,2> { NoDDChk } // 2nd field V from current frame (line 1,3)
 
SAVE_DN_CURR:
//send out data through data port
send (8) null<1>:d r31.0 0x5 0xA0A8018:ud
 
 
 
// FileName: DI_Save_PA_16x4.asm
// Author: Vivek Kumar
// Description: Save two 16x4 blocks of DI output in Packed format
 
 
add (4) a0.4<1>:uw r2.28<4;4,1>:ub 608:w // Initial Y,U,V offset in YUV422 block; it starts at m20
 
mov (8) r27.0<1>:ud r0.0<8;8,1>:ud
shl (1) r27.0<1>:d r7.0<0;1,0>:w 1:w { NoDDClr } // H. block origin need to be doubled
mov (1) r27.1<1>:d r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Block origin
mov (1) r27.2<1>:ud 0x3001F:ud { NoDDChk } // Block width and height (32x8)
 
//prepare the message headers
mov (8) r18.0<1>:ud r27<8;8,1>:ud
mov (8) r23.0<1>:ud r27<8;8,1>:ud
 
// Pack 2nd field Y
mov (16) r[a0.4, 0]<2> ubDNDI_RESP(0,0) { NoDDClr }
mov (16) r[a0.4, 32]<2> ubDNDI_RESP(0,16) { NoDDClr }
mov (16) r[a0.4, 64]<2> ubDNDI_RESP(0,32) { NoDDClr }
mov (16) r[a0.4, 96]<2> ubDNDI_RESP(0,48) { NoDDClr }
// Pack 2nd field U
mov (8) r[a0.5, 0]<4> ubDNDI_RESP(2,1)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 32]<4> ubDNDI_RESP(2,17)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 64]<4> ubDNDI_RESP(2,33)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 96]<4> ubDNDI_RESP(2,49)<16;8,2> { NoDDClr, NoDDChk } //U pixels
// Pack 2nd field V
mov (8) r[a0.6, 0]<4> ubDNDI_RESP(2,0)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 32]<4> ubDNDI_RESP(2,16)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 64]<4> ubDNDI_RESP(2,32)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 96]<4> ubDNDI_RESP(2,48)<16;8,2> { NoDDChk } //Vpixels
 
// Pack 1st field Y
mov (16) r[a0.4, 160]<2> ubDNDI_RESP(4,0) { NoDDClr }
mov (16) r[a0.4, 192]<2> ubDNDI_RESP(4,16) { NoDDClr }
mov (16) r[a0.4, 224]<2> ubDNDI_RESP(4,32) { NoDDClr }
mov (16) r[a0.4, 256]<2> ubDNDI_RESP(4,48) { NoDDClr }
// Pack 1st field U
mov (8) r[a0.5, 160]<4> ubDNDI_RESP(6,1)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 192]<4> ubDNDI_RESP(6,17)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 224]<4> ubDNDI_RESP(6,33)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 256]<4> ubDNDI_RESP(6,49)<16;8,2> { NoDDClr, NoDDChk } //U pixels
// Pack 1st field V
mov (8) r[a0.6, 160]<4> ubDNDI_RESP(6,0)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 192]<4> ubDNDI_RESP(6,16)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 224]<4> ubDNDI_RESP(6,32)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 256]<4> ubDNDI_RESP(6,48)<16;8,2> { NoDDChk } //Vpixels
 
//save the previous frame
send (8) null<1>:d r18.0 0x5 0xA0A801B:ud
 
//save the current frame
send (8) null<1>:d r23.0 0x5 0xA0A801E:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/PA_DNUV_PA.g4a
0,0 → 1,2704
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 1319 // Total instruction count
// 1 // Total kernel count
 
 
.kernel YUY2_DNUV_YUY2
.code
 
 
 
//Module : DN_UV_Setup
//Author : Tatiya, Rupesh
//Description : Initial Set-up for DN_UV
 
 
 
 
// Module name : ChromaDenoise.inc
// Author : Tatiya, Rupesh
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//======================================================
//Interface for serpent mode Chroma Denoise, added by Le
//======================================================
//r1
 
 
//noise history thresholds (low and high)
 
 
//temporal difference thresholds (high and low)
 
 
//noise history thresholds (low and high)
//#define ubNoiseHistMaxHigh r1.22
//#define ubNoiseHistMaxLow r1.23
//#define ubNoiseHistDeltaHigh r1.24
//#define ubNoiseHistDeltaLow r1.25
 
//Gaussian thresholds
 
 
//temporal difference thresholds (default)
 
 
//r2
//history thresholds (default)
 
 
//denoise factor (0-63)
 
 
//====================== Binding table (Explicit To DNUV)=========================================
//Used by DN_UV kernels
 
 
//Pointer to Current Frame UV
 
 
//r1-r6
//CURBE GRFs used as TEMP : Used for max computation and storing max temporarily. : r1-r6
 
 
.declare ubCURBE_TEMP Base=r1.0 ElementSize=1 Type=ub
.declare uwCURBE_TEMP Base=r1.0 ElementSize=2 Type=uw
.declare wCURBE_TEMP Base=r1.0 ElementSize=2 Type=w
.declare fCURBE_TEMP Base=r1.0 ElementSize=4 Type=f
.declare udCURBE_TEMP Base=r1.0 ElementSize=4 Type=ud
.declare uwMAX_ABS_DIFF Base=r5.0 ElementSize=2 Type=uw
 
//r1
 
 
//r3
 
 
//r4
 
//r7
//All of the following has to defined in Same GRF for optimal performance.
 
 
//r8-24
//Previous Frame UV
 
.declare udPREV_UV Base=r8.0 ElementSize=4 Type=ud
.declare ubPREV_UV Base=r8.0 ElementSize=1 Type=ub
 
 
//r25-48
//TEMP Space for any Usage.
 
 
//=========================================================================
//Definations and declarations for serpent mode Chroma Denoise, added by Le
//=========================================================================
 
 
.declare udGNE_UV Base=r24.0 ElementSize=4 Type=ud
.declare fGNE_UV Base=r24.0 ElementSize=4 Type=f
.declare ubGNE_UV Base=r24.0 ElementSize=1 Type=ub
 
.declare udMSGHDR_BNE_SERP Base=r25.0 ElementSize=4 Type=ud
.declare udMSGSRC_BNE_SERP Base=r26.0 ElementSize=4 Type=ud
 
 
.declare ubDN_UV_Thresholds Base=r26.0 ElementSize=1 Type=ub
.declare ubDN_UV_Thresholds_Temp Base=r27.0 ElementSize=1 Type=ub
.declare udDN_UV_Thresholds Base=r26.0 ElementSize=4 Type=ud
.declare udDN_UV_Thresholds_Temp Base=r27.0 ElementSize=4 Type=ud
.declare fDN_UV_Thresholds Base=r26.0 ElementSize=4 Type=f
.declare fDN_UV_Thresholds_Temp Base=r27.0 ElementSize=4 Type=f
 
 
//====================================================================================
 
 
//TEMP23: To hold V data for PL3 surfaces
.declare udCURR_V_TEMP Base=r25.0 ElementSize=4 Type=ud
.declare ubCURR_V_TEMP Base=r25.0 ElementSize=1 Type=ub
 
//GRFs to calculate Median: r25-r42
.declare ubMEDIAN_TEMP Base=r25.0 ElementSize=1 Type=ub
 
//18 GRFs to hold difference : r25-r42
.declare wDIFF Base=r25.0 ElementSize=2 Type=w
.declare uwDIFF Base=r25.0 ElementSize=2 Type=uw
 
//Temporal Diff
.declare wDIFF_TEMPORAL Base=r25.0 ElementSize=2 Type=w
.declare ubDIFF_TEMPORAL Base=r25.0 ElementSize=1 Type=ub
 
//4 GRFs to hold Sobel Value : r43-46
.declare wSOBEL_X Base=r43.0 ElementSize=2 Type=w
.declare uwSOBEL Base=r43.0 ElementSize=2 Type=uw
 
 
//2 GRFs to hold SOAD temporarily: r47-48
.declare uwSOAD Base=r47.0 ElementSize=2 Type=uw
 
//Temp GRFs to hold extra YUYV pixels: r43-r48
.declare ubTEMP5 Base=r43.0 ElementSize=1 Type=ub
 
//Temp GRFs in Median Calculation: r47-r48
.declare ubTEMP1 Base=r47.0 ElementSize=1 Type=ub
 
.declare uwTEMP0 Base=r48.0 ElementSize=2 Type=uw
.declare ubTEMP0 Base=r48.0 ElementSize=1 Type=ub
 
//Temp Space to store Median : r49-50
 
.declare ubMEDIAN Base=r49.0 ElementSize=1 Type=ub
 
//r49
 
 
//r50
//Message Source
 
 
//r51
//DN_UV History Surface
 
.declare udHIST_UV Base=r51.0 ElementSize=4 Type=ud
.declare ubHIST_UV Base=r51.0 ElementSize=1 Type=ub
 
//r52 - r91
//r52
//Current Frame UV
 
 
.declare udCURR_UV Base=r52.0 ElementSize=4 Type=ud
.declare ubCURR_UV Base=r52.0 ElementSize=1 Type=ub
 
//r54
//CURBE COPY
 
 
//r55
 
 
.declare uwSOAD_MIN_8x4 Base=r56.0 ElementSize=2 Type=uw
 
//r61
 
 
//r62
 
 
//History Surface Temp Origin
 
 
//r63
//Current Frame Y Temp Origin
 
 
//BNE Surface Origin
 
 
//r70
 
.declare uwDIFF_TEMPORAL_SUM4x4 Base=r70.0 ElementSize=2 Type=uw //4 GRFs
 
//r74-91 : For Saving Dest UV (PL2/PL3)
 
 
.declare ubMSGPAYLOAD_UV0 Base=r75.0 ElementSize=1 Type=ub
 
 
.declare ubMSGPAYLOAD_U Base=r75.0 ElementSize=1 Type=ub
 
 
.declare ubMSGPAYLOAD_UV1 Base=r84.0 ElementSize=1 Type=ub
 
 
.declare ubMSGPAYLOAD_V Base=r84.0 ElementSize=1 Type=ub
 
//r90
 
.declare uwDIFF_TEMPORAL_SUM4x4_FINAL Base=r90.0 ElementSize=2 Type=uw //2 GRFs
 
//r92-127
//Current Frame Y
 
 
//r92
.declare uwDIFF_TEMPORAL_SUM4x4_TEMP_0 Base=r92 ElementSize=2 Type=uw
//r101
.declare uwDIFF_TEMPORAL_SUM4x4_TEMP_1 Base=r101 ElementSize=2 Type=uw
//r110
.declare uwDIFF_TEMPORAL_SUM4x4_TEMP_2 Base=r110 ElementSize=2 Type=uw
//r119
.declare uwDIFF_TEMPORAL_SUM4x4_TEMP_3 Base=r119 ElementSize=2 Type=uw
 
.declare udCURR_Y0 Base=r93.0 ElementSize=4 Type=ud
.declare ubCURR_Y0 Base=r93.0 ElementSize=1 Type=ub
.declare udCURR_Y1 Base=r102.0 ElementSize=4 Type=ud
.declare ubCURR_Y1 Base=r102.0 ElementSize=1 Type=ub
.declare udCURR_Y2 Base=r111.0 ElementSize=4 Type=ud
.declare ubCURR_Y2 Base=r111.0 ElementSize=1 Type=ub
.declare udCURR_Y3 Base=r120.0 ElementSize=4 Type=ud
.declare ubCURR_Y3 Base=r120.0 ElementSize=1 Type=ub
 
//r92: To hold U data for PL3 surfaces
.declare udCURR_U_TEMP Base=r92.0 ElementSize=4 Type=ud
.declare ubCURR_U_TEMP Base=r92.0 ElementSize=1 Type=ub
 
//r112: To hold U data for PL3 surfaces
.declare udPREV_U_TEMP Base=r112.0 ElementSize=4 Type=ud
.declare ubPREV_U_TEMP Base=r112.0 ElementSize=1 Type=ub
 
//r120: To hold U data for PL3 surfaces
.declare udPREV_V_TEMP Base=r120.0 ElementSize=4 Type=ud
.declare ubPREV_V_TEMP Base=r120.0 ElementSize=1 Type=ub
 
 
// Initialize message source with r0.
mov (8) r50.0<1>:ud r0.0<8;8,1>:ud
mov (8) r92.0<1>:ud r0.0<8;8,1>:ud
mov (8) r101.0<1>:ud r0.0<8;8,1>:ud
mov (8) r110.0<1>:ud r0.0<8;8,1>:ud
mov (8) r119.0<1>:ud r0.0<8;8,1>:ud
 
 
 
//Module Name : DN_UV_YUY2_Load_Curr_Frame_YUV
//Author : Tatiya, Rupesh
//Description : Loads Current Frame YUV data for YUY2 input.
 
 
 
//Module name : DN_UV_Load_Curr_Frame_UV
//Author : Tatiya, Rupesh
//Description : Loads Current Frame (UV only).
// We need 4 extra rows (2 per field) and 2 extra pixel (1 each side) for both U and V each.
// The processing size is 16x16 U and V each. So we need : U size - 18x20, V size - 18x20, UV size - 36x20, YUYV size - 72x20.
 
 
 
 
//72x20 interleaved YUYV block is partitioned as follows:
// <------ 36 --------> <--------36 ------->
// ------------------------------------------
// | | 32x2 B1 | 32x2 B2 | |
// | 4 |--------------------------------| 4 |
// | x | | | x |
// |20 | 32x8 A1 | 32x8 A3 | 20|
// | |---------------|----------------| |
// | C1| 32x8 A2 | 32x8 A4 | C2|
// | | | | |
// | |--------------------------------| |
// | | 32x2 B3 | 32x2 B4 | |
// ------------------------------------------
//
// Cordinates: (x, y), (x, y+8), (x+32, y), (x+32, y+8), (x-4, y-2), (x+64, y-2),(x, y-2), (x+32, y-2), (x, y+16), (x+32, y+16)
 
//UV surface origin: (2xORIX, ORIY)
add (2) r7.4<1>:w r7.0<2;2,1>:w r4.4<2;2,1>:w { AccWrEn } // Source Block origin
shl (1) r7.4<1>:w acc0.4<0;1,0>:w 1:w
 
//A1
mov (2) r92.0<1>:d r7.4<2;2,1>:w { AccWrEn } // Source Block origin
mov (1) r92.2<1>:ud 0x7001F:ud
send (8) udCURR_Y0(0)<1> r92 0x4 0x2890003:ud
 
//A2
mov (1) r101.0<1>:d acc0.0<0;1,0>:d
add (1) r101.1<1>:d acc0.1<0;1,0>:d 8:d
mov (1) r101.2<1>:ud 0x7001F:ud
send (8) udCURR_Y1(0)<1> r101 0x4 0x2890003:ud
 
//B1
mov (1) r50.0<1>:d acc0.0<0;1,0>:d
add (1) r50.1<1>:d acc0.1<0;1,0>:d -2:d
mov (1) r50.2<1>:ud 0x1001F:ud
send (8) udCURR_UV(0)<1> r50 0x4 0x2290003:ud
 
//B3
mov (1) r50.0<1>:d acc0.0<0;1,0>:d
add (1) r50.1<1>:d acc0.1<0;1,0>:d 16:d
send (8) udCURR_UV(18)<1> r50 0x4 0x2290003:ud
 
//C1
add (1) r50.0<1>:d acc0.0<0;1,0>:d -4:d
add (1) r50.1<1>:d acc0.1<0;1,0>:d -2:d
mov (1) r50.2<1>:ud 0x130003:ud
send (8) ubTEMP5(0)<1> r50 0x4 0x2390003:ud
 
//A3
add (1) r110.0<1>:d acc0.0<0;1,0>:d 32:d
mov (1) r110.1<1>:d acc0.1<0;1,0>:d
mov (1) r110.2<1>:ud 0x7001F:ud
send (8) udCURR_Y2(0)<1> r110 0x4 0x2890003:ud
 
//A4
add (1) r119.0<1>:d acc0.0<0;1,0>:d 32:d
add (1) r119.1<1>:d acc0.1<0;1,0>:d 8:d
mov (1) r119.2<1>:ud 0x7001F:ud
send (8) udCURR_Y3(0)<1> r119 0x4 0x2890003:ud
 
//B2
add (1) r50.0<1>:d acc0.0<0;1,0>:d 32:d
add (1) r50.1<1>:d acc0.1<0;1,0>:d -2:d
mov (1) r50.2<1>:ud 0x1001F:ud
send (8) udCURR_UV(20)<1> r50 0x4 0x2290003:ud
 
//B4
add (1) r50.0<1>:d acc0.0<0;1,0>:d 32:d
add (1) r50.1<1>:d acc0.1<0;1,0>:d 16:d
send (8) udCURR_UV(38)<1> r50 0x4 0x2290003:ud
 
//C2
add (1) r50.0<1>:d acc0.0<0;1,0>:d 64:d
add (1) r50.1<1>:d acc0.1<0;1,0>:d -2:d
mov (1) r50.2<1>:ud 0x130003:ud
send (8) ubTEMP5(3)<1> r50 0x4 0x2390003:ud
 
//History Origin, Current Y origin and BNE surface origin - all are in inline GRF. Use , . -rT.
 
//Calculate Origin For History Surface: (ORIX/4, ORIY/4)
shr (2) r7.2<1>:w r7.0<2;2,1>:w 2:w
 
//Calculate Origin For BNE Surface: (ORIX/8, ORIY/8)
shr (2) r7.6<1>:w r7.0<2;2,1>:w 3:w
 
 
 
//Module Name : DN_UV_YUY2_Load_Prev_Frame_YUV.asm
//Author : Tatiya, Rupesh
//Description : Loads Pevious Frame YUV data for YUY2 input.
 
 
 
//Module Name : DN_UV_Load_Prev_Frame_UV
//Author : Tatiya, Rupesh
//Description : Loads Prev Frame (UV only). U size - 16x16, V size - 16x16, UV size - 32x16, YUYV size - 64x16.
 
 
 
 
mov (2) r50.0<1>:d r7.4<2;2,1>:w { AccWrEn } // Source lock origin
mov (1) r50.2<1>:ud 0x7001F:ud // U/V block width and height (16x16)
send (8) udPREV_UV(0)<1> r50 0x4 0x2890000:ud
 
add (1) r50.1<1>:ud acc0.1<0;1,0>:d 8:w // Add 16 to X origin
send (8) udPREV_UV(8)<1> r50 0x4 0x2890000:ud
 
add (1) r50.0<1>:ud acc0.0<0;1,0>:d 32:w
mov (1) r50.1<1>:ud acc0.1<0;1,0>:d
send (8) udPREV_UV(16)<1> r50 0x4 0x2890000:ud
 
add (1) r50.1<1>:ud acc0.0<0;1,0>:d 8:w
send (8) udPREV_UV(24)<1> r50 0x4 0x2890000:ud
 
 
//TODO - See if History loading can be combined with Prev Frame Load. - rT
 
 
//Module name : DN_UV_Load_Hist_UV
//Author : Tatiya, Rupesh
//Description : Load DN History for UV denoise. 4x4 for each U & V.
 
 
 
 
mov (2) r50.0<1>:d r7.2<2;2,1>:w
mov (1) r50.2<1>:ud 0x30007:ud
send (8) udHIST_UV(0)<1> r50 0x4 0x2190022:ud
 
 
 
//Module Name: DN_UV_YUY2_Extract_Curr_Frame_UV
//Author : Tatiya, Rupesh
//Description: Extract UV data from current YUY2 frame.
 
//72x20 interleaved YUYV block is partitioned as follows:
// <------ 36 --------> <--------36 ------->
// ------------------------------------------
// | | 32x2 B1 | 32x2 B2 | |
// | 4 |--------------------------------| 4 |
// | x | | | x |
// |20 | 32x8 A1 | 32x8 A3 | 20|
// | |---------------|----------------| |
// | C1| 32x8 A2 | 32x8 A4 | C2|
// | | | | |
// | |--------------------------------| |
// | | 32x2 B3 | 32x2 B4 | |
// ------------------------------------------
 
// Set SRC pointers according to Input packing i.e. YUYV, YVYU, UYVY, VYUY
add (1) a0.0<1>:uw r4.1<0;1,0>:ub 2976:w //A1
add (1) a0.1<1>:uw r4.1<0;1,0>:ub 3264:w //A2
add (1) a0.2<1>:uw r4.1<0;1,0>:ub 3552:w //A3
add (1) a0.3<1>:uw r4.1<0;1,0>:ub 3840:w //A4
add (1) a0.4<1>:uw r4.1<0;1,0>:ub 1664:w //B1
add (1) a0.5<1>:uw r4.1<0;1,0>:ub 2240:w //B3B2
add (1) a0.6<1>:uw r4.1<0;1,0>:ub 2880:w //B4
add (1) a0.7<1>:uw r4.1<0;1,0>:ub 1376:w //C1C2
 
//Left 20x20 UV : 16x16 UV (Original)+4 extra rows(2 per field on top/bottom)+4 extra pixels(2 on left/right)
 
//A1
mov (16) ubCURR_UV(2,2)<1> r[a0.0, 0]<32;16,2>
mov (16) ubCURR_UV(3,2)<1> r[a0.0, 32]<32;16,2>
mov (16) ubCURR_UV(4,2)<1> r[a0.0, 64]<32;16,2>
mov (16) ubCURR_UV(5,2)<1> r[a0.0, 96]<32;16,2>
mov (16) ubCURR_UV(6,2)<1> r[a0.0, 128]<32;16,2>
mov (16) ubCURR_UV(7,2)<1> r[a0.0, 160]<32;16,2>
mov (16) ubCURR_UV(8,2)<1> r[a0.0, 192]<32;16,2>
mov (16) ubCURR_UV(9,2)<1> r[a0.0, 224]<32;16,2>
 
//A2
mov (16) ubCURR_UV(10,2)<1> r[a0.1, 0]<32;16,2>
mov (16) ubCURR_UV(11,2)<1> r[a0.1, 32]<32;16,2>
mov (16) ubCURR_UV(12,2)<1> r[a0.1, 64]<32;16,2>
mov (16) ubCURR_UV(13,2)<1> r[a0.1, 96]<32;16,2>
mov (16) ubCURR_UV(14,2)<1> r[a0.1, 128]<32;16,2>
mov (16) ubCURR_UV(15,2)<1> r[a0.1, 160]<32;16,2>
mov (16) ubCURR_UV(16,2)<1> r[a0.1, 192]<32;16,2>
mov (16) ubCURR_UV(17,2)<1> r[a0.1, 224]<32;16,2>
 
//B1
mov (16) ubCURR_UV(0,2)<1> r[a0.4, 0]<32;16,2>
mov (16) ubCURR_UV(1,2)<1> r[a0.4, 32]<32;16,2>
 
//B3
mov (16) ubCURR_UV(18,2)<1> r[a0.5, 0]<32;16,2>
mov (16) ubCURR_UV(19,2)<1> r[a0.5, 32]<32;16,2>
 
//TODO - Find a way to reduce this 40 SIMD2 instructions - rT
//C1
mov (2) ubCURR_UV(0,0)<1> r[a0.7, 0]<4;2,2>
mov (2) ubCURR_UV(1,0)<1> r[a0.7, 4]<4;2,2>
mov (2) ubCURR_UV(2,0)<1> r[a0.7, 8]<4;2,2>
mov (2) ubCURR_UV(3,0)<1> r[a0.7, 12]<4;2,2>
mov (2) ubCURR_UV(4,0)<1> r[a0.7, 16]<4;2,2>
mov (2) ubCURR_UV(5,0)<1> r[a0.7, 20]<4;2,2>
mov (2) ubCURR_UV(6,0)<1> r[a0.7, 24]<4;2,2>
mov (2) ubCURR_UV(7,0)<1> r[a0.7, 28]<4;2,2>
mov (2) ubCURR_UV(8,0)<1> r[a0.7, 32]<4;2,2>
mov (2) ubCURR_UV(9,0)<1> r[a0.7, 36]<4;2,2>
mov (2) ubCURR_UV(10,0)<1> r[a0.7, 40]<4;2,2>
mov (2) ubCURR_UV(11,0)<1> r[a0.7, 44]<4;2,2>
mov (2) ubCURR_UV(12,0)<1> r[a0.7, 48]<4;2,2>
mov (2) ubCURR_UV(13,0)<1> r[a0.7, 52]<4;2,2>
mov (2) ubCURR_UV(14,0)<1> r[a0.7, 56]<4;2,2>
mov (2) ubCURR_UV(15,0)<1> r[a0.7, 60]<4;2,2>
mov (2) ubCURR_UV(16,0)<1> r[a0.7, 64]<4;2,2>
mov (2) ubCURR_UV(17,0)<1> r[a0.7, 68]<4;2,2>
mov (2) ubCURR_UV(18,0)<1> r[a0.7, 72]<4;2,2>
mov (2) ubCURR_UV(19,0)<1> r[a0.7, 76]<4;2,2>
 
//2 right bytes from B2 - 2 rows
mov (2) ubCURR_UV(0,18)<1> r[a0.5, 64]<4;2,2>
mov (2) ubCURR_UV(1,18)<1> r[a0.5, 96]<4;2,2>
 
//2 right bytes from A3 - 8 rows
mov (2) ubCURR_UV(2,18)<1> r[a0.2, 0]<4;2,2>
mov (2) ubCURR_UV(3,18)<1> r[a0.2, 32]<4;2,2>
mov (2) ubCURR_UV(4,18)<1> r[a0.2, 64]<4;2,2>
mov (2) ubCURR_UV(5,18)<1> r[a0.2, 96]<4;2,2>
mov (2) ubCURR_UV(6,18)<1> r[a0.2, 128]<4;2,2>
mov (2) ubCURR_UV(7,18)<1> r[a0.2, 160]<4;2,2>
mov (2) ubCURR_UV(8,18)<1> r[a0.2, 192]<4;2,2>
mov (2) ubCURR_UV(9,18)<1> r[a0.2, 224]<4;2,2>
 
//2 right bytes from A4 - 8 rows
mov (2) ubCURR_UV(10,18)<1> r[a0.3, 0]<4;2,2>
mov (2) ubCURR_UV(11,18)<1> r[a0.3, 32]<4;2,2>
mov (2) ubCURR_UV(12,18)<1> r[a0.3, 64]<4;2,2>
mov (2) ubCURR_UV(13,18)<1> r[a0.3, 96]<4;2,2>
mov (2) ubCURR_UV(14,18)<1> r[a0.3, 128]<4;2,2>
mov (2) ubCURR_UV(15,18)<1> r[a0.3, 160]<4;2,2>
mov (2) ubCURR_UV(16,18)<1> r[a0.3, 192]<4;2,2>
mov (2) ubCURR_UV(17,18)<1> r[a0.3, 224]<4;2,2>
 
//2 right bytes from B4 - 2 rows
mov (2) ubCURR_UV(18,18)<1> r[a0.6, 0]<4;2,2>
mov (2) ubCURR_UV(19,18)<1> r[a0.6, 32]<4;2,2>
 
//Right 20x20 UV : 16x16 UV (Original)+4 extra rows(2 per field on top/bottom)+4 extra pixels(2 on left/right)
 
//A3
mov (16) ubCURR_UV(22,2)<1> r[a0.2, 0]<32;16,2>
mov (16) ubCURR_UV(23,2)<1> r[a0.2, 32]<32;16,2>
mov (16) ubCURR_UV(24,2)<1> r[a0.2, 64]<32;16,2>
mov (16) ubCURR_UV(25,2)<1> r[a0.2, 96]<32;16,2>
mov (16) ubCURR_UV(26,2)<1> r[a0.2, 128]<32;16,2>
mov (16) ubCURR_UV(27,2)<1> r[a0.2, 160]<32;16,2>
mov (16) ubCURR_UV(28,2)<1> r[a0.2, 192]<32;16,2>
mov (16) ubCURR_UV(29,2)<1> r[a0.2, 224]<32;16,2>
 
//A4
mov (16) ubCURR_UV(30,2)<1> r[a0.3, 0]<32;16,2>
mov (16) ubCURR_UV(31,2)<1> r[a0.3, 32]<32;16,2>
mov (16) ubCURR_UV(32,2)<1> r[a0.3, 64]<32;16,2>
mov (16) ubCURR_UV(33,2)<1> r[a0.3, 96]<32;16,2>
mov (16) ubCURR_UV(34,2)<1> r[a0.3, 128]<32;16,2>
mov (16) ubCURR_UV(35,2)<1> r[a0.3, 160]<32;16,2>
mov (16) ubCURR_UV(36,2)<1> r[a0.3, 192]<32;16,2>
mov (16) ubCURR_UV(37,2)<1> r[a0.3, 224]<32;16,2>
 
//B2
mov (16) ubCURR_UV(20,2)<1> r[a0.5, 64]<32;16,2>
mov (16) ubCURR_UV(21,2)<1> r[a0.5, 96]<32;16,2>
 
//B4
mov (16) ubCURR_UV(38,2)<1> r[a0.6, 0]<32;16,2>
mov (16) ubCURR_UV(39,2)<1> r[a0.6, 32]<32;16,2>
 
//TODO - Find a way to reduce this 40 SIMD2 instructions - rT
//C2
mov (2) ubCURR_UV(20,18)<1> r[a0.7, 96]<4;2,2>
mov (2) ubCURR_UV(21,18)<1> r[a0.7, 100]<4;2,2>
mov (2) ubCURR_UV(22,18)<1> r[a0.7, 104]<4;2,2>
mov (2) ubCURR_UV(23,18)<1> r[a0.7, 108]<4;2,2>
mov (2) ubCURR_UV(24,18)<1> r[a0.7, 112]<4;2,2>
mov (2) ubCURR_UV(25,18)<1> r[a0.7, 116]<4;2,2>
mov (2) ubCURR_UV(26,18)<1> r[a0.7, 120]<4;2,2>
mov (2) ubCURR_UV(27,18)<1> r[a0.7, 124]<4;2,2>
mov (2) ubCURR_UV(28,18)<1> r[a0.7, 128]<4;2,2>
mov (2) ubCURR_UV(29,18)<1> r[a0.7, 132]<4;2,2>
mov (2) ubCURR_UV(30,18)<1> r[a0.7, 136]<4;2,2>
mov (2) ubCURR_UV(31,18)<1> r[a0.7, 140]<4;2,2>
mov (2) ubCURR_UV(32,18)<1> r[a0.7, 144]<4;2,2>
mov (2) ubCURR_UV(33,18)<1> r[a0.7, 148]<4;2,2>
mov (2) ubCURR_UV(34,18)<1> r[a0.7, 152]<4;2,2>
mov (2) ubCURR_UV(35,18)<1> r[a0.7, 156]<4;2,2>
mov (2) ubCURR_UV(36,18)<1> r[a0.7, 160]<4;2,2>
mov (2) ubCURR_UV(37,18)<1> r[a0.7, 164]<4;2,2>
mov (2) ubCURR_UV(38,18)<1> r[a0.7, 168]<4;2,2>
mov (2) ubCURR_UV(39,18)<1> r[a0.7, 172]<4;2,2>
 
//2 left bytes from B1 - 2 rows
mov (2) ubCURR_UV(20,0)<1> r[a0.4, 28]<4;2,2>
mov (2) ubCURR_UV(21,0)<1> r[a0.4, 60]<4;2,2>
 
//2 left bytes from A1 - 8 rows
mov (2) ubCURR_UV(22,0)<1> r[a0.0, 28]<4;2,2>
mov (2) ubCURR_UV(23,0)<1> r[a0.0, 60]<4;2,2>
mov (2) ubCURR_UV(24,0)<1> r[a0.0, 92]<4;2,2>
mov (2) ubCURR_UV(25,0)<1> r[a0.0, 124]<4;2,2>
mov (2) ubCURR_UV(26,0)<1> r[a0.0, 156]<4;2,2>
mov (2) ubCURR_UV(27,0)<1> r[a0.0, 188]<4;2,2>
mov (2) ubCURR_UV(28,0)<1> r[a0.0, 220]<4;2,2>
mov (2) ubCURR_UV(29,0)<1> r[a0.0, 252]<4;2,2>
 
//2 left bytes from A2 - 8 rows
mov (2) ubCURR_UV(30,0)<1> r[a0.1, 28]<4;2,2>
mov (2) ubCURR_UV(31,0)<1> r[a0.1, 60]<4;2,2>
mov (2) ubCURR_UV(32,0)<1> r[a0.1, 92]<4;2,2>
mov (2) ubCURR_UV(33,0)<1> r[a0.1, 124]<4;2,2>
mov (2) ubCURR_UV(34,0)<1> r[a0.1, 156]<4;2,2>
mov (2) ubCURR_UV(35,0)<1> r[a0.1, 188]<4;2,2>
mov (2) ubCURR_UV(36,0)<1> r[a0.1, 220]<4;2,2>
mov (2) ubCURR_UV(37,0)<1> r[a0.1, 252]<4;2,2>
 
//2 left bytes from B3 - 2 rows
mov (2) ubCURR_UV(38,0)<1> r[a0.5, 28]<4;2,2>
mov (2) ubCURR_UV(39,0)<1> r[a0.5, 60]<4;2,2>
 
 
 
// Module Name : DN_UV_YUY2_Extract_Prev_Frame_UV
// Author : Tatiya, Rupesh
// Description : Extract UV from previous frame YUY2.
 
// Set SRC pointers according to Input packing i.e. YUYV, YVYU, UYVY, VYUY
add (1) a0.0<1>:uw r4.1<0;1,0>:ub 256:w
add (1) a0.1<1>:uw r4.1<0;1,0>:ub 768:w
 
mov (16) ubPREV_UV(0,0)<1> r[a0.0, 0]<32;16,2>:ub
mov (16) ubPREV_UV(0,16)<1> r[a0.0, 32]<32;16,2>:ub
mov (16) ubPREV_UV(1,0)<1> r[a0.0, 64]<32;16,2>:ub
mov (16) ubPREV_UV(1,16)<1> r[a0.0, 96]<32;16,2>:ub
mov (16) ubPREV_UV(2,0)<1> r[a0.0, 128]<32;16,2>:ub
mov (16) ubPREV_UV(2,16)<1> r[a0.0, 160]<32;16,2>:ub
mov (16) ubPREV_UV(3,0)<1> r[a0.0, 192]<32;16,2>:ub
mov (16) ubPREV_UV(3,16)<1> r[a0.0, 224]<32;16,2>:ub
mov (16) ubPREV_UV(4,0)<1> r[a0.0, 256]<32;16,2>:ub
mov (16) ubPREV_UV(4,16)<1> r[a0.0, 288]<32;16,2>:ub
mov (16) ubPREV_UV(5,0)<1> r[a0.0, 320]<32;16,2>:ub
mov (16) ubPREV_UV(5,16)<1> r[a0.0, 352]<32;16,2>:ub
mov (16) ubPREV_UV(6,0)<1> r[a0.0, 384]<32;16,2>:ub
mov (16) ubPREV_UV(6,16)<1> r[a0.0, 416]<32;16,2>:ub
mov (16) ubPREV_UV(7,0)<1> r[a0.0, 448]<32;16,2>:ub
mov (16) ubPREV_UV(7,16)<1> r[a0.0, 480]<32;16,2>:ub
 
mov (16) ubPREV_UV(8,0)<1> r[a0.1, 0]<32;16,2>:ub
mov (16) ubPREV_UV(8,16)<1> r[a0.1, 32]<32;16,2>:ub
mov (16) ubPREV_UV(9,0)<1> r[a0.1, 64]<32;16,2>:ub
mov (16) ubPREV_UV(9,16)<1> r[a0.1, 96]<32;16,2>:ub
mov (16) ubPREV_UV(10,0)<1> r[a0.1, 128]<32;16,2>:ub
mov (16) ubPREV_UV(10,16)<1> r[a0.1, 160]<32;16,2>:ub
mov (16) ubPREV_UV(11,0)<1> r[a0.1, 192]<32;16,2>:ub
mov (16) ubPREV_UV(11,16)<1> r[a0.1, 224]<32;16,2>:ub
mov (16) ubPREV_UV(12,0)<1> r[a0.1, 256]<32;16,2>:ub
mov (16) ubPREV_UV(12,16)<1> r[a0.1, 288]<32;16,2>:ub
mov (16) ubPREV_UV(13,0)<1> r[a0.1, 320]<32;16,2>:ub
mov (16) ubPREV_UV(13,16)<1> r[a0.1, 352]<32;16,2>:ub
mov (16) ubPREV_UV(14,0)<1> r[a0.1, 384]<32;16,2>:ub
mov (16) ubPREV_UV(14,16)<1> r[a0.1, 416]<32;16,2>:ub
mov (16) ubPREV_UV(15,0)<1> r[a0.1, 448]<32;16,2>:ub
mov (16) ubPREV_UV(15,16)<1> r[a0.1, 480]<32;16,2>:ub
 
 
 
//Module Name : DN_UV_Noise_Detection_UV
//Author : Tatiya, Rupesh
//Description : Performs noise detection on 16x16 U and 16x16 V each.
 
 
 
//Module Name : DN_UV_Move_CURBE_Inline_UV.asm
//Author : Tatiya, Rupesh
 
 
 
 
//Mov CURBE data to another space - so that it can be used as Temp Space --> r1 - r6
mov (4) r54.28<1>:ub r2.28<4;4,1>:ub //Dest. YUY2 offset
mov (2) r54.5<1>:ud r4.0<4;2,2>:ud //Src YUY2 offset and Origin offset
mov (4) r55.28<1>:ub r1.0<4;4,1>:ub
 
mov (8) r61.20<1>:ub r1.4<8;8,1>:ub
mov (4) r61.28<1>:ub r1.12<4;4,1>:ub
 
//Move Inline Data to another space - so that it can be used as Temp Space --> r7
mov (4) r62.10<1>:w r7.0<4;4,1>:w
mov (4) r63.10<1>:w r7.4<4;4,1>:w
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
mov (1) a0.0:uw 1664:uw
mov (1) a0.1:uw 1816:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 1792:uw
mov (1) a0.1:uw 1820:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 1920:uw
mov (1) a0.1:uw 1848:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 2048:uw
mov (1) a0.1:uw 1852:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
mov (1) a0.0:uw 2304:uw
mov (1) a0.1:uw 1880:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 2432:uw
mov (1) a0.1:uw 1884:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 2560:uw
mov (1) a0.1:uw 1912:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 2688:uw
mov (1) a0.1:uw 1916:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
//Module : DN_UV_Noise_Reduction_UV
//Author : Tatiya, Rupesh
//Description : Performs Noise Reduction on 16x16 U and 16x16 V.
//Tasks : 1. Update weight history
// 2. Find if it block is motion block
// 3. Compute Denoised Pixel.
 
 
 
 
//History is 1+1 byte every 4x4 U and 4x4 V.
 
cmp.l.f0.0 (16) null<1>:w ubHIST_UV(0,0)<16;16,1> r61.20<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w ubHIST_UV(0,0)<16;16,1> r61.22<0;2,1>:ub
 
mov (16) uwCURBE_TEMP(0)<1> 0:w
mov (16) uwCURBE_TEMP(1)<1> 0:w
 
//Compute diff betn curr and prev. - First 16 lines
// 8 lines here
add (16) wDIFF_TEMPORAL(0)<1> ubCURR_UV(2,2)<16;16,1> -ubPREV_UV(0,0)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(1)<1> ubCURR_UV(3,2)<16;16,1> -ubPREV_UV(0,16)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(2)<1> ubCURR_UV(4,2)<16;16,1> -ubPREV_UV(0,32)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(3)<1> ubCURR_UV(5,2)<16;16,1> -ubPREV_UV(0,48)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(4)<1> ubCURR_UV(6,2)<16;16,1> -ubPREV_UV(0,64)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(5)<1> ubCURR_UV(7,2)<16;16,1> -ubPREV_UV(0,80)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(6)<1> ubCURR_UV(8,2)<16;16,1> -ubPREV_UV(0,96)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(7)<1> ubCURR_UV(9,2)<16;16,1> -ubPREV_UV(0,112)<16;16,1> //Diff UV interleaved
 
//Update WT HIST
(-f0.0) shr (16) uwCURBE_TEMP(0)<1> ubHIST_UV(0,0)<16;16,1> 1:w
(f1.0) add (16) uwCURBE_TEMP(2)<1> ubHIST_UV(0,0)<16;16,1> r61.24<0;2,1>:ub
(f0.0) mov (16) uwCURBE_TEMP(2)<1> r61.20<0;2,1>:ub
(-f0.0.anyv) mov (16) uwCURBE_TEMP(2)<1> ubHIST_UV(0,0)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w ubHIST_UV(0,16)<16;16,1> r61.20<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w ubHIST_UV(0,16)<16;16,1> r61.22<0;2,1>:ub
 
//Compute diff betn curr and prev. - First 16 lines
// 8 more lines here
add (16) wDIFF_TEMPORAL(8)<1> ubCURR_UV(10,2)<16;16,1> -ubPREV_UV(0,128)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(9)<1> ubCURR_UV(11,2)<16;16,1> -ubPREV_UV(0,144)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(10)<1> ubCURR_UV(12,2)<16;16,1> -ubPREV_UV(0,160)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(11)<1> ubCURR_UV(13,2)<16;16,1> -ubPREV_UV(0,176)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(12)<1> ubCURR_UV(14,2)<16;16,1> -ubPREV_UV(0,192)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(13)<1> ubCURR_UV(15,2)<16;16,1> -ubPREV_UV(0,208)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(14)<1> ubCURR_UV(16,2)<16;16,1> -ubPREV_UV(0,224)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(15)<1> ubCURR_UV(17,2)<16;16,1> -ubPREV_UV(0,240)<16;16,1> //Diff UV interleaved
 
(-f0.0) shr (16) uwCURBE_TEMP(1)<1> ubHIST_UV(0,16)<16;16,1> 1:w
(f1.0) add (16) uwCURBE_TEMP(3)<1> ubHIST_UV(0,16)<16;16,1> r61.24<0;2,1>:ub
(f0.0) mov (16) uwCURBE_TEMP(3)<1> r61.20<0;2,1>:ub
(-f0.0.anyv) mov(16) uwCURBE_TEMP(3)<1> ubHIST_UV(0,16)<16;16,1>
 
//16x16 to 16x4 - First 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(0)<16;16,1> (abs)wDIFF_TEMPORAL(1)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(2)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(0)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(3)<16;16,1>
//16x16 to 16x4 - First 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(4)<16;16,1> (abs)wDIFF_TEMPORAL(5)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(6)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(1)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(7)<16;16,1>
//16x16 to 16x4 - First 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(8)<16;16,1> (abs)wDIFF_TEMPORAL(9)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(10)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(2)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(11)<16;16,1>
//16x16 to 16x4 - First 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(12)<16;16,1> (abs)wDIFF_TEMPORAL(13)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(14)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(3)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(15)<16;16,1>
 
//Compute diff betn curr and prev. - Second 16 lines
//13 lines.
add (16) wDIFF_TEMPORAL(16)<1> ubCURR_UV(22,2)<16;16,1> -ubPREV_UV(8,0)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(17)<1> ubCURR_UV(23,2)<16;16,1> -ubPREV_UV(8,16)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(18)<1> ubCURR_UV(24,2)<16;16,1> -ubPREV_UV(8,32)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(19)<1> ubCURR_UV(25,2)<16;16,1> -ubPREV_UV(8,48)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(20)<1> ubCURR_UV(26,2)<16;16,1> -ubPREV_UV(8,64)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(21)<1> ubCURR_UV(27,2)<16;16,1> -ubPREV_UV(8,80)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(22)<1> ubCURR_UV(28,2)<16;16,1> -ubPREV_UV(8,96)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(23)<1> ubCURR_UV(29,2)<16;16,1> -ubPREV_UV(8,112)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(24)<1> ubCURR_UV(30,2)<16;16,1> -ubPREV_UV(8,128)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(25)<1> ubCURR_UV(31,2)<16;16,1> -ubPREV_UV(8,144)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(26)<1> ubCURR_UV(32,2)<16;16,1> -ubPREV_UV(8,160)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(27)<1> ubCURR_UV(33,2)<16;16,1> -ubPREV_UV(8,176)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(28)<1> ubCURR_UV(34,2)<16;16,1> -ubPREV_UV(8,192)<16;16,1> //Diff UV interleaved
 
//3 more lines
add (16) wCURBE_TEMP(4)<1> ubCURR_UV(35,2)<16;16,1> -ubPREV_UV(8,208)<16;16,1> //Diff UV interleaved
add (16) wCURBE_TEMP(5)<1> ubCURR_UV(36,2)<16;16,1> -ubPREV_UV(8,224)<16;16,1> //Diff UV interleaved
add (16) wCURBE_TEMP(6)<1> ubCURR_UV(37,2)<16;16,1> -ubPREV_UV(8,240)<16;16,1> //Diff UV interleaved
 
//16x4 to 8x4 - First 16 lines
add (16) uwDIFF_TEMPORAL_SUM4x4(0)<1> uwDIFF_TEMPORAL_SUM4x4(0,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(0,2)<4;2,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(1)<1> uwDIFF_TEMPORAL_SUM4x4(2,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(2,2)<4;2,1>
 
//8x4 to 4x4 - First 16 lines
add (16) uwDIFF_TEMPORAL_SUM4x4_FINAL(0)<1> uwDIFF_TEMPORAL_SUM4x4(0,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(0,2)<4;2,1> { AccWrEn }
 
//16x16 to 16x4 - Second 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(16)<16;16,1> (abs)wDIFF_TEMPORAL(17)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(18)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(0)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(19)<16;16,1>
//16x16 to 16x4 - Second 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(20)<16;16,1> (abs)wDIFF_TEMPORAL(21)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(22)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(1)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(23)<16;16,1>
//16x16 to 16x4 - Second 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(24)<16;16,1> (abs)wDIFF_TEMPORAL(25)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(26)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(2)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(27)<16;16,1>
 
//16x16 to 16x4 - Second 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(28)<16;16,1> (abs)wCURBE_TEMP(4)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wCURBE_TEMP(5)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(3)<1> acc0.0<16;16,1>:uw (abs)wCURBE_TEMP(6)<16;16,1>
 
//Find if block is motion block - First 16 lines
cmp.g.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_FINAL(0)<16;16,1> r61.26<0;2,1>:ub
 
//Move TEMPORAL_SUM4x4 for SIMD16 use later.
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,0)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,2)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,4)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,6)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,8)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,10)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,12)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,14)<0;2,1>
 
//Pick Appropriate Weight History Based on motion. - First 16 lines
(-f0.0) mov (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(2)<16;16,1>
 
//Actual DN - First 16 lines
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(0)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(0)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(2,2)<8;8,1> -uwCURBE_TEMP(0,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(2,10)<8;8,1> -uwCURBE_TEMP(0,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(2,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,0)<8;8,1> uwCURBE_TEMP(0,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,8)<8;8,1> uwCURBE_TEMP(0,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(0)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(0)<1> ubCURR_UV(2,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(0)<1> wDIFF_TEMPORAL(0)<16;16,1> ubCURR_UV(2,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(1)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(1)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(3,2)<8;8,1> -uwCURBE_TEMP(0,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(3,10)<8;8,1> -uwCURBE_TEMP(0,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(3,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,16)<8;8,1> uwCURBE_TEMP(0,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,24)<8;8,1> uwCURBE_TEMP(0,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(1)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(1)<1> ubCURR_UV(3,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(1)<1> wDIFF_TEMPORAL(1)<16;16,1> ubCURR_UV(3,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(2)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(2)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(4,2)<8;8,1> -uwCURBE_TEMP(0,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(4,10)<8;8,1> -uwCURBE_TEMP(0,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(4,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,32)<8;8,1> uwCURBE_TEMP(0,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,40)<8;8,1> uwCURBE_TEMP(0,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(2)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(2)<1> ubCURR_UV(4,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(2)<1> wDIFF_TEMPORAL(2)<16;16,1> ubCURR_UV(4,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(3)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(3)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(5,2)<8;8,1> -uwCURBE_TEMP(0,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(5,10)<8;8,1> -uwCURBE_TEMP(0,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(5,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,48)<8;8,1> uwCURBE_TEMP(0,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,56)<8;8,1> uwCURBE_TEMP(0,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(3)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(3)<1> ubCURR_UV(5,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(3)<1> wDIFF_TEMPORAL(3)<16;16,1> ubCURR_UV(5,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(4)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(4)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(6,2)<8;8,1> -uwCURBE_TEMP(0,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(6,10)<8;8,1> -uwCURBE_TEMP(0,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(6,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,64)<8;8,1> uwCURBE_TEMP(0,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,72)<8;8,1> uwCURBE_TEMP(0,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(4)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(4)<1> ubCURR_UV(6,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(4)<1> wDIFF_TEMPORAL(4)<16;16,1> ubCURR_UV(6,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(5)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(5)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(7,2)<8;8,1> -uwCURBE_TEMP(0,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(7,10)<8;8,1> -uwCURBE_TEMP(0,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(7,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,80)<8;8,1> uwCURBE_TEMP(0,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,88)<8;8,1> uwCURBE_TEMP(0,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(5)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(5)<1> ubCURR_UV(7,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(5)<1> wDIFF_TEMPORAL(5)<16;16,1> ubCURR_UV(7,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(6)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(6)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(8,2)<8;8,1> -uwCURBE_TEMP(0,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(8,10)<8;8,1> -uwCURBE_TEMP(0,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(8,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,96)<8;8,1> uwCURBE_TEMP(0,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,104)<8;8,1> uwCURBE_TEMP(0,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(6)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(6)<1> ubCURR_UV(8,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(6)<1> wDIFF_TEMPORAL(6)<16;16,1> ubCURR_UV(8,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(7)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(7)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(9,2)<8;8,1> -uwCURBE_TEMP(0,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(9,10)<8;8,1> -uwCURBE_TEMP(0,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(9,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,112)<8;8,1> uwCURBE_TEMP(0,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,120)<8;8,1> uwCURBE_TEMP(0,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(7)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(7)<1> ubCURR_UV(9,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(7)<1> wDIFF_TEMPORAL(7)<16;16,1> ubCURR_UV(9,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(8)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(8)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(10,2)<8;8,1> -uwCURBE_TEMP(0,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(10,10)<8;8,1> -uwCURBE_TEMP(0,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(10,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,128)<8;8,1> uwCURBE_TEMP(0,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,136)<8;8,1> uwCURBE_TEMP(0,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(8)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(8)<1> ubCURR_UV(10,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(8)<1> wDIFF_TEMPORAL(8)<16;16,1> ubCURR_UV(10,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(9)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(9)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(11,2)<8;8,1> -uwCURBE_TEMP(0,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(11,10)<8;8,1> -uwCURBE_TEMP(0,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(11,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,144)<8;8,1> uwCURBE_TEMP(0,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,152)<8;8,1> uwCURBE_TEMP(0,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(9)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(9)<1> ubCURR_UV(11,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(9)<1> wDIFF_TEMPORAL(9)<16;16,1> ubCURR_UV(11,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(10)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(10)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(12,2)<8;8,1> -uwCURBE_TEMP(0,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(12,10)<8;8,1> -uwCURBE_TEMP(0,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(12,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,160)<8;8,1> uwCURBE_TEMP(0,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,168)<8;8,1> uwCURBE_TEMP(0,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(10)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(10)<1> ubCURR_UV(12,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(10)<1> wDIFF_TEMPORAL(10)<16;16,1> ubCURR_UV(12,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(11)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(11)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(13,2)<8;8,1> -uwCURBE_TEMP(0,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(13,10)<8;8,1> -uwCURBE_TEMP(0,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(13,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,176)<8;8,1> uwCURBE_TEMP(0,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,184)<8;8,1> uwCURBE_TEMP(0,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(11)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(11)<1> ubCURR_UV(13,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(11)<1> wDIFF_TEMPORAL(11)<16;16,1> ubCURR_UV(13,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(12)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(12)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(14,2)<8;8,1> -uwCURBE_TEMP(0,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(14,10)<8;8,1> -uwCURBE_TEMP(0,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(14,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,192)<8;8,1> uwCURBE_TEMP(0,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,200)<8;8,1> uwCURBE_TEMP(0,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(12)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(12)<1> ubCURR_UV(14,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(12)<1> wDIFF_TEMPORAL(12)<16;16,1> ubCURR_UV(14,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(13)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(13)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(15,2)<8;8,1> -uwCURBE_TEMP(0,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(15,10)<8;8,1> -uwCURBE_TEMP(0,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(15,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,208)<8;8,1> uwCURBE_TEMP(0,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,216)<8;8,1> uwCURBE_TEMP(0,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(13)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(13)<1> ubCURR_UV(15,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(13)<1> wDIFF_TEMPORAL(13)<16;16,1> ubCURR_UV(15,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(14)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(14)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(16,2)<8;8,1> -uwCURBE_TEMP(0,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(16,10)<8;8,1> -uwCURBE_TEMP(0,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(16,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,224)<8;8,1> uwCURBE_TEMP(0,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,232)<8;8,1> uwCURBE_TEMP(0,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(14)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(14)<1> ubCURR_UV(16,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(14)<1> wDIFF_TEMPORAL(14)<16;16,1> ubCURR_UV(16,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(15)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(15)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(17,2)<8;8,1> -uwCURBE_TEMP(0,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(17,10)<8;8,1> -uwCURBE_TEMP(0,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(17,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,240)<8;8,1> uwCURBE_TEMP(0,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,248)<8;8,1> uwCURBE_TEMP(0,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(15)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(15)<1> ubCURR_UV(17,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(15)<1> wDIFF_TEMPORAL(15)<16;16,1> ubCURR_UV(17,2)<16;16,1>
 
 
//16x4 to 8x4 - Second 16 lines
add (16) uwDIFF_TEMPORAL_SUM4x4(0)<1> uwDIFF_TEMPORAL_SUM4x4(0,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(0,2)<4;2,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(1)<1> uwDIFF_TEMPORAL_SUM4x4(2,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(2,2)<4;2,1>
 
//8x4 to 4x4 - Second 16 lines
add (16) uwDIFF_TEMPORAL_SUM4x4_FINAL(1)<1> uwDIFF_TEMPORAL_SUM4x4(0,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(0,2)<4;2,1> { AccWrEn }
 
//Find if block is motion block - Second 16 lines
cmp.g.f1.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_FINAL(1)<16;16,1> r61.26<0;2,1>:ub
 
//Move TEMPORAL_SUM4x4 for SIMD16 use later.
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,0)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,2)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,4)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,6)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,8)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,10)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,12)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,14)<0;2,1>
 
//Pick Appropriate Weight History Based on motion. - Second 16 lines
(-f1.0) mov (16) uwCURBE_TEMP(1)<1> uwCURBE_TEMP(3)<16;16,1>
 
//Actual DN - Second 16 lines
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(16)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(16)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(22,2)<8;8,1> -uwCURBE_TEMP(1,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(22,10)<8;8,1> -uwCURBE_TEMP(1,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(22,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,0)<8;8,1> uwCURBE_TEMP(1,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,8)<8;8,1> uwCURBE_TEMP(1,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(16)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(16)<1> ubCURR_UV(22,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(16)<1> wDIFF_TEMPORAL(16)<16;16,1> ubCURR_UV(22,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(17)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(17)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(23,2)<8;8,1> -uwCURBE_TEMP(1,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(23,10)<8;8,1> -uwCURBE_TEMP(1,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(23,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,16)<8;8,1> uwCURBE_TEMP(1,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,24)<8;8,1> uwCURBE_TEMP(1,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(17)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(17)<1> ubCURR_UV(23,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(17)<1> wDIFF_TEMPORAL(17)<16;16,1> ubCURR_UV(23,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(18)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(18)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(24,2)<8;8,1> -uwCURBE_TEMP(1,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(24,10)<8;8,1> -uwCURBE_TEMP(1,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(24,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,32)<8;8,1> uwCURBE_TEMP(1,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,40)<8;8,1> uwCURBE_TEMP(1,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(18)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(18)<1> ubCURR_UV(24,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(18)<1> wDIFF_TEMPORAL(18)<16;16,1> ubCURR_UV(24,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(19)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(19)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(25,2)<8;8,1> -uwCURBE_TEMP(1,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(25,10)<8;8,1> -uwCURBE_TEMP(1,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(25,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,48)<8;8,1> uwCURBE_TEMP(1,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,56)<8;8,1> uwCURBE_TEMP(1,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(19)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(19)<1> ubCURR_UV(25,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(19)<1> wDIFF_TEMPORAL(19)<16;16,1> ubCURR_UV(25,2)<16;16,1>
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(20)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(20)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(26,2)<8;8,1> -uwCURBE_TEMP(1,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(26,10)<8;8,1> -uwCURBE_TEMP(1,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(26,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,64)<8;8,1> uwCURBE_TEMP(1,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,72)<8;8,1> uwCURBE_TEMP(1,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(20)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(20)<1> ubCURR_UV(26,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(20)<1> wDIFF_TEMPORAL(20)<16;16,1> ubCURR_UV(26,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(21)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(21)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(27,2)<8;8,1> -uwCURBE_TEMP(1,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(27,10)<8;8,1> -uwCURBE_TEMP(1,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(27,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,80)<8;8,1> uwCURBE_TEMP(1,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,88)<8;8,1> uwCURBE_TEMP(1,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(21)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(21)<1> ubCURR_UV(27,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(21)<1> wDIFF_TEMPORAL(21)<16;16,1> ubCURR_UV(27,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(22)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(22)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(28,2)<8;8,1> -uwCURBE_TEMP(1,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(28,10)<8;8,1> -uwCURBE_TEMP(1,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(28,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,96)<8;8,1> uwCURBE_TEMP(1,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,104)<8;8,1> uwCURBE_TEMP(1,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(22)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(22)<1> ubCURR_UV(28,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(22)<1> wDIFF_TEMPORAL(22)<16;16,1> ubCURR_UV(28,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(23)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(23)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(29,2)<8;8,1> -uwCURBE_TEMP(1,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(29,10)<8;8,1> -uwCURBE_TEMP(1,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(29,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,112)<8;8,1> uwCURBE_TEMP(1,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,120)<8;8,1> uwCURBE_TEMP(1,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(23)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(23)<1> ubCURR_UV(29,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(23)<1> wDIFF_TEMPORAL(23)<16;16,1> ubCURR_UV(29,2)<16;16,1>
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(24)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(24)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(30,2)<8;8,1> -uwCURBE_TEMP(1,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(30,10)<8;8,1> -uwCURBE_TEMP(1,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(30,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,128)<8;8,1> uwCURBE_TEMP(1,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,136)<8;8,1> uwCURBE_TEMP(1,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(24)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(24)<1> ubCURR_UV(30,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(24)<1> wDIFF_TEMPORAL(24)<16;16,1> ubCURR_UV(30,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(25)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(25)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(31,2)<8;8,1> -uwCURBE_TEMP(1,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(31,10)<8;8,1> -uwCURBE_TEMP(1,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(31,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,144)<8;8,1> uwCURBE_TEMP(1,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,152)<8;8,1> uwCURBE_TEMP(1,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(25)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(25)<1> ubCURR_UV(31,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(25)<1> wDIFF_TEMPORAL(25)<16;16,1> ubCURR_UV(31,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(26)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(26)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(32,2)<8;8,1> -uwCURBE_TEMP(1,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(32,10)<8;8,1> -uwCURBE_TEMP(1,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(32,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,160)<8;8,1> uwCURBE_TEMP(1,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,168)<8;8,1> uwCURBE_TEMP(1,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(26)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(26)<1> ubCURR_UV(32,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(26)<1> wDIFF_TEMPORAL(26)<16;16,1> ubCURR_UV(32,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(27)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(27)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(33,2)<8;8,1> -uwCURBE_TEMP(1,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(33,10)<8;8,1> -uwCURBE_TEMP(1,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(33,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,176)<8;8,1> uwCURBE_TEMP(1,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,184)<8;8,1> uwCURBE_TEMP(1,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(27)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(27)<1> ubCURR_UV(33,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(27)<1> wDIFF_TEMPORAL(27)<16;16,1> ubCURR_UV(33,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(28)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(28)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(34,2)<8;8,1> -uwCURBE_TEMP(1,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(34,10)<8;8,1> -uwCURBE_TEMP(1,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(34,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,192)<8;8,1> uwCURBE_TEMP(1,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,200)<8;8,1> uwCURBE_TEMP(1,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(28)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(28)<1> ubCURR_UV(34,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(28)<1> wDIFF_TEMPORAL(28)<16;16,1> ubCURR_UV(34,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wCURBE_TEMP(4)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wCURBE_TEMP(4)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(35,2)<8;8,1> -uwCURBE_TEMP(1,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(35,10)<8;8,1> -uwCURBE_TEMP(1,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(35,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,208)<8;8,1> uwCURBE_TEMP(1,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,216)<8;8,1> uwCURBE_TEMP(1,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wCURBE_TEMP(4)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wCURBE_TEMP(4)<1> ubCURR_UV(35,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wCURBE_TEMP(4)<1> wCURBE_TEMP(4)<16;16,1> ubCURR_UV(35,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wCURBE_TEMP(5)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wCURBE_TEMP(5)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(36,2)<8;8,1> -uwCURBE_TEMP(1,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(36,10)<8;8,1> -uwCURBE_TEMP(1,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(36,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,224)<8;8,1> uwCURBE_TEMP(1,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,232)<8;8,1> uwCURBE_TEMP(1,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wCURBE_TEMP(5)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wCURBE_TEMP(5)<1> ubCURR_UV(36,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wCURBE_TEMP(5)<1> wCURBE_TEMP(5)<16;16,1> ubCURR_UV(36,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wCURBE_TEMP(6)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wCURBE_TEMP(6)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(37,2)<8;8,1> -uwCURBE_TEMP(1,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(37,10)<8;8,1> -uwCURBE_TEMP(1,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(37,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,240)<8;8,1> uwCURBE_TEMP(1,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,248)<8;8,1> uwCURBE_TEMP(1,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wCURBE_TEMP(6)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wCURBE_TEMP(6)<1> ubCURR_UV(37,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wCURBE_TEMP(6)<1> wCURBE_TEMP(6)<16;16,1> ubCURR_UV(37,2)<16;16,1>
 
//Pack Weight History WORD -> BYTE
mov (16) ubCURBE_TEMP(3,0)<1> ubCURBE_TEMP(0)<32;16,2>
mov (16) ubCURBE_TEMP(3,16)<1> ubCURBE_TEMP(1)<32;16,2>
 
 
 
//Module Name : DN_UV_Compute_BNE_UV
//Author : Tatiya, Rupesh
//Description : Computes minimum SOAD for each 16x4 block.
 
cmp.l.f0.0 (8) null:w uwSOAD_MIN_8x4(0,12)<16;4,1> uwSOAD_MIN_8x4(2,12)<16;4,1>
(f0.0)sel (8) uwCURBE_TEMP(1,0)<1> uwSOAD_MIN_8x4(0,12)<16;4,1> uwSOAD_MIN_8x4(2,12)<16;4,1>
 
mov (8) ubCURBE_TEMP(1)<1> ubCURBE_TEMP(1)<16;8,2>
 
 
 
//Module Name : DN_UV_YUY2_Pack_Denoised_UV
//Name : Tatiya, Rupesh
//Description : Pack UV denoised data based on YUY2 input.
 
 
 
//Module Name : DN_UV_Pack_Denoised_UV
//Name : Tatiya, Rupesh
//Description : Pack UV denoised data based on PL2/PL3/PA.
 
 
add (1) a0.0<1>:uw r54.21<0;1,0>:ub 2976:w
add (1) a0.1<1>:uw r54.21<0;1,0>:ub 3264:w
add (1) a0.2<1>:uw r54.21<0;1,0>:ub 3552:w
add (1) a0.3<1>:uw r54.21<0;1,0>:ub 3840:w
 
//First 8 lines.
mov (16) r[a0.0, 0]<2>:ub ubDIFF_TEMPORAL(0)<32;16,2>
mov (16) r[a0.0, 32]<2>:ub ubDIFF_TEMPORAL(1)<32;16,2>
mov (16) r[a0.0, 64]<2>:ub ubDIFF_TEMPORAL(2)<32;16,2>
mov (16) r[a0.0, 96]<2>:ub ubDIFF_TEMPORAL(3)<32;16,2>
mov (16) r[a0.0, 128]<2>:ub ubDIFF_TEMPORAL(4)<32;16,2>
mov (16) r[a0.0, 160]<2>:ub ubDIFF_TEMPORAL(5)<32;16,2>
mov (16) r[a0.0, 192]<2>:ub ubDIFF_TEMPORAL(6)<32;16,2>
mov (16) r[a0.0, 224]<2>:ub ubDIFF_TEMPORAL(7)<32;16,2>
 
//Second 8 lines
mov (16) r[a0.1, 0]<2>:ub ubDIFF_TEMPORAL(8)<32;16,2>
mov (16) r[a0.1, 32]<2>:ub ubDIFF_TEMPORAL(9)<32;16,2>
mov (16) r[a0.1, 64]<2>:ub ubDIFF_TEMPORAL(10)<32;16,2>
mov (16) r[a0.1, 96]<2>:ub ubDIFF_TEMPORAL(11)<32;16,2>
mov (16) r[a0.1, 128]<2>:ub ubDIFF_TEMPORAL(12)<32;16,2>
mov (16) r[a0.1, 160]<2>:ub ubDIFF_TEMPORAL(13)<32;16,2>
mov (16) r[a0.1, 192]<2>:ub ubDIFF_TEMPORAL(14)<32;16,2>
mov (16) r[a0.1, 224]<2>:ub ubDIFF_TEMPORAL(15)<32;16,2>
 
//Third 8 lines
mov (16) r[a0.2, 0]<2>:ub ubDIFF_TEMPORAL(16)<32;16,2>
mov (16) r[a0.2, 32]<2>:ub ubDIFF_TEMPORAL(17)<32;16,2>
mov (16) r[a0.2, 64]<2>:ub ubDIFF_TEMPORAL(18)<32;16,2>
mov (16) r[a0.2, 96]<2>:ub ubDIFF_TEMPORAL(19)<32;16,2>
mov (16) r[a0.2, 128]<2>:ub ubDIFF_TEMPORAL(20)<32;16,2>
mov (16) r[a0.2, 160]<2>:ub ubDIFF_TEMPORAL(21)<32;16,2>
mov (16) r[a0.2, 192]<2>:ub ubDIFF_TEMPORAL(22)<32;16,2>
mov (16) r[a0.2, 224]<2>:ub ubDIFF_TEMPORAL(23)<32;16,2>
 
//Fourth 8 lines
//5 lines first
mov (16) r[a0.3, 0]<2>:ub ubDIFF_TEMPORAL(24)<32;16,2>
mov (16) r[a0.3, 32]<2>:ub ubDIFF_TEMPORAL(25)<32;16,2>
mov (16) r[a0.3, 64]<2>:ub ubDIFF_TEMPORAL(26)<32;16,2>
mov (16) r[a0.3, 96]<2>:ub ubDIFF_TEMPORAL(27)<32;16,2>
mov (16) r[a0.3, 128]<2>:ub ubDIFF_TEMPORAL(28)<32;16,2>
 
//3 more lines
mov (16) r[a0.3, 160]<2>:ub ubCURBE_TEMP(4)<32;16,2>
mov (16) r[a0.3, 192]<2>:ub ubCURBE_TEMP(5)<32;16,2>
mov (16) r[a0.3, 224]<2>:ub ubCURBE_TEMP(6)<32;16,2>
 
 
//TODO - See if History saving can be combined with Curr Frame Save. - rT
 
 
//Module Name : DN_UV_Save_Hist_UV
//Author : Tatiya, Rupesh
//Description : Saves DN history for UV data.
 
mov (8) r3.0<1>:ud r0.0<8;8,1>:ud
mov (2) r3.0<1>:d r62.12<2;2,1>:w
mov (1) r3.2<1>:d 0x30007:ud
 
send (8) null<1>:d r3 0x5 0x40A8021:ud
 
 
 
//Module Name : DN_UV_Save_BNE_UV
//Author : Tatiya, Rupesh
//Description : Saves BNE values for 16x16 U and 16x16 V.
 
mov (8) r1.0<1>:ud r0.0<8;8,1>:ud
mov (2) r1.0<1>:d r63.12<2;2,1>:w
mov (1) r1.2<1>:d 0x10003:ud
 
send (8) null<1>:d r1 0x5 0x40A8023:ud
 
 
 
//Module Name : DN_UV_YUY2_Save_Curr_Frame_YUV
//Author : Tatiya, Rupesh
 
 
 
//Module Name : DN_UV_Load_Curr_Frame_Y
//Author : Tatiya, Rupesh
//Description : Saves Y or YUY2 of Current frame.
 
 
 
 
mov (8) acc0.0<1>:ud r0.0<8;8,1>:ud
shl (1) r62.10<1>:w r62.10<0;1,0>:w 1:w
mov (1) acc0.0<1>:d r62.10<0;1,0>:w
mov (1) acc0.1<1>:d r62.11<0;1,0>:w
 
mov (1) acc0.2<1>:d 0x7001F:ud
 
mov (8) r92.0<1>:ud acc0.0<8;8,1>:ud
 
mov (8) r101.0<1>:ud acc0.0<8;8,1>:ud
mov (8) r110.0<1>:ud acc0.0<8;8,1>:ud
mov (8) r119.0<1>:ud acc0.0<8;8,1>:ud
 
add (1) r101.1<1>:d acc0.1<0;1,0>:d 8:d
 
add (1) r110.0<1>:d acc0.0<0;1,0>:d 32:d
 
add (1) r119.0<1>:d acc0.0<0;1,0>:d 32:d
add (1) r119.1<1>:d acc0.1<0;1,0>:d 8:d
 
send (8) null<1>:d r92 0x5 0x120A8018:ud
send (8) null<1>:d r101 0x5 0x120A8018:ud
send (8) null<1>:d r110 0x5 0x120A8018:ud
send (8) null<1>:d r119 0x5 0x120A8018:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
//All sub-routines here
 
 
// Module Name : Noise_Detection
// Author : Tatiya, Rupesh
// Description : Performs noise detection on 32 pixels of U (8x4) and 32 pixels of V (8x4).
 
DN_UV_NOISE_DETECTION_UV:
 
// Find Field Block Median
//
// Purpose : Find the median value of the nine pixels in the same field
// which are centered at current pixel.
//
// Works on 9 pixels centered at the current pixel
// NOTE: pixels are within same field.
// v4 - current pixel
//
// v2 v1 v0
// * * * <--- Different field - not used
// v5 v4 v3
// * * * <--- Different field - not used
// v8 v7 v6
 
// Algorithm to find median modifies the data.
// Copy the data needed to calculate median so the original source data stays intact.
//
 
//TODO - Change Interleaved implementation to separated one if - , does not work on predication. - rT
 
//Delete Later - rT
//mov (1) pCUR_UV:uw 52*32:uw
 
// v0
mov (16) ubMEDIAN_TEMP(0,0)<1> r[a0.0,0]<16;16,1>
// v0
mov (16) ubMEDIAN_TEMP(0,16)<1> r[a0.0,32]<16;16,1>
// v1
mov (16) ubMEDIAN_TEMP(1,0)<1> r[a0.0,2]<16;16,1>
// v1
mov (16) ubMEDIAN_TEMP(1,16)<1> r[a0.0,34]<16;16,1>
// v2
mov (16) ubMEDIAN_TEMP(2,0)<1> r[a0.0,4]<16;16,1>
// v2
mov (16) ubMEDIAN_TEMP(2,16)<1> r[a0.0,36]<16;16,1>
// v3
mov (16) ubMEDIAN_TEMP(3,0)<1> r[a0.0,64]<16;16,1>
// v3
mov (16) ubMEDIAN_TEMP(3,16)<1> r[a0.0,96]<16;16,1>
// v4
mov (16) ubMEDIAN_TEMP(4,0)<1> r[a0.0,66]<16;16,1>
// v4
mov (16) ubMEDIAN_TEMP(4,16)<1> r[a0.0,98]<16;16,1>
// v5
mov (16) ubMEDIAN_TEMP(5,0)<1> r[a0.0,68]<16;16,1>
// v5
mov (16) ubMEDIAN_TEMP(5,16)<1> r[a0.0,100]<16;16,1>
// v6
mov (16) ubMEDIAN_TEMP(6,0)<1> r[a0.0,128]<16;16,1>
// v6
mov (16) ubMEDIAN_TEMP(6,16)<1> r[a0.0,160]<16;16,1>
// v7
mov (16) ubMEDIAN_TEMP(7,0)<1> r[a0.0,130]<16;16,1>
// v7
mov (16) ubMEDIAN_TEMP(7,16)<1> r[a0.0,162]<16;16,1>
// v8
mov (16) ubMEDIAN_TEMP(8,0)<1> r[a0.0,132]<16;16,1>
// v8
mov (16) ubMEDIAN_TEMP(8,16)<1> r[a0.0,164]<16;16,1>
 
//TODO - Optimize one instruction here.
add (1) a0.0:uw a0.0<0;1,0>:uw 64:uw
// v0
mov (16) ubMEDIAN_TEMP(9,0)<1> r[a0.0,0]<16;16,1>
// v0
mov (16) ubMEDIAN_TEMP(9,16)<1> r[a0.0,32]<16;16,1>
// v1
mov (16) ubMEDIAN_TEMP(10,0)<1> r[a0.0,2]<16;16,1>
// v1
mov (16) ubMEDIAN_TEMP(10,16)<1> r[a0.0,34]<16;16,1>
// v2
mov (16) ubMEDIAN_TEMP(11,0)<1> r[a0.0,4]<16;16,1>
// v2
mov (16) ubMEDIAN_TEMP(11,16)<1> r[a0.0,36]<16;16,1>
// v3
mov (16) ubMEDIAN_TEMP(12,0)<1> r[a0.0,64]<16;16,1>
// v3
mov (16) ubMEDIAN_TEMP(12,16)<1> r[a0.0,96]<16;16,1>
// v4
mov (16) ubMEDIAN_TEMP(13,0)<1> r[a0.0,66]<16;16,1>
// v4
mov (16) ubMEDIAN_TEMP(13,16)<1> r[a0.0,98]<16;16,1>
// v5
mov (16) ubMEDIAN_TEMP(14,0)<1> r[a0.0,68]<16;16,1>
// v5
mov (16) ubMEDIAN_TEMP(14,16)<1> r[a0.0,100]<16;16,1>
// v6
mov (16) ubMEDIAN_TEMP(15,0)<1> r[a0.0,128]<16;16,1>
// v6
mov (16) ubMEDIAN_TEMP(15,16)<1> r[a0.0,160]<16;16,1>
// v7
mov (16) ubMEDIAN_TEMP(16,0)<1> r[a0.0,130]<16;16,1>
// v7
mov (16) ubMEDIAN_TEMP(16,16)<1> r[a0.0,162]<16;16,1>
// v8
mov (16) ubMEDIAN_TEMP(17,0)<1> r[a0.0,132]<16;16,1>
// v8
mov (16) ubMEDIAN_TEMP(17,16)<1> r[a0.0,164]<16;16,1>
 
//TODO - Optimize one instruction here.
add (1) a0.0:uw a0.0<0;1,0>:uw 64:uw
 
// MedianSwap
//
// MedianSwap(inOutLeft, inOutRight)
// {
// if (inOutLeft > inOutRight)
// {
// temp = inOutLeft
// inOutLeft = inOutRight
// inOutRight = temp
// }
// }
 
// MedianSwap(v1, v2) - U
// MedianSwap(v4, v5) - U
// MedianSwap(v1, v2) - V
// MedianSwap(v4, v5) - V
 
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(1,0)<32;16,2> ubMEDIAN_TEMP(2,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(5,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(1,1)<32;16,2> ubMEDIAN_TEMP(2,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(5,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(1,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(4,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(1,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(1,0)<2> ubMEDIAN_TEMP(2,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(5,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(1,1)<2> ubMEDIAN_TEMP(2,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(5,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(2,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(5,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(2,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(5,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v7, v8) - U
// MedianSwap(v0, v1) - U
// MedianSwap(v7, v8) - V
// MedianSwap(v0, v1) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(7,0)<32;16,2> ubMEDIAN_TEMP(8,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(0,0)<32;16,2> ubMEDIAN_TEMP(1,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(7,1)<32;16,2> ubMEDIAN_TEMP(8,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(0,1)<32;16,2> ubMEDIAN_TEMP(1,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(7,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(0,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(7,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(0,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(7,0)<2> ubMEDIAN_TEMP(8,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(0,0)<2> ubMEDIAN_TEMP(1,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(7,1)<2> ubMEDIAN_TEMP(8,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(0,1)<2> ubMEDIAN_TEMP(1,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(8,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(1,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(8,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(1,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v3, v4) - U
// MedianSwap(v6, v7) - U
// MedianSwap(v3, v4) - V
// MedianSwap(v6, v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(3,0)<32;16,2> ubMEDIAN_TEMP(4,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(6,0)<32;16,2> ubMEDIAN_TEMP(7,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(3,1)<32;16,2> ubMEDIAN_TEMP(4,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(6,1)<32;16,2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(3,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(6,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(3,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(6,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(3,0)<2> ubMEDIAN_TEMP(4,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(6,0)<2> ubMEDIAN_TEMP(7,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(3,1)<2> ubMEDIAN_TEMP(4,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(6,1)<2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(4,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(7,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(4,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(7,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v1, v2) - U
// MedianSwap(v4, v5) - U
// MedianSwap(v1, v2) - V
// MedianSwap(v4, v5) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(1,0)<32;16,2> ubMEDIAN_TEMP(2,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(5,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(1,1)<32;16,2> ubMEDIAN_TEMP(2,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(5,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(1,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(4,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(1,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(1,0)<2> ubMEDIAN_TEMP(2,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(5,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(1,1)<2> ubMEDIAN_TEMP(2,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(5,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(2,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(5,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(2,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(5,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v7, v8) - U
// MedianSwap(v0, v3) - U
// MedianSwap(v7, v8) - V
// MedianSwap(v0, v3) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(7,0)<32;16,2> ubMEDIAN_TEMP(8,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(0,0)<32;16,2> ubMEDIAN_TEMP(3,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(7,1)<32;16,2> ubMEDIAN_TEMP(8,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(0,1)<32;16,2> ubMEDIAN_TEMP(3,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(7,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(0,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(7,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(0,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(7,0)<2> ubMEDIAN_TEMP(8,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(0,0)<2> ubMEDIAN_TEMP(3,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(7,1)<2> ubMEDIAN_TEMP(8,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(0,1)<2> ubMEDIAN_TEMP(3,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(8,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(3,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(8,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(3,1)<2> ubTEMP1(1,16)<16;16,1>
 
// NOTE:
// Compare v0 to v6 to find the minimum.
// Store the minimum for future use.
//TODO - Find if MIN is needed.
//cmp.l.f0.0 (16) null:w ubMEDIAN_TEMP(%1+0,0)<32;16,2> ubMEDIAN_TEMP(%1+6,0)<32;16,2>
//cmp.l.f1.0 (16) null:w ubMEDIAN_TEMP(%1+0,1)<32;16,2> ubMEDIAN_TEMP(%1+6,1)<32;16,2>
//(f0.0) mov (16) ubCURR_MIN(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+0,0)<32;16,2>
//(f1.0) mov (16) ubCURR_MIN(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+0,1)<32;16,2>
//(-f0.0) mov (16) ubCURR_MIN(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+6,0)<32;16,2>
//(-f1.0) mov (16) ubCURR_MIN(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+6,1)<32;16,2>
 
// MedianSwap(v5, v8) - U
// MedianSwap(v4, v7) - U
// MedianSwap(v5, v8) - V
// MedianSwap(v4, v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(5,0)<32;16,2> ubMEDIAN_TEMP(8,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(7,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(5,1)<32;16,2> ubMEDIAN_TEMP(8,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(5,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(4,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(5,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(5,0)<2> ubMEDIAN_TEMP(8,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(7,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(5,1)<2> ubMEDIAN_TEMP(8,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(8,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(7,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(8,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(7,1)<2> ubTEMP1(1,16)<16;16,1>
 
// NOTE:
// Compare v2 to v8 to find the maximum.
// Store the maximum for future use.
//TODO - Find if MAX is needed.
// cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(%1+2,0)<32;16,2> ubMEDIAN_TEMP(%1+8,0)<32;16,2>
// cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(%1+2,1)<32;16,2> ubMEDIAN_TEMP(%1+8,1)<32;16,2>
//(f0.0) mov (16) ubCURR_MAX(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+2,0)<32;16,2>
//(f1.0) mov (16) ubCURR_MAX(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+2,1)<32;16,2>
//(-f0.0) mov (16) ubCURR_MAX(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+8,0)<32;16,2>
//(-f1.0) mov (16) ubCURR_MAX(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+8,1)<32;16,2>
 
// MedianSwap(v3, v6) - U
// MedianSwap(v1, v4) - U
// MedianSwap(v3, v6) - V
// MedianSwap(v1, v4) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(3,0)<32;16,2> ubMEDIAN_TEMP(6,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(1,0)<32;16,2> ubMEDIAN_TEMP(4,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(3,1)<32;16,2> ubMEDIAN_TEMP(6,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(1,1)<32;16,2> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(6,0)<2> ubMEDIAN_TEMP(3,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(1,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(6,1)<2> ubMEDIAN_TEMP(3,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(1,1)<32;16,2>
 
// MedianSwap(v2,v5) - U
// MedianSwap(v4,v7) - U
// MedianSwap(v2,v5) - V
// MedianSwap(v4,v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(2,0)<32;16,2> ubMEDIAN_TEMP(5,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(7,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(2,1)<32;16,2> ubMEDIAN_TEMP(5,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(2,0)<2> ubMEDIAN_TEMP(5,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(7,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(2,1)<2> ubMEDIAN_TEMP(5,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
// MedianSwap(v4,v2) - U
// MedianSwap(v4,v2) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(2,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(2,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(4,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(2,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(2,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(2,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(2,1)<2> ubTEMP1(0,16)<16;16,1>
 
// MedianSwap(v6,v4) - U
// MedianSwap(v6,v4) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(6,0)<32;16,2> ubMEDIAN_TEMP(4,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(6,1)<32;16,2> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(6,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(6,1)<32;16,2>
 
// MedianSwap(v4,v2) - U
// MedianSwap(v4,v2) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(2,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(2,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(2,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(2,1)<32;16,2>
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(10,0)<32;16,2> ubMEDIAN_TEMP(11,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(14,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(10,1)<32;16,2> ubMEDIAN_TEMP(11,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(14,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(10,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(13,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(10,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(10,0)<2> ubMEDIAN_TEMP(11,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(14,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(10,1)<2> ubMEDIAN_TEMP(11,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(14,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(11,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(14,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(11,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(14,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v7, v8) - U
// MedianSwap(v0, v1) - U
// MedianSwap(v7, v8) - V
// MedianSwap(v0, v1) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(16,0)<32;16,2> ubMEDIAN_TEMP(17,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(9,0)<32;16,2> ubMEDIAN_TEMP(10,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(16,1)<32;16,2> ubMEDIAN_TEMP(17,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(9,1)<32;16,2> ubMEDIAN_TEMP(10,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(16,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(9,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(16,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(9,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(16,0)<2> ubMEDIAN_TEMP(17,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(9,0)<2> ubMEDIAN_TEMP(10,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(16,1)<2> ubMEDIAN_TEMP(17,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(9,1)<2> ubMEDIAN_TEMP(10,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(17,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(10,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(17,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(10,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v3, v4) - U
// MedianSwap(v6, v7) - U
// MedianSwap(v3, v4) - V
// MedianSwap(v6, v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(12,0)<32;16,2> ubMEDIAN_TEMP(13,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(15,0)<32;16,2> ubMEDIAN_TEMP(16,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(12,1)<32;16,2> ubMEDIAN_TEMP(13,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(15,1)<32;16,2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(12,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(15,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(12,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(15,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(12,0)<2> ubMEDIAN_TEMP(13,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(15,0)<2> ubMEDIAN_TEMP(16,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(12,1)<2> ubMEDIAN_TEMP(13,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(15,1)<2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(13,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(16,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(13,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(16,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v1, v2) - U
// MedianSwap(v4, v5) - U
// MedianSwap(v1, v2) - V
// MedianSwap(v4, v5) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(10,0)<32;16,2> ubMEDIAN_TEMP(11,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(14,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(10,1)<32;16,2> ubMEDIAN_TEMP(11,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(14,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(10,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(13,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(10,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(10,0)<2> ubMEDIAN_TEMP(11,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(14,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(10,1)<2> ubMEDIAN_TEMP(11,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(14,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(11,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(14,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(11,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(14,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v7, v8) - U
// MedianSwap(v0, v3) - U
// MedianSwap(v7, v8) - V
// MedianSwap(v0, v3) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(16,0)<32;16,2> ubMEDIAN_TEMP(17,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(9,0)<32;16,2> ubMEDIAN_TEMP(12,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(16,1)<32;16,2> ubMEDIAN_TEMP(17,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(9,1)<32;16,2> ubMEDIAN_TEMP(12,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(16,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(9,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(16,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(9,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(16,0)<2> ubMEDIAN_TEMP(17,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(9,0)<2> ubMEDIAN_TEMP(12,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(16,1)<2> ubMEDIAN_TEMP(17,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(9,1)<2> ubMEDIAN_TEMP(12,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(17,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(12,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(17,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(12,1)<2> ubTEMP1(1,16)<16;16,1>
 
// NOTE:
// Compare v0 to v6 to find the minimum.
// Store the minimum for future use.
//TODO - Find if MIN is needed.
//cmp.l.f0.0 (16) null:w ubMEDIAN_TEMP(%1+0,0)<32;16,2> ubMEDIAN_TEMP(%1+6,0)<32;16,2>
//cmp.l.f1.0 (16) null:w ubMEDIAN_TEMP(%1+0,1)<32;16,2> ubMEDIAN_TEMP(%1+6,1)<32;16,2>
//(f0.0) mov (16) ubCURR_MIN(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+0,0)<32;16,2>
//(f1.0) mov (16) ubCURR_MIN(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+0,1)<32;16,2>
//(-f0.0) mov (16) ubCURR_MIN(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+6,0)<32;16,2>
//(-f1.0) mov (16) ubCURR_MIN(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+6,1)<32;16,2>
 
// MedianSwap(v5, v8) - U
// MedianSwap(v4, v7) - U
// MedianSwap(v5, v8) - V
// MedianSwap(v4, v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(14,0)<32;16,2> ubMEDIAN_TEMP(17,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(16,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(14,1)<32;16,2> ubMEDIAN_TEMP(17,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(14,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(13,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(14,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(14,0)<2> ubMEDIAN_TEMP(17,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(16,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(14,1)<2> ubMEDIAN_TEMP(17,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(17,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(16,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(17,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(16,1)<2> ubTEMP1(1,16)<16;16,1>
 
// NOTE:
// Compare v2 to v8 to find the maximum.
// Store the maximum for future use.
//TODO - Find if MAX is needed.
// cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(%1+2,0)<32;16,2> ubMEDIAN_TEMP(%1+8,0)<32;16,2>
// cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(%1+2,1)<32;16,2> ubMEDIAN_TEMP(%1+8,1)<32;16,2>
//(f0.0) mov (16) ubCURR_MAX(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+2,0)<32;16,2>
//(f1.0) mov (16) ubCURR_MAX(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+2,1)<32;16,2>
//(-f0.0) mov (16) ubCURR_MAX(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+8,0)<32;16,2>
//(-f1.0) mov (16) ubCURR_MAX(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+8,1)<32;16,2>
 
// MedianSwap(v3, v6) - U
// MedianSwap(v1, v4) - U
// MedianSwap(v3, v6) - V
// MedianSwap(v1, v4) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(12,0)<32;16,2> ubMEDIAN_TEMP(15,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(10,0)<32;16,2> ubMEDIAN_TEMP(13,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(12,1)<32;16,2> ubMEDIAN_TEMP(15,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(10,1)<32;16,2> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(15,0)<2> ubMEDIAN_TEMP(12,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(10,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(15,1)<2> ubMEDIAN_TEMP(12,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(10,1)<32;16,2>
 
// MedianSwap(v2,v5) - U
// MedianSwap(v4,v7) - U
// MedianSwap(v2,v5) - V
// MedianSwap(v4,v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(11,0)<32;16,2> ubMEDIAN_TEMP(14,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(16,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(11,1)<32;16,2> ubMEDIAN_TEMP(14,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(11,0)<2> ubMEDIAN_TEMP(14,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(16,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(11,1)<2> ubMEDIAN_TEMP(14,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
// MedianSwap(v4,v2) - U
// MedianSwap(v4,v2) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(11,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(11,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(13,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(11,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(11,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(11,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(11,1)<2> ubTEMP1(0,16)<16;16,1>
 
// MedianSwap(v6,v4) - U
// MedianSwap(v6,v4) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(15,0)<32;16,2> ubMEDIAN_TEMP(13,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(15,1)<32;16,2> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(15,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(15,1)<32;16,2>
 
// MedianSwap(v4,v2) - U
// MedianSwap(v4,v2) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(11,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(11,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(11,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(11,1)<32;16,2>
 
// Sobel Value calculation for the current pixel v4
// v2 v1 v0
// * * * <--- Different field - not used
// v5 v4 v3
// * * * <--- Different field - not used
// v8 v7 v6
//
// Gx = -v0 - 2*v3 - v6 + v2 + 2*v5 + v8
// Gy = v0 + 2*v1 + v2 - v6 - 2*v7 - v8
//
// Sobel = (|Gx| + |Gy|) >> 3
 
//TODO - Change Later - rT
add (1) a0.0:uw a0.0<0;1,0>:uw -128:uw
 
// - 2 * v3
mul (16) acc0.0<1>:w r[a0.0,64]<16;16,1>:ub -2:w
// + v8
mac (16) acc0.0<1>:w r[a0.0,132]<16;16,1>:ub 1:w
// - v0
mac (16) acc0.0<1>:w r[a0.0,0]<16;16,1>:ub -1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,128]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,4]<16;16,1>:ub 1:w
// + 2 * v5
mac (16) wSOBEL_X(0)<1> r[a0.0,68]<16;16,1>:ub 2:w
// - 2 * v3
mul (16) acc0.0<1>:w r[a0.0,96]<16;16,1>:ub -2:w
// + v8
mac (16) acc0.0<1>:w r[a0.0,164]<16;16,1>:ub 1:w
// - v0
mac (16) acc0.0<1>:w r[a0.0,32]<16;16,1>:ub -1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,160]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,36]<16;16,1>:ub 1:w
// + 2 * v5
mac (16) wSOBEL_X(1)<1> r[a0.0,100]<16;16,1>:ub 2:w
// - 2 * v3
mul (16) acc0.0<1>:w r[a0.0,128]<16;16,1>:ub -2:w
// + v8
mac (16) acc0.0<1>:w r[a0.0,196]<16;16,1>:ub 1:w
// - v0
mac (16) acc0.0<1>:w r[a0.0,64]<16;16,1>:ub -1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,192]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,68]<16;16,1>:ub 1:w
// + 2 * v5
mac (16) wSOBEL_X(2)<1> r[a0.0,132]<16;16,1>:ub 2:w
// - 2 * v3
mul (16) acc0.0<1>:w r[a0.0,160]<16;16,1>:ub -2:w
// + v8
mac (16) acc0.0<1>:w r[a0.0,228]<16;16,1>:ub 1:w
// - v0
mac (16) acc0.0<1>:w r[a0.0,96]<16;16,1>:ub -1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,224]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,100]<16;16,1>:ub 1:w
// + 2 * v5
mac (16) wSOBEL_X(3)<1> r[a0.0,164]<16;16,1>:ub 2:w
 
// + 2 * v1
mul (16) acc0.0<1>:w r[a0.0,2]<16;16,1>:ub 2:w
// + v0
mac (16) acc0.0<1>:w r[a0.0,0]<16;16,1>:ub 1:w
// - v8
mac (16) acc0.0<1>:w r[a0.0,132]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,4]<16;16,1>:ub 1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,128]<16;16,1>:ub -1:w
// - 2 * v7
mac (16) acc0.0<1>:w r[a0.0,130]<16;16,1>:ub -2:w
 
add (16) acc0.0<1>:uw (abs)acc0.0<16;16,1>:w (abs)wSOBEL_X(0)<16;16,1>
 
shr (16) uwSOBEL(0)<1> acc0.0<16;16,1>:uw 3:uw
// + 2 * v1
mul (16) acc0.0<1>:w r[a0.0,34]<16;16,1>:ub 2:w
// + v0
mac (16) acc0.0<1>:w r[a0.0,32]<16;16,1>:ub 1:w
// - v8
mac (16) acc0.0<1>:w r[a0.0,164]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,36]<16;16,1>:ub 1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,160]<16;16,1>:ub -1:w
// - 2 * v7
mac (16) acc0.0<1>:w r[a0.0,162]<16;16,1>:ub -2:w
 
add (16) acc0.0<1>:uw (abs)acc0.0<16;16,1>:w (abs)wSOBEL_X(1)<16;16,1>
 
shr (16) uwSOBEL(1)<1> acc0.0<16;16,1>:uw 3:uw
// + 2 * v1
mul (16) acc0.0<1>:w r[a0.0,66]<16;16,1>:ub 2:w
// + v0
mac (16) acc0.0<1>:w r[a0.0,64]<16;16,1>:ub 1:w
// - v8
mac (16) acc0.0<1>:w r[a0.0,196]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,68]<16;16,1>:ub 1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,192]<16;16,1>:ub -1:w
// - 2 * v7
mac (16) acc0.0<1>:w r[a0.0,194]<16;16,1>:ub -2:w
 
add (16) acc0.0<1>:uw (abs)acc0.0<16;16,1>:w (abs)wSOBEL_X(2)<16;16,1>
 
shr (16) uwSOBEL(2)<1> acc0.0<16;16,1>:uw 3:uw
// + 2 * v1
mul (16) acc0.0<1>:w r[a0.0,98]<16;16,1>:ub 2:w
// + v0
mac (16) acc0.0<1>:w r[a0.0,96]<16;16,1>:ub 1:w
// - v8
mac (16) acc0.0<1>:w r[a0.0,228]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,100]<16;16,1>:ub 1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,224]<16;16,1>:ub -1:w
// - 2 * v7
mac (16) acc0.0<1>:w r[a0.0,226]<16;16,1>:ub -2:w
 
add (16) acc0.0<1>:uw (abs)acc0.0<16;16,1>:w (abs)wSOBEL_X(3)<16;16,1>
 
shr (16) uwSOBEL(3)<1> acc0.0<16;16,1>:uw 3:uw
 
//Mov Median in CURBE_TEMP to free up temp space.
mov (16) ubMEDIAN(0,0)<1> ubMEDIAN_TEMP(4,0)<16;16,1>
mov (16) ubMEDIAN(0,16)<1> ubMEDIAN_TEMP(4,16)<16;16,1>
mov (16) ubMEDIAN(0,32)<1> ubMEDIAN_TEMP(13,0)<16;16,1>
mov (16) ubMEDIAN(0,48)<1> ubMEDIAN_TEMP(13,16)<16;16,1>
 
// Find:
// absDiff = abs(ubCurY - ubMedian)
// Find the difference between pixel and median value.
 
//Median is interleaved. So difference is also interleaved.
 
//------------------------------------------------------------------------------------------
//Process 16 U and 16 V pixels here and rest later.
// first row - v0,v1,v2
add (16) wDIFF(0)<1> r[a0.0,0]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(1)<1> r[a0.0,2]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(2)<1> r[a0.0,4]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
 
// second row - v3,v4,v5
add (16) wDIFF(3)<1> r[a0.0,64]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(4)<1> r[a0.0,66]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(5)<1> r[a0.0,68]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
 
// third row - v6,v7,v8
add (16) wDIFF(6)<1> r[a0.0,128]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(7)<1> r[a0.0,130]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(8)<1> r[a0.0,132]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
// first row - v0,v1,v2
add (16) wDIFF(9)<1> r[a0.0,32]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(10)<1> r[a0.0,34]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(11)<1> r[a0.0,36]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
 
// second row - v3,v4,v5
add (16) wDIFF(12)<1> r[a0.0,96]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(13)<1> r[a0.0,98]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(14)<1> r[a0.0,100]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
 
// third row - v6,v7,v8
add (16) wDIFF(15)<1> r[a0.0,160]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(16)<1> r[a0.0,162]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(17)<1> r[a0.0,164]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
 
//TODO - Change Later - rT
add (1) a0.0:uw a0.0<0;1,0>:uw 64:uw
 
// Find sum of all absolute differences AND
// maximum absolute difference for 16 U and 16 V here.
//First 2 rows of 8x4
//Compare 0-1, 2-3, 4-5, 6-7
cmp.g.f0.0 (16) null:uw (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
cmp.g.f0.1 (16) null:uw (abs)wDIFF(2)<16;16,1> (abs)wDIFF(3)<16;16,1>
cmp.g.f1.0 (16) null:uw (abs)wDIFF(4)<16;16,1> (abs)wDIFF(5)<16;16,1>
cmp.g.f1.1 (16) null:uw (abs)wDIFF(6)<16;16,1> (abs)wDIFF(7)<16;16,1>
 
//Calculate SAD
add (16) acc0.0<1>:uw (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(2)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(3)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(4)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(5)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(6)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(7)<16;16,1>
add (16) uwSOAD(0)<1> acc0.0<16;16,1>:uw (abs)wDIFF(8)<16;16,1>
 
(f0.0) sel (16) uwCURBE_TEMP(0)<1> (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
(f0.1) sel (16) uwCURBE_TEMP(1)<1> (abs)wDIFF(2)<16;16,1> (abs)wDIFF(3)<16;16,1>
(f1.0) sel (16) uwCURBE_TEMP(2)<1> (abs)wDIFF(4)<16;16,1> (abs)wDIFF(5)<16;16,1>
(f1.1) sel (16) uwCURBE_TEMP(3)<1> (abs)wDIFF(6)<16;16,1> (abs)wDIFF(7)<16;16,1>
 
//------------
//DIFF(0-7) is not needed here. Populate it.
// first row - v0,v1,v2
add (16) wDIFF(0)<1> r[a0.0,0]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
add (16) wDIFF(1)<1> r[a0.0,2]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
add (16) wDIFF(2)<1> r[a0.0,4]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
 
// second row - v3,v4,v5
add (16) wDIFF(3)<1> r[a0.0,64]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
add (16) wDIFF(4)<1> r[a0.0,66]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
add (16) wDIFF(5)<1> r[a0.0,68]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
 
// third row - v6,v7
add (16) wDIFF(6)<1> r[a0.0,128]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
add (16) wDIFF(7)<1> r[a0.0,130]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
//------------
 
//Compare Max(0,1) - Max(2,3), Max(4,5) - Max(6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
cmp.g.f0.1 (16) null:uw uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
(f0.1)sel (16) uwCURBE_TEMP(2)<1> uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
//Compare Max(0,1,2,3) - Max(4,5,6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
 
//Compare Max(0,1,2,3,4,5,6,7) - 8
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(8)<16;16,1>
(f0.0)sel (16) uwMAX_ABS_DIFF(0)<1> uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(8)<16;16,1>
 
//------------
//Load v8 - DIFF(8)
add (16) wDIFF(8)<1> r[a0.0,132]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
//------------
//Compare 0-1, 2-3, 4-5, 6-7
cmp.g.f0.0 (16) null:uw (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
cmp.g.f0.1 (16) null:uw (abs)wDIFF(11)<16;16,1> (abs)wDIFF(12)<16;16,1>
cmp.g.f1.0 (16) null:uw (abs)wDIFF(13)<16;16,1> (abs)wDIFF(14)<16;16,1>
cmp.g.f1.1 (16) null:uw (abs)wDIFF(15)<16;16,1> (abs)wDIFF(16)<16;16,1>
 
//Calculate SAD
add (16) acc0.0<1>:uw (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(11)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(12)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(13)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(14)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(15)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(16)<16;16,1>
add (16) uwSOAD(1)<1> acc0.0<16;16,1>:uw (abs)wDIFF(17)<16;16,1>
 
(f0.0) sel (16) uwCURBE_TEMP(0)<1> (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
(f0.1) sel (16) uwCURBE_TEMP(1)<1> (abs)wDIFF(11)<16;16,1> (abs)wDIFF(12)<16;16,1>
(f1.0) sel (16) uwCURBE_TEMP(2)<1> (abs)wDIFF(13)<16;16,1> (abs)wDIFF(14)<16;16,1>
(f1.1) sel (16) uwCURBE_TEMP(3)<1> (abs)wDIFF(15)<16;16,1> (abs)wDIFF(16)<16;16,1>
 
//------------
//DIFF(0-7) is not needed here. Populate it.
// first row - v0,v1,v2
add (16) wDIFF(9)<1> r[a0.0,32]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
add (16) wDIFF(10)<1> r[a0.0,34]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
add (16) wDIFF(11)<1> r[a0.0,36]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
 
// second row - v3,v4,v5
add (16) wDIFF(12)<1> r[a0.0,96]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
add (16) wDIFF(13)<1> r[a0.0,98]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
add (16) wDIFF(14)<1> r[a0.0,100]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
 
// third row - v6,v7
add (16) wDIFF(15)<1> r[a0.0,160]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
add (16) wDIFF(16)<1> r[a0.0,162]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
//------------
 
//Compare Max(0,1) - Max(2,3), Max(4,5) - Max(6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
cmp.g.f0.1 (16) null:uw uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
(f0.1)sel (16) uwCURBE_TEMP(2)<1> uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
//Compare Max(0,1,2,3) - Max(4,5,6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
 
//Compare Max(0,1,2,3,4,5,6,7) - 8
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(17)<16;16,1>
(f0.0)sel (16) uwMAX_ABS_DIFF(1)<1> uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(17)<16;16,1>
 
//------------
//Load v8 - DIFF(8)
add (16) wDIFF(17)<1> r[a0.0,164]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
//------------
 
//if ((sobel_edge_measure < m_SobelEdgeThreshold) && ((block_max-block_min) < m_LocalDiffThreshold))
// if (sigma_mb_min > sigma)
// sigma_mb_min = sigma;
 
//NOTE: block_min is always zero as median is one of the value in 3x3 block. So no need o calculate it.
// So just do -
//if ((sobel_edge_measure < m_SobelEdgeThreshold) && ((block_max) < m_LocalDiffThreshold) && ( sigma < sigma_mb_min))
// sigma_mb_min = sigma;
 
//We are processing 32 bytes of U and 32 bytes of V - each of size 8x4.
//Compare first 8 bytes with max possible (255).
//Start above condition from second 8 bytes.
 
//TODO - Change Later - rT
// mov (1) pCUR_MIN_SOAD_8x4:uw 1752:uw //r54.24:ub
 
//First row of 8x4
cmp.l.f0.0 (16) null:uw uwSOBEL(0)<16;16,1> r55.30<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwMAX_ABS_DIFF(0)<16;16,1> r55.28<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwSOAD(0)<16;16,1> 255:uw
(f0.0) sel (16) uwSOBEL(0)<1> uwSOAD(0)<16;16,1> 255:uw
 
//Second row of 8x4
cmp.l.f0.0 (16) null:uw uwSOBEL(1)<16;16,1> r55.30<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwMAX_ABS_DIFF(1)<16;16,1> r55.28<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwSOAD(1)<16;16,1> uwSOBEL(0)<16;16,1>
(f0.0) mov (16) uwSOBEL(0)<1> uwSOAD(1)<16;16,1>
 
// Find sum of all absolute differences AND
// maximum absolute difference for 16 U and 16 V here.
//Second 2 rows of 8x4
//Compare 0-1, 2-3, 4-5, 6-7
cmp.g.f0.0 (16) null:uw (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
cmp.g.f0.1 (16) null:uw (abs)wDIFF(2)<16;16,1> (abs)wDIFF(3)<16;16,1>
cmp.g.f1.0 (16) null:uw (abs)wDIFF(4)<16;16,1> (abs)wDIFF(5)<16;16,1>
cmp.g.f1.1 (16) null:uw (abs)wDIFF(6)<16;16,1> (abs)wDIFF(7)<16;16,1>
 
//Calculate SAD
add (16) acc0.0<1>:uw (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(2)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(3)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(4)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(5)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(6)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(7)<16;16,1>
add (16) uwSOAD(0)<1> acc0.0<16;16,1>:uw (abs)wDIFF(8)<16;16,1>
 
(f0.0) sel (16) uwCURBE_TEMP(0)<1> (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
(f0.1) sel (16) uwCURBE_TEMP(1)<1> (abs)wDIFF(2)<16;16,1> (abs)wDIFF(3)<16;16,1>
(f1.0) sel (16) uwCURBE_TEMP(2)<1> (abs)wDIFF(4)<16;16,1> (abs)wDIFF(5)<16;16,1>
(f1.1) sel (16) uwCURBE_TEMP(3)<1> (abs)wDIFF(6)<16;16,1> (abs)wDIFF(7)<16;16,1>
 
//Compare Max(0,1) - Max(2,3), Max(4,5) - Max(6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
cmp.g.f0.1 (16) null:uw uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
(f0.1)sel (16) uwCURBE_TEMP(2)<1> uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
//Compare Max(0,1,2,3) - Max(4,5,6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
 
//Compare Max(0,1,2,3,4,5,6,7) - 8
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(8)<16;16,1>
(f0.0)sel (16) uwMAX_ABS_DIFF(0)<1> uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(8)<16;16,1>
//Compare 0-1, 2-3, 4-5, 6-7
cmp.g.f0.0 (16) null:uw (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
cmp.g.f0.1 (16) null:uw (abs)wDIFF(11)<16;16,1> (abs)wDIFF(12)<16;16,1>
cmp.g.f1.0 (16) null:uw (abs)wDIFF(13)<16;16,1> (abs)wDIFF(14)<16;16,1>
cmp.g.f1.1 (16) null:uw (abs)wDIFF(15)<16;16,1> (abs)wDIFF(16)<16;16,1>
 
//Calculate SAD
add (16) acc0.0<1>:uw (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(11)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(12)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(13)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(14)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(15)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(16)<16;16,1>
add (16) uwSOAD(1)<1> acc0.0<16;16,1>:uw (abs)wDIFF(17)<16;16,1>
 
(f0.0) sel (16) uwCURBE_TEMP(0)<1> (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
(f0.1) sel (16) uwCURBE_TEMP(1)<1> (abs)wDIFF(11)<16;16,1> (abs)wDIFF(12)<16;16,1>
(f1.0) sel (16) uwCURBE_TEMP(2)<1> (abs)wDIFF(13)<16;16,1> (abs)wDIFF(14)<16;16,1>
(f1.1) sel (16) uwCURBE_TEMP(3)<1> (abs)wDIFF(15)<16;16,1> (abs)wDIFF(16)<16;16,1>
 
//Compare Max(0,1) - Max(2,3), Max(4,5) - Max(6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
cmp.g.f0.1 (16) null:uw uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
(f0.1)sel (16) uwCURBE_TEMP(2)<1> uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
//Compare Max(0,1,2,3) - Max(4,5,6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
 
//Compare Max(0,1,2,3,4,5,6,7) - 8
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(17)<16;16,1>
(f0.0)sel (16) uwMAX_ABS_DIFF(1)<1> uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(17)<16;16,1>
 
//Third row of 8x4
cmp.l.f0.0 (16) null:uw uwSOBEL(2)<16;16,1> r55.30<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwMAX_ABS_DIFF(0)<16;16,1> r55.28<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwSOAD(0)<16;16,1> uwSOBEL(0)<16;16,1>
(f0.0) mov (16) uwSOBEL(0)<1> uwSOAD(0)<16;16,1>
 
//Fourth row of 8x4
cmp.l.f0.0 (16) null:uw uwSOBEL(3)<16;16,1> r55.30<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwMAX_ABS_DIFF(1)<16;16,1> r55.28<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwSOAD(1)<16;16,1> uwSOBEL(0)<16;16,1>
(f0.0) mov (16) uwSOBEL(0)<1> uwSOAD(1)<16;16,1>
 
cmp.l.f0.0 (8) null:uw uwSOBEL(0,0)<8;8,1> uwSOBEL(0,8)<8;8,1>
(f0.0) sel (8) uwSOBEL(0)<1> uwSOBEL(0,0)<8;8,1> uwSOBEL(0,8)<8;8,1>
 
cmp.l.f0.0 (4) null:uw uwSOBEL(0,0)<4;4,1> uwSOBEL(0,4)<4;4,1>
(f0.0) sel (4) uwSOBEL(0)<1> uwSOBEL(0,0)<4;4,1> uwSOBEL(0,4)<4;4,1>
 
cmp.l.f0.0 (2) null:uw uwSOBEL(0,0)<2;2,1> uwSOBEL(0,2)<2;2,1>
(f0.0) sel (2) r[a0.1,0]<1>:uw uwSOBEL(0,0)<2;2,1> uwSOBEL(0,2)<2;2,1>
 
 
 
 
 
 
// End of common.inc
 
mov (1) ip:ud r7.7<0;1,0>:d
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/PA_DN_422CP.g4a
0,0 → 1,491
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 114 // Total instruction count
// 1 // Total kernel count
 
.kernel PA_DN_422CP
.code
 
 
 
// FileName: DN_PA_Core.asm
// Author: Vivek Kumar
// Description: Tasks for DN only case (16x8 block) for Packed format
 
 
 
// FileName: DN.asm
// Author: Vivek Kumar
// Description: Tasks for DN only case (16x8 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x49E8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(4,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DN_Hist_Save.asm
// Author: Vivek Kumar
// Description: Saves DN history data to statistics surface
 
// Write denoise history to memory
mov (8) r27<1>:ud r0.0<8;8,1>:ud // message header
 
 
mov (2) mudMSGHDR_HIST(1)<1> udDNDI_RESP(4,0)<2;2,1> // Move denoise history to MRF (4x2)
 
 
shr (2) r27.0<1>:ud r7.0<2;2,1>:w 2:w // X,Y origin / 4
add (1) r27.0<1>:ud r27.0<0;1,0>:ud r1.12<0;1,0>:uw { NoDDClr } // Add pitch to X origin
mov (1) r27.2<1>:ud 0x10003:ud { NoDDChk } // block width and height
 
mov (8) mudMSGHDR_HIST(0)<1> r27.0<8;8,1>:ud
send (8) null<1>:d r22 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x50003:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | X | X | X | X |
//----------------------------------------------------
//| X | SVCM | X |
//----------------------------------------------------
//| SHCM | STAD | X |
//----------------------------------------------------
//| X | X |
//----------------------------------------------------
//| X | SVCM | X |
//----------------------------------------------------
//| SHCM | STAD | X |
//----------------------------------------------------
mov (1) mubMSGHDR_ENC_STATS(1,0)<1> ubDNDI_RESP(4,8)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (1) muwMSGHDR_ENC_STATS(1,3)<1> uwDNDI_RESP(4,11)<0;1,0> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) muwMSGHDR_ENC_STATS(1,4)<1> uwDNDI_RESP(4,12)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (1) muwMSGHDR_ENC_STATS(1,9)<1> uwDNDI_RESP(4,8)<0;1,0> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) muwMSGHDR_ENC_STATS(1,10)<1> uwDNDI_RESP(4,9)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Save_PA.asm
// Author: Vivek Kumar
// Description: Save one 16x8 blocks of DN output in Packed format
 
 
add (4) a0.4<1>:uw r2.28<4;4,1>:ub 1024:w // Initial Y,U,V offset in YUV422 block; it starts at m14
 
mov (8) mudMSGHDR_DN_OUT(0)<1> r0<8;8,1>:ud // message header
shl (1) mdMSGHDR_DN_OUT(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin * 2 (422 output)
mov (1) mdMSGHDR_DN_OUT(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_DN_OUT(0,2)<1> 0x7001F:ud { NoDDChk } // block width and height (32x8)
 
mov (16) r[a0.4,0]<2>:ub ubDNDI_RESP(0,0)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (16) r[a0.4,32]<2>:ub ubDNDI_RESP(0,16)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (16) r[a0.4,64]<2>:ub ubDNDI_RESP(0,32)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (16) r[a0.4,96]<2>:ub ubDNDI_RESP(0,48)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (16) r[a0.4,128]<2>:ub ubDNDI_RESP(0,64)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (16) r[a0.4,160]<2>:ub ubDNDI_RESP(0,80)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (16) r[a0.4,192]<2>:ub ubDNDI_RESP(0,96)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (16) r[a0.4,224]<2>:ub ubDNDI_RESP(0,112)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) r[a0.5,0]<4>:ub ubDNDI_RESP(5,1)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,0]<4>:ub ubDNDI_RESP(5,0)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (8) r[a0.5,32]<4>:ub ubDNDI_RESP(5,17)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,32]<4>:ub ubDNDI_RESP(5,16)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (8) r[a0.5,64]<4>:ub ubDNDI_RESP(5,33)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,64]<4>:ub ubDNDI_RESP(5,32)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (8) r[a0.5,96]<4>:ub ubDNDI_RESP(5,49)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,96]<4>:ub ubDNDI_RESP(5,48)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (8) r[a0.5,128]<4>:ub ubDNDI_RESP(5,65)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,128]<4>:ub ubDNDI_RESP(5,64)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (8) r[a0.5,160]<4>:ub ubDNDI_RESP(5,81)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,160]<4>:ub ubDNDI_RESP(5,80)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (8) r[a0.5,192]<4>:ub ubDNDI_RESP(5,97)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,192]<4>:ub ubDNDI_RESP(5,96)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (8) r[a0.5,224]<4>:ub ubDNDI_RESP(5,113)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,224]<4>:ub ubDNDI_RESP(5,112)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
 
//send out data through data port
send (8) null<1>:d r31.0 0x5 0x120A8018:ud
 
 
 
// FileName: DN_Save_422CP_16x8.asm
// Author: Vivek Kumar
// Description: Save one 16x8 blocks of DN output to the color pipe in 4-2-2 format
 
 
.declare mubMSGHDR_DN_OUT_2 Base=r36.0 ElementSize=1 Type=ub
 
 
mov (8) mudMSGHDR_DN_OUT(0)<1> r0<8;8,1>:ud // message header
shl (1) mdMSGHDR_DN_OUT(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin * 2 (422 output)
mov (1) mdMSGHDR_DN_OUT(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_DN_OUT(0,2)<1> 0x7000F:ud { NoDDClr, NoDDChk } // block width and height (16x8)
 
//M0.3 - 0 - CP Enable, 1 - Area of Interest, 3:2 Message Format(TBD), 4:3 - Ignored, 31:5 CP state pointer
//Compose area-of-interest bit + color pipe state pointer
or (1) mudMSGHDR_DN_OUT(0,3)<1> r2.4<0;1,0>:ud r7.26<0;1,0>:b { NoDDChk }
 
// First 8 x 8 Block
mov (8) mubMSGHDR_DN_OUT(1)<2> ubDNDI_RESP(0,0)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(1,16)<2> ubDNDI_RESP(0,16)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(2)<2> ubDNDI_RESP(0,32)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(2,16)<2> ubDNDI_RESP(0,48)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(3)<2> ubDNDI_RESP(0,64)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(3,16)<2> ubDNDI_RESP(0,80)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(4)<2> ubDNDI_RESP(0,96)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(4,16)<2> ubDNDI_RESP(0,112)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT(1,1)<4> ubDNDI_RESP(5,1)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(1,17)<4> ubDNDI_RESP(5,17)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT(1,3)<4> ubDNDI_RESP(5,0)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(1,19)<4> ubDNDI_RESP(5,16)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(2,1)<4> ubDNDI_RESP(5,33)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(2,17)<4> ubDNDI_RESP(5,49)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT(2,3)<4> ubDNDI_RESP(5,32)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(2,19)<4> ubDNDI_RESP(5,48)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(3,1)<4> ubDNDI_RESP(5,65)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(3,17)<4> ubDNDI_RESP(5,81)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT(3,3)<4> ubDNDI_RESP(5,64)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(3,19)<4> ubDNDI_RESP(5,80)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(4,1)<4> ubDNDI_RESP(5,97)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(4,17)<4> ubDNDI_RESP(5,113)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT(4,3)<4> ubDNDI_RESP(5,96)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(4,19)<4> ubDNDI_RESP(5,112)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
// Second 8 x 8 Block
mov (8) r36.0<1>:ud r31.0<8;8,1>:ud
add (1) r36.0<1>:ud r36.0<0;1,0>:w 0x10:w
 
mov (8) mubMSGHDR_DN_OUT_2(1)<2> ubDNDI_RESP(0,8)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(1,16)<2> ubDNDI_RESP(0,24)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(2)<2> ubDNDI_RESP(0,40)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(2,16)<2> ubDNDI_RESP(0,56)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(3)<2> ubDNDI_RESP(0,72)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(3,16)<2> ubDNDI_RESP(0,88)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(4)<2> ubDNDI_RESP(0,104)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(4,16)<2> ubDNDI_RESP(0,120)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT_2(1,1)<4> ubDNDI_RESP(5,9)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(1,17)<4> ubDNDI_RESP(5,25)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT_2(1,3)<4> ubDNDI_RESP(5,8)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(1,19)<4> ubDNDI_RESP(5,24)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(2,1)<4> ubDNDI_RESP(5,41)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(2,17)<4> ubDNDI_RESP(5,57)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT_2(2,3)<4> ubDNDI_RESP(5,40)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(2,19)<4> ubDNDI_RESP(5,56)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(3,1)<4> ubDNDI_RESP(5,73)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(3,17)<4> ubDNDI_RESP(5,89)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT_2(3,3)<4> ubDNDI_RESP(5,72)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(3,19)<4> ubDNDI_RESP(5,88)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(4,1)<4> ubDNDI_RESP(5,105)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(4,17)<4> ubDNDI_RESP(5,121)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT_2(4,3)<4> ubDNDI_RESP(5,104)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(4,19)<4> ubDNDI_RESP(5,120)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
//send out data through data port
send (8) null<1>:d r31.0 0x5 0xA0A801B:ud
send (8) null<1>:d r36.0 0x5 0xA0A801B:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/PA_DN_PA.g4a
0,0 → 1,403
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 57 // Total instruction count
// 1 // Total kernel count
 
.kernel PA_DN_PA
.code
 
 
 
// FileName: DN_PA_Core.asm
// Author: Vivek Kumar
// Description: Tasks for DN only case (16x8 block) for Packed format
 
 
 
// FileName: DN.asm
// Author: Vivek Kumar
// Description: Tasks for DN only case (16x8 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x49E8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(4,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DN_Hist_Save.asm
// Author: Vivek Kumar
// Description: Saves DN history data to statistics surface
 
// Write denoise history to memory
mov (8) r27<1>:ud r0.0<8;8,1>:ud // message header
 
 
mov (2) mudMSGHDR_HIST(1)<1> udDNDI_RESP(4,0)<2;2,1> // Move denoise history to MRF (4x2)
 
 
shr (2) r27.0<1>:ud r7.0<2;2,1>:w 2:w // X,Y origin / 4
add (1) r27.0<1>:ud r27.0<0;1,0>:ud r1.12<0;1,0>:uw { NoDDClr } // Add pitch to X origin
mov (1) r27.2<1>:ud 0x10003:ud { NoDDChk } // block width and height
 
mov (8) mudMSGHDR_HIST(0)<1> r27.0<8;8,1>:ud
send (8) null<1>:d r22 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x50003:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | X | X | X | X |
//----------------------------------------------------
//| X | SVCM | X |
//----------------------------------------------------
//| SHCM | STAD | X |
//----------------------------------------------------
//| X | X |
//----------------------------------------------------
//| X | SVCM | X |
//----------------------------------------------------
//| SHCM | STAD | X |
//----------------------------------------------------
mov (1) mubMSGHDR_ENC_STATS(1,0)<1> ubDNDI_RESP(4,8)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (1) muwMSGHDR_ENC_STATS(1,3)<1> uwDNDI_RESP(4,11)<0;1,0> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) muwMSGHDR_ENC_STATS(1,4)<1> uwDNDI_RESP(4,12)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (1) muwMSGHDR_ENC_STATS(1,9)<1> uwDNDI_RESP(4,8)<0;1,0> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) muwMSGHDR_ENC_STATS(1,10)<1> uwDNDI_RESP(4,9)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Save_PA.asm
// Author: Vivek Kumar
// Description: Save one 16x8 blocks of DN output in Packed format
 
 
add (4) a0.4<1>:uw r2.28<4;4,1>:ub 1024:w // Initial Y,U,V offset in YUV422 block; it starts at m14
 
mov (8) mudMSGHDR_DN_OUT(0)<1> r0<8;8,1>:ud // message header
shl (1) mdMSGHDR_DN_OUT(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin * 2 (422 output)
mov (1) mdMSGHDR_DN_OUT(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_DN_OUT(0,2)<1> 0x7001F:ud { NoDDChk } // block width and height (32x8)
 
mov (16) r[a0.4,0]<2>:ub ubDNDI_RESP(0,0)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (16) r[a0.4,32]<2>:ub ubDNDI_RESP(0,16)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (16) r[a0.4,64]<2>:ub ubDNDI_RESP(0,32)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (16) r[a0.4,96]<2>:ub ubDNDI_RESP(0,48)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (16) r[a0.4,128]<2>:ub ubDNDI_RESP(0,64)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (16) r[a0.4,160]<2>:ub ubDNDI_RESP(0,80)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (16) r[a0.4,192]<2>:ub ubDNDI_RESP(0,96)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (16) r[a0.4,224]<2>:ub ubDNDI_RESP(0,112)<16;16,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) r[a0.5,0]<4>:ub ubDNDI_RESP(5,1)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,0]<4>:ub ubDNDI_RESP(5,0)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (8) r[a0.5,32]<4>:ub ubDNDI_RESP(5,17)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,32]<4>:ub ubDNDI_RESP(5,16)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (8) r[a0.5,64]<4>:ub ubDNDI_RESP(5,33)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,64]<4>:ub ubDNDI_RESP(5,32)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (8) r[a0.5,96]<4>:ub ubDNDI_RESP(5,49)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,96]<4>:ub ubDNDI_RESP(5,48)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (8) r[a0.5,128]<4>:ub ubDNDI_RESP(5,65)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,128]<4>:ub ubDNDI_RESP(5,64)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (8) r[a0.5,160]<4>:ub ubDNDI_RESP(5,81)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,160]<4>:ub ubDNDI_RESP(5,80)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (8) r[a0.5,192]<4>:ub ubDNDI_RESP(5,97)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,192]<4>:ub ubDNDI_RESP(5,96)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (8) r[a0.5,224]<4>:ub ubDNDI_RESP(5,113)<16;8,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (8) r[a0.6,224]<4>:ub ubDNDI_RESP(5,112)<16;8,2> { NoDDChk } // copy line of V directly to memory as optimization
 
//send out data through data port
send (8) null<1>:d r31.0 0x5 0x120A8018:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/PL2_AVS_Buf_0.g4a
0,0 → 1,542
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 44 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: PL2_AVS_Buf_0.asm
// Author: Tatiya, Rupesh
// Description: Loads 8x8 AVS/IEF PL2 data into Buffer 0
 
 
 
// FileName : PL2_AVS_Buf.asm
// Author : Tatiya, Rupesh
// Description : Loads 8x8 AVS/IEF PL2 data into Buffer N
 
 
 
// Module name: Scaling.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
// Message Header
// m0.7 31:0 Debug
// m0.6 31:0 Debug
// m0.5 31:0 Ignored
// m0.4 31:0 Ignored
// m0.3 31:0 Ignored
// m0.2 31:16 Ignored
// 15 Alpha Write Channel Mask enable=0, disable=1
// 14 Blue Write Channel Mask (U)
// 13 Green Write Channel Mask (Y)
// 12 Red Write Channel Mask (V)
// 11:0 Ignored
// m0.1 Ignored
// m0.0 Ignored
 
 
// AVS payload
// m1.7 Group ID Number
// m1.6 U 2nd Derivative ---> NLAS dx
// m1.5 Delta V ---> Step Y
// m1.4 Delta U ---> Step X
// m1.3 Pixel 0 V Address ---> ORIY (Y0)
// m1.2 Pixel 0 U Address ---> ORIX (X0)
// m1.1 Vertical Block Number
// m1.0 Reserved
 
// Sampler Message Descriptor
// 31:29 Reserved 000
// 28:25 Message length 0010
// 24:20 Response length xxxxx ---> 4GRFs for each enabled channel (AVS), 2GRFs for each enabled channel (sample unorm)
// 19 Header Present 1
// 18:17 SIMD Mode 11 ---> SIMD32/64
// 16:12 Message Type xxxxx ---> 01011 sample_8x8, 01100 (sample_unorm), 01010 (sample_unorm+killpix)
// 11:8 Sampler Index xxxx
// 7:0 Binding Table Index xxxxxxxx
 
 
// Msg Header M0.2
// 15:15 Alpha Write Channel Mask, 0: written back, 1: not written back
// 14:14 Blue Write Channel Mask
// 13:13 Green Write Channel Mask
// 12:12 Red Write Channel Mask
 
 
//By design, Buffer 0,1,2,3 always have Layer 0 and Buffer 4,5 always have L1-L7
 
 
//used to generate LABELS at compile time.
 
 
// 18:17 SIMD Mode 10 ---> SIMD16
// 16:12 Message Type xxxxx ---> 00000 (SIMD16)
 
 
//r10-17 - 8 GRFs to load SIMD16 data (upto 4 channels)
//r18-19 - 2 GRFs to store sampler ramp.
 
.declare mfSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare muwSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare mudCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare mubCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=1 SrcRegion=<32;32,1> DstRegion=<1> Type=ub
 
 
.declare fSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare udSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ub4SCALING_0X_34X_TEMP Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<1> Type=ub
.declare uwSCALING_0X_34X_TEMP Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
// Sampler ramp is used for Scaling 0X_0.34X
.declare fSAMPLER_RAMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> Type=f // 1 GRFs, 8 elements
 
 
//#define rMSGDSC_UV r23.0
 
 
//End of _SCALING_
 
 
//NOTE: We need offsets for second halfof LAYER 0 - even if we do not load it.
//Update the channel offset in the buffers for the lower 8x4 data for BUFFER_0.
mov (1) r22.4<1>:ud 0x400040:ud
 
 
//Check if layer is to be skipped
 
 
// f0.1 pre-computed in Set_Layer_0
(-f0.1) jmpi (1) SKIP_AVS_LOAD_L0_0_
 
 
//AVS_PAYLOAD already has all the data loaded at this point
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EB400:ud //msg desc
 
mov (1) r16.2:ud 0x0000D000:ud // Enable Red channel
 
 
mov (1) r25.7<1>:ud r7.7:ud { NoDDClr }
mov (1) r25.1<1>:ud r7.12:uw { NoDDChk }
 
 
// set the vertical block number
 
 
mov (8) r17.0:ud r25.0<8;8,1>:ud // Copy msg payload mirrors to MRFs
 
// Gen7 AVS WA Only for YUV packed surfaces, NV12 and Y-channel only for Planar surfaces
// if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
// {
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
// }
// else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
// {
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
// }
// else{
// modified_u_coord = u_coord;
// }
// Where u_left = u – 2*du + 3*ddu for IEF On
// And u_left = u for IEF Off case
//
 
// check whether Gen7 AVS WA is enabled,
mov (1) r14.8:uw f0.0:uw // save f0.0
mov (1) r14.5:f r17.2<0;1,0>:f // save pixel 0 U for chroma
 
and.nz.f0.0 (1) null<1>:uw r2.3:uw 0x2:uw
(-f0.0)jmpi (1) GEN7_PL2_AVS_WA_DONE_L0_0_
 
// Gen7 AVS WA, check if IEF is ON for choosing Gen7 AVS WA formula
 
and.nz.f0.0 (8) null<1>:uw r2.3<0;1,0>:uw 0x4:uw
(f0.0)mov (8) acc0.0:f r17.2<0;1,0>:f
(f0.0)mac (8) acc0.0:f r17.4<0;1,0>:f -2.0:f
(f0.0)mac (8) acc0.0:f r17.6<0;1,0>:f 3.0:f
(f0.0)mov (1) r14.2:f acc0:f // IEF ON, rTEMP3.2 = u_left
(-f0.0)mov (1) r14.2:f r17.2<0;1,0>:f // IEF OFF, rTEMP3.2 = u_left
 
and (1) r14.1:ud r2.3:uw 0xFFF8:uw
asr (1) r14.1:ud r14.1:ud 3:d
mov (1) r14.1:f r14.1:ud
 
// Gen7 AVS WA, if (int)(u_left*width + 5.0/256) > (int)(u_left*width)
mul (1) r14.0:f r14.2:f r14.1:f // rTEMP3.0 = u_left*width
add (1) r14.2:f r14.0:f 0.01953125:f // rTEMP3.2 = u_left*width + 5.0/256
add (1) r14.3:f r14.0:f 0.99609375:f // rTEMP3.3 = u_left*width + 255.0/256
 
//Check if the values are < 0 and account for (int) cast of negative numbers
 
//(int)(u_left*width)
cmp.l.f0.0 (1) null<1>:f r14.0:f 0.00000000:f
mov (1) r14.0:d r14.0:f
(f0.0)add (1) r14.0:d r14.0<0;1,0>:d -1:d
 
//(int)(u_left*width + 5.0/256)
cmp.l.f0.0 (1) null<1>:f r14.2:f 0.00000000:f
mov (1) r14.2:d r14.2:f
(f0.0)add (1) r14.2:d r14.2<0;1,0>:d -1:d
 
//(int)(u_left*width + 255.0/256)
cmp.l.f0.0 (1) null<1>:f r14.3:f 0.00000000:f
mov (1) r14.3:d r14.3:f
(f0.0)add (1) r14.3:d r14.3<0;1,0>:d -1:d
 
mov (1) f0.0:uw 0:uw // clear flag
//if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
cmp.g.f1.0 (1) null<1>:d r14.2:d r14.0:d
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
(f1.0) add (1) r17.2:f r17.2<0;1,0>:f -r2.3:f
//else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
(-f1.0) cmp.e.f0.0 (1) null<1>:d r14.3:d r14.0:d
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
(f0.0) add (1) r17.2:f r17.2<0;1,0>:f r2.2:f
 
GEN7_PL2_AVS_WA_DONE_L0_0_:
mov (1) f0.0:uw r14.8:uw // restore f0.0
 
send (1) uwBUFFER_0(0)<1> r16 0x2 a0.0:ud
// Returns Y data in 4 GRFs in scrambled order
 
mov (1) r17.2:f r14.5:f // restore pixel 0 U for chroma, No AVS WA for chroma
 
add (1) a0.0:ud r23.5<0;1,0>:ud 0x48EB801:ud // msg desc; 1 is added to change BI to UV
mov (1) r16.2:ud 0x0000A000:ud // Enable Red+Blue channel
 
send (1) uwBUFFER_0(4)<1> r16 0x2 a0.0:ud
// Returns UV data in 8 GRFs in scrambled order
 
SKIP_AVS_LOAD_L0_0_:
nop
 
 
/drivers/video/i965/shaders/post_processing/gen7/PL2_AVS_Buf_1.g4a
0,0 → 1,535
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 42 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: PL2_AVS_Buf_1.asm
// Author: Tatiya, Rupesh
// Description: Loads 8x8 AVS/IEF PL2 data into Buffer 1
 
 
 
// FileName : PL2_AVS_Buf.asm
// Author : Tatiya, Rupesh
// Description : Loads 8x8 AVS/IEF PL2 data into Buffer N
 
 
 
// Module name: Scaling.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
// Message Header
// m0.7 31:0 Debug
// m0.6 31:0 Debug
// m0.5 31:0 Ignored
// m0.4 31:0 Ignored
// m0.3 31:0 Ignored
// m0.2 31:16 Ignored
// 15 Alpha Write Channel Mask enable=0, disable=1
// 14 Blue Write Channel Mask (U)
// 13 Green Write Channel Mask (Y)
// 12 Red Write Channel Mask (V)
// 11:0 Ignored
// m0.1 Ignored
// m0.0 Ignored
 
 
// AVS payload
// m1.7 Group ID Number
// m1.6 U 2nd Derivative ---> NLAS dx
// m1.5 Delta V ---> Step Y
// m1.4 Delta U ---> Step X
// m1.3 Pixel 0 V Address ---> ORIY (Y0)
// m1.2 Pixel 0 U Address ---> ORIX (X0)
// m1.1 Vertical Block Number
// m1.0 Reserved
 
// Sampler Message Descriptor
// 31:29 Reserved 000
// 28:25 Message length 0010
// 24:20 Response length xxxxx ---> 4GRFs for each enabled channel (AVS), 2GRFs for each enabled channel (sample unorm)
// 19 Header Present 1
// 18:17 SIMD Mode 11 ---> SIMD32/64
// 16:12 Message Type xxxxx ---> 01011 sample_8x8, 01100 (sample_unorm), 01010 (sample_unorm+killpix)
// 11:8 Sampler Index xxxx
// 7:0 Binding Table Index xxxxxxxx
 
 
// Msg Header M0.2
// 15:15 Alpha Write Channel Mask, 0: written back, 1: not written back
// 14:14 Blue Write Channel Mask
// 13:13 Green Write Channel Mask
// 12:12 Red Write Channel Mask
 
 
//By design, Buffer 0,1,2,3 always have Layer 0 and Buffer 4,5 always have L1-L7
 
 
//used to generate LABELS at compile time.
 
 
// 18:17 SIMD Mode 10 ---> SIMD16
// 16:12 Message Type xxxxx ---> 00000 (SIMD16)
 
 
//r10-17 - 8 GRFs to load SIMD16 data (upto 4 channels)
//r18-19 - 2 GRFs to store sampler ramp.
 
.declare mfSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare muwSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare mudCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare mubCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=1 SrcRegion=<32;32,1> DstRegion=<1> Type=ub
 
 
.declare fSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare udSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ub4SCALING_0X_34X_TEMP Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<1> Type=ub
.declare uwSCALING_0X_34X_TEMP Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
// Sampler ramp is used for Scaling 0X_0.34X
.declare fSAMPLER_RAMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> Type=f // 1 GRFs, 8 elements
 
 
//#define rMSGDSC_UV r23.0
 
 
//End of _SCALING_
 
 
//Check if layer is to be skipped
 
 
// f0.1 pre-computed in Set_Layer_0
(-f0.1) jmpi (1) SKIP_AVS_LOAD_L0_1_
 
 
//AVS_PAYLOAD already has all the data loaded at this point
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EB400:ud //msg desc
 
mov (1) r16.2:ud 0x0000D000:ud // Enable Red channel
 
 
// set the vertical block number
 
add (1) r25.1<1>:ud r7.12:uw 1:ud
 
 
mov (8) r17.0:ud r25.0<8;8,1>:ud // Copy msg payload mirrors to MRFs
 
// Gen7 AVS WA Only for YUV packed surfaces, NV12 and Y-channel only for Planar surfaces
// if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
// {
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
// }
// else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
// {
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
// }
// else{
// modified_u_coord = u_coord;
// }
// Where u_left = u – 2*du + 3*ddu for IEF On
// And u_left = u for IEF Off case
//
 
// check whether Gen7 AVS WA is enabled,
mov (1) r14.8:uw f0.0:uw // save f0.0
mov (1) r14.5:f r17.2<0;1,0>:f // save pixel 0 U for chroma
 
and.nz.f0.0 (1) null<1>:uw r2.3:uw 0x2:uw
(-f0.0)jmpi (1) GEN7_PL2_AVS_WA_DONE_L0_1_
 
// Gen7 AVS WA, check if IEF is ON for choosing Gen7 AVS WA formula
 
and.nz.f0.0 (8) null<1>:uw r2.3<0;1,0>:uw 0x4:uw
(f0.0)mov (8) acc0.0:f r17.2<0;1,0>:f
(f0.0)mac (8) acc0.0:f r17.4<0;1,0>:f -2.0:f
(f0.0)mac (8) acc0.0:f r17.6<0;1,0>:f 3.0:f
(f0.0)mov (1) r14.2:f acc0:f // IEF ON, rTEMP3.2 = u_left
(-f0.0)mov (1) r14.2:f r17.2<0;1,0>:f // IEF OFF, rTEMP3.2 = u_left
 
and (1) r14.1:ud r2.3:uw 0xFFF8:uw
asr (1) r14.1:ud r14.1:ud 3:d
mov (1) r14.1:f r14.1:ud
 
// Gen7 AVS WA, if (int)(u_left*width + 5.0/256) > (int)(u_left*width)
mul (1) r14.0:f r14.2:f r14.1:f // rTEMP3.0 = u_left*width
add (1) r14.2:f r14.0:f 0.01953125:f // rTEMP3.2 = u_left*width + 5.0/256
add (1) r14.3:f r14.0:f 0.99609375:f // rTEMP3.3 = u_left*width + 255.0/256
 
//Check if the values are < 0 and account for (int) cast of negative numbers
 
//(int)(u_left*width)
cmp.l.f0.0 (1) null<1>:f r14.0:f 0.00000000:f
mov (1) r14.0:d r14.0:f
(f0.0)add (1) r14.0:d r14.0<0;1,0>:d -1:d
 
//(int)(u_left*width + 5.0/256)
cmp.l.f0.0 (1) null<1>:f r14.2:f 0.00000000:f
mov (1) r14.2:d r14.2:f
(f0.0)add (1) r14.2:d r14.2<0;1,0>:d -1:d
 
//(int)(u_left*width + 255.0/256)
cmp.l.f0.0 (1) null<1>:f r14.3:f 0.00000000:f
mov (1) r14.3:d r14.3:f
(f0.0)add (1) r14.3:d r14.3<0;1,0>:d -1:d
 
mov (1) f0.0:uw 0:uw // clear flag
//if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
cmp.g.f1.0 (1) null<1>:d r14.2:d r14.0:d
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
(f1.0) add (1) r17.2:f r17.2<0;1,0>:f -r2.3:f
//else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
(-f1.0) cmp.e.f0.0 (1) null<1>:d r14.3:d r14.0:d
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
(f0.0) add (1) r17.2:f r17.2<0;1,0>:f r2.2:f
 
GEN7_PL2_AVS_WA_DONE_L0_1_:
mov (1) f0.0:uw r14.8:uw // restore f0.0
 
send (1) uwBUFFER_1(0)<1> r16 0x2 a0.0:ud
// Returns Y data in 4 GRFs in scrambled order
 
mov (1) r17.2:f r14.5:f // restore pixel 0 U for chroma, No AVS WA for chroma
 
add (1) a0.0:ud r23.5<0;1,0>:ud 0x48EB801:ud // msg desc; 1 is added to change BI to UV
mov (1) r16.2:ud 0x0000A000:ud // Enable Red+Blue channel
 
send (1) uwBUFFER_1(4)<1> r16 0x2 a0.0:ud
// Returns UV data in 8 GRFs in scrambled order
 
SKIP_AVS_LOAD_L0_1_:
nop
 
 
/drivers/video/i965/shaders/post_processing/gen7/PL2_AVS_Buf_2.g4a
0,0 → 1,536
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 42 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: PL2_AVS_Buf_2.asm
// Author: Tatiya, Rupesh
// Description: Loads 8x8 AVS/IEF PL2 data into Buffer 2
 
 
 
// FileName : PL2_AVS_Buf.asm
// Author : Tatiya, Rupesh
// Description : Loads 8x8 AVS/IEF PL2 data into Buffer N
 
 
 
// Module name: Scaling.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
// Message Header
// m0.7 31:0 Debug
// m0.6 31:0 Debug
// m0.5 31:0 Ignored
// m0.4 31:0 Ignored
// m0.3 31:0 Ignored
// m0.2 31:16 Ignored
// 15 Alpha Write Channel Mask enable=0, disable=1
// 14 Blue Write Channel Mask (U)
// 13 Green Write Channel Mask (Y)
// 12 Red Write Channel Mask (V)
// 11:0 Ignored
// m0.1 Ignored
// m0.0 Ignored
 
 
// AVS payload
// m1.7 Group ID Number
// m1.6 U 2nd Derivative ---> NLAS dx
// m1.5 Delta V ---> Step Y
// m1.4 Delta U ---> Step X
// m1.3 Pixel 0 V Address ---> ORIY (Y0)
// m1.2 Pixel 0 U Address ---> ORIX (X0)
// m1.1 Vertical Block Number
// m1.0 Reserved
 
// Sampler Message Descriptor
// 31:29 Reserved 000
// 28:25 Message length 0010
// 24:20 Response length xxxxx ---> 4GRFs for each enabled channel (AVS), 2GRFs for each enabled channel (sample unorm)
// 19 Header Present 1
// 18:17 SIMD Mode 11 ---> SIMD32/64
// 16:12 Message Type xxxxx ---> 01011 sample_8x8, 01100 (sample_unorm), 01010 (sample_unorm+killpix)
// 11:8 Sampler Index xxxx
// 7:0 Binding Table Index xxxxxxxx
 
 
// Msg Header M0.2
// 15:15 Alpha Write Channel Mask, 0: written back, 1: not written back
// 14:14 Blue Write Channel Mask
// 13:13 Green Write Channel Mask
// 12:12 Red Write Channel Mask
 
 
//By design, Buffer 0,1,2,3 always have Layer 0 and Buffer 4,5 always have L1-L7
 
 
//used to generate LABELS at compile time.
 
 
// 18:17 SIMD Mode 10 ---> SIMD16
// 16:12 Message Type xxxxx ---> 00000 (SIMD16)
 
 
//r10-17 - 8 GRFs to load SIMD16 data (upto 4 channels)
//r18-19 - 2 GRFs to store sampler ramp.
 
.declare mfSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare muwSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare mudCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare mubCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=1 SrcRegion=<32;32,1> DstRegion=<1> Type=ub
 
 
.declare fSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare udSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ub4SCALING_0X_34X_TEMP Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<1> Type=ub
.declare uwSCALING_0X_34X_TEMP Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
// Sampler ramp is used for Scaling 0X_0.34X
.declare fSAMPLER_RAMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> Type=f // 1 GRFs, 8 elements
 
 
//#define rMSGDSC_UV r23.0
 
 
//End of _SCALING_
 
 
//Check if layer is to be skipped
 
 
// f0.1 pre-computed in Set_Layer_0
(-f0.1) jmpi (1) SKIP_AVS_LOAD_L0_2_
 
 
//AVS_PAYLOAD already has all the data loaded at this point
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EB400:ud //msg desc
 
mov (1) r16.2:ud 0x0000D000:ud // Enable Red channel
 
 
// set the vertical block number
 
 
add (1) r25.1<1>:ud r7.12:uw 2:ud
 
 
mov (8) r17.0:ud r25.0<8;8,1>:ud // Copy msg payload mirrors to MRFs
 
// Gen7 AVS WA Only for YUV packed surfaces, NV12 and Y-channel only for Planar surfaces
// if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
// {
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
// }
// else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
// {
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
// }
// else{
// modified_u_coord = u_coord;
// }
// Where u_left = u – 2*du + 3*ddu for IEF On
// And u_left = u for IEF Off case
//
 
// check whether Gen7 AVS WA is enabled,
mov (1) r14.8:uw f0.0:uw // save f0.0
mov (1) r14.5:f r17.2<0;1,0>:f // save pixel 0 U for chroma
 
and.nz.f0.0 (1) null<1>:uw r2.3:uw 0x2:uw
(-f0.0)jmpi (1) GEN7_PL2_AVS_WA_DONE_L0_2_
 
// Gen7 AVS WA, check if IEF is ON for choosing Gen7 AVS WA formula
 
and.nz.f0.0 (8) null<1>:uw r2.3<0;1,0>:uw 0x4:uw
(f0.0)mov (8) acc0.0:f r17.2<0;1,0>:f
(f0.0)mac (8) acc0.0:f r17.4<0;1,0>:f -2.0:f
(f0.0)mac (8) acc0.0:f r17.6<0;1,0>:f 3.0:f
(f0.0)mov (1) r14.2:f acc0:f // IEF ON, rTEMP3.2 = u_left
(-f0.0)mov (1) r14.2:f r17.2<0;1,0>:f // IEF OFF, rTEMP3.2 = u_left
 
and (1) r14.1:ud r2.3:uw 0xFFF8:uw
asr (1) r14.1:ud r14.1:ud 3:d
mov (1) r14.1:f r14.1:ud
 
// Gen7 AVS WA, if (int)(u_left*width + 5.0/256) > (int)(u_left*width)
mul (1) r14.0:f r14.2:f r14.1:f // rTEMP3.0 = u_left*width
add (1) r14.2:f r14.0:f 0.01953125:f // rTEMP3.2 = u_left*width + 5.0/256
add (1) r14.3:f r14.0:f 0.99609375:f // rTEMP3.3 = u_left*width + 255.0/256
 
//Check if the values are < 0 and account for (int) cast of negative numbers
 
//(int)(u_left*width)
cmp.l.f0.0 (1) null<1>:f r14.0:f 0.00000000:f
mov (1) r14.0:d r14.0:f
(f0.0)add (1) r14.0:d r14.0<0;1,0>:d -1:d
 
//(int)(u_left*width + 5.0/256)
cmp.l.f0.0 (1) null<1>:f r14.2:f 0.00000000:f
mov (1) r14.2:d r14.2:f
(f0.0)add (1) r14.2:d r14.2<0;1,0>:d -1:d
 
//(int)(u_left*width + 255.0/256)
cmp.l.f0.0 (1) null<1>:f r14.3:f 0.00000000:f
mov (1) r14.3:d r14.3:f
(f0.0)add (1) r14.3:d r14.3<0;1,0>:d -1:d
 
mov (1) f0.0:uw 0:uw // clear flag
//if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
cmp.g.f1.0 (1) null<1>:d r14.2:d r14.0:d
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
(f1.0) add (1) r17.2:f r17.2<0;1,0>:f -r2.3:f
//else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
(-f1.0) cmp.e.f0.0 (1) null<1>:d r14.3:d r14.0:d
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
(f0.0) add (1) r17.2:f r17.2<0;1,0>:f r2.2:f
 
GEN7_PL2_AVS_WA_DONE_L0_2_:
mov (1) f0.0:uw r14.8:uw // restore f0.0
 
send (1) uwBUFFER_2(0)<1> r16 0x2 a0.0:ud
// Returns Y data in 4 GRFs in scrambled order
 
mov (1) r17.2:f r14.5:f // restore pixel 0 U for chroma, No AVS WA for chroma
 
add (1) a0.0:ud r23.5<0;1,0>:ud 0x48EB801:ud // msg desc; 1 is added to change BI to UV
mov (1) r16.2:ud 0x0000A000:ud // Enable Red+Blue channel
 
send (1) uwBUFFER_2(4)<1> r16 0x2 a0.0:ud
// Returns UV data in 8 GRFs in scrambled order
 
SKIP_AVS_LOAD_L0_2_:
nop
 
 
/drivers/video/i965/shaders/post_processing/gen7/PL2_AVS_Buf_3.g4a
0,0 → 1,536
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 42 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: PL2_AVS_Buf_3.asm
// Author: Tatiya, Rupesh
// Description: Loads 8x8 AVS/IEF PL2 data into Buffer 0
 
 
 
// FileName : PL2_AVS_Buf.asm
// Author : Tatiya, Rupesh
// Description : Loads 8x8 AVS/IEF PL2 data into Buffer N
 
 
 
// Module name: Scaling.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
// Message Header
// m0.7 31:0 Debug
// m0.6 31:0 Debug
// m0.5 31:0 Ignored
// m0.4 31:0 Ignored
// m0.3 31:0 Ignored
// m0.2 31:16 Ignored
// 15 Alpha Write Channel Mask enable=0, disable=1
// 14 Blue Write Channel Mask (U)
// 13 Green Write Channel Mask (Y)
// 12 Red Write Channel Mask (V)
// 11:0 Ignored
// m0.1 Ignored
// m0.0 Ignored
 
 
// AVS payload
// m1.7 Group ID Number
// m1.6 U 2nd Derivative ---> NLAS dx
// m1.5 Delta V ---> Step Y
// m1.4 Delta U ---> Step X
// m1.3 Pixel 0 V Address ---> ORIY (Y0)
// m1.2 Pixel 0 U Address ---> ORIX (X0)
// m1.1 Vertical Block Number
// m1.0 Reserved
 
// Sampler Message Descriptor
// 31:29 Reserved 000
// 28:25 Message length 0010
// 24:20 Response length xxxxx ---> 4GRFs for each enabled channel (AVS), 2GRFs for each enabled channel (sample unorm)
// 19 Header Present 1
// 18:17 SIMD Mode 11 ---> SIMD32/64
// 16:12 Message Type xxxxx ---> 01011 sample_8x8, 01100 (sample_unorm), 01010 (sample_unorm+killpix)
// 11:8 Sampler Index xxxx
// 7:0 Binding Table Index xxxxxxxx
 
 
// Msg Header M0.2
// 15:15 Alpha Write Channel Mask, 0: written back, 1: not written back
// 14:14 Blue Write Channel Mask
// 13:13 Green Write Channel Mask
// 12:12 Red Write Channel Mask
 
 
//By design, Buffer 0,1,2,3 always have Layer 0 and Buffer 4,5 always have L1-L7
 
 
//used to generate LABELS at compile time.
 
 
// 18:17 SIMD Mode 10 ---> SIMD16
// 16:12 Message Type xxxxx ---> 00000 (SIMD16)
 
 
//r10-17 - 8 GRFs to load SIMD16 data (upto 4 channels)
//r18-19 - 2 GRFs to store sampler ramp.
 
.declare mfSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare muwSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare mudCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare mubCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=1 SrcRegion=<32;32,1> DstRegion=<1> Type=ub
 
 
.declare fSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare udSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ub4SCALING_0X_34X_TEMP Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<1> Type=ub
.declare uwSCALING_0X_34X_TEMP Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
// Sampler ramp is used for Scaling 0X_0.34X
.declare fSAMPLER_RAMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> Type=f // 1 GRFs, 8 elements
 
 
//#define rMSGDSC_UV r23.0
 
 
//End of _SCALING_
 
 
//Check if layer is to be skipped
 
 
// f0.1 pre-computed in Set_Layer_0
(-f0.1) jmpi (1) SKIP_AVS_LOAD_L0_3_
 
 
//AVS_PAYLOAD already has all the data loaded at this point
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EB400:ud //msg desc
 
mov (1) r16.2:ud 0x0000D000:ud // Enable Red channel
 
 
// set the vertical block number
 
 
add (1) r25.1<1>:ud r7.12:uw 3:ud
 
 
mov (8) r17.0:ud r25.0<8;8,1>:ud // Copy msg payload mirrors to MRFs
 
// Gen7 AVS WA Only for YUV packed surfaces, NV12 and Y-channel only for Planar surfaces
// if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
// {
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
// }
// else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
// {
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
// }
// else{
// modified_u_coord = u_coord;
// }
// Where u_left = u – 2*du + 3*ddu for IEF On
// And u_left = u for IEF Off case
//
 
// check whether Gen7 AVS WA is enabled,
mov (1) r14.8:uw f0.0:uw // save f0.0
mov (1) r14.5:f r17.2<0;1,0>:f // save pixel 0 U for chroma
 
and.nz.f0.0 (1) null<1>:uw r2.3:uw 0x2:uw
(-f0.0)jmpi (1) GEN7_PL2_AVS_WA_DONE_L0_3_
 
// Gen7 AVS WA, check if IEF is ON for choosing Gen7 AVS WA formula
 
and.nz.f0.0 (8) null<1>:uw r2.3<0;1,0>:uw 0x4:uw
(f0.0)mov (8) acc0.0:f r17.2<0;1,0>:f
(f0.0)mac (8) acc0.0:f r17.4<0;1,0>:f -2.0:f
(f0.0)mac (8) acc0.0:f r17.6<0;1,0>:f 3.0:f
(f0.0)mov (1) r14.2:f acc0:f // IEF ON, rTEMP3.2 = u_left
(-f0.0)mov (1) r14.2:f r17.2<0;1,0>:f // IEF OFF, rTEMP3.2 = u_left
 
and (1) r14.1:ud r2.3:uw 0xFFF8:uw
asr (1) r14.1:ud r14.1:ud 3:d
mov (1) r14.1:f r14.1:ud
 
// Gen7 AVS WA, if (int)(u_left*width + 5.0/256) > (int)(u_left*width)
mul (1) r14.0:f r14.2:f r14.1:f // rTEMP3.0 = u_left*width
add (1) r14.2:f r14.0:f 0.01953125:f // rTEMP3.2 = u_left*width + 5.0/256
add (1) r14.3:f r14.0:f 0.99609375:f // rTEMP3.3 = u_left*width + 255.0/256
 
//Check if the values are < 0 and account for (int) cast of negative numbers
 
//(int)(u_left*width)
cmp.l.f0.0 (1) null<1>:f r14.0:f 0.00000000:f
mov (1) r14.0:d r14.0:f
(f0.0)add (1) r14.0:d r14.0<0;1,0>:d -1:d
 
//(int)(u_left*width + 5.0/256)
cmp.l.f0.0 (1) null<1>:f r14.2:f 0.00000000:f
mov (1) r14.2:d r14.2:f
(f0.0)add (1) r14.2:d r14.2<0;1,0>:d -1:d
 
//(int)(u_left*width + 255.0/256)
cmp.l.f0.0 (1) null<1>:f r14.3:f 0.00000000:f
mov (1) r14.3:d r14.3:f
(f0.0)add (1) r14.3:d r14.3<0;1,0>:d -1:d
 
mov (1) f0.0:uw 0:uw // clear flag
//if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
cmp.g.f1.0 (1) null<1>:d r14.2:d r14.0:d
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
(f1.0) add (1) r17.2:f r17.2<0;1,0>:f -r2.3:f
//else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
(-f1.0) cmp.e.f0.0 (1) null<1>:d r14.3:d r14.0:d
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
(f0.0) add (1) r17.2:f r17.2<0;1,0>:f r2.2:f
 
GEN7_PL2_AVS_WA_DONE_L0_3_:
mov (1) f0.0:uw r14.8:uw // restore f0.0
 
send (1) uwBUFFER_3(0)<1> r16 0x2 a0.0:ud
// Returns Y data in 4 GRFs in scrambled order
 
mov (1) r17.2:f r14.5:f // restore pixel 0 U for chroma, No AVS WA for chroma
 
add (1) a0.0:ud r23.5<0;1,0>:ud 0x48EB801:ud // msg desc; 1 is added to change BI to UV
mov (1) r16.2:ud 0x0000A000:ud // Enable Red+Blue channel
 
send (1) uwBUFFER_3(4)<1> r16 0x2 a0.0:ud
// Returns UV data in 8 GRFs in scrambled order
 
SKIP_AVS_LOAD_L0_3_:
nop
 
 
/drivers/video/i965/shaders/post_processing/gen7/PL3_AVS_Buf_0.g4a
0,0 → 1,549
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 47 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: PL3_AVS_Buf_0.asm
// Author: Tatiya, Rupesh
// Description: Loads 8x8 AVS/IEF PL3 data into Buffer 0
 
 
 
// FileName : PL3_AVS_Buf.asm
// Author : Tatiya, Rupesh
// Description : Loads 8x8 AVS/IEF PL3 data into Buffer N
 
 
 
// Module name: Scaling.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
// Message Header
// m0.7 31:0 Debug
// m0.6 31:0 Debug
// m0.5 31:0 Ignored
// m0.4 31:0 Ignored
// m0.3 31:0 Ignored
// m0.2 31:16 Ignored
// 15 Alpha Write Channel Mask enable=0, disable=1
// 14 Blue Write Channel Mask (U)
// 13 Green Write Channel Mask (Y)
// 12 Red Write Channel Mask (V)
// 11:0 Ignored
// m0.1 Ignored
// m0.0 Ignored
 
 
// AVS payload
// m1.7 Group ID Number
// m1.6 U 2nd Derivative ---> NLAS dx
// m1.5 Delta V ---> Step Y
// m1.4 Delta U ---> Step X
// m1.3 Pixel 0 V Address ---> ORIY (Y0)
// m1.2 Pixel 0 U Address ---> ORIX (X0)
// m1.1 Vertical Block Number
// m1.0 Reserved
 
// Sampler Message Descriptor
// 31:29 Reserved 000
// 28:25 Message length 0010
// 24:20 Response length xxxxx ---> 4GRFs for each enabled channel (AVS), 2GRFs for each enabled channel (sample unorm)
// 19 Header Present 1
// 18:17 SIMD Mode 11 ---> SIMD32/64
// 16:12 Message Type xxxxx ---> 01011 sample_8x8, 01100 (sample_unorm), 01010 (sample_unorm+killpix)
// 11:8 Sampler Index xxxx
// 7:0 Binding Table Index xxxxxxxx
 
 
// Msg Header M0.2
// 15:15 Alpha Write Channel Mask, 0: written back, 1: not written back
// 14:14 Blue Write Channel Mask
// 13:13 Green Write Channel Mask
// 12:12 Red Write Channel Mask
 
 
//By design, Buffer 0,1,2,3 always have Layer 0 and Buffer 4,5 always have L1-L7
 
 
//used to generate LABELS at compile time.
 
 
// 18:17 SIMD Mode 10 ---> SIMD16
// 16:12 Message Type xxxxx ---> 00000 (SIMD16)
 
 
//r10-17 - 8 GRFs to load SIMD16 data (upto 4 channels)
//r18-19 - 2 GRFs to store sampler ramp.
 
.declare mfSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare muwSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare mudCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare mubCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=1 SrcRegion=<32;32,1> DstRegion=<1> Type=ub
 
 
.declare fSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare udSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ub4SCALING_0X_34X_TEMP Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<1> Type=ub
.declare uwSCALING_0X_34X_TEMP Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
// Sampler ramp is used for Scaling 0X_0.34X
.declare fSAMPLER_RAMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> Type=f // 1 GRFs, 8 elements
 
 
//#define rMSGDSC_UV r23.0
 
 
//End of _SCALING_
 
 
//NOTE: We need offsets for second halfof LAYER 0 - even if we do not load it.
//Update the channel offset in the buffers for the lower 8x4 data for BUFFER_0.
mov (1) r22.4<1>:ud 0x400040:ud
 
 
//Check if layer is to be skipped
 
 
// f0.1 pre-computed in Set_Layer_0
(-f0.1) jmpi (1) SKIP_AVS_LOAD_L0_0_
 
 
//AVS_PAYLOAD already has all the data loaded at this point
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EB400:ud //msg desc
 
mov (1) r16.2:ud 0x0000D000:ud // Enable Red channel
 
 
mov (1) r25.7<1>:ud r7.7:ud { NoDDClr }
mov (1) r25.1<1>:ud r7.12:uw { NoDDChk }
 
 
// set the vertical block number
 
 
mov (8) r17.0:ud r25.0<8;8,1>:ud // Copy msg payload mirrors to MRFs
 
// Gen7 AVS WA Only for YUV packed surfaces, NV12 and Y-channel only for Planar surfaces
// if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
// {
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
// }
// else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
// {
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
// }
// else{
// modified_u_coord = u_coord;
// }
// Where u_left = u – 2*du + 3*ddu for IEF On
// And u_left = u for IEF Off case
//
 
// check whether Gen7 AVS WA is enabled,
mov (1) r14.8:uw f0.0:uw // save f0.0
mov (1) r14.5:f r17.2<0;1,0>:f // save pixel 0 U for chroma
 
and.nz.f0.0 (1) null<1>:uw r2.3:uw 0x2:uw
(-f0.0)jmpi (1) GEN7_PL3_AVS_WA_DONE_L0_0_
 
// Gen7 AVS WA, check if IEF is ON for choosing Gen7 AVS WA formula
 
and.nz.f0.0 (8) null<1>:uw r2.3<0;1,0>:uw 0x4:uw
(f0.0)mov (8) acc0.0:f r17.2<0;1,0>:f
(f0.0)mac (8) acc0.0:f r17.4<0;1,0>:f -2.0:f
(f0.0)mac (8) acc0.0:f r17.6<0;1,0>:f 3.0:f
(f0.0)mov (1) r14.2:f acc0:f // IEF ON, rTEMP3.2 = u_left
(-f0.0)mov (1) r14.2:f r17.2<0;1,0>:f // IEF OFF, rTEMP3.2 = u_left
 
and (1) r14.1:ud r2.3:uw 0xFFF8:uw
asr (1) r14.1:ud r14.1:ud 3:d
mov (1) r14.1:f r14.1:ud
 
// Gen7 AVS WA, if (int)(u_left*width + 5.0/256) > (int)(u_left*width)
mul (1) r14.0:f r14.2:f r14.1:f // rTEMP3.0 = u_left*width
add (1) r14.2:f r14.0:f 0.01953125:f // rTEMP3.2 = u_left*width + 5.0/256
add (1) r14.3:f r14.0:f 0.99609375:f // rTEMP3.3 = u_left*width + 255.0/256
 
//Check if the values are < 0 and account for (int) cast of negative numbers
 
//(int)(u_left*width)
cmp.l.f0.0 (1) null<1>:f r14.0:f 0.00000000:f
mov (1) r14.0:d r14.0:f
(f0.0)add (1) r14.0:d r14.0<0;1,0>:d -1:d
 
//(int)(u_left*width + 5.0/256)
cmp.l.f0.0 (1) null<1>:f r14.2:f 0.00000000:f
mov (1) r14.2:d r14.2:f
(f0.0)add (1) r14.2:d r14.2<0;1,0>:d -1:d
 
//(int)(u_left*width + 255.0/256)
cmp.l.f0.0 (1) null<1>:f r14.3:f 0.00000000:f
mov (1) r14.3:d r14.3:f
(f0.0)add (1) r14.3:d r14.3<0;1,0>:d -1:d
 
mov (1) f0.0:uw 0:uw // clear flag
//if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
cmp.g.f1.0 (1) null<1>:d r14.2:d r14.0:d
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
(f1.0) add (1) r17.2:f r17.2<0;1,0>:f -r2.3:f
//else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
(-f1.0) cmp.e.f0.0 (1) null<1>:d r14.3:d r14.0:d
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
(f0.0) add (1) r17.2:f r17.2<0;1,0>:f r2.2:f
 
GEN7_PL3_AVS_WA_DONE_L0_0_:
mov (1) f0.0:uw r14.8:uw // restore f0.0
 
 
send (1) uwBUFFER_0(0)<1> r16 0x2 a0.0:ud
// Returns Y data in 4 GRFs in scrambled order
 
mov (1) r17.2:f r14.5:f // restore pixel 0 U for chroma, No AVS WA for chroma
 
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EB801:ud // msg desc; 1 is added to change BI to UV
mov (1) r16.2:ud 0x0000E000:ud // Enable Red channel
 
send (1) uwBUFFER_0(4)<1> r16 0x2 a0.0:ud
// Returns U data in 4 GRFs in scrambled order
 
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EBC02:ud // msg desc; 1 is added to change BI to UV
mov (1) r16.2:ud 0x0000E000:ud // Enable Red channel
 
send (1) uwBUFFER_0(8)<1> r16 0x2 a0.0:ud
// Returns V data in 4 GRFs in scrambled order
 
SKIP_AVS_LOAD_L0_0_:
nop
 
 
/drivers/video/i965/shaders/post_processing/gen7/PL3_AVS_Buf_1.g4a
0,0 → 1,542
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 45 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: PL3_AVS_Buf_1.asm
// Author: Tatiya, Rupesh
// Description: Loads 8x8 AVS/IEF PL3 data into Buffer 1
 
 
 
// FileName : PL3_AVS_Buf.asm
// Author : Tatiya, Rupesh
// Description : Loads 8x8 AVS/IEF PL3 data into Buffer N
 
 
 
// Module name: Scaling.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
// Message Header
// m0.7 31:0 Debug
// m0.6 31:0 Debug
// m0.5 31:0 Ignored
// m0.4 31:0 Ignored
// m0.3 31:0 Ignored
// m0.2 31:16 Ignored
// 15 Alpha Write Channel Mask enable=0, disable=1
// 14 Blue Write Channel Mask (U)
// 13 Green Write Channel Mask (Y)
// 12 Red Write Channel Mask (V)
// 11:0 Ignored
// m0.1 Ignored
// m0.0 Ignored
 
 
// AVS payload
// m1.7 Group ID Number
// m1.6 U 2nd Derivative ---> NLAS dx
// m1.5 Delta V ---> Step Y
// m1.4 Delta U ---> Step X
// m1.3 Pixel 0 V Address ---> ORIY (Y0)
// m1.2 Pixel 0 U Address ---> ORIX (X0)
// m1.1 Vertical Block Number
// m1.0 Reserved
 
// Sampler Message Descriptor
// 31:29 Reserved 000
// 28:25 Message length 0010
// 24:20 Response length xxxxx ---> 4GRFs for each enabled channel (AVS), 2GRFs for each enabled channel (sample unorm)
// 19 Header Present 1
// 18:17 SIMD Mode 11 ---> SIMD32/64
// 16:12 Message Type xxxxx ---> 01011 sample_8x8, 01100 (sample_unorm), 01010 (sample_unorm+killpix)
// 11:8 Sampler Index xxxx
// 7:0 Binding Table Index xxxxxxxx
 
 
// Msg Header M0.2
// 15:15 Alpha Write Channel Mask, 0: written back, 1: not written back
// 14:14 Blue Write Channel Mask
// 13:13 Green Write Channel Mask
// 12:12 Red Write Channel Mask
 
 
//By design, Buffer 0,1,2,3 always have Layer 0 and Buffer 4,5 always have L1-L7
 
 
//used to generate LABELS at compile time.
 
 
// 18:17 SIMD Mode 10 ---> SIMD16
// 16:12 Message Type xxxxx ---> 00000 (SIMD16)
 
 
//r10-17 - 8 GRFs to load SIMD16 data (upto 4 channels)
//r18-19 - 2 GRFs to store sampler ramp.
 
.declare mfSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare muwSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare mudCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare mubCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=1 SrcRegion=<32;32,1> DstRegion=<1> Type=ub
 
 
.declare fSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare udSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ub4SCALING_0X_34X_TEMP Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<1> Type=ub
.declare uwSCALING_0X_34X_TEMP Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
// Sampler ramp is used for Scaling 0X_0.34X
.declare fSAMPLER_RAMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> Type=f // 1 GRFs, 8 elements
 
 
//#define rMSGDSC_UV r23.0
 
 
//End of _SCALING_
 
 
//Check if layer is to be skipped
 
 
// f0.1 pre-computed in Set_Layer_0
(-f0.1) jmpi (1) SKIP_AVS_LOAD_L0_1_
 
 
//AVS_PAYLOAD already has all the data loaded at this point
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EB400:ud //msg desc
 
mov (1) r16.2:ud 0x0000D000:ud // Enable Red channel
 
 
// set the vertical block number
 
add (1) r25.1<1>:ud r7.12:uw 1:ud
 
 
mov (8) r17.0:ud r25.0<8;8,1>:ud // Copy msg payload mirrors to MRFs
 
// Gen7 AVS WA Only for YUV packed surfaces, NV12 and Y-channel only for Planar surfaces
// if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
// {
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
// }
// else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
// {
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
// }
// else{
// modified_u_coord = u_coord;
// }
// Where u_left = u – 2*du + 3*ddu for IEF On
// And u_left = u for IEF Off case
//
 
// check whether Gen7 AVS WA is enabled,
mov (1) r14.8:uw f0.0:uw // save f0.0
mov (1) r14.5:f r17.2<0;1,0>:f // save pixel 0 U for chroma
 
and.nz.f0.0 (1) null<1>:uw r2.3:uw 0x2:uw
(-f0.0)jmpi (1) GEN7_PL3_AVS_WA_DONE_L0_1_
 
// Gen7 AVS WA, check if IEF is ON for choosing Gen7 AVS WA formula
 
and.nz.f0.0 (8) null<1>:uw r2.3<0;1,0>:uw 0x4:uw
(f0.0)mov (8) acc0.0:f r17.2<0;1,0>:f
(f0.0)mac (8) acc0.0:f r17.4<0;1,0>:f -2.0:f
(f0.0)mac (8) acc0.0:f r17.6<0;1,0>:f 3.0:f
(f0.0)mov (1) r14.2:f acc0:f // IEF ON, rTEMP3.2 = u_left
(-f0.0)mov (1) r14.2:f r17.2<0;1,0>:f // IEF OFF, rTEMP3.2 = u_left
 
and (1) r14.1:ud r2.3:uw 0xFFF8:uw
asr (1) r14.1:ud r14.1:ud 3:d
mov (1) r14.1:f r14.1:ud
 
// Gen7 AVS WA, if (int)(u_left*width + 5.0/256) > (int)(u_left*width)
mul (1) r14.0:f r14.2:f r14.1:f // rTEMP3.0 = u_left*width
add (1) r14.2:f r14.0:f 0.01953125:f // rTEMP3.2 = u_left*width + 5.0/256
add (1) r14.3:f r14.0:f 0.99609375:f // rTEMP3.3 = u_left*width + 255.0/256
 
//Check if the values are < 0 and account for (int) cast of negative numbers
 
//(int)(u_left*width)
cmp.l.f0.0 (1) null<1>:f r14.0:f 0.00000000:f
mov (1) r14.0:d r14.0:f
(f0.0)add (1) r14.0:d r14.0<0;1,0>:d -1:d
 
//(int)(u_left*width + 5.0/256)
cmp.l.f0.0 (1) null<1>:f r14.2:f 0.00000000:f
mov (1) r14.2:d r14.2:f
(f0.0)add (1) r14.2:d r14.2<0;1,0>:d -1:d
 
//(int)(u_left*width + 255.0/256)
cmp.l.f0.0 (1) null<1>:f r14.3:f 0.00000000:f
mov (1) r14.3:d r14.3:f
(f0.0)add (1) r14.3:d r14.3<0;1,0>:d -1:d
 
mov (1) f0.0:uw 0:uw // clear flag
//if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
cmp.g.f1.0 (1) null<1>:d r14.2:d r14.0:d
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
(f1.0) add (1) r17.2:f r17.2<0;1,0>:f -r2.3:f
//else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
(-f1.0) cmp.e.f0.0 (1) null<1>:d r14.3:d r14.0:d
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
(f0.0) add (1) r17.2:f r17.2<0;1,0>:f r2.2:f
 
GEN7_PL3_AVS_WA_DONE_L0_1_:
mov (1) f0.0:uw r14.8:uw // restore f0.0
 
 
send (1) uwBUFFER_1(0)<1> r16 0x2 a0.0:ud
// Returns Y data in 4 GRFs in scrambled order
 
mov (1) r17.2:f r14.5:f // restore pixel 0 U for chroma, No AVS WA for chroma
 
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EB801:ud // msg desc; 1 is added to change BI to UV
mov (1) r16.2:ud 0x0000E000:ud // Enable Red channel
 
send (1) uwBUFFER_1(4)<1> r16 0x2 a0.0:ud
// Returns U data in 4 GRFs in scrambled order
 
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EBC02:ud // msg desc; 1 is added to change BI to UV
mov (1) r16.2:ud 0x0000E000:ud // Enable Red channel
 
send (1) uwBUFFER_1(8)<1> r16 0x2 a0.0:ud
// Returns V data in 4 GRFs in scrambled order
 
SKIP_AVS_LOAD_L0_1_:
nop
 
 
/drivers/video/i965/shaders/post_processing/gen7/PL3_AVS_Buf_2.g4a
0,0 → 1,543
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 45 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: PL3_AVS_Buf_2.asm
// Author: Tatiya, Rupesh
// Description: Loads 8x8 AVS/IEF PL3 data into Buffer 2
 
 
 
// FileName : PL3_AVS_Buf.asm
// Author : Tatiya, Rupesh
// Description : Loads 8x8 AVS/IEF PL3 data into Buffer N
 
 
 
// Module name: Scaling.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
// Message Header
// m0.7 31:0 Debug
// m0.6 31:0 Debug
// m0.5 31:0 Ignored
// m0.4 31:0 Ignored
// m0.3 31:0 Ignored
// m0.2 31:16 Ignored
// 15 Alpha Write Channel Mask enable=0, disable=1
// 14 Blue Write Channel Mask (U)
// 13 Green Write Channel Mask (Y)
// 12 Red Write Channel Mask (V)
// 11:0 Ignored
// m0.1 Ignored
// m0.0 Ignored
 
 
// AVS payload
// m1.7 Group ID Number
// m1.6 U 2nd Derivative ---> NLAS dx
// m1.5 Delta V ---> Step Y
// m1.4 Delta U ---> Step X
// m1.3 Pixel 0 V Address ---> ORIY (Y0)
// m1.2 Pixel 0 U Address ---> ORIX (X0)
// m1.1 Vertical Block Number
// m1.0 Reserved
 
// Sampler Message Descriptor
// 31:29 Reserved 000
// 28:25 Message length 0010
// 24:20 Response length xxxxx ---> 4GRFs for each enabled channel (AVS), 2GRFs for each enabled channel (sample unorm)
// 19 Header Present 1
// 18:17 SIMD Mode 11 ---> SIMD32/64
// 16:12 Message Type xxxxx ---> 01011 sample_8x8, 01100 (sample_unorm), 01010 (sample_unorm+killpix)
// 11:8 Sampler Index xxxx
// 7:0 Binding Table Index xxxxxxxx
 
 
// Msg Header M0.2
// 15:15 Alpha Write Channel Mask, 0: written back, 1: not written back
// 14:14 Blue Write Channel Mask
// 13:13 Green Write Channel Mask
// 12:12 Red Write Channel Mask
 
 
//By design, Buffer 0,1,2,3 always have Layer 0 and Buffer 4,5 always have L1-L7
 
 
//used to generate LABELS at compile time.
 
 
// 18:17 SIMD Mode 10 ---> SIMD16
// 16:12 Message Type xxxxx ---> 00000 (SIMD16)
 
 
//r10-17 - 8 GRFs to load SIMD16 data (upto 4 channels)
//r18-19 - 2 GRFs to store sampler ramp.
 
.declare mfSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare muwSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare mudCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare mubCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=1 SrcRegion=<32;32,1> DstRegion=<1> Type=ub
 
 
.declare fSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare udSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ub4SCALING_0X_34X_TEMP Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<1> Type=ub
.declare uwSCALING_0X_34X_TEMP Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
// Sampler ramp is used for Scaling 0X_0.34X
.declare fSAMPLER_RAMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> Type=f // 1 GRFs, 8 elements
 
 
//#define rMSGDSC_UV r23.0
 
 
//End of _SCALING_
 
 
//Check if layer is to be skipped
 
 
// f0.1 pre-computed in Set_Layer_0
(-f0.1) jmpi (1) SKIP_AVS_LOAD_L0_2_
 
 
//AVS_PAYLOAD already has all the data loaded at this point
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EB400:ud //msg desc
 
mov (1) r16.2:ud 0x0000D000:ud // Enable Red channel
 
 
// set the vertical block number
 
 
add (1) r25.1<1>:ud r7.12:uw 2:ud
 
 
mov (8) r17.0:ud r25.0<8;8,1>:ud // Copy msg payload mirrors to MRFs
 
// Gen7 AVS WA Only for YUV packed surfaces, NV12 and Y-channel only for Planar surfaces
// if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
// {
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
// }
// else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
// {
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
// }
// else{
// modified_u_coord = u_coord;
// }
// Where u_left = u – 2*du + 3*ddu for IEF On
// And u_left = u for IEF Off case
//
 
// check whether Gen7 AVS WA is enabled,
mov (1) r14.8:uw f0.0:uw // save f0.0
mov (1) r14.5:f r17.2<0;1,0>:f // save pixel 0 U for chroma
 
and.nz.f0.0 (1) null<1>:uw r2.3:uw 0x2:uw
(-f0.0)jmpi (1) GEN7_PL3_AVS_WA_DONE_L0_2_
 
// Gen7 AVS WA, check if IEF is ON for choosing Gen7 AVS WA formula
 
and.nz.f0.0 (8) null<1>:uw r2.3<0;1,0>:uw 0x4:uw
(f0.0)mov (8) acc0.0:f r17.2<0;1,0>:f
(f0.0)mac (8) acc0.0:f r17.4<0;1,0>:f -2.0:f
(f0.0)mac (8) acc0.0:f r17.6<0;1,0>:f 3.0:f
(f0.0)mov (1) r14.2:f acc0:f // IEF ON, rTEMP3.2 = u_left
(-f0.0)mov (1) r14.2:f r17.2<0;1,0>:f // IEF OFF, rTEMP3.2 = u_left
 
and (1) r14.1:ud r2.3:uw 0xFFF8:uw
asr (1) r14.1:ud r14.1:ud 3:d
mov (1) r14.1:f r14.1:ud
 
// Gen7 AVS WA, if (int)(u_left*width + 5.0/256) > (int)(u_left*width)
mul (1) r14.0:f r14.2:f r14.1:f // rTEMP3.0 = u_left*width
add (1) r14.2:f r14.0:f 0.01953125:f // rTEMP3.2 = u_left*width + 5.0/256
add (1) r14.3:f r14.0:f 0.99609375:f // rTEMP3.3 = u_left*width + 255.0/256
 
//Check if the values are < 0 and account for (int) cast of negative numbers
 
//(int)(u_left*width)
cmp.l.f0.0 (1) null<1>:f r14.0:f 0.00000000:f
mov (1) r14.0:d r14.0:f
(f0.0)add (1) r14.0:d r14.0<0;1,0>:d -1:d
 
//(int)(u_left*width + 5.0/256)
cmp.l.f0.0 (1) null<1>:f r14.2:f 0.00000000:f
mov (1) r14.2:d r14.2:f
(f0.0)add (1) r14.2:d r14.2<0;1,0>:d -1:d
 
//(int)(u_left*width + 255.0/256)
cmp.l.f0.0 (1) null<1>:f r14.3:f 0.00000000:f
mov (1) r14.3:d r14.3:f
(f0.0)add (1) r14.3:d r14.3<0;1,0>:d -1:d
 
mov (1) f0.0:uw 0:uw // clear flag
//if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
cmp.g.f1.0 (1) null<1>:d r14.2:d r14.0:d
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
(f1.0) add (1) r17.2:f r17.2<0;1,0>:f -r2.3:f
//else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
(-f1.0) cmp.e.f0.0 (1) null<1>:d r14.3:d r14.0:d
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
(f0.0) add (1) r17.2:f r17.2<0;1,0>:f r2.2:f
 
GEN7_PL3_AVS_WA_DONE_L0_2_:
mov (1) f0.0:uw r14.8:uw // restore f0.0
 
 
send (1) uwBUFFER_2(0)<1> r16 0x2 a0.0:ud
// Returns Y data in 4 GRFs in scrambled order
 
mov (1) r17.2:f r14.5:f // restore pixel 0 U for chroma, No AVS WA for chroma
 
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EB801:ud // msg desc; 1 is added to change BI to UV
mov (1) r16.2:ud 0x0000E000:ud // Enable Red channel
 
send (1) uwBUFFER_2(4)<1> r16 0x2 a0.0:ud
// Returns U data in 4 GRFs in scrambled order
 
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EBC02:ud // msg desc; 1 is added to change BI to UV
mov (1) r16.2:ud 0x0000E000:ud // Enable Red channel
 
send (1) uwBUFFER_2(8)<1> r16 0x2 a0.0:ud
// Returns V data in 4 GRFs in scrambled order
 
SKIP_AVS_LOAD_L0_2_:
nop
 
 
/drivers/video/i965/shaders/post_processing/gen7/PL3_AVS_Buf_3.g4a
0,0 → 1,543
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 45 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: PL3_AVS_Buf_3.asm
// Author: Tatiya, Rupesh
// Description: Loads 8x8 AVS/IEF PL3 data into Buffer 3
 
 
 
// FileName : PL3_AVS_Buf.asm
// Author : Tatiya, Rupesh
// Description : Loads 8x8 AVS/IEF PL3 data into Buffer N
 
 
 
// Module name: Scaling.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
// Message Header
// m0.7 31:0 Debug
// m0.6 31:0 Debug
// m0.5 31:0 Ignored
// m0.4 31:0 Ignored
// m0.3 31:0 Ignored
// m0.2 31:16 Ignored
// 15 Alpha Write Channel Mask enable=0, disable=1
// 14 Blue Write Channel Mask (U)
// 13 Green Write Channel Mask (Y)
// 12 Red Write Channel Mask (V)
// 11:0 Ignored
// m0.1 Ignored
// m0.0 Ignored
 
 
// AVS payload
// m1.7 Group ID Number
// m1.6 U 2nd Derivative ---> NLAS dx
// m1.5 Delta V ---> Step Y
// m1.4 Delta U ---> Step X
// m1.3 Pixel 0 V Address ---> ORIY (Y0)
// m1.2 Pixel 0 U Address ---> ORIX (X0)
// m1.1 Vertical Block Number
// m1.0 Reserved
 
// Sampler Message Descriptor
// 31:29 Reserved 000
// 28:25 Message length 0010
// 24:20 Response length xxxxx ---> 4GRFs for each enabled channel (AVS), 2GRFs for each enabled channel (sample unorm)
// 19 Header Present 1
// 18:17 SIMD Mode 11 ---> SIMD32/64
// 16:12 Message Type xxxxx ---> 01011 sample_8x8, 01100 (sample_unorm), 01010 (sample_unorm+killpix)
// 11:8 Sampler Index xxxx
// 7:0 Binding Table Index xxxxxxxx
 
 
// Msg Header M0.2
// 15:15 Alpha Write Channel Mask, 0: written back, 1: not written back
// 14:14 Blue Write Channel Mask
// 13:13 Green Write Channel Mask
// 12:12 Red Write Channel Mask
 
 
//By design, Buffer 0,1,2,3 always have Layer 0 and Buffer 4,5 always have L1-L7
 
 
//used to generate LABELS at compile time.
 
 
// 18:17 SIMD Mode 10 ---> SIMD16
// 16:12 Message Type xxxxx ---> 00000 (SIMD16)
 
 
//r10-17 - 8 GRFs to load SIMD16 data (upto 4 channels)
//r18-19 - 2 GRFs to store sampler ramp.
 
.declare mfSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare muwSCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare mudCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare mubCALING_0X_34X_PAYLOAD Base=r14.0 ElementSize=1 SrcRegion=<32;32,1> DstRegion=<1> Type=ub
 
 
.declare fSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare udSCALING_0X_34X_TEMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ub4SCALING_0X_34X_TEMP Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<1> Type=ub
.declare uwSCALING_0X_34X_TEMP Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
// Sampler ramp is used for Scaling 0X_0.34X
.declare fSAMPLER_RAMP Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> Type=f // 1 GRFs, 8 elements
 
 
//#define rMSGDSC_UV r23.0
 
 
//End of _SCALING_
 
 
//Check if layer is to be skipped
 
 
// f0.1 pre-computed in Set_Layer_0
(-f0.1) jmpi (1) SKIP_AVS_LOAD_L0_3_
 
 
//AVS_PAYLOAD already has all the data loaded at this point
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EB400:ud //msg desc
 
mov (1) r16.2:ud 0x0000D000:ud // Enable Red channel
 
 
// set the vertical block number
 
 
add (1) r25.1<1>:ud r7.12:uw 3:ud
 
 
mov (8) r17.0:ud r25.0<8;8,1>:ud // Copy msg payload mirrors to MRFs
 
// Gen7 AVS WA Only for YUV packed surfaces, NV12 and Y-channel only for Planar surfaces
// if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
// {
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
// }
// else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
// {
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
// }
// else{
// modified_u_coord = u_coord;
// }
// Where u_left = u – 2*du + 3*ddu for IEF On
// And u_left = u for IEF Off case
//
 
// check whether Gen7 AVS WA is enabled,
mov (1) r14.8:uw f0.0:uw // save f0.0
mov (1) r14.5:f r17.2<0;1,0>:f // save pixel 0 U for chroma
 
and.nz.f0.0 (1) null<1>:uw r2.3:uw 0x2:uw
(-f0.0)jmpi (1) GEN7_PL3_AVS_WA_DONE_L0_3_
 
// Gen7 AVS WA, check if IEF is ON for choosing Gen7 AVS WA formula
 
and.nz.f0.0 (8) null<1>:uw r2.3<0;1,0>:uw 0x4:uw
(f0.0)mov (8) acc0.0:f r17.2<0;1,0>:f
(f0.0)mac (8) acc0.0:f r17.4<0;1,0>:f -2.0:f
(f0.0)mac (8) acc0.0:f r17.6<0;1,0>:f 3.0:f
(f0.0)mov (1) r14.2:f acc0:f // IEF ON, rTEMP3.2 = u_left
(-f0.0)mov (1) r14.2:f r17.2<0;1,0>:f // IEF OFF, rTEMP3.2 = u_left
 
and (1) r14.1:ud r2.3:uw 0xFFF8:uw
asr (1) r14.1:ud r14.1:ud 3:d
mov (1) r14.1:f r14.1:ud
 
// Gen7 AVS WA, if (int)(u_left*width + 5.0/256) > (int)(u_left*width)
mul (1) r14.0:f r14.2:f r14.1:f // rTEMP3.0 = u_left*width
add (1) r14.2:f r14.0:f 0.01953125:f // rTEMP3.2 = u_left*width + 5.0/256
add (1) r14.3:f r14.0:f 0.99609375:f // rTEMP3.3 = u_left*width + 255.0/256
 
//Check if the values are < 0 and account for (int) cast of negative numbers
 
//(int)(u_left*width)
cmp.l.f0.0 (1) null<1>:f r14.0:f 0.00000000:f
mov (1) r14.0:d r14.0:f
(f0.0)add (1) r14.0:d r14.0<0;1,0>:d -1:d
 
//(int)(u_left*width + 5.0/256)
cmp.l.f0.0 (1) null<1>:f r14.2:f 0.00000000:f
mov (1) r14.2:d r14.2:f
(f0.0)add (1) r14.2:d r14.2<0;1,0>:d -1:d
 
//(int)(u_left*width + 255.0/256)
cmp.l.f0.0 (1) null<1>:f r14.3:f 0.00000000:f
mov (1) r14.3:d r14.3:f
(f0.0)add (1) r14.3:d r14.3<0;1,0>:d -1:d
 
mov (1) f0.0:uw 0:uw // clear flag
//if (((int)(u_left*width + 5.0/256) > (int)(u_left*width))
cmp.g.f1.0 (1) null<1>:d r14.2:d r14.0:d
// modified_u_coord = u_coord – 5.0/(256*width); //floating point
(f1.0) add (1) r17.2:f r17.2<0;1,0>:f -r2.3:f
//else if(((int)(u_left*width + 255.0/256) == (int)(u_left*width))
(-f1.0) cmp.e.f0.0 (1) null<1>:d r14.3:d r14.0:d
// modified_u_coord = u_coord + 1.0/(256*width); //floating point
(f0.0) add (1) r17.2:f r17.2<0;1,0>:f r2.2:f
 
GEN7_PL3_AVS_WA_DONE_L0_3_:
mov (1) f0.0:uw r14.8:uw // restore f0.0
 
 
send (1) uwBUFFER_3(0)<1> r16 0x2 a0.0:ud
// Returns Y data in 4 GRFs in scrambled order
 
mov (1) r17.2:f r14.5:f // restore pixel 0 U for chroma, No AVS WA for chroma
 
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EB801:ud // msg desc; 1 is added to change BI to UV
mov (1) r16.2:ud 0x0000E000:ud // Enable Red channel
 
send (1) uwBUFFER_3(4)<1> r16 0x2 a0.0:ud
// Returns U data in 4 GRFs in scrambled order
 
add (1) a0.0:ud r23.5<0;1,0>:ud 0x44EBC02:ud // msg desc; 1 is added to change BI to UV
mov (1) r16.2:ud 0x0000E000:ud // Enable Red channel
 
send (1) uwBUFFER_3(8)<1> r16 0x2 a0.0:ud
// Returns V data in 4 GRFs in scrambled order
 
SKIP_AVS_LOAD_L0_3_:
nop
 
 
/drivers/video/i965/shaders/post_processing/gen7/PL3_DNDI_422CP.g4a
0,0 → 1,562
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 120 // Total instruction count
// 1 // Total kernel count
 
.kernel PL3_DNDI_422CP
.code
 
 
 
// FileName: DNDI_PL_Core.asm
// Author: Tatiya, Rupesh
 
 
 
// FileName: DNDI_Core.asm
// Author: Vivek Kumar
// Description: Tasks for DN+DI case (16x4 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x4BE8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(9,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DI_STMM_Save.asm
// Author: Vivek Kumar
// Description: Saves DI STMM Data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write STMM to memory
mov (8) mudMSGHDR_STMM(0)<1> r0.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udDNDI_RESP(8,0) // Move STMM to MRF
 
shr (1) mudMSGHDR_STMM(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin / 2
mov (1) mudMSGHDR_STMM(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_STMM(0,2)<1> 0x30007:ud { NoDDChk } // block width and height (8x4)
 
send (8) null<1>:d r20 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Hist_Save.asm
// Author: Vivek Kumar
// Description: Saves DN history data to statistics surface
 
// Write denoise history to memory
mov (8) r27<1>:ud r0.0<8;8,1>:ud // message header
 
mov (1) mudMSGHDR_HIST(1)<1> udDNDI_RESP(9,0)<0;1,0> // Move denoise history to MRF (4x1)
 
 
shr (2) r27.0<1>:ud r7.0<2;2,1>:w 2:w // X,Y origin / 4
add (1) r27.0<1>:ud r27.0<0;1,0>:ud r1.12<0;1,0>:uw { NoDDClr } // Add pitch to X origin
mov (1) r27.2<1>:ud 0x3:ud { NoDDChk } // block width and height
 
mov (8) mudMSGHDR_HIST(0)<1> r27.0<8;8,1>:ud
send (8) null<1>:d r22 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x20007:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | MCNT | FCNT | TCNT | X | X | X | X |
//----------------------------------------------------
//| DcTpT | SVCM | DcBpT | DcTpB |
//----------------------------------------------------
//| SHCM | STAD | DcTcB | DcBpB |
//----------------------------------------------------
mov (1) mudMSGHDR_ENC_STATS(1,0)<1> udDNDI_RESP(9,1)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,3)<2> udDNDI_RESP(9,3)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,2)<2> udDNDI_RESP(9,5)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Load_UV_IMC3_16x4.asm
// Author: Vivek Kumar
// Description: Read UV for 16x4 block through DATAPORT
 
 
 
// FileName: UVCopy_Load_16x4.asm
// Author: Vivek Kumar
// Description: Read UV for 16x4 block through DATAPORT
 
 
add (2) r27.0<1>:d r7.0<2;2,1>:w r4.4<2;2,1>:w // Source Y Block origin
asr (2) r27.0<1>:d r27.0<2;2,1>:d 1:w { NoDDClr } // U/V block origin should be half of Y's
mov (1) r27.2<1>:ud 0x10007:ud { NoDDChk } // U/V block width and height (8x2)
mov (8) r36<1>:ud r27.0<8;8,1>:ud
mov (8) r38<1>:ud r27.0<8;8,1>:ud
send (8) udDNDI_UV_RESP(0)<1> r36 0x4 0x2190001:ud
send (8) udDNDI_UV_RESP(1)<1> r38 0x4 0x2190002:ud
 
 
 
// FileName: DN_Save_Y_16x4.asm
// Author: Vivek Kumar
// Description: Save one 16x4 blocks of Y channel of DN output for reference
 
 
// check top/bottom field first
cmp.e.f0.0 (1) null<1>:w r1.28<0;1,0>:ub 1:w
 
mov (8) mudMSGHDR_DN_OUT(0)<1> r0<8;8,1>:ud // message header
mov (2) mdMSGHDR_DN_OUT(0,0)<1> r7.0<2;2,1>:w { NoDDClr } // X origin * 2 (422 output)
mov (1) mudMSGHDR_DN_OUT(0,2)<1> 0x3000F:ud { NoDDChk } // block width and height (32x8)
 
(f0.0) jmpi (1) TOP_FIELD_FIRST
 
BOTTOM_FIELD_FIRST:
 
mov (4) mudMSGHDR_DN_OUT(1,0)<1> udDNDI_RESP(10,0)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(1,4)<1> udDNDI_RESP(4,4)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
mov (4) mudMSGHDR_DN_OUT(2,0)<1> udDNDI_RESP(10,4)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(2,4)<1> udDNDI_RESP(5,4)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
 
jmpi (1) SAVE_DN_CURR
 
TOP_FIELD_FIRST:
mov (4) mudMSGHDR_DN_OUT(1,0)<1> udDNDI_RESP(4,0)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(1,4)<1> udDNDI_RESP(10,0)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
mov (4) mudMSGHDR_DN_OUT(2,0)<1> udDNDI_RESP(5,0)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(2,4)<1> udDNDI_RESP(10,4)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
 
SAVE_DN_CURR:
//send out data through data port
send (8) null<1>:d r31.0 0x5 0x60A8018:ud
 
 
 
// FileName: DI_Save_422CP_16x4.asm
// Author: Vivek Kumar
// Description: Save two 16x4 blocks of DI output in 422 format to Color Pipe (IECP)
 
 
.declare mubMSGHDR_DI_OUT1_1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mubMSGHDR_DI_OUT1_2 Base=r21.0 ElementSize=1 Type=ub
 
 
.declare mubMSGHDR_DI_OUT2_1 Base=r24.0 ElementSize=1 Type=ub
 
 
.declare mubMSGHDR_DI_OUT2_2 Base=r27.0 ElementSize=1 Type=ub
 
 
mov (8) r27.0<1>:ud r0.0<8;8,1>:ud
shl (1) r27.0<1>:ud r7.0<0;1,0>:w 1:w { NoDDClr } // H. block origin need to be doubled
mov (1) r27.1<1>:ud r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Block origin
mov (1) r27.2<1>:ud 0x3000F:ud { NoDDClr, NoDDChk } // Block width and height (16x8)
 
//M0.3 - 0 - CP Enable, 1 - Area of Interest, 3:2 Message Format(TBD), 4:3 - Ignored, 31:5 CP state pointer
//Compose area-of-interest bit + color pipe state pointer
or (1) r27.3<1>:ud r2.4<0;1,0>:ud r7.26<0;1,0>:b { NoDDChk }
 
//prepare the message headers
mov (8) r18.0<1>:ud r27<8;8,1>:ud
mov (8) r24.0<1>:ud r27<8;8,1>:ud
 
 
// Pack 2nd field Y; First 8x4 block
mov (8) mubMSGHDR_DI_OUT1_1(1)<2> ubDNDI_RESP(0,0)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_1(1,16)<2> ubDNDI_RESP(0,16)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_1(2)<2> ubDNDI_RESP(0,32)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_1(2,16)<2> ubDNDI_RESP(0,48)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 2nd field U, V; First 8x4 block
mov (4) mubMSGHDR_DI_OUT1_1(1,1)<4> ubDNDI_RESP(2,1)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(1,17)<4> ubDNDI_RESP(2,17)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_1(1,3)<4> ubDNDI_RESP(2,0)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(1,19)<4> ubDNDI_RESP(2,16)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(2,1)<4> ubDNDI_RESP(2,33)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(2,17)<4> ubDNDI_RESP(2,49)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_1(2,3)<4> ubDNDI_RESP(2,32)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(2,19)<4> ubDNDI_RESP(2,48)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
 
// Pack 2nd field Y; Second 8x4 block
mov (8) r21.0<1>:ud r18.0<8;8,1>:ud
add (1) r21.0<1>:ud r21.0<0;1,0>:w 0x10:w
 
mov (8) mubMSGHDR_DI_OUT1_2(1)<2> ubDNDI_RESP(0,8)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_2(1,16)<2> ubDNDI_RESP(0,24)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_2(2)<2> ubDNDI_RESP(0,40)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_2(2,16)<2> ubDNDI_RESP(0,56)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 2nd field U, V; Second 8x4 block
mov (4) mubMSGHDR_DI_OUT1_2(1,1)<4> ubDNDI_RESP(2,9)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(1,17)<4> ubDNDI_RESP(2,25)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_2(1,3)<4> ubDNDI_RESP(2,8)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(1,19)<4> ubDNDI_RESP(2,24)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(2,1)<4> ubDNDI_RESP(2,41)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(2,17)<4> ubDNDI_RESP(2,57)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_2(2,3)<4> ubDNDI_RESP(2,40)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(2,19)<4> ubDNDI_RESP(2,56)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
send (8) null<1>:d r18.0 0x5 0x60A801B:ud
send (8) null<1>:d r21.0 0x5 0x60A801B:ud
 
// Pack 1st field Y; 1st 8x4 block
mov (8) mubMSGHDR_DI_OUT2_1(1)<2> ubDNDI_RESP(4,0)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_1(1,16)<2> ubDNDI_RESP(4,16)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_1(2)<2> ubDNDI_RESP(4,32)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_1(2,16)<2> ubDNDI_RESP(4,48)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 1st field U,V; 1st 8x4 block
mov (4) mubMSGHDR_DI_OUT2_1(1,1)<4> ubDNDI_RESP(6,1)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(1,17)<4> ubDNDI_RESP(6,17)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_1(1,3)<4> ubDNDI_RESP(6,0)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(1,19)<4> ubDNDI_RESP(6,16)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(2,1)<4> ubDNDI_RESP(6,33)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(2,17)<4> ubDNDI_RESP(6,49)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_1(2,3)<4> ubDNDI_RESP(6,32)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(2,19)<4> ubDNDI_RESP(6,48)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
// Pack 1st field Y; 2nd 8x4 block
mov (8) r27.0<1>:ud r24.0<8;8,1>:ud
add (1) r27.0<1>:ud r27.0<0;1,0>:w 0x10:w
 
mov (8) mubMSGHDR_DI_OUT2_2(1)<2> ubDNDI_RESP(4,8)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_2(1,16)<2> ubDNDI_RESP(4,24)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_2(2)<2> ubDNDI_RESP(4,40)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_2(2,16)<2> ubDNDI_RESP(4,56)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 1st field U, V; 2nd 8x4 block
mov (4) mubMSGHDR_DI_OUT2_2(1,1)<4> ubDNDI_RESP(6,9)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(1,17)<4> ubDNDI_RESP(6,25)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_2(1,3)<4> ubDNDI_RESP(6,8)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(1,19)<4> ubDNDI_RESP(6,24)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(2,1)<4> ubDNDI_RESP(6,41)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(2,17)<4> ubDNDI_RESP(6,57)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_2(2,3)<4> ubDNDI_RESP(6,40)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(2,19)<4> ubDNDI_RESP(6,56)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
send (8) null<1>:d r24.0 0x5 0x60A801E:ud
send (8) null<1>:d r27.0 0x5 0x60A801E:ud
 
 
 
// FileName: DN_Save_UV_IMC3_16x4.asm
// Author: Vivek Kumar
// Description: Save UV for 16x4 block through DATAPORT
 
 
 
// FileName: UVCopy_Save_16x4.asm
// Author: Vivek Kumar
// Description: Save UV for 16x4 block through DATAPORT
 
 
//Reuse the header from Load component
 
 
mov (4) mudMSGHDR_UCOPY(1)<1> udDNDI_UV_RESP(0)<4;4,1>
mov (4) mudMSGHDR_VCOPY(1)<1> udDNDI_UV_RESP(1)<4;4,1>
send (4) null<1>:d r36 0x5 0x40A8019:ud
send (4) null<1>:d r38 0x5 0x40A801A:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/PL3_DNDI_PA.g4a
0,0 → 1,500
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 90 // Total instruction count
// 1 // Total kernel count
 
.kernel PL3_DNDI_PA
.code
 
 
 
// FileName: DNDI_PL_Core.asm
// Author: Tatiya, Rupesh
 
 
 
// FileName: DNDI_Core.asm
// Author: Vivek Kumar
// Description: Tasks for DN+DI case (16x4 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x4BE8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(9,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DI_STMM_Save.asm
// Author: Vivek Kumar
// Description: Saves DI STMM Data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write STMM to memory
mov (8) mudMSGHDR_STMM(0)<1> r0.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udDNDI_RESP(8,0) // Move STMM to MRF
 
shr (1) mudMSGHDR_STMM(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin / 2
mov (1) mudMSGHDR_STMM(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_STMM(0,2)<1> 0x30007:ud { NoDDChk } // block width and height (8x4)
 
send (8) null<1>:d r20 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Hist_Save.asm
// Author: Vivek Kumar
// Description: Saves DN history data to statistics surface
 
// Write denoise history to memory
mov (8) r27<1>:ud r0.0<8;8,1>:ud // message header
 
mov (1) mudMSGHDR_HIST(1)<1> udDNDI_RESP(9,0)<0;1,0> // Move denoise history to MRF (4x1)
 
 
shr (2) r27.0<1>:ud r7.0<2;2,1>:w 2:w // X,Y origin / 4
add (1) r27.0<1>:ud r27.0<0;1,0>:ud r1.12<0;1,0>:uw { NoDDClr } // Add pitch to X origin
mov (1) r27.2<1>:ud 0x3:ud { NoDDChk } // block width and height
 
mov (8) mudMSGHDR_HIST(0)<1> r27.0<8;8,1>:ud
send (8) null<1>:d r22 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x20007:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | MCNT | FCNT | TCNT | X | X | X | X |
//----------------------------------------------------
//| DcTpT | SVCM | DcBpT | DcTpB |
//----------------------------------------------------
//| SHCM | STAD | DcTcB | DcBpB |
//----------------------------------------------------
mov (1) mudMSGHDR_ENC_STATS(1,0)<1> udDNDI_RESP(9,1)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,3)<2> udDNDI_RESP(9,3)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,2)<2> udDNDI_RESP(9,5)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Load_UV_IMC3_16x4.asm
// Author: Vivek Kumar
// Description: Read UV for 16x4 block through DATAPORT
 
 
 
// FileName: UVCopy_Load_16x4.asm
// Author: Vivek Kumar
// Description: Read UV for 16x4 block through DATAPORT
 
 
add (2) r27.0<1>:d r7.0<2;2,1>:w r4.4<2;2,1>:w // Source Y Block origin
asr (2) r27.0<1>:d r27.0<2;2,1>:d 1:w { NoDDClr } // U/V block origin should be half of Y's
mov (1) r27.2<1>:ud 0x10007:ud { NoDDChk } // U/V block width and height (8x2)
mov (8) r36<1>:ud r27.0<8;8,1>:ud
mov (8) r38<1>:ud r27.0<8;8,1>:ud
send (8) udDNDI_UV_RESP(0)<1> r36 0x4 0x2190001:ud
send (8) udDNDI_UV_RESP(1)<1> r38 0x4 0x2190002:ud
 
 
 
// FileName: DN_Save_Y_16x4.asm
// Author: Vivek Kumar
// Description: Save one 16x4 blocks of Y channel of DN output for reference
 
 
// check top/bottom field first
cmp.e.f0.0 (1) null<1>:w r1.28<0;1,0>:ub 1:w
 
mov (8) mudMSGHDR_DN_OUT(0)<1> r0<8;8,1>:ud // message header
mov (2) mdMSGHDR_DN_OUT(0,0)<1> r7.0<2;2,1>:w { NoDDClr } // X origin * 2 (422 output)
mov (1) mudMSGHDR_DN_OUT(0,2)<1> 0x3000F:ud { NoDDChk } // block width and height (32x8)
 
(f0.0) jmpi (1) TOP_FIELD_FIRST
 
BOTTOM_FIELD_FIRST:
 
mov (4) mudMSGHDR_DN_OUT(1,0)<1> udDNDI_RESP(10,0)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(1,4)<1> udDNDI_RESP(4,4)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
mov (4) mudMSGHDR_DN_OUT(2,0)<1> udDNDI_RESP(10,4)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(2,4)<1> udDNDI_RESP(5,4)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
 
jmpi (1) SAVE_DN_CURR
 
TOP_FIELD_FIRST:
mov (4) mudMSGHDR_DN_OUT(1,0)<1> udDNDI_RESP(4,0)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(1,4)<1> udDNDI_RESP(10,0)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
mov (4) mudMSGHDR_DN_OUT(2,0)<1> udDNDI_RESP(5,0)<4;4,1> { NoDDClr } // 2nd field luma from current frame (line 0,2)
mov (4) mudMSGHDR_DN_OUT(2,4)<1> udDNDI_RESP(10,4)<4;4,1> { NoDDChk } // 1st field luma from current frame (line 1,3)
 
SAVE_DN_CURR:
//send out data through data port
send (8) null<1>:d r31.0 0x5 0x60A8018:ud
 
 
 
// FileName: DI_Save_PA_16x4.asm
// Author: Vivek Kumar
// Description: Save two 16x4 blocks of DI output in Packed format
 
 
add (4) a0.4<1>:uw r2.28<4;4,1>:ub 608:w // Initial Y,U,V offset in YUV422 block; it starts at m20
 
mov (8) r27.0<1>:ud r0.0<8;8,1>:ud
shl (1) r27.0<1>:d r7.0<0;1,0>:w 1:w { NoDDClr } // H. block origin need to be doubled
mov (1) r27.1<1>:d r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Block origin
mov (1) r27.2<1>:ud 0x3001F:ud { NoDDChk } // Block width and height (32x8)
 
//prepare the message headers
mov (8) r18.0<1>:ud r27<8;8,1>:ud
mov (8) r23.0<1>:ud r27<8;8,1>:ud
 
// Pack 2nd field Y
mov (16) r[a0.4, 0]<2> ubDNDI_RESP(0,0) { NoDDClr }
mov (16) r[a0.4, 32]<2> ubDNDI_RESP(0,16) { NoDDClr }
mov (16) r[a0.4, 64]<2> ubDNDI_RESP(0,32) { NoDDClr }
mov (16) r[a0.4, 96]<2> ubDNDI_RESP(0,48) { NoDDClr }
// Pack 2nd field U
mov (8) r[a0.5, 0]<4> ubDNDI_RESP(2,1)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 32]<4> ubDNDI_RESP(2,17)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 64]<4> ubDNDI_RESP(2,33)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 96]<4> ubDNDI_RESP(2,49)<16;8,2> { NoDDClr, NoDDChk } //U pixels
// Pack 2nd field V
mov (8) r[a0.6, 0]<4> ubDNDI_RESP(2,0)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 32]<4> ubDNDI_RESP(2,16)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 64]<4> ubDNDI_RESP(2,32)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 96]<4> ubDNDI_RESP(2,48)<16;8,2> { NoDDChk } //Vpixels
 
// Pack 1st field Y
mov (16) r[a0.4, 160]<2> ubDNDI_RESP(4,0) { NoDDClr }
mov (16) r[a0.4, 192]<2> ubDNDI_RESP(4,16) { NoDDClr }
mov (16) r[a0.4, 224]<2> ubDNDI_RESP(4,32) { NoDDClr }
mov (16) r[a0.4, 256]<2> ubDNDI_RESP(4,48) { NoDDClr }
// Pack 1st field U
mov (8) r[a0.5, 160]<4> ubDNDI_RESP(6,1)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 192]<4> ubDNDI_RESP(6,17)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 224]<4> ubDNDI_RESP(6,33)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 256]<4> ubDNDI_RESP(6,49)<16;8,2> { NoDDClr, NoDDChk } //U pixels
// Pack 1st field V
mov (8) r[a0.6, 160]<4> ubDNDI_RESP(6,0)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 192]<4> ubDNDI_RESP(6,16)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 224]<4> ubDNDI_RESP(6,32)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 256]<4> ubDNDI_RESP(6,48)<16;8,2> { NoDDChk } //Vpixels
 
//save the previous frame
send (8) null<1>:d r18.0 0x5 0xA0A801B:ud
 
//save the current frame
send (8) null<1>:d r23.0 0x5 0xA0A801E:ud
 
 
 
// FileName: DN_Save_UV_IMC3_16x4.asm
// Author: Vivek Kumar
// Description: Save UV for 16x4 block through DATAPORT
 
 
 
// FileName: UVCopy_Save_16x4.asm
// Author: Vivek Kumar
// Description: Save UV for 16x4 block through DATAPORT
 
 
//Reuse the header from Load component
 
 
mov (4) mudMSGHDR_UCOPY(1)<1> udDNDI_UV_RESP(0)<4;4,1>
mov (4) mudMSGHDR_VCOPY(1)<1> udDNDI_UV_RESP(1)<4;4,1>
send (4) null<1>:d r36 0x5 0x40A8019:ud
send (4) null<1>:d r38 0x5 0x40A801A:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/PL3_DNUV_PL3.g4a
0,0 → 1,2684
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 1295 // Total instruction count
// 1 // Total kernel count
 
 
.kernel PL3_DNUV_PL3
.code
 
 
 
//Module : DN_UV_Setup
//Author : Tatiya, Rupesh
//Description : Initial Set-up for DN_UV
 
 
 
 
// Module name : ChromaDenoise.inc
// Author : Tatiya, Rupesh
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//======================================================
//Interface for serpent mode Chroma Denoise, added by Le
//======================================================
//r1
 
 
//noise history thresholds (low and high)
 
 
//temporal difference thresholds (high and low)
 
 
//noise history thresholds (low and high)
//#define ubNoiseHistMaxHigh r1.22
//#define ubNoiseHistMaxLow r1.23
//#define ubNoiseHistDeltaHigh r1.24
//#define ubNoiseHistDeltaLow r1.25
 
//Gaussian thresholds
 
 
//temporal difference thresholds (default)
 
 
//r2
//history thresholds (default)
 
 
//denoise factor (0-63)
 
 
//====================== Binding table (Explicit To DNUV)=========================================
//Used by DN_UV kernels
 
 
//Pointer to Current Frame UV
 
 
//r1-r6
//CURBE GRFs used as TEMP : Used for max computation and storing max temporarily. : r1-r6
 
 
.declare ubCURBE_TEMP Base=r1.0 ElementSize=1 Type=ub
.declare uwCURBE_TEMP Base=r1.0 ElementSize=2 Type=uw
.declare wCURBE_TEMP Base=r1.0 ElementSize=2 Type=w
.declare fCURBE_TEMP Base=r1.0 ElementSize=4 Type=f
.declare udCURBE_TEMP Base=r1.0 ElementSize=4 Type=ud
.declare uwMAX_ABS_DIFF Base=r5.0 ElementSize=2 Type=uw
 
//r1
 
 
//r3
 
 
//r4
 
//r7
//All of the following has to defined in Same GRF for optimal performance.
 
 
//r8-24
//Previous Frame UV
 
.declare udPREV_UV Base=r8.0 ElementSize=4 Type=ud
.declare ubPREV_UV Base=r8.0 ElementSize=1 Type=ub
 
 
//r25-48
//TEMP Space for any Usage.
 
 
//=========================================================================
//Definations and declarations for serpent mode Chroma Denoise, added by Le
//=========================================================================
 
 
.declare udGNE_UV Base=r24.0 ElementSize=4 Type=ud
.declare fGNE_UV Base=r24.0 ElementSize=4 Type=f
.declare ubGNE_UV Base=r24.0 ElementSize=1 Type=ub
 
.declare udMSGHDR_BNE_SERP Base=r25.0 ElementSize=4 Type=ud
.declare udMSGSRC_BNE_SERP Base=r26.0 ElementSize=4 Type=ud
 
 
.declare ubDN_UV_Thresholds Base=r26.0 ElementSize=1 Type=ub
.declare ubDN_UV_Thresholds_Temp Base=r27.0 ElementSize=1 Type=ub
.declare udDN_UV_Thresholds Base=r26.0 ElementSize=4 Type=ud
.declare udDN_UV_Thresholds_Temp Base=r27.0 ElementSize=4 Type=ud
.declare fDN_UV_Thresholds Base=r26.0 ElementSize=4 Type=f
.declare fDN_UV_Thresholds_Temp Base=r27.0 ElementSize=4 Type=f
 
 
//====================================================================================
 
 
//TEMP23: To hold V data for PL3 surfaces
.declare udCURR_V_TEMP Base=r25.0 ElementSize=4 Type=ud
.declare ubCURR_V_TEMP Base=r25.0 ElementSize=1 Type=ub
 
//GRFs to calculate Median: r25-r42
.declare ubMEDIAN_TEMP Base=r25.0 ElementSize=1 Type=ub
 
//18 GRFs to hold difference : r25-r42
.declare wDIFF Base=r25.0 ElementSize=2 Type=w
.declare uwDIFF Base=r25.0 ElementSize=2 Type=uw
 
//Temporal Diff
.declare wDIFF_TEMPORAL Base=r25.0 ElementSize=2 Type=w
.declare ubDIFF_TEMPORAL Base=r25.0 ElementSize=1 Type=ub
 
//4 GRFs to hold Sobel Value : r43-46
.declare wSOBEL_X Base=r43.0 ElementSize=2 Type=w
.declare uwSOBEL Base=r43.0 ElementSize=2 Type=uw
 
 
//2 GRFs to hold SOAD temporarily: r47-48
.declare uwSOAD Base=r47.0 ElementSize=2 Type=uw
 
//Temp GRFs to hold extra YUYV pixels: r43-r48
.declare ubTEMP5 Base=r43.0 ElementSize=1 Type=ub
 
//Temp GRFs in Median Calculation: r47-r48
.declare ubTEMP1 Base=r47.0 ElementSize=1 Type=ub
 
.declare uwTEMP0 Base=r48.0 ElementSize=2 Type=uw
.declare ubTEMP0 Base=r48.0 ElementSize=1 Type=ub
 
//Temp Space to store Median : r49-50
 
.declare ubMEDIAN Base=r49.0 ElementSize=1 Type=ub
 
//r49
 
 
//r50
//Message Source
 
 
//r51
//DN_UV History Surface
 
.declare udHIST_UV Base=r51.0 ElementSize=4 Type=ud
.declare ubHIST_UV Base=r51.0 ElementSize=1 Type=ub
 
//r52 - r91
//r52
//Current Frame UV
 
 
.declare udCURR_UV Base=r52.0 ElementSize=4 Type=ud
.declare ubCURR_UV Base=r52.0 ElementSize=1 Type=ub
 
//r54
//CURBE COPY
 
 
//r55
 
 
.declare uwSOAD_MIN_8x4 Base=r56.0 ElementSize=2 Type=uw
 
//r61
 
 
//r62
 
 
//History Surface Temp Origin
 
 
//r63
//Current Frame Y Temp Origin
 
 
//BNE Surface Origin
 
 
//r70
 
.declare uwDIFF_TEMPORAL_SUM4x4 Base=r70.0 ElementSize=2 Type=uw //4 GRFs
 
//r74-91 : For Saving Dest UV (PL2/PL3)
 
 
.declare ubMSGPAYLOAD_UV0 Base=r75.0 ElementSize=1 Type=ub
 
 
.declare ubMSGPAYLOAD_U Base=r75.0 ElementSize=1 Type=ub
 
 
.declare ubMSGPAYLOAD_UV1 Base=r84.0 ElementSize=1 Type=ub
 
 
.declare ubMSGPAYLOAD_V Base=r84.0 ElementSize=1 Type=ub
 
//r90
 
.declare uwDIFF_TEMPORAL_SUM4x4_FINAL Base=r90.0 ElementSize=2 Type=uw //2 GRFs
 
//r92-127
//Current Frame Y
 
 
//r92
.declare uwDIFF_TEMPORAL_SUM4x4_TEMP_0 Base=r92 ElementSize=2 Type=uw
//r101
.declare uwDIFF_TEMPORAL_SUM4x4_TEMP_1 Base=r101 ElementSize=2 Type=uw
//r110
.declare uwDIFF_TEMPORAL_SUM4x4_TEMP_2 Base=r110 ElementSize=2 Type=uw
//r119
.declare uwDIFF_TEMPORAL_SUM4x4_TEMP_3 Base=r119 ElementSize=2 Type=uw
 
.declare udCURR_Y0 Base=r93.0 ElementSize=4 Type=ud
.declare ubCURR_Y0 Base=r93.0 ElementSize=1 Type=ub
.declare udCURR_Y1 Base=r102.0 ElementSize=4 Type=ud
.declare ubCURR_Y1 Base=r102.0 ElementSize=1 Type=ub
.declare udCURR_Y2 Base=r111.0 ElementSize=4 Type=ud
.declare ubCURR_Y2 Base=r111.0 ElementSize=1 Type=ub
.declare udCURR_Y3 Base=r120.0 ElementSize=4 Type=ud
.declare ubCURR_Y3 Base=r120.0 ElementSize=1 Type=ub
 
//r92: To hold U data for PL3 surfaces
.declare udCURR_U_TEMP Base=r92.0 ElementSize=4 Type=ud
.declare ubCURR_U_TEMP Base=r92.0 ElementSize=1 Type=ub
 
//r112: To hold U data for PL3 surfaces
.declare udPREV_U_TEMP Base=r112.0 ElementSize=4 Type=ud
.declare ubPREV_U_TEMP Base=r112.0 ElementSize=1 Type=ub
 
//r120: To hold U data for PL3 surfaces
.declare udPREV_V_TEMP Base=r120.0 ElementSize=4 Type=ud
.declare ubPREV_V_TEMP Base=r120.0 ElementSize=1 Type=ub
 
 
// Initialize message source with r0.
mov (8) r50.0<1>:ud r0.0<8;8,1>:ud
mov (8) r92.0<1>:ud r0.0<8;8,1>:ud
mov (8) r101.0<1>:ud r0.0<8;8,1>:ud
mov (8) r110.0<1>:ud r0.0<8;8,1>:ud
mov (8) r119.0<1>:ud r0.0<8;8,1>:ud
 
 
 
//Module Name : DN_UV_PL3_Load_Curr_Frame_UV
//Author : Tatiya, Rupesh
//Description : Loads Current Frame U/V data for PL3 input.
 
 
 
//Module name : DN_UV_Load_Curr_Frame_UV
//Author : Tatiya, Rupesh
//Description : Loads Current Frame (UV only).
// We need 4 extra rows (2 per field) and 2 extra pixel (1 each side) for both U and V each.
// The processing size is 16x16 U and V each. So we need : U size - 18x20, V size - 18x20, UV size - 36x20, YUYV size - 72x20.
 
 
 
 
//18x20 U/V block is partitioned as follows:
// <------ 18 ------>
// ------------------
// | 18x8 A1 |
// | |
// |----------------|
// | 18x8 A2 |
// | |
// |----------------|
// | 18x4 A2 |
// |----------------|
//
// Cordinates: (x-1, y-2), (x-1, y+6), (x-1, y+14)
 
//1. Load U data into starting at CURR_Y0 (r93-r122)
//2. Load V data into TEMP space (r25-r44)
 
//U/V surface origin: (ORIX/2, ORIY/2)
add (2) r7.4<1>:w r7.0<2;2,1>:w r4.4<2;2,1>:w { AccWrEn } // Source Block origin
shr (2) r7.4<1>:w acc0.4<2;2,1>:w 1:w //U Data
mov (2) acc0.0<1>:d r7.4<2;2,1>:w
 
//A1
add (1) r50.0<1>:d acc0.0<0;1,0>:d -1:d
add (1) r50.1<1>:d acc0.1<0;1,0>:d -2:d
mov (1) r50.2<1>:ud 0x70011:ud
send (8) udCURR_U_TEMP(0)<1> r50 0x4 0x2890004:ud
 
//A2
add (1) r50.1<1>:d acc0.1<0;1,0>:d 6:d
send (8) udCURR_U_TEMP(8)<1> r50 0x4 0x2890004:ud
 
//A3
add (1) r50.1<1>:d acc0.1<0;1,0>:d 14:d
mov (1) r50.2<1>:ud 0x30011:ud
send (8) udCURR_U_TEMP(16)<1> r50 0x4 0x2490004:ud
 
//V Data
//A1
add (1) r50.0<1>:d acc0.0<0;1,0>:d -1:d
add (1) r50.1<1>:d acc0.1<0;1,0>:d -2:d
mov (1) r50.2<1>:ud 0x70011:ud
send (8) udCURR_V_TEMP(0)<1> r50 0x4 0x2890005:ud
 
//A2
add (1) r50.1<1>:d acc0.1<0;1,0>:d 6:d
send (8) udCURR_V_TEMP(8)<1> r50 0x4 0x2890005:ud
 
//A3
add (1) r50.1<1>:d acc0.1<0;1,0>:d 14:d
mov (1) r50.2<1>:ud 0x30011:ud
send (8) udCURR_V_TEMP(16)<1> r50 0x4 0x2490005:ud
 
//History Origin, Current Y origin and BNE surface origin - all are in inline GRF. Use , . -rT.
 
//Calculate Origin For History Surface: (ORIX/4, ORIY/8)
mov (16) acc0.0<1>:w r7.0<0;2,1>:w { AccWrEn }
shr (1) r7.2<1>:w acc0.2<0;1,0>:w 2:w
shr (1) r7.3<1>:w acc0.3<0;1,0>:w 3:w
 
//Calculate Origin For BNE Surface: (ORIX/8, ORIY/16)
shr (1) r7.6<1>:w acc0.6<0;1,0>:w 3:w
shr (1) r7.7<1>:w acc0.7<0;1,0>:w 4:w
 
 
 
//Module Name : DN_UV_PL3_Load_Prev_Frame_UV.asm
//Author : Tatiya, Rupesh
//Description : Loads Pevious Frame UV data for PL3 input.
 
 
 
//Module Name : DN_UV_Load_Prev_Frame_UV
//Author : Tatiya, Rupesh
//Description : Loads Prev Frame (UV only). U size - 16x16, V size - 16x16, UV size - 32x16, YUYV size - 64x16.
 
 
 
 
//1. Load U in bottom half of UV space for prev frame (r17-r24)
//2. Load V in bottom quarter of Y space for curr frame (r120-r127)
 
mov (2) r50.0<1>:d r7.4<2;2,1>:w { AccWrEn } // Source lock origin
mov (1) r50.2<1>:ud 0xF000F:ud // U/V block width and height (16x16)
 
mov (8) r49.0<1>:ud r50<8;8,1>:ud
 
send (8) udPREV_U_TEMP(0)<1> r50 0x4 0x2890001:ud //U data
send (8) udPREV_V_TEMP(0)<1> r49 0x4 0x2890002:ud //V data
 
 
//TODO - See if History loading can be combined with Prev Frame Load. - rT
 
 
//Module name : DN_UV_Load_Hist_UV
//Author : Tatiya, Rupesh
//Description : Load DN History for UV denoise. 4x4 for each U & V.
 
 
 
 
mov (2) r50.0<1>:d r7.2<2;2,1>:w
mov (1) r50.2<1>:ud 0x30007:ud
send (8) udHIST_UV(0)<1> r50 0x4 0x2190022:ud
 
 
 
//File Name : DN_UV_PL3_Interleave_Curr_Frame_UV.asm
//Author : Tatiya, Rupesh
//Description : Interleave separately loaded U and V for PL3 format.
// This is needed because Noise Detection and Noise Reduction works on interleaved UV data.
 
//1. U data: Starting at CURR_Y0 (r93-r122)
//2. V data: TEMP space (r25-r44)
 
//In one GRF, we need 10 U (1+8+1) bytes, but there's no SIMD10. So use SIMD16 and discard last 6 bytes.
 
 
//Move U data
mov (16) ubCURR_UV(0,0)<2> ubCURR_U_TEMP(0,0)<16;16,1>
mov (16) ubCURR_UV(20,0)<2> ubCURR_U_TEMP(0,8)<16;16,1>
 
mov (16) ubCURR_UV(1,0)<2> ubCURR_U_TEMP(1,0)<16;16,1>
mov (16) ubCURR_UV(21,0)<2> ubCURR_U_TEMP(1,8)<16;16,1>
 
mov (16) ubCURR_UV(2,0)<2> ubCURR_U_TEMP(2,0)<16;16,1>
mov (16) ubCURR_UV(22,0)<2> ubCURR_U_TEMP(2,8)<16;16,1>
 
mov (16) ubCURR_UV(3,0)<2> ubCURR_U_TEMP(3,0)<16;16,1>
mov (16) ubCURR_UV(23,0)<2> ubCURR_U_TEMP(3,8)<16;16,1>
 
mov (16) ubCURR_UV(4,0)<2> ubCURR_U_TEMP(4,0)<16;16,1>
mov (16) ubCURR_UV(24,0)<2> ubCURR_U_TEMP(4,8)<16;16,1>
 
mov (16) ubCURR_UV(5,0)<2> ubCURR_U_TEMP(5,0)<16;16,1>
mov (16) ubCURR_UV(25,0)<2> ubCURR_U_TEMP(5,8)<16;16,1>
 
mov (16) ubCURR_UV(6,0)<2> ubCURR_U_TEMP(6,0)<16;16,1>
mov (16) ubCURR_UV(26,0)<2> ubCURR_U_TEMP(6,8)<16;16,1>
 
mov (16) ubCURR_UV(7,0)<2> ubCURR_U_TEMP(7,0)<16;16,1>
mov (16) ubCURR_UV(27,0)<2> ubCURR_U_TEMP(7,8)<16;16,1>
 
mov (16) ubCURR_UV(8,0)<2> ubCURR_U_TEMP(8,0)<16;16,1>
mov (16) ubCURR_UV(28,0)<2> ubCURR_U_TEMP(8,8)<16;16,1>
 
mov (16) ubCURR_UV(9,0)<2> ubCURR_U_TEMP(9,0)<16;16,1>
mov (16) ubCURR_UV(29,0)<2> ubCURR_U_TEMP(9,8)<16;16,1>
 
mov (16) ubCURR_UV(10,0)<2> ubCURR_U_TEMP(10,0)<16;16,1>
mov (16) ubCURR_UV(30,0)<2> ubCURR_U_TEMP(10,8)<16;16,1>
 
mov (16) ubCURR_UV(11,0)<2> ubCURR_U_TEMP(11,0)<16;16,1>
mov (16) ubCURR_UV(31,0)<2> ubCURR_U_TEMP(11,8)<16;16,1>
 
mov (16) ubCURR_UV(12,0)<2> ubCURR_U_TEMP(12,0)<16;16,1>
mov (16) ubCURR_UV(32,0)<2> ubCURR_U_TEMP(12,8)<16;16,1>
 
mov (16) ubCURR_UV(13,0)<2> ubCURR_U_TEMP(13,0)<16;16,1>
mov (16) ubCURR_UV(33,0)<2> ubCURR_U_TEMP(13,8)<16;16,1>
 
mov (16) ubCURR_UV(14,0)<2> ubCURR_U_TEMP(14,0)<16;16,1>
mov (16) ubCURR_UV(34,0)<2> ubCURR_U_TEMP(14,8)<16;16,1>
 
mov (16) ubCURR_UV(15,0)<2> ubCURR_U_TEMP(15,0)<16;16,1>
mov (16) ubCURR_UV(35,0)<2> ubCURR_U_TEMP(15,8)<16;16,1>
 
mov (16) ubCURR_UV(16,0)<2> ubCURR_U_TEMP(16,0)<16;16,1>
mov (16) ubCURR_UV(36,0)<2> ubCURR_U_TEMP(16,8)<16;16,1>
 
mov (16) ubCURR_UV(17,0)<2> ubCURR_U_TEMP(17,0)<16;16,1>
mov (16) ubCURR_UV(37,0)<2> ubCURR_U_TEMP(17,8)<16;16,1>
 
mov (16) ubCURR_UV(18,0)<2> ubCURR_U_TEMP(18,0)<16;16,1>
mov (16) ubCURR_UV(38,0)<2> ubCURR_U_TEMP(18,8)<16;16,1>
 
mov (16) ubCURR_UV(19,0)<2> ubCURR_U_TEMP(19,0)<16;16,1>
mov (16) ubCURR_UV(39,0)<2> ubCURR_U_TEMP(19,8)<16;16,1>
 
 
//Move V data
mov (16) ubCURR_UV(0,1)<2> ubCURR_V_TEMP(0,0)<16;16,1>
mov (16) ubCURR_UV(20,1)<2> ubCURR_V_TEMP(0,8)<16;16,1>
mov (16) ubCURR_UV(1,1)<2> ubCURR_V_TEMP(1,0)<16;16,1>
mov (16) ubCURR_UV(21,1)<2> ubCURR_V_TEMP(1,8)<16;16,1>
mov (16) ubCURR_UV(2,1)<2> ubCURR_V_TEMP(2,0)<16;16,1>
mov (16) ubCURR_UV(22,1)<2> ubCURR_V_TEMP(2,8)<16;16,1>
mov (16) ubCURR_UV(3,1)<2> ubCURR_V_TEMP(3,0)<16;16,1>
mov (16) ubCURR_UV(23,1)<2> ubCURR_V_TEMP(3,8)<16;16,1>
mov (16) ubCURR_UV(4,1)<2> ubCURR_V_TEMP(4,0)<16;16,1>
mov (16) ubCURR_UV(24,1)<2> ubCURR_V_TEMP(4,8)<16;16,1>
mov (16) ubCURR_UV(5,1)<2> ubCURR_V_TEMP(5,0)<16;16,1>
mov (16) ubCURR_UV(25,1)<2> ubCURR_V_TEMP(5,8)<16;16,1>
mov (16) ubCURR_UV(6,1)<2> ubCURR_V_TEMP(6,0)<16;16,1>
mov (16) ubCURR_UV(26,1)<2> ubCURR_V_TEMP(6,8)<16;16,1>
mov (16) ubCURR_UV(7,1)<2> ubCURR_V_TEMP(7,0)<16;16,1>
mov (16) ubCURR_UV(27,1)<2> ubCURR_V_TEMP(7,8)<16;16,1>
mov (16) ubCURR_UV(8,1)<2> ubCURR_V_TEMP(8,0)<16;16,1>
mov (16) ubCURR_UV(28,1)<2> ubCURR_V_TEMP(8,8)<16;16,1>
mov (16) ubCURR_UV(9,1)<2> ubCURR_V_TEMP(9,0)<16;16,1>
mov (16) ubCURR_UV(29,1)<2> ubCURR_V_TEMP(9,8)<16;16,1>
mov (16) ubCURR_UV(10,1)<2> ubCURR_V_TEMP(10,0)<16;16,1>
mov (16) ubCURR_UV(30,1)<2> ubCURR_V_TEMP(10,8)<16;16,1>
mov (16) ubCURR_UV(11,1)<2> ubCURR_V_TEMP(11,0)<16;16,1>
mov (16) ubCURR_UV(31,1)<2> ubCURR_V_TEMP(11,8)<16;16,1>
mov (16) ubCURR_UV(12,1)<2> ubCURR_V_TEMP(12,0)<16;16,1>
mov (16) ubCURR_UV(32,1)<2> ubCURR_V_TEMP(12,8)<16;16,1>
mov (16) ubCURR_UV(13,1)<2> ubCURR_V_TEMP(13,0)<16;16,1>
mov (16) ubCURR_UV(33,1)<2> ubCURR_V_TEMP(13,8)<16;16,1>
mov (16) ubCURR_UV(14,1)<2> ubCURR_V_TEMP(14,0)<16;16,1>
mov (16) ubCURR_UV(34,1)<2> ubCURR_V_TEMP(14,8)<16;16,1>
mov (16) ubCURR_UV(15,1)<2> ubCURR_V_TEMP(15,0)<16;16,1>
mov (16) ubCURR_UV(35,1)<2> ubCURR_V_TEMP(15,8)<16;16,1>
mov (16) ubCURR_UV(16,1)<2> ubCURR_V_TEMP(16,0)<16;16,1>
mov (16) ubCURR_UV(36,1)<2> ubCURR_V_TEMP(16,8)<16;16,1>
mov (16) ubCURR_UV(17,1)<2> ubCURR_V_TEMP(17,0)<16;16,1>
mov (16) ubCURR_UV(37,1)<2> ubCURR_V_TEMP(17,8)<16;16,1>
mov (16) ubCURR_UV(18,1)<2> ubCURR_V_TEMP(18,0)<16;16,1>
mov (16) ubCURR_UV(38,1)<2> ubCURR_V_TEMP(18,8)<16;16,1>
mov (16) ubCURR_UV(19,1)<2> ubCURR_V_TEMP(19,0)<16;16,1>
mov (16) ubCURR_UV(39,1)<2> ubCURR_V_TEMP(19,8)<16;16,1>
 
 
 
//File Name : DN_UV_PL3_Interleave_Prev_Frame_UV.asm
//Author : Tatiya, Rupesh
//Description : Interleave separately loaded U and V for PL3 format.
// This is needed because Noise Detection and Noise Reduction works on interleaved UV data.
 
//1.U Data: bottom half of UV space for prev frame (r17-r24)
//2.V Data: bottom quarter of Y space for curr frame (r120-r127)
 
mov (16) ubPREV_UV(0,0)<2> ubPREV_U_TEMP(0,0)<16;8,1> { NoDDClr }
mov (16) ubPREV_UV(8,0)<2> ubPREV_U_TEMP(0,8)<16;8,1> { NoDDClr }
mov (16) ubPREV_UV(1,0)<2> ubPREV_U_TEMP(1,0)<16;8,1> { NoDDClr }
mov (16) ubPREV_UV(9,0)<2> ubPREV_U_TEMP(1,8)<16;8,1> { NoDDClr }
mov (16) ubPREV_UV(2,0)<2> ubPREV_U_TEMP(2,0)<16;8,1> { NoDDClr }
mov (16) ubPREV_UV(10,0)<2> ubPREV_U_TEMP(2,8)<16;8,1> { NoDDClr }
mov (16) ubPREV_UV(3,0)<2> ubPREV_U_TEMP(3,0)<16;8,1> { NoDDClr }
mov (16) ubPREV_UV(11,0)<2> ubPREV_U_TEMP(3,8)<16;8,1> { NoDDClr }
mov (16) ubPREV_UV(4,0)<2> ubPREV_U_TEMP(4,0)<16;8,1> { NoDDClr }
mov (16) ubPREV_UV(12,0)<2> ubPREV_U_TEMP(4,8)<16;8,1> { NoDDClr }
mov (16) ubPREV_UV(5,0)<2> ubPREV_U_TEMP(5,0)<16;8,1> { NoDDClr }
mov (16) ubPREV_UV(13,0)<2> ubPREV_U_TEMP(5,8)<16;8,1> { NoDDClr }
mov (16) ubPREV_UV(6,0)<2> ubPREV_U_TEMP(6,0)<16;8,1> { NoDDClr }
mov (16) ubPREV_UV(14,0)<2> ubPREV_U_TEMP(6,8)<16;8,1> { NoDDClr }
mov (16) ubPREV_UV(7,0)<2> ubPREV_U_TEMP(7,0)<16;8,1> { NoDDClr }
mov (16) ubPREV_UV(15,0)<2> ubPREV_U_TEMP(7,8)<16;8,1> { NoDDClr }
 
mov (16) ubPREV_UV(0,1)<2> ubPREV_V_TEMP(0,0)<16;8,1> { NoDDChk }
mov (16) ubPREV_UV(8,1)<2> ubPREV_V_TEMP(0,8)<16;8,1> { NoDDChk }
mov (16) ubPREV_UV(1,1)<2> ubPREV_V_TEMP(1,0)<16;8,1> { NoDDChk }
mov (16) ubPREV_UV(9,1)<2> ubPREV_V_TEMP(1,8)<16;8,1> { NoDDChk }
mov (16) ubPREV_UV(2,1)<2> ubPREV_V_TEMP(2,0)<16;8,1> { NoDDChk }
mov (16) ubPREV_UV(10,1)<2> ubPREV_V_TEMP(2,8)<16;8,1> { NoDDChk }
mov (16) ubPREV_UV(3,1)<2> ubPREV_V_TEMP(3,0)<16;8,1> { NoDDChk }
mov (16) ubPREV_UV(11,1)<2> ubPREV_V_TEMP(3,8)<16;8,1> { NoDDChk }
mov (16) ubPREV_UV(4,1)<2> ubPREV_V_TEMP(4,0)<16;8,1> { NoDDChk }
mov (16) ubPREV_UV(12,1)<2> ubPREV_V_TEMP(4,8)<16;8,1> { NoDDChk }
mov (16) ubPREV_UV(5,1)<2> ubPREV_V_TEMP(5,0)<16;8,1> { NoDDChk }
mov (16) ubPREV_UV(13,1)<2> ubPREV_V_TEMP(5,8)<16;8,1> { NoDDChk }
mov (16) ubPREV_UV(6,1)<2> ubPREV_V_TEMP(6,0)<16;8,1> { NoDDChk }
mov (16) ubPREV_UV(14,1)<2> ubPREV_V_TEMP(6,8)<16;8,1> { NoDDChk }
mov (16) ubPREV_UV(7,1)<2> ubPREV_V_TEMP(7,0)<16;8,1> { NoDDChk }
mov (16) ubPREV_UV(15,1)<2> ubPREV_V_TEMP(7,8)<16;8,1> { NoDDChk }
 
 
 
//Module Name : DN_UV_420_Load_Curr_Frame_Y
//Author : Tatiya, Rupesh
//Description : Load Curr Frame Y data for 420 Input
 
 
 
//Module Name : DN_UV_Load_Curr_Frame_Y
//Author : Tatiya, Rupesh
//Description : Loads Y of Current frame.
 
 
 
 
//For 16x16 U and 16x16 V for 420, we need to read 32x32 Y.
 
mov (8) acc0.0<1>:ud r0.0<8;8,1>:ud
mov (1) acc0.2<1>:ud 0xF000F:ud
add (2) acc0.0<1>:ud r7.0<2;2,1>:w r4.4<2;2,1>:w
 
mov (8) r92.0<1>:ud acc0.0<8;8,1>:ud
 
mov (8) r101.0<1>:ud acc0.0<8;8,1>:ud
mov (8) r110.0<1>:ud acc0.0<8;8,1>:ud
mov (8) r119.0<1>:ud acc0.0<8;8,1>:ud
 
add (1) r101.1<1>:d acc0.1<0;1,0>:d 16:d
 
add (1) r110.0<1>:d acc0.0<0;1,0>:d 16:d
 
add (2) r119.0<1>:d acc0.0<2;2,1>:d 16:d
 
send (8) udCURR_Y0(0)<1> r92 0x4 0x2890003:ud
send (8) udCURR_Y1(0)<1> r101 0x4 0x2890003:ud
send (8) udCURR_Y2(0)<1> r110 0x4 0x2890003:ud
send (8) udCURR_Y3(0)<1> r119 0x4 0x2890003:ud
 
 
 
//Module Name : DN_UV_Noise_Detection_UV
//Author : Tatiya, Rupesh
//Description : Performs noise detection on 16x16 U and 16x16 V each.
 
 
 
//Module Name : DN_UV_Move_CURBE_Inline_UV.asm
//Author : Tatiya, Rupesh
 
 
 
 
//Mov CURBE data to another space - so that it can be used as Temp Space --> r1 - r6
mov (4) r54.28<1>:ub r2.28<4;4,1>:ub //Dest. YUY2 offset
mov (2) r54.5<1>:ud r4.0<4;2,2>:ud //Src YUY2 offset and Origin offset
mov (4) r55.28<1>:ub r1.0<4;4,1>:ub
 
mov (8) r61.20<1>:ub r1.4<8;8,1>:ub
mov (4) r61.28<1>:ub r1.12<4;4,1>:ub
 
//Move Inline Data to another space - so that it can be used as Temp Space --> r7
mov (4) r62.10<1>:w r7.0<4;4,1>:w
mov (4) r63.10<1>:w r7.4<4;4,1>:w
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
mov (1) a0.0:uw 1664:uw
mov (1) a0.1:uw 1816:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 1792:uw
mov (1) a0.1:uw 1820:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 1920:uw
mov (1) a0.1:uw 1848:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 2048:uw
mov (1) a0.1:uw 1852:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
mov (1) a0.0:uw 2304:uw
mov (1) a0.1:uw 1880:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 2432:uw
mov (1) a0.1:uw 1884:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 2560:uw
mov (1) a0.1:uw 1912:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
 
 
//Module Name : DN_UV_Noise_Detection_Set_Top_Region_N
//Author : Tatiya, Rupesh
//Description : Sets sub-region region N from Top region.
 
 
//TODO - remove one instruction here using arithmatic. -rT
mov (1) a0.0:uw 2688:uw
mov (1) a0.1:uw 1916:uw
 
 
 
 
add (1) r7.7<1>:d ip:ud 32:d { NoCompact }
jmpi (1) DN_UV_NOISE_DETECTION_UV { NoCompact }
 
 
 
//Module : DN_UV_Noise_Reduction_UV
//Author : Tatiya, Rupesh
//Description : Performs Noise Reduction on 16x16 U and 16x16 V.
//Tasks : 1. Update weight history
// 2. Find if it block is motion block
// 3. Compute Denoised Pixel.
 
 
 
 
//History is 1+1 byte every 4x4 U and 4x4 V.
 
cmp.l.f0.0 (16) null<1>:w ubHIST_UV(0,0)<16;16,1> r61.20<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w ubHIST_UV(0,0)<16;16,1> r61.22<0;2,1>:ub
 
mov (16) uwCURBE_TEMP(0)<1> 0:w
mov (16) uwCURBE_TEMP(1)<1> 0:w
 
//Compute diff betn curr and prev. - First 16 lines
// 8 lines here
add (16) wDIFF_TEMPORAL(0)<1> ubCURR_UV(2,2)<16;16,1> -ubPREV_UV(0,0)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(1)<1> ubCURR_UV(3,2)<16;16,1> -ubPREV_UV(0,16)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(2)<1> ubCURR_UV(4,2)<16;16,1> -ubPREV_UV(0,32)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(3)<1> ubCURR_UV(5,2)<16;16,1> -ubPREV_UV(0,48)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(4)<1> ubCURR_UV(6,2)<16;16,1> -ubPREV_UV(0,64)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(5)<1> ubCURR_UV(7,2)<16;16,1> -ubPREV_UV(0,80)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(6)<1> ubCURR_UV(8,2)<16;16,1> -ubPREV_UV(0,96)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(7)<1> ubCURR_UV(9,2)<16;16,1> -ubPREV_UV(0,112)<16;16,1> //Diff UV interleaved
 
//Update WT HIST
(-f0.0) shr (16) uwCURBE_TEMP(0)<1> ubHIST_UV(0,0)<16;16,1> 1:w
(f1.0) add (16) uwCURBE_TEMP(2)<1> ubHIST_UV(0,0)<16;16,1> r61.24<0;2,1>:ub
(f0.0) mov (16) uwCURBE_TEMP(2)<1> r61.20<0;2,1>:ub
(-f0.0.anyv) mov (16) uwCURBE_TEMP(2)<1> ubHIST_UV(0,0)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w ubHIST_UV(0,16)<16;16,1> r61.20<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w ubHIST_UV(0,16)<16;16,1> r61.22<0;2,1>:ub
 
//Compute diff betn curr and prev. - First 16 lines
// 8 more lines here
add (16) wDIFF_TEMPORAL(8)<1> ubCURR_UV(10,2)<16;16,1> -ubPREV_UV(0,128)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(9)<1> ubCURR_UV(11,2)<16;16,1> -ubPREV_UV(0,144)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(10)<1> ubCURR_UV(12,2)<16;16,1> -ubPREV_UV(0,160)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(11)<1> ubCURR_UV(13,2)<16;16,1> -ubPREV_UV(0,176)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(12)<1> ubCURR_UV(14,2)<16;16,1> -ubPREV_UV(0,192)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(13)<1> ubCURR_UV(15,2)<16;16,1> -ubPREV_UV(0,208)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(14)<1> ubCURR_UV(16,2)<16;16,1> -ubPREV_UV(0,224)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(15)<1> ubCURR_UV(17,2)<16;16,1> -ubPREV_UV(0,240)<16;16,1> //Diff UV interleaved
 
(-f0.0) shr (16) uwCURBE_TEMP(1)<1> ubHIST_UV(0,16)<16;16,1> 1:w
(f1.0) add (16) uwCURBE_TEMP(3)<1> ubHIST_UV(0,16)<16;16,1> r61.24<0;2,1>:ub
(f0.0) mov (16) uwCURBE_TEMP(3)<1> r61.20<0;2,1>:ub
(-f0.0.anyv) mov(16) uwCURBE_TEMP(3)<1> ubHIST_UV(0,16)<16;16,1>
 
//16x16 to 16x4 - First 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(0)<16;16,1> (abs)wDIFF_TEMPORAL(1)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(2)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(0)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(3)<16;16,1>
//16x16 to 16x4 - First 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(4)<16;16,1> (abs)wDIFF_TEMPORAL(5)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(6)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(1)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(7)<16;16,1>
//16x16 to 16x4 - First 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(8)<16;16,1> (abs)wDIFF_TEMPORAL(9)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(10)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(2)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(11)<16;16,1>
//16x16 to 16x4 - First 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(12)<16;16,1> (abs)wDIFF_TEMPORAL(13)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(14)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(3)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(15)<16;16,1>
 
//Compute diff betn curr and prev. - Second 16 lines
//13 lines.
add (16) wDIFF_TEMPORAL(16)<1> ubCURR_UV(22,2)<16;16,1> -ubPREV_UV(8,0)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(17)<1> ubCURR_UV(23,2)<16;16,1> -ubPREV_UV(8,16)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(18)<1> ubCURR_UV(24,2)<16;16,1> -ubPREV_UV(8,32)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(19)<1> ubCURR_UV(25,2)<16;16,1> -ubPREV_UV(8,48)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(20)<1> ubCURR_UV(26,2)<16;16,1> -ubPREV_UV(8,64)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(21)<1> ubCURR_UV(27,2)<16;16,1> -ubPREV_UV(8,80)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(22)<1> ubCURR_UV(28,2)<16;16,1> -ubPREV_UV(8,96)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(23)<1> ubCURR_UV(29,2)<16;16,1> -ubPREV_UV(8,112)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(24)<1> ubCURR_UV(30,2)<16;16,1> -ubPREV_UV(8,128)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(25)<1> ubCURR_UV(31,2)<16;16,1> -ubPREV_UV(8,144)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(26)<1> ubCURR_UV(32,2)<16;16,1> -ubPREV_UV(8,160)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(27)<1> ubCURR_UV(33,2)<16;16,1> -ubPREV_UV(8,176)<16;16,1> //Diff UV interleaved
add (16) wDIFF_TEMPORAL(28)<1> ubCURR_UV(34,2)<16;16,1> -ubPREV_UV(8,192)<16;16,1> //Diff UV interleaved
 
//3 more lines
add (16) wCURBE_TEMP(4)<1> ubCURR_UV(35,2)<16;16,1> -ubPREV_UV(8,208)<16;16,1> //Diff UV interleaved
add (16) wCURBE_TEMP(5)<1> ubCURR_UV(36,2)<16;16,1> -ubPREV_UV(8,224)<16;16,1> //Diff UV interleaved
add (16) wCURBE_TEMP(6)<1> ubCURR_UV(37,2)<16;16,1> -ubPREV_UV(8,240)<16;16,1> //Diff UV interleaved
 
//16x4 to 8x4 - First 16 lines
add (16) uwDIFF_TEMPORAL_SUM4x4(0)<1> uwDIFF_TEMPORAL_SUM4x4(0,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(0,2)<4;2,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(1)<1> uwDIFF_TEMPORAL_SUM4x4(2,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(2,2)<4;2,1>
 
//8x4 to 4x4 - First 16 lines
add (16) uwDIFF_TEMPORAL_SUM4x4_FINAL(0)<1> uwDIFF_TEMPORAL_SUM4x4(0,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(0,2)<4;2,1> { AccWrEn }
 
//16x16 to 16x4 - Second 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(16)<16;16,1> (abs)wDIFF_TEMPORAL(17)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(18)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(0)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(19)<16;16,1>
//16x16 to 16x4 - Second 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(20)<16;16,1> (abs)wDIFF_TEMPORAL(21)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(22)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(1)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(23)<16;16,1>
//16x16 to 16x4 - Second 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(24)<16;16,1> (abs)wDIFF_TEMPORAL(25)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(26)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(2)<1> acc0.0<16;16,1>:uw (abs)wDIFF_TEMPORAL(27)<16;16,1>
 
//16x16 to 16x4 - Second 16 lines
add (16) acc0.0<1>:uw (abs)wDIFF_TEMPORAL(28)<16;16,1> (abs)wCURBE_TEMP(4)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wCURBE_TEMP(5)<16;16,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(3)<1> acc0.0<16;16,1>:uw (abs)wCURBE_TEMP(6)<16;16,1>
 
//Find if block is motion block - First 16 lines
cmp.g.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_FINAL(0)<16;16,1> r61.26<0;2,1>:ub
 
//Move TEMPORAL_SUM4x4 for SIMD16 use later.
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,0)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,2)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,4)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,6)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,8)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,10)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,12)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(0,14)<0;2,1>
 
//Pick Appropriate Weight History Based on motion. - First 16 lines
(-f0.0) mov (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(2)<16;16,1>
 
//Actual DN - First 16 lines
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(0)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(0)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(2,2)<8;8,1> -uwCURBE_TEMP(0,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(2,10)<8;8,1> -uwCURBE_TEMP(0,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(2,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,0)<8;8,1> uwCURBE_TEMP(0,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,8)<8;8,1> uwCURBE_TEMP(0,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(0)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(0)<1> ubCURR_UV(2,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(0)<1> wDIFF_TEMPORAL(0)<16;16,1> ubCURR_UV(2,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(1)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(1)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(3,2)<8;8,1> -uwCURBE_TEMP(0,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(3,10)<8;8,1> -uwCURBE_TEMP(0,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(3,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,16)<8;8,1> uwCURBE_TEMP(0,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,24)<8;8,1> uwCURBE_TEMP(0,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(1)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(1)<1> ubCURR_UV(3,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(1)<1> wDIFF_TEMPORAL(1)<16;16,1> ubCURR_UV(3,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(2)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(2)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(4,2)<8;8,1> -uwCURBE_TEMP(0,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(4,10)<8;8,1> -uwCURBE_TEMP(0,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(4,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,32)<8;8,1> uwCURBE_TEMP(0,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,40)<8;8,1> uwCURBE_TEMP(0,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(2)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(2)<1> ubCURR_UV(4,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(2)<1> wDIFF_TEMPORAL(2)<16;16,1> ubCURR_UV(4,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(3)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(3)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(5,2)<8;8,1> -uwCURBE_TEMP(0,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(5,10)<8;8,1> -uwCURBE_TEMP(0,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(5,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,48)<8;8,1> uwCURBE_TEMP(0,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,56)<8;8,1> uwCURBE_TEMP(0,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(3)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(3)<1> ubCURR_UV(5,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(3)<1> wDIFF_TEMPORAL(3)<16;16,1> ubCURR_UV(5,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(4)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(4)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(6,2)<8;8,1> -uwCURBE_TEMP(0,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(6,10)<8;8,1> -uwCURBE_TEMP(0,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(6,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,64)<8;8,1> uwCURBE_TEMP(0,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,72)<8;8,1> uwCURBE_TEMP(0,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(4)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(4)<1> ubCURR_UV(6,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(4)<1> wDIFF_TEMPORAL(4)<16;16,1> ubCURR_UV(6,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(5)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(5)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(7,2)<8;8,1> -uwCURBE_TEMP(0,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(7,10)<8;8,1> -uwCURBE_TEMP(0,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(7,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,80)<8;8,1> uwCURBE_TEMP(0,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,88)<8;8,1> uwCURBE_TEMP(0,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(5)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(5)<1> ubCURR_UV(7,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(5)<1> wDIFF_TEMPORAL(5)<16;16,1> ubCURR_UV(7,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(6)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(6)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(8,2)<8;8,1> -uwCURBE_TEMP(0,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(8,10)<8;8,1> -uwCURBE_TEMP(0,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(8,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,96)<8;8,1> uwCURBE_TEMP(0,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,104)<8;8,1> uwCURBE_TEMP(0,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(6)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(6)<1> ubCURR_UV(8,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(6)<1> wDIFF_TEMPORAL(6)<16;16,1> ubCURR_UV(8,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(7)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(7)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(9,2)<8;8,1> -uwCURBE_TEMP(0,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(9,10)<8;8,1> -uwCURBE_TEMP(0,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(9,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,112)<8;8,1> uwCURBE_TEMP(0,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,120)<8;8,1> uwCURBE_TEMP(0,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(7)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(7)<1> ubCURR_UV(9,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(7)<1> wDIFF_TEMPORAL(7)<16;16,1> ubCURR_UV(9,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(8)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(8)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(10,2)<8;8,1> -uwCURBE_TEMP(0,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(10,10)<8;8,1> -uwCURBE_TEMP(0,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(10,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,128)<8;8,1> uwCURBE_TEMP(0,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,136)<8;8,1> uwCURBE_TEMP(0,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(8)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(8)<1> ubCURR_UV(10,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(8)<1> wDIFF_TEMPORAL(8)<16;16,1> ubCURR_UV(10,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(9)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(9)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(11,2)<8;8,1> -uwCURBE_TEMP(0,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(11,10)<8;8,1> -uwCURBE_TEMP(0,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(11,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,144)<8;8,1> uwCURBE_TEMP(0,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,152)<8;8,1> uwCURBE_TEMP(0,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(9)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(9)<1> ubCURR_UV(11,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(9)<1> wDIFF_TEMPORAL(9)<16;16,1> ubCURR_UV(11,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(10)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(10)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(12,2)<8;8,1> -uwCURBE_TEMP(0,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(12,10)<8;8,1> -uwCURBE_TEMP(0,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(12,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,160)<8;8,1> uwCURBE_TEMP(0,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,168)<8;8,1> uwCURBE_TEMP(0,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(10)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(10)<1> ubCURR_UV(12,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(10)<1> wDIFF_TEMPORAL(10)<16;16,1> ubCURR_UV(12,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(11)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(11)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(13,2)<8;8,1> -uwCURBE_TEMP(0,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(13,10)<8;8,1> -uwCURBE_TEMP(0,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(13,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,176)<8;8,1> uwCURBE_TEMP(0,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,184)<8;8,1> uwCURBE_TEMP(0,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(11)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(11)<1> ubCURR_UV(13,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(11)<1> wDIFF_TEMPORAL(11)<16;16,1> ubCURR_UV(13,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(12)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(12)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(14,2)<8;8,1> -uwCURBE_TEMP(0,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(14,10)<8;8,1> -uwCURBE_TEMP(0,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(14,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,192)<8;8,1> uwCURBE_TEMP(0,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,200)<8;8,1> uwCURBE_TEMP(0,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(12)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(12)<1> ubCURR_UV(14,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(12)<1> wDIFF_TEMPORAL(12)<16;16,1> ubCURR_UV(14,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(13)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(13)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(15,2)<8;8,1> -uwCURBE_TEMP(0,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(15,10)<8;8,1> -uwCURBE_TEMP(0,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(15,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,208)<8;8,1> uwCURBE_TEMP(0,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,216)<8;8,1> uwCURBE_TEMP(0,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(13)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(13)<1> ubCURR_UV(15,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(13)<1> wDIFF_TEMPORAL(13)<16;16,1> ubCURR_UV(15,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(14)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(14)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(16,2)<8;8,1> -uwCURBE_TEMP(0,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(16,10)<8;8,1> -uwCURBE_TEMP(0,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(16,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,224)<8;8,1> uwCURBE_TEMP(0,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,232)<8;8,1> uwCURBE_TEMP(0,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(14)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(14)<1> ubCURR_UV(16,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(14)<1> wDIFF_TEMPORAL(14)<16;16,1> ubCURR_UV(16,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(15)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(15)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(17,2)<8;8,1> -uwCURBE_TEMP(0,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(17,10)<8;8,1> -uwCURBE_TEMP(0,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(17,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(0,240)<8;8,1> uwCURBE_TEMP(0,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(0,248)<8;8,1> uwCURBE_TEMP(0,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(15)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(15)<1> ubCURR_UV(17,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(15)<1> wDIFF_TEMPORAL(15)<16;16,1> ubCURR_UV(17,2)<16;16,1>
 
 
//16x4 to 8x4 - Second 16 lines
add (16) uwDIFF_TEMPORAL_SUM4x4(0)<1> uwDIFF_TEMPORAL_SUM4x4(0,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(0,2)<4;2,1>
add (16) uwDIFF_TEMPORAL_SUM4x4(1)<1> uwDIFF_TEMPORAL_SUM4x4(2,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(2,2)<4;2,1>
 
//8x4 to 4x4 - Second 16 lines
add (16) uwDIFF_TEMPORAL_SUM4x4_FINAL(1)<1> uwDIFF_TEMPORAL_SUM4x4(0,0)<4;2,1> uwDIFF_TEMPORAL_SUM4x4(0,2)<4;2,1> { AccWrEn }
 
//Find if block is motion block - Second 16 lines
cmp.g.f1.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_FINAL(1)<16;16,1> r61.26<0;2,1>:ub
 
//Move TEMPORAL_SUM4x4 for SIMD16 use later.
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,0)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,2)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,4)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,6)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,8)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,10)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0,0)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,12)<0;2,1>
mov (8) uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0,8)<1> uwDIFF_TEMPORAL_SUM4x4_FINAL(1,14)<0;2,1>
 
//Pick Appropriate Weight History Based on motion. - Second 16 lines
(-f1.0) mov (16) uwCURBE_TEMP(1)<1> uwCURBE_TEMP(3)<16;16,1>
 
//Actual DN - Second 16 lines
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(16)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(16)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(22,2)<8;8,1> -uwCURBE_TEMP(1,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(22,10)<8;8,1> -uwCURBE_TEMP(1,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(22,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,0)<8;8,1> uwCURBE_TEMP(1,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,8)<8;8,1> uwCURBE_TEMP(1,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(16)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(16)<1> ubCURR_UV(22,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(16)<1> wDIFF_TEMPORAL(16)<16;16,1> ubCURR_UV(22,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(17)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(17)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(23,2)<8;8,1> -uwCURBE_TEMP(1,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(23,10)<8;8,1> -uwCURBE_TEMP(1,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(23,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,16)<8;8,1> uwCURBE_TEMP(1,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,24)<8;8,1> uwCURBE_TEMP(1,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(17)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(17)<1> ubCURR_UV(23,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(17)<1> wDIFF_TEMPORAL(17)<16;16,1> ubCURR_UV(23,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(18)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(18)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(24,2)<8;8,1> -uwCURBE_TEMP(1,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(24,10)<8;8,1> -uwCURBE_TEMP(1,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(24,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,32)<8;8,1> uwCURBE_TEMP(1,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,40)<8;8,1> uwCURBE_TEMP(1,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(18)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(18)<1> ubCURR_UV(24,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(18)<1> wDIFF_TEMPORAL(18)<16;16,1> ubCURR_UV(24,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(19)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(19)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(25,2)<8;8,1> -uwCURBE_TEMP(1,0)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(25,10)<8;8,1> -uwCURBE_TEMP(1,2)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(25,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,48)<8;8,1> uwCURBE_TEMP(1,0)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,56)<8;8,1> uwCURBE_TEMP(1,2)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(19)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(19)<1> ubCURR_UV(25,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_0(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(19)<1> wDIFF_TEMPORAL(19)<16;16,1> ubCURR_UV(25,2)<16;16,1>
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(20)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(20)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(26,2)<8;8,1> -uwCURBE_TEMP(1,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(26,10)<8;8,1> -uwCURBE_TEMP(1,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(26,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,64)<8;8,1> uwCURBE_TEMP(1,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,72)<8;8,1> uwCURBE_TEMP(1,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(20)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(20)<1> ubCURR_UV(26,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(20)<1> wDIFF_TEMPORAL(20)<16;16,1> ubCURR_UV(26,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(21)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(21)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(27,2)<8;8,1> -uwCURBE_TEMP(1,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(27,10)<8;8,1> -uwCURBE_TEMP(1,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(27,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,80)<8;8,1> uwCURBE_TEMP(1,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,88)<8;8,1> uwCURBE_TEMP(1,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(21)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(21)<1> ubCURR_UV(27,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(21)<1> wDIFF_TEMPORAL(21)<16;16,1> ubCURR_UV(27,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(22)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(22)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(28,2)<8;8,1> -uwCURBE_TEMP(1,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(28,10)<8;8,1> -uwCURBE_TEMP(1,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(28,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,96)<8;8,1> uwCURBE_TEMP(1,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,104)<8;8,1> uwCURBE_TEMP(1,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(22)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(22)<1> ubCURR_UV(28,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(22)<1> wDIFF_TEMPORAL(22)<16;16,1> ubCURR_UV(28,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(23)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(23)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(29,2)<8;8,1> -uwCURBE_TEMP(1,4)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(29,10)<8;8,1> -uwCURBE_TEMP(1,6)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(29,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,112)<8;8,1> uwCURBE_TEMP(1,4)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,120)<8;8,1> uwCURBE_TEMP(1,6)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(23)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(23)<1> ubCURR_UV(29,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_1(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(23)<1> wDIFF_TEMPORAL(23)<16;16,1> ubCURR_UV(29,2)<16;16,1>
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(24)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(24)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(30,2)<8;8,1> -uwCURBE_TEMP(1,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(30,10)<8;8,1> -uwCURBE_TEMP(1,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(30,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,128)<8;8,1> uwCURBE_TEMP(1,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,136)<8;8,1> uwCURBE_TEMP(1,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(24)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(24)<1> ubCURR_UV(30,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(24)<1> wDIFF_TEMPORAL(24)<16;16,1> ubCURR_UV(30,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(25)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(25)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(31,2)<8;8,1> -uwCURBE_TEMP(1,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(31,10)<8;8,1> -uwCURBE_TEMP(1,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(31,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,144)<8;8,1> uwCURBE_TEMP(1,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,152)<8;8,1> uwCURBE_TEMP(1,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(25)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(25)<1> ubCURR_UV(31,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(25)<1> wDIFF_TEMPORAL(25)<16;16,1> ubCURR_UV(31,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(26)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(26)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(32,2)<8;8,1> -uwCURBE_TEMP(1,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(32,10)<8;8,1> -uwCURBE_TEMP(1,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(32,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,160)<8;8,1> uwCURBE_TEMP(1,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,168)<8;8,1> uwCURBE_TEMP(1,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(26)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(26)<1> ubCURR_UV(32,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(26)<1> wDIFF_TEMPORAL(26)<16;16,1> ubCURR_UV(32,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(27)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(27)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(33,2)<8;8,1> -uwCURBE_TEMP(1,8)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(33,10)<8;8,1> -uwCURBE_TEMP(1,10)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(33,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,176)<8;8,1> uwCURBE_TEMP(1,8)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,184)<8;8,1> uwCURBE_TEMP(1,10)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(27)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(27)<1> ubCURR_UV(33,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_2(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(27)<1> wDIFF_TEMPORAL(27)<16;16,1> ubCURR_UV(33,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(28)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wDIFF_TEMPORAL(28)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(34,2)<8;8,1> -uwCURBE_TEMP(1,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(34,10)<8;8,1> -uwCURBE_TEMP(1,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(34,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,192)<8;8,1> uwCURBE_TEMP(1,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,200)<8;8,1> uwCURBE_TEMP(1,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wDIFF_TEMPORAL(28)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wDIFF_TEMPORAL(28)<1> ubCURR_UV(34,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wDIFF_TEMPORAL(28)<1> wDIFF_TEMPORAL(28)<16;16,1> ubCURR_UV(34,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wCURBE_TEMP(4)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wCURBE_TEMP(4)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(35,2)<8;8,1> -uwCURBE_TEMP(1,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(35,10)<8;8,1> -uwCURBE_TEMP(1,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(35,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,208)<8;8,1> uwCURBE_TEMP(1,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,216)<8;8,1> uwCURBE_TEMP(1,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wCURBE_TEMP(4)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wCURBE_TEMP(4)<1> ubCURR_UV(35,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wCURBE_TEMP(4)<1> wCURBE_TEMP(4)<16;16,1> ubCURR_UV(35,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wCURBE_TEMP(5)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wCURBE_TEMP(5)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(36,2)<8;8,1> -uwCURBE_TEMP(1,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(36,10)<8;8,1> -uwCURBE_TEMP(1,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(36,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,224)<8;8,1> uwCURBE_TEMP(1,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,232)<8;8,1> uwCURBE_TEMP(1,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wCURBE_TEMP(5)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wCURBE_TEMP(5)<1> ubCURR_UV(36,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wCURBE_TEMP(5)<1> wCURBE_TEMP(5)<16;16,1> ubCURR_UV(36,2)<16;16,1>
 
cmp.l.f0.0 (16) null<1>:w (abs)wCURBE_TEMP(6)<16;16,1> r61.28<0;2,1>:ub
cmp.l.f1.0 (16) null<1>:w (abs)wCURBE_TEMP(6)<16;16,1> r61.30<0;2,1>:ub
mul (8) acc0.0<1>:w ubCURR_UV(37,2)<8;8,1> -uwCURBE_TEMP(1,12)<0;2,1>
mul (8) acc0.8<1>:w ubCURR_UV(37,10)<8;8,1> -uwCURBE_TEMP(1,14)<0;2,1>
mac (16) acc0<1>:w ubCURR_UV(37,2)<16;16,1> 256:w
mac (8) acc0.0<1>:w ubPREV_UV(8,240)<8;8,1> uwCURBE_TEMP(1,12)<0;2,1>
mac (8) acc0.8<1>:w ubPREV_UV(8,248)<8;8,1> uwCURBE_TEMP(1,14)<0;2,1>
add (16) acc0<1>:w acc0<16;16,1>:w 128:w
(f0.0) shr (16) wCURBE_TEMP(6)<1> acc0<16;16,1>:w 8:w
(-f0.0) mov (16) wCURBE_TEMP(6)<1> ubCURR_UV(37,2)<16;16,1>
cmp.le.f0.0 (16) null<1>:w uwDIFF_TEMPORAL_SUM4x4_TEMP_3(0)<16;16,1> r61.26<0;2,1>:ub
(-f0.0.allv) avg (16) wCURBE_TEMP(6)<1> wCURBE_TEMP(6)<16;16,1> ubCURR_UV(37,2)<16;16,1>
 
//Pack Weight History WORD -> BYTE
mov (16) ubCURBE_TEMP(3,0)<1> ubCURBE_TEMP(0)<32;16,2>
mov (16) ubCURBE_TEMP(3,16)<1> ubCURBE_TEMP(1)<32;16,2>
 
 
 
//Module Name : DN_UV_Compute_BNE_UV
//Author : Tatiya, Rupesh
//Description : Computes minimum SOAD for each 16x4 block.
 
cmp.l.f0.0 (8) null:w uwSOAD_MIN_8x4(0,12)<16;4,1> uwSOAD_MIN_8x4(2,12)<16;4,1>
(f0.0)sel (8) uwCURBE_TEMP(1,0)<1> uwSOAD_MIN_8x4(0,12)<16;4,1> uwSOAD_MIN_8x4(2,12)<16;4,1>
 
mov (8) ubCURBE_TEMP(1)<1> ubCURBE_TEMP(1)<16;8,2>
 
 
 
//File Name : DN_UV_PL3_Unpack_Denoised_UV.asm
//Author : Tatiya, Rupesh
//Description : Upack the interleaved UV data
 
//First 16 lines.
mov (8) ubMSGPAYLOAD_U(0,0)<1> ubDIFF_TEMPORAL(0,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(0,16)<1> ubDIFF_TEMPORAL(1,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(0,0)<1> ubDIFF_TEMPORAL(0,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(0,16)<1> ubDIFF_TEMPORAL(1,2)<32;8,4>
mov (8) ubMSGPAYLOAD_U(1,0)<1> ubDIFF_TEMPORAL(2,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(1,16)<1> ubDIFF_TEMPORAL(3,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(1,0)<1> ubDIFF_TEMPORAL(2,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(1,16)<1> ubDIFF_TEMPORAL(3,2)<32;8,4>
mov (8) ubMSGPAYLOAD_U(2,0)<1> ubDIFF_TEMPORAL(4,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(2,16)<1> ubDIFF_TEMPORAL(5,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(2,0)<1> ubDIFF_TEMPORAL(4,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(2,16)<1> ubDIFF_TEMPORAL(5,2)<32;8,4>
mov (8) ubMSGPAYLOAD_U(3,0)<1> ubDIFF_TEMPORAL(6,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(3,16)<1> ubDIFF_TEMPORAL(7,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(3,0)<1> ubDIFF_TEMPORAL(6,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(3,16)<1> ubDIFF_TEMPORAL(7,2)<32;8,4>
mov (8) ubMSGPAYLOAD_U(4,0)<1> ubDIFF_TEMPORAL(8,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(4,16)<1> ubDIFF_TEMPORAL(9,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(4,0)<1> ubDIFF_TEMPORAL(8,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(4,16)<1> ubDIFF_TEMPORAL(9,2)<32;8,4>
mov (8) ubMSGPAYLOAD_U(5,0)<1> ubDIFF_TEMPORAL(10,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(5,16)<1> ubDIFF_TEMPORAL(11,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(5,0)<1> ubDIFF_TEMPORAL(10,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(5,16)<1> ubDIFF_TEMPORAL(11,2)<32;8,4>
mov (8) ubMSGPAYLOAD_U(6,0)<1> ubDIFF_TEMPORAL(12,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(6,16)<1> ubDIFF_TEMPORAL(13,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(6,0)<1> ubDIFF_TEMPORAL(12,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(6,16)<1> ubDIFF_TEMPORAL(13,2)<32;8,4>
mov (8) ubMSGPAYLOAD_U(7,0)<1> ubDIFF_TEMPORAL(14,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(7,16)<1> ubDIFF_TEMPORAL(15,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(7,0)<1> ubDIFF_TEMPORAL(14,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(7,16)<1> ubDIFF_TEMPORAL(15,2)<32;8,4>
 
//Second 16 lines.
//12 lines first
mov (8) ubMSGPAYLOAD_U(0,8)<1> ubDIFF_TEMPORAL(16,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(0,24)<1> ubDIFF_TEMPORAL(17,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(0,8)<1> ubDIFF_TEMPORAL(16,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(0,24)<1> ubDIFF_TEMPORAL(17,2)<32;8,4>
mov (8) ubMSGPAYLOAD_U(1,8)<1> ubDIFF_TEMPORAL(18,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(1,24)<1> ubDIFF_TEMPORAL(19,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(1,8)<1> ubDIFF_TEMPORAL(18,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(1,24)<1> ubDIFF_TEMPORAL(19,2)<32;8,4>
mov (8) ubMSGPAYLOAD_U(2,8)<1> ubDIFF_TEMPORAL(20,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(2,24)<1> ubDIFF_TEMPORAL(21,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(2,8)<1> ubDIFF_TEMPORAL(20,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(2,24)<1> ubDIFF_TEMPORAL(21,2)<32;8,4>
mov (8) ubMSGPAYLOAD_U(3,8)<1> ubDIFF_TEMPORAL(22,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(3,24)<1> ubDIFF_TEMPORAL(23,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(3,8)<1> ubDIFF_TEMPORAL(22,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(3,24)<1> ubDIFF_TEMPORAL(23,2)<32;8,4>
mov (8) ubMSGPAYLOAD_U(4,8)<1> ubDIFF_TEMPORAL(24,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(4,24)<1> ubDIFF_TEMPORAL(25,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(4,8)<1> ubDIFF_TEMPORAL(24,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(4,24)<1> ubDIFF_TEMPORAL(25,2)<32;8,4>
mov (8) ubMSGPAYLOAD_U(5,8)<1> ubDIFF_TEMPORAL(26,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(5,24)<1> ubDIFF_TEMPORAL(27,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(5,8)<1> ubDIFF_TEMPORAL(26,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(5,24)<1> ubDIFF_TEMPORAL(27,2)<32;8,4>
 
//3 lines next
mov (8) ubMSGPAYLOAD_U(6,8)<1> ubDIFF_TEMPORAL(28,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(6,24)<1> ubCURBE_TEMP(4,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(6,8)<1> ubDIFF_TEMPORAL(28,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(6,24)<1> ubCURBE_TEMP(4,2)<32;8,4>
 
mov (8) ubMSGPAYLOAD_U(7,8)<1> ubCURBE_TEMP(5,0)<32;8,4>
mov (8) ubMSGPAYLOAD_U(7,24)<1> ubCURBE_TEMP(6,0)<32;8,4>
mov (8) ubMSGPAYLOAD_V(7,8)<1> ubCURBE_TEMP(5,2)<32;8,4>
mov (8) ubMSGPAYLOAD_V(7,24)<1> ubCURBE_TEMP(6,2)<32;8,4>
 
 
 
//Module Name : DN_UV_420_Save_Curr_Frame_Y
//Author : Tatiya, Rupesh
//Description : Save Curr Frame Y data for 420 Input
 
 
 
//Module Name : DN_UV_Load_Curr_Frame_Y
//Author : Tatiya, Rupesh
//Description : Saves Y or YUY2 of Current frame.
 
 
 
 
mov (8) acc0.0<1>:ud r0.0<8;8,1>:ud
mov (2) acc0.0<1>:d r62.10<2;2,1>:w
 
mov (1) acc0.2<1>:d 0xF000F:ud
 
mov (8) r92.0<1>:ud acc0.0<8;8,1>:ud
 
mov (8) r101.0<1>:ud acc0.0<8;8,1>:ud
mov (8) r110.0<1>:ud acc0.0<8;8,1>:ud
mov (8) r119.0<1>:ud acc0.0<8;8,1>:ud
 
add (1) r101.1<1>:d acc0.1<0;1,0>:d 16:d
 
add (1) r110.0<1>:d acc0.0<0;1,0>:d 16:d
 
add (2) r119.0<1>:d acc0.0<2;2,1>:d 16:d
 
send (8) null<1>:d r92 0x5 0x120A8018:ud
send (8) null<1>:d r101 0x5 0x120A8018:ud
send (8) null<1>:d r110 0x5 0x120A8018:ud
send (8) null<1>:d r119 0x5 0x120A8018:ud
 
 
//TODO - See if History saving can be combined with Curr Frame Save. - rT
 
 
//Module Name : DN_UV_Save_Hist_UV
//Author : Tatiya, Rupesh
//Description : Saves DN history for UV data.
 
mov (8) r3.0<1>:ud r0.0<8;8,1>:ud
mov (2) r3.0<1>:d r62.12<2;2,1>:w
mov (1) r3.2<1>:d 0x30007:ud
 
send (8) null<1>:d r3 0x5 0x40A8021:ud
 
 
 
//Module Name : DN_UV_Save_BNE_UV
//Author : Tatiya, Rupesh
//Description : Saves BNE values for 16x16 U and 16x16 V.
 
mov (8) r1.0<1>:ud r0.0<8;8,1>:ud
mov (2) r1.0<1>:d r63.12<2;2,1>:w
mov (1) r1.2<1>:d 0x10003:ud
 
send (8) null<1>:d r1 0x5 0x40A8023:ud
 
 
 
//File Name : DN_UV_PL3_Save_Curr_Frame_UV.asm
//Author : Tatiya, Rupesh
//Description : Save U and V data for PL3 surface
 
 
 
//Module name : DN_UV_Save_Curr_Frame_UV
//Author : Tatiya, Rupesh
//Description : Saves Current Frame (UV only).
 
 
 
 
mov (8) r74<1>:ud r0.0<8;8,1>:ud
mov (8) r83<1>:ud r0.0<8;8,1>:ud
 
shr (2) r74.0<1>:d r62.10<2;2,1>:w 1:w
mov (1) r74.2<1>:d 0xF000F:ud
 
mov (8) r83.0<1>:ud r74.0<8;8,1>:ud
 
send (8) null<1>:d r74 0x5 0x120A8019:ud
send (8) null<1>:d r83 0x5 0x120A801A:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
//All sub-routines here
 
 
// Module Name : Noise_Detection
// Author : Tatiya, Rupesh
// Description : Performs noise detection on 32 pixels of U (8x4) and 32 pixels of V (8x4).
 
DN_UV_NOISE_DETECTION_UV:
 
// Find Field Block Median
//
// Purpose : Find the median value of the nine pixels in the same field
// which are centered at current pixel.
//
// Works on 9 pixels centered at the current pixel
// NOTE: pixels are within same field.
// v4 - current pixel
//
// v2 v1 v0
// * * * <--- Different field - not used
// v5 v4 v3
// * * * <--- Different field - not used
// v8 v7 v6
 
// Algorithm to find median modifies the data.
// Copy the data needed to calculate median so the original source data stays intact.
//
 
//TODO - Change Interleaved implementation to separated one if - , does not work on predication. - rT
 
//Delete Later - rT
//mov (1) pCUR_UV:uw 52*32:uw
 
// v0
mov (16) ubMEDIAN_TEMP(0,0)<1> r[a0.0,0]<16;16,1>
// v0
mov (16) ubMEDIAN_TEMP(0,16)<1> r[a0.0,32]<16;16,1>
// v1
mov (16) ubMEDIAN_TEMP(1,0)<1> r[a0.0,2]<16;16,1>
// v1
mov (16) ubMEDIAN_TEMP(1,16)<1> r[a0.0,34]<16;16,1>
// v2
mov (16) ubMEDIAN_TEMP(2,0)<1> r[a0.0,4]<16;16,1>
// v2
mov (16) ubMEDIAN_TEMP(2,16)<1> r[a0.0,36]<16;16,1>
// v3
mov (16) ubMEDIAN_TEMP(3,0)<1> r[a0.0,64]<16;16,1>
// v3
mov (16) ubMEDIAN_TEMP(3,16)<1> r[a0.0,96]<16;16,1>
// v4
mov (16) ubMEDIAN_TEMP(4,0)<1> r[a0.0,66]<16;16,1>
// v4
mov (16) ubMEDIAN_TEMP(4,16)<1> r[a0.0,98]<16;16,1>
// v5
mov (16) ubMEDIAN_TEMP(5,0)<1> r[a0.0,68]<16;16,1>
// v5
mov (16) ubMEDIAN_TEMP(5,16)<1> r[a0.0,100]<16;16,1>
// v6
mov (16) ubMEDIAN_TEMP(6,0)<1> r[a0.0,128]<16;16,1>
// v6
mov (16) ubMEDIAN_TEMP(6,16)<1> r[a0.0,160]<16;16,1>
// v7
mov (16) ubMEDIAN_TEMP(7,0)<1> r[a0.0,130]<16;16,1>
// v7
mov (16) ubMEDIAN_TEMP(7,16)<1> r[a0.0,162]<16;16,1>
// v8
mov (16) ubMEDIAN_TEMP(8,0)<1> r[a0.0,132]<16;16,1>
// v8
mov (16) ubMEDIAN_TEMP(8,16)<1> r[a0.0,164]<16;16,1>
 
//TODO - Optimize one instruction here.
add (1) a0.0:uw a0.0<0;1,0>:uw 64:uw
// v0
mov (16) ubMEDIAN_TEMP(9,0)<1> r[a0.0,0]<16;16,1>
// v0
mov (16) ubMEDIAN_TEMP(9,16)<1> r[a0.0,32]<16;16,1>
// v1
mov (16) ubMEDIAN_TEMP(10,0)<1> r[a0.0,2]<16;16,1>
// v1
mov (16) ubMEDIAN_TEMP(10,16)<1> r[a0.0,34]<16;16,1>
// v2
mov (16) ubMEDIAN_TEMP(11,0)<1> r[a0.0,4]<16;16,1>
// v2
mov (16) ubMEDIAN_TEMP(11,16)<1> r[a0.0,36]<16;16,1>
// v3
mov (16) ubMEDIAN_TEMP(12,0)<1> r[a0.0,64]<16;16,1>
// v3
mov (16) ubMEDIAN_TEMP(12,16)<1> r[a0.0,96]<16;16,1>
// v4
mov (16) ubMEDIAN_TEMP(13,0)<1> r[a0.0,66]<16;16,1>
// v4
mov (16) ubMEDIAN_TEMP(13,16)<1> r[a0.0,98]<16;16,1>
// v5
mov (16) ubMEDIAN_TEMP(14,0)<1> r[a0.0,68]<16;16,1>
// v5
mov (16) ubMEDIAN_TEMP(14,16)<1> r[a0.0,100]<16;16,1>
// v6
mov (16) ubMEDIAN_TEMP(15,0)<1> r[a0.0,128]<16;16,1>
// v6
mov (16) ubMEDIAN_TEMP(15,16)<1> r[a0.0,160]<16;16,1>
// v7
mov (16) ubMEDIAN_TEMP(16,0)<1> r[a0.0,130]<16;16,1>
// v7
mov (16) ubMEDIAN_TEMP(16,16)<1> r[a0.0,162]<16;16,1>
// v8
mov (16) ubMEDIAN_TEMP(17,0)<1> r[a0.0,132]<16;16,1>
// v8
mov (16) ubMEDIAN_TEMP(17,16)<1> r[a0.0,164]<16;16,1>
 
//TODO - Optimize one instruction here.
add (1) a0.0:uw a0.0<0;1,0>:uw 64:uw
 
// MedianSwap
//
// MedianSwap(inOutLeft, inOutRight)
// {
// if (inOutLeft > inOutRight)
// {
// temp = inOutLeft
// inOutLeft = inOutRight
// inOutRight = temp
// }
// }
 
// MedianSwap(v1, v2) - U
// MedianSwap(v4, v5) - U
// MedianSwap(v1, v2) - V
// MedianSwap(v4, v5) - V
 
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(1,0)<32;16,2> ubMEDIAN_TEMP(2,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(5,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(1,1)<32;16,2> ubMEDIAN_TEMP(2,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(5,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(1,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(4,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(1,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(1,0)<2> ubMEDIAN_TEMP(2,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(5,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(1,1)<2> ubMEDIAN_TEMP(2,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(5,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(2,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(5,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(2,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(5,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v7, v8) - U
// MedianSwap(v0, v1) - U
// MedianSwap(v7, v8) - V
// MedianSwap(v0, v1) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(7,0)<32;16,2> ubMEDIAN_TEMP(8,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(0,0)<32;16,2> ubMEDIAN_TEMP(1,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(7,1)<32;16,2> ubMEDIAN_TEMP(8,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(0,1)<32;16,2> ubMEDIAN_TEMP(1,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(7,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(0,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(7,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(0,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(7,0)<2> ubMEDIAN_TEMP(8,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(0,0)<2> ubMEDIAN_TEMP(1,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(7,1)<2> ubMEDIAN_TEMP(8,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(0,1)<2> ubMEDIAN_TEMP(1,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(8,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(1,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(8,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(1,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v3, v4) - U
// MedianSwap(v6, v7) - U
// MedianSwap(v3, v4) - V
// MedianSwap(v6, v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(3,0)<32;16,2> ubMEDIAN_TEMP(4,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(6,0)<32;16,2> ubMEDIAN_TEMP(7,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(3,1)<32;16,2> ubMEDIAN_TEMP(4,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(6,1)<32;16,2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(3,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(6,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(3,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(6,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(3,0)<2> ubMEDIAN_TEMP(4,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(6,0)<2> ubMEDIAN_TEMP(7,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(3,1)<2> ubMEDIAN_TEMP(4,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(6,1)<2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(4,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(7,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(4,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(7,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v1, v2) - U
// MedianSwap(v4, v5) - U
// MedianSwap(v1, v2) - V
// MedianSwap(v4, v5) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(1,0)<32;16,2> ubMEDIAN_TEMP(2,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(5,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(1,1)<32;16,2> ubMEDIAN_TEMP(2,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(5,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(1,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(4,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(1,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(1,0)<2> ubMEDIAN_TEMP(2,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(5,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(1,1)<2> ubMEDIAN_TEMP(2,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(5,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(2,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(5,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(2,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(5,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v7, v8) - U
// MedianSwap(v0, v3) - U
// MedianSwap(v7, v8) - V
// MedianSwap(v0, v3) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(7,0)<32;16,2> ubMEDIAN_TEMP(8,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(0,0)<32;16,2> ubMEDIAN_TEMP(3,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(7,1)<32;16,2> ubMEDIAN_TEMP(8,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(0,1)<32;16,2> ubMEDIAN_TEMP(3,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(7,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(0,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(7,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(0,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(7,0)<2> ubMEDIAN_TEMP(8,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(0,0)<2> ubMEDIAN_TEMP(3,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(7,1)<2> ubMEDIAN_TEMP(8,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(0,1)<2> ubMEDIAN_TEMP(3,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(8,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(3,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(8,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(3,1)<2> ubTEMP1(1,16)<16;16,1>
 
// NOTE:
// Compare v0 to v6 to find the minimum.
// Store the minimum for future use.
//TODO - Find if MIN is needed.
//cmp.l.f0.0 (16) null:w ubMEDIAN_TEMP(%1+0,0)<32;16,2> ubMEDIAN_TEMP(%1+6,0)<32;16,2>
//cmp.l.f1.0 (16) null:w ubMEDIAN_TEMP(%1+0,1)<32;16,2> ubMEDIAN_TEMP(%1+6,1)<32;16,2>
//(f0.0) mov (16) ubCURR_MIN(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+0,0)<32;16,2>
//(f1.0) mov (16) ubCURR_MIN(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+0,1)<32;16,2>
//(-f0.0) mov (16) ubCURR_MIN(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+6,0)<32;16,2>
//(-f1.0) mov (16) ubCURR_MIN(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+6,1)<32;16,2>
 
// MedianSwap(v5, v8) - U
// MedianSwap(v4, v7) - U
// MedianSwap(v5, v8) - V
// MedianSwap(v4, v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(5,0)<32;16,2> ubMEDIAN_TEMP(8,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(7,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(5,1)<32;16,2> ubMEDIAN_TEMP(8,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(5,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(4,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(5,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(5,0)<2> ubMEDIAN_TEMP(8,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(7,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(5,1)<2> ubMEDIAN_TEMP(8,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(8,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(7,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(8,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(7,1)<2> ubTEMP1(1,16)<16;16,1>
 
// NOTE:
// Compare v2 to v8 to find the maximum.
// Store the maximum for future use.
//TODO - Find if MAX is needed.
// cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(%1+2,0)<32;16,2> ubMEDIAN_TEMP(%1+8,0)<32;16,2>
// cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(%1+2,1)<32;16,2> ubMEDIAN_TEMP(%1+8,1)<32;16,2>
//(f0.0) mov (16) ubCURR_MAX(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+2,0)<32;16,2>
//(f1.0) mov (16) ubCURR_MAX(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+2,1)<32;16,2>
//(-f0.0) mov (16) ubCURR_MAX(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+8,0)<32;16,2>
//(-f1.0) mov (16) ubCURR_MAX(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+8,1)<32;16,2>
 
// MedianSwap(v3, v6) - U
// MedianSwap(v1, v4) - U
// MedianSwap(v3, v6) - V
// MedianSwap(v1, v4) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(3,0)<32;16,2> ubMEDIAN_TEMP(6,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(1,0)<32;16,2> ubMEDIAN_TEMP(4,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(3,1)<32;16,2> ubMEDIAN_TEMP(6,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(1,1)<32;16,2> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(6,0)<2> ubMEDIAN_TEMP(3,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(1,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(6,1)<2> ubMEDIAN_TEMP(3,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(1,1)<32;16,2>
 
// MedianSwap(v2,v5) - U
// MedianSwap(v4,v7) - U
// MedianSwap(v2,v5) - V
// MedianSwap(v4,v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(2,0)<32;16,2> ubMEDIAN_TEMP(5,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(7,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(2,1)<32;16,2> ubMEDIAN_TEMP(5,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(2,0)<2> ubMEDIAN_TEMP(5,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(7,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(2,1)<2> ubMEDIAN_TEMP(5,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(7,1)<32;16,2>
 
// MedianSwap(v4,v2) - U
// MedianSwap(v4,v2) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(2,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(2,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(4,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(2,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(2,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(2,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(2,1)<2> ubTEMP1(0,16)<16;16,1>
 
// MedianSwap(v6,v4) - U
// MedianSwap(v6,v4) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(6,0)<32;16,2> ubMEDIAN_TEMP(4,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(6,1)<32;16,2> ubMEDIAN_TEMP(4,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(6,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(6,1)<32;16,2>
 
// MedianSwap(v4,v2) - U
// MedianSwap(v4,v2) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(4,0)<32;16,2> ubMEDIAN_TEMP(2,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(4,1)<32;16,2> ubMEDIAN_TEMP(2,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(4,0)<2> ubMEDIAN_TEMP(2,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(4,1)<2> ubMEDIAN_TEMP(2,1)<32;16,2>
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(10,0)<32;16,2> ubMEDIAN_TEMP(11,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(14,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(10,1)<32;16,2> ubMEDIAN_TEMP(11,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(14,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(10,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(13,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(10,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(10,0)<2> ubMEDIAN_TEMP(11,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(14,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(10,1)<2> ubMEDIAN_TEMP(11,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(14,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(11,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(14,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(11,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(14,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v7, v8) - U
// MedianSwap(v0, v1) - U
// MedianSwap(v7, v8) - V
// MedianSwap(v0, v1) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(16,0)<32;16,2> ubMEDIAN_TEMP(17,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(9,0)<32;16,2> ubMEDIAN_TEMP(10,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(16,1)<32;16,2> ubMEDIAN_TEMP(17,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(9,1)<32;16,2> ubMEDIAN_TEMP(10,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(16,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(9,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(16,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(9,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(16,0)<2> ubMEDIAN_TEMP(17,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(9,0)<2> ubMEDIAN_TEMP(10,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(16,1)<2> ubMEDIAN_TEMP(17,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(9,1)<2> ubMEDIAN_TEMP(10,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(17,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(10,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(17,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(10,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v3, v4) - U
// MedianSwap(v6, v7) - U
// MedianSwap(v3, v4) - V
// MedianSwap(v6, v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(12,0)<32;16,2> ubMEDIAN_TEMP(13,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(15,0)<32;16,2> ubMEDIAN_TEMP(16,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(12,1)<32;16,2> ubMEDIAN_TEMP(13,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(15,1)<32;16,2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(12,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(15,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(12,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(15,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(12,0)<2> ubMEDIAN_TEMP(13,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(15,0)<2> ubMEDIAN_TEMP(16,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(12,1)<2> ubMEDIAN_TEMP(13,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(15,1)<2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(13,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(16,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(13,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(16,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v1, v2) - U
// MedianSwap(v4, v5) - U
// MedianSwap(v1, v2) - V
// MedianSwap(v4, v5) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(10,0)<32;16,2> ubMEDIAN_TEMP(11,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(14,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(10,1)<32;16,2> ubMEDIAN_TEMP(11,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(14,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(10,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(13,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(10,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(10,0)<2> ubMEDIAN_TEMP(11,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(14,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(10,1)<2> ubMEDIAN_TEMP(11,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(14,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(11,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(14,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(11,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(14,1)<2> ubTEMP1(1,16)<16;16,1>
 
// MedianSwap(v7, v8) - U
// MedianSwap(v0, v3) - U
// MedianSwap(v7, v8) - V
// MedianSwap(v0, v3) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(16,0)<32;16,2> ubMEDIAN_TEMP(17,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(9,0)<32;16,2> ubMEDIAN_TEMP(12,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(16,1)<32;16,2> ubMEDIAN_TEMP(17,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(9,1)<32;16,2> ubMEDIAN_TEMP(12,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(16,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(9,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(16,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(9,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(16,0)<2> ubMEDIAN_TEMP(17,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(9,0)<2> ubMEDIAN_TEMP(12,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(16,1)<2> ubMEDIAN_TEMP(17,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(9,1)<2> ubMEDIAN_TEMP(12,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(17,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(12,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(17,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(12,1)<2> ubTEMP1(1,16)<16;16,1>
 
// NOTE:
// Compare v0 to v6 to find the minimum.
// Store the minimum for future use.
//TODO - Find if MIN is needed.
//cmp.l.f0.0 (16) null:w ubMEDIAN_TEMP(%1+0,0)<32;16,2> ubMEDIAN_TEMP(%1+6,0)<32;16,2>
//cmp.l.f1.0 (16) null:w ubMEDIAN_TEMP(%1+0,1)<32;16,2> ubMEDIAN_TEMP(%1+6,1)<32;16,2>
//(f0.0) mov (16) ubCURR_MIN(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+0,0)<32;16,2>
//(f1.0) mov (16) ubCURR_MIN(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+0,1)<32;16,2>
//(-f0.0) mov (16) ubCURR_MIN(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+6,0)<32;16,2>
//(-f1.0) mov (16) ubCURR_MIN(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+6,1)<32;16,2>
 
// MedianSwap(v5, v8) - U
// MedianSwap(v4, v7) - U
// MedianSwap(v5, v8) - V
// MedianSwap(v4, v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(14,0)<32;16,2> ubMEDIAN_TEMP(17,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(16,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(14,1)<32;16,2> ubMEDIAN_TEMP(17,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(14,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(13,0)<32;16,2>
mov (16) ubTEMP1(1,0)<1> ubMEDIAN_TEMP(14,1)<32;16,2>
mov (16) ubTEMP1(1,16)<1> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(14,0)<2> ubMEDIAN_TEMP(17,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(16,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(14,1)<2> ubMEDIAN_TEMP(17,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(17,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(16,0)<2> ubTEMP1(0,16)<16;16,1>
(f1.0) mov (16) ubMEDIAN_TEMP(17,1)<2> ubTEMP1(1,0)<16;16,1>
(f1.1) mov (16) ubMEDIAN_TEMP(16,1)<2> ubTEMP1(1,16)<16;16,1>
 
// NOTE:
// Compare v2 to v8 to find the maximum.
// Store the maximum for future use.
//TODO - Find if MAX is needed.
// cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(%1+2,0)<32;16,2> ubMEDIAN_TEMP(%1+8,0)<32;16,2>
// cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(%1+2,1)<32;16,2> ubMEDIAN_TEMP(%1+8,1)<32;16,2>
//(f0.0) mov (16) ubCURR_MAX(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+2,0)<32;16,2>
//(f1.0) mov (16) ubCURR_MAX(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+2,1)<32;16,2>
//(-f0.0) mov (16) ubCURR_MAX(0,%2*16+0)<1> ubMEDIAN_TEMP(%1+8,0)<32;16,2>
//(-f1.0) mov (16) ubCURR_MAX(1,%2*16+0)<1> ubMEDIAN_TEMP(%1+8,1)<32;16,2>
 
// MedianSwap(v3, v6) - U
// MedianSwap(v1, v4) - U
// MedianSwap(v3, v6) - V
// MedianSwap(v1, v4) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(12,0)<32;16,2> ubMEDIAN_TEMP(15,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(10,0)<32;16,2> ubMEDIAN_TEMP(13,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(12,1)<32;16,2> ubMEDIAN_TEMP(15,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(10,1)<32;16,2> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(15,0)<2> ubMEDIAN_TEMP(12,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(10,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(15,1)<2> ubMEDIAN_TEMP(12,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(10,1)<32;16,2>
 
// MedianSwap(v2,v5) - U
// MedianSwap(v4,v7) - U
// MedianSwap(v2,v5) - V
// MedianSwap(v4,v7) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(11,0)<32;16,2> ubMEDIAN_TEMP(14,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(16,0)<32;16,2>
cmp.g.f1.0 (16) null:w ubMEDIAN_TEMP(11,1)<32;16,2> ubMEDIAN_TEMP(14,1)<32;16,2>
cmp.g.f1.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(11,0)<2> ubMEDIAN_TEMP(14,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(16,0)<32;16,2>
(f1.0) mov (16) ubMEDIAN_TEMP(11,1)<2> ubMEDIAN_TEMP(14,1)<32;16,2>
(f1.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(16,1)<32;16,2>
 
// MedianSwap(v4,v2) - U
// MedianSwap(v4,v2) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(11,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(11,1)<32;16,2>
 
mov (16) ubTEMP1(0,0)<1> ubMEDIAN_TEMP(13,0)<32;16,2>
mov (16) ubTEMP1(0,16)<1> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(11,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(11,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(11,0)<2> ubTEMP1(0,0)<16;16,1>
(f0.1) mov (16) ubMEDIAN_TEMP(11,1)<2> ubTEMP1(0,16)<16;16,1>
 
// MedianSwap(v6,v4) - U
// MedianSwap(v6,v4) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(15,0)<32;16,2> ubMEDIAN_TEMP(13,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(15,1)<32;16,2> ubMEDIAN_TEMP(13,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(15,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(15,1)<32;16,2>
 
// MedianSwap(v4,v2) - U
// MedianSwap(v4,v2) - V
cmp.g.f0.0 (16) null:w ubMEDIAN_TEMP(13,0)<32;16,2> ubMEDIAN_TEMP(11,0)<32;16,2>
cmp.g.f0.1 (16) null:w ubMEDIAN_TEMP(13,1)<32;16,2> ubMEDIAN_TEMP(11,1)<32;16,2>
 
(f0.0) mov (16) ubMEDIAN_TEMP(13,0)<2> ubMEDIAN_TEMP(11,0)<32;16,2>
(f0.1) mov (16) ubMEDIAN_TEMP(13,1)<2> ubMEDIAN_TEMP(11,1)<32;16,2>
 
// Sobel Value calculation for the current pixel v4
// v2 v1 v0
// * * * <--- Different field - not used
// v5 v4 v3
// * * * <--- Different field - not used
// v8 v7 v6
//
// Gx = -v0 - 2*v3 - v6 + v2 + 2*v5 + v8
// Gy = v0 + 2*v1 + v2 - v6 - 2*v7 - v8
//
// Sobel = (|Gx| + |Gy|) >> 3
 
//TODO - Change Later - rT
add (1) a0.0:uw a0.0<0;1,0>:uw -128:uw
 
// - 2 * v3
mul (16) acc0.0<1>:w r[a0.0,64]<16;16,1>:ub -2:w
// + v8
mac (16) acc0.0<1>:w r[a0.0,132]<16;16,1>:ub 1:w
// - v0
mac (16) acc0.0<1>:w r[a0.0,0]<16;16,1>:ub -1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,128]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,4]<16;16,1>:ub 1:w
// + 2 * v5
mac (16) wSOBEL_X(0)<1> r[a0.0,68]<16;16,1>:ub 2:w
// - 2 * v3
mul (16) acc0.0<1>:w r[a0.0,96]<16;16,1>:ub -2:w
// + v8
mac (16) acc0.0<1>:w r[a0.0,164]<16;16,1>:ub 1:w
// - v0
mac (16) acc0.0<1>:w r[a0.0,32]<16;16,1>:ub -1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,160]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,36]<16;16,1>:ub 1:w
// + 2 * v5
mac (16) wSOBEL_X(1)<1> r[a0.0,100]<16;16,1>:ub 2:w
// - 2 * v3
mul (16) acc0.0<1>:w r[a0.0,128]<16;16,1>:ub -2:w
// + v8
mac (16) acc0.0<1>:w r[a0.0,196]<16;16,1>:ub 1:w
// - v0
mac (16) acc0.0<1>:w r[a0.0,64]<16;16,1>:ub -1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,192]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,68]<16;16,1>:ub 1:w
// + 2 * v5
mac (16) wSOBEL_X(2)<1> r[a0.0,132]<16;16,1>:ub 2:w
// - 2 * v3
mul (16) acc0.0<1>:w r[a0.0,160]<16;16,1>:ub -2:w
// + v8
mac (16) acc0.0<1>:w r[a0.0,228]<16;16,1>:ub 1:w
// - v0
mac (16) acc0.0<1>:w r[a0.0,96]<16;16,1>:ub -1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,224]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,100]<16;16,1>:ub 1:w
// + 2 * v5
mac (16) wSOBEL_X(3)<1> r[a0.0,164]<16;16,1>:ub 2:w
 
// + 2 * v1
mul (16) acc0.0<1>:w r[a0.0,2]<16;16,1>:ub 2:w
// + v0
mac (16) acc0.0<1>:w r[a0.0,0]<16;16,1>:ub 1:w
// - v8
mac (16) acc0.0<1>:w r[a0.0,132]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,4]<16;16,1>:ub 1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,128]<16;16,1>:ub -1:w
// - 2 * v7
mac (16) acc0.0<1>:w r[a0.0,130]<16;16,1>:ub -2:w
 
add (16) acc0.0<1>:uw (abs)acc0.0<16;16,1>:w (abs)wSOBEL_X(0)<16;16,1>
 
shr (16) uwSOBEL(0)<1> acc0.0<16;16,1>:uw 3:uw
// + 2 * v1
mul (16) acc0.0<1>:w r[a0.0,34]<16;16,1>:ub 2:w
// + v0
mac (16) acc0.0<1>:w r[a0.0,32]<16;16,1>:ub 1:w
// - v8
mac (16) acc0.0<1>:w r[a0.0,164]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,36]<16;16,1>:ub 1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,160]<16;16,1>:ub -1:w
// - 2 * v7
mac (16) acc0.0<1>:w r[a0.0,162]<16;16,1>:ub -2:w
 
add (16) acc0.0<1>:uw (abs)acc0.0<16;16,1>:w (abs)wSOBEL_X(1)<16;16,1>
 
shr (16) uwSOBEL(1)<1> acc0.0<16;16,1>:uw 3:uw
// + 2 * v1
mul (16) acc0.0<1>:w r[a0.0,66]<16;16,1>:ub 2:w
// + v0
mac (16) acc0.0<1>:w r[a0.0,64]<16;16,1>:ub 1:w
// - v8
mac (16) acc0.0<1>:w r[a0.0,196]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,68]<16;16,1>:ub 1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,192]<16;16,1>:ub -1:w
// - 2 * v7
mac (16) acc0.0<1>:w r[a0.0,194]<16;16,1>:ub -2:w
 
add (16) acc0.0<1>:uw (abs)acc0.0<16;16,1>:w (abs)wSOBEL_X(2)<16;16,1>
 
shr (16) uwSOBEL(2)<1> acc0.0<16;16,1>:uw 3:uw
// + 2 * v1
mul (16) acc0.0<1>:w r[a0.0,98]<16;16,1>:ub 2:w
// + v0
mac (16) acc0.0<1>:w r[a0.0,96]<16;16,1>:ub 1:w
// - v8
mac (16) acc0.0<1>:w r[a0.0,228]<16;16,1>:ub -1:w
// + v2
mac (16) acc0.0<1>:w r[a0.0,100]<16;16,1>:ub 1:w
// - v6
mac (16) acc0.0<1>:w r[a0.0,224]<16;16,1>:ub -1:w
// - 2 * v7
mac (16) acc0.0<1>:w r[a0.0,226]<16;16,1>:ub -2:w
 
add (16) acc0.0<1>:uw (abs)acc0.0<16;16,1>:w (abs)wSOBEL_X(3)<16;16,1>
 
shr (16) uwSOBEL(3)<1> acc0.0<16;16,1>:uw 3:uw
 
//Mov Median in CURBE_TEMP to free up temp space.
mov (16) ubMEDIAN(0,0)<1> ubMEDIAN_TEMP(4,0)<16;16,1>
mov (16) ubMEDIAN(0,16)<1> ubMEDIAN_TEMP(4,16)<16;16,1>
mov (16) ubMEDIAN(0,32)<1> ubMEDIAN_TEMP(13,0)<16;16,1>
mov (16) ubMEDIAN(0,48)<1> ubMEDIAN_TEMP(13,16)<16;16,1>
 
// Find:
// absDiff = abs(ubCurY - ubMedian)
// Find the difference between pixel and median value.
 
//Median is interleaved. So difference is also interleaved.
 
//------------------------------------------------------------------------------------------
//Process 16 U and 16 V pixels here and rest later.
// first row - v0,v1,v2
add (16) wDIFF(0)<1> r[a0.0,0]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(1)<1> r[a0.0,2]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(2)<1> r[a0.0,4]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
 
// second row - v3,v4,v5
add (16) wDIFF(3)<1> r[a0.0,64]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(4)<1> r[a0.0,66]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(5)<1> r[a0.0,68]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
 
// third row - v6,v7,v8
add (16) wDIFF(6)<1> r[a0.0,128]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(7)<1> r[a0.0,130]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
add (16) wDIFF(8)<1> r[a0.0,132]<16;16,1>:ub -ubMEDIAN(0,0)<16;16,1>
// first row - v0,v1,v2
add (16) wDIFF(9)<1> r[a0.0,32]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(10)<1> r[a0.0,34]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(11)<1> r[a0.0,36]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
 
// second row - v3,v4,v5
add (16) wDIFF(12)<1> r[a0.0,96]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(13)<1> r[a0.0,98]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(14)<1> r[a0.0,100]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
 
// third row - v6,v7,v8
add (16) wDIFF(15)<1> r[a0.0,160]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(16)<1> r[a0.0,162]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
add (16) wDIFF(17)<1> r[a0.0,164]<16;16,1>:ub -ubMEDIAN(0,16)<16;16,1>
 
//TODO - Change Later - rT
add (1) a0.0:uw a0.0<0;1,0>:uw 64:uw
 
// Find sum of all absolute differences AND
// maximum absolute difference for 16 U and 16 V here.
//First 2 rows of 8x4
//Compare 0-1, 2-3, 4-5, 6-7
cmp.g.f0.0 (16) null:uw (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
cmp.g.f0.1 (16) null:uw (abs)wDIFF(2)<16;16,1> (abs)wDIFF(3)<16;16,1>
cmp.g.f1.0 (16) null:uw (abs)wDIFF(4)<16;16,1> (abs)wDIFF(5)<16;16,1>
cmp.g.f1.1 (16) null:uw (abs)wDIFF(6)<16;16,1> (abs)wDIFF(7)<16;16,1>
 
//Calculate SAD
add (16) acc0.0<1>:uw (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(2)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(3)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(4)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(5)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(6)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(7)<16;16,1>
add (16) uwSOAD(0)<1> acc0.0<16;16,1>:uw (abs)wDIFF(8)<16;16,1>
 
(f0.0) sel (16) uwCURBE_TEMP(0)<1> (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
(f0.1) sel (16) uwCURBE_TEMP(1)<1> (abs)wDIFF(2)<16;16,1> (abs)wDIFF(3)<16;16,1>
(f1.0) sel (16) uwCURBE_TEMP(2)<1> (abs)wDIFF(4)<16;16,1> (abs)wDIFF(5)<16;16,1>
(f1.1) sel (16) uwCURBE_TEMP(3)<1> (abs)wDIFF(6)<16;16,1> (abs)wDIFF(7)<16;16,1>
 
//------------
//DIFF(0-7) is not needed here. Populate it.
// first row - v0,v1,v2
add (16) wDIFF(0)<1> r[a0.0,0]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
add (16) wDIFF(1)<1> r[a0.0,2]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
add (16) wDIFF(2)<1> r[a0.0,4]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
 
// second row - v3,v4,v5
add (16) wDIFF(3)<1> r[a0.0,64]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
add (16) wDIFF(4)<1> r[a0.0,66]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
add (16) wDIFF(5)<1> r[a0.0,68]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
 
// third row - v6,v7
add (16) wDIFF(6)<1> r[a0.0,128]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
add (16) wDIFF(7)<1> r[a0.0,130]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
//------------
 
//Compare Max(0,1) - Max(2,3), Max(4,5) - Max(6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
cmp.g.f0.1 (16) null:uw uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
(f0.1)sel (16) uwCURBE_TEMP(2)<1> uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
//Compare Max(0,1,2,3) - Max(4,5,6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
 
//Compare Max(0,1,2,3,4,5,6,7) - 8
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(8)<16;16,1>
(f0.0)sel (16) uwMAX_ABS_DIFF(0)<1> uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(8)<16;16,1>
 
//------------
//Load v8 - DIFF(8)
add (16) wDIFF(8)<1> r[a0.0,132]<16;16,1>:ub -ubMEDIAN(1,0)<16;16,1>
//------------
//Compare 0-1, 2-3, 4-5, 6-7
cmp.g.f0.0 (16) null:uw (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
cmp.g.f0.1 (16) null:uw (abs)wDIFF(11)<16;16,1> (abs)wDIFF(12)<16;16,1>
cmp.g.f1.0 (16) null:uw (abs)wDIFF(13)<16;16,1> (abs)wDIFF(14)<16;16,1>
cmp.g.f1.1 (16) null:uw (abs)wDIFF(15)<16;16,1> (abs)wDIFF(16)<16;16,1>
 
//Calculate SAD
add (16) acc0.0<1>:uw (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(11)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(12)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(13)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(14)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(15)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(16)<16;16,1>
add (16) uwSOAD(1)<1> acc0.0<16;16,1>:uw (abs)wDIFF(17)<16;16,1>
 
(f0.0) sel (16) uwCURBE_TEMP(0)<1> (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
(f0.1) sel (16) uwCURBE_TEMP(1)<1> (abs)wDIFF(11)<16;16,1> (abs)wDIFF(12)<16;16,1>
(f1.0) sel (16) uwCURBE_TEMP(2)<1> (abs)wDIFF(13)<16;16,1> (abs)wDIFF(14)<16;16,1>
(f1.1) sel (16) uwCURBE_TEMP(3)<1> (abs)wDIFF(15)<16;16,1> (abs)wDIFF(16)<16;16,1>
 
//------------
//DIFF(0-7) is not needed here. Populate it.
// first row - v0,v1,v2
add (16) wDIFF(9)<1> r[a0.0,32]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
add (16) wDIFF(10)<1> r[a0.0,34]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
add (16) wDIFF(11)<1> r[a0.0,36]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
 
// second row - v3,v4,v5
add (16) wDIFF(12)<1> r[a0.0,96]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
add (16) wDIFF(13)<1> r[a0.0,98]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
add (16) wDIFF(14)<1> r[a0.0,100]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
 
// third row - v6,v7
add (16) wDIFF(15)<1> r[a0.0,160]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
add (16) wDIFF(16)<1> r[a0.0,162]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
//------------
 
//Compare Max(0,1) - Max(2,3), Max(4,5) - Max(6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
cmp.g.f0.1 (16) null:uw uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
(f0.1)sel (16) uwCURBE_TEMP(2)<1> uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
//Compare Max(0,1,2,3) - Max(4,5,6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
 
//Compare Max(0,1,2,3,4,5,6,7) - 8
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(17)<16;16,1>
(f0.0)sel (16) uwMAX_ABS_DIFF(1)<1> uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(17)<16;16,1>
 
//------------
//Load v8 - DIFF(8)
add (16) wDIFF(17)<1> r[a0.0,164]<16;16,1>:ub -ubMEDIAN(1,16)<16;16,1>
//------------
 
//if ((sobel_edge_measure < m_SobelEdgeThreshold) && ((block_max-block_min) < m_LocalDiffThreshold))
// if (sigma_mb_min > sigma)
// sigma_mb_min = sigma;
 
//NOTE: block_min is always zero as median is one of the value in 3x3 block. So no need o calculate it.
// So just do -
//if ((sobel_edge_measure < m_SobelEdgeThreshold) && ((block_max) < m_LocalDiffThreshold) && ( sigma < sigma_mb_min))
// sigma_mb_min = sigma;
 
//We are processing 32 bytes of U and 32 bytes of V - each of size 8x4.
//Compare first 8 bytes with max possible (255).
//Start above condition from second 8 bytes.
 
//TODO - Change Later - rT
// mov (1) pCUR_MIN_SOAD_8x4:uw 1752:uw //r54.24:ub
 
//First row of 8x4
cmp.l.f0.0 (16) null:uw uwSOBEL(0)<16;16,1> r55.30<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwMAX_ABS_DIFF(0)<16;16,1> r55.28<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwSOAD(0)<16;16,1> 255:uw
(f0.0) sel (16) uwSOBEL(0)<1> uwSOAD(0)<16;16,1> 255:uw
 
//Second row of 8x4
cmp.l.f0.0 (16) null:uw uwSOBEL(1)<16;16,1> r55.30<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwMAX_ABS_DIFF(1)<16;16,1> r55.28<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwSOAD(1)<16;16,1> uwSOBEL(0)<16;16,1>
(f0.0) mov (16) uwSOBEL(0)<1> uwSOAD(1)<16;16,1>
 
// Find sum of all absolute differences AND
// maximum absolute difference for 16 U and 16 V here.
//Second 2 rows of 8x4
//Compare 0-1, 2-3, 4-5, 6-7
cmp.g.f0.0 (16) null:uw (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
cmp.g.f0.1 (16) null:uw (abs)wDIFF(2)<16;16,1> (abs)wDIFF(3)<16;16,1>
cmp.g.f1.0 (16) null:uw (abs)wDIFF(4)<16;16,1> (abs)wDIFF(5)<16;16,1>
cmp.g.f1.1 (16) null:uw (abs)wDIFF(6)<16;16,1> (abs)wDIFF(7)<16;16,1>
 
//Calculate SAD
add (16) acc0.0<1>:uw (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(2)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(3)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(4)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(5)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(6)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(7)<16;16,1>
add (16) uwSOAD(0)<1> acc0.0<16;16,1>:uw (abs)wDIFF(8)<16;16,1>
 
(f0.0) sel (16) uwCURBE_TEMP(0)<1> (abs)wDIFF(0)<16;16,1> (abs)wDIFF(1)<16;16,1>
(f0.1) sel (16) uwCURBE_TEMP(1)<1> (abs)wDIFF(2)<16;16,1> (abs)wDIFF(3)<16;16,1>
(f1.0) sel (16) uwCURBE_TEMP(2)<1> (abs)wDIFF(4)<16;16,1> (abs)wDIFF(5)<16;16,1>
(f1.1) sel (16) uwCURBE_TEMP(3)<1> (abs)wDIFF(6)<16;16,1> (abs)wDIFF(7)<16;16,1>
 
//Compare Max(0,1) - Max(2,3), Max(4,5) - Max(6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
cmp.g.f0.1 (16) null:uw uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
(f0.1)sel (16) uwCURBE_TEMP(2)<1> uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
//Compare Max(0,1,2,3) - Max(4,5,6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
 
//Compare Max(0,1,2,3,4,5,6,7) - 8
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(8)<16;16,1>
(f0.0)sel (16) uwMAX_ABS_DIFF(0)<1> uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(8)<16;16,1>
//Compare 0-1, 2-3, 4-5, 6-7
cmp.g.f0.0 (16) null:uw (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
cmp.g.f0.1 (16) null:uw (abs)wDIFF(11)<16;16,1> (abs)wDIFF(12)<16;16,1>
cmp.g.f1.0 (16) null:uw (abs)wDIFF(13)<16;16,1> (abs)wDIFF(14)<16;16,1>
cmp.g.f1.1 (16) null:uw (abs)wDIFF(15)<16;16,1> (abs)wDIFF(16)<16;16,1>
 
//Calculate SAD
add (16) acc0.0<1>:uw (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(11)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(12)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(13)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(14)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(15)<16;16,1>
add (16) acc0.0<1>:uw acc0.0<16;16,1>:uw (abs)wDIFF(16)<16;16,1>
add (16) uwSOAD(1)<1> acc0.0<16;16,1>:uw (abs)wDIFF(17)<16;16,1>
 
(f0.0) sel (16) uwCURBE_TEMP(0)<1> (abs)wDIFF(9)<16;16,1> (abs)wDIFF(10)<16;16,1>
(f0.1) sel (16) uwCURBE_TEMP(1)<1> (abs)wDIFF(11)<16;16,1> (abs)wDIFF(12)<16;16,1>
(f1.0) sel (16) uwCURBE_TEMP(2)<1> (abs)wDIFF(13)<16;16,1> (abs)wDIFF(14)<16;16,1>
(f1.1) sel (16) uwCURBE_TEMP(3)<1> (abs)wDIFF(15)<16;16,1> (abs)wDIFF(16)<16;16,1>
 
//Compare Max(0,1) - Max(2,3), Max(4,5) - Max(6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
cmp.g.f0.1 (16) null:uw uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(1)<16;16,1>
(f0.1)sel (16) uwCURBE_TEMP(2)<1> uwCURBE_TEMP(2)<16;16,1> uwCURBE_TEMP(3)<16;16,1>
 
//Compare Max(0,1,2,3) - Max(4,5,6,7)
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
(f0.0)sel (16) uwCURBE_TEMP(0)<1> uwCURBE_TEMP(0)<16;16,1> uwCURBE_TEMP(2)<16;16,1>
 
//Compare Max(0,1,2,3,4,5,6,7) - 8
cmp.g.f0.0 (16) null:uw uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(17)<16;16,1>
(f0.0)sel (16) uwMAX_ABS_DIFF(1)<1> uwCURBE_TEMP(0)<16;16,1> (abs)wDIFF(17)<16;16,1>
 
//Third row of 8x4
cmp.l.f0.0 (16) null:uw uwSOBEL(2)<16;16,1> r55.30<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwMAX_ABS_DIFF(0)<16;16,1> r55.28<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwSOAD(0)<16;16,1> uwSOBEL(0)<16;16,1>
(f0.0) mov (16) uwSOBEL(0)<1> uwSOAD(0)<16;16,1>
 
//Fourth row of 8x4
cmp.l.f0.0 (16) null:uw uwSOBEL(3)<16;16,1> r55.30<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwMAX_ABS_DIFF(1)<16;16,1> r55.28<0;2,1>:ub
(f0.0) cmp.l.f0.0 (16) null:uw uwSOAD(1)<16;16,1> uwSOBEL(0)<16;16,1>
(f0.0) mov (16) uwSOBEL(0)<1> uwSOAD(1)<16;16,1>
 
cmp.l.f0.0 (8) null:uw uwSOBEL(0,0)<8;8,1> uwSOBEL(0,8)<8;8,1>
(f0.0) sel (8) uwSOBEL(0)<1> uwSOBEL(0,0)<8;8,1> uwSOBEL(0,8)<8;8,1>
 
cmp.l.f0.0 (4) null:uw uwSOBEL(0,0)<4;4,1> uwSOBEL(0,4)<4;4,1>
(f0.0) sel (4) uwSOBEL(0)<1> uwSOBEL(0,0)<4;4,1> uwSOBEL(0,4)<4;4,1>
 
cmp.l.f0.0 (2) null:uw uwSOBEL(0,0)<2;2,1> uwSOBEL(0,2)<2;2,1>
(f0.0) sel (2) r[a0.1,0]<1>:uw uwSOBEL(0,0)<2;2,1> uwSOBEL(0,2)<2;2,1>
 
 
 
 
 
 
// End of common.inc
 
mov (1) ip:ud r7.7<0;1,0>:d
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/PL3_DN_422CP.g4a
0,0 → 1,544
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 117 // Total instruction count
// 1 // Total kernel count
 
.kernel PL3_DN_422CP
.code
 
 
 
// FileName: DN_PL_Core.asm
// Author: Vivek Kumar
// Description: Tasks for DN only case (16x8 block) for planar format
 
 
 
// FileName: DN.asm
// Author: Vivek Kumar
// Description: Tasks for DN only case (16x8 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x45E8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(4,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DN_Hist_Save.asm
// Author: Vivek Kumar
// Description: Saves DN history data to statistics surface
 
// Write denoise history to memory
mov (8) r27<1>:ud r0.0<8;8,1>:ud // message header
 
 
mov (2) mudMSGHDR_HIST(1)<1> udDNDI_RESP(4,0)<2;2,1> // Move denoise history to MRF (4x2)
 
 
shr (2) r27.0<1>:ud r7.0<2;2,1>:w 2:w // X,Y origin / 4
add (1) r27.0<1>:ud r27.0<0;1,0>:ud r1.12<0;1,0>:uw { NoDDClr } // Add pitch to X origin
mov (1) r27.2<1>:ud 0x10003:ud { NoDDChk } // block width and height
 
mov (8) mudMSGHDR_HIST(0)<1> r27.0<8;8,1>:ud
send (8) null<1>:d r22 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x50003:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | X | X | X | X |
//----------------------------------------------------
//| X | SVCM | X |
//----------------------------------------------------
//| SHCM | STAD | X |
//----------------------------------------------------
//| X | X |
//----------------------------------------------------
//| X | SVCM | X |
//----------------------------------------------------
//| SHCM | STAD | X |
//----------------------------------------------------
mov (1) mubMSGHDR_ENC_STATS(1,0)<1> ubDNDI_RESP(4,8)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (1) muwMSGHDR_ENC_STATS(1,3)<1> uwDNDI_RESP(4,11)<0;1,0> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) muwMSGHDR_ENC_STATS(1,4)<1> uwDNDI_RESP(4,12)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (1) muwMSGHDR_ENC_STATS(1,9)<1> uwDNDI_RESP(4,8)<0;1,0> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) muwMSGHDR_ENC_STATS(1,10)<1> uwDNDI_RESP(4,9)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Load_UV_IMC3_16x8.asm
// Author: Vivek Kumar
// Description: Read UV for 16x8 block through DATAPORT
 
 
 
// FileName: UVCopy_Load_16x8.asm
// Author: Vivek Kumar
// Description: Read UV for 16x8 block through DATAPORT
 
//CHANGE : Read extra UV data to convert to 422. -rT
//we are reading extra data in ALL cases irrespective of whether upsampling is reqd or not later on, to keep things simple.
 
 
add (2) r27.0<1>:d r7.0<2;2,1>:w r4.4<2;2,1>:w // Source Y Block origin
asr (2) r27.0<1>:d r27.0<2;2,1>:d 1:w { NoDDClr } // U/V block origin should be half of Y's
mov (1) r27.2<1>:ud 0x40007:ud { NoDDChk } // U/V block width and height (8x5)
mov (8) r36<1>:ud r27.0<8;8,1>:ud
mov (8) r38<1>:ud r27.0<8;8,1>:ud
send (8) udDNDI_UV_RESP(0)<1> r36 0x4 0x2290001:ud
send (8) udDNDI_UV_RESP(2)<1> r38 0x4 0x2290002:ud
 
//Update Header for Save
mov (1) mudMSGHDR_UCOPY(0,2)<1> 0x30007:ud // U block width and height (8x4)
mov (1) mudMSGHDR_VCOPY(0,2)<1> 0x30007:ud // V block width and height (8x4)
 
 
 
// FileName: DN_Save_Y_16x8.asm
// Author: Vivek Kumar
// Description: Save one 16x8 blocks of Y channel of DN output for reference
 
 
mov (8) mudDN_Y_OUT(0,0)<1> r0<8;8,1>:ud // message header
mov (2) mudDN_Y_OUT(0,0)<1> r7.0<2;2,1>:w { NoDDClr } // X origin
mov (1) mudDN_Y_OUT(0,2)<1> 0x7000F:ud { NoDDChk } // block width and height (16x8)
 
//send out data through data port
send (8) null<1>:d mudDN_Y_OUT 0x5 0xA0A8018:ud
 
 
 
// FileName: DN_Save_UV_IMC3_16x8.asm
// Author: Vivek Kumar
// Description: Save UV for 16x8 block through DATAPORT
 
 
 
// FileName: UVCopy_Save_16x8.asm
// Author: Vivek Kumar
// Description: Save UV for 16x8 block through DATAPORT
 
 
//Reuse the header from Load component
//Header is modified at the end of load - to be usable for save.
 
 
mov (8) mudMSGHDR_UCOPY(1)<1> udDNDI_UV_RESP(0)<8;8,1>
mov (8) mudMSGHDR_VCOPY(1)<1> udDNDI_UV_RESP(2)<8;8,1>
send (4) null<1>:d r36 0x5 0x40A8019:ud
send (4) null<1>:d r38 0x5 0x40A801A:ud
 
 
 
// FileName: DN_Upsample_UV_IMC3_16x8.asm
// Author: Tatiya, Rupesh
// Description: Upconvert 420 UV to 422
 
 
 
// FileName: UVCopy_Upsample_UV_16x8.asm
// Author: Tatiya, Rupesh
// Description: Convert 42X UV to 422 - to be used for IECP.
 
 
avg.sat (16) uwDNDI_UVCOPY_TEMP(0) ubDNDI_UV_RESP(0,0)<0;8,1> ubDNDI_UV_RESP(0,0)<8;8,1>
avg.sat (16) uwDNDI_UVCOPY_TEMP(4) ubDNDI_UV_RESP(2,0)<0;8,1> ubDNDI_UV_RESP(2,0)<8;8,1>
avg.sat (16) uwDNDI_UVCOPY_TEMP(1) ubDNDI_UV_RESP(0,8)<0;8,1> ubDNDI_UV_RESP(0,8)<8;8,1>
avg.sat (16) uwDNDI_UVCOPY_TEMP(5) ubDNDI_UV_RESP(2,8)<0;8,1> ubDNDI_UV_RESP(2,8)<8;8,1>
avg.sat (16) uwDNDI_UVCOPY_TEMP(2) ubDNDI_UV_RESP(0,16)<0;8,1> ubDNDI_UV_RESP(0,16)<8;8,1>
avg.sat (16) uwDNDI_UVCOPY_TEMP(6) ubDNDI_UV_RESP(2,16)<0;8,1> ubDNDI_UV_RESP(2,16)<8;8,1>
avg.sat (16) uwDNDI_UVCOPY_TEMP(3) ubDNDI_UV_RESP(0,24)<0;8,1> ubDNDI_UV_RESP(0,24)<8;8,1>
avg.sat (16) uwDNDI_UVCOPY_TEMP(7) ubDNDI_UV_RESP(2,24)<0;8,1> ubDNDI_UV_RESP(2,24)<8;8,1>
 
mov (16) ubDNDI_RESP(5, 1)<2> ubDNDI_UVCOPY_TEMP(0,0)<32;16,2> { NoDDClr }
mov (16) ubDNDI_RESP(5, 0)<2> ubDNDI_UVCOPY_TEMP(4,0)<32;16,2> { NoDDChk }
mov (16) ubDNDI_RESP(5, 33)<2> ubDNDI_UVCOPY_TEMP(1,0)<32;16,2> { NoDDClr }
mov (16) ubDNDI_RESP(5, 32)<2> ubDNDI_UVCOPY_TEMP(5,0)<32;16,2> { NoDDChk }
mov (16) ubDNDI_RESP(5, 65)<2> ubDNDI_UVCOPY_TEMP(2,0)<32;16,2> { NoDDClr }
mov (16) ubDNDI_RESP(5, 64)<2> ubDNDI_UVCOPY_TEMP(6,0)<32;16,2> { NoDDChk }
mov (16) ubDNDI_RESP(5, 97)<2> ubDNDI_UVCOPY_TEMP(3,0)<32;16,2> { NoDDClr }
mov (16) ubDNDI_RESP(5, 96)<2> ubDNDI_UVCOPY_TEMP(7,0)<32;16,2> { NoDDChk }
 
 
 
// FileName: DN_Save_422CP_16x8.asm
// Author: Vivek Kumar
// Description: Save one 16x8 blocks of DN output to the color pipe in 4-2-2 format
 
 
.declare mubMSGHDR_DN_OUT_2 Base=r36.0 ElementSize=1 Type=ub
 
 
mov (8) mudMSGHDR_DN_OUT(0)<1> r0<8;8,1>:ud // message header
shl (1) mdMSGHDR_DN_OUT(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin * 2 (422 output)
mov (1) mdMSGHDR_DN_OUT(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_DN_OUT(0,2)<1> 0x7000F:ud { NoDDClr, NoDDChk } // block width and height (16x8)
 
//M0.3 - 0 - CP Enable, 1 - Area of Interest, 3:2 Message Format(TBD), 4:3 - Ignored, 31:5 CP state pointer
//Compose area-of-interest bit + color pipe state pointer
or (1) mudMSGHDR_DN_OUT(0,3)<1> r2.4<0;1,0>:ud r7.26<0;1,0>:b { NoDDChk }
 
// First 8 x 8 Block
mov (8) mubMSGHDR_DN_OUT(1)<2> ubDNDI_RESP(0,0)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(1,16)<2> ubDNDI_RESP(0,16)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(2)<2> ubDNDI_RESP(0,32)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(2,16)<2> ubDNDI_RESP(0,48)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(3)<2> ubDNDI_RESP(0,64)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(3,16)<2> ubDNDI_RESP(0,80)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(4)<2> ubDNDI_RESP(0,96)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT(4,16)<2> ubDNDI_RESP(0,112)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT(1,1)<4> ubDNDI_RESP(5,1)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(1,17)<4> ubDNDI_RESP(5,17)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT(1,3)<4> ubDNDI_RESP(5,0)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(1,19)<4> ubDNDI_RESP(5,16)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(2,1)<4> ubDNDI_RESP(5,33)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(2,17)<4> ubDNDI_RESP(5,49)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT(2,3)<4> ubDNDI_RESP(5,32)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(2,19)<4> ubDNDI_RESP(5,48)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(3,1)<4> ubDNDI_RESP(5,65)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(3,17)<4> ubDNDI_RESP(5,81)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT(3,3)<4> ubDNDI_RESP(5,64)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(3,19)<4> ubDNDI_RESP(5,80)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(4,1)<4> ubDNDI_RESP(5,97)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(4,17)<4> ubDNDI_RESP(5,113)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT(4,3)<4> ubDNDI_RESP(5,96)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT(4,19)<4> ubDNDI_RESP(5,112)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
// Second 8 x 8 Block
mov (8) r36.0<1>:ud r31.0<8;8,1>:ud
add (1) r36.0<1>:ud r36.0<0;1,0>:w 0x10:w
 
mov (8) mubMSGHDR_DN_OUT_2(1)<2> ubDNDI_RESP(0,8)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(1,16)<2> ubDNDI_RESP(0,24)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(2)<2> ubDNDI_RESP(0,40)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(2,16)<2> ubDNDI_RESP(0,56)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(3)<2> ubDNDI_RESP(0,72)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(3,16)<2> ubDNDI_RESP(0,88)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(4)<2> ubDNDI_RESP(0,104)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DN_OUT_2(4,16)<2> ubDNDI_RESP(0,120)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT_2(1,1)<4> ubDNDI_RESP(5,9)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(1,17)<4> ubDNDI_RESP(5,25)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT_2(1,3)<4> ubDNDI_RESP(5,8)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(1,19)<4> ubDNDI_RESP(5,24)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(2,1)<4> ubDNDI_RESP(5,41)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(2,17)<4> ubDNDI_RESP(5,57)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT_2(2,3)<4> ubDNDI_RESP(5,40)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(2,19)<4> ubDNDI_RESP(5,56)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(3,1)<4> ubDNDI_RESP(5,73)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(3,17)<4> ubDNDI_RESP(5,89)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT_2(3,3)<4> ubDNDI_RESP(5,72)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(3,19)<4> ubDNDI_RESP(5,88)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(4,1)<4> ubDNDI_RESP(5,105)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(4,17)<4> ubDNDI_RESP(5,121)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DN_OUT_2(4,3)<4> ubDNDI_RESP(5,104)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DN_OUT_2(4,19)<4> ubDNDI_RESP(5,120)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
//send out data through data port
send (8) null<1>:d r31.0 0x5 0xA0A801B:ud
send (8) null<1>:d r36.0 0x5 0xA0A801B:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/PL3_DN_PL3.g4a
0,0 → 1,425
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 44 // Total instruction count
// 1 // Total kernel count
 
.kernel PL3_DN_PL3
.code
 
 
 
// FileName: DN_PL_Core.asm
// Author: Vivek Kumar
// Description: Tasks for DN only case (16x8 block) for planar format
 
 
 
// FileName: DN.asm
// Author: Vivek Kumar
// Description: Tasks for DN only case (16x8 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x45E8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(4,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DN_Hist_Save.asm
// Author: Vivek Kumar
// Description: Saves DN history data to statistics surface
 
// Write denoise history to memory
mov (8) r27<1>:ud r0.0<8;8,1>:ud // message header
 
 
mov (2) mudMSGHDR_HIST(1)<1> udDNDI_RESP(4,0)<2;2,1> // Move denoise history to MRF (4x2)
 
 
shr (2) r27.0<1>:ud r7.0<2;2,1>:w 2:w // X,Y origin / 4
add (1) r27.0<1>:ud r27.0<0;1,0>:ud r1.12<0;1,0>:uw { NoDDClr } // Add pitch to X origin
mov (1) r27.2<1>:ud 0x10003:ud { NoDDChk } // block width and height
 
mov (8) mudMSGHDR_HIST(0)<1> r27.0<8;8,1>:ud
send (8) null<1>:d r22 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x50003:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | X | X | X | X |
//----------------------------------------------------
//| X | SVCM | X |
//----------------------------------------------------
//| SHCM | STAD | X |
//----------------------------------------------------
//| X | X |
//----------------------------------------------------
//| X | SVCM | X |
//----------------------------------------------------
//| SHCM | STAD | X |
//----------------------------------------------------
mov (1) mubMSGHDR_ENC_STATS(1,0)<1> ubDNDI_RESP(4,8)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (1) muwMSGHDR_ENC_STATS(1,3)<1> uwDNDI_RESP(4,11)<0;1,0> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) muwMSGHDR_ENC_STATS(1,4)<1> uwDNDI_RESP(4,12)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (1) muwMSGHDR_ENC_STATS(1,9)<1> uwDNDI_RESP(4,8)<0;1,0> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) muwMSGHDR_ENC_STATS(1,10)<1> uwDNDI_RESP(4,9)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DN_Load_UV_IMC3_16x8.asm
// Author: Vivek Kumar
// Description: Read UV for 16x8 block through DATAPORT
 
 
 
// FileName: UVCopy_Load_16x8.asm
// Author: Vivek Kumar
// Description: Read UV for 16x8 block through DATAPORT
 
//CHANGE : Read extra UV data to convert to 422. -rT
//we are reading extra data in ALL cases irrespective of whether upsampling is reqd or not later on, to keep things simple.
 
 
add (2) r27.0<1>:d r7.0<2;2,1>:w r4.4<2;2,1>:w // Source Y Block origin
asr (2) r27.0<1>:d r27.0<2;2,1>:d 1:w { NoDDClr } // U/V block origin should be half of Y's
mov (1) r27.2<1>:ud 0x40007:ud { NoDDChk } // U/V block width and height (8x5)
mov (8) r36<1>:ud r27.0<8;8,1>:ud
mov (8) r38<1>:ud r27.0<8;8,1>:ud
send (8) udDNDI_UV_RESP(0)<1> r36 0x4 0x2290001:ud
send (8) udDNDI_UV_RESP(2)<1> r38 0x4 0x2290002:ud
 
//Update Header for Save
mov (1) mudMSGHDR_UCOPY(0,2)<1> 0x30007:ud // U block width and height (8x4)
mov (1) mudMSGHDR_VCOPY(0,2)<1> 0x30007:ud // V block width and height (8x4)
 
 
 
// FileName: DN_Save_Y_16x8.asm
// Author: Vivek Kumar
// Description: Save one 16x8 blocks of Y channel of DN output for reference
 
 
mov (8) mudDN_Y_OUT(0,0)<1> r0<8;8,1>:ud // message header
mov (2) mudDN_Y_OUT(0,0)<1> r7.0<2;2,1>:w { NoDDClr } // X origin
mov (1) mudDN_Y_OUT(0,2)<1> 0x7000F:ud { NoDDChk } // block width and height (16x8)
 
//send out data through data port
send (8) null<1>:d mudDN_Y_OUT 0x5 0xA0A8018:ud
 
 
 
// FileName: DN_Save_UV_IMC3_16x8.asm
// Author: Vivek Kumar
// Description: Save UV for 16x8 block through DATAPORT
 
 
 
// FileName: UVCopy_Save_16x8.asm
// Author: Vivek Kumar
// Description: Save UV for 16x8 block through DATAPORT
 
 
//Reuse the header from Load component
//Header is modified at the end of load - to be usable for save.
 
 
mov (8) mudMSGHDR_UCOPY(1)<1> udDNDI_UV_RESP(0)<8;8,1>
mov (8) mudMSGHDR_VCOPY(1)<1> udDNDI_UV_RESP(2)<8;8,1>
send (4) null<1>:d r36 0x5 0x40A8019:ud
send (4) null<1>:d r38 0x5 0x40A801A:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/PL_DI_422CP.g4a
0,0 → 1,461
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 87 // Total instruction count
// 1 // Total kernel count
 
.kernel PL_DI_422CP
.code
 
 
 
// FileName: DI.asm
// Author: Vivek Kumar
// Description: Tasks for DI only case (16x4 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x4AE8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(9,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DI_STMM_Save.asm
// Author: Vivek Kumar
// Description: Saves DI STMM Data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write STMM to memory
mov (8) mudMSGHDR_STMM(0)<1> r0.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udDNDI_RESP(8,0) // Move STMM to MRF
 
shr (1) mudMSGHDR_STMM(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin / 2
mov (1) mudMSGHDR_STMM(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_STMM(0,2)<1> 0x30007:ud { NoDDChk } // block width and height (8x4)
 
send (8) null<1>:d r20 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x20007:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | MCNT | FCNT | TCNT | X | X | X | X |
//----------------------------------------------------
//| DcTpT | SVCM | DcBpT | DcTpB |
//----------------------------------------------------
//| SHCM | STAD | DcTcB | DcBpB |
//----------------------------------------------------
mov (1) mudMSGHDR_ENC_STATS(1,0)<1> udDNDI_RESP(9,1)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,3)<2> udDNDI_RESP(9,3)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,2)<2> udDNDI_RESP(9,5)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DI_Save_422CP_16x4.asm
// Author: Vivek Kumar
// Description: Save two 16x4 blocks of DI output in 422 format to Color Pipe (IECP)
 
 
.declare mubMSGHDR_DI_OUT1_1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mubMSGHDR_DI_OUT1_2 Base=r21.0 ElementSize=1 Type=ub
 
 
.declare mubMSGHDR_DI_OUT2_1 Base=r24.0 ElementSize=1 Type=ub
 
 
.declare mubMSGHDR_DI_OUT2_2 Base=r27.0 ElementSize=1 Type=ub
 
 
mov (8) r27.0<1>:ud r0.0<8;8,1>:ud
shl (1) r27.0<1>:ud r7.0<0;1,0>:w 1:w { NoDDClr } // H. block origin need to be doubled
mov (1) r27.1<1>:ud r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Block origin
mov (1) r27.2<1>:ud 0x3000F:ud { NoDDClr, NoDDChk } // Block width and height (16x8)
 
//M0.3 - 0 - CP Enable, 1 - Area of Interest, 3:2 Message Format(TBD), 4:3 - Ignored, 31:5 CP state pointer
//Compose area-of-interest bit + color pipe state pointer
or (1) r27.3<1>:ud r2.4<0;1,0>:ud r7.26<0;1,0>:b { NoDDChk }
 
//prepare the message headers
mov (8) r18.0<1>:ud r27<8;8,1>:ud
mov (8) r24.0<1>:ud r27<8;8,1>:ud
 
 
// Pack 2nd field Y; First 8x4 block
mov (8) mubMSGHDR_DI_OUT1_1(1)<2> ubDNDI_RESP(0,0)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_1(1,16)<2> ubDNDI_RESP(0,16)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_1(2)<2> ubDNDI_RESP(0,32)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_1(2,16)<2> ubDNDI_RESP(0,48)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 2nd field U, V; First 8x4 block
mov (4) mubMSGHDR_DI_OUT1_1(1,1)<4> ubDNDI_RESP(2,1)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(1,17)<4> ubDNDI_RESP(2,17)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_1(1,3)<4> ubDNDI_RESP(2,0)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(1,19)<4> ubDNDI_RESP(2,16)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(2,1)<4> ubDNDI_RESP(2,33)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(2,17)<4> ubDNDI_RESP(2,49)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_1(2,3)<4> ubDNDI_RESP(2,32)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_1(2,19)<4> ubDNDI_RESP(2,48)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
 
// Pack 2nd field Y; Second 8x4 block
mov (8) r21.0<1>:ud r18.0<8;8,1>:ud
add (1) r21.0<1>:ud r21.0<0;1,0>:w 0x10:w
 
mov (8) mubMSGHDR_DI_OUT1_2(1)<2> ubDNDI_RESP(0,8)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_2(1,16)<2> ubDNDI_RESP(0,24)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_2(2)<2> ubDNDI_RESP(0,40)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT1_2(2,16)<2> ubDNDI_RESP(0,56)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 2nd field U, V; Second 8x4 block
mov (4) mubMSGHDR_DI_OUT1_2(1,1)<4> ubDNDI_RESP(2,9)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(1,17)<4> ubDNDI_RESP(2,25)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_2(1,3)<4> ubDNDI_RESP(2,8)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(1,19)<4> ubDNDI_RESP(2,24)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(2,1)<4> ubDNDI_RESP(2,41)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(2,17)<4> ubDNDI_RESP(2,57)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT1_2(2,3)<4> ubDNDI_RESP(2,40)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT1_2(2,19)<4> ubDNDI_RESP(2,56)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
send (8) null<1>:d r18.0 0x5 0x60A801B:ud
send (8) null<1>:d r21.0 0x5 0x60A801B:ud
 
// Pack 1st field Y; 1st 8x4 block
mov (8) mubMSGHDR_DI_OUT2_1(1)<2> ubDNDI_RESP(4,0)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_1(1,16)<2> ubDNDI_RESP(4,16)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_1(2)<2> ubDNDI_RESP(4,32)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_1(2,16)<2> ubDNDI_RESP(4,48)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 1st field U,V; 1st 8x4 block
mov (4) mubMSGHDR_DI_OUT2_1(1,1)<4> ubDNDI_RESP(6,1)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(1,17)<4> ubDNDI_RESP(6,17)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_1(1,3)<4> ubDNDI_RESP(6,0)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(1,19)<4> ubDNDI_RESP(6,16)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(2,1)<4> ubDNDI_RESP(6,33)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(2,17)<4> ubDNDI_RESP(6,49)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_1(2,3)<4> ubDNDI_RESP(6,32)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_1(2,19)<4> ubDNDI_RESP(6,48)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
// Pack 1st field Y; 2nd 8x4 block
mov (8) r27.0<1>:ud r24.0<8;8,1>:ud
add (1) r27.0<1>:ud r27.0<0;1,0>:w 0x10:w
 
mov (8) mubMSGHDR_DI_OUT2_2(1)<2> ubDNDI_RESP(4,8)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_2(1,16)<2> ubDNDI_RESP(4,24)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_2(2)<2> ubDNDI_RESP(4,40)<8;8,1> { NoDDClr } // copy line of Y directly to memory as optimization
mov (8) mubMSGHDR_DI_OUT2_2(2,16)<2> ubDNDI_RESP(4,56)<8;8,1> { NoDDClr, NoDDChk } // copy line of Y directly to memory as optimization
 
// Pack 1st field U, V; 2nd 8x4 block
mov (4) mubMSGHDR_DI_OUT2_2(1,1)<4> ubDNDI_RESP(6,9)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(1,17)<4> ubDNDI_RESP(6,25)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_2(1,3)<4> ubDNDI_RESP(6,8)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(1,19)<4> ubDNDI_RESP(6,24)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(2,1)<4> ubDNDI_RESP(6,41)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(2,17)<4> ubDNDI_RESP(6,57)<8;4,2> { NoDDClr, NoDDChk } // copy line of U directly to memory as optimization
 
mov (4) mubMSGHDR_DI_OUT2_2(2,3)<4> ubDNDI_RESP(6,40)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
mov (4) mubMSGHDR_DI_OUT2_2(2,19)<4> ubDNDI_RESP(6,56)<8;4,2> { NoDDChk } // copy line of V directly to memory as optimization
 
send (8) null<1>:d r24.0 0x5 0x60A801E:ud
send (8) null<1>:d r27.0 0x5 0x60A801E:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/PL_DI_PA.g4a
0,0 → 1,399
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 57 // Total instruction count
// 1 // Total kernel count
 
.kernel PL_DI_PA
.code
 
 
 
// FileName: DI.asm
// Author: Vivek Kumar
// Description: Tasks for DI only case (16x4 block)
 
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: DNDI.inc
// Author: Vivek Kumar
// Description: Include file for DN, DI and DNDI
// Inputs: DI_ENABLE, DN_ENABLE, DN_PLANAR, DN_PACKED
 
 
 
 
// End of common.inc
 
 
//Interface:
//Static Parameters:
//r1
 
 
//====================== Binding table (Explicit To DNDI)=========================================
 
 
.declare mudMSGHDR_DNDI Base=r18 ElementSize=4 Type=ud
.declare mdMSGHDR_DNDI Base=r18 ElementSize=4 Type=d
.declare mwMSGHDR_DNDI Base=r18 ElementSize=2 Type=w
 
 
.declare mudMSGHDR_STMM Base=r20 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_HIST Base=r22 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_ENC_STATS Base=r24 ElementSize=4 Type=ud
.declare muwMSGHDR_ENC_STATS Base=r24 ElementSize=2 Type=uw
.declare mubMSGHDR_ENC_STATS Base=r24 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=ud
.declare mdMSGHDR_DN_OUT Base=r31.0 ElementSize=4 Type=d
.declare mubMSGHDR_DN_OUT Base=r31.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=ud
.declare mdMSGHDR_UVCOPY Base=r36 ElementSize=4 Type=d
.declare mudMSGHDR_UCOPY Base=r36 ElementSize=4 Type=ud
.declare mudMSGHDR_VCOPY Base=r38 ElementSize=4 Type=ud
 
 
.declare mudMSGHDR_DI_OUT1 Base=r18.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT1 Base=r18.0 ElementSize=1 Type=ub
 
 
.declare mudMSGHDR_DI_OUT2 Base=r23.0 ElementSize=4 Type=ud
.declare mubMSGHDR_DI_OUT2 Base=r23.0 ElementSize=1 Type=ub
 
//r45
//Use r45 as message header, so no need to "mov" the data.
 
.declare mudDN_Y_OUT Base=r45.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
// Message response (Denoised & DI-ed pixels & statistics); Use buffer 5
.declare udDNDI_RESP Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare uwDNDI_RESP Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare ubDNDI_RESP Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
// Message response (UV Copy); Use buffer 5
.declare udDNDI_UV_RESP Base=r58.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare ubDNDI_UV_RESP Base=r58.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
//Temp GRFs: For 42X to 422 Conversion
.declare uwDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw //8 GRFs
.declare ubDNDI_UVCOPY_TEMP Base=r10.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub //8 GRFs
//---------------------------------------------------------------------------
// Message descriptors
//---------------------------------------------------------------------------
// Extended message descriptor
// Message descriptor for sampler read
// = 000 0010 (message len 2) 00000 (resp len - set later, 12 or 5 or 11)
// 1 (header present 1) 0 11 (SIMD32/64 mode)
// 1000 (message type) 0000 (DI state index)
// 00000000 (binding table index - set later)
// = 0x040b8000
 
 
// Attention: The Message Length is The Number of GRFs with Data Only, without the Header
 
 
//---------------------------------------------------------------------------
// VDI Return Data format
//---------------------------------------------------------------------------
// Defines for DI enabled
 
 
// Defines for DI disabled
 
 
 
// FileName: DNDI_Command.asm
// Author: Vivek Kumar
// Description: Sends a message to the VDI to process one DN (16x8) or DNDI (16x4) block
 
// Prepare the DNDI send command
mov (8) mudMSGHDR_DNDI(0)<1> r0.0<8;8,1>:ud // message header
mov (1) mwMSGHDR_DNDI(1,4)<1> r7.0<0;1,0>:w { NoDDClr } // horizontal origin // Do we need to add offset here? -vK
mov (1) mwMSGHDR_DNDI(1,12)<1> r7.1<0;1,0>:w { NoDDChk } // vertical origin // Can these 2 be combined? - vK
 
send (8) udDNDI_RESP(0)<1> r18 0x2 0x4AE8003:ud
 
// On Gen6, with VDI walker, use the XY pair returned rather than programmed above
// VDI_RETURNED_XY is ordered XY in case of walker enables and the same as programmed in case of walker disabled
mov (2) r7.0<1>:w uwDNDI_RESP(9,14)<2;2,1> // horizontal/Vertial origin in W.14 and W.15
 
 
 
// FileName: DI_STMM_Save.asm
// Author: Vivek Kumar
// Description: Saves DI STMM Data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write STMM to memory
mov (8) mudMSGHDR_STMM(0)<1> r0.0<8;8,1>:ud // message header
mov (8) mudMSGHDR_STMM(1)<1> udDNDI_RESP(8,0) // Move STMM to MRF
 
shr (1) mudMSGHDR_STMM(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } // X origin / 2
mov (1) mudMSGHDR_STMM(0,1)<1> r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Y origin
mov (1) mudMSGHDR_STMM(0,2)<1> 0x30007:ud { NoDDChk } // block width and height (8x4)
 
send (8) null<1>:d r20 0x5 0x40A8021:ud
 
 
 
// FileName: DNDI_Enc_Stats_Save.asm
// Author: Vivek Kumar
// Description: Saves Encoder Statistics data to statistics surface in case of DI enabled (for 16x4 block)
 
// Write encoder statistics to memory
//Currently enable this only on Gen6 validation
mov (8) mudMSGHDR_ENC_STATS(1)<1> 0x0:ud // Init payload MRF
mov (8) mudMSGHDR_ENC_STATS(0)<1> r0.0<8;8,1>:ud // message header
 
shr (1) mudMSGHDR_ENC_STATS(0,0)<1> r7.0<0;1,0>:w 1:w { NoDDClr } //enable the flag after testing on si { NoDDClr } // X origin / 2
mul (1) acc0.1<1>:ud r7.1<0;1,0>:w 3:w // Y origin * 3
shr (1) mudMSGHDR_ENC_STATS(0,1)<1> acc0.1<0;1,0>:ud 2:w { NoDDClr, NoDDChk } //enable the flag after testing on si { NoDDClr, NoDDChk } // Y origin * 3/4
mov (1) mudMSGHDR_ENC_STATS(0,2)<1> 0x20007:ud { NoDDChk } //enable the flag after testing on si { NoDDChk } // block width and height (8x3)
add (2) mudMSGHDR_ENC_STATS(0,0)<1> mudMSGHDR_ENC_STATS(0,0)<2;2,1> r1.12<2;2,1>:uw // Add pitch to X,Y origin
 
 
//Data block for Encoder Statistics
//----------------------------------------------------
//| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Bytes
//----------------------------------------------------
//| BNE | MCNT | FCNT | TCNT | X | X | X | X |
//----------------------------------------------------
//| DcTpT | SVCM | DcBpT | DcTpB |
//----------------------------------------------------
//| SHCM | STAD | DcTcB | DcBpB |
//----------------------------------------------------
mov (1) mudMSGHDR_ENC_STATS(1,0)<1> udDNDI_RESP(9,1)<0;1,0> { NoDDClr } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,3)<2> udDNDI_RESP(9,3)<2;2,1> { NoDDClr, NoDDChk } // Move encoder statistics to MRF
mov (2) mudMSGHDR_ENC_STATS(1,2)<2> udDNDI_RESP(9,5)<2;2,1> { NoDDChk } // Move encoder statistics to MRF
 
 
send (8) null<1>:d r24 0x5 0x40A8021:ud
 
 
 
// FileName: DI_Save_PA_16x4.asm
// Author: Vivek Kumar
// Description: Save two 16x4 blocks of DI output in Packed format
 
 
add (4) a0.4<1>:uw r2.28<4;4,1>:ub 608:w // Initial Y,U,V offset in YUV422 block; it starts at m20
 
mov (8) r27.0<1>:ud r0.0<8;8,1>:ud
shl (1) r27.0<1>:d r7.0<0;1,0>:w 1:w { NoDDClr } // H. block origin need to be doubled
mov (1) r27.1<1>:d r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Block origin
mov (1) r27.2<1>:ud 0x3001F:ud { NoDDChk } // Block width and height (32x8)
 
//prepare the message headers
mov (8) r18.0<1>:ud r27<8;8,1>:ud
mov (8) r23.0<1>:ud r27<8;8,1>:ud
 
// Pack 2nd field Y
mov (16) r[a0.4, 0]<2> ubDNDI_RESP(0,0) { NoDDClr }
mov (16) r[a0.4, 32]<2> ubDNDI_RESP(0,16) { NoDDClr }
mov (16) r[a0.4, 64]<2> ubDNDI_RESP(0,32) { NoDDClr }
mov (16) r[a0.4, 96]<2> ubDNDI_RESP(0,48) { NoDDClr }
// Pack 2nd field U
mov (8) r[a0.5, 0]<4> ubDNDI_RESP(2,1)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 32]<4> ubDNDI_RESP(2,17)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 64]<4> ubDNDI_RESP(2,33)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 96]<4> ubDNDI_RESP(2,49)<16;8,2> { NoDDClr, NoDDChk } //U pixels
// Pack 2nd field V
mov (8) r[a0.6, 0]<4> ubDNDI_RESP(2,0)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 32]<4> ubDNDI_RESP(2,16)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 64]<4> ubDNDI_RESP(2,32)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 96]<4> ubDNDI_RESP(2,48)<16;8,2> { NoDDChk } //Vpixels
 
// Pack 1st field Y
mov (16) r[a0.4, 160]<2> ubDNDI_RESP(4,0) { NoDDClr }
mov (16) r[a0.4, 192]<2> ubDNDI_RESP(4,16) { NoDDClr }
mov (16) r[a0.4, 224]<2> ubDNDI_RESP(4,32) { NoDDClr }
mov (16) r[a0.4, 256]<2> ubDNDI_RESP(4,48) { NoDDClr }
// Pack 1st field U
mov (8) r[a0.5, 160]<4> ubDNDI_RESP(6,1)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 192]<4> ubDNDI_RESP(6,17)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 224]<4> ubDNDI_RESP(6,33)<16;8,2> { NoDDClr, NoDDChk } //U pixels
mov (8) r[a0.5, 256]<4> ubDNDI_RESP(6,49)<16;8,2> { NoDDClr, NoDDChk } //U pixels
// Pack 1st field V
mov (8) r[a0.6, 160]<4> ubDNDI_RESP(6,0)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 192]<4> ubDNDI_RESP(6,16)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 224]<4> ubDNDI_RESP(6,32)<16;8,2> { NoDDChk } //Vpixels
mov (8) r[a0.6, 256]<4> ubDNDI_RESP(6,48)<16;8,2> { NoDDChk } //Vpixels
 
//save the previous frame
send (8) null<1>:d r18.0 0x5 0xA0A801B:ud
 
//save the current frame
send (8) null<1>:d r23.0 0x5 0xA0A801E:ud
 
 
 
//End of Thread message
 
mov (8) r127<1>:ud r0.0<8;8,1>:ud
send (1) null<1>:d r127 0x27 0x02000010
 
 
.end_code
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/Save_AVS_NV12.g4a
0,0 → 1,621
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 131 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// Module name: Save_AVS_NV12.asm
//
// Save NV12 420 frame data block of size 16x16
//
// To save 16x16 block (16x16 bytes of Y and 16x8 bytes of interleaved UV), we need 2 send instructions with of size 16x16 and 16x8 each.
// ---------------
// | 16x16 |
// | YUYV |
// ---------------
// | 16x8 UV |
// ---------------
 
//-----------------------------------------------------------------
//The layout of data is as follows:
//mMSGHDR0 : Y data header (16x16)
//mubMSGPAYLOAD0 : Y data payload (8 GRFs)
//mMSGHDR1 : U data header (16x8)
//mubMSGPAYLOAD1 : U data payload (4 GRFs)
//------------------------------------------------------------------
 
 
 
// Module name: Save.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
//Msg payload buffers; upto 4 full-size messages can be written
 
 
.declare mudMSGPAYLOAD0 Base=r29.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mudMSGPAYLOAD1 Base=r38.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mudMSGPAYLOAD2 Base=r47.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mudMSGPAYLOAD3 Base=r56.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
 
.declare muwMSGPAYLOAD0 Base=r29.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare muwMSGPAYLOAD1 Base=r38.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare muwMSGPAYLOAD2 Base=r47.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare muwMSGPAYLOAD3 Base=r56.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
 
.declare mubMSGPAYLOAD0 Base=r29.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD1 Base=r38.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD2 Base=r47.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD3 Base=r56.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD4 Base=r32.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD5 Base=r41.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD6 Base=r50.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD7 Base=r59.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
 
 
// the r17 register (nTEMP0) is originally defined from "Common.inc"
// instead of re-defining a nTEMP0 here, we use "SAVE_RGB" suffix for its naming
 
.declare uwTemp0 Base=r17.0 ElementSize=2 Type=uw
 
 
//_SAVE_INC_
 
 
// At the save module we have all 8 address sub-registers available.
// So we will use PING-PONG type of scheme to save the data using
// pointers pBUF_CHNL_TOP_8x4 and pBUF_CHNL_BOT_8x4. This will help
// reduce dependency. - rT
 
//wBUFF_CHNL_PTR points to either buffer 0 or buffer 4.
//Add appropriate offsets to get pointers for all buffers (1,2,3 or 5).
//Offsets are zero for buffer 0 and buffer 4.
add (4) a0.0:uw r22.0<4;4,1>:w 0:uw
add (4) a0.4:uw r22.0<4;4,1>:w 512:uw
 
//Set up header for Y,U and V data
mov (8) r28<1>:ud r27<8;8,1>:ud
mov (8) r37<1>:ud r27<8;8,1>:ud
 
mov (2) r28.0<1>:d r7.0<2;2,1>:w { NoDDClr } //ORI Y (LUMA) = ORI
mov (1) r37.0<1>:d r7.0<0;1,0>:w { NoDDClr } //H ORI (CHROMA) = H ORI
shr (1) r37.1<1>:d r7.1<0;1,0>:w 1:w { NoDDClr, NoDDChk } //V ORI (CHROMA) = V ORI/2
 
mov (1) r28.2<1>:ud 0xF000F:ud { NoDDChk } // Y Block width and height (16x16)
mov (1) r37.2<1>:ud 0x7000F:ud { NoDDChk } // UV Block width and height(16x8)
 
// Unscramble, and pack data directly to MRFs
 
// Data 16x16 block is divided as -
// ---------
// | 0 |
// ---------
// | 1 |
// ---------
// | 2 |
// ---------
// | 3 |
// ---------
// All sub-blocks are of size 16x4
// 0: ubBUFFER_0
// 1: ubBUFFER_1, ubBUFFER_0+16
// 2: ubBUFFER_2
// 3: ubBUFFER_3, ubBUFFER_2+16
 
//Y Rounding 16x4 top part
add.sat (16) r[a0.1,0]<1>:uw r[a0.1,0]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.1,32]<1>:uw r[a0.1,32]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.1,64]<1>:uw r[a0.1,64]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.1,96]<1>:uw r[a0.1,96]<16;16,1>:uw 0x0080:uw
 
// U Averaging and Rounding, 8x2 top part
shr (8) uwBUFFER_5(0,0)<2> r[a0.2,0]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(1,0)<2> r[a0.2,32]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(2,0)<2> r[a0.2,64]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(3,0)<2> r[a0.2,96]<16;8,2>:uw 1:w
 
add (8) uwBUFFER_5(0,0)<2> uwBUFFER_5(0,0)<16;8,2> uwBUFFER_5(1,0)<16;8,2>
add.sat (8) r[a0.2,0]<2>:uw uwBUFFER_5(0,0)<16;8,2> 0x0080:uw
 
add (8) uwBUFFER_5(2,0)<2> uwBUFFER_5(2,0)<16;8,2> uwBUFFER_5(3,0)<16;8,2>
add.sat (8) r[a0.2,64]<2>:uw uwBUFFER_5(2,0)<16;8,2> 0x0080:uw
 
// V Averaging and Rounding, 8x2 top part
shr (8) uwBUFFER_5(4,0)<2> r[a0.0,0]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(5,0)<2> r[a0.0,32]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(6,0)<2> r[a0.0,64]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(7,0)<2> r[a0.0,96]<16;8,2>:uw 1:w
 
add (8) uwBUFFER_5(4,0)<2> uwBUFFER_5(4,0)<16;8,2> uwBUFFER_5(5,0)<16;8,2>
add.sat (8) r[a0.0,0]<2>:uw uwBUFFER_5(4,0)<16;8,2> 0x0080:uw
 
add (8) uwBUFFER_5(6,0)<2> uwBUFFER_5(6,0)<16;8,2> uwBUFFER_5(7,0)<16;8,2>
add.sat (8) r[a0.0,64]<2>:uw uwBUFFER_5(6,0)<16;8,2> 0x0080:uw
 
add (4) a0.0:uw r22.0<4;4,1>:w 1024:uw //Update Buffer 2 pointers
 
//Y Rounding, 16x4 bottom part
add.sat (16) r[a0.5,0]<1>:uw r[a0.5,0]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.5,32]<1>:uw r[a0.5,32]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.5,64]<1>:uw r[a0.5,64]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.5,96]<1>:uw r[a0.5,96]<16;16,1>:uw 0x0080:uw
 
// U Averaging and Rounding, 8x2 bottom part
shr (8) uwBUFFER_5(0,0)<2> r[a0.6,0]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(1,0)<2> r[a0.6,32]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(2,0)<2> r[a0.6,64]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(3,0)<2> r[a0.6,96]<16;8,2>:uw 1:w
 
add (8) uwBUFFER_5(0,0)<2> uwBUFFER_5(0,0)<16;8,2> uwBUFFER_5(1,0)<16;8,2>
add.sat (8) r[a0.6,0]<2>:uw uwBUFFER_5(0,0)<16;8,2> 0x0080:uw
 
add (8) uwBUFFER_5(2,0)<2> uwBUFFER_5(2,0)<16;8,2> uwBUFFER_5(3,0)<16;8,2>
add.sat (8) r[a0.6,64]<2>:uw uwBUFFER_5(2,0)<16;8,2> 0x0080:uw
 
// V Averaging and Rounding, 8x2 bottom part
shr (8) uwBUFFER_5(4,0)<2> r[a0.4,0]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(5,0)<2> r[a0.4,32]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(6,0)<2> r[a0.4,64]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(7,0)<2> r[a0.4,96]<16;8,2>:uw 1:w
 
add (8) uwBUFFER_5(4,0)<2> uwBUFFER_5(4,0)<16;8,2> uwBUFFER_5(5,0)<16;8,2>
add.sat (8) r[a0.4,0]<2>:uw uwBUFFER_5(4,0)<16;8,2> 0x0080:uw
 
add (8) uwBUFFER_5(6,0)<2> uwBUFFER_5(6,0)<16;8,2> uwBUFFER_5(7,0)<16;8,2>
add.sat (8) r[a0.4,64]<2>:uw uwBUFFER_5(6,0)<16;8,2> 0x0080:uw
 
add (4) a0.4:uw r22.0<4;4,1>:w 1536:uw //Update Buffer 3 pointers
//Y Rounding 16x4 top part
add.sat (16) r[a0.1,0]<1>:uw r[a0.1,0]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.1,32]<1>:uw r[a0.1,32]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.1,64]<1>:uw r[a0.1,64]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.1,96]<1>:uw r[a0.1,96]<16;16,1>:uw 0x0080:uw
 
// U Averaging and Rounding, 8x2 top part
shr (8) uwBUFFER_5(0,0)<2> r[a0.2,0]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(1,0)<2> r[a0.2,32]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(2,0)<2> r[a0.2,64]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(3,0)<2> r[a0.2,96]<16;8,2>:uw 1:w
 
add (8) uwBUFFER_5(0,0)<2> uwBUFFER_5(0,0)<16;8,2> uwBUFFER_5(1,0)<16;8,2>
add.sat (8) r[a0.2,0]<2>:uw uwBUFFER_5(0,0)<16;8,2> 0x0080:uw
 
add (8) uwBUFFER_5(2,0)<2> uwBUFFER_5(2,0)<16;8,2> uwBUFFER_5(3,0)<16;8,2>
add.sat (8) r[a0.2,64]<2>:uw uwBUFFER_5(2,0)<16;8,2> 0x0080:uw
 
// V Averaging and Rounding, 8x2 top part
shr (8) uwBUFFER_5(4,0)<2> r[a0.0,0]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(5,0)<2> r[a0.0,32]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(6,0)<2> r[a0.0,64]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(7,0)<2> r[a0.0,96]<16;8,2>:uw 1:w
 
add (8) uwBUFFER_5(4,0)<2> uwBUFFER_5(4,0)<16;8,2> uwBUFFER_5(5,0)<16;8,2>
add.sat (8) r[a0.0,0]<2>:uw uwBUFFER_5(4,0)<16;8,2> 0x0080:uw
 
add (8) uwBUFFER_5(6,0)<2> uwBUFFER_5(6,0)<16;8,2> uwBUFFER_5(7,0)<16;8,2>
add.sat (8) r[a0.0,64]<2>:uw uwBUFFER_5(6,0)<16;8,2> 0x0080:uw
 
add (4) a0.0:uw r22.0<4;4,1>:w 1024:uw //Update Buffer 2 pointers
 
//Y Rounding, 16x4 bottom part
add.sat (16) r[a0.5,0]<1>:uw r[a0.5,0]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.5,32]<1>:uw r[a0.5,32]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.5,64]<1>:uw r[a0.5,64]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.5,96]<1>:uw r[a0.5,96]<16;16,1>:uw 0x0080:uw
 
// U Averaging and Rounding, 8x2 bottom part
shr (8) uwBUFFER_5(0,0)<2> r[a0.6,0]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(1,0)<2> r[a0.6,32]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(2,0)<2> r[a0.6,64]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(3,0)<2> r[a0.6,96]<16;8,2>:uw 1:w
 
add (8) uwBUFFER_5(0,0)<2> uwBUFFER_5(0,0)<16;8,2> uwBUFFER_5(1,0)<16;8,2>
add.sat (8) r[a0.6,0]<2>:uw uwBUFFER_5(0,0)<16;8,2> 0x0080:uw
 
add (8) uwBUFFER_5(2,0)<2> uwBUFFER_5(2,0)<16;8,2> uwBUFFER_5(3,0)<16;8,2>
add.sat (8) r[a0.6,64]<2>:uw uwBUFFER_5(2,0)<16;8,2> 0x0080:uw
 
// V Averaging and Rounding, 8x2 bottom part
shr (8) uwBUFFER_5(4,0)<2> r[a0.4,0]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(5,0)<2> r[a0.4,32]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(6,0)<2> r[a0.4,64]<16;8,2>:uw 1:w
shr (8) uwBUFFER_5(7,0)<2> r[a0.4,96]<16;8,2>:uw 1:w
 
add (8) uwBUFFER_5(4,0)<2> uwBUFFER_5(4,0)<16;8,2> uwBUFFER_5(5,0)<16;8,2>
add.sat (8) r[a0.4,0]<2>:uw uwBUFFER_5(4,0)<16;8,2> 0x0080:uw
 
add (8) uwBUFFER_5(6,0)<2> uwBUFFER_5(6,0)<16;8,2> uwBUFFER_5(7,0)<16;8,2>
add.sat (8) r[a0.4,64]<2>:uw uwBUFFER_5(6,0)<16;8,2> 0x0080:uw
 
add (4) a0.4:uw r22.0<4;4,1>:w 1536:uw //Update Buffer 3 pointers
// restore pBUF_CHNL_TOP_8x4 and pBUF_CHNL_BOT_8x4 registers
add (4) a0.0:uw r22.0<4;4,1>:w 0:uw
add (4) a0.4:uw r22.0<4;4,1>:w 512:uw
 
//Buffer 0
//Move Y to msg payload
mov (16) mubMSGPAYLOAD0(0,0)<1> r[a0.1, 1]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(0,16)<1> r[a0.1, 33]<32;16,2>:ub { NoDDChk }
mov (16) mubMSGPAYLOAD0(1,0)<1> r[a0.1, 65]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(1,16)<1> r[a0.1, 97]<32;16,2>:ub { NoDDChk }
 
//Move U to msg payload
mov (8) mubMSGPAYLOAD1(0,0)<2> r[a0.2, 1]<32;8,4>:ub { NoDDClr }
mov (8) mubMSGPAYLOAD1(0,16)<2> r[a0.2, 65]<32;8,4>:ub { NoDDClr, NoDDChk }
 
//Move V to msg payload
mov (8) mubMSGPAYLOAD1(0,1)<2> r[a0.0, 1]<32;8,4>:ub { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD1(0,17)<2> r[a0.0, 65]<32;8,4>:ub { NoDDChk }
 
add (4) a0.0:uw r22.0<4;4,1>:w 1024:uw //Update Buffer 2 pointers
 
//Buffer 1
mov (16) mubMSGPAYLOAD0(2,0)<1> r[a0.5, 1]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(2,16)<1> r[a0.5, 33]<32;16,2>:ub { NoDDChk }
mov (16) mubMSGPAYLOAD0(3,0)<1> r[a0.5, 65]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(3,16)<1> r[a0.5, 97]<32;16,2>:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD1(1,0)<2> r[a0.6, 1]<32;8,4>:ub { NoDDClr }
mov (8) mubMSGPAYLOAD1(1,16)<2> r[a0.6, 65]<32;8,4>:ub { NoDDClr, NoDDChk }
 
mov (8) mubMSGPAYLOAD1(1,1)<2> r[a0.4, 1]<32;8,4>:ub { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD1(1,17)<2> r[a0.4, 65]<32;8,4>:ub { NoDDChk }
 
add (4) a0.4:uw r22.0<4;4,1>:w 1536:uw //Update Buffer 3 pointers
 
//Buffer 2
mov (16) mubMSGPAYLOAD0(4,0)<1> r[a0.1, 1]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(4,16)<1> r[a0.1, 33]<32;16,2>:ub { NoDDChk }
mov (16) mubMSGPAYLOAD0(5,0)<1> r[a0.1, 65]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(5,16)<1> r[a0.1, 97]<32;16,2>:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD1(2,0)<2> r[a0.2, 1]<32;8,4>:ub { NoDDClr }
mov (8) mubMSGPAYLOAD1(2,16)<2> r[a0.2, 65]<32;8,4>:ub { NoDDClr, NoDDChk }
 
mov (8) mubMSGPAYLOAD1(2,1)<2> r[a0.0, 1]<32;8,4>:ub { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD1(2,17)<2> r[a0.0, 65]<32;8,4>:ub { NoDDChk }
 
//Buffer 3
mov (16) mubMSGPAYLOAD0(6,0)<1> r[a0.5, 1]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(6,16)<1> r[a0.5, 33]<32;16,2>:ub { NoDDChk }
mov (16) mubMSGPAYLOAD0(7,0)<1> r[a0.5, 65]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(7,16)<1> r[a0.5, 97]<32;16,2>:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD1(3,0)<2> r[a0.6, 1]<32;8,4>:ub { NoDDClr }
mov (8) mubMSGPAYLOAD1(3,16)<2> r[a0.6, 65]<32;8,4>:ub { NoDDClr, NoDDChk }
 
mov (8) mubMSGPAYLOAD1(3,1)<2> r[a0.4, 1]<32;8,4>:ub { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD1(3,17)<2> r[a0.4, 65]<32;8,4>:ub { NoDDChk }
//===========================================================================
 
send (1) null<1>:d r28 0x5 0x120A8018:ud
send (1) null<1>:d r37 0x5 0xA0A8019:ud
/drivers/video/i965/shaders/post_processing/gen7/Save_AVS_PA.g4a
0,0 → 1,625
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 174 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// Module name: Save_AVS_PA.asm
//
// Save PA 422 frame data block of size 16x16
//
// To save 16x16 block (32x16 bytes of YUYV) we need 2 send instructions with of size 16x16 each.
// -------------------------------
// | 16x16 | 16x16 |
// | YUYV | YUYV |
// -------------------------------
// these 2 sends are replaced by 8 32x2 sends to improve performance
 
 
 
// Module name: Save.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
//Msg payload buffers; upto 4 full-size messages can be written
 
 
.declare mudMSGPAYLOAD0 Base=r29.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mudMSGPAYLOAD1 Base=r38.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mudMSGPAYLOAD2 Base=r47.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mudMSGPAYLOAD3 Base=r56.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
 
.declare muwMSGPAYLOAD0 Base=r29.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare muwMSGPAYLOAD1 Base=r38.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare muwMSGPAYLOAD2 Base=r47.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare muwMSGPAYLOAD3 Base=r56.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
 
.declare mubMSGPAYLOAD0 Base=r29.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD1 Base=r38.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD2 Base=r47.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD3 Base=r56.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD4 Base=r32.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD5 Base=r41.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD6 Base=r50.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD7 Base=r59.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
 
 
// the r17 register (nTEMP0) is originally defined from "Common.inc"
// instead of re-defining a nTEMP0 here, we use "SAVE_RGB" suffix for its naming
 
.declare uwTemp0 Base=r17.0 ElementSize=2 Type=uw
 
 
//_SAVE_INC_
 
 
//wBUFF_CHNL_PTR points to buffer 0.
//Add appropriate offsets to get pointers for all buffers (1,2,3).
//Offset is zero for buffer 0.
add (4) a0.0:uw r22.0<4;4,1>:w 0:uw
 
//Set DEST pointers according to output packing i.e. YUYV, YVYU, UYVY, VYUY
add (4) a0.4<1>:w r2.28<4;4,1>:ub 928:uw
 
shl (1) r27.0<1>:d r7.0<0;1,0>:w 1:w { NoDDClr } // H. block origin need to be 2 times
mov (1) r27.1<1>:d r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Block origin (1st quadrant)
mov (1) r27.2<1>:ud 0x1001F:ud { NoDDChk } // Block width and height (32x2)
 
// Rounding
// left
add.sat (4) r[a0.0, 0]<2>:uw r[a0.0, 0]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,32]<2>:uw r[a0.0, 32]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,64]<2>:uw r[a0.0, 64]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,96]<2>:uw r[a0.0, 96]<8;4,2>:uw 0x0080:uw
 
add.sat (8) r[a0.1, 0]<1>:uw r[a0.1, 0]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,32]<1>:uw r[a0.1, 32]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,64]<1>:uw r[a0.1, 64]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,96]<1>:uw r[a0.1, 96]<8;8,1>:uw 0x0080:uw
 
add.sat (4) r[a0.2, 0]<2>:uw r[a0.2, 0]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,32]<2>:uw r[a0.2, 32]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,64]<2>:uw r[a0.2, 64]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,96]<2>:uw r[a0.2, 96]<8;4,2>:uw 0x0080:uw
 
// right
add.sat (4) r[a0.0,16]<2>:uw r[a0.0, 16]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,48]<2>:uw r[a0.0, 48]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,80]<2>:uw r[a0.0, 80]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,112]<2>:uw r[a0.0, 112]<8;4,2>:uw 0x0080:uw
 
add.sat (8) r[a0.1, 16]<1>:uw r[a0.1, 16]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,48]<1>:uw r[a0.1, 48]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,80]<1>:uw r[a0.1, 80]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,112]<1>:uw r[a0.1, 112]<8;8,1>:uw 0x0080:uw
 
add.sat (4) r[a0.2, 16]<2>:uw r[a0.2, 16]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,48]<2>:uw r[a0.2, 48]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,80]<2>:uw r[a0.2, 80]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,112]<2>:uw r[a0.2, 112]<8;4,2>:uw 0x0080:uw
 
add (4) a0.0:uw r22.0<4;4,1>:w 512:uw
// left
add.sat (4) r[a0.0, 0]<2>:uw r[a0.0, 0]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,32]<2>:uw r[a0.0, 32]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,64]<2>:uw r[a0.0, 64]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,96]<2>:uw r[a0.0, 96]<8;4,2>:uw 0x0080:uw
 
add.sat (8) r[a0.1, 0]<1>:uw r[a0.1, 0]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,32]<1>:uw r[a0.1, 32]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,64]<1>:uw r[a0.1, 64]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,96]<1>:uw r[a0.1, 96]<8;8,1>:uw 0x0080:uw
 
add.sat (4) r[a0.2, 0]<2>:uw r[a0.2, 0]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,32]<2>:uw r[a0.2, 32]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,64]<2>:uw r[a0.2, 64]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,96]<2>:uw r[a0.2, 96]<8;4,2>:uw 0x0080:uw
 
// right
add.sat (4) r[a0.0,16]<2>:uw r[a0.0, 16]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,48]<2>:uw r[a0.0, 48]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,80]<2>:uw r[a0.0, 80]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,112]<2>:uw r[a0.0, 112]<8;4,2>:uw 0x0080:uw
 
add.sat (8) r[a0.1, 16]<1>:uw r[a0.1, 16]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,48]<1>:uw r[a0.1, 48]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,80]<1>:uw r[a0.1, 80]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,112]<1>:uw r[a0.1, 112]<8;8,1>:uw 0x0080:uw
 
add.sat (4) r[a0.2, 16]<2>:uw r[a0.2, 16]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,48]<2>:uw r[a0.2, 48]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,80]<2>:uw r[a0.2, 80]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,112]<2>:uw r[a0.2, 112]<8;4,2>:uw 0x0080:uw
 
add (4) a0.0:uw r22.0<4;4,1>:w 1024:uw
// left
add.sat (4) r[a0.0, 0]<2>:uw r[a0.0, 0]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,32]<2>:uw r[a0.0, 32]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,64]<2>:uw r[a0.0, 64]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,96]<2>:uw r[a0.0, 96]<8;4,2>:uw 0x0080:uw
 
add.sat (8) r[a0.1, 0]<1>:uw r[a0.1, 0]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,32]<1>:uw r[a0.1, 32]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,64]<1>:uw r[a0.1, 64]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,96]<1>:uw r[a0.1, 96]<8;8,1>:uw 0x0080:uw
 
add.sat (4) r[a0.2, 0]<2>:uw r[a0.2, 0]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,32]<2>:uw r[a0.2, 32]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,64]<2>:uw r[a0.2, 64]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,96]<2>:uw r[a0.2, 96]<8;4,2>:uw 0x0080:uw
 
// right
add.sat (4) r[a0.0,16]<2>:uw r[a0.0, 16]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,48]<2>:uw r[a0.0, 48]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,80]<2>:uw r[a0.0, 80]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,112]<2>:uw r[a0.0, 112]<8;4,2>:uw 0x0080:uw
 
add.sat (8) r[a0.1, 16]<1>:uw r[a0.1, 16]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,48]<1>:uw r[a0.1, 48]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,80]<1>:uw r[a0.1, 80]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,112]<1>:uw r[a0.1, 112]<8;8,1>:uw 0x0080:uw
 
add.sat (4) r[a0.2, 16]<2>:uw r[a0.2, 16]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,48]<2>:uw r[a0.2, 48]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,80]<2>:uw r[a0.2, 80]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,112]<2>:uw r[a0.2, 112]<8;4,2>:uw 0x0080:uw
 
add (4) a0.0:uw r22.0<4;4,1>:w 1536:uw
// left
add.sat (4) r[a0.0, 0]<2>:uw r[a0.0, 0]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,32]<2>:uw r[a0.0, 32]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,64]<2>:uw r[a0.0, 64]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,96]<2>:uw r[a0.0, 96]<8;4,2>:uw 0x0080:uw
 
add.sat (8) r[a0.1, 0]<1>:uw r[a0.1, 0]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,32]<1>:uw r[a0.1, 32]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,64]<1>:uw r[a0.1, 64]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,96]<1>:uw r[a0.1, 96]<8;8,1>:uw 0x0080:uw
 
add.sat (4) r[a0.2, 0]<2>:uw r[a0.2, 0]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,32]<2>:uw r[a0.2, 32]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,64]<2>:uw r[a0.2, 64]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,96]<2>:uw r[a0.2, 96]<8;4,2>:uw 0x0080:uw
 
// right
add.sat (4) r[a0.0,16]<2>:uw r[a0.0, 16]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,48]<2>:uw r[a0.0, 48]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,80]<2>:uw r[a0.0, 80]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.0,112]<2>:uw r[a0.0, 112]<8;4,2>:uw 0x0080:uw
 
add.sat (8) r[a0.1, 16]<1>:uw r[a0.1, 16]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,48]<1>:uw r[a0.1, 48]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,80]<1>:uw r[a0.1, 80]<8;8,1>:uw 0x0080:uw
add.sat (8) r[a0.1,112]<1>:uw r[a0.1, 112]<8;8,1>:uw 0x0080:uw
 
add.sat (4) r[a0.2, 16]<2>:uw r[a0.2, 16]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,48]<2>:uw r[a0.2, 48]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,80]<2>:uw r[a0.2, 80]<8;4,2>:uw 0x0080:uw
add.sat (4) r[a0.2,112]<2>:uw r[a0.2, 112]<8;4,2>:uw 0x0080:uw
 
add (4) a0.0:uw r22.0<4;4,1>:w 2048:uw
// restore pointer
add (4) a0.0:uw r22.0<4;4,1>:w 0:uw
 
mov (8) r28<1>:ud r27<8;8,1>:ud
mov (8) r37<1>:ud r27<8;8,1>:ud
add (1) r37.1<1>:d r27.1<0;1,0>:d 2:d // Point to 2nd part
 
 
mov (8) r[a0.6, 0]<4>:ub r[a0.0, 1]<32;8,4>:ub { NoDDClr }
mov (8) r[a0.6, 32]<4>:ub r[a0.0,33]<32;8,4>:ub { NoDDClr }
mov (16) r[a0.4, 0]<2>:ub r[a0.1, 1]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (16) r[a0.4, 32]<2>:ub r[a0.1,33]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (8) r[a0.5, 0]<4>:ub r[a0.2, 1]<32;8,4>:ub { NoDDChk }
mov (8) r[a0.5, 32]<4>:ub r[a0.2,33]<32;8,4>:ub { NoDDChk }
 
mov (8) r[a0.6, 288]<4>:ub r[a0.0,65]<32;8,4>:ub { NoDDClr }
mov (8) r[a0.6, 320]<4>:ub r[a0.0,97]<32;8,4>:ub { NoDDClr }
mov (16) r[a0.4,288]<2>:ub r[a0.1,65]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (16) r[a0.4,320]<2>:ub r[a0.1,97]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (8) r[a0.5,288]<4>:ub r[a0.2,65]<32;8,4>:ub { NoDDChk }
mov (8) r[a0.5,320]<4>:ub r[a0.2,97]<32;8,4>:ub { NoDDChk }
 
send (1) null<1>:d r28 0x5 0x60A8018:ud
send (1) null<1>:d r37 0x5 0x60A8018:ud
 
// restore pointer
add (4) a0.0:uw r22.0<4;4,1>:w 512:uw
 
add (1) r28.1<1>:d r27.1<0;1,0>:d 4:d // Point to 2nd part
add (1) r37.1<1>:d r27.1<0;1,0>:d 6:d // Point to 2nd part
 
 
mov (8) r[a0.6, 0]<4>:ub r[a0.0, 1]<32;8,4>:ub { NoDDClr }
mov (8) r[a0.6, 32]<4>:ub r[a0.0,33]<32;8,4>:ub { NoDDClr }
mov (16) r[a0.4, 0]<2>:ub r[a0.1, 1]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (16) r[a0.4, 32]<2>:ub r[a0.1,33]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (8) r[a0.5, 0]<4>:ub r[a0.2, 1]<32;8,4>:ub { NoDDChk }
mov (8) r[a0.5, 32]<4>:ub r[a0.2,33]<32;8,4>:ub { NoDDChk }
 
mov (8) r[a0.6, 288]<4>:ub r[a0.0,65]<32;8,4>:ub { NoDDClr }
mov (8) r[a0.6, 320]<4>:ub r[a0.0,97]<32;8,4>:ub { NoDDClr }
mov (16) r[a0.4,288]<2>:ub r[a0.1,65]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (16) r[a0.4,320]<2>:ub r[a0.1,97]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (8) r[a0.5,288]<4>:ub r[a0.2,65]<32;8,4>:ub { NoDDChk }
mov (8) r[a0.5,320]<4>:ub r[a0.2,97]<32;8,4>:ub { NoDDChk }
 
send (1) null<1>:d r28 0x5 0x60A8018:ud
send (1) null<1>:d r37 0x5 0x60A8018:ud
 
// restore pointer
add (4) a0.0:uw r22.0<4;4,1>:w 1024:uw
 
add (1) r28.1<1>:d r27.1<0;1,0>:d 8:d // Point to 2nd part
add (1) r37.1<1>:d r27.1<0;1,0>:d 10:d // Point to 2nd part
 
 
mov (8) r[a0.6, 0]<4>:ub r[a0.0, 1]<32;8,4>:ub { NoDDClr }
mov (8) r[a0.6, 32]<4>:ub r[a0.0,33]<32;8,4>:ub { NoDDClr }
mov (16) r[a0.4, 0]<2>:ub r[a0.1, 1]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (16) r[a0.4, 32]<2>:ub r[a0.1,33]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (8) r[a0.5, 0]<4>:ub r[a0.2, 1]<32;8,4>:ub { NoDDChk }
mov (8) r[a0.5, 32]<4>:ub r[a0.2,33]<32;8,4>:ub { NoDDChk }
 
mov (8) r[a0.6, 288]<4>:ub r[a0.0,65]<32;8,4>:ub { NoDDClr }
mov (8) r[a0.6, 320]<4>:ub r[a0.0,97]<32;8,4>:ub { NoDDClr }
mov (16) r[a0.4,288]<2>:ub r[a0.1,65]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (16) r[a0.4,320]<2>:ub r[a0.1,97]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (8) r[a0.5,288]<4>:ub r[a0.2,65]<32;8,4>:ub { NoDDChk }
mov (8) r[a0.5,320]<4>:ub r[a0.2,97]<32;8,4>:ub { NoDDChk }
 
send (1) null<1>:d r28 0x5 0x60A8018:ud
send (1) null<1>:d r37 0x5 0x60A8018:ud
 
// restore pointer
add (4) a0.0:uw r22.0<4;4,1>:w 1536:uw
 
add (1) r28.1<1>:d r27.1<0;1,0>:d 12:d // Point to 2nd part
add (1) r37.1<1>:d r27.1<0;1,0>:d 14:d // Point to 2nd part
 
mov (8) r[a0.6, 0]<4>:ub r[a0.0, 1]<32;8,4>:ub { NoDDClr }
mov (8) r[a0.6, 32]<4>:ub r[a0.0,33]<32;8,4>:ub { NoDDClr }
mov (16) r[a0.4, 0]<2>:ub r[a0.1, 1]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (16) r[a0.4, 32]<2>:ub r[a0.1,33]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (8) r[a0.5, 0]<4>:ub r[a0.2, 1]<32;8,4>:ub { NoDDChk }
mov (8) r[a0.5, 32]<4>:ub r[a0.2,33]<32;8,4>:ub { NoDDChk }
 
mov (8) r[a0.6, 288]<4>:ub r[a0.0,65]<32;8,4>:ub { NoDDClr }
mov (8) r[a0.6, 320]<4>:ub r[a0.0,97]<32;8,4>:ub { NoDDClr }
mov (16) r[a0.4,288]<2>:ub r[a0.1,65]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (16) r[a0.4,320]<2>:ub r[a0.1,97]<32;16,2>:ub { NoDDClr, NoDDChk }
mov (8) r[a0.5,288]<4>:ub r[a0.2,65]<32;8,4>:ub { NoDDChk }
mov (8) r[a0.5,320]<4>:ub r[a0.2,97]<32;8,4>:ub { NoDDChk }
 
send (1) null<1>:d r28 0x5 0x60A8018:ud
send (1) null<1>:d r37 0x5 0x60A8018:ud
 
/drivers/video/i965/shaders/post_processing/gen7/Save_AVS_PL3.g4a
0,0 → 1,564
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 84 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// Module name: Save_AVS_PL3.asm
//
// Save PL3 420 frame data block of size 16x16
//
// To save 16x16 block (16x16 byte of Y and 8x8 byte of U and V each) we need 3 send instructions with one of size 16x16 and two of size 8x8.
// -----------------
// | 16x16 Y |
// | |
// -----------------
// | 8x8 U |
// ---------
// | 8x8 V |
// ---------
 
//-----------------------------------------------------------------
//The layout of data is as follows:
//mMSGHDR0 : Y data header (16x16)
//mubMSGPAYLOAD0 : Y data payload (8 GRFs)
//mMSGHDR1 : U data header (8x8)
//mubMSGPAYLOAD1 : U data payload (2 GRFs)
//mMSGHDR2 : V data header (8x8)
//mubMSGPAYLOAD2 : V data payload (2 GRFs)
//------------------------------------------------------------------
 
 
 
// Module name: Save.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
//Msg payload buffers; upto 4 full-size messages can be written
 
 
.declare mudMSGPAYLOAD0 Base=r29.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mudMSGPAYLOAD1 Base=r38.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mudMSGPAYLOAD2 Base=r47.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mudMSGPAYLOAD3 Base=r56.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
 
.declare muwMSGPAYLOAD0 Base=r29.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare muwMSGPAYLOAD1 Base=r38.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare muwMSGPAYLOAD2 Base=r47.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare muwMSGPAYLOAD3 Base=r56.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
 
.declare mubMSGPAYLOAD0 Base=r29.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD1 Base=r38.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD2 Base=r47.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD3 Base=r56.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD4 Base=r32.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD5 Base=r41.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD6 Base=r50.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD7 Base=r59.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
 
 
// the r17 register (nTEMP0) is originally defined from "Common.inc"
// instead of re-defining a nTEMP0 here, we use "SAVE_RGB" suffix for its naming
 
.declare uwTemp0 Base=r17.0 ElementSize=2 Type=uw
 
 
//_SAVE_INC_
 
 
// At the save module we have all 8 address sub-registers available.
// So we will use PING-PONG type of scheme to save the data using
// pointers pBUF_CHNL_TOP_8x4 and pBUF_CHNL_BOT_8x4. This will help
// reduce dependency. - rT
 
//wBUFF_CHNL_PTR points to either buffer 0 or buffer 4.
//Add appropriate offsets to get pointers for all buffers (1,2,3 or 5).
//Offsets are zero for buffer 0 and buffer 4.
add (4) a0.0:uw r22.0<4;4,1>:w 0:uw
add (4) a0.4:uw r22.0<4;4,1>:w 512:uw
 
//Set up header for Y,U and V data
mov (8) r28<1>:ud r27<8;8,1>:ud
mov (8) r37<1>:ud r27<8;8,1>:ud
mov (8) r46<1>:ud r27<8;8,1>:ud
 
mov (2) r28.0<1>:d r7.0<2;2,1>:w { NoDDClr } //ORI Y (LUMA) = ORI
shr (2) r37.0<1>:d r7.0<2;2,1>:w 1:w { NoDDClr } //H/V ORI U = H/V ORI/2
shr (2) r46.0<1>:d r7.0<2;2,1>:w 1:w { NoDDClr } //H/V ORI V = H/V ORI/2
 
mov (1) r28.2<1>:ud 0xF000F:ud { NoDDChk } // Y Block width and height (16x16)
mov (1)r37.2<1>:ud 0x70007:ud { NoDDChk } // U Block width and height (8x8)
mov (1)r46.2<1>:ud 0x70007:ud { NoDDChk } // V Block width and height (8x8)
 
// Unscramble, and pack data directly to MRFs
 
// Data 16x16 block is divided as -
// ---------
// | 0 |
// ---------
// | 1 |
// ---------
// | 2 |
// ---------
// | 3 |
// ---------
// All sub-blocks are of size 16x4
// 0: ubBUFFER_0
// 1: ubBUFFER_1, ubBUFFER_0+16
// 2: ubBUFFER_2
// 3: ubBUFFER_3, ubBUFFER_2+16
 
//Y Rounding, first
add.sat (16) r[a0.1,0]<1>:uw r[a0.1,0]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.1,32]<1>:uw r[a0.1,32]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.1,64]<1>:uw r[a0.1,64]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.1,96]<1>:uw r[a0.1,96]<16;16,1>:uw 0x0080:uw
 
// U rounding
add.sat (8) r[a0.2,0]<2>:uw r[a0.2,0]<16;8,2>:uw 0x0080:uw
add.sat (8) r[a0.2,64]<2>:uw r[a0.2,64]<16;8,2>:uw 0x0080:uw
 
// V rounding
add.sat (8) r[a0.0,0]<2>:uw r[a0.0,0]<16;8,2>:uw 0x0080:uw
add.sat (8) r[a0.0,64]<2>:uw r[a0.0,64]<16;8,2>:uw 0x0080:uw
 
add (4) a0.0:uw r22.0<4;4,1>:w 1024:uw //Update Buffer 2 pointers
 
//Y Rounding, second
add.sat (16) r[a0.5,0]<1>:uw r[a0.5,0]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.5,32]<1>:uw r[a0.5,32]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.5,64]<1>:uw r[a0.5,64]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.5,96]<1>:uw r[a0.5,96]<16;16,1>:uw 0x0080:uw
 
// U rounding
add.sat (8) r[a0.6,0]<2>:uw r[a0.6,0]<16;8,2>:uw 0x0080:uw
add.sat (8) r[a0.6,64]<2>:uw r[a0.6,64]<16;8,2>:uw 0x0080:uw
 
// V rounding
add.sat (8) r[a0.4,0]<2>:uw r[a0.4,0]<16;8,2>:uw 0x0080:uw
add.sat (8) r[a0.4,64]<2>:uw r[a0.4,64]<16;8,2>:uw 0x0080:uw
 
add (4) a0.4:uw r22.0<4;4,1>:w 1536:uw //Update Buffer 3 pointers
 
//Y Rounding, third
add.sat (16) r[a0.1,0]<1>:uw r[a0.1,0]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.1,32]<1>:uw r[a0.1,32]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.1,64]<1>:uw r[a0.1,64]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.1,96]<1>:uw r[a0.1,96]<16;16,1>:uw 0x0080:uw
 
// U rounding
add.sat (8) r[a0.2,0]<2>:uw r[a0.2,0]<16;8,2>:uw 0x0080:uw
add.sat (8) r[a0.2,64]<2>:uw r[a0.2,64]<16;8,2>:uw 0x0080:uw
 
// V rounding
add.sat (8) r[a0.0,0]<2>:uw r[a0.0,0]<16;8,2>:uw 0x0080:uw
add.sat (8) r[a0.0,64]<2>:uw r[a0.0,64]<16;8,2>:uw 0x0080:uw
 
 
//Y Rounding, fourth
add.sat (16) r[a0.5,0]<1>:uw r[a0.5,0]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.5,32]<1>:uw r[a0.5,32]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.5,64]<1>:uw r[a0.5,64]<16;16,1>:uw 0x0080:uw
add.sat (16) r[a0.5,96]<1>:uw r[a0.5,96]<16;16,1>:uw 0x0080:uw
 
// U rounding
add.sat (8) r[a0.6,0]<2>:uw r[a0.6,0]<16;8,2>:uw 0x0080:uw
add.sat (8) r[a0.6,64]<2>:uw r[a0.6,64]<16;8,2>:uw 0x0080:uw
 
// V rounding
add.sat (8) r[a0.4,0]<2>:uw r[a0.4,0]<16;8,2>:uw 0x0080:uw
add.sat (8) r[a0.4,64]<2>:uw r[a0.4,64]<16;8,2>:uw 0x0080:uw
 
// restore the TOP and BOT pointers
add (4) a0.0:uw r22.0<4;4,1>:w 0:uw
add (4) a0.4:uw r22.0<4;4,1>:w 512:uw
 
//Buffer 0
//Move Y to msg payload
mov (16) mubMSGPAYLOAD0(0,0)<1> r[a0.1, 1]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(0,16)<1> r[a0.1, 33]<32;16,2>:ub { NoDDChk }
mov (16) mubMSGPAYLOAD0(1,0)<1> r[a0.1, 65]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(1,16)<1> r[a0.1, 97]<32;16,2>:ub { NoDDChk }
 
//Move U to msg payload
mov (8) mubMSGPAYLOAD1(0,0)<1> r[a0.2, 1]<32;8,4>:ub { NoDDClr }
mov (8) mubMSGPAYLOAD1(0,8)<1> r[a0.2, 65]<32;8,4>:ub { NoDDClr, NoDDChk }
 
//Move V to msg payload
mov (8) mubMSGPAYLOAD2(0,0)<1> r[a0.0, 1]<32;8,4>:ub { NoDDClr }
mov (8) mubMSGPAYLOAD2(0,8)<1> r[a0.0, 65]<32;8,4>:ub { NoDDClr, NoDDChk }
 
add (4) a0.0:uw r22.0<4;4,1>:w 1024:uw //Update Buffer 2 pointers
 
//Buffer 1
mov (16) mubMSGPAYLOAD0(2,0)<1> r[a0.5, 1]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(2,16)<1> r[a0.5, 33]<32;16,2>:ub { NoDDChk }
mov (16) mubMSGPAYLOAD0(3,0)<1> r[a0.5, 65]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(3,16)<1> r[a0.5, 97]<32;16,2>:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD1(0,16)<1> r[a0.6, 1]<32;8,4>:ub { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD1(0,24)<1> r[a0.6, 65]<32;8,4>:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD2(0,16)<1> r[a0.4, 1]<32;8,4>:ub { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD2(0,24)<1> r[a0.4, 65]<32;8,4>:ub { NoDDChk }
 
add (4) a0.4:uw r22.0<4;4,1>:w 1536:uw //Update Buffer 3 pointers
 
//Buffer 2
mov (16) mubMSGPAYLOAD0(4,0)<1> r[a0.1, 1]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(4,16)<1> r[a0.1, 33]<32;16,2>:ub { NoDDChk }
mov (16) mubMSGPAYLOAD0(5,0)<1> r[a0.1, 65]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(5,16)<1> r[a0.1, 97]<32;16,2>:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD1(1,0)<1> r[a0.2, 1]<32;8,4>:ub { NoDDClr }
mov (8) mubMSGPAYLOAD1(1,8)<1> r[a0.2, 65]<32;8,4>:ub { NoDDClr, NoDDChk }
 
mov (8) mubMSGPAYLOAD2(1,0)<1> r[a0.0, 1]<32;8,4>:ub { NoDDClr }
mov (8) mubMSGPAYLOAD2(1,8)<1> r[a0.0, 65]<32;8,4>:ub { NoDDClr, NoDDChk }
 
//Buffer 3
mov (16) mubMSGPAYLOAD0(6,0)<1> r[a0.5, 1]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(6,16)<1> r[a0.5, 33]<32;16,2>:ub { NoDDChk }
mov (16) mubMSGPAYLOAD0(7,0)<1> r[a0.5, 65]<32;16,2>:ub { NoDDClr }
mov (16) mubMSGPAYLOAD0(7,16)<1> r[a0.5, 97]<32;16,2>:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD1(1,16)<1> r[a0.6, 1]<32;8,4>:ub { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD1(1,24)<1> r[a0.6, 65]<32;8,4>:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD2(1,16)<1> r[a0.4, 1]<32;8,4>:ub { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD2(1,24)<1> r[a0.4, 65]<32;8,4>:ub { NoDDChk }
 
//===========================================================================
 
send (1) null<1>:d r28 0x5 0x120A8018:ud
send (1) null<1>:d r37 0x5 0x60A8019:ud
send (1) null<1>:d r46 0x5 0x60A801A:ud
/drivers/video/i965/shaders/post_processing/gen7/Save_AVS_RGB.g4a
0,0 → 1,668
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 198 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// Module name: Save_AVS_RGB.asm
//
// Save packed ARGB 444 frame data block of size 16x16
//
// To save 16x16 block (64x16 byte layout for ARGB8888) we need 4 send instructions with 16x16 in each
// -----------------
// | 0 | 1 | 2 | 3 |
// -----------------
// the 4 16x16 block send has been replaced by 16 32x2 sends to get better performance
 
 
 
// Module name: Save.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
//Msg payload buffers; upto 4 full-size messages can be written
 
 
.declare mudMSGPAYLOAD0 Base=r29.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mudMSGPAYLOAD1 Base=r38.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mudMSGPAYLOAD2 Base=r47.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mudMSGPAYLOAD3 Base=r56.0 ElementSize=4 SrcRegion=<8;8,1> Type=ud
 
.declare muwMSGPAYLOAD0 Base=r29.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare muwMSGPAYLOAD1 Base=r38.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare muwMSGPAYLOAD2 Base=r47.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare muwMSGPAYLOAD3 Base=r56.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw
 
.declare mubMSGPAYLOAD0 Base=r29.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD1 Base=r38.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD2 Base=r47.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD3 Base=r56.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD4 Base=r32.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD5 Base=r41.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD6 Base=r50.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare mubMSGPAYLOAD7 Base=r59.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub
 
 
// the r17 register (nTEMP0) is originally defined from "Common.inc"
// instead of re-defining a nTEMP0 here, we use "SAVE_RGB" suffix for its naming
 
.declare uwTemp0 Base=r17.0 ElementSize=2 Type=uw
 
 
//_SAVE_INC_
 
 
// At the save module we have all 8 address sub-registers available.
// So we will use PING-PONG type of scheme to save the data using
// pointers pBUF_CHNL_TOP_8x4 and pBUF_CHNL_BOT_8x4. This will help
// reduce dependency. - rT
 
// channel switching based on bit 0 of uWRGB_BGR_CH_SWITCH
 
// if channel swap?
and.nz.f0.0 null<1>:w r2.3<0;1,0>:uw 0x01:w
 
//wBUFF_CHNL_PTR points to either buffer 0 or buffer 4.
//Add appropriate offsets to get pointers for all buffers (1,2,3 or 5).
//Offsets are zero for buffer 0 and buffer 4.
add (4) a0.0:uw r22.0<4;4,1>:w 0:uw
 
// pointer swap
(f0.0) mov (1) uwTemp0<1> a0.0:uw
(f0.0) mov (1) a0.0:uw a0.2:uw
(f0.0) mov (1) a0.2:uw uwTemp0<0;1,0>
 
shl (1) r27.0<1>:d r7.0<0;1,0>:w 2:w { NoDDClr } // H. block origin need to be quadrupled
mov (1) r27.1<1>:d r7.1<0;1,0>:w { NoDDClr, NoDDChk } // Block origin (1st quadrant)
mov (1) r27.2<1>:ud 0x1001F:ud { NoDDChk } // Block width and height (32x2)
 
add (4) a0.4:uw a0.0<4;4,1>:w r22.8<0;2,1>:w
 
mov (8) r28<1>:ud r27<8;8,1>:ud
mov (8) r37<1>:ud r27<8;8,1>:ud
mov (8) r46<1>:ud r27<8;8,1>:ud
mov (8) r55<1>:ud r27<8;8,1>:ud
 
mov (8) r31<1>:ud r27<8;8,1>:ud
mov (8) r40<1>:ud r27<8;8,1>:ud
mov (8) r49<1>:ud r27<8;8,1>:ud
mov (8) r58<1>:ud r27<8;8,1>:ud
 
 
//for BUFFER 0
add (1) r37.1<1>:d r27.1<0;1,0>:d 2:d
add (1) r46.0<1>:d r27.0<0;1,0>:d 32:d
add (1) r55.0<1>:d r27.0<0;1,0>:d 32:d
add (1) r55.1<1>:d r27.1<0;1,0>:d 2:d
 
// for BUFFER 1
add (1) r31.1<1>:d r27.1<0;1,0>:d 4:d
add (1) r40.1<1>:d r27.1<0;1,0>:d 6:d
add (1) r49.0<1>:d r27.0<0;1,0>:d 32:d
add (1) r49.1<1>:d r27.1<0;1,0>:d 4:d
add (1) r58.0<1>:d r27.0<0;1,0>:d 32:d
add (1) r58.1<1>:d r27.1<0;1,0>:d 6:d
// write Buf_0 to 1st quarter of four horizontal output blocks
 
// Please note the scattered order of NODDCLR, NODDCHK flags. Since the sub-registers
// of destination reg are not updated at one place and hence even flags are scattered. -rT
 
mov (8) mubMSGPAYLOAD0(0, 0)<4> r[a0.2, 1]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD0(0, 1)<4> r[a0.1, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD0(0, 2)<4> r[a0.0, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD0(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD0(1, 0)<4> r[a0.2, 33]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD0(1, 1)<4> r[a0.1, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD0(1, 2)<4> r[a0.0, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD0(1, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD1(0, 0)<4> r[a0.6, 1]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD1(0, 1)<4> r[a0.5, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD1(0, 2)<4> r[a0.4, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD1(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD1(1, 0)<4> r[a0.6, 33]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD1(1, 1)<4> r[a0.5, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD1(1, 2)<4> r[a0.4, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD1(1, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD2(0, 0)<4> r[a0.2, 17]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD2(0, 1)<4> r[a0.1, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD2(0, 2)<4> r[a0.0, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD2(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD2(1, 0)<4> r[a0.2, 49]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD2(1, 1)<4> r[a0.1, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD2(1, 2)<4> r[a0.0, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD2(1, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD3(0, 0)<4> r[a0.6, 17]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD3(0, 1)<4> r[a0.5, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD3(0, 2)<4> r[a0.4, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD3(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD3(1, 0)<4> r[a0.6, 49]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD3(1, 1)<4> r[a0.5, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD3(1, 2)<4> r[a0.4, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD3(1, 3)<4> r2.31:ub { NoDDChk }
 
// write Buf_1 to 2nd quarter of four horizontal output blocks
add (4) a0.0:uw r22.0<4;4,1>:w 512:uw
 
// pointer swap
(f0.0) mov (1) uwTemp0<1> a0.0:uw
(f0.0) mov (1) a0.0:uw a0.2:uw
(f0.0) mov (1) a0.2:uw uwTemp0<0;1,0>
 
add (4) a0.4:uw a0.0<4;4,1>:w r22.8<0;2,1>:w
 
mov (8) mubMSGPAYLOAD4(0, 0)<4> r[a0.2, 1]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD4(0, 1)<4> r[a0.1, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD4(0, 2)<4> r[a0.0, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD4(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD4(1, 0)<4> r[a0.2, 33]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD4(1, 1)<4> r[a0.1, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD4(1, 2)<4> r[a0.0, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD4(1, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD5(0, 0)<4> r[a0.6, 1]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD5(0, 1)<4> r[a0.5, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD5(0, 2)<4> r[a0.4, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD5(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD5(1, 0)<4> r[a0.6, 33]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD5(1, 1)<4> r[a0.5, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD5(1, 2)<4> r[a0.4, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD5(1, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD6(0, 0)<4> r[a0.2, 17]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD6(0, 1)<4> r[a0.1, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD6(0, 2)<4> r[a0.0, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD6(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD6(1, 0)<4> r[a0.2, 49]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD6(1, 1)<4> r[a0.1, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD6(1, 2)<4> r[a0.0, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD6(1, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD7(0, 0)<4> r[a0.6, 17]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD7(0, 1)<4> r[a0.5, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD7(0, 2)<4> r[a0.4, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD7(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD7(1, 0)<4> r[a0.6, 49]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD7(1, 1)<4> r[a0.5, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD7(1, 2)<4> r[a0.4, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD7(1, 3)<4> r2.31:ub { NoDDChk }
 
// send buffer 0 and buffer 1
send (1) null<1>:d r28 0x5 0x60A8018:ud
send (1) null<1>:d r37 0x5 0x60A8018:ud
send (1) null<1>:d r46 0x5 0x60A8018:ud
send (1) null<1>:d r55 0x5 0x60A8018:ud
 
send (1) null<1>:d r31 0x5 0x60A8018:ud
send (1) null<1>:d r40 0x5 0x60A8018:ud
send (1) null<1>:d r49 0x5 0x60A8018:ud
send (1) null<1>:d r58 0x5 0x60A8018:ud
 
//==========
//prepare headers
//for BUFFER 2
add (1) r28.1<1>:d r27.1<0;1,0>:d 8:d
add (1) r37.1<1>:d r27.1<0;1,0>:d 10:d
add (1) r46.0<1>:d r27.0<0;1,0>:d 32:d
add (1) r46.1<1>:d r27.1<0;1,0>:d 8:d
add (1) r55.0<1>:d r27.0<0;1,0>:d 32:d
add (1) r55.1<1>:d r27.1<0;1,0>:d 10:d
// for BUFFER 3
add (1) r31.1<1>:d r27.1<0;1,0>:d 12:d
add (1) r40.1<1>:d r27.1<0;1,0>:d 14:d
add (1) r49.0<1>:d r27.0<0;1,0>:d 32:d
add (1) r49.1<1>:d r27.1<0;1,0>:d 12:d
add (1) r58.0<1>:d r27.0<0;1,0>:d 32:d
add (1) r58.1<1>:d r27.1<0;1,0>:d 14:d
 
//===========
 
// write Buf_2 to 3rd quarter of four horizontal output blocks
add (4) a0.0:uw r22.0<4;4,1>:w 1024:uw
 
// pointer swap
(f0.0) mov (1) uwTemp0<1> a0.0:uw
(f0.0) mov (1) a0.0:uw a0.2:uw
(f0.0) mov (1) a0.2:uw uwTemp0<0;1,0>
 
add (4) a0.4:uw a0.0<4;4,1>:w r22.8<0;2,1>:w
 
mov (8) mubMSGPAYLOAD0(0, 0)<4> r[a0.2, 1]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD0(0, 1)<4> r[a0.1, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD0(0, 2)<4> r[a0.0, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD0(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD0(1, 0)<4> r[a0.2, 33]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD0(1, 1)<4> r[a0.1, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD0(1, 2)<4> r[a0.0, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD0(1, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD1(0, 0)<4> r[a0.6, 1]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD1(0, 1)<4> r[a0.5, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD1(0, 2)<4> r[a0.4, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD1(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD1(1, 0)<4> r[a0.6, 33]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD1(1, 1)<4> r[a0.5, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD1(1, 2)<4> r[a0.4, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD1(1, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD2(0, 0)<4> r[a0.2, 17]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD2(0, 1)<4> r[a0.1, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD2(0, 2)<4> r[a0.0, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD2(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD2(1, 0)<4> r[a0.2, 49]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD2(1, 1)<4> r[a0.1, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD2(1, 2)<4> r[a0.0, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD2(1, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD3(0, 0)<4> r[a0.6, 17]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD3(0, 1)<4> r[a0.5, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD3(0, 2)<4> r[a0.4, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD3(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD3(1, 0)<4> r[a0.6, 49]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD3(1, 1)<4> r[a0.5, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD3(1, 2)<4> r[a0.4, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD3(1, 3)<4> r2.31:ub { NoDDChk }
 
// write Buf_3 to 4th quarter of four horizontal output blocks
add (4) a0.0:uw r22.0<4;4,1>:w 1536:uw
 
// pointer swap
(f0.0) mov (1) uwTemp0<1> a0.0:uw
(f0.0) mov (1) a0.0:uw a0.2:uw
(f0.0) mov (1) a0.2:uw uwTemp0<0;1,0>
 
add (4) a0.4:uw a0.0<4;4,1>:w r22.8<0;2,1>:w
 
mov (8) mubMSGPAYLOAD4(0, 0)<4> r[a0.2, 1]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD4(0, 1)<4> r[a0.1, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD4(0, 2)<4> r[a0.0, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD4(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD4(1, 0)<4> r[a0.2, 33]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD4(1, 1)<4> r[a0.1, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD4(1, 2)<4> r[a0.0, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD4(1, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD5(0, 0)<4> r[a0.6, 1]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD5(0, 1)<4> r[a0.5, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD5(0, 2)<4> r[a0.4, 1]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD5(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD5(1, 0)<4> r[a0.6, 33]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD5(1, 1)<4> r[a0.5, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD5(1, 2)<4> r[a0.4, 33]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD5(1, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD6(0, 0)<4> r[a0.2, 17]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD6(0, 1)<4> r[a0.1, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD6(0, 2)<4> r[a0.0, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD6(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD6(1, 0)<4> r[a0.2, 49]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD6(1, 1)<4> r[a0.1, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD6(1, 2)<4> r[a0.0, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD6(1, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD7(0, 0)<4> r[a0.6, 17]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD7(0, 1)<4> r[a0.5, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD7(0, 2)<4> r[a0.4, 17]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD7(0, 3)<4> r2.31:ub { NoDDChk }
 
mov (8) mubMSGPAYLOAD7(1, 0)<4> r[a0.6, 49]<16;8,2> { NoDDClr }
mov (8) mubMSGPAYLOAD7(1, 1)<4> r[a0.5, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD7(1, 2)<4> r[a0.4, 49]<16;8,2> { NoDDClr, NoDDChk }
mov (8) mubMSGPAYLOAD7(1, 3)<4> r2.31:ub { NoDDChk }
 
// send buffer 2 and buffer 3
send (1) null<1>:d r28 0x5 0x60A8018:ud
send (1) null<1>:d r37 0x5 0x60A8018:ud
send (1) null<1>:d r46 0x5 0x60A8018:ud
send (1) null<1>:d r55 0x5 0x60A8018:ud
 
send (1) null<1>:d r31 0x5 0x60A8018:ud
send (1) null<1>:d r40 0x5 0x60A8018:ud
send (1) null<1>:d r49 0x5 0x60A8018:ud
send (1) null<1>:d r58 0x5 0x60A8018:ud
/drivers/video/i965/shaders/post_processing/gen7/Set_AVS_Buf_0123_BGRA.g4a
0,0 → 1,362
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 7 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
//Module Name: Set_AVS_Buf_0123_BGRA.asm
 
 
 
//Module Name: Set_Buf_0123_BGRA
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
//AVS LAYOUT:(UUYYVVAA)
//Assign buffer channel order for Buffer 0123 in the order AUYV a0.3>A, a0.2>U, a0.1>Y, a0.0>V
// V = 8, Y= 4, U = 0, A = 12.
mov (4) acc0.0<1>:w 0x6AE2:v
add (4) acc0.0<1>:w acc0<4;4,1>:w 70:uw
shl (4) r22.0<1>:w acc0<4;4,1>:w 5:uw
 
//OPT: wAVS_SU_SHUFFLE_PTR_0 and udAVS_SU_SHUFFLE_OFF_0 are sub-regs of same GRF. -rT
 
//SU LAYOUT:(VYUAVYUA)
//V = 4, Y = 2, U = 0, A = 6
mov (4) acc0.0<1>:w 0x6024:v
add (4) acc0.0<1>:w acc0<4;4,1>:w 64:uw
shl (4) r18.0<1>:w acc0<4;4,1>:w 5:uw { NoDDClr } //Convert to BYTE address.
 
//OFFSET:
mov (1) r18.4<1>:ud 0x1000100:ud { NoDDChk }
 
 
/drivers/video/i965/shaders/post_processing/gen7/Set_AVS_Buf_0123_PL2.g4a
0,0 → 1,361
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 7 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
//Module Name: Set_AVS_Buf_0123_PL2.asm
 
 
 
//Module Name: Set_Buf_0123_PL2
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
//AVS LAYOUT: (YYUUVVAA)
//Assign buffer channel order for Buffer 0123 in the order AUYV a0.3>A, a0.2>U, a0.1>Y, a0.0>V
//For PL2-AVS: V = 8, Y= 0, U = 4, A = 12.
mov (4) acc0.0<1>:w 0x6EA2:v //Subtract 6 from 0,4,8,12
add (4) acc0.0<1>:w acc0<4;4,1>:w 70:uw //add 6 back
shl (4) r22.0<1>:w acc0<4;4,1>:w 5:uw //Convert to BYTE address.
 
//OPT: wAVS_SU_SHUFFLE_PTR_0 and udAVS_SU_SHUFFLE_OFF_0 are sub-regs of same GRF. -rT
//SU LAYOUT:(YUVAYUVA)
//V = 4, Y = 0, U = 2, A = 6
mov (4) acc0.0<1>:w 0x6204:v
add (4) acc0.0<1>:w acc0<4;4,1>:w 64:uw
shl (4) r18.0<1>:w acc0<4;4,1>:w 5:uw { NoDDClr } //Convert to BYTE address.
 
//OFFSET:
mov (1) r18.4<1>:ud 0x1000100:ud { NoDDChk }
 
 
/drivers/video/i965/shaders/post_processing/gen7/Set_AVS_Buf_0123_PL3.g4a
0,0 → 1,361
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 7 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
//Module Name: Set_AVS_Buf_0123_PL3.asm
 
 
 
//Module Name: Set_Buf_0123_PL3
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
//AVS LAYOUT: (YYUUVVAA)
//Assign buffer channel order for Buffer 0123 in the order AUYV a0.3>A, a0.2>U, a0.1>Y, a0.0>V
//For PL3-AVS: V = 8, Y= 0, U = 4, A = 12.
mov (4) acc0.0<1>:w 0x6EA2:v //Subtract 6 from 0,4,8,12
add (4) acc0.0<1>:w acc0<4;4,1>:w 70:uw //add 6 back
shl (4) r22.0<1>:w acc0<4;4,1>:w 5:uw //Convert to BYTE address.
 
//OPT: wAVS_SU_SHUFFLE_PTR_0 and udAVS_SU_SHUFFLE_OFF_0 are sub-regs of same GRF. -rT
//SU LAYOUT:(YUVAYUVA)
//V = 4, Y = 0, U = 2, A = 6
mov (4) acc0.0<1>:w 0x6204:v
add (4) acc0.0<1>:w acc0<4;4,1>:w 64:uw
shl (4) r18.0<1>:w acc0<4;4,1>:w 5:uw { NoDDClr } //Convert to BYTE address.
 
//OFFSET:
mov (1) r18.4<1>:ud 0x1000100:ud { NoDDChk }
 
 
/drivers/video/i965/shaders/post_processing/gen7/Set_AVS_Buf_0123_VUYA.g4a
0,0 → 1,362
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 7 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
//Module Name: Set_AVS_Buf_0123_YUVA.asm
 
 
 
// Module Name : Set_Buf_0123_VUYA
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
//For AVS: We use surface state as R8G8B8A8_UNORM and hence set pointers to VUYA.
//AVS LAYOUT:(VVUUYYAA)
//Assign buffer channel order for Buffer 0123 in the order AUYV a0.3>A, a0.2>U, a0.1>Y, a0.0>V
//V = 0, Y= 8, U = 4, A = 12.
mov (4) acc0.0<1>:w 0x6E2A:v
add (4) acc0.0<1>:w acc0<4;4,1>:w 70:uw
shl (4) r22.0<1>:w acc0<4;4,1>:w 5:uw
 
//Used by Shuffle.
//SU LAYOUT:(VUYAVUYA)
//V = 0, Y = 4, U = 2, A = 6
mov (4) acc0.0<1>:w 0x6240:v
add (4) acc0.0<1>:w acc0<4;4,1>:w 64:uw
shl (4) r18.0<1>:w acc0<4;4,1>:w 5:uw { NoDDClr } //Convert to BYTE address.
 
//OFFSET:
mov (1) r18.4<1>:ud 0x1000100:ud { NoDDChk }
 
 
/drivers/video/i965/shaders/post_processing/gen7/Set_AVS_Buf_0123_VYUA.g4a
0,0 → 1,362
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 7 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
//Module Name: Set_AVS_Buf_0123_VYUA.asm
 
 
 
//Module Name: Set_Buf_0123_VYUA
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
//AVS LAYOUT:(VVYYUUAA)
//Assign buffer channel order for Buffer 0123 in the order AUYV a0.3>A, a0.2>U, a0.1>Y, a0.0>V
// V = 0, Y= 4, U = 8, A = 12.
mov (4) acc0.0<1>:w 0x62EA:v //Subtract 6 from 0,4,8,12
add (4) acc0.0<1>:w acc0<4;4,1>:w 70:uw //add 6 back
shl (4) r22.0<1>:w acc0<4;4,1>:w 5:uw //Convert to BYTE address.
 
//OPT: wAVS_SU_SHUFFLE_PTR_0 and udAVS_SU_SHUFFLE_OFF_0 are sub-regs of same GRF. -rT
 
//SU LAYOUT:(VYUAVYUA)
//V = 0, Y = 2, U = 4, A = 6
mov (4) acc0.0<1>:w 0x6420:v
add (4) acc0.0<1>:w acc0<4;4,1>:w 64:uw
shl (4) r18.0<1>:w acc0<4;4,1>:w 5:uw { NoDDClr } //Convert to BYTE address.
 
//OFFSET:
mov (1) r18.4<1>:ud 0x1000100:ud { NoDDChk }
 
 
/drivers/video/i965/shaders/post_processing/gen7/Set_Layer_0.g4a
0,0 → 1,467
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// 18 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
 
 
 
 
//Module name: Set_Layer_N.inc
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
//Used to generate LABELS at compile time.
 
 
//definitions for Expand Mask
.declare uwMask_Temp1 Base=r17.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
.declare ubMask_Temp1 Base=r17.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub // 1 GRF
.declare udMask_Temp1 Base=r17.0 ElementSize=4 Type=ud // 1 GRF
.declare uwMask_Temp2 Base=r16.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
.declare ubMask_Temp2 Base=r16.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub // 1 GRF
.declare udMask_Temp2 Base=r16.0 ElementSize=4 Type=ud // 1 GRF
 
.declare uwMask_Temp3 Base=r15.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
.declare ubMask_Temp3 Base=r15.0 ElementSize=1 SrcRegion=<16;16,1> Type=ub // 1 GRF
 
.declare udALPHA_MASK_REG Base=r21.0 ElementSize=4 Type=ud // 1 GRF
.declare udALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=4 Type=ud // 1 GRF
 
 
//Initialize mask reg to FFFF
 
mov (16) uwALPHA_MASK_REG(0)<1> 0xFFFF:uw
 
 
//Fast jump for -
//LAYER0: we determine whether layer 0 is to be loaded and processed or not based
// on block mask in module "Set_Layer_0" and store result in f0.1.
// This flag is then directly used to while loading buf0-3 and colorfill.
// (So flag f0.1 should not be changed from Set_Layer_0 till Colorfill)
//
//LAYER1-7: For all other layers, we compute whether layer is to be loaded and processed
// based on block mask in module "Set_Layer_1-7" and store result in SKIP_LAYER
// variable.
// While Loading buf 4 and 5, we move SKIP_LAYER to f0.0 every time and use it
// for Loading.
// For processing though, we move SKIP_LAYER only once to f0.1 in module
// "Set_Buf0_Buf4" and use f0.1 for deciding whether layer 1-7 (all 4 sub blocks)
// is to be processed or not.
// (So flag f0.1) should not be modififed from module "Set_Buf0_Buf4" till module
// that processess sub-block 3).
//
//None of the above fast jumps, apply to CSC modules. We always perform CSC irrespective of mask.
//
//Example: (Without going into finer details)
// Typical Combined kernel:
//
// (let var = decision whether to load/process that layer)
//
// Set_Layer_0 //f0.1 <- var
// ..
// Set_Layer_1 //f0.1 <- var, SKIP_LAYER <- var
// ..
// Load buf 0 //use f0.1
// Load buf 4 //f0.0 <- SKIP_LAYER
// Load buf 1 //use f0.1
// Load buf 5 //f0.0 <- SKIP_LAYER
// Load buf 2 //use f0.1
// Load buf 3 //use f0.1
// ..
// ..
// Colorfill
// ..
// Set_Buf0_Buf4 //f0.1 <- SKIP_LAYER
// process0-4 //Use f0.1
// Load buf 4
// Set_Buf1_Buf5
// process1-5
// Load buf 5
// ..
// Set_Layer_2 //f0.1 <-var, SKIP_LAYER <- var
// ..
// Set_Buf2_Buf4
// process2-4
// Load buf 4
// Set_Buf3_Buf5
// process3-5
// Load buf 5
// ..
 
 
//For layer 0, use f0.1 directly
cmp.ne.f0.1 (1) null<1>:d r7.2:uw 0:uw
(f0.1)cmp.ne.f0.1 (1) null<1>:d r7.3:uw 0:uw
(-f0.1) jmpi (1) SKIP_LAYER_L0
 
 
and (1) r24.2:ub r2.2<0;1,0>:uw 3:uw
 
 
//Copy all AVS Payload data
// Setup Message Payload Header for 1st block of Media Sampler 8x8 (16x4 for IVB+)
mov (1) r25.6:f r7.5:f { NoDDClr } //NLAS dx
mov (1) r25.4:f r3.0:f { NoDDClr, NoDDChk } //Step X
mov (1) r25.5:f r4.0:f { NoDDClr, NoDDChk } //Step Y
 
 
mov (1) r25.2:f r6.0<0;1,0>:f { NoDDClr, NoDDChk } //Orig X
mov (1) r25.3:f r5.0<0;1,0>:f { NoDDChk } //Orig Y
 
//NLAS calculations for 2nd half of blocks of Media Sampler 8x8:
// X(i) = X0 + dx*i + ddx*i*(i-1)/2 ==> X(8) = X0 + dx*8 +ddx*28
// dx(i)= dx(0) + ddx*i ==> dx(8)= dx + ddx*8
 
//OPTIMIZATION: fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY - are sub registers of same GRF. Use NODDCLR NODDCHK. -rT
 
// Calculating X(8)
mov (1) acc0.2:f r6.0:f
mac (1) acc0.2:f r3.0:f 8.0:f
mac (1) r23.2:f r7.5:f 28.0:f { NoDDClr }
 
// Calculating Y(4)
mul (1) r23.1<1>:f r4.0:f 4.0:f { NoDDClr, NoDDChk } //dY*4
 
// Calculating dx(8)
mov (1) acc0.4:f r3.0:f
mac (1) r23.4:f r7.5:f 8.0:f { NoDDClr, NoDDChk }
 
// Binding Index
mov (1) r23.5:ud 0:ud { NoDDChk }
 
 
SKIP_LAYER_L0:
nop
 
 
/drivers/video/i965/shaders/post_processing/gen7/VP_Setup.g4a
0,0 → 1,853
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/*
* Copyright 2000-2011 Intel Corporation All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
 
// 326 // Total instruction count
// 1 // Total kernel count
 
 
 
// Module name: common.inc
//
// Common header file for all Video-Processing kernels
//
 
.default_execution_size (16)
.default_register_type :ub
 
.reg_count_total 128
.reg_count_payload 7
 
//========== Common constants ==========
 
 
//========== Macros ==========
 
 
//Fast Jump, For more details see "Set_Layer_N.asm"
 
 
//========== Defines ====================
 
//========== Static Parameters (Common To All) ==========
//r1
 
 
//r2
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
//Color Pipe (IECP) parameters
 
 
//ByteCopy
 
 
//r4
 
// e.g. byte0 byte1 byte2
// YUYV 0 1 3
// YVYU 0 3 1
 
 
//========== Inline parameters (Common To All) ===========
 
 
//============== Binding Index Table===========
//Common between DNDI and DNUV
 
 
//================= Common Message Descriptor =====
// Message descriptor for thread spawning
// Message Descriptors
// = 000 0001 (min message len 1 ) 0,0000 (resp len 0 -add later)
// 0000,0000,0000
// 0001(Spawn a root thread),0001 (Root thread spawn thread)
// = 0x02000011
// Thread Spawner Message Descriptor
 
 
// Message descriptor for atomic operation add
// Message Descriptors
// = 000 0110 (min message len 6 ) 0,0000 (resp len 0 -add later)
// 1(header present)001,10(typed atomic operation)0(return enabled)0(slot group, low 8 bits),0111 (AOP_Add)
// 0000,0000 (Binding table index, added later)
// = 0x02000011
 
// Atomic Operation Add Message Descriptor
 
 
// Message descriptor for dataport media write
// Message Descriptors
// = 000 0001 (min message len 1 - add later) 00000 (resp len 0)
// 1 (header present 1) 0 1010 (media block write) 000000
// 00000000 (binding table index - set later)
// = 0x020A8000
 
 
// Message Length defines
 
 
// Response Length defines
 
 
// Block Width and Height Size defines
 
 
// Extended Message Descriptors
 
 
// Common message descriptors:
 
 
//===================== Math Function Control ===================================
 
 
//============ Message Registers ===============
// buf4 starts from r28
 
 
//#define mMSGHDR_EOT r43 // Dummy Message Register for EOT
 
 
.declare mubMSGPAYLOAD Base=r30 ElementSize=1 SrcRegion=<16;16,1> Type=ub
.declare muwMSGPAYLOAD Base=r30 ElementSize=2 SrcRegion=<16;16,1> Type=uw
.declare mudMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=ud
.declare mfMSGPAYLOAD Base=r30 ElementSize=4 SrcRegion=<8;8,1> Type=f
 
//=================== End of thread instruction ===========================
 
 
//=====================Pointers Used=====================================
 
 
//=======================================================================
 
 
//r9-r17
// Define temp space for any usages
 
 
// Common Buffers
 
 
// temp space for rotation
 
.declare fROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udROBUF Base=r9.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwROBUF Base=r9.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubROBUF Base=r9.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4ROBUF Base=r9.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
 
// End of common.inc
 
 
// FileName: VP_Setup.asm
// Author: Vivek Kumar
// Description: Sets up all parameters for the Video Processing Kernel
 
 
 
 
// Description: Includes all definitions explicit to Fast Composite.
 
 
 
 
// End of common.inc
 
 
//========== GRF partition ==========
// r0 header : r0 (1 GRF)
// Static parameters : r1 - r6 (6 GRFS)
// Inline parameters : r7 - r8 (2 GRFs)
// MSGSRC : r27 (1 GRF)
//===================================
 
//Interface:
//========== Static Parameters (Explicit To Fast Composite) ==========
//r1
//CSC Set 0
 
 
.declare udCSC_CURBE Base=r1.0 ElementSize=4 Type=ud
 
//Constant alpha
 
 
//r2
 
 
// Gen7 AVS WA
 
 
// WiDi Definitions
 
 
//Colorfill
 
 
// 0: 0-degree, 1: 90, 2: 180, 3: 270-degree, clockwise.
 
.declare ubCOLOR_PIXEL_VAL Base=r2.20 ElementSize=1 SrcRegion=<0;1,0> DstRegion=<1> Type=ub
 
//r3
//Normalised Ratio of Horizontal step size with main video for all layers
 
 
//Normalised Ratio of Horizontal step size with main video for all layers becomes
//Normalised Horizontal step size for all layers in VP_Setup.asm
 
 
//r4
//Normalised Vertical step size for all layers
 
 
//r5
//Normalised Vertical Frame Origin for all layers
 
 
//r6
//Normalised Horizontal Frame Origin for all layers
 
 
//========== Inline Parameters (Explicit To Fast Composite) ==========
 
 
//Main video Step X
 
 
//====================== Binding table (Explicit To Fast Composite)=========================================
 
 
//Used by Interlaced Scaling Kernels
 
 
//========== Sampler State Table Index (Explicit To Fast Composite)==========
//Sampler Index for AVS/IEF messages
 
 
//Sampler Index for SIMD16 sampler messages
 
 
//=============================================================================
 
.declare fBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
.declare fBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=f
 
.declare udBUFFER_0 Base=r64.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_1 Base=r80.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_2 Base=r96.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_3 Base=r112.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_4 Base=r28.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
.declare udBUFFER_5 Base=r46.0 ElementSize=4 SrcRegion=<8;8,1> DstRegion=<1> Type=ud
 
.declare uwBUFFER_0 Base=r64.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_1 Base=r80.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_2 Base=r96.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_3 Base=r112.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_4 Base=r28.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
.declare uwBUFFER_5 Base=r46.0 ElementSize=2 SrcRegion=<16;16,1> DstRegion=<1> Type=uw
 
.declare ubBUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
.declare ubBUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<16;16,1> DstRegion=<1> Type=ub
 
.declare ub4BUFFER_0 Base=r64.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_1 Base=r80.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_2 Base=r96.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_3 Base=r112.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_4 Base=r28.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
.declare ub4BUFFER_5 Base=r46.0 ElementSize=1 SrcRegion=<32;8,4> DstRegion=<4> Type=ub
 
//Pointer to mask reg
 
 
//r18
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
.declare udCSC_COEFF_0 Base=r18.0 ElementSize=4 Type=ud // 1 GRF
 
//r19
 
 
.declare udCSC_COEFF_1 Base=r19.0 ElementSize=4 Type=ud // 1 GRF
 
 
//r20
 
.declare uwALPHA_MASK_REG_TEMP Base=r20.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r21
 
.declare uwALPHA_MASK_REG Base=r21.0 ElementSize=2 SrcRegion=<16;16,1> Type=uw // 1 GRF
 
//r22
 
 
//Always keep Cannel Pointers and Offsets in same GRF, so that we can use
// NODDCLR, NODDCHK flags. -rT
 
 
//Keep fORIGIN_X_NLAS, fY_OFFSET_2ND_BLOCK, fSTEP_X_NLAS, pMSGDSC_COPY, ubCONST_ALPHA_COPY as
//sub registers of same GRF to enable using NODDCLR NODDCHK. -rT
 
//r23
 
 
//Lumakey
 
 
//r24
 
 
//r25
 
 
//r26
 
 
//defines to generate LABELS during compile time.
 
 
//Setup pointer to the inline parameter
 
// Copy MSG HDR
mov (8) r27.0<1>:ud r0.0<8;8,1>:ud // Initialize message payload header with R0
 
 
//temp; remove it once unread msg warnings are resolved -vK
mov (8) r25:ud r0.0<8;8,1>:ud
mov (8) r26:ud r0.0<8;8,1>:ud
 
// Calculate StepX for all layers and overwrite it on the ratio
mul (8) r3.0<1>:f r3.0<8;8,1>:f r7.4<0;1,0>:f //StepX_ratio = StepX / VideoStepX
 
//Normalised Ratio of Horizontal step size with main video for all layers now becomes
//Normalised Horizontal step size for all layers
 
// Calculate block origin for all layers and overwrite it on the frame origin
mov (2) r8.5<1>:f r7.0<2;2,1>:w //Convert origin from word to float
 
cmp.e.f0.0 (8) null<1>:d r2.26:ub 1:uw
 
 
shr (1) r17.0<1>:uw r2.2<0;1,0>:uw 0:uw
and (1) r17.0<1>:uw r17.0<0;1,0>:uw 3:uw
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 1:uw
(f0.1) jmpi (1) ROTATE_90_L0
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 2:uw
(f0.1) jmpi (1) ROTATE_180_L0
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 3:uw
(f0.1) jmpi (1) ROTATE_270_L0
 
// rotate 0 degree
ROTATE_0_L0:
(-f0.0)mov (1) acc0.0:f r6.0<0;1,0>:f
(-f0.0)mac (1) r6.0<1>:f r3.0<0;1,0>:f r8.5<0;1,0>:f
 
mov (1) acc0.0:f r5.0<0;1,0>:f
mac (1) r5.0<1>:f r4.0<0;1,0>:f r8.6<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L0
 
// rotate 90 degree
ROTATE_90_L0:
(-f0.0)mov (1) acc0.0:f r6.0<0;1,0>:f
(-f0.0)mac (1) r6.0<1>:f r3.0<0;1,0>:f r8.6<0;1,0>:f
 
mov (1) r16.0<1>:f r2.0<0;1,0>:uw
add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
 
mov (1) acc0.0:f r5.0<0;1,0>:f
mac (1) r5.0<1>:f r4.0<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L0
 
// rotate 180 degree
ROTATE_180_L0:
(-f0.0)mov (1) r16.0<1>:f r2.0<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.0:f r6.0<0;1,0>:f
(-f0.0)mac (1) r6.0<1>:f r3.0<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) r16.0<1>:f r2.1<0;1,0>:uw
add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
mov (1) acc0.0:f r5.0<0;1,0>:f
mac (1) r5.0<1>:f r4.0<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L0
 
// rotate 270 degree
ROTATE_270_L0:
(-f0.0)mov (1) r16.0<1>:f r2.1<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.0:f r6.0<0;1,0>:f
(-f0.0)mac (1) r6.0<1>:f r3.0<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) acc0.0:f r5.0<0;1,0>:f
mac (1) r5.0<1>:f r4.0<0;1,0>:f r8.5<0;1,0>:f
 
END_SRC_BLOCK_ORIG_COMP_L0:
nop
shr (1) r17.0<1>:uw r2.2<0;1,0>:uw 2:uw
and (1) r17.0<1>:uw r17.0<0;1,0>:uw 3:uw
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 1:uw
(f0.1) jmpi (1) ROTATE_90_L1
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 2:uw
(f0.1) jmpi (1) ROTATE_180_L1
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 3:uw
(f0.1) jmpi (1) ROTATE_270_L1
 
// rotate 0 degree
ROTATE_0_L1:
(-f0.0)mov (1) acc0.1:f r6.1<0;1,0>:f
(-f0.0)mac (1) r6.1<1>:f r3.1<0;1,0>:f r8.5<0;1,0>:f
 
mov (1) acc0.1:f r5.1<0;1,0>:f
mac (1) r5.1<1>:f r4.1<0;1,0>:f r8.6<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L1
 
// rotate 90 degree
ROTATE_90_L1:
(-f0.0)mov (1) acc0.1:f r6.1<0;1,0>:f
(-f0.0)mac (1) r6.1<1>:f r3.1<0;1,0>:f r8.6<0;1,0>:f
 
mov (1) r16.0<1>:f r2.0<0;1,0>:uw
add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
 
mov (1) acc0.1:f r5.1<0;1,0>:f
mac (1) r5.1<1>:f r4.1<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L1
 
// rotate 180 degree
ROTATE_180_L1:
(-f0.0)mov (1) r16.0<1>:f r2.0<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.1:f r6.1<0;1,0>:f
(-f0.0)mac (1) r6.1<1>:f r3.1<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) r16.0<1>:f r2.1<0;1,0>:uw
add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
mov (1) acc0.1:f r5.1<0;1,0>:f
mac (1) r5.1<1>:f r4.1<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L1
 
// rotate 270 degree
ROTATE_270_L1:
(-f0.0)mov (1) r16.0<1>:f r2.1<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.1:f r6.1<0;1,0>:f
(-f0.0)mac (1) r6.1<1>:f r3.1<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) acc0.1:f r5.1<0;1,0>:f
mac (1) r5.1<1>:f r4.1<0;1,0>:f r8.5<0;1,0>:f
 
END_SRC_BLOCK_ORIG_COMP_L1:
nop
shr (1) r17.0<1>:uw r2.2<0;1,0>:uw 4:uw
and (1) r17.0<1>:uw r17.0<0;1,0>:uw 3:uw
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 1:uw
(f0.1) jmpi (1) ROTATE_90_L2
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 2:uw
(f0.1) jmpi (1) ROTATE_180_L2
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 3:uw
(f0.1) jmpi (1) ROTATE_270_L2
 
// rotate 0 degree
ROTATE_0_L2:
(-f0.0)mov (1) acc0.2:f r6.2<0;1,0>:f
(-f0.0)mac (1) r6.2<1>:f r3.2<0;1,0>:f r8.5<0;1,0>:f
 
mov (1) acc0.2:f r5.2<0;1,0>:f
mac (1) r5.2<1>:f r4.2<0;1,0>:f r8.6<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L2
 
// rotate 90 degree
ROTATE_90_L2:
(-f0.0)mov (1) acc0.2:f r6.2<0;1,0>:f
(-f0.0)mac (1) r6.2<1>:f r3.2<0;1,0>:f r8.6<0;1,0>:f
 
mov (1) r16.0<1>:f r2.0<0;1,0>:uw
add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
 
mov (1) acc0.2:f r5.2<0;1,0>:f
mac (1) r5.2<1>:f r4.2<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L2
 
// rotate 180 degree
ROTATE_180_L2:
(-f0.0)mov (1) r16.0<1>:f r2.0<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.2:f r6.2<0;1,0>:f
(-f0.0)mac (1) r6.2<1>:f r3.2<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) r16.0<1>:f r2.1<0;1,0>:uw
add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
mov (1) acc0.2:f r5.2<0;1,0>:f
mac (1) r5.2<1>:f r4.2<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L2
 
// rotate 270 degree
ROTATE_270_L2:
(-f0.0)mov (1) r16.0<1>:f r2.1<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.2:f r6.2<0;1,0>:f
(-f0.0)mac (1) r6.2<1>:f r3.2<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) acc0.2:f r5.2<0;1,0>:f
mac (1) r5.2<1>:f r4.2<0;1,0>:f r8.5<0;1,0>:f
 
END_SRC_BLOCK_ORIG_COMP_L2:
nop
shr (1) r17.0<1>:uw r2.2<0;1,0>:uw 6:uw
and (1) r17.0<1>:uw r17.0<0;1,0>:uw 3:uw
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 1:uw
(f0.1) jmpi (1) ROTATE_90_L3
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 2:uw
(f0.1) jmpi (1) ROTATE_180_L3
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 3:uw
(f0.1) jmpi (1) ROTATE_270_L3
 
// rotate 0 degree
ROTATE_0_L3:
(-f0.0)mov (1) acc0.3:f r6.3<0;1,0>:f
(-f0.0)mac (1) r6.3<1>:f r3.3<0;1,0>:f r8.5<0;1,0>:f
 
mov (1) acc0.3:f r5.3<0;1,0>:f
mac (1) r5.3<1>:f r4.3<0;1,0>:f r8.6<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L3
 
// rotate 90 degree
ROTATE_90_L3:
(-f0.0)mov (1) acc0.3:f r6.3<0;1,0>:f
(-f0.0)mac (1) r6.3<1>:f r3.3<0;1,0>:f r8.6<0;1,0>:f
 
mov (1) r16.0<1>:f r2.0<0;1,0>:uw
add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
 
mov (1) acc0.3:f r5.3<0;1,0>:f
mac (1) r5.3<1>:f r4.3<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L3
 
// rotate 180 degree
ROTATE_180_L3:
(-f0.0)mov (1) r16.0<1>:f r2.0<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.3:f r6.3<0;1,0>:f
(-f0.0)mac (1) r6.3<1>:f r3.3<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) r16.0<1>:f r2.1<0;1,0>:uw
add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
mov (1) acc0.3:f r5.3<0;1,0>:f
mac (1) r5.3<1>:f r4.3<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L3
 
// rotate 270 degree
ROTATE_270_L3:
(-f0.0)mov (1) r16.0<1>:f r2.1<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.3:f r6.3<0;1,0>:f
(-f0.0)mac (1) r6.3<1>:f r3.3<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) acc0.3:f r5.3<0;1,0>:f
mac (1) r5.3<1>:f r4.3<0;1,0>:f r8.5<0;1,0>:f
 
END_SRC_BLOCK_ORIG_COMP_L3:
nop
shr (1) r17.0<1>:uw r2.2<0;1,0>:uw 8:uw
and (1) r17.0<1>:uw r17.0<0;1,0>:uw 3:uw
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 1:uw
(f0.1) jmpi (1) ROTATE_90_L4
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 2:uw
(f0.1) jmpi (1) ROTATE_180_L4
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 3:uw
(f0.1) jmpi (1) ROTATE_270_L4
 
// rotate 0 degree
ROTATE_0_L4:
(-f0.0)mov (1) acc0.4:f r6.4<0;1,0>:f
(-f0.0)mac (1) r6.4<1>:f r3.4<0;1,0>:f r8.5<0;1,0>:f
 
mov (1) acc0.4:f r5.4<0;1,0>:f
mac (1) r5.4<1>:f r4.4<0;1,0>:f r8.6<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L4
 
// rotate 90 degree
ROTATE_90_L4:
(-f0.0)mov (1) acc0.4:f r6.4<0;1,0>:f
(-f0.0)mac (1) r6.4<1>:f r3.4<0;1,0>:f r8.6<0;1,0>:f
 
mov (1) r16.0<1>:f r2.0<0;1,0>:uw
add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
 
mov (1) acc0.4:f r5.4<0;1,0>:f
mac (1) r5.4<1>:f r4.4<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L4
 
// rotate 180 degree
ROTATE_180_L4:
(-f0.0)mov (1) r16.0<1>:f r2.0<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.4:f r6.4<0;1,0>:f
(-f0.0)mac (1) r6.4<1>:f r3.4<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) r16.0<1>:f r2.1<0;1,0>:uw
add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
mov (1) acc0.4:f r5.4<0;1,0>:f
mac (1) r5.4<1>:f r4.4<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L4
 
// rotate 270 degree
ROTATE_270_L4:
(-f0.0)mov (1) r16.0<1>:f r2.1<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.4:f r6.4<0;1,0>:f
(-f0.0)mac (1) r6.4<1>:f r3.4<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) acc0.4:f r5.4<0;1,0>:f
mac (1) r5.4<1>:f r4.4<0;1,0>:f r8.5<0;1,0>:f
 
END_SRC_BLOCK_ORIG_COMP_L4:
nop
shr (1) r17.0<1>:uw r2.2<0;1,0>:uw 10:uw
and (1) r17.0<1>:uw r17.0<0;1,0>:uw 3:uw
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 1:uw
(f0.1) jmpi (1) ROTATE_90_L5
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 2:uw
(f0.1) jmpi (1) ROTATE_180_L5
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 3:uw
(f0.1) jmpi (1) ROTATE_270_L5
 
// rotate 0 degree
ROTATE_0_L5:
(-f0.0)mov (1) acc0.5:f r6.5<0;1,0>:f
(-f0.0)mac (1) r6.5<1>:f r3.5<0;1,0>:f r8.5<0;1,0>:f
 
mov (1) acc0.5:f r5.5<0;1,0>:f
mac (1) r5.5<1>:f r4.5<0;1,0>:f r8.6<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L5
 
// rotate 90 degree
ROTATE_90_L5:
(-f0.0)mov (1) acc0.5:f r6.5<0;1,0>:f
(-f0.0)mac (1) r6.5<1>:f r3.5<0;1,0>:f r8.6<0;1,0>:f
 
mov (1) r16.0<1>:f r2.0<0;1,0>:uw
add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
 
mov (1) acc0.5:f r5.5<0;1,0>:f
mac (1) r5.5<1>:f r4.5<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L5
 
// rotate 180 degree
ROTATE_180_L5:
(-f0.0)mov (1) r16.0<1>:f r2.0<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.5:f r6.5<0;1,0>:f
(-f0.0)mac (1) r6.5<1>:f r3.5<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) r16.0<1>:f r2.1<0;1,0>:uw
add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
mov (1) acc0.5:f r5.5<0;1,0>:f
mac (1) r5.5<1>:f r4.5<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L5
 
// rotate 270 degree
ROTATE_270_L5:
(-f0.0)mov (1) r16.0<1>:f r2.1<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.5:f r6.5<0;1,0>:f
(-f0.0)mac (1) r6.5<1>:f r3.5<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) acc0.5:f r5.5<0;1,0>:f
mac (1) r5.5<1>:f r4.5<0;1,0>:f r8.5<0;1,0>:f
 
END_SRC_BLOCK_ORIG_COMP_L5:
nop
shr (1) r17.0<1>:uw r2.2<0;1,0>:uw 12:uw
and (1) r17.0<1>:uw r17.0<0;1,0>:uw 3:uw
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 1:uw
(f0.1) jmpi (1) ROTATE_90_L6
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 2:uw
(f0.1) jmpi (1) ROTATE_180_L6
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 3:uw
(f0.1) jmpi (1) ROTATE_270_L6
 
// rotate 0 degree
ROTATE_0_L6:
(-f0.0)mov (1) acc0.6:f r6.6<0;1,0>:f
(-f0.0)mac (1) r6.6<1>:f r3.6<0;1,0>:f r8.5<0;1,0>:f
 
mov (1) acc0.6:f r5.6<0;1,0>:f
mac (1) r5.6<1>:f r4.6<0;1,0>:f r8.6<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L6
 
// rotate 90 degree
ROTATE_90_L6:
(-f0.0)mov (1) acc0.6:f r6.6<0;1,0>:f
(-f0.0)mac (1) r6.6<1>:f r3.6<0;1,0>:f r8.6<0;1,0>:f
 
mov (1) r16.0<1>:f r2.0<0;1,0>:uw
add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
 
mov (1) acc0.6:f r5.6<0;1,0>:f
mac (1) r5.6<1>:f r4.6<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L6
 
// rotate 180 degree
ROTATE_180_L6:
(-f0.0)mov (1) r16.0<1>:f r2.0<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.6:f r6.6<0;1,0>:f
(-f0.0)mac (1) r6.6<1>:f r3.6<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) r16.0<1>:f r2.1<0;1,0>:uw
add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
mov (1) acc0.6:f r5.6<0;1,0>:f
mac (1) r5.6<1>:f r4.6<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L6
 
// rotate 270 degree
ROTATE_270_L6:
(-f0.0)mov (1) r16.0<1>:f r2.1<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.6:f r6.6<0;1,0>:f
(-f0.0)mac (1) r6.6<1>:f r3.6<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) acc0.6:f r5.6<0;1,0>:f
mac (1) r5.6<1>:f r4.6<0;1,0>:f r8.5<0;1,0>:f
 
END_SRC_BLOCK_ORIG_COMP_L6:
nop
shr (1) r17.0<1>:uw r2.2<0;1,0>:uw 14:uw
and (1) r17.0<1>:uw r17.0<0;1,0>:uw 3:uw
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 1:uw
(f0.1) jmpi (1) ROTATE_90_L7
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 2:uw
(f0.1) jmpi (1) ROTATE_180_L7
cmp.e.f0.1 (1) null<1>:w r17.0<0;1,0>:uw 3:uw
(f0.1) jmpi (1) ROTATE_270_L7
 
// rotate 0 degree
ROTATE_0_L7:
(-f0.0)mov (1) acc0.7:f r6.7<0;1,0>:f
(-f0.0)mac (1) r6.7<1>:f r3.7<0;1,0>:f r8.5<0;1,0>:f
 
mov (1) acc0.7:f r5.7<0;1,0>:f
mac (1) r5.7<1>:f r4.7<0;1,0>:f r8.6<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L7
 
// rotate 90 degree
ROTATE_90_L7:
(-f0.0)mov (1) acc0.7:f r6.7<0;1,0>:f
(-f0.0)mac (1) r6.7<1>:f r3.7<0;1,0>:f r8.6<0;1,0>:f
 
mov (1) r16.0<1>:f r2.0<0;1,0>:uw
add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
 
mov (1) acc0.7:f r5.7<0;1,0>:f
mac (1) r5.7<1>:f r4.7<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L7
 
// rotate 180 degree
ROTATE_180_L7:
(-f0.0)mov (1) r16.0<1>:f r2.0<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.5<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.7:f r6.7<0;1,0>:f
(-f0.0)mac (1) r6.7<1>:f r3.7<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) r16.0<1>:f r2.1<0;1,0>:uw
add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
mov (1) acc0.7:f r5.7<0;1,0>:f
mac (1) r5.7<1>:f r4.7<0;1,0>:f r17.0<0;1,0>:f
jmpi (1) END_SRC_BLOCK_ORIG_COMP_L7
 
// rotate 270 degree
ROTATE_270_L7:
(-f0.0)mov (1) r16.0<1>:f r2.1<0;1,0>:uw
(-f0.0)add (1) r17.0<1>:f -r8.6<0;1,0>:f r16.0<0;1,0>:f
(-f0.0)add (1) r17.0<1>:f r17.0<0;1,0>:f -16.0:f
(-f0.0)mov (1) acc0.7:f r6.7<0;1,0>:f
(-f0.0)mac (1) r6.7<1>:f r3.7<0;1,0>:f r17.0<0;1,0>:f
 
mov (1) acc0.7:f r5.7<0;1,0>:f
mac (1) r5.7<1>:f r4.7<0;1,0>:f r8.5<0;1,0>:f
 
END_SRC_BLOCK_ORIG_COMP_L7:
nop
 
 
/drivers/video/i965/shaders/post_processing/gen7/avs.asm
0,0 → 1,19
// Module name: AVS
.kernel AVS
.code
 
#include "VP_Setup.g4a"
#include "Set_Layer_0.g4a"
#include "Set_AVS_Buf_0123_PL2.g4a"
#include "PL2_AVS_Buf_0.g4a"
#include "PL2_AVS_Buf_1.g4a"
#include "PL2_AVS_Buf_2.g4a"
#include "PL2_AVS_Buf_3.g4a"
#include "Save_AVS_NV12.g4a"
#include "EOT.g4a"
 
.end_code
 
.end_kernel
 
// end of DNDI
/drivers/video/i965/shaders/post_processing/gen7/avs.g75b
0,0 → 1,654
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000000d0 },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006ea2 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006204 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000290 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x28800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000280 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2a800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000280 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2c800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000280 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2e800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00200401, 0x238001a5, 0x004500e0, 0x00000000 },
{ 0x00000401, 0x24a001a5, 0x000000e0, 0x00000000 },
{ 0x00000c08, 0x24a43da5, 0x000000e2, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x000f000f },
{ 0x00000801, 0x24a80061, 0x00000000, 0x0007000f },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00800401, 0x23a00231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x44c00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x44d00231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x44c10231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x44d10231, 0x00cf8041, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00800401, 0x23e00231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x44e00231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x44f00231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x44e10231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x44f10231, 0x00cf9041, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00800401, 0x24200231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x45000231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x45100231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x45010231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x45110231, 0x00cf8041, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24800231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24900231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x45200231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x45300231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x45210231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x45310231, 0x00cf9041, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x120a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x0a0a8019 },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/avs.g7b
0,0 → 1,654
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x0000001a },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006ea2 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006204 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000052 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x28800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000050 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2a800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000050 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2c800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000050 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2e800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00200401, 0x238001a5, 0x004500e0, 0x00000000 },
{ 0x00000401, 0x24a001a5, 0x000000e0, 0x00000000 },
{ 0x00000c08, 0x24a43da5, 0x000000e2, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x000f000f },
{ 0x00000801, 0x24a80061, 0x00000000, 0x0007000f },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00800401, 0x23a00231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x44c00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x44d00231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x44c10231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x44d10231, 0x00cf8041, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00800401, 0x23e00231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x44e00231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x44f00231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x44e10231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x44f10231, 0x00cf9041, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00800401, 0x24200231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x45000231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x45100231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x45010231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x45110231, 0x00cf8041, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24800231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24900231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x45200231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x45300231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x45210231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x45310231, 0x00cf9041, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x120a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x0a0a8019 },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/dndi.asm
0,0 → 1,11
// Module name: DNDI
.kernel DNDI
.code
 
#include "NV12_DI_NV12.g4a"
 
.end_code
 
.end_kernel
 
// end of DNDI
/drivers/video/i965/shaders/post_processing/gen7/dndi.g75b
0,0 → 1,46
{ 0x00600001, 0x22400021, 0x008d0000, 0x00000000 },
{ 0x00000401, 0x226801ad, 0x000000e0, 0x00000000 },
{ 0x00000801, 0x227801ad, 0x000000e2, 0x00000000 },
{ 0x02600031, 0x25c00e21, 0x00000240, 0x04ae8003 },
{ 0x00200001, 0x20e0012d, 0x004506fc, 0x00000000 },
{ 0x00600001, 0x22800021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x22a00021, 0x008d06c0, 0x00000000 },
{ 0x00000408, 0x22803da1, 0x000000e0, 0x00010001 },
{ 0x00000c01, 0x228401a1, 0x000000e2, 0x00000000 },
{ 0x00000801, 0x22880061, 0x00000000, 0x00030007 },
{ 0x05600031, 0x20000e24, 0x00000280, 0x040a8021 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000021, 0x008d0000, 0x00000000 },
{ 0x00000408, 0x23003da1, 0x000000e0, 0x00010001 },
{ 0x00000041, 0x24043da0, 0x000000e2, 0x00030003 },
{ 0x00000c08, 0x23043c01, 0x00000404, 0x00020002 },
{ 0x00000801, 0x23080061, 0x00000000, 0x00020007 },
{ 0x00200040, 0x23002421, 0x00450300, 0x00450038 },
{ 0x00000401, 0x23200021, 0x000006e4, 0x00000000 },
{ 0x00200c01, 0x432c0021, 0x004506ec, 0x00000000 },
{ 0x00200801, 0x43280021, 0x004506f4, 0x00000000 },
{ 0x05600031, 0x20000e24, 0x00000300, 0x040a8021 },
{ 0x00600001, 0x23800021, 0x008d0000, 0x00000000 },
{ 0x00000401, 0x238001a5, 0x000000e0, 0x00000000 },
{ 0x00000c01, 0x238401a5, 0x000000e2, 0x00000000 },
{ 0x00000801, 0x23880061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x22400021, 0x008d0380, 0x00000000 },
{ 0x00600001, 0x22e00021, 0x008d0380, 0x00000000 },
{ 0x00600001, 0x22600021, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x22800021, 0x008d05e0, 0x00000000 },
{ 0x00600001, 0x23000021, 0x008d0640, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0660, 0x00000000 },
{ 0x0000040c, 0x23843ca5, 0x00000384, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x0001000f },
{ 0x00800401, 0x42c00231, 0x00ce0601, 0x00000000 },
{ 0x00800801, 0x42c10231, 0x00ce0600, 0x00000000 },
{ 0x00800401, 0x43600231, 0x00ce0681, 0x00000000 },
{ 0x00800801, 0x43610231, 0x00ce0680, 0x00000000 },
{ 0x00600001, 0x22a00021, 0x008d0380, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0380, 0x00000000 },
{ 0x05600031, 0x20000e24, 0x00000240, 0x060a801b },
{ 0x05600031, 0x20000e24, 0x000002e0, 0x060a801e },
{ 0x05600031, 0x20000e24, 0x000002a0, 0x040a801c },
{ 0x05600031, 0x20000e24, 0x00000340, 0x040a801f },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/dndi.g7b
0,0 → 1,46
{ 0x00600001, 0x22400021, 0x008d0000, 0x00000000 },
{ 0x00000401, 0x226801ad, 0x000000e0, 0x00000000 },
{ 0x00000801, 0x227801ad, 0x000000e2, 0x00000000 },
{ 0x02600031, 0x25c00e21, 0x00000240, 0x04ae8003 },
{ 0x00200001, 0x20e0012d, 0x004506fc, 0x00000000 },
{ 0x00600001, 0x22800021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x22a00021, 0x008d06c0, 0x00000000 },
{ 0x00000408, 0x22803da1, 0x000000e0, 0x00010001 },
{ 0x00000c01, 0x228401a1, 0x000000e2, 0x00000000 },
{ 0x00000801, 0x22880061, 0x00000000, 0x00030007 },
{ 0x05600031, 0x20000e24, 0x00000280, 0x040a8021 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000021, 0x008d0000, 0x00000000 },
{ 0x00000408, 0x23003da1, 0x000000e0, 0x00010001 },
{ 0x00000041, 0x24043da0, 0x000000e2, 0x00030003 },
{ 0x00000c08, 0x23043c01, 0x00000404, 0x00020002 },
{ 0x00000801, 0x23080061, 0x00000000, 0x00020007 },
{ 0x00200040, 0x23002421, 0x00450300, 0x00450038 },
{ 0x00000401, 0x23200021, 0x000006e4, 0x00000000 },
{ 0x00200c01, 0x432c0021, 0x004506ec, 0x00000000 },
{ 0x00200801, 0x43280021, 0x004506f4, 0x00000000 },
{ 0x05600031, 0x20000e24, 0x00000300, 0x040a8021 },
{ 0x00600001, 0x23800021, 0x008d0000, 0x00000000 },
{ 0x00000401, 0x238001a5, 0x000000e0, 0x00000000 },
{ 0x00000c01, 0x238401a5, 0x000000e2, 0x00000000 },
{ 0x00000801, 0x23880061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x22400021, 0x008d0380, 0x00000000 },
{ 0x00600001, 0x22e00021, 0x008d0380, 0x00000000 },
{ 0x00600001, 0x22600021, 0x008d05c0, 0x00000000 },
{ 0x00600001, 0x22800021, 0x008d05e0, 0x00000000 },
{ 0x00600001, 0x23000021, 0x008d0640, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0660, 0x00000000 },
{ 0x0000040c, 0x23843ca5, 0x00000384, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x0001000f },
{ 0x00800401, 0x42c00231, 0x00ce0601, 0x00000000 },
{ 0x00800801, 0x42c10231, 0x00ce0600, 0x00000000 },
{ 0x00800401, 0x43600231, 0x00ce0681, 0x00000000 },
{ 0x00800801, 0x43610231, 0x00ce0680, 0x00000000 },
{ 0x00600001, 0x22a00021, 0x008d0380, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0380, 0x00000000 },
{ 0x05600031, 0x20000e24, 0x00000240, 0x060a801b },
{ 0x05600031, 0x20000e24, 0x000002e0, 0x060a801e },
{ 0x05600031, 0x20000e24, 0x000002a0, 0x040a801c },
{ 0x05600031, 0x20000e24, 0x00000340, 0x040a801f },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/nv12_dn_nv12.asm
0,0 → 1,5
// Module name: DN
 
#include "NV12_DN_NV12.g4a"
 
// end of DNDI
/drivers/video/i965/shaders/post_processing/gen7/nv12_dn_nv12.g75b
0,0 → 1,40
{ 0x00600001, 0x22400021, 0x008d0000, 0x00000000 },
{ 0x00000401, 0x226801ad, 0x000000e0, 0x00000000 },
{ 0x00000801, 0x227801ad, 0x000000e2, 0x00000000 },
{ 0x02600031, 0x25c00e21, 0x00000240, 0x045e8003 },
{ 0x00200001, 0x20e0012d, 0x0045065c, 0x00000000 },
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00200001, 0x22e00021, 0x00450640, 0x00000000 },
{ 0x00200008, 0x23603da1, 0x004500e0, 0x00020002 },
{ 0x00000440, 0x23602421, 0x00000360, 0x00000038 },
{ 0x00000801, 0x23680061, 0x00000000, 0x00010003 },
{ 0x00600001, 0x22c00021, 0x008d0360, 0x00000000 },
{ 0x05600031, 0x20000e24, 0x000002c0, 0x040a8021 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000021, 0x008d0000, 0x00000000 },
{ 0x00000408, 0x23003da1, 0x000000e0, 0x00010001 },
{ 0x00000041, 0x24043da0, 0x000000e2, 0x00030003 },
{ 0x00000c08, 0x23043c01, 0x00000404, 0x00020002 },
{ 0x00000801, 0x23080061, 0x00000000, 0x00050003 },
{ 0x00200040, 0x23002421, 0x00450300, 0x00450038 },
{ 0x00000401, 0x23200231, 0x00000648, 0x00000000 },
{ 0x00000c01, 0x23260129, 0x00000656, 0x00000000 },
{ 0x00200c01, 0x23280129, 0x00450658, 0x00000000 },
{ 0x00000c01, 0x23320129, 0x00000650, 0x00000000 },
{ 0x00200801, 0x23340129, 0x00450652, 0x00000000 },
{ 0x05600031, 0x20000e24, 0x00000300, 0x040a8021 },
{ 0x00200040, 0x236035a5, 0x004500e0, 0x00450088 },
{ 0x0000040c, 0x23643ca5, 0x00000364, 0x00010001 },
{ 0x00000801, 0x23680061, 0x00000000, 0x0004000f },
{ 0x00600001, 0x24800021, 0x008d0360, 0x00000000 },
{ 0x04600031, 0x27400e21, 0x00000480, 0x02390001 },
{ 0x00000001, 0x24880061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x25a00021, 0x008d0000, 0x00000000 },
{ 0x00200401, 0x25a001a1, 0x004500e0, 0x00000000 },
{ 0x00000801, 0x25a80061, 0x00000000, 0x0007000f },
{ 0x05600031, 0x20000e24, 0x000005a0, 0x0a0a8018 },
{ 0x00600001, 0x24a00021, 0x008d0740, 0x00000000 },
{ 0x00600001, 0x24c00021, 0x008d0760, 0x00000000 },
{ 0x05600031, 0x20000e24, 0x00000480, 0x060a8019 },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/nv12_dn_nv12.g7b
0,0 → 1,40
{ 0x00600001, 0x22400021, 0x008d0000, 0x00000000 },
{ 0x00000401, 0x226801ad, 0x000000e0, 0x00000000 },
{ 0x00000801, 0x227801ad, 0x000000e2, 0x00000000 },
{ 0x02600031, 0x25c00e21, 0x00000240, 0x045e8003 },
{ 0x00200001, 0x20e0012d, 0x0045065c, 0x00000000 },
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00200001, 0x22e00021, 0x00450640, 0x00000000 },
{ 0x00200008, 0x23603da1, 0x004500e0, 0x00020002 },
{ 0x00000440, 0x23602421, 0x00000360, 0x00000038 },
{ 0x00000801, 0x23680061, 0x00000000, 0x00010003 },
{ 0x00600001, 0x22c00021, 0x008d0360, 0x00000000 },
{ 0x05600031, 0x20000e24, 0x000002c0, 0x040a8021 },
{ 0x00600001, 0x23200061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x23000021, 0x008d0000, 0x00000000 },
{ 0x00000408, 0x23003da1, 0x000000e0, 0x00010001 },
{ 0x00000041, 0x24043da0, 0x000000e2, 0x00030003 },
{ 0x00000c08, 0x23043c01, 0x00000404, 0x00020002 },
{ 0x00000801, 0x23080061, 0x00000000, 0x00050003 },
{ 0x00200040, 0x23002421, 0x00450300, 0x00450038 },
{ 0x00000401, 0x23200231, 0x00000648, 0x00000000 },
{ 0x00000c01, 0x23260129, 0x00000656, 0x00000000 },
{ 0x00200c01, 0x23280129, 0x00450658, 0x00000000 },
{ 0x00000c01, 0x23320129, 0x00000650, 0x00000000 },
{ 0x00200801, 0x23340129, 0x00450652, 0x00000000 },
{ 0x05600031, 0x20000e24, 0x00000300, 0x040a8021 },
{ 0x00200040, 0x236035a5, 0x004500e0, 0x00450088 },
{ 0x0000040c, 0x23643ca5, 0x00000364, 0x00010001 },
{ 0x00000801, 0x23680061, 0x00000000, 0x0004000f },
{ 0x00600001, 0x24800021, 0x008d0360, 0x00000000 },
{ 0x04600031, 0x27400e21, 0x00000480, 0x02390001 },
{ 0x00000001, 0x24880061, 0x00000000, 0x0003000f },
{ 0x00600001, 0x25a00021, 0x008d0000, 0x00000000 },
{ 0x00200401, 0x25a001a1, 0x004500e0, 0x00000000 },
{ 0x00000801, 0x25a80061, 0x00000000, 0x0007000f },
{ 0x05600031, 0x20000e24, 0x000005a0, 0x0a0a8018 },
{ 0x00600001, 0x24a00021, 0x008d0740, 0x00000000 },
{ 0x00600001, 0x24c00021, 0x008d0760, 0x00000000 },
{ 0x05600031, 0x20000e24, 0x00000480, 0x060a8019 },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pa_to_pl2.asm
0,0 → 1,17
// Module name: AVS
.kernel PA_TO_pl2
.code
 
#include "VP_Setup.g4a"
#include "Set_Layer_0.g4a"
#include "Set_AVS_Buf_0123_VYUA.g4a"
#include "PA_AVS_Buf_0.g4a"
#include "PA_AVS_Buf_1.g4a"
#include "PA_AVS_Buf_2.g4a"
#include "PA_AVS_Buf_3.g4a"
#include "Save_AVS_NV12.g4a"
#include "EOT.g4a"
 
.end_code
 
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/pa_to_pl2.g75b
0,0 → 1,634
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000000d0 },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x000062ea },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006420 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000240 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000230 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000230 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000230 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00200401, 0x238001a5, 0x004500e0, 0x00000000 },
{ 0x00000401, 0x24a001a5, 0x000000e0, 0x00000000 },
{ 0x00000c08, 0x24a43da5, 0x000000e2, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x000f000f },
{ 0x00000801, 0x24a80061, 0x00000000, 0x0007000f },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00800401, 0x23a00231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x44c00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x44d00231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x44c10231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x44d10231, 0x00cf8041, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00800401, 0x23e00231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x44e00231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x44f00231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x44e10231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x44f10231, 0x00cf9041, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00800401, 0x24200231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x45000231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x45100231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x45010231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x45110231, 0x00cf8041, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24800231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24900231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x45200231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x45300231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x45210231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x45310231, 0x00cf9041, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x120a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x0a0a8019 },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pa_to_pl2.g7b
0,0 → 1,634
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x0000001a },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x000062ea },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006420 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000048 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000046 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000046 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000046 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00200401, 0x238001a5, 0x004500e0, 0x00000000 },
{ 0x00000401, 0x24a001a5, 0x000000e0, 0x00000000 },
{ 0x00000c08, 0x24a43da5, 0x000000e2, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x000f000f },
{ 0x00000801, 0x24a80061, 0x00000000, 0x0007000f },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00800401, 0x23a00231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x44c00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x44d00231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x44c10231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x44d10231, 0x00cf8041, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00800401, 0x23e00231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x44e00231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x44f00231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x44e10231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x44f10231, 0x00cf9041, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00800401, 0x24200231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x45000231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x45100231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x45010231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x45110231, 0x00cf8041, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24800231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24900231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x45200231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x45300231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x45210231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x45310231, 0x00cf9041, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x120a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x0a0a8019 },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pa_to_pl3.asm
0,0 → 1,17
// Module name: AVS
.kernel PA_TO_PL3
.code
 
#include "VP_Setup.g4a"
#include "Set_Layer_0.g4a"
#include "Set_AVS_Buf_0123_VYUA.g4a"
#include "PA_AVS_Buf_0.g4a"
#include "PA_AVS_Buf_1.g4a"
#include "PA_AVS_Buf_2.g4a"
#include "PA_AVS_Buf_3.g4a"
#include "Save_AVS_PL3.g4a"
#include "EOT.g4a"
 
.end_code
 
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/pa_to_pl3.g75b
0,0 → 1,587
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000000d0 },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x000062ea },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006420 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000240 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000230 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000230 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000230 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x25c00021, 0x008d0360, 0x00000000 },
{ 0x00200401, 0x238001a5, 0x004500e0, 0x00000000 },
{ 0x00200408, 0x24a03da5, 0x004500e0, 0x00010001 },
{ 0x00200408, 0x25c03da5, 0x004500e0, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x000f000f },
{ 0x00000801, 0x24a80061, 0x00000000, 0x00070007 },
{ 0x00000801, 0x25c80061, 0x00000000, 0x00070007 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x80600040, 0xc8002d29, 0x00ae8800, 0x00800080 },
{ 0x80600040, 0xc8402d29, 0x00ae8840, 0x00800080 },
{ 0x80600040, 0xc0002d29, 0x00ae8000, 0x00800080 },
{ 0x80600040, 0xc0402d29, 0x00ae8040, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x80600040, 0xd8002d29, 0x00ae9800, 0x00800080 },
{ 0x80600040, 0xd8402d29, 0x00ae9840, 0x00800080 },
{ 0x80600040, 0xd0002d29, 0x00ae9000, 0x00800080 },
{ 0x80600040, 0xd0402d29, 0x00ae9040, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x80600040, 0xc8002d29, 0x00ae8800, 0x00800080 },
{ 0x80600040, 0xc8402d29, 0x00ae8840, 0x00800080 },
{ 0x80600040, 0xc0002d29, 0x00ae8000, 0x00800080 },
{ 0x80600040, 0xc0402d29, 0x00ae8040, 0x00800080 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x80600040, 0xd8002d29, 0x00ae9800, 0x00800080 },
{ 0x80600040, 0xd8402d29, 0x00ae9840, 0x00800080 },
{ 0x80600040, 0xd0002d29, 0x00ae9000, 0x00800080 },
{ 0x80600040, 0xd0402d29, 0x00ae9040, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00800401, 0x23a00231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x24c00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x24c80231, 0x00cf8841, 0x00000000 },
{ 0x00600401, 0x25e00231, 0x00cf8001, 0x00000000 },
{ 0x00600c01, 0x25e80231, 0x00cf8041, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00800401, 0x23e00231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00d29461, 0x00000000 },
{ 0x00600c01, 0x24d00231, 0x00cf9801, 0x00000000 },
{ 0x00600801, 0x24d80231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x25f00231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x25f80231, 0x00cf9041, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00800401, 0x24200231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x24e00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x24e80231, 0x00cf8841, 0x00000000 },
{ 0x00600401, 0x26000231, 0x00cf8001, 0x00000000 },
{ 0x00600c01, 0x26080231, 0x00cf8041, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24800231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24900231, 0x00d29461, 0x00000000 },
{ 0x00600c01, 0x24f00231, 0x00cf9801, 0x00000000 },
{ 0x00600801, 0x24f80231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x26100231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x26180231, 0x00cf9041, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x120a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8019 },
{ 0x05000031, 0x20000e24, 0x000005c0, 0x060a801a },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pa_to_pl3.g7b
0,0 → 1,587
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x0000001a },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x000062ea },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006420 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000048 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000046 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000046 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000046 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x050eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x00000000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x25c00021, 0x008d0360, 0x00000000 },
{ 0x00200401, 0x238001a5, 0x004500e0, 0x00000000 },
{ 0x00200408, 0x24a03da5, 0x004500e0, 0x00010001 },
{ 0x00200408, 0x25c03da5, 0x004500e0, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x000f000f },
{ 0x00000801, 0x24a80061, 0x00000000, 0x00070007 },
{ 0x00000801, 0x25c80061, 0x00000000, 0x00070007 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x80600040, 0xc8002d29, 0x00ae8800, 0x00800080 },
{ 0x80600040, 0xc8402d29, 0x00ae8840, 0x00800080 },
{ 0x80600040, 0xc0002d29, 0x00ae8000, 0x00800080 },
{ 0x80600040, 0xc0402d29, 0x00ae8040, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x80600040, 0xd8002d29, 0x00ae9800, 0x00800080 },
{ 0x80600040, 0xd8402d29, 0x00ae9840, 0x00800080 },
{ 0x80600040, 0xd0002d29, 0x00ae9000, 0x00800080 },
{ 0x80600040, 0xd0402d29, 0x00ae9040, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x80600040, 0xc8002d29, 0x00ae8800, 0x00800080 },
{ 0x80600040, 0xc8402d29, 0x00ae8840, 0x00800080 },
{ 0x80600040, 0xc0002d29, 0x00ae8000, 0x00800080 },
{ 0x80600040, 0xc0402d29, 0x00ae8040, 0x00800080 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x80600040, 0xd8002d29, 0x00ae9800, 0x00800080 },
{ 0x80600040, 0xd8402d29, 0x00ae9840, 0x00800080 },
{ 0x80600040, 0xd0002d29, 0x00ae9000, 0x00800080 },
{ 0x80600040, 0xd0402d29, 0x00ae9040, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00800401, 0x23a00231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x24c00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x24c80231, 0x00cf8841, 0x00000000 },
{ 0x00600401, 0x25e00231, 0x00cf8001, 0x00000000 },
{ 0x00600c01, 0x25e80231, 0x00cf8041, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00800401, 0x23e00231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00d29461, 0x00000000 },
{ 0x00600c01, 0x24d00231, 0x00cf9801, 0x00000000 },
{ 0x00600801, 0x24d80231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x25f00231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x25f80231, 0x00cf9041, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00800401, 0x24200231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x24e00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x24e80231, 0x00cf8841, 0x00000000 },
{ 0x00600401, 0x26000231, 0x00cf8001, 0x00000000 },
{ 0x00600c01, 0x26080231, 0x00cf8041, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24800231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24900231, 0x00d29461, 0x00000000 },
{ 0x00600c01, 0x24f00231, 0x00cf9801, 0x00000000 },
{ 0x00600801, 0x24f80231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x26100231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x26180231, 0x00cf9041, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x120a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8019 },
{ 0x05000031, 0x20000e24, 0x000005c0, 0x060a801a },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pl2_to_pa.asm
0,0 → 1,17
// Module name: AVS
.kernel PL2_TO_PA
.code
 
#include "VP_Setup.g4a"
#include "Set_Layer_0.g4a"
#include "Set_AVS_Buf_0123_PL2.g4a"
#include "PL2_AVS_Buf_0.g4a"
#include "PL2_AVS_Buf_1.g4a"
#include "PL2_AVS_Buf_2.g4a"
#include "PL2_AVS_Buf_3.g4a"
#include "Save_AVS_PA.g4a"
#include "EOT.g4a"
 
.end_code
 
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/pl2_to_pa.g75b
0,0 → 1,697
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000000d0 },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006ea2 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006204 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000290 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x28800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000280 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2a800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000280 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2c800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000280 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2e800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082e2c, 0x0069005c, 0x03a003a0 },
{ 0x00000409, 0x23603da5, 0x000000e0, 0x00010001 },
{ 0x00000c01, 0x236401a5, 0x000000e2, 0x00000000 },
{ 0x00000801, 0x23680061, 0x00000000, 0x0001001f },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x02000200 },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x06000600 },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x08000800 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x00000002 },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x02000200 },
{ 0x00000040, 0x23841ca5, 0x00000364, 0x00000004 },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x00000006 },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00000040, 0x23841ca5, 0x00000364, 0x00000008 },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x0000000a },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x06000600 },
{ 0x00000040, 0x23841ca5, 0x00000364, 0x0000000c },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x0000000e },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pl2_to_pa.g7b
0,0 → 1,697
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x0000001a },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006ea2 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006204 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000052 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x28800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000050 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2a800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000050 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2c800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000050 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2e800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082e2c, 0x0069005c, 0x03a003a0 },
{ 0x00000409, 0x23603da5, 0x000000e0, 0x00010001 },
{ 0x00000c01, 0x236401a5, 0x000000e2, 0x00000000 },
{ 0x00000801, 0x23680061, 0x00000000, 0x0001001f },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x02000200 },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x06000600 },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x08000800 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x00000002 },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x02000200 },
{ 0x00000040, 0x23841ca5, 0x00000364, 0x00000004 },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x00000006 },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00000040, 0x23841ca5, 0x00000364, 0x00000008 },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x0000000a },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x06000600 },
{ 0x00000040, 0x23841ca5, 0x00000364, 0x0000000c },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x0000000e },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pl2_to_pl2.asm
0,0 → 1,17
// Module name: AVS
.kernel PL2_TO_PL2
.code
 
#include "VP_Setup.g4a"
#include "Set_Layer_0.g4a"
#include "Set_AVS_Buf_0123_PL2.g4a"
#include "PL2_AVS_Buf_0.g4a"
#include "PL2_AVS_Buf_1.g4a"
#include "PL2_AVS_Buf_2.g4a"
#include "PL2_AVS_Buf_3.g4a"
#include "Save_AVS_NV12.g4a"
#include "EOT.g4a"
 
.end_code
 
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/pl2_to_pl2.g75b
0,0 → 1,654
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000000d0 },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006ea2 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006204 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000290 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x28800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000280 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2a800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000280 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2c800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000280 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2e800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00200401, 0x238001a5, 0x004500e0, 0x00000000 },
{ 0x00000401, 0x24a001a5, 0x000000e0, 0x00000000 },
{ 0x00000c08, 0x24a43da5, 0x000000e2, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x000f000f },
{ 0x00000801, 0x24a80061, 0x00000000, 0x0007000f },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00800401, 0x23a00231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x44c00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x44d00231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x44c10231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x44d10231, 0x00cf8041, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00800401, 0x23e00231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x44e00231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x44f00231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x44e10231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x44f10231, 0x00cf9041, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00800401, 0x24200231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x45000231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x45100231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x45010231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x45110231, 0x00cf8041, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24800231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24900231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x45200231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x45300231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x45210231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x45310231, 0x00cf9041, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x120a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x0a0a8019 },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pl2_to_pl2.g7b
0,0 → 1,654
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x0000001a },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006ea2 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006204 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000052 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x28800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000050 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2a800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000050 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2c800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000050 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2e800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00200401, 0x238001a5, 0x004500e0, 0x00000000 },
{ 0x00000401, 0x24a001a5, 0x000000e0, 0x00000000 },
{ 0x00000c08, 0x24a43da5, 0x000000e2, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x000f000f },
{ 0x00000801, 0x24a80061, 0x00000000, 0x0007000f },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00800401, 0x23a00231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x44c00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x44d00231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x44c10231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x44d10231, 0x00cf8041, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00800401, 0x23e00231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x44e00231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x44f00231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x44e10231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x44f10231, 0x00cf9041, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00800401, 0x24200231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x45000231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x45100231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x45010231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x45110231, 0x00cf8041, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24800231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24900231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x45200231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x45300231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x45210231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x45310231, 0x00cf9041, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x120a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x0a0a8019 },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pl2_to_pl3.asm
0,0 → 1,17
// Module name: AVS
.kernel PL2_TO_PL3
.code
 
#include "VP_Setup.g4a"
#include "Set_Layer_0.g4a"
#include "Set_AVS_Buf_0123_PL2.g4a"
#include "PL2_AVS_Buf_0.g4a"
#include "PL2_AVS_Buf_1.g4a"
#include "PL2_AVS_Buf_2.g4a"
#include "PL2_AVS_Buf_3.g4a"
#include "Save_AVS_PL3.g4a"
#include "EOT.g4a"
 
.end_code
 
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/pl2_to_pl3.g75b
0,0 → 1,607
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000000d0 },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006ea2 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006204 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000290 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x28800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000280 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2a800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000280 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2c800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000280 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2e800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x25c00021, 0x008d0360, 0x00000000 },
{ 0x00200401, 0x238001a5, 0x004500e0, 0x00000000 },
{ 0x00200408, 0x24a03da5, 0x004500e0, 0x00010001 },
{ 0x00200408, 0x25c03da5, 0x004500e0, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x000f000f },
{ 0x00000801, 0x24a80061, 0x00000000, 0x00070007 },
{ 0x00000801, 0x25c80061, 0x00000000, 0x00070007 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x80600040, 0xc8002d29, 0x00ae8800, 0x00800080 },
{ 0x80600040, 0xc8402d29, 0x00ae8840, 0x00800080 },
{ 0x80600040, 0xc0002d29, 0x00ae8000, 0x00800080 },
{ 0x80600040, 0xc0402d29, 0x00ae8040, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x80600040, 0xd8002d29, 0x00ae9800, 0x00800080 },
{ 0x80600040, 0xd8402d29, 0x00ae9840, 0x00800080 },
{ 0x80600040, 0xd0002d29, 0x00ae9000, 0x00800080 },
{ 0x80600040, 0xd0402d29, 0x00ae9040, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x80600040, 0xc8002d29, 0x00ae8800, 0x00800080 },
{ 0x80600040, 0xc8402d29, 0x00ae8840, 0x00800080 },
{ 0x80600040, 0xc0002d29, 0x00ae8000, 0x00800080 },
{ 0x80600040, 0xc0402d29, 0x00ae8040, 0x00800080 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x80600040, 0xd8002d29, 0x00ae9800, 0x00800080 },
{ 0x80600040, 0xd8402d29, 0x00ae9840, 0x00800080 },
{ 0x80600040, 0xd0002d29, 0x00ae9000, 0x00800080 },
{ 0x80600040, 0xd0402d29, 0x00ae9040, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00800401, 0x23a00231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x24c00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x24c80231, 0x00cf8841, 0x00000000 },
{ 0x00600401, 0x25e00231, 0x00cf8001, 0x00000000 },
{ 0x00600c01, 0x25e80231, 0x00cf8041, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00800401, 0x23e00231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00d29461, 0x00000000 },
{ 0x00600c01, 0x24d00231, 0x00cf9801, 0x00000000 },
{ 0x00600801, 0x24d80231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x25f00231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x25f80231, 0x00cf9041, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00800401, 0x24200231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x24e00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x24e80231, 0x00cf8841, 0x00000000 },
{ 0x00600401, 0x26000231, 0x00cf8001, 0x00000000 },
{ 0x00600c01, 0x26080231, 0x00cf8041, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24800231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24900231, 0x00d29461, 0x00000000 },
{ 0x00600c01, 0x24f00231, 0x00cf9801, 0x00000000 },
{ 0x00600801, 0x24f80231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x26100231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x26180231, 0x00cf9041, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x120a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8019 },
{ 0x05000031, 0x20000e24, 0x000005c0, 0x060a801a },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pl2_to_pl3.g7b
0,0 → 1,607
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x0000001a },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006ea2 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006204 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000052 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x28800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000050 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2a800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000050 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2c800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000050 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x048eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000a000 },
{ 0x02000031, 0x2e800229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x25c00021, 0x008d0360, 0x00000000 },
{ 0x00200401, 0x238001a5, 0x004500e0, 0x00000000 },
{ 0x00200408, 0x24a03da5, 0x004500e0, 0x00010001 },
{ 0x00200408, 0x25c03da5, 0x004500e0, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x000f000f },
{ 0x00000801, 0x24a80061, 0x00000000, 0x00070007 },
{ 0x00000801, 0x25c80061, 0x00000000, 0x00070007 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x80600040, 0xc8002d29, 0x00ae8800, 0x00800080 },
{ 0x80600040, 0xc8402d29, 0x00ae8840, 0x00800080 },
{ 0x80600040, 0xc0002d29, 0x00ae8000, 0x00800080 },
{ 0x80600040, 0xc0402d29, 0x00ae8040, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x80600040, 0xd8002d29, 0x00ae9800, 0x00800080 },
{ 0x80600040, 0xd8402d29, 0x00ae9840, 0x00800080 },
{ 0x80600040, 0xd0002d29, 0x00ae9000, 0x00800080 },
{ 0x80600040, 0xd0402d29, 0x00ae9040, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x80600040, 0xc8002d29, 0x00ae8800, 0x00800080 },
{ 0x80600040, 0xc8402d29, 0x00ae8840, 0x00800080 },
{ 0x80600040, 0xc0002d29, 0x00ae8000, 0x00800080 },
{ 0x80600040, 0xc0402d29, 0x00ae8040, 0x00800080 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x80600040, 0xd8002d29, 0x00ae9800, 0x00800080 },
{ 0x80600040, 0xd8402d29, 0x00ae9840, 0x00800080 },
{ 0x80600040, 0xd0002d29, 0x00ae9000, 0x00800080 },
{ 0x80600040, 0xd0402d29, 0x00ae9040, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00800401, 0x23a00231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x24c00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x24c80231, 0x00cf8841, 0x00000000 },
{ 0x00600401, 0x25e00231, 0x00cf8001, 0x00000000 },
{ 0x00600c01, 0x25e80231, 0x00cf8041, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00800401, 0x23e00231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00d29461, 0x00000000 },
{ 0x00600c01, 0x24d00231, 0x00cf9801, 0x00000000 },
{ 0x00600801, 0x24d80231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x25f00231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x25f80231, 0x00cf9041, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00800401, 0x24200231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x24e00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x24e80231, 0x00cf8841, 0x00000000 },
{ 0x00600401, 0x26000231, 0x00cf8001, 0x00000000 },
{ 0x00600c01, 0x26080231, 0x00cf8041, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24800231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24900231, 0x00d29461, 0x00000000 },
{ 0x00600c01, 0x24f00231, 0x00cf9801, 0x00000000 },
{ 0x00600801, 0x24f80231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x26100231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x26180231, 0x00cf9041, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x120a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8019 },
{ 0x05000031, 0x20000e24, 0x000005c0, 0x060a801a },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pl3_to_pa.asm
0,0 → 1,17
// Module name: AVS
.kernel PL3_TO_PA
.code
 
#include "VP_Setup.g4a"
#include "Set_Layer_0.g4a"
#include "Set_AVS_Buf_0123_PL3.g4a"
#include "PL3_AVS_Buf_0.g4a"
#include "PL3_AVS_Buf_1.g4a"
#include "PL3_AVS_Buf_2.g4a"
#include "PL3_AVS_Buf_3.g4a"
#include "Save_AVS_PA.g4a"
#include "EOT.g4a"
 
.end_code
 
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/pl3_to_pa.g75b
0,0 → 1,709
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000000d0 },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006ea2 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006204 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000002c0 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x28800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x29000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000002b0 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2a800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2b000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000002b0 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2c800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2d000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000002b0 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2e800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2f000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082e2c, 0x0069005c, 0x03a003a0 },
{ 0x00000409, 0x23603da5, 0x000000e0, 0x00010001 },
{ 0x00000c01, 0x236401a5, 0x000000e2, 0x00000000 },
{ 0x00000801, 0x23680061, 0x00000000, 0x0001001f },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x02000200 },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x06000600 },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x08000800 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x00000002 },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x02000200 },
{ 0x00000040, 0x23841ca5, 0x00000364, 0x00000004 },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x00000006 },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00000040, 0x23841ca5, 0x00000364, 0x00000008 },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x0000000a },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x06000600 },
{ 0x00000040, 0x23841ca5, 0x00000364, 0x0000000c },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x0000000e },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pl3_to_pa.g7b
0,0 → 1,709
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x0000001a },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006ea2 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006204 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000058 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x28800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x29000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000056 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2a800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2b000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000056 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2c800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2d000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000056 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2e800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2f000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082e2c, 0x0069005c, 0x03a003a0 },
{ 0x00000409, 0x23603da5, 0x000000e0, 0x00010001 },
{ 0x00000c01, 0x236401a5, 0x000000e2, 0x00000000 },
{ 0x00000801, 0x23680061, 0x00000000, 0x0001001f },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x02000200 },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x06000600 },
{ 0x80400040, 0xc0002d29, 0x008a8000, 0x00800080 },
{ 0x80400040, 0xc0202d29, 0x008a8020, 0x00800080 },
{ 0x80400040, 0xc0402d29, 0x008a8040, 0x00800080 },
{ 0x80400040, 0xc0602d29, 0x008a8060, 0x00800080 },
{ 0x80600040, 0xa4002d29, 0x008d8400, 0x00800080 },
{ 0x80600040, 0xa4202d29, 0x008d8420, 0x00800080 },
{ 0x80600040, 0xa4402d29, 0x008d8440, 0x00800080 },
{ 0x80600040, 0xa4602d29, 0x008d8460, 0x00800080 },
{ 0x80400040, 0xc8002d29, 0x008a8800, 0x00800080 },
{ 0x80400040, 0xc8202d29, 0x008a8820, 0x00800080 },
{ 0x80400040, 0xc8402d29, 0x008a8840, 0x00800080 },
{ 0x80400040, 0xc8602d29, 0x008a8860, 0x00800080 },
{ 0x80400040, 0xc0102d29, 0x008a8010, 0x00800080 },
{ 0x80400040, 0xc0302d29, 0x008a8030, 0x00800080 },
{ 0x80400040, 0xc0502d29, 0x008a8050, 0x00800080 },
{ 0x80400040, 0xc0702d29, 0x008a8070, 0x00800080 },
{ 0x80600040, 0xa4102d29, 0x008d8410, 0x00800080 },
{ 0x80600040, 0xa4302d29, 0x008d8430, 0x00800080 },
{ 0x80600040, 0xa4502d29, 0x008d8450, 0x00800080 },
{ 0x80600040, 0xa4702d29, 0x008d8470, 0x00800080 },
{ 0x80400040, 0xc8102d29, 0x008a8810, 0x00800080 },
{ 0x80400040, 0xc8302d29, 0x008a8830, 0x00800080 },
{ 0x80400040, 0xc8502d29, 0x008a8850, 0x00800080 },
{ 0x80400040, 0xc8702d29, 0x008a8870, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x08000800 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x00000002 },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x02000200 },
{ 0x00000040, 0x23841ca5, 0x00000364, 0x00000004 },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x00000006 },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00000040, 0x23841ca5, 0x00000364, 0x00000008 },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x0000000a },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x06000600 },
{ 0x00000040, 0x23841ca5, 0x00000364, 0x0000000c },
{ 0x00000040, 0x24a41ca5, 0x00000364, 0x0000000e },
{ 0x00600401, 0xf8000231, 0x00cf8001, 0x00000000 },
{ 0x00600401, 0xf8200231, 0x00cf8021, 0x00000000 },
{ 0x00800c01, 0xd0000231, 0x00d28401, 0x00000000 },
{ 0x00800c01, 0xd0200231, 0x00d28421, 0x00000000 },
{ 0x00600801, 0xf4000231, 0x00cf8801, 0x00000000 },
{ 0x00600801, 0xf4200231, 0x00cf8821, 0x00000000 },
{ 0x00600401, 0xf9200231, 0x00cf8041, 0x00000000 },
{ 0x00600401, 0xf9400231, 0x00cf8061, 0x00000000 },
{ 0x00800c01, 0xd1200231, 0x00d28441, 0x00000000 },
{ 0x00800c01, 0xd1400231, 0x00d28461, 0x00000000 },
{ 0x00600801, 0xf5200231, 0x00cf8841, 0x00000000 },
{ 0x00600801, 0xf5400231, 0x00cf8861, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x060a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8018 },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pl3_to_pl2.asm
0,0 → 1,17
// Module name: AVS
.kernel PL3_TO_PL2
.code
 
#include "VP_Setup.g4a"
#include "Set_Layer_0.g4a"
#include "Set_AVS_Buf_0123_PL3.g4a"
#include "PL3_AVS_Buf_0.g4a"
#include "PL3_AVS_Buf_1.g4a"
#include "PL3_AVS_Buf_2.g4a"
#include "PL3_AVS_Buf_3.g4a"
#include "Save_AVS_NV12.g4a"
#include "EOT.g4a"
 
.end_code
 
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/pl3_to_pl2.g75b
0,0 → 1,666
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000000d0 },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006ea2 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006204 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000002c0 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x28800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x29000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000002b0 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2a800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2b000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000002b0 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2c800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2d000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000002b0 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2e800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2f000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00200401, 0x238001a5, 0x004500e0, 0x00000000 },
{ 0x00000401, 0x24a001a5, 0x000000e0, 0x00000000 },
{ 0x00000c08, 0x24a43da5, 0x000000e2, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x000f000f },
{ 0x00000801, 0x24a80061, 0x00000000, 0x0007000f },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00800401, 0x23a00231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x44c00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x44d00231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x44c10231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x44d10231, 0x00cf8041, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00800401, 0x23e00231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x44e00231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x44f00231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x44e10231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x44f10231, 0x00cf9041, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00800401, 0x24200231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x45000231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x45100231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x45010231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x45110231, 0x00cf8041, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24800231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24900231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x45200231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x45300231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x45210231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x45310231, 0x00cf9041, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x120a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x0a0a8019 },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pl3_to_pl2.g7b
0,0 → 1,666
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x0000001a },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006ea2 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006204 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000058 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x28800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x29000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000056 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2a800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2b000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000056 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2c800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2d000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000056 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2e800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2f000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00200401, 0x238001a5, 0x004500e0, 0x00000000 },
{ 0x00000401, 0x24a001a5, 0x000000e0, 0x00000000 },
{ 0x00000c08, 0x24a43da5, 0x000000e2, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x000f000f },
{ 0x00000801, 0x24a80061, 0x00000000, 0x0007000f },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae8800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae8820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae8840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae8860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xc8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xc8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae8000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae8020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae8040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae8060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xc0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xc0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x00600008, 0x45c03d29, 0x00ae9800, 0x00010001 },
{ 0x00600008, 0x45e03d29, 0x00ae9820, 0x00010001 },
{ 0x00600008, 0x46003d29, 0x00ae9840, 0x00010001 },
{ 0x00600008, 0x46203d29, 0x00ae9860, 0x00010001 },
{ 0x00600040, 0x45c02529, 0x00ae05c0, 0x00ae05e0 },
{ 0x80600040, 0xd8002d29, 0x00ae05c0, 0x00800080 },
{ 0x00600040, 0x46002529, 0x00ae0600, 0x00ae0620 },
{ 0x80600040, 0xd8402d29, 0x00ae0600, 0x00800080 },
{ 0x00600008, 0x46403d29, 0x00ae9000, 0x00010001 },
{ 0x00600008, 0x46603d29, 0x00ae9020, 0x00010001 },
{ 0x00600008, 0x46803d29, 0x00ae9040, 0x00010001 },
{ 0x00600008, 0x46a03d29, 0x00ae9060, 0x00010001 },
{ 0x00600040, 0x46402529, 0x00ae0640, 0x00ae0660 },
{ 0x80600040, 0xd0002d29, 0x00ae0640, 0x00800080 },
{ 0x00600040, 0x46802529, 0x00ae0680, 0x00ae06a0 },
{ 0x80600040, 0xd0402d29, 0x00ae0680, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00800401, 0x23a00231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x44c00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x44d00231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x44c10231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x44d10231, 0x00cf8041, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00800401, 0x23e00231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x44e00231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x44f00231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x44e10231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x44f10231, 0x00cf9041, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00800401, 0x24200231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x45000231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x45100231, 0x00cf8841, 0x00000000 },
{ 0x00600c01, 0x45010231, 0x00cf8001, 0x00000000 },
{ 0x00600801, 0x45110231, 0x00cf8041, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24800231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24900231, 0x00d29461, 0x00000000 },
{ 0x00600401, 0x45200231, 0x00cf9801, 0x00000000 },
{ 0x00600c01, 0x45300231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x45210231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x45310231, 0x00cf9041, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x120a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x0a0a8019 },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pl3_to_pl3.asm
0,0 → 1,17
// Module name: AVS
.kernel PL3_TO_PL3
.code
 
#include "VP_Setup.g4a"
#include "Set_Layer_0.g4a"
#include "Set_AVS_Buf_0123_PL3.g4a"
#include "PL3_AVS_Buf_0.g4a"
#include "PL3_AVS_Buf_1.g4a"
#include "PL3_AVS_Buf_2.g4a"
#include "PL3_AVS_Buf_3.g4a"
#include "Save_AVS_PL3.g4a"
#include "EOT.g4a"
 
.end_code
 
.end_kernel
/drivers/video/i965/shaders/post_processing/gen7/pl3_to_pl3.g75b
0,0 → 1,619
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000090 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x000000f0 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000180 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000120 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000000d0 },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006ea2 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006204 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000002c0 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x28800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x29000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000002b0 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2a800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2b000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000002b0 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2c800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2d000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x000002b0 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x000001a0 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2e800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2f000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x25c00021, 0x008d0360, 0x00000000 },
{ 0x00200401, 0x238001a5, 0x004500e0, 0x00000000 },
{ 0x00200408, 0x24a03da5, 0x004500e0, 0x00010001 },
{ 0x00200408, 0x25c03da5, 0x004500e0, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x000f000f },
{ 0x00000801, 0x24a80061, 0x00000000, 0x00070007 },
{ 0x00000801, 0x25c80061, 0x00000000, 0x00070007 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x80600040, 0xc8002d29, 0x00ae8800, 0x00800080 },
{ 0x80600040, 0xc8402d29, 0x00ae8840, 0x00800080 },
{ 0x80600040, 0xc0002d29, 0x00ae8000, 0x00800080 },
{ 0x80600040, 0xc0402d29, 0x00ae8040, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x80600040, 0xd8002d29, 0x00ae9800, 0x00800080 },
{ 0x80600040, 0xd8402d29, 0x00ae9840, 0x00800080 },
{ 0x80600040, 0xd0002d29, 0x00ae9000, 0x00800080 },
{ 0x80600040, 0xd0402d29, 0x00ae9040, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x80600040, 0xc8002d29, 0x00ae8800, 0x00800080 },
{ 0x80600040, 0xc8402d29, 0x00ae8840, 0x00800080 },
{ 0x80600040, 0xc0002d29, 0x00ae8000, 0x00800080 },
{ 0x80600040, 0xc0402d29, 0x00ae8040, 0x00800080 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x80600040, 0xd8002d29, 0x00ae9800, 0x00800080 },
{ 0x80600040, 0xd8402d29, 0x00ae9840, 0x00800080 },
{ 0x80600040, 0xd0002d29, 0x00ae9000, 0x00800080 },
{ 0x80600040, 0xd0402d29, 0x00ae9040, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00800401, 0x23a00231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x24c00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x24c80231, 0x00cf8841, 0x00000000 },
{ 0x00600401, 0x25e00231, 0x00cf8001, 0x00000000 },
{ 0x00600c01, 0x25e80231, 0x00cf8041, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00800401, 0x23e00231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00d29461, 0x00000000 },
{ 0x00600c01, 0x24d00231, 0x00cf9801, 0x00000000 },
{ 0x00600801, 0x24d80231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x25f00231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x25f80231, 0x00cf9041, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00800401, 0x24200231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x24e00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x24e80231, 0x00cf8841, 0x00000000 },
{ 0x00600401, 0x26000231, 0x00cf8001, 0x00000000 },
{ 0x00600c01, 0x26080231, 0x00cf8041, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24800231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24900231, 0x00d29461, 0x00000000 },
{ 0x00600c01, 0x24f00231, 0x00cf9801, 0x00000000 },
{ 0x00600801, 0x24f80231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x26100231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x26180231, 0x00cf9041, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x120a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8019 },
{ 0x05000031, 0x20000e24, 0x000005c0, 0x060a801a },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/post_processing/gen7/pl3_to_pl3.g7b
0,0 → 1,619
{ 0x00600001, 0x23600021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23200021, 0x008d0000, 0x00000000 },
{ 0x00600001, 0x23400021, 0x008d0000, 0x00000000 },
{ 0x00600041, 0x206077bd, 0x008d0060, 0x000000f0 },
{ 0x00200001, 0x211401bd, 0x004500e0, 0x00000000 },
{ 0x01600010, 0x20002e24, 0x0000005a, 0x00010001 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00000000 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000114 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240003bc, 0x000000c0, 0x00000000 },
{ 0x00110048, 0x20c077bd, 0x00000060, 0x00000220 },
{ 0x00000001, 0x240003bc, 0x000000a0, 0x00000000 },
{ 0x00000048, 0x20a077bd, 0x00000080, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00020002 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000114 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240403bc, 0x000000c4, 0x00000000 },
{ 0x00110048, 0x20c477bd, 0x00000064, 0x00000220 },
{ 0x00000001, 0x240403bc, 0x000000a4, 0x00000000 },
{ 0x00000048, 0x20a477bd, 0x00000084, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00040004 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000114 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240803bc, 0x000000c8, 0x00000000 },
{ 0x00110048, 0x20c877bd, 0x00000068, 0x00000220 },
{ 0x00000001, 0x240803bc, 0x000000a8, 0x00000000 },
{ 0x00000048, 0x20a877bd, 0x00000088, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00060006 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000114 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x240c03bc, 0x000000cc, 0x00000000 },
{ 0x00110048, 0x20cc77bd, 0x0000006c, 0x00000220 },
{ 0x00000001, 0x240c03bc, 0x000000ac, 0x00000000 },
{ 0x00000048, 0x20ac77bd, 0x0000008c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x00080008 },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000114 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241003bc, 0x000000d0, 0x00000000 },
{ 0x00110048, 0x20d077bd, 0x00000070, 0x00000220 },
{ 0x00000001, 0x241003bc, 0x000000b0, 0x00000000 },
{ 0x00000048, 0x20b077bd, 0x00000090, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000a000a },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000114 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241403bc, 0x000000d4, 0x00000000 },
{ 0x00110048, 0x20d477bd, 0x00000074, 0x00000220 },
{ 0x00000001, 0x241403bc, 0x000000b4, 0x00000000 },
{ 0x00000048, 0x20b477bd, 0x00000094, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000c000c },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000114 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241803bc, 0x000000d8, 0x00000000 },
{ 0x00110048, 0x20d877bd, 0x00000078, 0x00000220 },
{ 0x00000001, 0x241803bc, 0x000000b8, 0x00000000 },
{ 0x00000048, 0x20b877bd, 0x00000098, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00000008, 0x22202d29, 0x00000044, 0x000e000e },
{ 0x00000005, 0x22202d29, 0x00000220, 0x00030003 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00010001 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000012 },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00020002 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x0000001e },
{ 0x01000010, 0x20002d2c, 0x02000220, 0x00030003 },
{ 0x00010220, 0x34001c00, 0x02001400, 0x00000030 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000114 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000118 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000118 },
{ 0x00000001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x00000024 },
{ 0x00110001, 0x2200013d, 0x00000040, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004114, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00000040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00000040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000220 },
{ 0x00000220, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00110001, 0x2200013d, 0x00000042, 0x00000000 },
{ 0x00110040, 0x222077bd, 0x00004118, 0x00000200 },
{ 0x00110040, 0x22207fbd, 0x00000220, 0xc1800000 },
{ 0x00110001, 0x241c03bc, 0x000000dc, 0x00000000 },
{ 0x00110048, 0x20dc77bd, 0x0000007c, 0x00000220 },
{ 0x00000001, 0x241c03bc, 0x000000bc, 0x00000000 },
{ 0x00000048, 0x20bc77bd, 0x0000009c, 0x00000114 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00800001, 0x22a00169, 0x00000000, 0xffffffff },
{ 0x02000010, 0x20002d24, 0x020000e4, 0x00000000 },
{ 0x02010010, 0x20002d24, 0x020000e6, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x0000001a },
{ 0x00000005, 0x23022d31, 0x00000044, 0x00030003 },
{ 0x00000401, 0x233803bd, 0x000000f4, 0x00000000 },
{ 0x00000c01, 0x233003bd, 0x00000060, 0x00000000 },
{ 0x00000c01, 0x233403bd, 0x00000080, 0x00000000 },
{ 0x00000c01, 0x232803bd, 0x000000c0, 0x00000000 },
{ 0x00000801, 0x232c03bd, 0x000000a0, 0x00000000 },
{ 0x00000001, 0x240803bc, 0x000000c0, 0x00000000 },
{ 0x00000048, 0x24087fbc, 0x00000060, 0x41000000 },
{ 0x00000448, 0x22e87fbd, 0x000000f4, 0x41e00000 },
{ 0x00000c41, 0x22e47fbd, 0x00000080, 0x40800000 },
{ 0x00000001, 0x241003bc, 0x00000060, 0x00000000 },
{ 0x00000c48, 0x22f07fbd, 0x000000f4, 0x41000000 },
{ 0x00000801, 0x22f40061, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006ea2 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00460046 },
{ 0x00400009, 0x22c02d8d, 0x00690400, 0x00050005 },
{ 0x00400001, 0x2400036c, 0x00000000, 0x00006204 },
{ 0x00400040, 0x24002d8c, 0x00690400, 0x00400040 },
{ 0x00400409, 0x22402d8d, 0x00690400, 0x00050005 },
{ 0x00000801, 0x22500061, 0x00000000, 0x01000100 },
{ 0x00000001, 0x22d00061, 0x00000000, 0x00400040 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000058 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000401, 0x233c0021, 0x000000fc, 0x00000000 },
{ 0x00000801, 0x23240121, 0x000000f8, 0x00000000 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x28000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x28800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x29000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000056 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000001 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2a000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2a800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2b000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000056 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000002 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2c000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2c800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2d000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00110220, 0x34001c00, 0x02001400, 0x00000056 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb400 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000d000 },
{ 0x00000040, 0x23240d21, 0x000000f8, 0x00000003 },
{ 0x00600001, 0x22200021, 0x008d0320, 0x00000000 },
{ 0x00000001, 0x21d00109, 0x00000600, 0x00000000 },
{ 0x00000001, 0x21d403bd, 0x00000228, 0x00000000 },
{ 0x02000005, 0x20002d28, 0x00000046, 0x00020002 },
{ 0x00110220, 0x34001c00, 0x00001400, 0x00000034 },
{ 0x02600005, 0x20002d28, 0x00000046, 0x00040004 },
{ 0x00610001, 0x240003bc, 0x00000228, 0x00000000 },
{ 0x00610048, 0x24007fbc, 0x00000230, 0xc0000000 },
{ 0x00610048, 0x24007fbc, 0x00000238, 0x40400000 },
{ 0x00010001, 0x21c8039d, 0x00210400, 0x00000000 },
{ 0x00110001, 0x21c803bd, 0x00000228, 0x00000000 },
{ 0x00000005, 0x21c42d21, 0x00000046, 0xfff8fff8 },
{ 0x0000000c, 0x21c41c21, 0x000001c4, 0x00000003 },
{ 0x00000001, 0x21c4003d, 0x000001c4, 0x00000000 },
{ 0x00000041, 0x21c077bd, 0x000001c8, 0x000001c4 },
{ 0x00000040, 0x21c87fbd, 0x000001c0, 0x3ca00000 },
{ 0x00000040, 0x21cc7fbd, 0x000001c0, 0x3f7f0000 },
{ 0x05000010, 0x20007fbc, 0x000001c0, 0x00000000 },
{ 0x00000001, 0x21c003a5, 0x000001c0, 0x00000000 },
{ 0x00010040, 0x21c01ca5, 0x000001c0, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001c8, 0x00000000 },
{ 0x00000001, 0x21c803a5, 0x000001c8, 0x00000000 },
{ 0x00010040, 0x21c81ca5, 0x000001c8, 0xffffffff },
{ 0x05000010, 0x20007fbc, 0x000001cc, 0x00000000 },
{ 0x00000001, 0x21cc03a5, 0x000001cc, 0x00000000 },
{ 0x00010040, 0x21cc1ca5, 0x000001cc, 0xffffffff },
{ 0x00000001, 0x26000168, 0x00000000, 0x00000000 },
{ 0x03000010, 0x200014a4, 0x040001c8, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x04000228, 0x0000404c },
{ 0x01110010, 0x200014a4, 0x000001cc, 0x000001c0 },
{ 0x00010040, 0x222877bd, 0x00000228, 0x00000048 },
{ 0x00000001, 0x26000128, 0x000001d0, 0x00000000 },
{ 0x02000031, 0x2e000229, 0x00000200, 0x00000200 },
{ 0x00000001, 0x222803bd, 0x000001d4, 0x00000000 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044eb801 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2e800229, 0x00000200, 0x00000200 },
{ 0x00000040, 0x22000c20, 0x000002f4, 0x044ebc02 },
{ 0x00000001, 0x22080061, 0x00000000, 0x0000e000 },
{ 0x02000031, 0x2f000229, 0x00000200, 0x00000200 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00600001, 0x23800021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x24a00021, 0x008d0360, 0x00000000 },
{ 0x00600001, 0x25c00021, 0x008d0360, 0x00000000 },
{ 0x00200401, 0x238001a5, 0x004500e0, 0x00000000 },
{ 0x00200408, 0x24a03da5, 0x004500e0, 0x00010001 },
{ 0x00200408, 0x25c03da5, 0x004500e0, 0x00010001 },
{ 0x00000801, 0x23880061, 0x00000000, 0x000f000f },
{ 0x00000801, 0x24a80061, 0x00000000, 0x00070007 },
{ 0x00000801, 0x25c80061, 0x00000000, 0x00070007 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x80600040, 0xc8002d29, 0x00ae8800, 0x00800080 },
{ 0x80600040, 0xc8402d29, 0x00ae8840, 0x00800080 },
{ 0x80600040, 0xc0002d29, 0x00ae8000, 0x00800080 },
{ 0x80600040, 0xc0402d29, 0x00ae8040, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x80600040, 0xd8002d29, 0x00ae9800, 0x00800080 },
{ 0x80600040, 0xd8402d29, 0x00ae9840, 0x00800080 },
{ 0x80600040, 0xd0002d29, 0x00ae9000, 0x00800080 },
{ 0x80600040, 0xd0402d29, 0x00ae9040, 0x00800080 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x80800040, 0xa4002d29, 0x00b18400, 0x00800080 },
{ 0x80800040, 0xa4202d29, 0x00b18420, 0x00800080 },
{ 0x80800040, 0xa4402d29, 0x00b18440, 0x00800080 },
{ 0x80800040, 0xa4602d29, 0x00b18460, 0x00800080 },
{ 0x80600040, 0xc8002d29, 0x00ae8800, 0x00800080 },
{ 0x80600040, 0xc8402d29, 0x00ae8840, 0x00800080 },
{ 0x80600040, 0xc0002d29, 0x00ae8000, 0x00800080 },
{ 0x80600040, 0xc0402d29, 0x00ae8040, 0x00800080 },
{ 0x80800040, 0xb4002d29, 0x00b19400, 0x00800080 },
{ 0x80800040, 0xb4202d29, 0x00b19420, 0x00800080 },
{ 0x80800040, 0xb4402d29, 0x00b19440, 0x00800080 },
{ 0x80800040, 0xb4602d29, 0x00b19460, 0x00800080 },
{ 0x80600040, 0xd8002d29, 0x00ae9800, 0x00800080 },
{ 0x80600040, 0xd8402d29, 0x00ae9840, 0x00800080 },
{ 0x80600040, 0xd0002d29, 0x00ae9000, 0x00800080 },
{ 0x80600040, 0xd0402d29, 0x00ae9040, 0x00800080 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x02000200 },
{ 0x00800401, 0x23a00231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x23b00231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x23c00231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x23d00231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x24c00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x24c80231, 0x00cf8841, 0x00000000 },
{ 0x00600401, 0x25e00231, 0x00cf8001, 0x00000000 },
{ 0x00600c01, 0x25e80231, 0x00cf8041, 0x00000000 },
{ 0x00400040, 0x22002da8, 0x006902c0, 0x04000400 },
{ 0x00800401, 0x23e00231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x23f00231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24000231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24100231, 0x00d29461, 0x00000000 },
{ 0x00600c01, 0x24d00231, 0x00cf9801, 0x00000000 },
{ 0x00600801, 0x24d80231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x25f00231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x25f80231, 0x00cf9041, 0x00000000 },
{ 0x00400040, 0x22082da8, 0x006902c0, 0x06000600 },
{ 0x00800401, 0x24200231, 0x00d28401, 0x00000000 },
{ 0x00800801, 0x24300231, 0x00d28421, 0x00000000 },
{ 0x00800401, 0x24400231, 0x00d28441, 0x00000000 },
{ 0x00800801, 0x24500231, 0x00d28461, 0x00000000 },
{ 0x00600401, 0x24e00231, 0x00cf8801, 0x00000000 },
{ 0x00600c01, 0x24e80231, 0x00cf8841, 0x00000000 },
{ 0x00600401, 0x26000231, 0x00cf8001, 0x00000000 },
{ 0x00600c01, 0x26080231, 0x00cf8041, 0x00000000 },
{ 0x00800401, 0x24600231, 0x00d29401, 0x00000000 },
{ 0x00800801, 0x24700231, 0x00d29421, 0x00000000 },
{ 0x00800401, 0x24800231, 0x00d29441, 0x00000000 },
{ 0x00800801, 0x24900231, 0x00d29461, 0x00000000 },
{ 0x00600c01, 0x24f00231, 0x00cf9801, 0x00000000 },
{ 0x00600801, 0x24f80231, 0x00cf9841, 0x00000000 },
{ 0x00600c01, 0x26100231, 0x00cf9001, 0x00000000 },
{ 0x00600801, 0x26180231, 0x00cf9041, 0x00000000 },
{ 0x05000031, 0x20000e24, 0x00000380, 0x120a8018 },
{ 0x05000031, 0x20000e24, 0x000004a0, 0x060a8019 },
{ 0x05000031, 0x20000e24, 0x000005c0, 0x060a801a },
{ 0x00600001, 0x2fe00021, 0x008d0000, 0x00000000 },
{ 0x07000031, 0x20001e24, 0x00000fe0, 0x82000010 },
/drivers/video/i965/shaders/render/exa_sf.g4b
0,0 → 1,15
{ 0x00400031, 0x20c01fbd, 0x0069002c, 0x01110001 },
{ 0x00400001, 0x206003be, 0x00690060, 0x00000000 },
{ 0x00400040, 0x20e077bd, 0x00690080, 0x006940a0 },
{ 0x00400041, 0x202077be, 0x006900e0, 0x000000c0 },
{ 0x00400040, 0x20e077bd, 0x006900a0, 0x00694060 },
{ 0x00400041, 0x204077be, 0x006900e0, 0x000000c8 },
{ 0x00600031, 0x20001fbc, 0x008d0000, 0x8640c800 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
/drivers/video/i965/shaders/render/exa_sf.g4b.gen5
0,0 → 1,15
{ 0x00400031, 0x20c01fbd, 0x1069002c, 0x02100001 },
{ 0x00400001, 0x206003be, 0x00690060, 0x00000000 },
{ 0x00400040, 0x20e077bd, 0x00690080, 0x006940a0 },
{ 0x00400041, 0x202077be, 0x006900e0, 0x000000c0 },
{ 0x00400040, 0x20e077bd, 0x006900a0, 0x00694060 },
{ 0x00400041, 0x204077be, 0x006900e0, 0x000000c8 },
{ 0x00600031, 0x20001fbc, 0x648d0000, 0x8808c800 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
/drivers/video/i965/shaders/render/exa_wm_src_affine.g4b
0,0 → 1,8
{ 0x00802041, 0x23c077bd, 0x008d0100, 0x00000060 },
{ 0x00802041, 0x238077bd, 0x008d0140, 0x00000064 },
{ 0x00802040, 0x23c077bd, 0x008d03c0, 0x008d0380 },
{ 0x00802040, 0x204077be, 0x008d03c0, 0x0000006c },
{ 0x00802041, 0x23c077bd, 0x008d0100, 0x00000070 },
{ 0x00802041, 0x238077bd, 0x008d0140, 0x00000074 },
{ 0x00802040, 0x23c077bd, 0x008d03c0, 0x008d0380 },
{ 0x00802040, 0x208077be, 0x008d03c0, 0x0000007c },
/drivers/video/i965/shaders/render/exa_wm_src_affine.g4b.gen5
0,0 → 1,8
{ 0x00802041, 0x23c077bd, 0x008d0100, 0x00000060 },
{ 0x00802041, 0x238077bd, 0x008d0140, 0x00000064 },
{ 0x00802040, 0x23c077bd, 0x008d03c0, 0x008d0380 },
{ 0x00802040, 0x204077be, 0x008d03c0, 0x0000006c },
{ 0x00802041, 0x23c077bd, 0x008d0100, 0x00000070 },
{ 0x00802041, 0x238077bd, 0x008d0140, 0x00000074 },
{ 0x00802040, 0x23c077bd, 0x008d03c0, 0x008d0380 },
{ 0x00802040, 0x208077be, 0x008d03c0, 0x0000007c },
/drivers/video/i965/shaders/render/exa_wm_src_affine.g6b
0,0 → 1,4
{ 0x0060005a, 0x204077be, 0x000000e0, 0x008d0040 },
{ 0x0060005a, 0x206077be, 0x000000e0, 0x008d0080 },
{ 0x0060005a, 0x208077be, 0x000000f0, 0x008d0040 },
{ 0x0060005a, 0x20a077be, 0x000000f0, 0x008d0080 },
/drivers/video/i965/shaders/render/exa_wm_src_affine.g7b
0,0 → 1,4
{ 0x0060005a, 0x284077bd, 0x000000e0, 0x008d0040 },
{ 0x0060005a, 0x286077bd, 0x000000e0, 0x008d0080 },
{ 0x0060005a, 0x288077bd, 0x000000f0, 0x008d0040 },
{ 0x0060005a, 0x28a077bd, 0x000000f0, 0x008d0080 },
/drivers/video/i965/shaders/render/exa_wm_src_sample_argb.g4b
0,0 → 1,4
{ 0x00000201, 0x20080061, 0x00000000, 0x00000000 },
{ 0x01800031, 0x21c01d29, 0x008d0000, 0x02580001 },
{ 0x00600041, 0x228077bd, 0x00200280, 0x00000040 },
{ 0x00600041, 0x22a077bd, 0x002002a0, 0x00000040 },
/drivers/video/i965/shaders/render/exa_wm_src_sample_argb.g4b.gen5
0,0 → 1,4
{ 0x00000201, 0x20080061, 0x00000000, 0x00000000 },
{ 0x01800031, 0x21c01d29, 0x208d0000, 0x0a8a0001 },
{ 0x00600041, 0x228077bd, 0x00200280, 0x00000040 },
{ 0x00600041, 0x22a077bd, 0x002002a0, 0x00000040 },
/drivers/video/i965/shaders/render/exa_wm_src_sample_argb.g6b
0,0 → 1,5
{ 0x00000201, 0x20080061, 0x00000000, 0x00000000 },
{ 0x00600201, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x02800031, 0x21c01cc9, 0x00000020, 0x0a8a0001 },
{ 0x00600041, 0x228077bd, 0x00200280, 0x000000c0 },
{ 0x00600041, 0x22a077bd, 0x002002a0, 0x000000c0 },
/drivers/video/i965/shaders/render/exa_wm_src_sample_argb.g7b
0,0 → 1,5
{ 0x00000201, 0x20080061, 0x00000000, 0x00000000 },
{ 0x00600201, 0x28200021, 0x008d0000, 0x00000000 },
{ 0x02800031, 0x21c01ca9, 0x00000820, 0x0a8c0001 },
{ 0x00600241, 0x228077bd, 0x00200280, 0x000000c0 },
{ 0x00600241, 0x22a077bd, 0x002002a0, 0x000000c0 },
/drivers/video/i965/shaders/render/exa_wm_src_sample_planar.g4b
0,0 → 1,10
{ 0x02000005, 0x20002d3c, 0x00000040, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000004 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000e000 },
{ 0x01800031, 0x22001d29, 0x008d0000, 0x02520203 },
{ 0x01800031, 0x22401d29, 0x008d0000, 0x02520405 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000003 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000c000 },
{ 0x01800031, 0x22001d29, 0x008d0000, 0x02540203 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000e000 },
{ 0x01800031, 0x21c01d29, 0x008d0000, 0x02520001 },
/drivers/video/i965/shaders/render/exa_wm_src_sample_planar.g4b.gen5
0,0 → 1,10
{ 0x02000005, 0x20002d3c, 0x00000040, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000008 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000e000 },
{ 0x01800031, 0x22001d29, 0x208d0000, 0x0a2a0203 },
{ 0x01800031, 0x22401d29, 0x208d0000, 0x0a2a0405 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000c000 },
{ 0x01800031, 0x22001d29, 0x208d0000, 0x0a4a0203 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000e000 },
{ 0x01800031, 0x21c01d29, 0x208d0000, 0x0a2a0001 },
/drivers/video/i965/shaders/render/exa_wm_src_sample_planar.g6b
0,0 → 1,15
{ 0x03000010, 0x20002d3c, 0x000000c0, 0x00000000 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000e000 },
{ 0x00600201, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x02800031, 0x22001cc9, 0x00000020, 0x0a2a0203 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000e000 },
{ 0x00600201, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x02800031, 0x22401cc9, 0x00000020, 0x0a2a0405 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000c000 },
{ 0x00600201, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x02800031, 0x22001cc9, 0x00000020, 0x0a4a0203 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000e000 },
{ 0x00600201, 0x20200022, 0x008d0000, 0x00000000 },
{ 0x02800031, 0x21c01cc9, 0x00000020, 0x0a2a0001 },
/drivers/video/i965/shaders/render/exa_wm_src_sample_planar.g7b
0,0 → 1,20
{ 0x01000010, 0x20002d3c, 0x000000c0, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000018 },
{ 0x01000010, 0x20002d3c, 0x000000c0, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000000e },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000e000 },
{ 0x00600201, 0x28200021, 0x008d0000, 0x00000000 },
{ 0x02800031, 0x22001ca9, 0x00000820, 0x0a2c0203 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000e000 },
{ 0x00600201, 0x28200021, 0x008d0000, 0x00000000 },
{ 0x02800031, 0x22401ca9, 0x00000820, 0x0a2c0405 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x0000000c },
{ 0x00800201, 0x220003fd, 0x00000000, 0x3f000000 },
{ 0x00800201, 0x224003fd, 0x00000000, 0x3f000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000006 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000c000 },
{ 0x00600201, 0x28200021, 0x008d0000, 0x00000000 },
{ 0x02800031, 0x22001ca9, 0x00000820, 0x0a4c0203 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000e000 },
{ 0x00600201, 0x28200021, 0x008d0000, 0x00000000 },
{ 0x02800031, 0x21c01ca9, 0x00000820, 0x0a2c0001 },
/drivers/video/i965/shaders/render/exa_wm_src_sample_planar.g7b.haswell
0,0 → 1,20
{ 0x01000010, 0x20002d3c, 0x000000c0, 0x00010001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x000000c0 },
{ 0x01000010, 0x20002d3c, 0x000000c0, 0x00020002 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000070 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000e000 },
{ 0x00600201, 0x28200021, 0x008d0000, 0x00000000 },
{ 0x02800031, 0x22001ca9, 0x00000820, 0x0a2c0203 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000e000 },
{ 0x00600201, 0x28200021, 0x008d0000, 0x00000000 },
{ 0x02800031, 0x22401ca9, 0x00000820, 0x0a2c0405 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000060 },
{ 0x00800201, 0x220003fd, 0x00000000, 0x3f000000 },
{ 0x00800201, 0x224003fd, 0x00000000, 0x3f000000 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000030 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000c000 },
{ 0x00600201, 0x28200021, 0x008d0000, 0x00000000 },
{ 0x02800031, 0x22001ca9, 0x00000820, 0x0a4c0203 },
{ 0x00000201, 0x20080061, 0x00000000, 0x0000e000 },
{ 0x00600201, 0x28200021, 0x008d0000, 0x00000000 },
{ 0x02800031, 0x21c01ca9, 0x00000820, 0x0a2c0001 },
/drivers/video/i965/shaders/render/exa_wm_write.g4b
0,0 → 1,26
{ 0x00600001, 0x204003be, 0x008d01c0, 0x00000000 },
{ 0x00600001, 0x206003be, 0x008d0200, 0x00000000 },
{ 0x00600001, 0x208003be, 0x008d0240, 0x00000000 },
{ 0x00600001, 0x20a003be, 0x008d0280, 0x00000000 },
{ 0x00601001, 0x20c003be, 0x008d01e0, 0x00000000 },
{ 0x00601001, 0x20e003be, 0x008d0220, 0x00000000 },
{ 0x00601001, 0x210003be, 0x008d0260, 0x00000000 },
{ 0x00601001, 0x212003be, 0x008d02a0, 0x00000000 },
{ 0x00600001, 0x204003be, 0x008d01c0, 0x00000000 },
{ 0x00600001, 0x206003be, 0x008d0200, 0x00000000 },
{ 0x00600001, 0x208003be, 0x008d0240, 0x00000000 },
{ 0x00600001, 0x20a003be, 0x008d0280, 0x00000000 },
{ 0x00601001, 0x20c003be, 0x008d01e0, 0x00000000 },
{ 0x00601001, 0x20e003be, 0x008d0220, 0x00000000 },
{ 0x00601001, 0x210003be, 0x008d0260, 0x00000000 },
{ 0x00601001, 0x212003be, 0x008d02a0, 0x00000000 },
{ 0x00600201, 0x20200022, 0x008d0020, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x008d0000, 0x85a04800 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
/drivers/video/i965/shaders/render/exa_wm_write.g4b.gen5
0,0 → 1,26
{ 0x00600001, 0x204003be, 0x008d01c0, 0x00000000 },
{ 0x00600001, 0x206003be, 0x008d0200, 0x00000000 },
{ 0x00600001, 0x208003be, 0x008d0240, 0x00000000 },
{ 0x00600001, 0x20a003be, 0x008d0280, 0x00000000 },
{ 0x00601001, 0x20c003be, 0x008d01e0, 0x00000000 },
{ 0x00601001, 0x20e003be, 0x008d0220, 0x00000000 },
{ 0x00601001, 0x210003be, 0x008d0260, 0x00000000 },
{ 0x00601001, 0x212003be, 0x008d02a0, 0x00000000 },
{ 0x00600001, 0x204003be, 0x008d01c0, 0x00000000 },
{ 0x00600001, 0x206003be, 0x008d0200, 0x00000000 },
{ 0x00600001, 0x208003be, 0x008d0240, 0x00000000 },
{ 0x00600001, 0x20a003be, 0x008d0280, 0x00000000 },
{ 0x00601001, 0x20c003be, 0x008d01e0, 0x00000000 },
{ 0x00601001, 0x20e003be, 0x008d0220, 0x00000000 },
{ 0x00601001, 0x210003be, 0x008d0260, 0x00000000 },
{ 0x00601001, 0x212003be, 0x008d02a0, 0x00000000 },
{ 0x00600201, 0x20200022, 0x008d0020, 0x00000000 },
{ 0x00800031, 0x24001d28, 0x548d0000, 0x94084800 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
/drivers/video/i965/shaders/render/exa_wm_write.g6b
0,0 → 1,17
{ 0x00600001, 0x204003be, 0x008d01c0, 0x00000000 },
{ 0x00600001, 0x206003be, 0x008d01e0, 0x00000000 },
{ 0x00600001, 0x208003be, 0x008d0200, 0x00000000 },
{ 0x00600001, 0x20a003be, 0x008d0220, 0x00000000 },
{ 0x00600001, 0x20c003be, 0x008d0240, 0x00000000 },
{ 0x00600001, 0x20e003be, 0x008d0260, 0x00000000 },
{ 0x00600001, 0x210003be, 0x008d0280, 0x00000000 },
{ 0x00600001, 0x212003be, 0x008d02a0, 0x00000000 },
{ 0x05800031, 0x24001cc8, 0x00000040, 0x90019000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
/drivers/video/i965/shaders/render/exa_wm_write.g7b
0,0 → 1,19
{ 0x00600201, 0x28000021, 0x008d0000, 0x00000000 },
{ 0x00600201, 0x28200021, 0x008d0020, 0x00000000 },
{ 0x00600201, 0x284003bd, 0x002001c0, 0x00000000 },
{ 0x00600201, 0x286003bd, 0x002001e0, 0x00000000 },
{ 0x00600201, 0x288003bd, 0x00200200, 0x00000000 },
{ 0x00600201, 0x28a003bd, 0x00200220, 0x00000000 },
{ 0x00600201, 0x28c003bd, 0x00200240, 0x00000000 },
{ 0x00600201, 0x28e003bd, 0x00200260, 0x00000000 },
{ 0x00600201, 0x290003bd, 0x00200280, 0x00000000 },
{ 0x00600201, 0x292003bd, 0x002002a0, 0x00000000 },
{ 0x05800031, 0x20001ca8, 0x00000800, 0x940b1000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
{ 0x0000007e, 0x00000000, 0x00000000, 0x00000000 },
/drivers/video/i965/shaders/render/exa_wm_xy.g4b
0,0 → 1,4
{ 0x00800040, 0x23c06d29, 0x00480028, 0x10101010 },
{ 0x00800040, 0x23806d29, 0x0048002a, 0x11001100 },
{ 0x00802040, 0x2100753d, 0x008d03c0, 0x00004020 },
{ 0x00802040, 0x2140753d, 0x008d0380, 0x00004024 },
/drivers/video/i965/shaders/render/exa_wm_xy.g4b.gen5
0,0 → 1,4
{ 0x00800040, 0x23c06d29, 0x00480028, 0x10101010 },
{ 0x00800040, 0x23806d29, 0x0048002a, 0x11001100 },
{ 0x00802040, 0x2100753d, 0x008d03c0, 0x00004020 },
{ 0x00802040, 0x2140753d, 0x008d0380, 0x00004024 },
/drivers/video/i965/shaders/render/exa_wm_yuv_rgb.g4b
0,0 → 1,12
{ 0x00802040, 0x22c07fbd, 0x008d01c0, 0xbd808081 },
{ 0x00802041, 0x22c07fbd, 0x008d02c0, 0x3f94fdf4 },
{ 0x00802040, 0x23007fbd, 0x008d0240, 0xbf008084 },
{ 0x00802040, 0x23407fbd, 0x008d0200, 0xbf008084 },
{ 0x00802001, 0x240003bc, 0x008d02c0, 0x00000000 },
{ 0x80802048, 0x21c07fbd, 0x008d0300, 0x3fcc49ba },
{ 0x00802001, 0x240003bc, 0x008d02c0, 0x00000000 },
{ 0x00802048, 0x24007fbc, 0x008d0300, 0xbf5020c5 },
{ 0x80802048, 0x22007fbd, 0x008d0340, 0xbec8b439 },
{ 0x00802001, 0x240003bc, 0x008d02c0, 0x00000000 },
{ 0x80802048, 0x22407fbd, 0x008d0340, 0x40011687 },
{ 0x00802001, 0x228003fd, 0x00000000, 0x3f800000 },
/drivers/video/i965/shaders/render/exa_wm_yuv_rgb.g4b.gen5
0,0 → 1,12
{ 0x00802040, 0x22c07fbd, 0x008d01c0, 0xbd808081 },
{ 0x00802041, 0x22c07fbd, 0x008d02c0, 0x3f94fdf4 },
{ 0x00802040, 0x23007fbd, 0x008d0240, 0xbf008084 },
{ 0x00802040, 0x23407fbd, 0x008d0200, 0xbf008084 },
{ 0x00802001, 0x240003bc, 0x008d02c0, 0x00000000 },
{ 0x80802048, 0x21c07fbd, 0x008d0300, 0x3fcc49ba },
{ 0x00802001, 0x240003bc, 0x008d02c0, 0x00000000 },
{ 0x00802048, 0x24007fbc, 0x008d0300, 0xbf5020c5 },
{ 0x80802048, 0x22007fbd, 0x008d0340, 0xbec8b439 },
{ 0x00802001, 0x240003bc, 0x008d02c0, 0x00000000 },
{ 0x80802048, 0x22407fbd, 0x008d0340, 0x40011687 },
{ 0x00802001, 0x228003fd, 0x00000000, 0x3f800000 },
/drivers/video/i965/shaders/render/exa_wm_yuv_rgb.g6b
0,0 → 1,12
{ 0x00800040, 0x22c07fbd, 0x008d01c0, 0xbd808081 },
{ 0x00800041, 0x22c07fbd, 0x008d02c0, 0x3f94fdf4 },
{ 0x00800040, 0x23007fbd, 0x008d0240, 0xbf008084 },
{ 0x00800040, 0x23407fbd, 0x008d0200, 0xbf008084 },
{ 0x00800001, 0x240003bc, 0x008d02c0, 0x00000000 },
{ 0x80800048, 0x21c07fbd, 0x008d0300, 0x3fcc49ba },
{ 0x00800001, 0x240003bc, 0x008d02c0, 0x00000000 },
{ 0x00800048, 0x24007fbc, 0x008d0300, 0xbf5020c5 },
{ 0x80800048, 0x22007fbd, 0x008d0340, 0xbec8b439 },
{ 0x00800001, 0x240003bc, 0x008d02c0, 0x00000000 },
{ 0x80800048, 0x22407fbd, 0x008d0340, 0x40011687 },
{ 0x00800001, 0x228003fd, 0x00000000, 0x3f800000 },
/drivers/video/i965/shaders/render/exa_wm_yuv_rgb.g7b
0,0 → 1,12
{ 0x00800040, 0x22c07fbd, 0x008d01c0, 0xbd808081 },
{ 0x00800041, 0x22c07fbd, 0x008d02c0, 0x3f94fdf4 },
{ 0x00800040, 0x23007fbd, 0x008d0240, 0xbf008084 },
{ 0x00800040, 0x23407fbd, 0x008d0200, 0xbf008084 },
{ 0x00800001, 0x240003bc, 0x008d02c0, 0x00000000 },
{ 0x80800048, 0x21c07fbd, 0x008d0300, 0x3fcc49ba },
{ 0x00800001, 0x240003bc, 0x008d02c0, 0x00000000 },
{ 0x00800048, 0x24007fbc, 0x008d0300, 0xbf5020c5 },
{ 0x80800048, 0x22007fbd, 0x008d0340, 0xbec8b439 },
{ 0x00800001, 0x240003bc, 0x008d02c0, 0x00000000 },
{ 0x80800048, 0x22407fbd, 0x008d0340, 0x40011687 },
{ 0x00800001, 0x228003fd, 0x00000000, 0x3f800000 },
/drivers/video/i965/shaders/vme/inter_frame.g6b
0,0 → 1,28
{ 0x00800001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00800001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00200041, 0x24082e29, 0x004500a0, 0x00100010 },
{ 0x00200041, 0x24002e29, 0x004500a0, 0x00100010 },
{ 0x00200040, 0x24003dad, 0x00450400, 0xfff8fff8 },
{ 0x00000001, 0x240c0061, 0x00000000, 0x7e203000 },
{ 0x00000001, 0x24140231, 0x00000014, 0x00000000 },
{ 0x00000001, 0x24160169, 0x00000000, 0x20202020 },
{ 0x00600001, 0x20000022, 0x008d0400, 0x00000000 },
{ 0x00000001, 0x24240061, 0x00000000, 0x00000020 },
{ 0x00000001, 0x24280061, 0x00000000, 0x00003f3f },
{ 0x00600001, 0x20200022, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x20400062, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20400062, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20600062, 0x00000000, 0x00000000 },
{ 0x08600031, 0x21801cdd, 0x00000000, 0x08482000 },
{ 0x00000041, 0x24684521, 0x000000a2, 0x000000a1 },
{ 0x00000040, 0x24684421, 0x00000468, 0x000000a0 },
{ 0x00000041, 0x24680c21, 0x00000468, 0x00000004 },
{ 0x00000001, 0x24740231, 0x00000014, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d0460, 0x00000000 },
{ 0x00200001, 0x24600229, 0x004501a0, 0x00000000 },
{ 0x00200040, 0x24603dad, 0x00450460, 0xffe0ffe0 },
{ 0x00600001, 0x20200022, 0x008c0460, 0x00000000 },
{ 0x00600001, 0x20400022, 0x008c0460, 0x00000000 },
{ 0x05800031, 0x22001cdd, 0x00000000, 0x061b0303 },
{ 0x00600001, 0x20000022, 0x008d0000, 0x00000000 },
{ 0x07800031, 0x24001cc8, 0x00000000, 0x82000010 },
/drivers/video/i965/shaders/vme/inter_frame.g7b
0,0 → 1,28
{ 0x00800001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00800001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00200041, 0x24082e29, 0x004500a0, 0x00100010 },
{ 0x00200041, 0x24002e29, 0x004500a0, 0x00100010 },
{ 0x00200040, 0x24003dad, 0x00450400, 0xfff8fff8 },
{ 0x00000001, 0x240c0061, 0x00000000, 0x7e203000 },
{ 0x00000001, 0x24140231, 0x00000014, 0x00000000 },
{ 0x00000001, 0x24160169, 0x00000000, 0x20202020 },
{ 0x00600001, 0x28000021, 0x008d0400, 0x00000000 },
{ 0x00000001, 0x24240061, 0x00000000, 0x00000020 },
{ 0x00000001, 0x24280061, 0x00000000, 0x00003f3f },
{ 0x00600001, 0x28200021, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x28400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28600061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28800061, 0x00000000, 0x00000000 },
{ 0x08600031, 0x21801cbd, 0x00000800, 0x0a682001 },
{ 0x00000041, 0x24684521, 0x000000a2, 0x000000a1 },
{ 0x00000040, 0x24684421, 0x00000468, 0x000000a0 },
{ 0x00000041, 0x24680c21, 0x00000468, 0x00000004 },
{ 0x00000001, 0x24740231, 0x00000014, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0460, 0x00000000 },
{ 0x00200001, 0x24600229, 0x004501a0, 0x00000000 },
{ 0x00200040, 0x24603dad, 0x00450460, 0xffe0ffe0 },
{ 0x00600001, 0x28200021, 0x008c0460, 0x00000000 },
{ 0x00600001, 0x28400021, 0x008c0460, 0x00000000 },
{ 0x0a800031, 0x20001cac, 0x00000800, 0x060a0300 },
{ 0x00600001, 0x28000021, 0x008d0000, 0x00000000 },
{ 0x07800031, 0x24001ca8, 0x00000800, 0x82000010 },
/drivers/video/i965/shaders/vme/inter_frame_haswell.g75b
0,0 → 1,137
{ 0x00800001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00800001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00800001, 0x24800061, 0x00000000, 0x00000000 },
{ 0x00800001, 0x24c00061, 0x00000000, 0x00000000 },
{ 0x00200009, 0x24002e25, 0x004500a0, 0x00040004 },
{ 0x00000040, 0x24003ca5, 0x00000400, 0xfff8fff8 },
{ 0x00000040, 0x24043ca5, 0x00000404, 0xffffffff },
{ 0x00000001, 0x240800e1, 0x00000000, 0x0000001f },
{ 0x00000001, 0x24140231, 0x00000014, 0x00000000 },
{ 0x00200009, 0x24202e25, 0x004500a0, 0x00040004 },
{ 0x00000040, 0x24203ca5, 0x00000420, 0xfffcfffc },
{ 0x00000001, 0x242800e1, 0x00000000, 0x000f0003 },
{ 0x00000001, 0x24340231, 0x00000014, 0x00000000 },
{ 0x00200009, 0x24482e29, 0x004500a0, 0x00040004 },
{ 0x00000001, 0x24540231, 0x00000014, 0x00000000 },
{ 0x00000041, 0x24884521, 0x000000a2, 0x000000a1 },
{ 0x00000040, 0x24884421, 0x00000488, 0x000000a0 },
{ 0x00000041, 0x24880c21, 0x00000488, 0x00000018 },
{ 0x00000001, 0x24940231, 0x00000014, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0400, 0x00000000 },
{ 0x04600031, 0x23801cb1, 0x00000800, 0x02190004 },
{ 0x00600001, 0x28000021, 0x008d0420, 0x00000000 },
{ 0x04600031, 0x23a01cb1, 0x00000800, 0x02290004 },
{ 0x00600001, 0x25600021, 0x008d0020, 0x00000000 },
{ 0x00600001, 0x28400021, 0x008d0560, 0x00000000 },
{ 0x00600001, 0x28600061, 0x00000000, 0x00000000 },
{ 0x00000001, 0x23800061, 0x00000000, 0x00000000 },
{ 0x00000005, 0x23840c21, 0x00000384, 0xff000000 },
{ 0x00600001, 0x28800021, 0x008d0380, 0x00000000 },
{ 0x00600001, 0x28a00061, 0x00000000, 0x00000000 },
{ 0x00800001, 0x28a00231, 0x00cf03a3, 0x00000000 },
{ 0x00000001, 0x28b00061, 0x00000000, 0x11111111 },
{ 0x00000001, 0x28bc0061, 0x00000000, 0x00010101 },
{ 0x00600001, 0x28c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0440, 0x00000000 },
{ 0x00000001, 0x24000169, 0x00000000, 0x00010001 },
{ 0x00000001, 0x28850231, 0x00000400, 0x00000000 },
{ 0x00000001, 0x247c0169, 0x00000000, 0x00000000 },
{ 0x01000005, 0x20002e28, 0x000000a4, 0x00010001 },
{ 0x00010001, 0x247c00f1, 0x00000000, 0x00000002 },
{ 0x00000001, 0x247d0231, 0x000000a5, 0x00000000 },
{ 0x00000001, 0x24000169, 0x00000000, 0x00200020 },
{ 0x00000001, 0x247e0231, 0x00000400, 0x00000000 },
{ 0x00000001, 0x244c0061, 0x00000000, 0x00800000 },
{ 0x00600001, 0x28000021, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x28200021, 0x008d0460, 0x00000000 },
{ 0x0d600031, 0x21801ca1, 0x00000800, 0x0e782000 },
{ 0x00600001, 0x28000021, 0x008d0480, 0x00000000 },
{ 0x00000001, 0x28200021, 0x00000180, 0x00000000 },
{ 0x00000001, 0x28240021, 0x00000190, 0x00000000 },
{ 0x00000001, 0x28280021, 0x00000194, 0x00000000 },
{ 0x00000001, 0x282c0021, 0x00000198, 0x00000000 },
{ 0x00000001, 0x28300129, 0x0000018c, 0x00000000 },
{ 0x00000001, 0x28340021, 0x00000188, 0x00000000 },
{ 0x00000001, 0x28380021, 0x0000019c, 0x00000000 },
{ 0x00000001, 0x283c0021, 0x00000488, 0x00000000 },
{ 0x0a800031, 0x20001cac, 0x00000800, 0x040a0203 },
{ 0x00000001, 0x244c0061, 0x00000000, 0x00200000 },
{ 0x00000001, 0x24560169, 0x00000000, 0x28302830 },
{ 0x00000001, 0x24400021, 0x00000448, 0x00000000 },
{ 0x00000040, 0x24403dad, 0x00000440, 0xfff0fff0 },
{ 0x00000040, 0x24423dad, 0x00000442, 0xfff4fff4 },
{ 0x00000001, 0x244001ed, 0x00000000, 0xfff0fff0 },
{ 0x00000001, 0x244201ed, 0x00000000, 0xfff4fff4 },
{ 0x00000001, 0x24440021, 0x00000440, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0440, 0x00000000 },
{ 0x00000001, 0x24600061, 0x00000000, 0x00000002 },
{ 0x00000001, 0x24640061, 0x00000000, 0x00000020 },
{ 0x00000001, 0x24680061, 0x00000000, 0x30003030 },
{ 0x00600001, 0x28200021, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x28400021, 0x008d0560, 0x00000000 },
{ 0x00000001, 0x28600061, 0x00000000, 0x01010101 },
{ 0x00000001, 0x28640061, 0x00000000, 0x10010101 },
{ 0x00000001, 0x28680061, 0x00000000, 0x0f0f0f0f },
{ 0x00000001, 0x286c0061, 0x00000000, 0x100f0f0f },
{ 0x00000001, 0x28700061, 0x00000000, 0x01010101 },
{ 0x00000001, 0x28740061, 0x00000000, 0x10010101 },
{ 0x00000001, 0x28780061, 0x00000000, 0x0f0f0f0f },
{ 0x00000001, 0x287c0061, 0x00000000, 0x100f0f0f },
{ 0x00000001, 0x28800061, 0x00000000, 0x01010101 },
{ 0x00000001, 0x28840061, 0x00000000, 0x10010101 },
{ 0x00000001, 0x28880061, 0x00000000, 0x0f0f0f0f },
{ 0x00000001, 0x288c0061, 0x00000000, 0x000f0f0f },
{ 0x00400001, 0x28900061, 0x00000000, 0x00000000 },
{ 0x08600031, 0x21801ca1, 0x00000800, 0x0a784000 },
{ 0x00000001, 0x25740061, 0x00000000, 0x00000000 },
{ 0x00000001, 0x25750231, 0x00000199, 0x00000000 },
{ 0x00000001, 0x25760231, 0x0000019a, 0x00000000 },
{ 0x00000005, 0x24002d29, 0x00000180, 0x00030003 },
{ 0x00000001, 0x25740231, 0x00000400, 0x00000000 },
{ 0x00000040, 0x24880c21, 0x00000488, 0x00000002 },
{ 0x00600001, 0x28000021, 0x008d0480, 0x00000000 },
{ 0x00000001, 0x28200021, 0x00000180, 0x00000000 },
{ 0x00000001, 0x28240021, 0x00000198, 0x00000000 },
{ 0x00000001, 0x28280021, 0x00000188, 0x00000000 },
{ 0x00000001, 0x282c0021, 0x00000488, 0x00000000 },
{ 0x0a800031, 0x20001cac, 0x00000800, 0x040a0003 },
{ 0x00000040, 0x24880c21, 0x00000488, 0x00000001 },
{ 0x00600001, 0x28000021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28200021, 0x008d01a0, 0x00000000 },
{ 0x00600001, 0x28400021, 0x008d01c0, 0x00000000 },
{ 0x00600001, 0x28600021, 0x008d01e0, 0x00000000 },
{ 0x00600001, 0x28800021, 0x008d0200, 0x00000000 },
{ 0x0a800031, 0x20001cac, 0x00000800, 0x0a0a0403 },
{ 0x00000040, 0x24880c21, 0x00000488, 0x00000008 },
{ 0x00600001, 0x28000021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28200021, 0x008d0240, 0x00000000 },
{ 0x0a800031, 0x20001cac, 0x00000800, 0x040a0203 },
{ 0x00600001, 0x28600021, 0x008d01a0, 0x00000000 },
{ 0x00600001, 0x28800021, 0x008d01c0, 0x00000000 },
{ 0x00600001, 0x28a00021, 0x008d01e0, 0x00000000 },
{ 0x00600001, 0x28c00021, 0x008d0200, 0x00000000 },
{ 0x00000001, 0x244c0061, 0x00000000, 0x00243000 },
{ 0x00600001, 0x28000021, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x28200021, 0x008d0460, 0x00000000 },
{ 0x00600001, 0x28400021, 0x008d0560, 0x00000000 },
{ 0x0d600031, 0x21801ca1, 0x00000800, 0x0e786000 },
{ 0x00000040, 0x24880c21, 0x00000488, 0x00000002 },
{ 0x00600001, 0x28000021, 0x008d0480, 0x00000000 },
{ 0x00000001, 0x28200021, 0x00000180, 0x00000000 },
{ 0x00000001, 0x28240021, 0x00000198, 0x00000000 },
{ 0x00000001, 0x28280021, 0x00000188, 0x00000000 },
{ 0x00000001, 0x282c0021, 0x00000574, 0x00000000 },
{ 0x0a800031, 0x20001cac, 0x00000800, 0x040a0003 },
{ 0x00000040, 0x24880c21, 0x00000488, 0x00000001 },
{ 0x00600001, 0x28000021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28200021, 0x008d01a0, 0x00000000 },
{ 0x00600001, 0x28400021, 0x008d01c0, 0x00000000 },
{ 0x00600001, 0x28600021, 0x008d01e0, 0x00000000 },
{ 0x00600001, 0x28800021, 0x008d0200, 0x00000000 },
{ 0x0a800031, 0x20001cac, 0x00000800, 0x0a0a0403 },
{ 0x00000040, 0x24880c21, 0x00000488, 0x00000008 },
{ 0x00600001, 0x28000021, 0x008d0480, 0x00000000 },
{ 0x00600001, 0x28200021, 0x008d0240, 0x00000000 },
{ 0x0a800031, 0x20001cac, 0x00000800, 0x040a0203 },
{ 0x00600001, 0x2e000021, 0x008d0000, 0x00000000 },
{ 0x07800031, 0x24001ca8, 0x00000e00, 0x82000010 },
/drivers/video/i965/shaders/vme/intra_frame.g6b
0,0 → 1,47
{ 0x00800001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00800001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00200041, 0x24002e25, 0x004500a0, 0x00100010 },
{ 0x00000040, 0x24003ca5, 0x00000400, 0xfff8fff8 },
{ 0x00000040, 0x24043ca5, 0x00000404, 0xffffffff },
{ 0x00000001, 0x240800e1, 0x00000000, 0x0000001f },
{ 0x00000001, 0x24140231, 0x00000014, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d0400, 0x00000000 },
{ 0x04600031, 0x22401cd1, 0x00000000, 0x02188004 },
{ 0x00200041, 0x24002e25, 0x004500a0, 0x00100010 },
{ 0x00000040, 0x24003ca5, 0x00000400, 0xfffcfffc },
{ 0x00000001, 0x240800e1, 0x00000000, 0x000f0003 },
{ 0x00000001, 0x24140231, 0x00000014, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d0400, 0x00000000 },
{ 0x04600031, 0x22801cd1, 0x00000000, 0x02288004 },
{ 0x00200041, 0x24082e29, 0x004500a0, 0x00100010 },
{ 0x00000001, 0x24140231, 0x00000014, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d0400, 0x00000000 },
{ 0x00000001, 0x243c00f1, 0x00000000, 0x00000006 },
{ 0x02000010, 0x20002e28, 0x000000a0, 0x00000000 },
{ 0x00010040, 0x243d1e31, 0x0000043d, 0x00000060 },
{ 0x02000010, 0x20002e28, 0x000000a1, 0x00000000 },
{ 0x00010040, 0x243d1e31, 0x0000043d, 0x00000010 },
{ 0x02000041, 0x20004628, 0x000000a0, 0x000000a1 },
{ 0x00010040, 0x243d1e31, 0x0000043d, 0x00000004 },
{ 0x00000040, 0x24402e2d, 0x000000a0, 0x00010001 },
{ 0x00000040, 0x2440352d, 0x000000a2, 0x00004440 },
{ 0x02000041, 0x200045a0, 0x00000440, 0x000000a1 },
{ 0x00010040, 0x243d1e31, 0x0000043d, 0x00000008 },
{ 0x00600001, 0x20200022, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x20400062, 0x00000000, 0x00000000 },
{ 0x00600001, 0x20400022, 0x008d0240, 0x00000000 },
{ 0x00600001, 0x206000e2, 0x00000000, 0x00000000 },
{ 0x00800001, 0x20600232, 0x00cf0283, 0x00000000 },
{ 0x00000001, 0x20700062, 0x00000000, 0x11111111 },
{ 0x08600031, 0x21801cdd, 0x00000000, 0x08184000 },
{ 0x00000041, 0x24684521, 0x000000a2, 0x000000a1 },
{ 0x00000040, 0x24684421, 0x00000468, 0x000000a0 },
{ 0x00000001, 0x24740231, 0x00000014, 0x00000000 },
{ 0x00600001, 0x20000022, 0x008d0460, 0x00000000 },
{ 0x00000001, 0x20200022, 0x00000180, 0x00000000 },
{ 0x00000001, 0x20240022, 0x00000190, 0x00000000 },
{ 0x00000001, 0x20280022, 0x00000194, 0x00000000 },
{ 0x00000001, 0x202c0022, 0x00000198, 0x00000000 },
{ 0x05800031, 0x22001cdd, 0x00000000, 0x041b0003 },
{ 0x00600001, 0x20000022, 0x008d0000, 0x00000000 },
{ 0x07800031, 0x24001cc8, 0x00000000, 0x82000010 },
/drivers/video/i965/shaders/vme/intra_frame.g7b
0,0 → 1,47
{ 0x00800001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00800001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00200041, 0x24002e25, 0x004500a0, 0x00100010 },
{ 0x00000040, 0x24003ca5, 0x00000400, 0xfff8fff8 },
{ 0x00000040, 0x24043ca5, 0x00000404, 0xffffffff },
{ 0x00000001, 0x240800e1, 0x00000000, 0x0000001f },
{ 0x00000001, 0x24140231, 0x00000014, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0400, 0x00000000 },
{ 0x04600031, 0x22401cb1, 0x00000800, 0x02190004 },
{ 0x00200041, 0x24002e25, 0x004500a0, 0x00100010 },
{ 0x00000040, 0x24003ca5, 0x00000400, 0xfffcfffc },
{ 0x00000001, 0x240800e1, 0x00000000, 0x000f0003 },
{ 0x00000001, 0x24140231, 0x00000014, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0400, 0x00000000 },
{ 0x04600031, 0x22801cb1, 0x00000800, 0x02290004 },
{ 0x00200041, 0x24082e29, 0x004500a0, 0x00100010 },
{ 0x00000001, 0x24140231, 0x00000014, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0400, 0x00000000 },
{ 0x00000001, 0x243c00f1, 0x00000000, 0x00000006 },
{ 0x02000010, 0x20002e28, 0x000000a0, 0x00000000 },
{ 0x00010040, 0x243d1e31, 0x0000043d, 0x00000060 },
{ 0x02000010, 0x20002e28, 0x000000a1, 0x00000000 },
{ 0x00010040, 0x243d1e31, 0x0000043d, 0x00000010 },
{ 0x02000041, 0x20004628, 0x000000a0, 0x000000a1 },
{ 0x00010040, 0x243d1e31, 0x0000043d, 0x00000004 },
{ 0x00000040, 0x24402e2d, 0x000000a0, 0x00010001 },
{ 0x00000040, 0x2440352d, 0x000000a2, 0x00004440 },
{ 0x02000041, 0x200045a0, 0x00000440, 0x000000a1 },
{ 0x00010040, 0x243d1e31, 0x0000043d, 0x00000008 },
{ 0x00600001, 0x28200021, 0x008d0420, 0x00000000 },
{ 0x00600001, 0x28400061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28600021, 0x008d0240, 0x00000000 },
{ 0x00600001, 0x288000e1, 0x00000000, 0x00000000 },
{ 0x00800001, 0x28800231, 0x00cf0283, 0x00000000 },
{ 0x00000001, 0x28900061, 0x00000000, 0x11111111 },
{ 0x08600031, 0x21801cbd, 0x00000800, 0x0a184001 },
{ 0x00000041, 0x24684521, 0x000000a2, 0x000000a1 },
{ 0x00000040, 0x24684421, 0x00000468, 0x000000a0 },
{ 0x00000001, 0x24740231, 0x00000014, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0460, 0x00000000 },
{ 0x00000001, 0x28200021, 0x00000180, 0x00000000 },
{ 0x00000001, 0x28240021, 0x00000190, 0x00000000 },
{ 0x00000001, 0x28280021, 0x00000194, 0x00000000 },
{ 0x00000001, 0x282c0021, 0x00000198, 0x00000000 },
{ 0x0a800031, 0x20001cac, 0x00000800, 0x040a0000 },
{ 0x00600001, 0x28000021, 0x008d0000, 0x00000000 },
{ 0x07800031, 0x24001ca8, 0x00000800, 0x82000010 },
/drivers/video/i965/shaders/vme/intra_frame_haswell.g75b
0,0 → 1,57
{ 0x00800001, 0x24000061, 0x00000000, 0x00000000 },
{ 0x00800001, 0x24400061, 0x00000000, 0x00000000 },
{ 0x00800001, 0x24800061, 0x00000000, 0x00000000 },
{ 0x00800001, 0x24c00061, 0x00000000, 0x00000000 },
{ 0x00200009, 0x24002e25, 0x004500a0, 0x00040004 },
{ 0x00000040, 0x24003ca5, 0x00000400, 0xfff8fff8 },
{ 0x00000040, 0x24043ca5, 0x00000404, 0xffffffff },
{ 0x00000001, 0x240800e1, 0x00000000, 0x0000001f },
{ 0x00000001, 0x24140231, 0x00000014, 0x00000000 },
{ 0x00200009, 0x24202e25, 0x004500a0, 0x00040004 },
{ 0x00000040, 0x24203ca5, 0x00000420, 0xfffcfffc },
{ 0x00000001, 0x242800e1, 0x00000000, 0x000f0003 },
{ 0x00000001, 0x24340231, 0x00000014, 0x00000000 },
{ 0x00200009, 0x24482e29, 0x004500a0, 0x00040004 },
{ 0x00000001, 0x24540231, 0x00000014, 0x00000000 },
{ 0x00000041, 0x24884521, 0x000000a2, 0x000000a1 },
{ 0x00000040, 0x24884421, 0x00000488, 0x000000a0 },
{ 0x00000041, 0x24880c21, 0x00000488, 0x00000002 },
{ 0x00000001, 0x24940231, 0x00000014, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0400, 0x00000000 },
{ 0x04600031, 0x23801cb1, 0x00000800, 0x02190004 },
{ 0x00600001, 0x28000021, 0x008d0420, 0x00000000 },
{ 0x04600031, 0x23a01cb1, 0x00000800, 0x02290004 },
{ 0x00600001, 0x28400021, 0x008d0020, 0x00000000 },
{ 0x00600001, 0x28600061, 0x00000000, 0x00000000 },
{ 0x00000001, 0x23800061, 0x00000000, 0x00000000 },
{ 0x00000005, 0x23840c21, 0x00000384, 0xff000000 },
{ 0x00600001, 0x28800021, 0x008d0380, 0x00000000 },
{ 0x00600001, 0x28a00061, 0x00000000, 0x00000000 },
{ 0x00800001, 0x28a00231, 0x00cf03a3, 0x00000000 },
{ 0x00000001, 0x28b00061, 0x00000000, 0x11111111 },
{ 0x00000001, 0x28bc0061, 0x00000000, 0x00010101 },
{ 0x00600001, 0x28c00061, 0x00000000, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0440, 0x00000000 },
{ 0x00000001, 0x24000169, 0x00000000, 0x00010001 },
{ 0x00000001, 0x28850231, 0x00000400, 0x00000000 },
{ 0x00000001, 0x247c0169, 0x00000000, 0x00000000 },
{ 0x01000005, 0x20002e28, 0x000000a4, 0x00010001 },
{ 0x00010001, 0x247c00f1, 0x00000000, 0x00000002 },
{ 0x00000001, 0x247d0231, 0x000000a5, 0x00000000 },
{ 0x00000001, 0x24000169, 0x00000000, 0x00200020 },
{ 0x00000001, 0x247e0231, 0x00000400, 0x00000000 },
{ 0x00600001, 0x28000021, 0x008d0440, 0x00000000 },
{ 0x00600001, 0x28200021, 0x008d0460, 0x00000000 },
{ 0x0d600031, 0x21801ca1, 0x00000800, 0x0e782000 },
{ 0x00600001, 0x28000021, 0x008d0480, 0x00000000 },
{ 0x00000001, 0x28200021, 0x00000180, 0x00000000 },
{ 0x00000001, 0x28240021, 0x00000190, 0x00000000 },
{ 0x00000001, 0x28280021, 0x00000194, 0x00000000 },
{ 0x00000001, 0x282c0021, 0x00000198, 0x00000000 },
{ 0x00000001, 0x28300129, 0x0000018c, 0x00000000 },
{ 0x00000001, 0x28340021, 0x00000188, 0x00000000 },
{ 0x00000001, 0x28380021, 0x0000019c, 0x00000000 },
{ 0x00000001, 0x283c0021, 0x00000488, 0x00000000 },
{ 0x0a800031, 0x20001cac, 0x00000800, 0x040a0203 },
{ 0x00600001, 0x2e000021, 0x008d0000, 0x00000000 },
{ 0x07800031, 0x24001ca8, 0x00000e00, 0x82000010 },