[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] hvm: rombios interface for HVM S3



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1211290565 -3600
# Node ID 7c752689b0eaeff1cc68e39931040d0bda04aa25
# Parent  34ac0d3b5bfb59c7133a53061bfe8933faf404ef
hvm: rombios interface for HVM S3
 - add S3 package in ACPI DSDT table. Guest OS will get S3 value from
   this package and write the value to PM1A control register to
   trigger S3 suspend.
 - Add S3 resume logic in rombios post code. the CMOS shutdown register
   is used to indicate if this is a S3 resume.
 - if it is s3 resume, rombios will get wakeup vector from ACPI FACS
   table and jump to wakeup vector. Per ACPI spec, the wakeup vector
   jumping must be the forms CS:IP, in which CS=3D(wakeup vector>>4)
   IP=3D(wakeup vector)&0xF, for example, for vector=3D0x12345,
   CS:IP=3D0x1234:0x5

Note: clobber_entry_point will clobber the post entry, which make S3
resume not work. We will directly jmp to POST Entry if it in S3
Resume path.

Signed-off-by: Yu Ke <ke.yu@xxxxxxxxx>
Signed-off-by: Ke Liping <liping.ke@xxxxxxxxx>
Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
---
 tools/firmware/hvmloader/acpi/dsdt.asl |   12 
 tools/firmware/hvmloader/acpi/dsdt.c   | 1024 ++++++++++++++++-----------------
 tools/firmware/rombios/rombios.c       |   91 ++
 3 files changed, 615 insertions(+), 512 deletions(-)

diff -r 34ac0d3b5bfb -r 7c752689b0ea tools/firmware/hvmloader/acpi/dsdt.asl
--- a/tools/firmware/hvmloader/acpi/dsdt.asl    Tue May 20 14:28:19 2008 +0100
+++ b/tools/firmware/hvmloader/acpi/dsdt.asl    Tue May 20 14:36:05 2008 +0100
@@ -52,7 +52,17 @@ DefinitionBlock ("DSDT.aml", "DSDT", 2, 
          * at HVM guest boot time. */
     }
 
-    /* S4 (STD) and S5 (power-off) type codes: must match piix4 emulation. */
+    /*
+     * S3 (suspend-to-ram), S4 (suspend-to-disc) and S5 (power-off) type codes:
+     * must match piix4 emulation.
+     */
+    Name (\_S3, Package (0x04)
+    {
+        0x05,  /* PM1a_CNT.SLP_TYP */
+        0x05,  /* PM1b_CNT.SLP_TYP */
+        0x0,   /* reserved */
+        0x0    /* reserved */
+    })
     Name (\_S4, Package (0x04)
     {
         0x06,  /* PM1a_CNT.SLP_TYP */
diff -r 34ac0d3b5bfb -r 7c752689b0ea tools/firmware/hvmloader/acpi/dsdt.c
--- a/tools/firmware/hvmloader/acpi/dsdt.c      Tue May 20 14:28:19 2008 +0100
+++ b/tools/firmware/hvmloader/acpi/dsdt.c      Tue May 20 14:36:05 2008 +0100
@@ -5,15 +5,15 @@
  * Copyright (C) 2000 - 2006 Intel Corporation
  * Supports ACPI Specification Revision 3.0a
  * 
- * Compilation of "dsdt.asl" - Tue Mar 25 10:53:38 2008
+ * Compilation of "dsdt.asl" - Tue May 20 14:34:40 2008
  * 
  * C source code output
  *
  */
 unsigned char AmlCode[] =
 {
-    0x44,0x53,0x44,0x54,0x24,0x11,0x00,0x00,  /* 00000000    "DSDT$..." */
-    0x02,0x82,0x58,0x65,0x6E,0x00,0x00,0x00,  /* 00000008    "..Xen..." */
+    0x44,0x53,0x44,0x54,0x32,0x11,0x00,0x00,  /* 00000000    "DSDT2..." */
+    0x02,0xEC,0x58,0x65,0x6E,0x00,0x00,0x00,  /* 00000008    "..Xen..." */
     0x48,0x56,0x4D,0x00,0x00,0x00,0x00,0x00,  /* 00000010    "HVM....." */
     0x00,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C,  /* 00000018    "....INTL" */
     0x07,0x07,0x06,0x20,0x08,0x50,0x4D,0x42,  /* 00000020    "... .PMB" */
@@ -48,518 +48,520 @@ unsigned char AmlCode[] =
     0x00,0x5B,0x83,0x0B,0x50,0x52,0x30,0x44,  /* 00000108    ".[..PR0D" */
     0x0D,0x00,0x00,0x00,0x00,0x00,0x5B,0x83,  /* 00000110    "......[." */
     0x0B,0x50,0x52,0x30,0x45,0x0E,0x00,0x00,  /* 00000118    ".PR0E..." */
-    0x00,0x00,0x00,0x08,0x5F,0x53,0x34,0x5F,  /* 00000120    "...._S4_" */
-    0x12,0x08,0x04,0x0A,0x06,0x0A,0x06,0x00,  /* 00000128    "........" */
-    0x00,0x08,0x5F,0x53,0x35,0x5F,0x12,0x08,  /* 00000130    ".._S5_.." */
-    0x04,0x0A,0x07,0x0A,0x07,0x00,0x00,0x08,  /* 00000138    "........" */
-    0x50,0x49,0x43,0x44,0x00,0x14,0x0C,0x5F,  /* 00000140    "PICD..._" */
-    0x50,0x49,0x43,0x01,0x70,0x68,0x50,0x49,  /* 00000148    "PIC.phPI" */
-    0x43,0x44,0x10,0x42,0xF1,0x5F,0x53,0x42,  /* 00000150    "CD.B._SB" */
-    0x5F,0x5B,0x80,0x42,0x49,0x4F,0x53,0x00,  /* 00000158    "_[.BIOS." */
-    0x0C,0x00,0xA0,0x0E,0x00,0x0A,0x10,0x5B,  /* 00000160    ".......[" */
-    0x81,0x21,0x42,0x49,0x4F,0x53,0x01,0x55,  /* 00000168    ".!BIOS.U" */
-    0x41,0x52,0x31,0x01,0x55,0x41,0x52,0x32,  /* 00000170    "AR1.UAR2" */
-    0x01,0x48,0x50,0x45,0x54,0x01,0x00,0x1D,  /* 00000178    ".HPET..." */
-    0x50,0x4D,0x49,0x4E,0x20,0x50,0x4C,0x45,  /* 00000180    "PMIN PLE" */
-    0x4E,0x20,0x5B,0x82,0x49,0x04,0x4D,0x45,  /* 00000188    "N [.I.ME" */
-    0x4D,0x30,0x08,0x5F,0x48,0x49,0x44,0x0C,  /* 00000190    "M0._HID." */
-    0x41,0xD0,0x0C,0x02,0x08,0x5F,0x43,0x52,  /* 00000198    "A...._CR" */
-    0x53,0x11,0x33,0x0A,0x30,0x8A,0x2B,0x00,  /* 000001A0    "S.3.0.+." */
-    0x00,0x0D,0x03,0x00,0x00,0x00,0x00,0x00,  /* 000001A8    "........" */
-    0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 000001B0    "........" */
-    0x00,0x00,0x00,0xFF,0xFF,0x09,0x00,0x00,  /* 000001B8    "........" */
+    0x00,0x00,0x00,0x08,0x5F,0x53,0x33,0x5F,  /* 00000120    "...._S3_" */
+    0x12,0x08,0x04,0x0A,0x05,0x0A,0x05,0x00,  /* 00000128    "........" */
+    0x00,0x08,0x5F,0x53,0x34,0x5F,0x12,0x08,  /* 00000130    ".._S4_.." */
+    0x04,0x0A,0x06,0x0A,0x06,0x00,0x00,0x08,  /* 00000138    "........" */
+    0x5F,0x53,0x35,0x5F,0x12,0x08,0x04,0x0A,  /* 00000140    "_S5_...." */
+    0x07,0x0A,0x07,0x00,0x00,0x08,0x50,0x49,  /* 00000148    "......PI" */
+    0x43,0x44,0x00,0x14,0x0C,0x5F,0x50,0x49,  /* 00000150    "CD..._PI" */
+    0x43,0x01,0x70,0x68,0x50,0x49,0x43,0x44,  /* 00000158    "C.phPICD" */
+    0x10,0x42,0xF1,0x5F,0x53,0x42,0x5F,0x5B,  /* 00000160    ".B._SB_[" */
+    0x80,0x42,0x49,0x4F,0x53,0x00,0x0C,0x00,  /* 00000168    ".BIOS..." */
+    0xA0,0x0E,0x00,0x0A,0x10,0x5B,0x81,0x21,  /* 00000170    ".....[.!" */
+    0x42,0x49,0x4F,0x53,0x01,0x55,0x41,0x52,  /* 00000178    "BIOS.UAR" */
+    0x31,0x01,0x55,0x41,0x52,0x32,0x01,0x48,  /* 00000180    "1.UAR2.H" */
+    0x50,0x45,0x54,0x01,0x00,0x1D,0x50,0x4D,  /* 00000188    "PET...PM" */
+    0x49,0x4E,0x20,0x50,0x4C,0x45,0x4E,0x20,  /* 00000190    "IN PLEN " */
+    0x5B,0x82,0x49,0x04,0x4D,0x45,0x4D,0x30,  /* 00000198    "[.I.MEM0" */
+    0x08,0x5F,0x48,0x49,0x44,0x0C,0x41,0xD0,  /* 000001A0    "._HID.A." */
+    0x0C,0x02,0x08,0x5F,0x43,0x52,0x53,0x11,  /* 000001A8    "..._CRS." */
+    0x33,0x0A,0x30,0x8A,0x2B,0x00,0x00,0x0D,  /* 000001B0    "3.0.+..." */
+    0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 000001B8    "........" */
     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 000001C0    "........" */
-    0x00,0x00,0x00,0x00,0x00,0x0A,0x00,0x00,  /* 000001C8    "........" */
-    0x00,0x00,0x00,0x79,0x00,0x5B,0x82,0x4E,  /* 000001D0    "...y.[.N" */
-    0xE8,0x50,0x43,0x49,0x30,0x08,0x5F,0x48,  /* 000001D8    ".PCI0._H" */
-    0x49,0x44,0x0C,0x41,0xD0,0x0A,0x03,0x08,  /* 000001E0    "ID.A...." */
-    0x5F,0x55,0x49,0x44,0x00,0x08,0x5F,0x41,  /* 000001E8    "_UID.._A" */
-    0x44,0x52,0x00,0x08,0x5F,0x42,0x42,0x4E,  /* 000001F0    "DR.._BBN" */
-    0x00,0x14,0x4E,0x0C,0x5F,0x43,0x52,0x53,  /* 000001F8    "..N._CRS" */
-    0x00,0x08,0x50,0x52,0x54,0x30,0x11,0x42,  /* 00000200    "..PRT0.B" */
-    0x07,0x0A,0x6E,0x88,0x0D,0x00,0x02,0x0E,  /* 00000208    "..n....." */
-    0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,  /* 00000210    "........" */
-    0x00,0x00,0x01,0x47,0x01,0xF8,0x0C,0xF8,  /* 00000218    "...G...." */
-    0x0C,0x01,0x08,0x88,0x0D,0x00,0x01,0x0C,  /* 00000220    "........" */
-    0x03,0x00,0x00,0x00,0x00,0xF7,0x0C,0x00,  /* 00000228    "........" */
-    0x00,0xF8,0x0C,0x88,0x0D,0x00,0x01,0x0C,  /* 00000230    "........" */
-    0x03,0x00,0x00,0x00,0x0D,0xFF,0xFF,0x00,  /* 00000238    "........" */
-    0x00,0x00,0xF3,0x87,0x17,0x00,0x00,0x0C,  /* 00000240    "........" */
-    0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x0A,  /* 00000248    "........" */
-    0x00,0xFF,0xFF,0x0B,0x00,0x00,0x00,0x00,  /* 00000250    "........" */
-    0x00,0x00,0x00,0x02,0x00,0x87,0x17,0x00,  /* 00000258    "........" */
-    0x00,0x0C,0x03,0x00,0x00,0x00,0x00,0x00,  /* 00000260    "........" */
-    0x00,0x00,0xF0,0xFF,0xFF,0xFF,0xF4,0x00,  /* 00000268    "........" */
-    0x00,0x00,0x00,0x00,0x00,0x00,0x05,0x79,  /* 00000270    ".......y" */
-    0x00,0x8A,0x50,0x52,0x54,0x30,0x0A,0x5C,  /* 00000278    "..PRT0.\" */
-    0x4D,0x4D,0x49,0x4E,0x8A,0x50,0x52,0x54,  /* 00000280    "MMIN.PRT" */
-    0x30,0x0A,0x60,0x4D,0x4D,0x41,0x58,0x8A,  /* 00000288    "0.`MMAX." */
-    0x50,0x52,0x54,0x30,0x0A,0x68,0x4D,0x4C,  /* 00000290    "PRT0.hML" */
-    0x45,0x4E,0x70,0x50,0x4D,0x49,0x4E,0x4D,  /* 00000298    "ENpPMINM" */
-    0x4D,0x49,0x4E,0x70,0x50,0x4C,0x45,0x4E,  /* 000002A0    "MINpPLEN" */
-    0x4D,0x4C,0x45,0x4E,0x72,0x4D,0x4D,0x49,  /* 000002A8    "MLENrMMI" */
-    0x4E,0x4D,0x4C,0x45,0x4E,0x4D,0x4D,0x41,  /* 000002B0    "NMLENMMA" */
-    0x58,0x74,0x4D,0x4D,0x41,0x58,0x01,0x4D,  /* 000002B8    "XtMMAX.M" */
-    0x4D,0x41,0x58,0xA4,0x50,0x52,0x54,0x30,  /* 000002C0    "MAX.PRT0" */
-    0x08,0x42,0x55,0x46,0x41,0x11,0x09,0x0A,  /* 000002C8    ".BUFA..." */
-    0x06,0x23,0x20,0x0C,0x18,0x79,0x00,0x08,  /* 000002D0    ".# ..y.." */
-    0x42,0x55,0x46,0x42,0x11,0x09,0x0A,0x06,  /* 000002D8    "BUFB...." */
-    0x23,0x00,0x00,0x18,0x79,0x00,0x8B,0x42,  /* 000002E0    "#...y..B" */
-    0x55,0x46,0x42,0x01,0x49,0x52,0x51,0x56,  /* 000002E8    "UFB.IRQV" */
-    0x5B,0x82,0x48,0x08,0x4C,0x4E,0x4B,0x41,  /* 000002F0    "[.H.LNKA" */
-    0x08,0x5F,0x48,0x49,0x44,0x0C,0x41,0xD0,  /* 000002F8    "._HID.A." */
-    0x0C,0x0F,0x08,0x5F,0x55,0x49,0x44,0x01,  /* 00000300    "..._UID." */
-    0x14,0x1C,0x5F,0x53,0x54,0x41,0x00,0x7B,  /* 00000308    ".._STA.{" */
-    0x50,0x49,0x52,0x41,0x0A,0x80,0x60,0xA0,  /* 00000310    "PIRA..`." */
-    0x08,0x93,0x60,0x0A,0x80,0xA4,0x0A,0x09,  /* 00000318    "..`....." */
-    0xA1,0x04,0xA4,0x0A,0x0B,0x14,0x0B,0x5F,  /* 00000320    "......._" */
-    0x50,0x52,0x53,0x00,0xA4,0x42,0x55,0x46,  /* 00000328    "PRS..BUF" */
-    0x41,0x14,0x11,0x5F,0x44,0x49,0x53,0x00,  /* 00000330    "A.._DIS." */
-    0x7D,0x50,0x49,0x52,0x41,0x0A,0x80,0x50,  /* 00000338    "}PIRA..P" */
-    0x49,0x52,0x41,0x14,0x1A,0x5F,0x43,0x52,  /* 00000340    "IRA.._CR" */
-    0x53,0x00,0x7B,0x50,0x49,0x52,0x41,0x0A,  /* 00000348    "S.{PIRA." */
-    0x0F,0x60,0x79,0x01,0x60,0x49,0x52,0x51,  /* 00000350    ".`y.`IRQ" */
-    0x56,0xA4,0x42,0x55,0x46,0x42,0x14,0x1B,  /* 00000358    "V.BUFB.." */
-    0x5F,0x53,0x52,0x53,0x01,0x8B,0x68,0x01,  /* 00000360    "_SRS..h." */
-    0x49,0x52,0x51,0x31,0x82,0x49,0x52,0x51,  /* 00000368    "IRQ1.IRQ" */
-    0x31,0x60,0x76,0x60,0x70,0x60,0x50,0x49,  /* 00000370    "1`v`p`PI" */
-    0x52,0x41,0x5B,0x82,0x49,0x08,0x4C,0x4E,  /* 00000378    "RA[.I.LN" */
-    0x4B,0x42,0x08,0x5F,0x48,0x49,0x44,0x0C,  /* 00000380    "KB._HID." */
-    0x41,0xD0,0x0C,0x0F,0x08,0x5F,0x55,0x49,  /* 00000388    "A...._UI" */
-    0x44,0x0A,0x02,0x14,0x1C,0x5F,0x53,0x54,  /* 00000390    "D...._ST" */
-    0x41,0x00,0x7B,0x50,0x49,0x52,0x42,0x0A,  /* 00000398    "A.{PIRB." */
-    0x80,0x60,0xA0,0x08,0x93,0x60,0x0A,0x80,  /* 000003A0    ".`...`.." */
-    0xA4,0x0A,0x09,0xA1,0x04,0xA4,0x0A,0x0B,  /* 000003A8    "........" */
-    0x14,0x0B,0x5F,0x50,0x52,0x53,0x00,0xA4,  /* 000003B0    ".._PRS.." */
-    0x42,0x55,0x46,0x41,0x14,0x11,0x5F,0x44,  /* 000003B8    "BUFA.._D" */
-    0x49,0x53,0x00,0x7D,0x50,0x49,0x52,0x42,  /* 000003C0    "IS.}PIRB" */
-    0x0A,0x80,0x50,0x49,0x52,0x42,0x14,0x1A,  /* 000003C8    "..PIRB.." */
-    0x5F,0x43,0x52,0x53,0x00,0x7B,0x50,0x49,  /* 000003D0    "_CRS.{PI" */
-    0x52,0x42,0x0A,0x0F,0x60,0x79,0x01,0x60,  /* 000003D8    "RB..`y.`" */
-    0x49,0x52,0x51,0x56,0xA4,0x42,0x55,0x46,  /* 000003E0    "IRQV.BUF" */
-    0x42,0x14,0x1B,0x5F,0x53,0x52,0x53,0x01,  /* 000003E8    "B.._SRS." */
-    0x8B,0x68,0x01,0x49,0x52,0x51,0x31,0x82,  /* 000003F0    ".h.IRQ1." */
-    0x49,0x52,0x51,0x31,0x60,0x76,0x60,0x70,  /* 000003F8    "IRQ1`v`p" */
-    0x60,0x50,0x49,0x52,0x42,0x5B,0x82,0x49,  /* 00000400    "`PIRB[.I" */
-    0x08,0x4C,0x4E,0x4B,0x43,0x08,0x5F,0x48,  /* 00000408    ".LNKC._H" */
-    0x49,0x44,0x0C,0x41,0xD0,0x0C,0x0F,0x08,  /* 00000410    "ID.A...." */
-    0x5F,0x55,0x49,0x44,0x0A,0x03,0x14,0x1C,  /* 00000418    "_UID...." */
-    0x5F,0x53,0x54,0x41,0x00,0x7B,0x50,0x49,  /* 00000420    "_STA.{PI" */
-    0x52,0x43,0x0A,0x80,0x60,0xA0,0x08,0x93,  /* 00000428    "RC..`..." */
-    0x60,0x0A,0x80,0xA4,0x0A,0x09,0xA1,0x04,  /* 00000430    "`......." */
-    0xA4,0x0A,0x0B,0x14,0x0B,0x5F,0x50,0x52,  /* 00000438    "....._PR" */
-    0x53,0x00,0xA4,0x42,0x55,0x46,0x41,0x14,  /* 00000440    "S..BUFA." */
-    0x11,0x5F,0x44,0x49,0x53,0x00,0x7D,0x50,  /* 00000448    "._DIS.}P" */
-    0x49,0x52,0x43,0x0A,0x80,0x50,0x49,0x52,  /* 00000450    "IRC..PIR" */
-    0x43,0x14,0x1A,0x5F,0x43,0x52,0x53,0x00,  /* 00000458    "C.._CRS." */
-    0x7B,0x50,0x49,0x52,0x43,0x0A,0x0F,0x60,  /* 00000460    "{PIRC..`" */
-    0x79,0x01,0x60,0x49,0x52,0x51,0x56,0xA4,  /* 00000468    "y.`IRQV." */
-    0x42,0x55,0x46,0x42,0x14,0x1B,0x5F,0x53,  /* 00000470    "BUFB.._S" */
-    0x52,0x53,0x01,0x8B,0x68,0x01,0x49,0x52,  /* 00000478    "RS..h.IR" */
-    0x51,0x31,0x82,0x49,0x52,0x51,0x31,0x60,  /* 00000480    "Q1.IRQ1`" */
-    0x76,0x60,0x70,0x60,0x50,0x49,0x52,0x43,  /* 00000488    "v`p`PIRC" */
-    0x5B,0x82,0x49,0x08,0x4C,0x4E,0x4B,0x44,  /* 00000490    "[.I.LNKD" */
-    0x08,0x5F,0x48,0x49,0x44,0x0C,0x41,0xD0,  /* 00000498    "._HID.A." */
-    0x0C,0x0F,0x08,0x5F,0x55,0x49,0x44,0x0A,  /* 000004A0    "..._UID." */
-    0x04,0x14,0x1C,0x5F,0x53,0x54,0x41,0x00,  /* 000004A8    "..._STA." */
-    0x7B,0x50,0x49,0x52,0x44,0x0A,0x80,0x60,  /* 000004B0    "{PIRD..`" */
-    0xA0,0x08,0x93,0x60,0x0A,0x80,0xA4,0x0A,  /* 000004B8    "...`...." */
-    0x09,0xA1,0x04,0xA4,0x0A,0x0B,0x14,0x0B,  /* 000004C0    "........" */
-    0x5F,0x50,0x52,0x53,0x00,0xA4,0x42,0x55,  /* 000004C8    "_PRS..BU" */
-    0x46,0x41,0x14,0x11,0x5F,0x44,0x49,0x53,  /* 000004D0    "FA.._DIS" */
-    0x00,0x7D,0x50,0x49,0x52,0x44,0x0A,0x80,  /* 000004D8    ".}PIRD.." */
-    0x50,0x49,0x52,0x44,0x14,0x1A,0x5F,0x43,  /* 000004E0    "PIRD.._C" */
-    0x52,0x53,0x00,0x7B,0x50,0x49,0x52,0x44,  /* 000004E8    "RS.{PIRD" */
-    0x0A,0x0F,0x60,0x79,0x01,0x60,0x49,0x52,  /* 000004F0    "..`y.`IR" */
-    0x51,0x56,0xA4,0x42,0x55,0x46,0x42,0x14,  /* 000004F8    "QV.BUFB." */
-    0x1B,0x5F,0x53,0x52,0x53,0x01,0x8B,0x68,  /* 00000500    "._SRS..h" */
-    0x01,0x49,0x52,0x51,0x31,0x82,0x49,0x52,  /* 00000508    ".IRQ1.IR" */
-    0x51,0x31,0x60,0x76,0x60,0x70,0x60,0x50,  /* 00000510    "Q1`v`p`P" */
-    0x49,0x52,0x44,0x5B,0x82,0x44,0x05,0x48,  /* 00000518    "IRD[.D.H" */
-    0x50,0x45,0x54,0x08,0x5F,0x48,0x49,0x44,  /* 00000520    "PET._HID" */
-    0x0C,0x41,0xD0,0x01,0x03,0x08,0x5F,0x55,  /* 00000528    ".A...._U" */
-    0x49,0x44,0x00,0x14,0x18,0x5F,0x53,0x54,  /* 00000530    "ID..._ST" */
-    0x41,0x00,0xA0,0x0C,0x93,0x5E,0x5E,0x5E,  /* 00000538    "A....^^^" */
-    0x48,0x50,0x45,0x54,0x00,0xA4,0x00,0xA1,  /* 00000540    "HPET...." */
-    0x04,0xA4,0x0A,0x0F,0x08,0x5F,0x43,0x52,  /* 00000548    "....._CR" */
-    0x53,0x11,0x1F,0x0A,0x1C,0x87,0x17,0x00,  /* 00000550    "S......." */
-    0x00,0x0D,0x01,0x00,0x00,0x00,0x00,0x00,  /* 00000558    "........" */
-    0x00,0xD0,0xFE,0xFF,0x03,0xD0,0xFE,0x00,  /* 00000560    "........" */
-    0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x79,  /* 00000568    ".......y" */
-    0x00,0x14,0x16,0x5F,0x50,0x52,0x54,0x00,  /* 00000570    "..._PRT." */
-    0xA0,0x0A,0x50,0x49,0x43,0x44,0xA4,0x50,  /* 00000578    "..PICD.P" */
-    0x52,0x54,0x41,0xA4,0x50,0x52,0x54,0x50,  /* 00000580    "RTA.PRTP" */
-    0x08,0x50,0x52,0x54,0x50,0x12,0x49,0x36,  /* 00000588    ".PRTP.I6" */
-    0x3C,0x12,0x0D,0x04,0x0C,0xFF,0xFF,0x01,  /* 00000590    "<......." */
-    0x00,0x00,0x4C,0x4E,0x4B,0x42,0x00,0x12,  /* 00000598    "..LNKB.." */
-    0x0D,0x04,0x0C,0xFF,0xFF,0x01,0x00,0x01,  /* 000005A0    "........" */
-    0x4C,0x4E,0x4B,0x43,0x00,0x12,0x0E,0x04,  /* 000005A8    "LNKC...." */
-    0x0C,0xFF,0xFF,0x01,0x00,0x0A,0x02,0x4C,  /* 000005B0    ".......L" */
-    0x4E,0x4B,0x44,0x00,0x12,0x0E,0x04,0x0C,  /* 000005B8    "NKD....." */
-    0xFF,0xFF,0x01,0x00,0x0A,0x03,0x4C,0x4E,  /* 000005C0    "......LN" */
-    0x4B,0x41,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 000005C8    "KA......" */
-    0xFF,0x02,0x00,0x00,0x4C,0x4E,0x4B,0x43,  /* 000005D0    "....LNKC" */
+    0x00,0xFF,0xFF,0x09,0x00,0x00,0x00,0x00,  /* 000001C8    "........" */
+    0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 000001D0    "........" */
+    0x00,0x00,0x00,0x0A,0x00,0x00,0x00,0x00,  /* 000001D8    "........" */
+    0x00,0x79,0x00,0x5B,0x82,0x4E,0xE8,0x50,  /* 000001E0    ".y.[.N.P" */
+    0x43,0x49,0x30,0x08,0x5F,0x48,0x49,0x44,  /* 000001E8    "CI0._HID" */
+    0x0C,0x41,0xD0,0x0A,0x03,0x08,0x5F,0x55,  /* 000001F0    ".A...._U" */
+    0x49,0x44,0x00,0x08,0x5F,0x41,0x44,0x52,  /* 000001F8    "ID.._ADR" */
+    0x00,0x08,0x5F,0x42,0x42,0x4E,0x00,0x14,  /* 00000200    ".._BBN.." */
+    0x4E,0x0C,0x5F,0x43,0x52,0x53,0x00,0x08,  /* 00000208    "N._CRS.." */
+    0x50,0x52,0x54,0x30,0x11,0x42,0x07,0x0A,  /* 00000210    "PRT0.B.." */
+    0x6E,0x88,0x0D,0x00,0x02,0x0E,0x00,0x00,  /* 00000218    "n......." */
+    0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,  /* 00000220    "........" */
+    0x01,0x47,0x01,0xF8,0x0C,0xF8,0x0C,0x01,  /* 00000228    ".G......" */
+    0x08,0x88,0x0D,0x00,0x01,0x0C,0x03,0x00,  /* 00000230    "........" */
+    0x00,0x00,0x00,0xF7,0x0C,0x00,0x00,0xF8,  /* 00000238    "........" */
+    0x0C,0x88,0x0D,0x00,0x01,0x0C,0x03,0x00,  /* 00000240    "........" */
+    0x00,0x00,0x0D,0xFF,0xFF,0x00,0x00,0x00,  /* 00000248    "........" */
+    0xF3,0x87,0x17,0x00,0x00,0x0C,0x03,0x00,  /* 00000250    "........" */
+    0x00,0x00,0x00,0x00,0x00,0x0A,0x00,0xFF,  /* 00000258    "........" */
+    0xFF,0x0B,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000260    "........" */
+    0x00,0x02,0x00,0x87,0x17,0x00,0x00,0x0C,  /* 00000268    "........" */
+    0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,  /* 00000270    "........" */
+    0xF0,0xFF,0xFF,0xFF,0xF4,0x00,0x00,0x00,  /* 00000278    "........" */
+    0x00,0x00,0x00,0x00,0x05,0x79,0x00,0x8A,  /* 00000280    ".....y.." */
+    0x50,0x52,0x54,0x30,0x0A,0x5C,0x4D,0x4D,  /* 00000288    "PRT0.\MM" */
+    0x49,0x4E,0x8A,0x50,0x52,0x54,0x30,0x0A,  /* 00000290    "IN.PRT0." */
+    0x60,0x4D,0x4D,0x41,0x58,0x8A,0x50,0x52,  /* 00000298    "`MMAX.PR" */
+    0x54,0x30,0x0A,0x68,0x4D,0x4C,0x45,0x4E,  /* 000002A0    "T0.hMLEN" */
+    0x70,0x50,0x4D,0x49,0x4E,0x4D,0x4D,0x49,  /* 000002A8    "pPMINMMI" */
+    0x4E,0x70,0x50,0x4C,0x45,0x4E,0x4D,0x4C,  /* 000002B0    "NpPLENML" */
+    0x45,0x4E,0x72,0x4D,0x4D,0x49,0x4E,0x4D,  /* 000002B8    "ENrMMINM" */
+    0x4C,0x45,0x4E,0x4D,0x4D,0x41,0x58,0x74,  /* 000002C0    "LENMMAXt" */
+    0x4D,0x4D,0x41,0x58,0x01,0x4D,0x4D,0x41,  /* 000002C8    "MMAX.MMA" */
+    0x58,0xA4,0x50,0x52,0x54,0x30,0x08,0x42,  /* 000002D0    "X.PRT0.B" */
+    0x55,0x46,0x41,0x11,0x09,0x0A,0x06,0x23,  /* 000002D8    "UFA....#" */
+    0x20,0x0C,0x18,0x79,0x00,0x08,0x42,0x55,  /* 000002E0    " ..y..BU" */
+    0x46,0x42,0x11,0x09,0x0A,0x06,0x23,0x00,  /* 000002E8    "FB....#." */
+    0x00,0x18,0x79,0x00,0x8B,0x42,0x55,0x46,  /* 000002F0    "..y..BUF" */
+    0x42,0x01,0x49,0x52,0x51,0x56,0x5B,0x82,  /* 000002F8    "B.IRQV[." */
+    0x48,0x08,0x4C,0x4E,0x4B,0x41,0x08,0x5F,  /* 00000300    "H.LNKA._" */
+    0x48,0x49,0x44,0x0C,0x41,0xD0,0x0C,0x0F,  /* 00000308    "HID.A..." */
+    0x08,0x5F,0x55,0x49,0x44,0x01,0x14,0x1C,  /* 00000310    "._UID..." */
+    0x5F,0x53,0x54,0x41,0x00,0x7B,0x50,0x49,  /* 00000318    "_STA.{PI" */
+    0x52,0x41,0x0A,0x80,0x60,0xA0,0x08,0x93,  /* 00000320    "RA..`..." */
+    0x60,0x0A,0x80,0xA4,0x0A,0x09,0xA1,0x04,  /* 00000328    "`......." */
+    0xA4,0x0A,0x0B,0x14,0x0B,0x5F,0x50,0x52,  /* 00000330    "....._PR" */
+    0x53,0x00,0xA4,0x42,0x55,0x46,0x41,0x14,  /* 00000338    "S..BUFA." */
+    0x11,0x5F,0x44,0x49,0x53,0x00,0x7D,0x50,  /* 00000340    "._DIS.}P" */
+    0x49,0x52,0x41,0x0A,0x80,0x50,0x49,0x52,  /* 00000348    "IRA..PIR" */
+    0x41,0x14,0x1A,0x5F,0x43,0x52,0x53,0x00,  /* 00000350    "A.._CRS." */
+    0x7B,0x50,0x49,0x52,0x41,0x0A,0x0F,0x60,  /* 00000358    "{PIRA..`" */
+    0x79,0x01,0x60,0x49,0x52,0x51,0x56,0xA4,  /* 00000360    "y.`IRQV." */
+    0x42,0x55,0x46,0x42,0x14,0x1B,0x5F,0x53,  /* 00000368    "BUFB.._S" */
+    0x52,0x53,0x01,0x8B,0x68,0x01,0x49,0x52,  /* 00000370    "RS..h.IR" */
+    0x51,0x31,0x82,0x49,0x52,0x51,0x31,0x60,  /* 00000378    "Q1.IRQ1`" */
+    0x76,0x60,0x70,0x60,0x50,0x49,0x52,0x41,  /* 00000380    "v`p`PIRA" */
+    0x5B,0x82,0x49,0x08,0x4C,0x4E,0x4B,0x42,  /* 00000388    "[.I.LNKB" */
+    0x08,0x5F,0x48,0x49,0x44,0x0C,0x41,0xD0,  /* 00000390    "._HID.A." */
+    0x0C,0x0F,0x08,0x5F,0x55,0x49,0x44,0x0A,  /* 00000398    "..._UID." */
+    0x02,0x14,0x1C,0x5F,0x53,0x54,0x41,0x00,  /* 000003A0    "..._STA." */
+    0x7B,0x50,0x49,0x52,0x42,0x0A,0x80,0x60,  /* 000003A8    "{PIRB..`" */
+    0xA0,0x08,0x93,0x60,0x0A,0x80,0xA4,0x0A,  /* 000003B0    "...`...." */
+    0x09,0xA1,0x04,0xA4,0x0A,0x0B,0x14,0x0B,  /* 000003B8    "........" */
+    0x5F,0x50,0x52,0x53,0x00,0xA4,0x42,0x55,  /* 000003C0    "_PRS..BU" */
+    0x46,0x41,0x14,0x11,0x5F,0x44,0x49,0x53,  /* 000003C8    "FA.._DIS" */
+    0x00,0x7D,0x50,0x49,0x52,0x42,0x0A,0x80,  /* 000003D0    ".}PIRB.." */
+    0x50,0x49,0x52,0x42,0x14,0x1A,0x5F,0x43,  /* 000003D8    "PIRB.._C" */
+    0x52,0x53,0x00,0x7B,0x50,0x49,0x52,0x42,  /* 000003E0    "RS.{PIRB" */
+    0x0A,0x0F,0x60,0x79,0x01,0x60,0x49,0x52,  /* 000003E8    "..`y.`IR" */
+    0x51,0x56,0xA4,0x42,0x55,0x46,0x42,0x14,  /* 000003F0    "QV.BUFB." */
+    0x1B,0x5F,0x53,0x52,0x53,0x01,0x8B,0x68,  /* 000003F8    "._SRS..h" */
+    0x01,0x49,0x52,0x51,0x31,0x82,0x49,0x52,  /* 00000400    ".IRQ1.IR" */
+    0x51,0x31,0x60,0x76,0x60,0x70,0x60,0x50,  /* 00000408    "Q1`v`p`P" */
+    0x49,0x52,0x42,0x5B,0x82,0x49,0x08,0x4C,  /* 00000410    "IRB[.I.L" */
+    0x4E,0x4B,0x43,0x08,0x5F,0x48,0x49,0x44,  /* 00000418    "NKC._HID" */
+    0x0C,0x41,0xD0,0x0C,0x0F,0x08,0x5F,0x55,  /* 00000420    ".A...._U" */
+    0x49,0x44,0x0A,0x03,0x14,0x1C,0x5F,0x53,  /* 00000428    "ID...._S" */
+    0x54,0x41,0x00,0x7B,0x50,0x49,0x52,0x43,  /* 00000430    "TA.{PIRC" */
+    0x0A,0x80,0x60,0xA0,0x08,0x93,0x60,0x0A,  /* 00000438    "..`...`." */
+    0x80,0xA4,0x0A,0x09,0xA1,0x04,0xA4,0x0A,  /* 00000440    "........" */
+    0x0B,0x14,0x0B,0x5F,0x50,0x52,0x53,0x00,  /* 00000448    "..._PRS." */
+    0xA4,0x42,0x55,0x46,0x41,0x14,0x11,0x5F,  /* 00000450    ".BUFA.._" */
+    0x44,0x49,0x53,0x00,0x7D,0x50,0x49,0x52,  /* 00000458    "DIS.}PIR" */
+    0x43,0x0A,0x80,0x50,0x49,0x52,0x43,0x14,  /* 00000460    "C..PIRC." */
+    0x1A,0x5F,0x43,0x52,0x53,0x00,0x7B,0x50,  /* 00000468    "._CRS.{P" */
+    0x49,0x52,0x43,0x0A,0x0F,0x60,0x79,0x01,  /* 00000470    "IRC..`y." */
+    0x60,0x49,0x52,0x51,0x56,0xA4,0x42,0x55,  /* 00000478    "`IRQV.BU" */
+    0x46,0x42,0x14,0x1B,0x5F,0x53,0x52,0x53,  /* 00000480    "FB.._SRS" */
+    0x01,0x8B,0x68,0x01,0x49,0x52,0x51,0x31,  /* 00000488    "..h.IRQ1" */
+    0x82,0x49,0x52,0x51,0x31,0x60,0x76,0x60,  /* 00000490    ".IRQ1`v`" */
+    0x70,0x60,0x50,0x49,0x52,0x43,0x5B,0x82,  /* 00000498    "p`PIRC[." */
+    0x49,0x08,0x4C,0x4E,0x4B,0x44,0x08,0x5F,  /* 000004A0    "I.LNKD._" */
+    0x48,0x49,0x44,0x0C,0x41,0xD0,0x0C,0x0F,  /* 000004A8    "HID.A..." */
+    0x08,0x5F,0x55,0x49,0x44,0x0A,0x04,0x14,  /* 000004B0    "._UID..." */
+    0x1C,0x5F,0x53,0x54,0x41,0x00,0x7B,0x50,  /* 000004B8    "._STA.{P" */
+    0x49,0x52,0x44,0x0A,0x80,0x60,0xA0,0x08,  /* 000004C0    "IRD..`.." */
+    0x93,0x60,0x0A,0x80,0xA4,0x0A,0x09,0xA1,  /* 000004C8    ".`......" */
+    0x04,0xA4,0x0A,0x0B,0x14,0x0B,0x5F,0x50,  /* 000004D0    "......_P" */
+    0x52,0x53,0x00,0xA4,0x42,0x55,0x46,0x41,  /* 000004D8    "RS..BUFA" */
+    0x14,0x11,0x5F,0x44,0x49,0x53,0x00,0x7D,  /* 000004E0    ".._DIS.}" */
+    0x50,0x49,0x52,0x44,0x0A,0x80,0x50,0x49,  /* 000004E8    "PIRD..PI" */
+    0x52,0x44,0x14,0x1A,0x5F,0x43,0x52,0x53,  /* 000004F0    "RD.._CRS" */
+    0x00,0x7B,0x50,0x49,0x52,0x44,0x0A,0x0F,  /* 000004F8    ".{PIRD.." */
+    0x60,0x79,0x01,0x60,0x49,0x52,0x51,0x56,  /* 00000500    "`y.`IRQV" */
+    0xA4,0x42,0x55,0x46,0x42,0x14,0x1B,0x5F,  /* 00000508    ".BUFB.._" */
+    0x53,0x52,0x53,0x01,0x8B,0x68,0x01,0x49,  /* 00000510    "SRS..h.I" */
+    0x52,0x51,0x31,0x82,0x49,0x52,0x51,0x31,  /* 00000518    "RQ1.IRQ1" */
+    0x60,0x76,0x60,0x70,0x60,0x50,0x49,0x52,  /* 00000520    "`v`p`PIR" */
+    0x44,0x5B,0x82,0x44,0x05,0x48,0x50,0x45,  /* 00000528    "D[.D.HPE" */
+    0x54,0x08,0x5F,0x48,0x49,0x44,0x0C,0x41,  /* 00000530    "T._HID.A" */
+    0xD0,0x01,0x03,0x08,0x5F,0x55,0x49,0x44,  /* 00000538    "...._UID" */
+    0x00,0x14,0x18,0x5F,0x53,0x54,0x41,0x00,  /* 00000540    "..._STA." */
+    0xA0,0x0C,0x93,0x5E,0x5E,0x5E,0x48,0x50,  /* 00000548    "...^^^HP" */
+    0x45,0x54,0x00,0xA4,0x00,0xA1,0x04,0xA4,  /* 00000550    "ET......" */
+    0x0A,0x0F,0x08,0x5F,0x43,0x52,0x53,0x11,  /* 00000558    "..._CRS." */
+    0x1F,0x0A,0x1C,0x87,0x17,0x00,0x00,0x0D,  /* 00000560    "........" */
+    0x01,0x00,0x00,0x00,0x00,0x00,0x00,0xD0,  /* 00000568    "........" */
+    0xFE,0xFF,0x03,0xD0,0xFE,0x00,0x00,0x00,  /* 00000570    "........" */
+    0x00,0x00,0x04,0x00,0x00,0x79,0x00,0x14,  /* 00000578    ".....y.." */
+    0x16,0x5F,0x50,0x52,0x54,0x00,0xA0,0x0A,  /* 00000580    "._PRT..." */
+    0x50,0x49,0x43,0x44,0xA4,0x50,0x52,0x54,  /* 00000588    "PICD.PRT" */
+    0x41,0xA4,0x50,0x52,0x54,0x50,0x08,0x50,  /* 00000590    "A.PRTP.P" */
+    0x52,0x54,0x50,0x12,0x49,0x36,0x3C,0x12,  /* 00000598    "RTP.I6<." */
+    0x0D,0x04,0x0C,0xFF,0xFF,0x01,0x00,0x00,  /* 000005A0    "........" */
+    0x4C,0x4E,0x4B,0x42,0x00,0x12,0x0D,0x04,  /* 000005A8    "LNKB...." */
+    0x0C,0xFF,0xFF,0x01,0x00,0x01,0x4C,0x4E,  /* 000005B0    "......LN" */
+    0x4B,0x43,0x00,0x12,0x0E,0x04,0x0C,0xFF,  /* 000005B8    "KC......" */
+    0xFF,0x01,0x00,0x0A,0x02,0x4C,0x4E,0x4B,  /* 000005C0    ".....LNK" */
+    0x44,0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,  /* 000005C8    "D......." */
+    0x01,0x00,0x0A,0x03,0x4C,0x4E,0x4B,0x41,  /* 000005D0    "....LNKA" */
     0x00,0x12,0x0D,0x04,0x0C,0xFF,0xFF,0x02,  /* 000005D8    "........" */
-    0x00,0x01,0x4C,0x4E,0x4B,0x44,0x00,0x12,  /* 000005E0    "..LNKD.." */
-    0x0E,0x04,0x0C,0xFF,0xFF,0x02,0x00,0x0A,  /* 000005E8    "........" */
-    0x02,0x4C,0x4E,0x4B,0x41,0x00,0x12,0x0E,  /* 000005F0    ".LNKA..." */
-    0x04,0x0C,0xFF,0xFF,0x02,0x00,0x0A,0x03,  /* 000005F8    "........" */
-    0x4C,0x4E,0x4B,0x42,0x00,0x12,0x0D,0x04,  /* 00000600    "LNKB...." */
-    0x0C,0xFF,0xFF,0x03,0x00,0x00,0x4C,0x4E,  /* 00000608    "......LN" */
-    0x4B,0x44,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 00000610    "KD......" */
-    0xFF,0x03,0x00,0x01,0x4C,0x4E,0x4B,0x41,  /* 00000618    "....LNKA" */
-    0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x03,  /* 00000620    "........" */
-    0x00,0x0A,0x02,0x4C,0x4E,0x4B,0x42,0x00,  /* 00000628    "...LNKB." */
-    0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x03,0x00,  /* 00000630    "........" */
-    0x0A,0x03,0x4C,0x4E,0x4B,0x43,0x00,0x12,  /* 00000638    "..LNKC.." */
-    0x0D,0x04,0x0C,0xFF,0xFF,0x04,0x00,0x00,  /* 00000640    "........" */
-    0x4C,0x4E,0x4B,0x41,0x00,0x12,0x0D,0x04,  /* 00000648    "LNKA...." */
-    0x0C,0xFF,0xFF,0x04,0x00,0x01,0x4C,0x4E,  /* 00000650    "......LN" */
-    0x4B,0x42,0x00,0x12,0x0E,0x04,0x0C,0xFF,  /* 00000658    "KB......" */
-    0xFF,0x04,0x00,0x0A,0x02,0x4C,0x4E,0x4B,  /* 00000660    ".....LNK" */
-    0x43,0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,  /* 00000668    "C......." */
-    0x04,0x00,0x0A,0x03,0x4C,0x4E,0x4B,0x44,  /* 00000670    "....LNKD" */
-    0x00,0x12,0x0D,0x04,0x0C,0xFF,0xFF,0x05,  /* 00000678    "........" */
-    0x00,0x00,0x4C,0x4E,0x4B,0x42,0x00,0x12,  /* 00000680    "..LNKB.." */
-    0x0D,0x04,0x0C,0xFF,0xFF,0x05,0x00,0x01,  /* 00000688    "........" */
-    0x4C,0x4E,0x4B,0x43,0x00,0x12,0x0E,0x04,  /* 00000690    "LNKC...." */
-    0x0C,0xFF,0xFF,0x05,0x00,0x0A,0x02,0x4C,  /* 00000698    ".......L" */
-    0x4E,0x4B,0x44,0x00,0x12,0x0E,0x04,0x0C,  /* 000006A0    "NKD....." */
-    0xFF,0xFF,0x05,0x00,0x0A,0x03,0x4C,0x4E,  /* 000006A8    "......LN" */
-    0x4B,0x41,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 000006B0    "KA......" */
-    0xFF,0x06,0x00,0x00,0x4C,0x4E,0x4B,0x43,  /* 000006B8    "....LNKC" */
+    0x00,0x00,0x4C,0x4E,0x4B,0x43,0x00,0x12,  /* 000005E0    "..LNKC.." */
+    0x0D,0x04,0x0C,0xFF,0xFF,0x02,0x00,0x01,  /* 000005E8    "........" */
+    0x4C,0x4E,0x4B,0x44,0x00,0x12,0x0E,0x04,  /* 000005F0    "LNKD...." */
+    0x0C,0xFF,0xFF,0x02,0x00,0x0A,0x02,0x4C,  /* 000005F8    ".......L" */
+    0x4E,0x4B,0x41,0x00,0x12,0x0E,0x04,0x0C,  /* 00000600    "NKA....." */
+    0xFF,0xFF,0x02,0x00,0x0A,0x03,0x4C,0x4E,  /* 00000608    "......LN" */
+    0x4B,0x42,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 00000610    "KB......" */
+    0xFF,0x03,0x00,0x00,0x4C,0x4E,0x4B,0x44,  /* 00000618    "....LNKD" */
+    0x00,0x12,0x0D,0x04,0x0C,0xFF,0xFF,0x03,  /* 00000620    "........" */
+    0x00,0x01,0x4C,0x4E,0x4B,0x41,0x00,0x12,  /* 00000628    "..LNKA.." */
+    0x0E,0x04,0x0C,0xFF,0xFF,0x03,0x00,0x0A,  /* 00000630    "........" */
+    0x02,0x4C,0x4E,0x4B,0x42,0x00,0x12,0x0E,  /* 00000638    ".LNKB..." */
+    0x04,0x0C,0xFF,0xFF,0x03,0x00,0x0A,0x03,  /* 00000640    "........" */
+    0x4C,0x4E,0x4B,0x43,0x00,0x12,0x0D,0x04,  /* 00000648    "LNKC...." */
+    0x0C,0xFF,0xFF,0x04,0x00,0x00,0x4C,0x4E,  /* 00000650    "......LN" */
+    0x4B,0x41,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 00000658    "KA......" */
+    0xFF,0x04,0x00,0x01,0x4C,0x4E,0x4B,0x42,  /* 00000660    "....LNKB" */
+    0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x04,  /* 00000668    "........" */
+    0x00,0x0A,0x02,0x4C,0x4E,0x4B,0x43,0x00,  /* 00000670    "...LNKC." */
+    0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x04,0x00,  /* 00000678    "........" */
+    0x0A,0x03,0x4C,0x4E,0x4B,0x44,0x00,0x12,  /* 00000680    "..LNKD.." */
+    0x0D,0x04,0x0C,0xFF,0xFF,0x05,0x00,0x00,  /* 00000688    "........" */
+    0x4C,0x4E,0x4B,0x42,0x00,0x12,0x0D,0x04,  /* 00000690    "LNKB...." */
+    0x0C,0xFF,0xFF,0x05,0x00,0x01,0x4C,0x4E,  /* 00000698    "......LN" */
+    0x4B,0x43,0x00,0x12,0x0E,0x04,0x0C,0xFF,  /* 000006A0    "KC......" */
+    0xFF,0x05,0x00,0x0A,0x02,0x4C,0x4E,0x4B,  /* 000006A8    ".....LNK" */
+    0x44,0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,  /* 000006B0    "D......." */
+    0x05,0x00,0x0A,0x03,0x4C,0x4E,0x4B,0x41,  /* 000006B8    "....LNKA" */
     0x00,0x12,0x0D,0x04,0x0C,0xFF,0xFF,0x06,  /* 000006C0    "........" */
-    0x00,0x01,0x4C,0x4E,0x4B,0x44,0x00,0x12,  /* 000006C8    "..LNKD.." */
-    0x0E,0x04,0x0C,0xFF,0xFF,0x06,0x00,0x0A,  /* 000006D0    "........" */
-    0x02,0x4C,0x4E,0x4B,0x41,0x00,0x12,0x0E,  /* 000006D8    ".LNKA..." */
-    0x04,0x0C,0xFF,0xFF,0x06,0x00,0x0A,0x03,  /* 000006E0    "........" */
-    0x4C,0x4E,0x4B,0x42,0x00,0x12,0x0D,0x04,  /* 000006E8    "LNKB...." */
-    0x0C,0xFF,0xFF,0x07,0x00,0x00,0x4C,0x4E,  /* 000006F0    "......LN" */
-    0x4B,0x44,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 000006F8    "KD......" */
-    0xFF,0x07,0x00,0x01,0x4C,0x4E,0x4B,0x41,  /* 00000700    "....LNKA" */
-    0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x07,  /* 00000708    "........" */
-    0x00,0x0A,0x02,0x4C,0x4E,0x4B,0x42,0x00,  /* 00000710    "...LNKB." */
-    0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x07,0x00,  /* 00000718    "........" */
-    0x0A,0x03,0x4C,0x4E,0x4B,0x43,0x00,0x12,  /* 00000720    "..LNKC.." */
-    0x0D,0x04,0x0C,0xFF,0xFF,0x08,0x00,0x00,  /* 00000728    "........" */
-    0x4C,0x4E,0x4B,0x41,0x00,0x12,0x0D,0x04,  /* 00000730    "LNKA...." */
-    0x0C,0xFF,0xFF,0x08,0x00,0x01,0x4C,0x4E,  /* 00000738    "......LN" */
-    0x4B,0x42,0x00,0x12,0x0E,0x04,0x0C,0xFF,  /* 00000740    "KB......" */
-    0xFF,0x08,0x00,0x0A,0x02,0x4C,0x4E,0x4B,  /* 00000748    ".....LNK" */
-    0x43,0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,  /* 00000750    "C......." */
-    0x08,0x00,0x0A,0x03,0x4C,0x4E,0x4B,0x44,  /* 00000758    "....LNKD" */
-    0x00,0x12,0x0D,0x04,0x0C,0xFF,0xFF,0x09,  /* 00000760    "........" */
-    0x00,0x00,0x4C,0x4E,0x4B,0x42,0x00,0x12,  /* 00000768    "..LNKB.." */
-    0x0D,0x04,0x0C,0xFF,0xFF,0x09,0x00,0x01,  /* 00000770    "........" */
-    0x4C,0x4E,0x4B,0x43,0x00,0x12,0x0E,0x04,  /* 00000778    "LNKC...." */
-    0x0C,0xFF,0xFF,0x09,0x00,0x0A,0x02,0x4C,  /* 00000780    ".......L" */
-    0x4E,0x4B,0x44,0x00,0x12,0x0E,0x04,0x0C,  /* 00000788    "NKD....." */
-    0xFF,0xFF,0x09,0x00,0x0A,0x03,0x4C,0x4E,  /* 00000790    "......LN" */
-    0x4B,0x41,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 00000798    "KA......" */
-    0xFF,0x0A,0x00,0x00,0x4C,0x4E,0x4B,0x43,  /* 000007A0    "....LNKC" */
+    0x00,0x00,0x4C,0x4E,0x4B,0x43,0x00,0x12,  /* 000006C8    "..LNKC.." */
+    0x0D,0x04,0x0C,0xFF,0xFF,0x06,0x00,0x01,  /* 000006D0    "........" */
+    0x4C,0x4E,0x4B,0x44,0x00,0x12,0x0E,0x04,  /* 000006D8    "LNKD...." */
+    0x0C,0xFF,0xFF,0x06,0x00,0x0A,0x02,0x4C,  /* 000006E0    ".......L" */
+    0x4E,0x4B,0x41,0x00,0x12,0x0E,0x04,0x0C,  /* 000006E8    "NKA....." */
+    0xFF,0xFF,0x06,0x00,0x0A,0x03,0x4C,0x4E,  /* 000006F0    "......LN" */
+    0x4B,0x42,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 000006F8    "KB......" */
+    0xFF,0x07,0x00,0x00,0x4C,0x4E,0x4B,0x44,  /* 00000700    "....LNKD" */
+    0x00,0x12,0x0D,0x04,0x0C,0xFF,0xFF,0x07,  /* 00000708    "........" */
+    0x00,0x01,0x4C,0x4E,0x4B,0x41,0x00,0x12,  /* 00000710    "..LNKA.." */
+    0x0E,0x04,0x0C,0xFF,0xFF,0x07,0x00,0x0A,  /* 00000718    "........" */
+    0x02,0x4C,0x4E,0x4B,0x42,0x00,0x12,0x0E,  /* 00000720    ".LNKB..." */
+    0x04,0x0C,0xFF,0xFF,0x07,0x00,0x0A,0x03,  /* 00000728    "........" */
+    0x4C,0x4E,0x4B,0x43,0x00,0x12,0x0D,0x04,  /* 00000730    "LNKC...." */
+    0x0C,0xFF,0xFF,0x08,0x00,0x00,0x4C,0x4E,  /* 00000738    "......LN" */
+    0x4B,0x41,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 00000740    "KA......" */
+    0xFF,0x08,0x00,0x01,0x4C,0x4E,0x4B,0x42,  /* 00000748    "....LNKB" */
+    0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x08,  /* 00000750    "........" */
+    0x00,0x0A,0x02,0x4C,0x4E,0x4B,0x43,0x00,  /* 00000758    "...LNKC." */
+    0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x08,0x00,  /* 00000760    "........" */
+    0x0A,0x03,0x4C,0x4E,0x4B,0x44,0x00,0x12,  /* 00000768    "..LNKD.." */
+    0x0D,0x04,0x0C,0xFF,0xFF,0x09,0x00,0x00,  /* 00000770    "........" */
+    0x4C,0x4E,0x4B,0x42,0x00,0x12,0x0D,0x04,  /* 00000778    "LNKB...." */
+    0x0C,0xFF,0xFF,0x09,0x00,0x01,0x4C,0x4E,  /* 00000780    "......LN" */
+    0x4B,0x43,0x00,0x12,0x0E,0x04,0x0C,0xFF,  /* 00000788    "KC......" */
+    0xFF,0x09,0x00,0x0A,0x02,0x4C,0x4E,0x4B,  /* 00000790    ".....LNK" */
+    0x44,0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,  /* 00000798    "D......." */
+    0x09,0x00,0x0A,0x03,0x4C,0x4E,0x4B,0x41,  /* 000007A0    "....LNKA" */
     0x00,0x12,0x0D,0x04,0x0C,0xFF,0xFF,0x0A,  /* 000007A8    "........" */
-    0x00,0x01,0x4C,0x4E,0x4B,0x44,0x00,0x12,  /* 000007B0    "..LNKD.." */
-    0x0E,0x04,0x0C,0xFF,0xFF,0x0A,0x00,0x0A,  /* 000007B8    "........" */
-    0x02,0x4C,0x4E,0x4B,0x41,0x00,0x12,0x0E,  /* 000007C0    ".LNKA..." */
-    0x04,0x0C,0xFF,0xFF,0x0A,0x00,0x0A,0x03,  /* 000007C8    "........" */
-    0x4C,0x4E,0x4B,0x42,0x00,0x12,0x0D,0x04,  /* 000007D0    "LNKB...." */
-    0x0C,0xFF,0xFF,0x0B,0x00,0x00,0x4C,0x4E,  /* 000007D8    "......LN" */
-    0x4B,0x44,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 000007E0    "KD......" */
-    0xFF,0x0B,0x00,0x01,0x4C,0x4E,0x4B,0x41,  /* 000007E8    "....LNKA" */
-    0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x0B,  /* 000007F0    "........" */
-    0x00,0x0A,0x02,0x4C,0x4E,0x4B,0x42,0x00,  /* 000007F8    "...LNKB." */
-    0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x0B,0x00,  /* 00000800    "........" */
-    0x0A,0x03,0x4C,0x4E,0x4B,0x43,0x00,0x12,  /* 00000808    "..LNKC.." */
-    0x0D,0x04,0x0C,0xFF,0xFF,0x0C,0x00,0x00,  /* 00000810    "........" */
-    0x4C,0x4E,0x4B,0x41,0x00,0x12,0x0D,0x04,  /* 00000818    "LNKA...." */
-    0x0C,0xFF,0xFF,0x0C,0x00,0x01,0x4C,0x4E,  /* 00000820    "......LN" */
-    0x4B,0x42,0x00,0x12,0x0E,0x04,0x0C,0xFF,  /* 00000828    "KB......" */
-    0xFF,0x0C,0x00,0x0A,0x02,0x4C,0x4E,0x4B,  /* 00000830    ".....LNK" */
-    0x43,0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,  /* 00000838    "C......." */
-    0x0C,0x00,0x0A,0x03,0x4C,0x4E,0x4B,0x44,  /* 00000840    "....LNKD" */
-    0x00,0x12,0x0D,0x04,0x0C,0xFF,0xFF,0x0D,  /* 00000848    "........" */
-    0x00,0x00,0x4C,0x4E,0x4B,0x42,0x00,0x12,  /* 00000850    "..LNKB.." */
-    0x0D,0x04,0x0C,0xFF,0xFF,0x0D,0x00,0x01,  /* 00000858    "........" */
-    0x4C,0x4E,0x4B,0x43,0x00,0x12,0x0E,0x04,  /* 00000860    "LNKC...." */
-    0x0C,0xFF,0xFF,0x0D,0x00,0x0A,0x02,0x4C,  /* 00000868    ".......L" */
-    0x4E,0x4B,0x44,0x00,0x12,0x0E,0x04,0x0C,  /* 00000870    "NKD....." */
-    0xFF,0xFF,0x0D,0x00,0x0A,0x03,0x4C,0x4E,  /* 00000878    "......LN" */
-    0x4B,0x41,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 00000880    "KA......" */
-    0xFF,0x0E,0x00,0x00,0x4C,0x4E,0x4B,0x43,  /* 00000888    "....LNKC" */
+    0x00,0x00,0x4C,0x4E,0x4B,0x43,0x00,0x12,  /* 000007B0    "..LNKC.." */
+    0x0D,0x04,0x0C,0xFF,0xFF,0x0A,0x00,0x01,  /* 000007B8    "........" */
+    0x4C,0x4E,0x4B,0x44,0x00,0x12,0x0E,0x04,  /* 000007C0    "LNKD...." */
+    0x0C,0xFF,0xFF,0x0A,0x00,0x0A,0x02,0x4C,  /* 000007C8    ".......L" */
+    0x4E,0x4B,0x41,0x00,0x12,0x0E,0x04,0x0C,  /* 000007D0    "NKA....." */
+    0xFF,0xFF,0x0A,0x00,0x0A,0x03,0x4C,0x4E,  /* 000007D8    "......LN" */
+    0x4B,0x42,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 000007E0    "KB......" */
+    0xFF,0x0B,0x00,0x00,0x4C,0x4E,0x4B,0x44,  /* 000007E8    "....LNKD" */
+    0x00,0x12,0x0D,0x04,0x0C,0xFF,0xFF,0x0B,  /* 000007F0    "........" */
+    0x00,0x01,0x4C,0x4E,0x4B,0x41,0x00,0x12,  /* 000007F8    "..LNKA.." */
+    0x0E,0x04,0x0C,0xFF,0xFF,0x0B,0x00,0x0A,  /* 00000800    "........" */
+    0x02,0x4C,0x4E,0x4B,0x42,0x00,0x12,0x0E,  /* 00000808    ".LNKB..." */
+    0x04,0x0C,0xFF,0xFF,0x0B,0x00,0x0A,0x03,  /* 00000810    "........" */
+    0x4C,0x4E,0x4B,0x43,0x00,0x12,0x0D,0x04,  /* 00000818    "LNKC...." */
+    0x0C,0xFF,0xFF,0x0C,0x00,0x00,0x4C,0x4E,  /* 00000820    "......LN" */
+    0x4B,0x41,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 00000828    "KA......" */
+    0xFF,0x0C,0x00,0x01,0x4C,0x4E,0x4B,0x42,  /* 00000830    "....LNKB" */
+    0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x0C,  /* 00000838    "........" */
+    0x00,0x0A,0x02,0x4C,0x4E,0x4B,0x43,0x00,  /* 00000840    "...LNKC." */
+    0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x0C,0x00,  /* 00000848    "........" */
+    0x0A,0x03,0x4C,0x4E,0x4B,0x44,0x00,0x12,  /* 00000850    "..LNKD.." */
+    0x0D,0x04,0x0C,0xFF,0xFF,0x0D,0x00,0x00,  /* 00000858    "........" */
+    0x4C,0x4E,0x4B,0x42,0x00,0x12,0x0D,0x04,  /* 00000860    "LNKB...." */
+    0x0C,0xFF,0xFF,0x0D,0x00,0x01,0x4C,0x4E,  /* 00000868    "......LN" */
+    0x4B,0x43,0x00,0x12,0x0E,0x04,0x0C,0xFF,  /* 00000870    "KC......" */
+    0xFF,0x0D,0x00,0x0A,0x02,0x4C,0x4E,0x4B,  /* 00000878    ".....LNK" */
+    0x44,0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,  /* 00000880    "D......." */
+    0x0D,0x00,0x0A,0x03,0x4C,0x4E,0x4B,0x41,  /* 00000888    "....LNKA" */
     0x00,0x12,0x0D,0x04,0x0C,0xFF,0xFF,0x0E,  /* 00000890    "........" */
-    0x00,0x01,0x4C,0x4E,0x4B,0x44,0x00,0x12,  /* 00000898    "..LNKD.." */
-    0x0E,0x04,0x0C,0xFF,0xFF,0x0E,0x00,0x0A,  /* 000008A0    "........" */
-    0x02,0x4C,0x4E,0x4B,0x41,0x00,0x12,0x0E,  /* 000008A8    ".LNKA..." */
-    0x04,0x0C,0xFF,0xFF,0x0E,0x00,0x0A,0x03,  /* 000008B0    "........" */
-    0x4C,0x4E,0x4B,0x42,0x00,0x12,0x0D,0x04,  /* 000008B8    "LNKB...." */
-    0x0C,0xFF,0xFF,0x0F,0x00,0x00,0x4C,0x4E,  /* 000008C0    "......LN" */
-    0x4B,0x44,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 000008C8    "KD......" */
-    0xFF,0x0F,0x00,0x01,0x4C,0x4E,0x4B,0x41,  /* 000008D0    "....LNKA" */
-    0x00,0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x0F,  /* 000008D8    "........" */
-    0x00,0x0A,0x02,0x4C,0x4E,0x4B,0x42,0x00,  /* 000008E0    "...LNKB." */
-    0x12,0x0E,0x04,0x0C,0xFF,0xFF,0x0F,0x00,  /* 000008E8    "........" */
-    0x0A,0x03,0x4C,0x4E,0x4B,0x43,0x00,0x08,  /* 000008F0    "..LNKC.." */
-    0x50,0x52,0x54,0x41,0x12,0x41,0x2F,0x3C,  /* 000008F8    "PRTA.A/<" */
-    0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x01,0x00,  /* 00000900    "........" */
-    0x00,0x00,0x0A,0x14,0x12,0x0B,0x04,0x0C,  /* 00000908    "........" */
-    0xFF,0xFF,0x01,0x00,0x01,0x00,0x0A,0x15,  /* 00000910    "........" */
-    0x12,0x0C,0x04,0x0C,0xFF,0xFF,0x01,0x00,  /* 00000918    "........" */
-    0x0A,0x02,0x00,0x0A,0x16,0x12,0x0C,0x04,  /* 00000920    "........" */
-    0x0C,0xFF,0xFF,0x01,0x00,0x0A,0x03,0x00,  /* 00000928    "........" */
-    0x0A,0x17,0x12,0x0B,0x04,0x0C,0xFF,0xFF,  /* 00000930    "........" */
-    0x02,0x00,0x00,0x00,0x0A,0x18,0x12,0x0B,  /* 00000938    "........" */
-    0x04,0x0C,0xFF,0xFF,0x02,0x00,0x01,0x00,  /* 00000940    "........" */
-    0x0A,0x19,0x12,0x0C,0x04,0x0C,0xFF,0xFF,  /* 00000948    "........" */
-    0x02,0x00,0x0A,0x02,0x00,0x0A,0x1A,0x12,  /* 00000950    "........" */
-    0x0C,0x04,0x0C,0xFF,0xFF,0x02,0x00,0x0A,  /* 00000958    "........" */
-    0x03,0x00,0x0A,0x1B,0x12,0x0B,0x04,0x0C,  /* 00000960    "........" */
-    0xFF,0xFF,0x03,0x00,0x00,0x00,0x0A,0x1C,  /* 00000968    "........" */
-    0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x03,0x00,  /* 00000970    "........" */
-    0x01,0x00,0x0A,0x1D,0x12,0x0C,0x04,0x0C,  /* 00000978    "........" */
-    0xFF,0xFF,0x03,0x00,0x0A,0x02,0x00,0x0A,  /* 00000980    "........" */
-    0x1E,0x12,0x0C,0x04,0x0C,0xFF,0xFF,0x03,  /* 00000988    "........" */
-    0x00,0x0A,0x03,0x00,0x0A,0x1F,0x12,0x0B,  /* 00000990    "........" */
-    0x04,0x0C,0xFF,0xFF,0x04,0x00,0x00,0x00,  /* 00000998    "........" */
-    0x0A,0x20,0x12,0x0B,0x04,0x0C,0xFF,0xFF,  /* 000009A0    ". ......" */
-    0x04,0x00,0x01,0x00,0x0A,0x21,0x12,0x0C,  /* 000009A8    ".....!.." */
-    0x04,0x0C,0xFF,0xFF,0x04,0x00,0x0A,0x02,  /* 000009B0    "........" */
-    0x00,0x0A,0x22,0x12,0x0C,0x04,0x0C,0xFF,  /* 000009B8    ".."....." */
-    0xFF,0x04,0x00,0x0A,0x03,0x00,0x0A,0x23,  /* 000009C0    ".......#" */
-    0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x05,0x00,  /* 000009C8    "........" */
-    0x00,0x00,0x0A,0x24,0x12,0x0B,0x04,0x0C,  /* 000009D0    "...$...." */
-    0xFF,0xFF,0x05,0x00,0x01,0x00,0x0A,0x25,  /* 000009D8    ".......%" */
-    0x12,0x0C,0x04,0x0C,0xFF,0xFF,0x05,0x00,  /* 000009E0    "........" */
-    0x0A,0x02,0x00,0x0A,0x26,0x12,0x0C,0x04,  /* 000009E8    "....&..." */
-    0x0C,0xFF,0xFF,0x05,0x00,0x0A,0x03,0x00,  /* 000009F0    "........" */
-    0x0A,0x27,0x12,0x0B,0x04,0x0C,0xFF,0xFF,  /* 000009F8    ".'......" */
-    0x06,0x00,0x00,0x00,0x0A,0x28,0x12,0x0B,  /* 00000A00    ".....(.." */
-    0x04,0x0C,0xFF,0xFF,0x06,0x00,0x01,0x00,  /* 00000A08    "........" */
-    0x0A,0x29,0x12,0x0C,0x04,0x0C,0xFF,0xFF,  /* 00000A10    ".)......" */
-    0x06,0x00,0x0A,0x02,0x00,0x0A,0x2A,0x12,  /* 00000A18    "......*." */
-    0x0C,0x04,0x0C,0xFF,0xFF,0x06,0x00,0x0A,  /* 00000A20    "........" */
-    0x03,0x00,0x0A,0x2B,0x12,0x0B,0x04,0x0C,  /* 00000A28    "...+...." */
-    0xFF,0xFF,0x07,0x00,0x00,0x00,0x0A,0x2C,  /* 00000A30    ".......," */
-    0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x07,0x00,  /* 00000A38    "........" */
-    0x01,0x00,0x0A,0x2D,0x12,0x0C,0x04,0x0C,  /* 00000A40    "...-...." */
-    0xFF,0xFF,0x07,0x00,0x0A,0x02,0x00,0x0A,  /* 00000A48    "........" */
-    0x2E,0x12,0x0C,0x04,0x0C,0xFF,0xFF,0x07,  /* 00000A50    "........" */
-    0x00,0x0A,0x03,0x00,0x0A,0x2F,0x12,0x0B,  /* 00000A58    "...../.." */
-    0x04,0x0C,0xFF,0xFF,0x08,0x00,0x00,0x00,  /* 00000A60    "........" */
-    0x0A,0x11,0x12,0x0B,0x04,0x0C,0xFF,0xFF,  /* 00000A68    "........" */
-    0x08,0x00,0x01,0x00,0x0A,0x12,0x12,0x0C,  /* 00000A70    "........" */
-    0x04,0x0C,0xFF,0xFF,0x08,0x00,0x0A,0x02,  /* 00000A78    "........" */
-    0x00,0x0A,0x13,0x12,0x0C,0x04,0x0C,0xFF,  /* 00000A80    "........" */
-    0xFF,0x08,0x00,0x0A,0x03,0x00,0x0A,0x14,  /* 00000A88    "........" */
-    0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x09,0x00,  /* 00000A90    "........" */
-    0x00,0x00,0x0A,0x15,0x12,0x0B,0x04,0x0C,  /* 00000A98    "........" */
-    0xFF,0xFF,0x09,0x00,0x01,0x00,0x0A,0x16,  /* 00000AA0    "........" */
-    0x12,0x0C,0x04,0x0C,0xFF,0xFF,0x09,0x00,  /* 00000AA8    "........" */
-    0x0A,0x02,0x00,0x0A,0x17,0x12,0x0C,0x04,  /* 00000AB0    "........" */
-    0x0C,0xFF,0xFF,0x09,0x00,0x0A,0x03,0x00,  /* 00000AB8    "........" */
-    0x0A,0x18,0x12,0x0B,0x04,0x0C,0xFF,0xFF,  /* 00000AC0    "........" */
-    0x0A,0x00,0x00,0x00,0x0A,0x19,0x12,0x0B,  /* 00000AC8    "........" */
-    0x04,0x0C,0xFF,0xFF,0x0A,0x00,0x01,0x00,  /* 00000AD0    "........" */
-    0x0A,0x1A,0x12,0x0C,0x04,0x0C,0xFF,0xFF,  /* 00000AD8    "........" */
-    0x0A,0x00,0x0A,0x02,0x00,0x0A,0x1B,0x12,  /* 00000AE0    "........" */
-    0x0C,0x04,0x0C,0xFF,0xFF,0x0A,0x00,0x0A,  /* 00000AE8    "........" */
-    0x03,0x00,0x0A,0x1C,0x12,0x0B,0x04,0x0C,  /* 00000AF0    "........" */
-    0xFF,0xFF,0x0B,0x00,0x00,0x00,0x0A,0x1D,  /* 00000AF8    "........" */
-    0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x0B,0x00,  /* 00000B00    "........" */
-    0x01,0x00,0x0A,0x1E,0x12,0x0C,0x04,0x0C,  /* 00000B08    "........" */
-    0xFF,0xFF,0x0B,0x00,0x0A,0x02,0x00,0x0A,  /* 00000B10    "........" */
-    0x1F,0x12,0x0C,0x04,0x0C,0xFF,0xFF,0x0B,  /* 00000B18    "........" */
-    0x00,0x0A,0x03,0x00,0x0A,0x20,0x12,0x0B,  /* 00000B20    "..... .." */
-    0x04,0x0C,0xFF,0xFF,0x0C,0x00,0x00,0x00,  /* 00000B28    "........" */
-    0x0A,0x21,0x12,0x0B,0x04,0x0C,0xFF,0xFF,  /* 00000B30    ".!......" */
-    0x0C,0x00,0x01,0x00,0x0A,0x22,0x12,0x0C,  /* 00000B38    ".....".." */
-    0x04,0x0C,0xFF,0xFF,0x0C,0x00,0x0A,0x02,  /* 00000B40    "........" */
-    0x00,0x0A,0x23,0x12,0x0C,0x04,0x0C,0xFF,  /* 00000B48    "..#....." */
-    0xFF,0x0C,0x00,0x0A,0x03,0x00,0x0A,0x24,  /* 00000B50    ".......$" */
-    0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x0D,0x00,  /* 00000B58    "........" */
-    0x00,0x00,0x0A,0x25,0x12,0x0B,0x04,0x0C,  /* 00000B60    "...%...." */
-    0xFF,0xFF,0x0D,0x00,0x01,0x00,0x0A,0x26,  /* 00000B68    ".......&" */
-    0x12,0x0C,0x04,0x0C,0xFF,0xFF,0x0D,0x00,  /* 00000B70    "........" */
-    0x0A,0x02,0x00,0x0A,0x27,0x12,0x0C,0x04,  /* 00000B78    "....'..." */
-    0x0C,0xFF,0xFF,0x0D,0x00,0x0A,0x03,0x00,  /* 00000B80    "........" */
-    0x0A,0x28,0x12,0x0B,0x04,0x0C,0xFF,0xFF,  /* 00000B88    ".(......" */
-    0x0E,0x00,0x00,0x00,0x0A,0x29,0x12,0x0B,  /* 00000B90    ".....).." */
-    0x04,0x0C,0xFF,0xFF,0x0E,0x00,0x01,0x00,  /* 00000B98    "........" */
-    0x0A,0x2A,0x12,0x0C,0x04,0x0C,0xFF,0xFF,  /* 00000BA0    ".*......" */
-    0x0E,0x00,0x0A,0x02,0x00,0x0A,0x2B,0x12,  /* 00000BA8    "......+." */
-    0x0C,0x04,0x0C,0xFF,0xFF,0x0E,0x00,0x0A,  /* 00000BB0    "........" */
-    0x03,0x00,0x0A,0x2C,0x12,0x0B,0x04,0x0C,  /* 00000BB8    "...,...." */
-    0xFF,0xFF,0x0F,0x00,0x00,0x00,0x0A,0x2D,  /* 00000BC0    ".......-" */
-    0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x0F,0x00,  /* 00000BC8    "........" */
-    0x01,0x00,0x0A,0x2E,0x12,0x0C,0x04,0x0C,  /* 00000BD0    "........" */
-    0xFF,0xFF,0x0F,0x00,0x0A,0x02,0x00,0x0A,  /* 00000BD8    "........" */
-    0x2F,0x12,0x0C,0x04,0x0C,0xFF,0xFF,0x0F,  /* 00000BE0    "/......." */
-    0x00,0x0A,0x03,0x00,0x0A,0x10,0x5B,0x82,  /* 00000BE8    "......[." */
-    0x46,0x37,0x49,0x53,0x41,0x5F,0x08,0x5F,  /* 00000BF0    "F7ISA_._" */
-    0x41,0x44,0x52,0x0C,0x00,0x00,0x01,0x00,  /* 00000BF8    "ADR....." */
-    0x5B,0x80,0x50,0x49,0x52,0x51,0x02,0x0A,  /* 00000C00    "[.PIRQ.." */
-    0x60,0x0A,0x04,0x10,0x2E,0x5C,0x00,0x5B,  /* 00000C08    "`....\.[" */
-    0x81,0x29,0x5C,0x2F,0x04,0x5F,0x53,0x42,  /* 00000C10    ".)\/._SB" */
-    0x5F,0x50,0x43,0x49,0x30,0x49,0x53,0x41,  /* 00000C18    "_PCI0ISA" */
-    0x5F,0x50,0x49,0x52,0x51,0x01,0x50,0x49,  /* 00000C20    "_PIRQ.PI" */
-    0x52,0x41,0x08,0x50,0x49,0x52,0x42,0x08,  /* 00000C28    "RA.PIRB." */
-    0x50,0x49,0x52,0x43,0x08,0x50,0x49,0x52,  /* 00000C30    "PIRC.PIR" */
-    0x44,0x08,0x5B,0x82,0x46,0x0B,0x53,0x59,  /* 00000C38    "D.[.F.SY" */
-    0x53,0x52,0x08,0x5F,0x48,0x49,0x44,0x0C,  /* 00000C40    "SR._HID." */
-    0x41,0xD0,0x0C,0x02,0x08,0x5F,0x55,0x49,  /* 00000C48    "A...._UI" */
-    0x44,0x01,0x08,0x43,0x52,0x53,0x5F,0x11,  /* 00000C50    "D..CRS_." */
-    0x4E,0x08,0x0A,0x8A,0x47,0x01,0x10,0x00,  /* 00000C58    "N...G..." */
-    0x10,0x00,0x00,0x10,0x47,0x01,0x22,0x00,  /* 00000C60    "....G."." */
-    0x22,0x00,0x00,0x0C,0x47,0x01,0x30,0x00,  /* 00000C68    ""...G.0." */
-    0x30,0x00,0x00,0x10,0x47,0x01,0x44,0x00,  /* 00000C70    "0...G.D." */
-    0x44,0x00,0x00,0x1C,0x47,0x01,0x62,0x00,  /* 00000C78    "D...G.b." */
-    0x62,0x00,0x00,0x02,0x47,0x01,0x65,0x00,  /* 00000C80    "b...G.e." */
-    0x65,0x00,0x00,0x0B,0x47,0x01,0x72,0x00,  /* 00000C88    "e...G.r." */
-    0x72,0x00,0x00,0x0E,0x47,0x01,0x80,0x00,  /* 00000C90    "r...G..." */
-    0x80,0x00,0x00,0x01,0x47,0x01,0x84,0x00,  /* 00000C98    "....G..." */
-    0x84,0x00,0x00,0x03,0x47,0x01,0x88,0x00,  /* 00000CA0    "....G..." */
-    0x88,0x00,0x00,0x01,0x47,0x01,0x8C,0x00,  /* 00000CA8    "....G..." */
-    0x8C,0x00,0x00,0x03,0x47,0x01,0x90,0x00,  /* 00000CB0    "....G..." */
-    0x90,0x00,0x00,0x10,0x47,0x01,0xA2,0x00,  /* 00000CB8    "....G..." */
-    0xA2,0x00,0x00,0x1C,0x47,0x01,0xE0,0x00,  /* 00000CC0    "....G..." */
-    0xE0,0x00,0x00,0x10,0x47,0x01,0xA0,0x08,  /* 00000CC8    "....G..." */
-    0xA0,0x08,0x00,0x04,0x47,0x01,0xC0,0x0C,  /* 00000CD0    "....G..." */
-    0xC0,0x0C,0x00,0x10,0x47,0x01,0xD0,0x04,  /* 00000CD8    "....G..." */
-    0xD0,0x04,0x00,0x02,0x79,0x00,0x14,0x0B,  /* 00000CE0    "....y..." */
-    0x5F,0x43,0x52,0x53,0x00,0xA4,0x43,0x52,  /* 00000CE8    "_CRS..CR" */
-    0x53,0x5F,0x5B,0x82,0x2B,0x50,0x49,0x43,  /* 00000CF0    "S_[.+PIC" */
-    0x5F,0x08,0x5F,0x48,0x49,0x44,0x0B,0x41,  /* 00000CF8    "_._HID.A" */
-    0xD0,0x08,0x5F,0x43,0x52,0x53,0x11,0x18,  /* 00000D00    ".._CRS.." */
-    0x0A,0x15,0x47,0x01,0x20,0x00,0x20,0x00,  /* 00000D08    "..G. . ." */
-    0x01,0x02,0x47,0x01,0xA0,0x00,0xA0,0x00,  /* 00000D10    "..G....." */
-    0x01,0x02,0x22,0x04,0x00,0x79,0x00,0x5B,  /* 00000D18    ".."..y.[" */
-    0x82,0x47,0x05,0x44,0x4D,0x41,0x30,0x08,  /* 00000D20    ".G.DMA0." */
-    0x5F,0x48,0x49,0x44,0x0C,0x41,0xD0,0x02,  /* 00000D28    "_HID.A.." */
-    0x00,0x08,0x5F,0x43,0x52,0x53,0x11,0x41,  /* 00000D30    ".._CRS.A" */
-    0x04,0x0A,0x3D,0x2A,0x10,0x04,0x47,0x01,  /* 00000D38    "..=*..G." */
-    0x00,0x00,0x00,0x00,0x00,0x10,0x47,0x01,  /* 00000D40    "......G." */
-    0x81,0x00,0x81,0x00,0x00,0x03,0x47,0x01,  /* 00000D48    "......G." */
-    0x87,0x00,0x87,0x00,0x00,0x01,0x47,0x01,  /* 00000D50    "......G." */
-    0x89,0x00,0x89,0x00,0x00,0x03,0x47,0x01,  /* 00000D58    "......G." */
-    0x8F,0x00,0x8F,0x00,0x00,0x01,0x47,0x01,  /* 00000D60    "......G." */
-    0xC0,0x00,0xC0,0x00,0x00,0x20,0x47,0x01,  /* 00000D68    "..... G." */
-    0x80,0x04,0x80,0x04,0x00,0x10,0x79,0x00,  /* 00000D70    "......y." */
-    0x5B,0x82,0x25,0x54,0x4D,0x52,0x5F,0x08,  /* 00000D78    "[.%TMR_." */
-    0x5F,0x48,0x49,0x44,0x0C,0x41,0xD0,0x01,  /* 00000D80    "_HID.A.." */
-    0x00,0x08,0x5F,0x43,0x52,0x53,0x11,0x10,  /* 00000D88    ".._CRS.." */
-    0x0A,0x0D,0x47,0x01,0x40,0x00,0x40,0x00,  /* 00000D90    "..G.@.@." */
-    0x00,0x04,0x22,0x01,0x00,0x79,0x00,0x5B,  /* 00000D98    ".."..y.[" */
-    0x82,0x25,0x52,0x54,0x43,0x5F,0x08,0x5F,  /* 00000DA0    ".%RTC_._" */
-    0x48,0x49,0x44,0x0C,0x41,0xD0,0x0B,0x00,  /* 00000DA8    "HID.A..." */
-    0x08,0x5F,0x43,0x52,0x53,0x11,0x10,0x0A,  /* 00000DB0    "._CRS..." */
-    0x0D,0x47,0x01,0x70,0x00,0x70,0x00,0x00,  /* 00000DB8    ".G.p.p.." */
-    0x02,0x22,0x00,0x01,0x79,0x00,0x5B,0x82,  /* 00000DC0    "."..y.[." */
-    0x22,0x53,0x50,0x4B,0x52,0x08,0x5F,0x48,  /* 00000DC8    ""SPKR._H" */
-    0x49,0x44,0x0C,0x41,0xD0,0x08,0x00,0x08,  /* 00000DD0    "ID.A...." */
-    0x5F,0x43,0x52,0x53,0x11,0x0D,0x0A,0x0A,  /* 00000DD8    "_CRS...." */
-    0x47,0x01,0x61,0x00,0x61,0x00,0x00,0x01,  /* 00000DE0    "G.a.a..." */
-    0x79,0x00,0x5B,0x82,0x31,0x50,0x53,0x32,  /* 00000DE8    "y.[.1PS2" */
-    0x4D,0x08,0x5F,0x48,0x49,0x44,0x0C,0x41,  /* 00000DF0    "M._HID.A" */
-    0xD0,0x0F,0x13,0x08,0x5F,0x43,0x49,0x44,  /* 00000DF8    "...._CID" */
-    0x0C,0x41,0xD0,0x0F,0x13,0x14,0x09,0x5F,  /* 00000E00    ".A....._" */
-    0x53,0x54,0x41,0x00,0xA4,0x0A,0x0F,0x08,  /* 00000E08    "STA....." */
-    0x5F,0x43,0x52,0x53,0x11,0x08,0x0A,0x05,  /* 00000E10    "_CRS...." */
-    0x22,0x00,0x10,0x79,0x00,0x5B,0x82,0x42,  /* 00000E18    ""..y.[.B" */
-    0x04,0x50,0x53,0x32,0x4B,0x08,0x5F,0x48,  /* 00000E20    ".PS2K._H" */
-    0x49,0x44,0x0C,0x41,0xD0,0x03,0x03,0x08,  /* 00000E28    "ID.A...." */
-    0x5F,0x43,0x49,0x44,0x0C,0x41,0xD0,0x03,  /* 00000E30    "_CID.A.." */
-    0x0B,0x14,0x09,0x5F,0x53,0x54,0x41,0x00,  /* 00000E38    "..._STA." */
-    0xA4,0x0A,0x0F,0x08,0x5F,0x43,0x52,0x53,  /* 00000E40    "...._CRS" */
-    0x11,0x18,0x0A,0x15,0x47,0x01,0x60,0x00,  /* 00000E48    "....G.`." */
-    0x60,0x00,0x00,0x01,0x47,0x01,0x64,0x00,  /* 00000E50    "`...G.d." */
-    0x64,0x00,0x00,0x01,0x22,0x02,0x00,0x79,  /* 00000E58    "d..."..y" */
-    0x00,0x5B,0x82,0x3A,0x46,0x44,0x43,0x30,  /* 00000E60    ".[.:FDC0" */
-    0x08,0x5F,0x48,0x49,0x44,0x0C,0x41,0xD0,  /* 00000E68    "._HID.A." */
-    0x07,0x00,0x14,0x09,0x5F,0x53,0x54,0x41,  /* 00000E70    "...._STA" */
-    0x00,0xA4,0x0A,0x0F,0x08,0x5F,0x43,0x52,  /* 00000E78    "....._CR" */
-    0x53,0x11,0x1B,0x0A,0x18,0x47,0x01,0xF0,  /* 00000E80    "S....G.." */
-    0x03,0xF0,0x03,0x01,0x06,0x47,0x01,0xF7,  /* 00000E88    ".....G.." */
-    0x03,0xF7,0x03,0x01,0x01,0x22,0x40,0x00,  /* 00000E90    "....."@." */
-    0x2A,0x04,0x00,0x79,0x00,0x5B,0x82,0x46,  /* 00000E98    "*..y.[.F" */
-    0x04,0x55,0x41,0x52,0x31,0x08,0x5F,0x48,  /* 00000EA0    ".UAR1._H" */
-    0x49,0x44,0x0C,0x41,0xD0,0x05,0x01,0x08,  /* 00000EA8    "ID.A...." */
-    0x5F,0x55,0x49,0x44,0x01,0x14,0x19,0x5F,  /* 00000EB0    "_UID..._" */
-    0x53,0x54,0x41,0x00,0xA0,0x0D,0x93,0x5E,  /* 00000EB8    "STA....^" */
-    0x5E,0x5E,0x5E,0x55,0x41,0x52,0x31,0x00,  /* 00000EC0    "^^^UAR1." */
-    0xA4,0x00,0xA1,0x04,0xA4,0x0A,0x0F,0x08,  /* 00000EC8    "........" */
-    0x5F,0x43,0x52,0x53,0x11,0x10,0x0A,0x0D,  /* 00000ED0    "_CRS...." */
-    0x47,0x01,0xF8,0x03,0xF8,0x03,0x08,0x08,  /* 00000ED8    "G......." */
-    0x22,0x10,0x00,0x79,0x00,0x5B,0x82,0x47,  /* 00000EE0    ""..y.[.G" */
-    0x04,0x55,0x41,0x52,0x32,0x08,0x5F,0x48,  /* 00000EE8    ".UAR2._H" */
-    0x49,0x44,0x0C,0x41,0xD0,0x05,0x01,0x08,  /* 00000EF0    "ID.A...." */
-    0x5F,0x55,0x49,0x44,0x0A,0x02,0x14,0x19,  /* 00000EF8    "_UID...." */
-    0x5F,0x53,0x54,0x41,0x00,0xA0,0x0D,0x93,  /* 00000F00    "_STA...." */
-    0x5E,0x5E,0x5E,0x5E,0x55,0x41,0x52,0x32,  /* 00000F08    "^^^^UAR2" */
-    0x00,0xA4,0x00,0xA1,0x04,0xA4,0x0A,0x0F,  /* 00000F10    "........" */
-    0x08,0x5F,0x43,0x52,0x53,0x11,0x10,0x0A,  /* 00000F18    "._CRS..." */
-    0x0D,0x47,0x01,0xF8,0x02,0xF8,0x02,0x08,  /* 00000F20    ".G......" */
-    0x08,0x22,0x08,0x00,0x79,0x00,0x5B,0x82,  /* 00000F28    "."..y.[." */
-    0x36,0x4C,0x54,0x50,0x31,0x08,0x5F,0x48,  /* 00000F30    "6LTP1._H" */
-    0x49,0x44,0x0C,0x41,0xD0,0x04,0x00,0x08,  /* 00000F38    "ID.A...." */
-    0x5F,0x55,0x49,0x44,0x0A,0x02,0x14,0x09,  /* 00000F40    "_UID...." */
-    0x5F,0x53,0x54,0x41,0x00,0xA4,0x0A,0x0F,  /* 00000F48    "_STA...." */
-    0x08,0x5F,0x43,0x52,0x53,0x11,0x10,0x0A,  /* 00000F50    "._CRS..." */
-    0x0D,0x47,0x01,0x78,0x03,0x78,0x03,0x08,  /* 00000F58    ".G.x.x.." */
-    0x08,0x22,0x80,0x00,0x79,0x00,0x5B,0x82,  /* 00000F60    "."..y.[." */
-    0x4D,0x07,0x53,0x31,0x46,0x30,0x08,0x5F,  /* 00000F68    "M.S1F0._" */
-    0x41,0x44,0x52,0x0C,0x00,0x00,0x06,0x00,  /* 00000F70    "ADR....." */
-    0x08,0x5F,0x53,0x55,0x4E,0x01,0x14,0x13,  /* 00000F78    "._SUN..." */
-    0x5F,0x50,0x53,0x30,0x00,0x70,0x0A,0x80,  /* 00000F80    "_PS0.p.." */
-    0x5C,0x2E,0x5F,0x47,0x50,0x45,0x44,0x50,  /* 00000F88    "\._GPEDP" */
-    0x54,0x32,0x14,0x13,0x5F,0x50,0x53,0x33,  /* 00000F90    "T2.._PS3" */
-    0x00,0x70,0x0A,0x83,0x5C,0x2E,0x5F,0x47,  /* 00000F98    ".p..\._G" */
-    0x50,0x45,0x44,0x50,0x54,0x32,0x14,0x1F,  /* 00000FA0    "PEDPT2.." */
-    0x5F,0x45,0x4A,0x30,0x01,0x70,0x0A,0x88,  /* 00000FA8    "_EJ0.p.." */
-    0x5C,0x2E,0x5F,0x47,0x50,0x45,0x44,0x50,  /* 00000FB0    "\._GPEDP" */
-    0x54,0x32,0x70,0x01,0x5C,0x2E,0x5F,0x47,  /* 00000FB8    "T2p.\._G" */
-    0x50,0x45,0x50,0x48,0x50,0x31,0x14,0x1E,  /* 00000FC0    "PEPHP1.." */
-    0x5F,0x53,0x54,0x41,0x00,0x70,0x0A,0x89,  /* 00000FC8    "_STA.p.." */
-    0x5C,0x2E,0x5F,0x47,0x50,0x45,0x44,0x50,  /* 00000FD0    "\._GPEDP" */
-    0x54,0x32,0xA4,0x5C,0x2E,0x5F,0x47,0x50,  /* 00000FD8    "T2.\._GP" */
-    0x45,0x50,0x48,0x50,0x31,0x5B,0x82,0x4E,  /* 00000FE0    "EPHP1[.N" */
-    0x07,0x53,0x32,0x46,0x30,0x08,0x5F,0x41,  /* 00000FE8    ".S2F0._A" */
-    0x44,0x52,0x0C,0x00,0x00,0x07,0x00,0x08,  /* 00000FF0    "DR......" */
-    0x5F,0x53,0x55,0x4E,0x0A,0x02,0x14,0x13,  /* 00000FF8    "_SUN...." */
-    0x5F,0x50,0x53,0x30,0x00,0x70,0x0A,0x90,  /* 00001000    "_PS0.p.." */
-    0x5C,0x2E,0x5F,0x47,0x50,0x45,0x44,0x50,  /* 00001008    "\._GPEDP" */
-    0x54,0x32,0x14,0x13,0x5F,0x50,0x53,0x33,  /* 00001010    "T2.._PS3" */
-    0x00,0x70,0x0A,0x93,0x5C,0x2E,0x5F,0x47,  /* 00001018    ".p..\._G" */
-    0x50,0x45,0x44,0x50,0x54,0x32,0x14,0x1F,  /* 00001020    "PEDPT2.." */
-    0x5F,0x45,0x4A,0x30,0x01,0x70,0x0A,0x98,  /* 00001028    "_EJ0.p.." */
-    0x5C,0x2E,0x5F,0x47,0x50,0x45,0x44,0x50,  /* 00001030    "\._GPEDP" */
-    0x54,0x32,0x70,0x01,0x5C,0x2E,0x5F,0x47,  /* 00001038    "T2p.\._G" */
-    0x50,0x45,0x50,0x48,0x50,0x32,0x14,0x1E,  /* 00001040    "PEPHP2.." */
-    0x5F,0x53,0x54,0x41,0x00,0x70,0x0A,0x99,  /* 00001048    "_STA.p.." */
-    0x5C,0x2E,0x5F,0x47,0x50,0x45,0x44,0x50,  /* 00001050    "\._GPEDP" */
-    0x54,0x32,0xA4,0x5C,0x2E,0x5F,0x47,0x50,  /* 00001058    "T2.\._GP" */
-    0x45,0x50,0x48,0x50,0x32,0x10,0x4E,0x0B,  /* 00001060    "EPHP2.N." */
-    0x5F,0x47,0x50,0x45,0x5B,0x80,0x50,0x48,  /* 00001068    "_GPE[.PH" */
-    0x50,0x5F,0x01,0x0B,0xC0,0x10,0x0A,0x03,  /* 00001070    "P_......" */
-    0x5B,0x81,0x15,0x50,0x48,0x50,0x5F,0x01,  /* 00001078    "[..PHP_." */
-    0x50,0x53,0x54,0x41,0x08,0x50,0x48,0x50,  /* 00001080    "PSTA.PHP" */
-    0x31,0x08,0x50,0x48,0x50,0x32,0x08,0x5B,  /* 00001088    "1.PHP2.[" */
-    0x80,0x44,0x47,0x31,0x5F,0x01,0x0B,0x44,  /* 00001090    ".DG1_..D" */
-    0xB0,0x0A,0x04,0x5B,0x81,0x10,0x44,0x47,  /* 00001098    "...[..DG" */
-    0x31,0x5F,0x01,0x44,0x50,0x54,0x31,0x08,  /* 000010A0    "1_.DPT1." */
-    0x44,0x50,0x54,0x32,0x08,0x14,0x46,0x07,  /* 000010A8    "DPT2..F." */
-    0x5F,0x4C,0x30,0x33,0x00,0x08,0x53,0x4C,  /* 000010B0    "_L03..SL" */
-    0x54,0x5F,0x00,0x08,0x45,0x56,0x54,0x5F,  /* 000010B8    "T_..EVT_" */
-    0x00,0x70,0x50,0x53,0x54,0x41,0x61,0x7A,  /* 000010C0    ".pPSTAaz" */
-    0x61,0x0A,0x04,0x53,0x4C,0x54,0x5F,0x7B,  /* 000010C8    "a..SLT_{" */
-    0x61,0x0A,0x0F,0x45,0x56,0x54,0x5F,0x70,  /* 000010D0    "a..EVT_p" */
-    0x53,0x4C,0x54,0x5F,0x44,0x50,0x54,0x31,  /* 000010D8    "SLT_DPT1" */
-    0x70,0x45,0x56,0x54,0x5F,0x44,0x50,0x54,  /* 000010E0    "pEVT_DPT" */
-    0x32,0xA0,0x1B,0x93,0x53,0x4C,0x54,0x5F,  /* 000010E8    "2...SLT_" */
-    0x01,0x86,0x5C,0x2F,0x03,0x5F,0x53,0x42,  /* 000010F0    "..\/._SB" */
-    0x5F,0x50,0x43,0x49,0x30,0x53,0x31,0x46,  /* 000010F8    "_PCI0S1F" */
-    0x30,0x45,0x56,0x54,0x5F,0xA1,0x1E,0xA0,  /* 00001100    "0EVT_..." */
-    0x1C,0x93,0x53,0x4C,0x54,0x5F,0x0A,0x02,  /* 00001108    "..SLT_.." */
-    0x86,0x5C,0x2F,0x03,0x5F,0x53,0x42,0x5F,  /* 00001110    ".\/._SB_" */
-    0x50,0x43,0x49,0x30,0x53,0x32,0x46,0x30,  /* 00001118    "PCI0S2F0" */
-    0x45,0x56,0x54,0x5F,
+    0x00,0x00,0x4C,0x4E,0x4B,0x43,0x00,0x12,  /* 00000898    "..LNKC.." */
+    0x0D,0x04,0x0C,0xFF,0xFF,0x0E,0x00,0x01,  /* 000008A0    "........" */
+    0x4C,0x4E,0x4B,0x44,0x00,0x12,0x0E,0x04,  /* 000008A8    "LNKD...." */
+    0x0C,0xFF,0xFF,0x0E,0x00,0x0A,0x02,0x4C,  /* 000008B0    ".......L" */
+    0x4E,0x4B,0x41,0x00,0x12,0x0E,0x04,0x0C,  /* 000008B8    "NKA....." */
+    0xFF,0xFF,0x0E,0x00,0x0A,0x03,0x4C,0x4E,  /* 000008C0    "......LN" */
+    0x4B,0x42,0x00,0x12,0x0D,0x04,0x0C,0xFF,  /* 000008C8    "KB......" */
+    0xFF,0x0F,0x00,0x00,0x4C,0x4E,0x4B,0x44,  /* 000008D0    "....LNKD" */
+    0x00,0x12,0x0D,0x04,0x0C,0xFF,0xFF,0x0F,  /* 000008D8    "........" */
+    0x00,0x01,0x4C,0x4E,0x4B,0x41,0x00,0x12,  /* 000008E0    "..LNKA.." */
+    0x0E,0x04,0x0C,0xFF,0xFF,0x0F,0x00,0x0A,  /* 000008E8    "........" */
+    0x02,0x4C,0x4E,0x4B,0x42,0x00,0x12,0x0E,  /* 000008F0    ".LNKB..." */
+    0x04,0x0C,0xFF,0xFF,0x0F,0x00,0x0A,0x03,  /* 000008F8    "........" */
+    0x4C,0x4E,0x4B,0x43,0x00,0x08,0x50,0x52,  /* 00000900    "LNKC..PR" */
+    0x54,0x41,0x12,0x41,0x2F,0x3C,0x12,0x0B,  /* 00000908    "TA.A/<.." */
+    0x04,0x0C,0xFF,0xFF,0x01,0x00,0x00,0x00,  /* 00000910    "........" */
+    0x0A,0x14,0x12,0x0B,0x04,0x0C,0xFF,0xFF,  /* 00000918    "........" */
+    0x01,0x00,0x01,0x00,0x0A,0x15,0x12,0x0C,  /* 00000920    "........" */
+    0x04,0x0C,0xFF,0xFF,0x01,0x00,0x0A,0x02,  /* 00000928    "........" */
+    0x00,0x0A,0x16,0x12,0x0C,0x04,0x0C,0xFF,  /* 00000930    "........" */
+    0xFF,0x01,0x00,0x0A,0x03,0x00,0x0A,0x17,  /* 00000938    "........" */
+    0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x02,0x00,  /* 00000940    "........" */
+    0x00,0x00,0x0A,0x18,0x12,0x0B,0x04,0x0C,  /* 00000948    "........" */
+    0xFF,0xFF,0x02,0x00,0x01,0x00,0x0A,0x19,  /* 00000950    "........" */
+    0x12,0x0C,0x04,0x0C,0xFF,0xFF,0x02,0x00,  /* 00000958    "........" */
+    0x0A,0x02,0x00,0x0A,0x1A,0x12,0x0C,0x04,  /* 00000960    "........" */
+    0x0C,0xFF,0xFF,0x02,0x00,0x0A,0x03,0x00,  /* 00000968    "........" */
+    0x0A,0x1B,0x12,0x0B,0x04,0x0C,0xFF,0xFF,  /* 00000970    "........" */
+    0x03,0x00,0x00,0x00,0x0A,0x1C,0x12,0x0B,  /* 00000978    "........" */
+    0x04,0x0C,0xFF,0xFF,0x03,0x00,0x01,0x00,  /* 00000980    "........" */
+    0x0A,0x1D,0x12,0x0C,0x04,0x0C,0xFF,0xFF,  /* 00000988    "........" */
+    0x03,0x00,0x0A,0x02,0x00,0x0A,0x1E,0x12,  /* 00000990    "........" */
+    0x0C,0x04,0x0C,0xFF,0xFF,0x03,0x00,0x0A,  /* 00000998    "........" */
+    0x03,0x00,0x0A,0x1F,0x12,0x0B,0x04,0x0C,  /* 000009A0    "........" */
+    0xFF,0xFF,0x04,0x00,0x00,0x00,0x0A,0x20,  /* 000009A8    "....... " */
+    0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x04,0x00,  /* 000009B0    "........" */
+    0x01,0x00,0x0A,0x21,0x12,0x0C,0x04,0x0C,  /* 000009B8    "...!...." */
+    0xFF,0xFF,0x04,0x00,0x0A,0x02,0x00,0x0A,  /* 000009C0    "........" */
+    0x22,0x12,0x0C,0x04,0x0C,0xFF,0xFF,0x04,  /* 000009C8    ""......." */
+    0x00,0x0A,0x03,0x00,0x0A,0x23,0x12,0x0B,  /* 000009D0    ".....#.." */
+    0x04,0x0C,0xFF,0xFF,0x05,0x00,0x00,0x00,  /* 000009D8    "........" */
+    0x0A,0x24,0x12,0x0B,0x04,0x0C,0xFF,0xFF,  /* 000009E0    ".$......" */
+    0x05,0x00,0x01,0x00,0x0A,0x25,0x12,0x0C,  /* 000009E8    ".....%.." */
+    0x04,0x0C,0xFF,0xFF,0x05,0x00,0x0A,0x02,  /* 000009F0    "........" */
+    0x00,0x0A,0x26,0x12,0x0C,0x04,0x0C,0xFF,  /* 000009F8    "..&....." */
+    0xFF,0x05,0x00,0x0A,0x03,0x00,0x0A,0x27,  /* 00000A00    ".......'" */
+    0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x06,0x00,  /* 00000A08    "........" */
+    0x00,0x00,0x0A,0x28,0x12,0x0B,0x04,0x0C,  /* 00000A10    "...(...." */
+    0xFF,0xFF,0x06,0x00,0x01,0x00,0x0A,0x29,  /* 00000A18    ".......)" */
+    0x12,0x0C,0x04,0x0C,0xFF,0xFF,0x06,0x00,  /* 00000A20    "........" */
+    0x0A,0x02,0x00,0x0A,0x2A,0x12,0x0C,0x04,  /* 00000A28    "....*..." */
+    0x0C,0xFF,0xFF,0x06,0x00,0x0A,0x03,0x00,  /* 00000A30    "........" */
+    0x0A,0x2B,0x12,0x0B,0x04,0x0C,0xFF,0xFF,  /* 00000A38    ".+......" */
+    0x07,0x00,0x00,0x00,0x0A,0x2C,0x12,0x0B,  /* 00000A40    ".....,.." */
+    0x04,0x0C,0xFF,0xFF,0x07,0x00,0x01,0x00,  /* 00000A48    "........" */
+    0x0A,0x2D,0x12,0x0C,0x04,0x0C,0xFF,0xFF,  /* 00000A50    ".-......" */
+    0x07,0x00,0x0A,0x02,0x00,0x0A,0x2E,0x12,  /* 00000A58    "........" */
+    0x0C,0x04,0x0C,0xFF,0xFF,0x07,0x00,0x0A,  /* 00000A60    "........" */
+    0x03,0x00,0x0A,0x2F,0x12,0x0B,0x04,0x0C,  /* 00000A68    ".../...." */
+    0xFF,0xFF,0x08,0x00,0x00,0x00,0x0A,0x11,  /* 00000A70    "........" */
+    0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x08,0x00,  /* 00000A78    "........" */
+    0x01,0x00,0x0A,0x12,0x12,0x0C,0x04,0x0C,  /* 00000A80    "........" */
+    0xFF,0xFF,0x08,0x00,0x0A,0x02,0x00,0x0A,  /* 00000A88    "........" */
+    0x13,0x12,0x0C,0x04,0x0C,0xFF,0xFF,0x08,  /* 00000A90    "........" */
+    0x00,0x0A,0x03,0x00,0x0A,0x14,0x12,0x0B,  /* 00000A98    "........" */
+    0x04,0x0C,0xFF,0xFF,0x09,0x00,0x00,0x00,  /* 00000AA0    "........" */
+    0x0A,0x15,0x12,0x0B,0x04,0x0C,0xFF,0xFF,  /* 00000AA8    "........" */
+    0x09,0x00,0x01,0x00,0x0A,0x16,0x12,0x0C,  /* 00000AB0    "........" */
+    0x04,0x0C,0xFF,0xFF,0x09,0x00,0x0A,0x02,  /* 00000AB8    "........" */
+    0x00,0x0A,0x17,0x12,0x0C,0x04,0x0C,0xFF,  /* 00000AC0    "........" */
+    0xFF,0x09,0x00,0x0A,0x03,0x00,0x0A,0x18,  /* 00000AC8    "........" */
+    0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x0A,0x00,  /* 00000AD0    "........" */
+    0x00,0x00,0x0A,0x19,0x12,0x0B,0x04,0x0C,  /* 00000AD8    "........" */
+    0xFF,0xFF,0x0A,0x00,0x01,0x00,0x0A,0x1A,  /* 00000AE0    "........" */
+    0x12,0x0C,0x04,0x0C,0xFF,0xFF,0x0A,0x00,  /* 00000AE8    "........" */
+    0x0A,0x02,0x00,0x0A,0x1B,0x12,0x0C,0x04,  /* 00000AF0    "........" */
+    0x0C,0xFF,0xFF,0x0A,0x00,0x0A,0x03,0x00,  /* 00000AF8    "........" */
+    0x0A,0x1C,0x12,0x0B,0x04,0x0C,0xFF,0xFF,  /* 00000B00    "........" */
+    0x0B,0x00,0x00,0x00,0x0A,0x1D,0x12,0x0B,  /* 00000B08    "........" */
+    0x04,0x0C,0xFF,0xFF,0x0B,0x00,0x01,0x00,  /* 00000B10    "........" */
+    0x0A,0x1E,0x12,0x0C,0x04,0x0C,0xFF,0xFF,  /* 00000B18    "........" */
+    0x0B,0x00,0x0A,0x02,0x00,0x0A,0x1F,0x12,  /* 00000B20    "........" */
+    0x0C,0x04,0x0C,0xFF,0xFF,0x0B,0x00,0x0A,  /* 00000B28    "........" */
+    0x03,0x00,0x0A,0x20,0x12,0x0B,0x04,0x0C,  /* 00000B30    "... ...." */
+    0xFF,0xFF,0x0C,0x00,0x00,0x00,0x0A,0x21,  /* 00000B38    ".......!" */
+    0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x0C,0x00,  /* 00000B40    "........" */
+    0x01,0x00,0x0A,0x22,0x12,0x0C,0x04,0x0C,  /* 00000B48    "..."...." */
+    0xFF,0xFF,0x0C,0x00,0x0A,0x02,0x00,0x0A,  /* 00000B50    "........" */
+    0x23,0x12,0x0C,0x04,0x0C,0xFF,0xFF,0x0C,  /* 00000B58    "#......." */
+    0x00,0x0A,0x03,0x00,0x0A,0x24,0x12,0x0B,  /* 00000B60    ".....$.." */
+    0x04,0x0C,0xFF,0xFF,0x0D,0x00,0x00,0x00,  /* 00000B68    "........" */
+    0x0A,0x25,0x12,0x0B,0x04,0x0C,0xFF,0xFF,  /* 00000B70    ".%......" */
+    0x0D,0x00,0x01,0x00,0x0A,0x26,0x12,0x0C,  /* 00000B78    ".....&.." */
+    0x04,0x0C,0xFF,0xFF,0x0D,0x00,0x0A,0x02,  /* 00000B80    "........" */
+    0x00,0x0A,0x27,0x12,0x0C,0x04,0x0C,0xFF,  /* 00000B88    "..'....." */
+    0xFF,0x0D,0x00,0x0A,0x03,0x00,0x0A,0x28,  /* 00000B90    ".......(" */
+    0x12,0x0B,0x04,0x0C,0xFF,0xFF,0x0E,0x00,  /* 00000B98    "........" */
+    0x00,0x00,0x0A,0x29,0x12,0x0B,0x04,0x0C,  /* 00000BA0    "...)...." */
+    0xFF,0xFF,0x0E,0x00,0x01,0x00,0x0A,0x2A,  /* 00000BA8    ".......*" */
+    0x12,0x0C,0x04,0x0C,0xFF,0xFF,0x0E,0x00,  /* 00000BB0    "........" */
+    0x0A,0x02,0x00,0x0A,0x2B,0x12,0x0C,0x04,  /* 00000BB8    "....+..." */
+    0x0C,0xFF,0xFF,0x0E,0x00,0x0A,0x03,0x00,  /* 00000BC0    "........" */
+    0x0A,0x2C,0x12,0x0B,0x04,0x0C,0xFF,0xFF,  /* 00000BC8    ".,......" */
+    0x0F,0x00,0x00,0x00,0x0A,0x2D,0x12,0x0B,  /* 00000BD0    ".....-.." */
+    0x04,0x0C,0xFF,0xFF,0x0F,0x00,0x01,0x00,  /* 00000BD8    "........" */
+    0x0A,0x2E,0x12,0x0C,0x04,0x0C,0xFF,0xFF,  /* 00000BE0    "........" */
+    0x0F,0x00,0x0A,0x02,0x00,0x0A,0x2F,0x12,  /* 00000BE8    "....../." */
+    0x0C,0x04,0x0C,0xFF,0xFF,0x0F,0x00,0x0A,  /* 00000BF0    "........" */
+    0x03,0x00,0x0A,0x10,0x5B,0x82,0x46,0x37,  /* 00000BF8    "....[.F7" */
+    0x49,0x53,0x41,0x5F,0x08,0x5F,0x41,0x44,  /* 00000C00    "ISA_._AD" */
+    0x52,0x0C,0x00,0x00,0x01,0x00,0x5B,0x80,  /* 00000C08    "R.....[." */
+    0x50,0x49,0x52,0x51,0x02,0x0A,0x60,0x0A,  /* 00000C10    "PIRQ..`." */
+    0x04,0x10,0x2E,0x5C,0x00,0x5B,0x81,0x29,  /* 00000C18    "...\.[.)" */
+    0x5C,0x2F,0x04,0x5F,0x53,0x42,0x5F,0x50,  /* 00000C20    "\/._SB_P" */
+    0x43,0x49,0x30,0x49,0x53,0x41,0x5F,0x50,  /* 00000C28    "CI0ISA_P" */
+    0x49,0x52,0x51,0x01,0x50,0x49,0x52,0x41,  /* 00000C30    "IRQ.PIRA" */
+    0x08,0x50,0x49,0x52,0x42,0x08,0x50,0x49,  /* 00000C38    ".PIRB.PI" */
+    0x52,0x43,0x08,0x50,0x49,0x52,0x44,0x08,  /* 00000C40    "RC.PIRD." */
+    0x5B,0x82,0x46,0x0B,0x53,0x59,0x53,0x52,  /* 00000C48    "[.F.SYSR" */
+    0x08,0x5F,0x48,0x49,0x44,0x0C,0x41,0xD0,  /* 00000C50    "._HID.A." */
+    0x0C,0x02,0x08,0x5F,0x55,0x49,0x44,0x01,  /* 00000C58    "..._UID." */
+    0x08,0x43,0x52,0x53,0x5F,0x11,0x4E,0x08,  /* 00000C60    ".CRS_.N." */
+    0x0A,0x8A,0x47,0x01,0x10,0x00,0x10,0x00,  /* 00000C68    "..G....." */
+    0x00,0x10,0x47,0x01,0x22,0x00,0x22,0x00,  /* 00000C70    "..G."."." */
+    0x00,0x0C,0x47,0x01,0x30,0x00,0x30,0x00,  /* 00000C78    "..G.0.0." */
+    0x00,0x10,0x47,0x01,0x44,0x00,0x44,0x00,  /* 00000C80    "..G.D.D." */
+    0x00,0x1C,0x47,0x01,0x62,0x00,0x62,0x00,  /* 00000C88    "..G.b.b." */
+    0x00,0x02,0x47,0x01,0x65,0x00,0x65,0x00,  /* 00000C90    "..G.e.e." */
+    0x00,0x0B,0x47,0x01,0x72,0x00,0x72,0x00,  /* 00000C98    "..G.r.r." */
+    0x00,0x0E,0x47,0x01,0x80,0x00,0x80,0x00,  /* 00000CA0    "..G....." */
+    0x00,0x01,0x47,0x01,0x84,0x00,0x84,0x00,  /* 00000CA8    "..G....." */
+    0x00,0x03,0x47,0x01,0x88,0x00,0x88,0x00,  /* 00000CB0    "..G....." */
+    0x00,0x01,0x47,0x01,0x8C,0x00,0x8C,0x00,  /* 00000CB8    "..G....." */
+    0x00,0x03,0x47,0x01,0x90,0x00,0x90,0x00,  /* 00000CC0    "..G....." */
+    0x00,0x10,0x47,0x01,0xA2,0x00,0xA2,0x00,  /* 00000CC8    "..G....." */
+    0x00,0x1C,0x47,0x01,0xE0,0x00,0xE0,0x00,  /* 00000CD0    "..G....." */
+    0x00,0x10,0x47,0x01,0xA0,0x08,0xA0,0x08,  /* 00000CD8    "..G....." */
+    0x00,0x04,0x47,0x01,0xC0,0x0C,0xC0,0x0C,  /* 00000CE0    "..G....." */
+    0x00,0x10,0x47,0x01,0xD0,0x04,0xD0,0x04,  /* 00000CE8    "..G....." */
+    0x00,0x02,0x79,0x00,0x14,0x0B,0x5F,0x43,  /* 00000CF0    "..y..._C" */
+    0x52,0x53,0x00,0xA4,0x43,0x52,0x53,0x5F,  /* 00000CF8    "RS..CRS_" */
+    0x5B,0x82,0x2B,0x50,0x49,0x43,0x5F,0x08,  /* 00000D00    "[.+PIC_." */
+    0x5F,0x48,0x49,0x44,0x0B,0x41,0xD0,0x08,  /* 00000D08    "_HID.A.." */
+    0x5F,0x43,0x52,0x53,0x11,0x18,0x0A,0x15,  /* 00000D10    "_CRS...." */
+    0x47,0x01,0x20,0x00,0x20,0x00,0x01,0x02,  /* 00000D18    "G. . ..." */
+    0x47,0x01,0xA0,0x00,0xA0,0x00,0x01,0x02,  /* 00000D20    "G......." */
+    0x22,0x04,0x00,0x79,0x00,0x5B,0x82,0x47,  /* 00000D28    ""..y.[.G" */
+    0x05,0x44,0x4D,0x41,0x30,0x08,0x5F,0x48,  /* 00000D30    ".DMA0._H" */
+    0x49,0x44,0x0C,0x41,0xD0,0x02,0x00,0x08,  /* 00000D38    "ID.A...." */
+    0x5F,0x43,0x52,0x53,0x11,0x41,0x04,0x0A,  /* 00000D40    "_CRS.A.." */
+    0x3D,0x2A,0x10,0x04,0x47,0x01,0x00,0x00,  /* 00000D48    "=*..G..." */
+    0x00,0x00,0x00,0x10,0x47,0x01,0x81,0x00,  /* 00000D50    "....G..." */
+    0x81,0x00,0x00,0x03,0x47,0x01,0x87,0x00,  /* 00000D58    "....G..." */
+    0x87,0x00,0x00,0x01,0x47,0x01,0x89,0x00,  /* 00000D60    "....G..." */
+    0x89,0x00,0x00,0x03,0x47,0x01,0x8F,0x00,  /* 00000D68    "....G..." */
+    0x8F,0x00,0x00,0x01,0x47,0x01,0xC0,0x00,  /* 00000D70    "....G..." */
+    0xC0,0x00,0x00,0x20,0x47,0x01,0x80,0x04,  /* 00000D78    "... G..." */
+    0x80,0x04,0x00,0x10,0x79,0x00,0x5B,0x82,  /* 00000D80    "....y.[." */
+    0x25,0x54,0x4D,0x52,0x5F,0x08,0x5F,0x48,  /* 00000D88    "%TMR_._H" */
+    0x49,0x44,0x0C,0x41,0xD0,0x01,0x00,0x08,  /* 00000D90    "ID.A...." */
+    0x5F,0x43,0x52,0x53,0x11,0x10,0x0A,0x0D,  /* 00000D98    "_CRS...." */
+    0x47,0x01,0x40,0x00,0x40,0x00,0x00,0x04,  /* 00000DA0    "G.@.@..." */
+    0x22,0x01,0x00,0x79,0x00,0x5B,0x82,0x25,  /* 00000DA8    ""..y.[.%" */
+    0x52,0x54,0x43,0x5F,0x08,0x5F,0x48,0x49,  /* 00000DB0    "RTC_._HI" */
+    0x44,0x0C,0x41,0xD0,0x0B,0x00,0x08,0x5F,  /* 00000DB8    "D.A...._" */
+    0x43,0x52,0x53,0x11,0x10,0x0A,0x0D,0x47,  /* 00000DC0    "CRS....G" */
+    0x01,0x70,0x00,0x70,0x00,0x00,0x02,0x22,  /* 00000DC8    ".p.p..."" */
+    0x00,0x01,0x79,0x00,0x5B,0x82,0x22,0x53,  /* 00000DD0    "..y.[."S" */
+    0x50,0x4B,0x52,0x08,0x5F,0x48,0x49,0x44,  /* 00000DD8    "PKR._HID" */
+    0x0C,0x41,0xD0,0x08,0x00,0x08,0x5F,0x43,  /* 00000DE0    ".A...._C" */
+    0x52,0x53,0x11,0x0D,0x0A,0x0A,0x47,0x01,  /* 00000DE8    "RS....G." */
+    0x61,0x00,0x61,0x00,0x00,0x01,0x79,0x00,  /* 00000DF0    "a.a...y." */
+    0x5B,0x82,0x31,0x50,0x53,0x32,0x4D,0x08,  /* 00000DF8    "[.1PS2M." */
+    0x5F,0x48,0x49,0x44,0x0C,0x41,0xD0,0x0F,  /* 00000E00    "_HID.A.." */
+    0x13,0x08,0x5F,0x43,0x49,0x44,0x0C,0x41,  /* 00000E08    ".._CID.A" */
+    0xD0,0x0F,0x13,0x14,0x09,0x5F,0x53,0x54,  /* 00000E10    "....._ST" */
+    0x41,0x00,0xA4,0x0A,0x0F,0x08,0x5F,0x43,  /* 00000E18    "A....._C" */
+    0x52,0x53,0x11,0x08,0x0A,0x05,0x22,0x00,  /* 00000E20    "RS...."." */
+    0x10,0x79,0x00,0x5B,0x82,0x42,0x04,0x50,  /* 00000E28    ".y.[.B.P" */
+    0x53,0x32,0x4B,0x08,0x5F,0x48,0x49,0x44,  /* 00000E30    "S2K._HID" */
+    0x0C,0x41,0xD0,0x03,0x03,0x08,0x5F,0x43,  /* 00000E38    ".A...._C" */
+    0x49,0x44,0x0C,0x41,0xD0,0x03,0x0B,0x14,  /* 00000E40    "ID.A...." */
+    0x09,0x5F,0x53,0x54,0x41,0x00,0xA4,0x0A,  /* 00000E48    "._STA..." */
+    0x0F,0x08,0x5F,0x43,0x52,0x53,0x11,0x18,  /* 00000E50    ".._CRS.." */
+    0x0A,0x15,0x47,0x01,0x60,0x00,0x60,0x00,  /* 00000E58    "..G.`.`." */
+    0x00,0x01,0x47,0x01,0x64,0x00,0x64,0x00,  /* 00000E60    "..G.d.d." */
+    0x00,0x01,0x22,0x02,0x00,0x79,0x00,0x5B,  /* 00000E68    ".."..y.[" */
+    0x82,0x3A,0x46,0x44,0x43,0x30,0x08,0x5F,  /* 00000E70    ".:FDC0._" */
+    0x48,0x49,0x44,0x0C,0x41,0xD0,0x07,0x00,  /* 00000E78    "HID.A..." */
+    0x14,0x09,0x5F,0x53,0x54,0x41,0x00,0xA4,  /* 00000E80    ".._STA.." */
+    0x0A,0x0F,0x08,0x5F,0x43,0x52,0x53,0x11,  /* 00000E88    "..._CRS." */
+    0x1B,0x0A,0x18,0x47,0x01,0xF0,0x03,0xF0,  /* 00000E90    "...G...." */
+    0x03,0x01,0x06,0x47,0x01,0xF7,0x03,0xF7,  /* 00000E98    "...G...." */
+    0x03,0x01,0x01,0x22,0x40,0x00,0x2A,0x04,  /* 00000EA0    "..."@.*." */
+    0x00,0x79,0x00,0x5B,0x82,0x46,0x04,0x55,  /* 00000EA8    ".y.[.F.U" */
+    0x41,0x52,0x31,0x08,0x5F,0x48,0x49,0x44,  /* 00000EB0    "AR1._HID" */
+    0x0C,0x41,0xD0,0x05,0x01,0x08,0x5F,0x55,  /* 00000EB8    ".A...._U" */
+    0x49,0x44,0x01,0x14,0x19,0x5F,0x53,0x54,  /* 00000EC0    "ID..._ST" */
+    0x41,0x00,0xA0,0x0D,0x93,0x5E,0x5E,0x5E,  /* 00000EC8    "A....^^^" */
+    0x5E,0x55,0x41,0x52,0x31,0x00,0xA4,0x00,  /* 00000ED0    "^UAR1..." */
+    0xA1,0x04,0xA4,0x0A,0x0F,0x08,0x5F,0x43,  /* 00000ED8    "......_C" */
+    0x52,0x53,0x11,0x10,0x0A,0x0D,0x47,0x01,  /* 00000EE0    "RS....G." */
+    0xF8,0x03,0xF8,0x03,0x08,0x08,0x22,0x10,  /* 00000EE8    "......"." */
+    0x00,0x79,0x00,0x5B,0x82,0x47,0x04,0x55,  /* 00000EF0    ".y.[.G.U" */
+    0x41,0x52,0x32,0x08,0x5F,0x48,0x49,0x44,  /* 00000EF8    "AR2._HID" */
+    0x0C,0x41,0xD0,0x05,0x01,0x08,0x5F,0x55,  /* 00000F00    ".A...._U" */
+    0x49,0x44,0x0A,0x02,0x14,0x19,0x5F,0x53,  /* 00000F08    "ID...._S" */
+    0x54,0x41,0x00,0xA0,0x0D,0x93,0x5E,0x5E,  /* 00000F10    "TA....^^" */
+    0x5E,0x5E,0x55,0x41,0x52,0x32,0x00,0xA4,  /* 00000F18    "^^UAR2.." */
+    0x00,0xA1,0x04,0xA4,0x0A,0x0F,0x08,0x5F,  /* 00000F20    "......._" */
+    0x43,0x52,0x53,0x11,0x10,0x0A,0x0D,0x47,  /* 00000F28    "CRS....G" */
+    0x01,0xF8,0x02,0xF8,0x02,0x08,0x08,0x22,  /* 00000F30    "......."" */
+    0x08,0x00,0x79,0x00,0x5B,0x82,0x36,0x4C,  /* 00000F38    "..y.[.6L" */
+    0x54,0x50,0x31,0x08,0x5F,0x48,0x49,0x44,  /* 00000F40    "TP1._HID" */
+    0x0C,0x41,0xD0,0x04,0x00,0x08,0x5F,0x55,  /* 00000F48    ".A...._U" */
+    0x49,0x44,0x0A,0x02,0x14,0x09,0x5F,0x53,  /* 00000F50    "ID...._S" */
+    0x54,0x41,0x00,0xA4,0x0A,0x0F,0x08,0x5F,  /* 00000F58    "TA....._" */
+    0x43,0x52,0x53,0x11,0x10,0x0A,0x0D,0x47,  /* 00000F60    "CRS....G" */
+    0x01,0x78,0x03,0x78,0x03,0x08,0x08,0x22,  /* 00000F68    ".x.x..."" */
+    0x80,0x00,0x79,0x00,0x5B,0x82,0x4D,0x07,  /* 00000F70    "..y.[.M." */
+    0x53,0x31,0x46,0x30,0x08,0x5F,0x41,0x44,  /* 00000F78    "S1F0._AD" */
+    0x52,0x0C,0x00,0x00,0x06,0x00,0x08,0x5F,  /* 00000F80    "R......_" */
+    0x53,0x55,0x4E,0x01,0x14,0x13,0x5F,0x50,  /* 00000F88    "SUN..._P" */
+    0x53,0x30,0x00,0x70,0x0A,0x80,0x5C,0x2E,  /* 00000F90    "S0.p..\." */
+    0x5F,0x47,0x50,0x45,0x44,0x50,0x54,0x32,  /* 00000F98    "_GPEDPT2" */
+    0x14,0x13,0x5F,0x50,0x53,0x33,0x00,0x70,  /* 00000FA0    ".._PS3.p" */
+    0x0A,0x83,0x5C,0x2E,0x5F,0x47,0x50,0x45,  /* 00000FA8    "..\._GPE" */
+    0x44,0x50,0x54,0x32,0x14,0x1F,0x5F,0x45,  /* 00000FB0    "DPT2.._E" */
+    0x4A,0x30,0x01,0x70,0x0A,0x88,0x5C,0x2E,  /* 00000FB8    "J0.p..\." */
+    0x5F,0x47,0x50,0x45,0x44,0x50,0x54,0x32,  /* 00000FC0    "_GPEDPT2" */
+    0x70,0x01,0x5C,0x2E,0x5F,0x47,0x50,0x45,  /* 00000FC8    "p.\._GPE" */
+    0x50,0x48,0x50,0x31,0x14,0x1E,0x5F,0x53,  /* 00000FD0    "PHP1.._S" */
+    0x54,0x41,0x00,0x70,0x0A,0x89,0x5C,0x2E,  /* 00000FD8    "TA.p..\." */
+    0x5F,0x47,0x50,0x45,0x44,0x50,0x54,0x32,  /* 00000FE0    "_GPEDPT2" */
+    0xA4,0x5C,0x2E,0x5F,0x47,0x50,0x45,0x50,  /* 00000FE8    ".\._GPEP" */
+    0x48,0x50,0x31,0x5B,0x82,0x4E,0x07,0x53,  /* 00000FF0    "HP1[.N.S" */
+    0x32,0x46,0x30,0x08,0x5F,0x41,0x44,0x52,  /* 00000FF8    "2F0._ADR" */
+    0x0C,0x00,0x00,0x07,0x00,0x08,0x5F,0x53,  /* 00001000    "......_S" */
+    0x55,0x4E,0x0A,0x02,0x14,0x13,0x5F,0x50,  /* 00001008    "UN...._P" */
+    0x53,0x30,0x00,0x70,0x0A,0x90,0x5C,0x2E,  /* 00001010    "S0.p..\." */
+    0x5F,0x47,0x50,0x45,0x44,0x50,0x54,0x32,  /* 00001018    "_GPEDPT2" */
+    0x14,0x13,0x5F,0x50,0x53,0x33,0x00,0x70,  /* 00001020    ".._PS3.p" */
+    0x0A,0x93,0x5C,0x2E,0x5F,0x47,0x50,0x45,  /* 00001028    "..\._GPE" */
+    0x44,0x50,0x54,0x32,0x14,0x1F,0x5F,0x45,  /* 00001030    "DPT2.._E" */
+    0x4A,0x30,0x01,0x70,0x0A,0x98,0x5C,0x2E,  /* 00001038    "J0.p..\." */
+    0x5F,0x47,0x50,0x45,0x44,0x50,0x54,0x32,  /* 00001040    "_GPEDPT2" */
+    0x70,0x01,0x5C,0x2E,0x5F,0x47,0x50,0x45,  /* 00001048    "p.\._GPE" */
+    0x50,0x48,0x50,0x32,0x14,0x1E,0x5F,0x53,  /* 00001050    "PHP2.._S" */
+    0x54,0x41,0x00,0x70,0x0A,0x99,0x5C,0x2E,  /* 00001058    "TA.p..\." */
+    0x5F,0x47,0x50,0x45,0x44,0x50,0x54,0x32,  /* 00001060    "_GPEDPT2" */
+    0xA4,0x5C,0x2E,0x5F,0x47,0x50,0x45,0x50,  /* 00001068    ".\._GPEP" */
+    0x48,0x50,0x32,0x10,0x4E,0x0B,0x5F,0x47,  /* 00001070    "HP2.N._G" */
+    0x50,0x45,0x5B,0x80,0x50,0x48,0x50,0x5F,  /* 00001078    "PE[.PHP_" */
+    0x01,0x0B,0xC0,0x10,0x0A,0x03,0x5B,0x81,  /* 00001080    "......[." */
+    0x15,0x50,0x48,0x50,0x5F,0x01,0x50,0x53,  /* 00001088    ".PHP_.PS" */
+    0x54,0x41,0x08,0x50,0x48,0x50,0x31,0x08,  /* 00001090    "TA.PHP1." */
+    0x50,0x48,0x50,0x32,0x08,0x5B,0x80,0x44,  /* 00001098    "PHP2.[.D" */
+    0x47,0x31,0x5F,0x01,0x0B,0x44,0xB0,0x0A,  /* 000010A0    "G1_..D.." */
+    0x04,0x5B,0x81,0x10,0x44,0x47,0x31,0x5F,  /* 000010A8    ".[..DG1_" */
+    0x01,0x44,0x50,0x54,0x31,0x08,0x44,0x50,  /* 000010B0    ".DPT1.DP" */
+    0x54,0x32,0x08,0x14,0x46,0x07,0x5F,0x4C,  /* 000010B8    "T2..F._L" */
+    0x30,0x33,0x00,0x08,0x53,0x4C,0x54,0x5F,  /* 000010C0    "03..SLT_" */
+    0x00,0x08,0x45,0x56,0x54,0x5F,0x00,0x70,  /* 000010C8    "..EVT_.p" */
+    0x50,0x53,0x54,0x41,0x61,0x7A,0x61,0x0A,  /* 000010D0    "PSTAaza." */
+    0x04,0x53,0x4C,0x54,0x5F,0x7B,0x61,0x0A,  /* 000010D8    ".SLT_{a." */
+    0x0F,0x45,0x56,0x54,0x5F,0x70,0x53,0x4C,  /* 000010E0    ".EVT_pSL" */
+    0x54,0x5F,0x44,0x50,0x54,0x31,0x70,0x45,  /* 000010E8    "T_DPT1pE" */
+    0x56,0x54,0x5F,0x44,0x50,0x54,0x32,0xA0,  /* 000010F0    "VT_DPT2." */
+    0x1B,0x93,0x53,0x4C,0x54,0x5F,0x01,0x86,  /* 000010F8    "..SLT_.." */
+    0x5C,0x2F,0x03,0x5F,0x53,0x42,0x5F,0x50,  /* 00001100    "\/._SB_P" */
+    0x43,0x49,0x30,0x53,0x31,0x46,0x30,0x45,  /* 00001108    "CI0S1F0E" */
+    0x56,0x54,0x5F,0xA1,0x1E,0xA0,0x1C,0x93,  /* 00001110    "VT_....." */
+    0x53,0x4C,0x54,0x5F,0x0A,0x02,0x86,0x5C,  /* 00001118    "SLT_...\" */
+    0x2F,0x03,0x5F,0x53,0x42,0x5F,0x50,0x43,  /* 00001120    "/._SB_PC" */
+    0x49,0x30,0x53,0x32,0x46,0x30,0x45,0x56,  /* 00001128    "I0S2F0EV" */
+    0x54,0x5F,
 };
 int DsdtLen=sizeof(AmlCode);
diff -r 34ac0d3b5bfb -r 7c752689b0ea tools/firmware/rombios/rombios.c
--- a/tools/firmware/rombios/rombios.c  Tue May 20 14:28:19 2008 +0100
+++ b/tools/firmware/rombios/rombios.c  Tue May 20 14:36:05 2008 +0100
@@ -1843,12 +1843,24 @@ keyboard_panic(status)
   BX_PANIC("Keyboard error:%u\n",status);
 }
 
+
+#define CMOS_SHUTDOWN_S3 0xFE
 //--------------------------------------------------------------------------
 // machine_reset
 //--------------------------------------------------------------------------
   void
 machine_reset()
 {
+ASM_START
+;we must check whether CMOS_SHUTDOWN_S3 is set or not
+;if it is s3 resume, just jmp back to normal Post Entry
+;below port io will prevent s3 resume
+  mov al, #0x0f
+  out 0x70, al
+  in al, 0x71
+  cmp al, #0xFE
+  jz post
+ASM_END
   /* Frob the keyboard reset line to reset the processor */
   outb(0x64, 0x60); /* Map the flags register at data port (0x60) */
   outb(0x60, 0x14); /* Set the flags to system|disable */
@@ -2305,6 +2317,72 @@ debugger_off()
 debugger_off()
 {
   outb(0xfedc, 0x00);
+}
+
+/* according to memory layout defined in acpi_build_tables(),
+   acpi FACS table is located in ACPI_PHYSICAL_ADDRESS(0xEA000) */
+#define ACPI_FACS_ADDRESS 0xEA000
+#define ACPI_FACS_OFFSET 0x10
+/* S3 resume status in CMOS 0Fh shutdown status byte*/
+
+void 
+s3_resume()
+{
+    Bit16u s3_wakeup_vector;
+    extern Bit16u s3_wakeup_ip;
+    extern Bit16u s3_wakeup_cs;
+    extern Bit8u s3_resume_flag;
+
+ASM_START
+    push ds
+    mov ax, #0xF000
+    mov ds, ax
+ASM_END
+
+    if (s3_resume_flag!=CMOS_SHUTDOWN_S3){
+        goto s3_out;
+    }
+    s3_resume_flag = 0;
+
+ASM_START
+    mov ax, #0x0
+    mov ds, ax
+ASM_END
+
+    /* get x_firmware_waking_vector */
+    s3_wakeup_vector = *((Bit16u*)(ACPI_FACS_ADDRESS+ACPI_FACS_OFFSET+24));
+    if (s3_wakeup_vector == 0){
+        /* get firmware_waking_vector */
+        s3_wakeup_vector = *((Bit16u*)(ACPI_FACS_ADDRESS+ACPI_FACS_OFFSET+12));
+        if (s3_wakeup_vector == 0){
+            goto s3_out;
+        }
+    }
+
+    /* setup wakeup vector */
+    s3_wakeup_ip = s3_wakeup_vector & 0xF;
+    s3_wakeup_cs = s3_wakeup_vector >> 4;
+
+ASM_START
+    mov bx, [_s3_wakeup_cs]
+    mov dx, [_s3_wakeup_ip]
+
+    mov ax, #0xF000
+    mov ds, ax
+    mov [_s3_wakeup_cs], bx
+    mov [_s3_wakeup_ip], dx
+    jmpf [_s3_wakeup_ip]
+
+; S3 data
+_s3_wakeup_ip:    dw 0x0a      
+_s3_wakeup_cs:    dw 0x0      
+_s3_resume_flag:  db 0   ; set at POST time by CMOS[0xF] shutdown status
+ASM_END
+
+s3_out:
+ASM_START
+   pop ds 
+ASM_END
 }
 
 #if BX_USE_ATADRV
@@ -9752,6 +9830,18 @@ post:
   ;; Examine CMOS shutdown status.
   mov al, bl
 
+  ;; 0xFE S3 resume
+  cmp AL, #0xFE
+  jnz not_s3_resume
+
+  ;; set S3 resume flag
+  mov dx, #0xF000
+  mov ds, dx
+  mov [_s3_resume_flag], AL
+  jmp normal_post
+
+not_s3_resume:
+
   ;; 0x00, 0x09, 0x0D+ = normal startup
   cmp AL, #0x00
   jz normal_post
@@ -10049,6 +10139,7 @@ post_default_ints:
   ;;
 #endif // BX_ELTORITO_BOOT
 
+  call _s3_resume
   call _interactive_bootkey
 
 #if BX_TCGBIOS

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.