net/if_clone: Panic if the same cloner is attached twice
[dragonfly.git] / sys / bus / usb / kue_fw.h
1 /*
2  * Copyright (c) 1997, 1998, 1999, 2000
3  *      Bill Paul <wpaul@ee.columbia.edu>.  All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  * 1. Redistributions of source code must retain the above copyright
9  *    notice, this list of conditions and the following disclaimer.
10  * 2. Redistributions in binary form must reproduce the above copyright
11  *    notice, this list of conditions and the following disclaimer in the
12  *    documentation and/or other materials provided with the distribution.
13  * 3. All advertising materials mentioning features or use of this software
14  *    must display the following acknowledgement:
15  *      This product includes software developed by Bill Paul.
16  * 4. Neither the name of the author nor the names of any co-contributors
17  *    may be used to endorse or promote products derived from this software
18  *    without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
21  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23  * ARE DISCLAIMED.  IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
24  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
30  * THE POSSIBILITY OF SUCH DAMAGE.
31  *
32  * $FreeBSD: src/sys/dev/usb/kue_fw.h,v 1.2 2000/04/03 20:58:23 n_hibma Exp $
33  * $DragonFly: src/sys/bus/usb/kue_fw.h,v 1.4 2007/06/28 06:32:31 hasso Exp $
34  */
35
36 /*
37  * This file contains the firmware needed to make the KLSI chip work,
38  * along with a few constants related to the QT Engine microcontroller
39  * embedded in the KLSI part.
40  *
41  * Firmware is loaded using the vendor-specific 'send scan data'
42  * command (0xFF). The basic operation is that we must load the
43  * firmware, then issue some trigger commands to fix it up and start
44  * it running. There are three transfers: load the binary code,
45  * load the 'fixup' (data segment?), then issue a command to
46  * start the code firmware running. The data itself is prefixed by
47  * a 16-bit signature word, a 16-bit length value, a type byte
48  * and an interrupt (command) byte. The code segment is of type
49  * 0x02 (replacement interrupt vector data) and the fixup segment
50  * is of type 0x03 (replacement interrupt fixup data). The interrupt
51  * code is 0x64 (load new code). The length word is the total length
52  * of the segment minus 7. I precomputed the values and stuck them
53  * into the appropriate locations within the segments to save some
54  * work in the driver.
55  */
56
57 /* QT controller data block types. */
58 /* Write data into specific memory location. */
59 #define KUE_QTBTYPE_WRITE_DATA          0x00
60 /* Write data into interrupt vector location */
61 #define KUE_QTBTYPE_WRITE_INTVEC        0x01
62 /* Replace interrupt vector with this data */
63 #define KUE_QTBTYPE_REPL_INTVEC         0x02
64 /* Fixup interrupt vector code with this data */
65 #define KUE_QTBTYPE_FIXUP_INTVEC        0x03
66 /* Force jump to location */
67 #define KUE_QTBTYPE_JUMP                0x04
68 /* Force call to location */
69 #define KUE_QTBTYPE_CALL                0x05
70 /* Force interrupt call */
71 #define KUE_QTBTYPE_CALLINTR            0x06
72 /*
73  * Cause data to be written using the specified QT engine
74  * interrupt, from starting location in memory for a specified
75  * number of bytes.
76  */
77 #define KUE_QTBTYPE_WRITE_WITH_INTR     0x07
78 /* Cause data from stream to be written using specified QT interrupt. */
79 #define KUE_QTBTYPE_WRITE_STR_WITH_INTR 0x08
80 /* Cause data to be written to config locations. */
81 /* Addresses assume 0xc000 offset. */
82 #define KUE_QTBTYPE_WRITE_CONFIG        0x09
83
84 #define KUE_QTINTR_LOAD_CODE            0x64
85 #define KUE_QTINTR_TRIGGER_CODE         0x3B
86 #define KUE_QTINTR_LOAD_CODE_HIGH       0x9C
87
88 /* Firmware code segment */
89 static unsigned char kue_code_seg[] =
90 {
91     /******************************************/
92     /* NOTE: B6/C3 is data header signature   */
93     /*       0xAA/0xBB is data length = total */
94     /*       bytes - 7, 0xCC is type, 0xDD is */
95     /*       interrupt to use.                */
96     /******************************************/
97     0xB6, 0xC3, 0xf7, 0x0e, 0x02, 0x64,
98     0x9f, 0xcf, 0xbc, 0x08, 0xe7, 0x57, 0x00, 0x00,
99     0x9a, 0x08, 0x97, 0xc1, 0xe7, 0x67, 0xff, 0x1f,
100     0x28, 0xc0, 0xe7, 0x87, 0x00, 0x04, 0x24, 0xc0,
101     0xe7, 0x67, 0xff, 0xf9, 0x22, 0xc0, 0x97, 0xcf,
102     0xe7, 0x09, 0xa2, 0xc0, 0x94, 0x08, 0xd7, 0x09,
103     0x00, 0xc0, 0xe7, 0x59, 0xba, 0x08, 0x94, 0x08,
104     0x03, 0xc1, 0xe7, 0x67, 0xff, 0xf7, 0x24, 0xc0,
105     0xe7, 0x05, 0x00, 0xc0, 0xa7, 0xcf, 0x92, 0x08,
106     0xe7, 0x57, 0x00, 0x00, 0x8e, 0x08, 0xa7, 0xa1,
107     0x8e, 0x08, 0x97, 0xcf, 0xe7, 0x57, 0x00, 0x00,
108     0xf2, 0x09, 0x0a, 0xc0, 0xe7, 0x57, 0x00, 0x00,
109     0xa4, 0xc0, 0xa7, 0xc0, 0x56, 0x08, 0x9f, 0xaf,
110     0x70, 0x09, 0xe7, 0x07, 0x00, 0x00, 0xf2, 0x09,
111     0xe7, 0x57, 0xff, 0xff, 0x90, 0x08, 0x9f, 0xa0,
112     0x40, 0x00, 0xe7, 0x59, 0x90, 0x08, 0x94, 0x08,
113     0x9f, 0xa0, 0x40, 0x00, 0xc8, 0x09, 0xa2, 0x08,
114     0x08, 0x62, 0x9f, 0xa1, 0x14, 0x0a, 0xe7, 0x57,
115     0x00, 0x00, 0x52, 0x08, 0xa7, 0xc0, 0x56, 0x08,
116     0x9f, 0xaf, 0x04, 0x00, 0xe7, 0x57, 0x00, 0x00,
117     0x8e, 0x08, 0xa7, 0xc1, 0x56, 0x08, 0xc0, 0x09,
118     0xa8, 0x08, 0x00, 0x60, 0x05, 0xc4, 0xc0, 0x59,
119     0x94, 0x08, 0x02, 0xc0, 0x9f, 0xaf, 0xee, 0x00,
120     0xe7, 0x59, 0xae, 0x08, 0x94, 0x08, 0x02, 0xc1,
121     0x9f, 0xaf, 0xf6, 0x00, 0x9f, 0xaf, 0x9e, 0x03,
122     0xef, 0x57, 0x00, 0x00, 0xf0, 0x09, 0x9f, 0xa1,
123     0xde, 0x01, 0xe7, 0x57, 0x00, 0x00, 0x78, 0x08,
124     0x9f, 0xa0, 0xe4, 0x03, 0x9f, 0xaf, 0x2c, 0x04,
125     0xa7, 0xcf, 0x56, 0x08, 0x48, 0x02, 0xe7, 0x09,
126     0x94, 0x08, 0xa8, 0x08, 0xc8, 0x37, 0x04, 0x00,
127     0x9f, 0xaf, 0x68, 0x04, 0x97, 0xcf, 0xe7, 0x57,
128     0x00, 0x00, 0xa6, 0x08, 0x97, 0xc0, 0xd7, 0x09,
129     0x00, 0xc0, 0xc1, 0xdf, 0xc8, 0x09, 0x9c, 0x08,
130     0x08, 0x62, 0x1d, 0xc0, 0x27, 0x04, 0x9c, 0x08,
131     0x10, 0x94, 0xf0, 0x07, 0xee, 0x09, 0x02, 0x00,
132     0xc1, 0x07, 0x01, 0x00, 0x70, 0x00, 0x04, 0x00,
133     0xf0, 0x07, 0x44, 0x01, 0x06, 0x00, 0x50, 0xaf,
134     0xe7, 0x09, 0x94, 0x08, 0xae, 0x08, 0xe7, 0x17,
135     0x14, 0x00, 0xae, 0x08, 0xe7, 0x67, 0xff, 0x07,
136     0xae, 0x08, 0xe7, 0x07, 0xff, 0xff, 0xa8, 0x08,
137     0xe7, 0x07, 0x00, 0x00, 0xa6, 0x08, 0xe7, 0x05,
138     0x00, 0xc0, 0x97, 0xcf, 0xd7, 0x09, 0x00, 0xc0,
139     0xc1, 0xdf, 0x48, 0x02, 0xd0, 0x09, 0x9c, 0x08,
140     0x27, 0x02, 0x9c, 0x08, 0xe7, 0x09, 0x20, 0xc0,
141     0xee, 0x09, 0xe7, 0xd0, 0xee, 0x09, 0xe7, 0x05,
142     0x00, 0xc0, 0x97, 0xcf, 0x48, 0x02, 0xc8, 0x37,
143     0x04, 0x00, 0x00, 0x0c, 0x0c, 0x00, 0x00, 0x60,
144     0x21, 0xc0, 0xc0, 0x37, 0x3e, 0x00, 0x23, 0xc9,
145     0xc0, 0x57, 0xb4, 0x05, 0x1b, 0xc8, 0xc0, 0x17,
146     0x3f, 0x00, 0xc0, 0x67, 0xc0, 0xff, 0x30, 0x00,
147     0x08, 0x00, 0xf0, 0x07, 0x00, 0x00, 0x04, 0x00,
148     0x00, 0x02, 0xc0, 0x17, 0x4c, 0x00, 0x30, 0x00,
149     0x06, 0x00, 0xf0, 0x07, 0xbe, 0x01, 0x0a, 0x00,
150     0x48, 0x02, 0xc1, 0x07, 0x02, 0x00, 0xd7, 0x09,
151     0x00, 0xc0, 0xc1, 0xdf, 0x51, 0xaf, 0xe7, 0x05,
152     0x00, 0xc0, 0x97, 0xcf, 0x9f, 0xaf, 0x68, 0x04,
153     0x9f, 0xaf, 0xe4, 0x03, 0x97, 0xcf, 0x9f, 0xaf,
154     0xe4, 0x03, 0xc9, 0x37, 0x04, 0x00, 0xc1, 0xdf,
155     0xc8, 0x09, 0x70, 0x08, 0x50, 0x02, 0x67, 0x02,
156     0x70, 0x08, 0xd1, 0x07, 0x00, 0x00, 0xc0, 0xdf,
157     0x9f, 0xaf, 0xde, 0x01, 0x97, 0xcf, 0xe7, 0x57,
158     0x00, 0x00, 0xaa, 0x08, 0x97, 0xc1, 0xe7, 0x57,
159     0x01, 0x00, 0x7a, 0x08, 0x97, 0xc0, 0xc8, 0x09,
160     0x6e, 0x08, 0x08, 0x62, 0x97, 0xc0, 0x00, 0x02,
161     0xc0, 0x17, 0x0e, 0x00, 0x27, 0x00, 0x34, 0x01,
162     0x27, 0x0c, 0x0c, 0x00, 0x36, 0x01, 0xef, 0x57,
163     0x00, 0x00, 0xf0, 0x09, 0x9f, 0xc0, 0xbe, 0x02,
164     0xe7, 0x57, 0x00, 0x00, 0xb0, 0x08, 0x97, 0xc1,
165     0xe7, 0x07, 0x09, 0x00, 0x12, 0xc0, 0xe7, 0x77,
166     0x00, 0x08, 0x20, 0xc0, 0x9f, 0xc1, 0xb6, 0x02,
167     0xe7, 0x57, 0x09, 0x00, 0x12, 0xc0, 0x77, 0xc9,
168     0xd7, 0x09, 0x00, 0xc0, 0xc1, 0xdf, 0xe7, 0x77,
169     0x00, 0x08, 0x20, 0xc0, 0x2f, 0xc1, 0xe7, 0x07,
170     0x00, 0x00, 0x42, 0xc0, 0xe7, 0x07, 0x05, 0x00,
171     0x90, 0xc0, 0xc8, 0x07, 0x0a, 0x00, 0xe7, 0x77,
172     0x04, 0x00, 0x20, 0xc0, 0x09, 0xc1, 0x08, 0xda,
173     0x7a, 0xc1, 0xe7, 0x07, 0x00, 0x01, 0x42, 0xc0,
174     0xe7, 0x07, 0x04, 0x00, 0x90, 0xc0, 0x1a, 0xcf,
175     0xe7, 0x07, 0x01, 0x00, 0x7a, 0x08, 0x00, 0xd8,
176     0x27, 0x50, 0x34, 0x01, 0x17, 0xc1, 0xe7, 0x77,
177     0x02, 0x00, 0x20, 0xc0, 0x79, 0xc1, 0x27, 0x50,
178     0x34, 0x01, 0x10, 0xc1, 0xe7, 0x77, 0x02, 0x00,
179     0x20, 0xc0, 0x79, 0xc0, 0x9f, 0xaf, 0xd8, 0x02,
180     0xe7, 0x05, 0x00, 0xc0, 0x00, 0x60, 0x9f, 0xc0,
181     0xde, 0x01, 0x97, 0xcf, 0xe7, 0x07, 0x01, 0x00,
182     0xb8, 0x08, 0x06, 0xcf, 0xe7, 0x07, 0x30, 0x0e,
183     0x02, 0x00, 0xe7, 0x07, 0x50, 0xc3, 0x12, 0xc0,
184     0xe7, 0x05, 0x00, 0xc0, 0x97, 0xcf, 0xe7, 0x07,
185     0x01, 0x00, 0xb8, 0x08, 0x97, 0xcf, 0xe7, 0x07,
186     0x50, 0xc3, 0x12, 0xc0, 0xe7, 0x07, 0x30, 0x0e,
187     0x02, 0x00, 0xe7, 0x07, 0x01, 0x00, 0x7a, 0x08,
188     0xe7, 0x07, 0x05, 0x00, 0x90, 0xc0, 0x97, 0xcf,
189     0xe7, 0x07, 0x00, 0x01, 0x42, 0xc0, 0xe7, 0x07,
190     0x04, 0x00, 0x90, 0xc0, 0xe7, 0x07, 0x00, 0x00,
191     0x7a, 0x08, 0xe7, 0x57, 0x0f, 0x00, 0xb2, 0x08,
192     0x13, 0xc1, 0x9f, 0xaf, 0x2e, 0x08, 0xca, 0x09,
193     0xac, 0x08, 0xf2, 0x17, 0x01, 0x00, 0x5c, 0x00,
194     0xf2, 0x27, 0x00, 0x00, 0x5e, 0x00, 0xe7, 0x07,
195     0x00, 0x00, 0xb2, 0x08, 0xe7, 0x07, 0x01, 0x00,
196     0xb4, 0x08, 0xc0, 0x07, 0xff, 0xff, 0x97, 0xcf,
197     0x9f, 0xaf, 0x4c, 0x03, 0xc0, 0x69, 0xb4, 0x08,
198     0x57, 0x00, 0x9f, 0xde, 0x33, 0x00, 0xc1, 0x05,
199     0x27, 0xd8, 0xb2, 0x08, 0x27, 0xd2, 0xb4, 0x08,
200     0xe7, 0x87, 0x01, 0x00, 0xb4, 0x08, 0xe7, 0x67,
201     0xff, 0x03, 0xb4, 0x08, 0x00, 0x60, 0x97, 0xc0,
202     0xe7, 0x07, 0x01, 0x00, 0xb0, 0x08, 0x27, 0x00,
203     0x12, 0xc0, 0x97, 0xcf, 0xc0, 0x09, 0xb6, 0x08,
204     0x00, 0xd2, 0x02, 0xc3, 0xc0, 0x97, 0x05, 0x80,
205     0x27, 0x00, 0xb6, 0x08, 0xc0, 0x99, 0x82, 0x08,
206     0xc0, 0x99, 0xa2, 0xc0, 0x97, 0xcf, 0xe7, 0x07,
207     0x00, 0x00, 0xb0, 0x08, 0xc0, 0xdf, 0x97, 0xcf,
208     0xc8, 0x09, 0x72, 0x08, 0x08, 0x62, 0x02, 0xc0,
209     0x10, 0x64, 0x07, 0xc1, 0xe7, 0x07, 0x00, 0x00,
210     0x64, 0x08, 0xe7, 0x07, 0xc8, 0x05, 0x24, 0x00,
211     0x97, 0xcf, 0x27, 0x04, 0x72, 0x08, 0xc8, 0x17,
212     0x0e, 0x00, 0x27, 0x02, 0x64, 0x08, 0xe7, 0x07,
213     0xd6, 0x05, 0x24, 0x00, 0x97, 0xcf, 0xd7, 0x09,
214     0x00, 0xc0, 0xc1, 0xdf, 0xe7, 0x57, 0x00, 0x00,
215     0x62, 0x08, 0x13, 0xc1, 0x9f, 0xaf, 0x70, 0x03,
216     0xe7, 0x57, 0x00, 0x00, 0x64, 0x08, 0x13, 0xc0,
217     0xe7, 0x09, 0x64, 0x08, 0x30, 0x01, 0xe7, 0x07,
218     0xf2, 0x05, 0x32, 0x01, 0xe7, 0x07, 0x10, 0x00,
219     0x96, 0xc0, 0xe7, 0x09, 0x64, 0x08, 0x62, 0x08,
220     0x04, 0xcf, 0xe7, 0x57, 0x00, 0x00, 0x64, 0x08,
221     0x02, 0xc1, 0x9f, 0xaf, 0x70, 0x03, 0xe7, 0x05,
222     0x00, 0xc0, 0x97, 0xcf, 0xd7, 0x09, 0x00, 0xc0,
223     0xc1, 0xdf, 0xc8, 0x09, 0x72, 0x08, 0x27, 0x02,
224     0x78, 0x08, 0x08, 0x62, 0x03, 0xc1, 0xe7, 0x05,
225     0x00, 0xc0, 0x97, 0xcf, 0x27, 0x04, 0x72, 0x08,
226     0xe7, 0x05, 0x00, 0xc0, 0xf0, 0x07, 0x40, 0x00,
227     0x08, 0x00, 0xf0, 0x07, 0x00, 0x00, 0x04, 0x00,
228     0x00, 0x02, 0xc0, 0x17, 0x0c, 0x00, 0x30, 0x00,
229     0x06, 0x00, 0xf0, 0x07, 0x64, 0x01, 0x0a, 0x00,
230     0xc8, 0x17, 0x04, 0x00, 0xc1, 0x07, 0x02, 0x00,
231     0x51, 0xaf, 0x97, 0xcf, 0xe7, 0x57, 0x00, 0x00,
232     0x6a, 0x08, 0x97, 0xc0, 0xc1, 0xdf, 0xc8, 0x09,
233     0x6a, 0x08, 0x27, 0x04, 0x6a, 0x08, 0x27, 0x52,
234     0x6c, 0x08, 0x03, 0xc1, 0xe7, 0x07, 0x6a, 0x08,
235     0x6c, 0x08, 0xc0, 0xdf, 0x17, 0x02, 0xc8, 0x17,
236     0x0e, 0x00, 0x9f, 0xaf, 0x16, 0x05, 0xc8, 0x05,
237     0x00, 0x60, 0x03, 0xc0, 0x9f, 0xaf, 0x80, 0x04,
238     0x97, 0xcf, 0x9f, 0xaf, 0x68, 0x04, 0x97, 0xcf,
239     0xd7, 0x09, 0x00, 0xc0, 0xc1, 0xdf, 0x08, 0x62,
240     0x1c, 0xc0, 0xd0, 0x09, 0x72, 0x08, 0x27, 0x02,
241     0x72, 0x08, 0xe7, 0x05, 0x00, 0xc0, 0x97, 0xcf,
242     0x97, 0x02, 0xca, 0x09, 0xac, 0x08, 0xf2, 0x17,
243     0x01, 0x00, 0x04, 0x00, 0xf2, 0x27, 0x00, 0x00,
244     0x06, 0x00, 0xca, 0x17, 0x2c, 0x00, 0xf8, 0x77,
245     0x01, 0x00, 0x0e, 0x00, 0x06, 0xc0, 0xca, 0xd9,
246     0xf8, 0x57, 0xff, 0x00, 0x0e, 0x00, 0x01, 0xc1,
247     0xca, 0xd9, 0x22, 0x1c, 0x0c, 0x00, 0xe2, 0x27,
248     0x00, 0x00, 0xe2, 0x17, 0x01, 0x00, 0xe2, 0x27,
249     0x00, 0x00, 0xca, 0x05, 0x00, 0x0c, 0x0c, 0x00,
250     0xc0, 0x17, 0x41, 0x00, 0xc0, 0x67, 0xc0, 0xff,
251     0x30, 0x00, 0x08, 0x00, 0x00, 0x02, 0xc0, 0x17,
252     0x0c, 0x00, 0x30, 0x00, 0x06, 0x00, 0xf0, 0x07,
253     0xdc, 0x00, 0x0a, 0x00, 0xf0, 0x07, 0x00, 0x00,
254     0x04, 0x00, 0x00, 0x0c, 0x08, 0x00, 0x40, 0xd1,
255     0x01, 0x00, 0xc0, 0x19, 0xa6, 0x08, 0xc0, 0x59,
256     0x98, 0x08, 0x04, 0xc9, 0x49, 0xaf, 0x9f, 0xaf,
257     0xee, 0x00, 0x4a, 0xaf, 0x67, 0x10, 0xa6, 0x08,
258     0xc8, 0x17, 0x04, 0x00, 0xc1, 0x07, 0x01, 0x00,
259     0xd7, 0x09, 0x00, 0xc0, 0xc1, 0xdf, 0x50, 0xaf,
260     0xe7, 0x05, 0x00, 0xc0, 0x97, 0xcf, 0xc0, 0x07,
261     0x01, 0x00, 0xc1, 0x09, 0x7c, 0x08, 0xc1, 0x77,
262     0x01, 0x00, 0x97, 0xc1, 0xd8, 0x77, 0x01, 0x00,
263     0x12, 0xc0, 0xc9, 0x07, 0x4c, 0x08, 0x9f, 0xaf,
264     0x64, 0x05, 0x04, 0xc1, 0xc1, 0x77, 0x08, 0x00,
265     0x13, 0xc0, 0x97, 0xcf, 0xc1, 0x77, 0x02, 0x00,
266     0x97, 0xc1, 0xc1, 0x77, 0x10, 0x00, 0x0c, 0xc0,
267     0x9f, 0xaf, 0x86, 0x05, 0x97, 0xcf, 0xc1, 0x77,
268     0x04, 0x00, 0x06, 0xc0, 0xc9, 0x07, 0x7e, 0x08,
269     0x9f, 0xaf, 0x64, 0x05, 0x97, 0xc0, 0x00, 0xcf,
270     0x00, 0x90, 0x97, 0xcf, 0x50, 0x54, 0x97, 0xc1,
271     0x70, 0x5c, 0x02, 0x00, 0x02, 0x00, 0x97, 0xc1,
272     0x70, 0x5c, 0x04, 0x00, 0x04, 0x00, 0x97, 0xcf,
273     0xc0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00,
274     0x0c, 0x00, 0x06, 0x00, 0x00, 0x00, 0xcb, 0x09,
275     0x88, 0x08, 0xcc, 0x09, 0x8a, 0x08, 0x0b, 0x53,
276     0x11, 0xc0, 0xc9, 0x02, 0xca, 0x07, 0x78, 0x05,
277     0x9f, 0xaf, 0x64, 0x05, 0x97, 0xc0, 0x0a, 0xc8,
278     0x82, 0x08, 0x0a, 0xcf, 0x82, 0x08, 0x9f, 0xaf,
279     0x64, 0x05, 0x97, 0xc0, 0x05, 0xc2, 0x89, 0x30,
280     0x82, 0x60, 0x78, 0xc1, 0x00, 0x90, 0x97, 0xcf,
281     0x89, 0x10, 0x09, 0x53, 0x79, 0xc2, 0x89, 0x30,
282     0x82, 0x08, 0x7a, 0xcf, 0xc0, 0xdf, 0x97, 0xcf,
283     0xe7, 0x09, 0x96, 0xc0, 0x66, 0x08, 0xe7, 0x09,
284     0x98, 0xc0, 0x68, 0x08, 0x0f, 0xcf, 0xe7, 0x09,
285     0x96, 0xc0, 0x66, 0x08, 0xe7, 0x09, 0x98, 0xc0,
286     0x68, 0x08, 0xe7, 0x09, 0x64, 0x08, 0x30, 0x01,
287     0xe7, 0x07, 0xf2, 0x05, 0x32, 0x01, 0xe7, 0x07,
288     0x10, 0x00, 0x96, 0xc0, 0xd7, 0x09, 0x00, 0xc0,
289     0x17, 0x02, 0xc8, 0x09, 0x62, 0x08, 0xc8, 0x37,
290     0x0e, 0x00, 0xe7, 0x57, 0x04, 0x00, 0x68, 0x08,
291     0x3d, 0xc0, 0xe7, 0x87, 0x00, 0x08, 0x24, 0xc0,
292     0xe7, 0x09, 0x94, 0x08, 0xba, 0x08, 0xe7, 0x17,
293     0x64, 0x00, 0xba, 0x08, 0xe7, 0x67, 0xff, 0x07,
294     0xba, 0x08, 0xe7, 0x77, 0x2a, 0x00, 0x66, 0x08,
295     0x30, 0xc0, 0x97, 0x02, 0xca, 0x09, 0xac, 0x08,
296     0xe7, 0x77, 0x20, 0x00, 0x66, 0x08, 0x0e, 0xc0,
297     0xf2, 0x17, 0x01, 0x00, 0x10, 0x00, 0xf2, 0x27,
298     0x00, 0x00, 0x12, 0x00, 0xe7, 0x77, 0x0a, 0x00,
299     0x66, 0x08, 0xca, 0x05, 0x1e, 0xc0, 0x97, 0x02,
300     0xca, 0x09, 0xac, 0x08, 0xf2, 0x17, 0x01, 0x00,
301     0x0c, 0x00, 0xf2, 0x27, 0x00, 0x00, 0x0e, 0x00,
302     0xe7, 0x77, 0x02, 0x00, 0x66, 0x08, 0x07, 0xc0,
303     0xf2, 0x17, 0x01, 0x00, 0x44, 0x00, 0xf2, 0x27,
304     0x00, 0x00, 0x46, 0x00, 0x06, 0xcf, 0xf2, 0x17,
305     0x01, 0x00, 0x60, 0x00, 0xf2, 0x27, 0x00, 0x00,
306     0x62, 0x00, 0xca, 0x05, 0x9f, 0xaf, 0x68, 0x04,
307     0x0f, 0xcf, 0x57, 0x02, 0x09, 0x02, 0xf1, 0x09,
308     0x68, 0x08, 0x0c, 0x00, 0xf1, 0xda, 0x0c, 0x00,
309     0xc8, 0x09, 0x6c, 0x08, 0x50, 0x02, 0x67, 0x02,
310     0x6c, 0x08, 0xd1, 0x07, 0x00, 0x00, 0xc9, 0x05,
311     0xe7, 0x09, 0x64, 0x08, 0x62, 0x08, 0xe7, 0x57,
312     0x00, 0x00, 0x62, 0x08, 0x02, 0xc0, 0x9f, 0xaf,
313     0x70, 0x03, 0xc8, 0x05, 0xe7, 0x05, 0x00, 0xc0,
314     0xc0, 0xdf, 0x97, 0xcf, 0xd7, 0x09, 0x00, 0xc0,
315     0x17, 0x00, 0x17, 0x02, 0x97, 0x02, 0xc0, 0x09,
316     0x92, 0xc0, 0xe7, 0x87, 0x00, 0x08, 0x24, 0xc0,
317     0xe7, 0x09, 0x94, 0x08, 0xba, 0x08, 0xe7, 0x17,
318     0x64, 0x00, 0xba, 0x08, 0xe7, 0x67, 0xff, 0x07,
319     0xba, 0x08, 0xe7, 0x07, 0x04, 0x00, 0x90, 0xc0,
320     0xca, 0x09, 0xac, 0x08, 0xe7, 0x07, 0x00, 0x00,
321     0x7a, 0x08, 0xe7, 0x07, 0x66, 0x03, 0x02, 0x00,
322     0xc0, 0x77, 0x02, 0x00, 0x10, 0xc0, 0xef, 0x57,
323     0x00, 0x00, 0xf0, 0x09, 0x04, 0xc0, 0x9f, 0xaf,
324     0xd8, 0x02, 0x9f, 0xcf, 0x12, 0x08, 0xf2, 0x17,
325     0x01, 0x00, 0x50, 0x00, 0xf2, 0x27, 0x00, 0x00,
326     0x52, 0x00, 0x9f, 0xcf, 0x12, 0x08, 0xef, 0x57,
327     0x00, 0x00, 0xf0, 0x09, 0x08, 0xc0, 0xe7, 0x57,
328     0x00, 0x00, 0xb8, 0x08, 0xe7, 0x07, 0x00, 0x00,
329     0xb8, 0x08, 0x0a, 0xc0, 0x03, 0xcf, 0xc0, 0x77,
330     0x10, 0x00, 0x06, 0xc0, 0xf2, 0x17, 0x01, 0x00,
331     0x58, 0x00, 0xf2, 0x27, 0x00, 0x00, 0x5a, 0x00,
332     0xc0, 0x77, 0x80, 0x00, 0x06, 0xc0, 0xf2, 0x17,
333     0x01, 0x00, 0x70, 0x00, 0xf2, 0x27, 0x00, 0x00,
334     0x72, 0x00, 0xc0, 0x77, 0x08, 0x00, 0x1d, 0xc1,
335     0xf2, 0x17, 0x01, 0x00, 0x08, 0x00, 0xf2, 0x27,
336     0x00, 0x00, 0x0a, 0x00, 0xc0, 0x77, 0x00, 0x02,
337     0x06, 0xc0, 0xf2, 0x17, 0x01, 0x00, 0x64, 0x00,
338     0xf2, 0x27, 0x00, 0x00, 0x66, 0x00, 0xc0, 0x77,
339     0x40, 0x00, 0x06, 0xc0, 0xf2, 0x17, 0x01, 0x00,
340     0x5c, 0x00, 0xf2, 0x27, 0x00, 0x00, 0x5e, 0x00,
341     0xc0, 0x77, 0x01, 0x00, 0x01, 0xc0, 0x37, 0xcf,
342     0x36, 0xcf, 0xf2, 0x17, 0x01, 0x00, 0x00, 0x00,
343     0xf2, 0x27, 0x00, 0x00, 0x02, 0x00, 0xef, 0x57,
344     0x00, 0x00, 0xf0, 0x09, 0x18, 0xc0, 0xe7, 0x57,
345     0x01, 0x00, 0xb2, 0x08, 0x0e, 0xc2, 0x07, 0xc8,
346     0xf2, 0x17, 0x01, 0x00, 0x50, 0x00, 0xf2, 0x27,
347     0x00, 0x00, 0x52, 0x00, 0x06, 0xcf, 0xf2, 0x17,
348     0x01, 0x00, 0x54, 0x00, 0xf2, 0x27, 0x00, 0x00,
349     0x56, 0x00, 0xe7, 0x07, 0x00, 0x00, 0xb2, 0x08,
350     0xe7, 0x07, 0x01, 0x00, 0xb4, 0x08, 0xc8, 0x09,
351     0x34, 0x01, 0xca, 0x17, 0x14, 0x00, 0xd8, 0x77,
352     0x01, 0x00, 0x05, 0xc0, 0xca, 0xd9, 0xd8, 0x57,
353     0xff, 0x00, 0x01, 0xc0, 0xca, 0xd9, 0xe2, 0x19,
354     0x94, 0xc0, 0xe2, 0x27, 0x00, 0x00, 0xe2, 0x17,
355     0x01, 0x00, 0xe2, 0x27, 0x00, 0x00, 0x9f, 0xaf,
356     0x2e, 0x08, 0x9f, 0xaf, 0xde, 0x01, 0xe7, 0x57,
357     0x00, 0x00, 0xaa, 0x08, 0x9f, 0xa1, 0xf0, 0x0b,
358     0xca, 0x05, 0xc8, 0x05, 0xc0, 0x05, 0xe7, 0x05,
359     0x00, 0xc0, 0xc0, 0xdf, 0x97, 0xcf, 0xc8, 0x09,
360     0x6e, 0x08, 0x08, 0x62, 0x97, 0xc0, 0x27, 0x04,
361     0x6e, 0x08, 0x27, 0x52, 0x70, 0x08, 0x03, 0xc1,
362     0xe7, 0x07, 0x6e, 0x08, 0x70, 0x08, 0x9f, 0xaf,
363     0x68, 0x04, 0x97, 0xcf, 0xff, 0xff, 0xff, 0xff,
364     0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
365     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
366     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
367     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
368     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
369     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
370     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
371     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
372     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
373     0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
374     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
375     0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
376     0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x33, 0xcc,
377     0x00, 0x00, 0x00, 0x00, 0xe7, 0x57, 0x00, 0x80,
378     0xb2, 0x00, 0x06, 0xc2, 0xe7, 0x07, 0x52, 0x0e,
379     0x12, 0x00, 0xe7, 0x07, 0x98, 0x0e, 0xb2, 0x00,
380     0xe7, 0x07, 0xa4, 0x09, 0xf2, 0x02, 0xc8, 0x09,
381     0xb4, 0x00, 0xf8, 0x07, 0x02, 0x00, 0x0d, 0x00,
382     0xd7, 0x09, 0x0e, 0xc0, 0xe7, 0x07, 0x00, 0x00,
383     0x0e, 0xc0, 0xc8, 0x09, 0xdc, 0x00, 0xf0, 0x07,
384     0xff, 0xff, 0x09, 0x00, 0xf0, 0x07, 0xfb, 0x13,
385     0x0b, 0x00, 0xe7, 0x09, 0xc0, 0x00, 0x58, 0x08,
386     0xe7, 0x09, 0xbe, 0x00, 0x54, 0x08, 0xe7, 0x09,
387     0x10, 0x00, 0x92, 0x08, 0xc8, 0x07, 0xb4, 0x09,
388     0x9f, 0xaf, 0x8c, 0x09, 0x9f, 0xaf, 0xe2, 0x0b,
389     0xc0, 0x07, 0x80, 0x01, 0x44, 0xaf, 0x27, 0x00,
390     0x88, 0x08, 0x27, 0x00, 0x8a, 0x08, 0x27, 0x00,
391     0x8c, 0x08, 0xc0, 0x07, 0x74, 0x00, 0x44, 0xaf,
392     0x27, 0x00, 0xac, 0x08, 0x08, 0x00, 0x00, 0x90,
393     0xc1, 0x07, 0x1d, 0x00, 0x20, 0x00, 0x20, 0x00,
394     0x01, 0xda, 0x7c, 0xc1, 0x9f, 0xaf, 0x8a, 0x0b,
395     0xc0, 0x07, 0x4c, 0x00, 0x48, 0xaf, 0x27, 0x00,
396     0x56, 0x08, 0x9f, 0xaf, 0x72, 0x0c, 0xe7, 0x07,
397     0x00, 0x80, 0x96, 0x08, 0xef, 0x57, 0x00, 0x00,
398     0xf0, 0x09, 0x03, 0xc0, 0xe7, 0x07, 0x01, 0x00,
399     0x1c, 0xc0, 0xe7, 0x05, 0x0e, 0xc0, 0x97, 0xcf,
400     0x49, 0xaf, 0xe7, 0x87, 0x43, 0x00, 0x0e, 0xc0,
401     0xe7, 0x07, 0xff, 0xff, 0x94, 0x08, 0x9f, 0xaf,
402     0x8a, 0x0c, 0xc0, 0x07, 0x01, 0x00, 0x60, 0xaf,
403     0x4a, 0xaf, 0x97, 0xcf, 0x00, 0x08, 0x09, 0x08,
404     0x11, 0x08, 0x00, 0xda, 0x7c, 0xc1, 0x97, 0xcf,
405     0x67, 0x04, 0xcc, 0x02, 0xc0, 0xdf, 0x51, 0x94,
406     0xb1, 0xaf, 0x06, 0x00, 0xc1, 0xdf, 0xc9, 0x09,
407     0xcc, 0x02, 0x49, 0x62, 0x75, 0xc1, 0xc0, 0xdf,
408     0xa7, 0xcf, 0xd6, 0x02, 0x0e, 0x00, 0x24, 0x00,
409     0xd6, 0x05, 0x22, 0x00, 0xc4, 0x06, 0xd0, 0x00,
410     0xf0, 0x0b, 0xaa, 0x00, 0x0e, 0x0a, 0xbe, 0x00,
411     0x2c, 0x0c, 0x10, 0x00, 0x20, 0x00, 0x04, 0x00,
412     0xc4, 0x05, 0x02, 0x00, 0x66, 0x03, 0x06, 0x00,
413     0x00, 0x00, 0x24, 0xc0, 0x04, 0x04, 0x28, 0xc0,
414     0xfe, 0xfb, 0x1e, 0xc0, 0x00, 0x04, 0x22, 0xc0,
415     0xff, 0xf0, 0xc0, 0x00, 0x60, 0x0b, 0x00, 0x00,
416     0x00, 0x00, 0xff, 0xff, 0x34, 0x0a, 0x3e, 0x0a,
417     0x9e, 0x0a, 0xa8, 0x0a, 0xce, 0x0a, 0xd2, 0x0a,
418     0xd6, 0x0a, 0x00, 0x0b, 0x10, 0x0b, 0x1e, 0x0b,
419     0x20, 0x0b, 0x28, 0x0b, 0x28, 0x0b, 0x27, 0x02,
420     0xa2, 0x08, 0x97, 0xcf, 0xe7, 0x07, 0x00, 0x00,
421     0xa2, 0x08, 0x0a, 0x0e, 0x01, 0x00, 0xca, 0x57,
422     0x0e, 0x00, 0x9f, 0xc3, 0x2a, 0x0b, 0xca, 0x37,
423     0x00, 0x00, 0x9f, 0xc2, 0x2a, 0x0b, 0x0a, 0xd2,
424     0xb2, 0xcf, 0xf4, 0x09, 0xc8, 0x09, 0xde, 0x00,
425     0x07, 0x06, 0x9f, 0xcf, 0x3c, 0x0b, 0xf0, 0x57,
426     0x80, 0x01, 0x06, 0x00, 0x9f, 0xc8, 0x2a, 0x0b,
427     0x27, 0x0c, 0x02, 0x00, 0x86, 0x08, 0xc0, 0x09,
428     0x88, 0x08, 0x27, 0x00, 0x8a, 0x08, 0xe7, 0x07,
429     0x00, 0x00, 0x84, 0x08, 0x27, 0x00, 0x5c, 0x08,
430     0x00, 0x1c, 0x06, 0x00, 0x27, 0x00, 0x8c, 0x08,
431     0x41, 0x90, 0x67, 0x50, 0x86, 0x08, 0x0d, 0xc0,
432     0x67, 0x00, 0x5a, 0x08, 0x27, 0x0c, 0x06, 0x00,
433     0x5e, 0x08, 0xe7, 0x07, 0x8a, 0x0a, 0x60, 0x08,
434     0xc8, 0x07, 0x5a, 0x08, 0x41, 0x90, 0x51, 0xaf,
435     0x97, 0xcf, 0x9f, 0xaf, 0xac, 0x0e, 0xe7, 0x09,
436     0x8c, 0x08, 0x8a, 0x08, 0xe7, 0x09, 0x86, 0x08,
437     0x84, 0x08, 0x59, 0xaf, 0x97, 0xcf, 0x27, 0x0c,
438     0x02, 0x00, 0x7c, 0x08, 0x59, 0xaf, 0x97, 0xcf,
439     0x09, 0x0c, 0x02, 0x00, 0x09, 0xda, 0x49, 0xd2,
440     0xc9, 0x19, 0xac, 0x08, 0xc8, 0x07, 0x5a, 0x08,
441     0xe0, 0x07, 0x00, 0x00, 0x60, 0x02, 0xe0, 0x07,
442     0x04, 0x00, 0xd0, 0x07, 0x9a, 0x0a, 0x48, 0xdb,
443     0x41, 0x90, 0x50, 0xaf, 0x97, 0xcf, 0x59, 0xaf,
444     0x97, 0xcf, 0x59, 0xaf, 0x97, 0xcf, 0xf0, 0x57,
445     0x06, 0x00, 0x06, 0x00, 0x26, 0xc1, 0xe7, 0x07,
446     0x7e, 0x08, 0x5c, 0x08, 0x41, 0x90, 0x67, 0x00,
447     0x5a, 0x08, 0x27, 0x0c, 0x06, 0x00, 0x5e, 0x08,
448     0xe7, 0x07, 0x5c, 0x0b, 0x60, 0x08, 0xc8, 0x07,
449     0x5a, 0x08, 0x41, 0x90, 0x51, 0xaf, 0x97, 0xcf,
450     0x07, 0x0c, 0x06, 0x00, 0xc7, 0x57, 0x06, 0x00,
451     0x10, 0xc1, 0xc8, 0x07, 0x7e, 0x08, 0x16, 0xcf,
452     0x00, 0x0c, 0x02, 0x00, 0x00, 0xda, 0x40, 0xd1,
453     0x27, 0x00, 0x98, 0x08, 0x1f, 0xcf, 0x1e, 0xcf,
454     0x27, 0x0c, 0x02, 0x00, 0xa4, 0x08, 0x1a, 0xcf,
455     0x00, 0xcf, 0x27, 0x02, 0x20, 0x01, 0xe7, 0x07,
456     0x08, 0x00, 0x22, 0x01, 0xe7, 0x07, 0x13, 0x00,
457     0xb0, 0xc0, 0x97, 0xcf, 0x41, 0x90, 0x67, 0x00,
458     0x5a, 0x08, 0xe7, 0x01, 0x5e, 0x08, 0x27, 0x02,
459     0x5c, 0x08, 0xe7, 0x07, 0x5c, 0x0b, 0x60, 0x08,
460     0xc8, 0x07, 0x5a, 0x08, 0xc1, 0x07, 0x00, 0x80,
461     0x50, 0xaf, 0x97, 0xcf, 0x59, 0xaf, 0x97, 0xcf,
462     0x00, 0x60, 0x05, 0xc0, 0xe7, 0x07, 0x00, 0x00,
463     0x9a, 0x08, 0xa7, 0xcf, 0x58, 0x08, 0x9f, 0xaf,
464     0xe2, 0x0b, 0xe7, 0x07, 0x01, 0x00, 0x9a, 0x08,
465     0x49, 0xaf, 0xd7, 0x09, 0x00, 0xc0, 0x07, 0xaf,
466     0xe7, 0x05, 0x00, 0xc0, 0x4a, 0xaf, 0xa7, 0xcf,
467     0x58, 0x08, 0xc0, 0x07, 0x40, 0x00, 0x44, 0xaf,
468     0x27, 0x00, 0xa0, 0x08, 0x08, 0x00, 0xc0, 0x07,
469     0x20, 0x00, 0x20, 0x94, 0x00, 0xda, 0x7d, 0xc1,
470     0xc0, 0x07, 0xfe, 0x7f, 0x44, 0xaf, 0x40, 0x00,
471     0x41, 0x90, 0xc0, 0x37, 0x08, 0x00, 0xdf, 0xde,
472     0x50, 0x06, 0xc0, 0x57, 0x10, 0x00, 0x02, 0xc2,
473     0xc0, 0x07, 0x10, 0x00, 0x27, 0x00, 0x76, 0x08,
474     0x41, 0x90, 0x9f, 0xde, 0x40, 0x06, 0x44, 0xaf,
475     0x27, 0x00, 0x74, 0x08, 0xc0, 0x09, 0x76, 0x08,
476     0x41, 0x90, 0x00, 0xd2, 0x00, 0xd8, 0x9f, 0xde,
477     0x08, 0x00, 0x44, 0xaf, 0x27, 0x00, 0x9e, 0x08,
478     0x97, 0xcf, 0xe7, 0x87, 0x00, 0x84, 0x28, 0xc0,
479     0xe7, 0x67, 0xff, 0xf3, 0x24, 0xc0, 0x97, 0xcf,
480     0xe7, 0x87, 0x01, 0x00, 0xaa, 0x08, 0xe7, 0x57,
481     0x00, 0x00, 0x7a, 0x08, 0x97, 0xc1, 0x9f, 0xaf,
482     0xe2, 0x0b, 0xe7, 0x87, 0x00, 0x06, 0x22, 0xc0,
483     0xe7, 0x07, 0x00, 0x00, 0x90, 0xc0, 0xe7, 0x67,
484     0xfe, 0xff, 0x3e, 0xc0, 0xe7, 0x07, 0x2e, 0x00,
485     0x0a, 0xc0, 0xe7, 0x87, 0x01, 0x00, 0x3e, 0xc0,
486     0xe7, 0x07, 0xff, 0xff, 0x94, 0x08, 0x9f, 0xaf,
487     0xf0, 0x0c, 0x97, 0xcf, 0x17, 0x00, 0xa7, 0xaf,
488     0x54, 0x08, 0xc0, 0x05, 0x27, 0x00, 0x52, 0x08,
489     0xe7, 0x87, 0x01, 0x00, 0xaa, 0x08, 0x9f, 0xaf,
490     0xe2, 0x0b, 0xe7, 0x07, 0x0c, 0x00, 0x40, 0xc0,
491     0x9f, 0xaf, 0xf0, 0x0c, 0xe7, 0x07, 0x00, 0x00,
492     0x78, 0x08, 0x00, 0x90, 0xe7, 0x09, 0x88, 0x08,
493     0x8a, 0x08, 0x27, 0x00, 0x84, 0x08, 0x27, 0x00,
494     0x7c, 0x08, 0x9f, 0xaf, 0x8a, 0x0c, 0xe7, 0x07,
495     0x00, 0x00, 0xb2, 0x02, 0xe7, 0x07, 0x00, 0x00,
496     0xb4, 0x02, 0xc0, 0x07, 0x06, 0x00, 0xc8, 0x09,
497     0xde, 0x00, 0xc8, 0x17, 0x03, 0x00, 0xc9, 0x07,
498     0x7e, 0x08, 0x29, 0x0a, 0x00, 0xda, 0x7d, 0xc1,
499     0x97, 0xcf, 0xd7, 0x09, 0x00, 0xc0, 0xc1, 0xdf,
500     0x00, 0x90, 0x27, 0x00, 0x6a, 0x08, 0xe7, 0x07,
501     0x6a, 0x08, 0x6c, 0x08, 0x27, 0x00, 0x6e, 0x08,
502     0xe7, 0x07, 0x6e, 0x08, 0x70, 0x08, 0x27, 0x00,
503     0x78, 0x08, 0x27, 0x00, 0x62, 0x08, 0x27, 0x00,
504     0x64, 0x08, 0xc8, 0x09, 0x74, 0x08, 0xc1, 0x09,
505     0x76, 0x08, 0xc9, 0x07, 0x72, 0x08, 0x11, 0x02,
506     0x09, 0x02, 0xc8, 0x17, 0x40, 0x06, 0x01, 0xda,
507     0x7a, 0xc1, 0x51, 0x94, 0xc8, 0x09, 0x9e, 0x08,
508     0xc9, 0x07, 0x9c, 0x08, 0xc1, 0x09, 0x76, 0x08,
509     0x01, 0xd2, 0x01, 0xd8, 0x11, 0x02, 0x09, 0x02,
510     0xc8, 0x17, 0x08, 0x00, 0x01, 0xda, 0x7a, 0xc1,
511     0x51, 0x94, 0xe7, 0x05, 0x00, 0xc0, 0x97, 0xcf,
512     0xe7, 0x57, 0x00, 0x00, 0x52, 0x08, 0x97, 0xc0,
513     0x9f, 0xaf, 0x04, 0x00, 0xe7, 0x09, 0x94, 0x08,
514     0x90, 0x08, 0xe7, 0x57, 0xff, 0xff, 0x90, 0x08,
515     0x04, 0xc1, 0xe7, 0x07, 0xf0, 0x0c, 0x8e, 0x08,
516     0x97, 0xcf, 0xe7, 0x17, 0x32, 0x00, 0x90, 0x08,
517     0xe7, 0x67, 0xff, 0x07, 0x90, 0x08, 0xe7, 0x07,
518     0x26, 0x0d, 0x8e, 0x08, 0x97, 0xcf, 0xd7, 0x09,
519     0x00, 0xc0, 0xc1, 0xdf, 0xe7, 0x57, 0x00, 0x00,
520     0x96, 0x08, 0x23, 0xc0, 0xe7, 0x07, 0x00, 0x80,
521     0x80, 0xc0, 0xe7, 0x07, 0x04, 0x00, 0x90, 0xc0,
522     0xe7, 0x07, 0x00, 0x00, 0x80, 0xc0, 0xe7, 0x07,
523     0x00, 0x80, 0x80, 0xc0, 0xc0, 0x07, 0x00, 0x00,
524     0xc0, 0x07, 0x00, 0x00, 0xc0, 0x07, 0x00, 0x00,
525     0xe7, 0x07, 0x00, 0x00, 0x80, 0xc0, 0xe7, 0x07,
526     0x00, 0x80, 0x80, 0xc0, 0xe7, 0x07, 0x00, 0x80,
527     0x40, 0xc0, 0xc0, 0x07, 0x00, 0x00, 0xe7, 0x07,
528     0x00, 0x00, 0x40, 0xc0, 0xe7, 0x07, 0x00, 0x00,
529     0x80, 0xc0, 0xef, 0x57, 0x00, 0x00, 0xf1, 0x09,
530     0x9f, 0xa0, 0xc0, 0x0d, 0xe7, 0x07, 0x04, 0x00,
531     0x90, 0xc0, 0xe7, 0x07, 0x00, 0x02, 0x40, 0xc0,
532     0xe7, 0x07, 0x0c, 0x02, 0x40, 0xc0, 0xe7, 0x07,
533     0x00, 0x00, 0x96, 0x08, 0xe7, 0x07, 0x00, 0x00,
534     0x8e, 0x08, 0xe7, 0x07, 0x00, 0x00, 0xaa, 0x08,
535     0xd7, 0x09, 0x00, 0xc0, 0xc1, 0xdf, 0x9f, 0xaf,
536     0x9e, 0x03, 0xe7, 0x05, 0x00, 0xc0, 0x9f, 0xaf,
537     0xde, 0x01, 0xe7, 0x05, 0x00, 0xc0, 0x97, 0xcf,
538     0x9f, 0xaf, 0xde, 0x0d, 0xef, 0x77, 0x00, 0x00,
539     0xf1, 0x09, 0x97, 0xc1, 0x9f, 0xaf, 0xde, 0x0d,
540     0xef, 0x77, 0x00, 0x00, 0xf1, 0x09, 0x97, 0xc1,
541     0xef, 0x07, 0x01, 0x00, 0xf1, 0x09, 0xe7, 0x87,
542     0x00, 0x08, 0x1e, 0xc0, 0xe7, 0x87, 0x00, 0x08,
543     0x22, 0xc0, 0xe7, 0x67, 0xff, 0xf7, 0x22, 0xc0,
544     0xe7, 0x77, 0x00, 0x08, 0x20, 0xc0, 0x11, 0xc0,
545     0xe7, 0x67, 0xff, 0xf7, 0x1e, 0xc0, 0xe7, 0x87,
546     0x00, 0x08, 0x22, 0xc0, 0xe7, 0x67, 0xff, 0xf7,
547     0x22, 0xc0, 0xe7, 0x77, 0x00, 0x08, 0x20, 0xc0,
548     0x04, 0xc1, 0xe7, 0x87, 0x00, 0x08, 0x22, 0xc0,
549     0x97, 0xcf, 0xe7, 0x07, 0x01, 0x01, 0xf0, 0x09,
550     0xef, 0x57, 0x18, 0x00, 0xfe, 0xff, 0x97, 0xc2,
551     0xef, 0x07, 0x00, 0x00, 0xf0, 0x09, 0x97, 0xcf,
552     0xd7, 0x09, 0x00, 0xc0, 0x17, 0x00, 0x17, 0x02,
553     0x97, 0x02, 0xe7, 0x57, 0x00, 0x00, 0x7a, 0x08,
554     0x06, 0xc0, 0xc0, 0x09, 0x92, 0xc0, 0xc0, 0x77,
555     0x09, 0x02, 0x9f, 0xc1, 0xea, 0x06, 0x9f, 0xcf,
556     0x20, 0x08, 0xd7, 0x09, 0x0e, 0xc0, 0xe7, 0x07,
557     0x00, 0x00, 0x0e, 0xc0, 0x9f, 0xaf, 0x66, 0x0e,
558     0xe7, 0x05, 0x0e, 0xc0, 0x97, 0xcf, 0xd7, 0x09,
559     0x00, 0xc0, 0x17, 0x02, 0xc8, 0x09, 0xb0, 0xc0,
560     0xe7, 0x67, 0xfe, 0x7f, 0xb0, 0xc0, 0xc8, 0x77,
561     0x00, 0x20, 0x9f, 0xc1, 0x64, 0xeb, 0xe7, 0x57,
562     0x00, 0x00, 0xc8, 0x02, 0x9f, 0xc1, 0x80, 0xeb,
563     0xc8, 0x99, 0xca, 0x02, 0xc8, 0x67, 0x04, 0x00,
564     0x9f, 0xc1, 0x96, 0xeb, 0x9f, 0xcf, 0x4c, 0xeb,
565     0xe7, 0x07, 0x00, 0x00, 0xa6, 0xc0, 0xe7, 0x09,
566     0xb0, 0xc0, 0xc8, 0x02, 0xe7, 0x07, 0x03, 0x00,
567     0xb0, 0xc0, 0x97, 0xcf, 0xc0, 0x09, 0x86, 0x08,
568     0xc0, 0x37, 0x01, 0x00, 0x97, 0xc9, 0xc9, 0x09,
569     0x88, 0x08, 0x02, 0x00, 0x41, 0x90, 0x48, 0x02,
570     0xc9, 0x17, 0x06, 0x00, 0x9f, 0xaf, 0x64, 0x05,
571     0x9f, 0xa2, 0xd6, 0x0e, 0x02, 0xda, 0x77, 0xc1,
572     0x41, 0x60, 0x71, 0xc1, 0x97, 0xcf, 0x17, 0x02,
573     0x57, 0x02, 0x43, 0x04, 0x21, 0x04, 0xe0, 0x00,
574     0x43, 0x04, 0x21, 0x04, 0xe0, 0x00, 0x43, 0x04,
575     0x21, 0x04, 0xe0, 0x00, 0xc1, 0x07, 0x01, 0x00,
576     0xc9, 0x05, 0xc8, 0x05, 0x97, 0xcf,
577     0,    0
578 };
579
580 /* Firmware fixup (data?) segment */
581 static unsigned char kue_fix_seg[] =
582 {
583     /******************************************/
584     /* NOTE: B6/C3 is data header signature   */
585     /*       0xAA/0xBB is data length = total */
586     /*       bytes - 7, 0xCC is type, 0xDD is */
587     /*       interrupt to use.                */
588     /******************************************/
589     0xB6, 0xC3, 0xc9, 0x02, 0x03, 0x64,
590     0x02, 0x00, 0x08, 0x00, 0x24, 0x00, 0x2e, 0x00,
591     0x2c, 0x00, 0x3e, 0x00, 0x44, 0x00, 0x48, 0x00,
592     0x50, 0x00, 0x5c, 0x00, 0x60, 0x00, 0x66, 0x00,
593     0x6c, 0x00, 0x70, 0x00, 0x76, 0x00, 0x74, 0x00,
594     0x7a, 0x00, 0x7e, 0x00, 0x84, 0x00, 0x8a, 0x00,
595     0x8e, 0x00, 0x92, 0x00, 0x98, 0x00, 0x9c, 0x00,
596     0xa0, 0x00, 0xa8, 0x00, 0xae, 0x00, 0xb4, 0x00,
597     0xb2, 0x00, 0xba, 0x00, 0xbe, 0x00, 0xc4, 0x00,
598     0xc8, 0x00, 0xce, 0x00, 0xd2, 0x00, 0xd6, 0x00,
599     0xda, 0x00, 0xe2, 0x00, 0xe0, 0x00, 0xea, 0x00,
600     0xf2, 0x00, 0xfe, 0x00, 0x06, 0x01, 0x0c, 0x01,
601     0x1a, 0x01, 0x24, 0x01, 0x22, 0x01, 0x2a, 0x01,
602     0x30, 0x01, 0x36, 0x01, 0x3c, 0x01, 0x4e, 0x01,
603     0x52, 0x01, 0x58, 0x01, 0x5c, 0x01, 0x9c, 0x01,
604     0xb6, 0x01, 0xba, 0x01, 0xc0, 0x01, 0xca, 0x01,
605     0xd0, 0x01, 0xda, 0x01, 0xe2, 0x01, 0xea, 0x01,
606     0xf0, 0x01, 0x0a, 0x02, 0x0e, 0x02, 0x14, 0x02,
607     0x26, 0x02, 0x6c, 0x02, 0x8e, 0x02, 0x98, 0x02,
608     0xa0, 0x02, 0xa6, 0x02, 0xba, 0x02, 0xc6, 0x02,
609     0xce, 0x02, 0xe8, 0x02, 0xee, 0x02, 0xf4, 0x02,
610     0xf8, 0x02, 0x0a, 0x03, 0x10, 0x03, 0x1a, 0x03,
611     0x1e, 0x03, 0x2a, 0x03, 0x2e, 0x03, 0x34, 0x03,
612     0x3a, 0x03, 0x44, 0x03, 0x4e, 0x03, 0x5a, 0x03,
613     0x5e, 0x03, 0x6a, 0x03, 0x72, 0x03, 0x80, 0x03,
614     0x84, 0x03, 0x8c, 0x03, 0x94, 0x03, 0x98, 0x03,
615     0xa8, 0x03, 0xae, 0x03, 0xb4, 0x03, 0xba, 0x03,
616     0xce, 0x03, 0xcc, 0x03, 0xd6, 0x03, 0xdc, 0x03,
617     0xec, 0x03, 0xf0, 0x03, 0xfe, 0x03, 0x1c, 0x04,
618     0x30, 0x04, 0x38, 0x04, 0x3c, 0x04, 0x40, 0x04,
619     0x48, 0x04, 0x46, 0x04, 0x54, 0x04, 0x5e, 0x04,
620     0x64, 0x04, 0x74, 0x04, 0x78, 0x04, 0x84, 0x04,
621     0xd8, 0x04, 0xec, 0x04, 0xf0, 0x04, 0xf8, 0x04,
622     0xfe, 0x04, 0x1c, 0x05, 0x2c, 0x05, 0x30, 0x05,
623     0x4a, 0x05, 0x56, 0x05, 0x5a, 0x05, 0x88, 0x05,
624     0x8c, 0x05, 0x96, 0x05, 0x9a, 0x05, 0xa8, 0x05,
625     0xcc, 0x05, 0xd2, 0x05, 0xda, 0x05, 0xe0, 0x05,
626     0xe4, 0x05, 0xfc, 0x05, 0x06, 0x06, 0x14, 0x06,
627     0x12, 0x06, 0x1a, 0x06, 0x20, 0x06, 0x26, 0x06,
628     0x2e, 0x06, 0x34, 0x06, 0x48, 0x06, 0x52, 0x06,
629     0x64, 0x06, 0x86, 0x06, 0x90, 0x06, 0x9a, 0x06,
630     0xa0, 0x06, 0xac, 0x06, 0xaa, 0x06, 0xb2, 0x06,
631     0xb8, 0x06, 0xdc, 0x06, 0xda, 0x06, 0xe2, 0x06,
632     0xe8, 0x06, 0xf2, 0x06, 0xf8, 0x06, 0xfc, 0x06,
633     0x0a, 0x07, 0x10, 0x07, 0x14, 0x07, 0x24, 0x07,
634     0x2a, 0x07, 0x32, 0x07, 0x38, 0x07, 0xb2, 0x07,
635     0xba, 0x07, 0xde, 0x07, 0xe4, 0x07, 0x10, 0x08,
636     0x14, 0x08, 0x1a, 0x08, 0x1e, 0x08, 0x30, 0x08,
637     0x38, 0x08, 0x3c, 0x08, 0x44, 0x08, 0x42, 0x08,
638     0x48, 0x08, 0xc6, 0x08, 0xcc, 0x08, 0xd2, 0x08,
639     0xfe, 0x08, 0x04, 0x09, 0x0a, 0x09, 0x0e, 0x09,
640     0x12, 0x09, 0x16, 0x09, 0x20, 0x09, 0x24, 0x09,
641     0x28, 0x09, 0x32, 0x09, 0x46, 0x09, 0x4a, 0x09,
642     0x50, 0x09, 0x54, 0x09, 0x5a, 0x09, 0x60, 0x09,
643     0x7c, 0x09, 0x80, 0x09, 0xb8, 0x09, 0xbc, 0x09,
644     0xc0, 0x09, 0xc4, 0x09, 0xc8, 0x09, 0xcc, 0x09,
645     0xd0, 0x09, 0xd4, 0x09, 0xec, 0x09, 0xf4, 0x09,
646     0xf6, 0x09, 0xf8, 0x09, 0xfa, 0x09, 0xfc, 0x09,
647     0xfe, 0x09, 0x00, 0x0a, 0x02, 0x0a, 0x04, 0x0a,
648     0x06, 0x0a, 0x08, 0x0a, 0x0a, 0x0a, 0x0c, 0x0a,
649     0x10, 0x0a, 0x18, 0x0a, 0x24, 0x0a, 0x2c, 0x0a,
650     0x32, 0x0a, 0x3c, 0x0a, 0x46, 0x0a, 0x4c, 0x0a,
651     0x50, 0x0a, 0x54, 0x0a, 0x5a, 0x0a, 0x5e, 0x0a,
652     0x66, 0x0a, 0x6c, 0x0a, 0x72, 0x0a, 0x78, 0x0a,
653     0x7e, 0x0a, 0x7c, 0x0a, 0x82, 0x0a, 0x8c, 0x0a,
654     0x92, 0x0a, 0x90, 0x0a, 0x98, 0x0a, 0x96, 0x0a,
655     0xa2, 0x0a, 0xb2, 0x0a, 0xb6, 0x0a, 0xc4, 0x0a,
656     0xe2, 0x0a, 0xe0, 0x0a, 0xe8, 0x0a, 0xee, 0x0a,
657     0xf4, 0x0a, 0xf2, 0x0a, 0xf8, 0x0a, 0x0c, 0x0b,
658     0x1a, 0x0b, 0x24, 0x0b, 0x40, 0x0b, 0x44, 0x0b,
659     0x48, 0x0b, 0x4e, 0x0b, 0x4c, 0x0b, 0x52, 0x0b,
660     0x68, 0x0b, 0x6c, 0x0b, 0x70, 0x0b, 0x76, 0x0b,
661     0x88, 0x0b, 0x92, 0x0b, 0xbe, 0x0b, 0xca, 0x0b,
662     0xce, 0x0b, 0xde, 0x0b, 0xf4, 0x0b, 0xfa, 0x0b,
663     0x00, 0x0c, 0x24, 0x0c, 0x28, 0x0c, 0x30, 0x0c,
664     0x36, 0x0c, 0x3c, 0x0c, 0x40, 0x0c, 0x4a, 0x0c,
665     0x50, 0x0c, 0x58, 0x0c, 0x56, 0x0c, 0x5c, 0x0c,
666     0x60, 0x0c, 0x64, 0x0c, 0x80, 0x0c, 0x94, 0x0c,
667     0x9a, 0x0c, 0x98, 0x0c, 0x9e, 0x0c, 0xa4, 0x0c,
668     0xa2, 0x0c, 0xa8, 0x0c, 0xac, 0x0c, 0xb0, 0x0c,
669     0xb4, 0x0c, 0xb8, 0x0c, 0xbc, 0x0c, 0xce, 0x0c,
670     0xd2, 0x0c, 0xd6, 0x0c, 0xf4, 0x0c, 0xfa, 0x0c,
671     0x00, 0x0d, 0xfe, 0x0c, 0x06, 0x0d, 0x0e, 0x0d,
672     0x0c, 0x0d, 0x16, 0x0d, 0x1c, 0x0d, 0x22, 0x0d,
673     0x20, 0x0d, 0x30, 0x0d, 0x7e, 0x0d, 0x82, 0x0d,
674     0x9a, 0x0d, 0xa0, 0x0d, 0xa6, 0x0d, 0xb0, 0x0d,
675     0xb8, 0x0d, 0xc2, 0x0d, 0xc8, 0x0d, 0xce, 0x0d,
676     0xd4, 0x0d, 0xdc, 0x0d, 0x1e, 0x0e, 0x2c, 0x0e,
677     0x3e, 0x0e, 0x4c, 0x0e, 0x50, 0x0e, 0x5e, 0x0e,
678     0xae, 0x0e, 0xb8, 0x0e, 0xc6, 0x0e, 0xca, 0x0e,
679     0,    0
680 };
681
682 /* Fixup command. */
683 #define KUE_TRIGCMD_OFFSET      5
684 static unsigned char kue_trig_seg[] = {
685 0xb6, 0xc3, 0x01, 0x00, 0x06, 0x64, 0x00, 0x00
686 };