1 
2 static const char *ScsiOpcodeString[256] = {
3 	"TEST UNIT READY\0\01",				/* 00h */
4 	"REWIND\0\002"
5 		"\001REZERO UNIT",			/* 01h */
6 	"\0\0",						/* 02h */
7 	"REQUEST SENSE\0\01",				/* 03h */
8 	"FORMAT UNIT\0\03"
9 		"\001FORMAT MEDIUM\0"
10 		"\002FORMAT",				/* 04h */
11 	"READ BLOCK LIMITS\0\1",			/* 05h */
12 	"\0\0",						/* 06h */
13 	"REASSIGN BLOCKS\0\02"
14 		"\010INITIALIZE ELEMENT STATUS",	/* 07h */
15 	"READ(06)\0\04"
16 		"\001READ\0"
17 		"\003RECEIVE\0"
18 		"\011GET MESSAGE(06)",			/* 08h */
19 	"\0\0",						/* 09h */
20 	"WRITE(06)\0\05"
21 		"\001WRITE\0"
22 		"\002PRINT\0"
23 		"\003SEND(6)\0"
24 		"\011SEND MESSAGE(06)",			/* 0Ah */
25 	"SEEK(06)\0\02"
26 		"\003SLEW AND PRINT",			/* 0Bh */
27 	"\0\0",						/* 0Ch */
28 	"\0\0",						/* 0Dh */
29 	"\0\0",						/* 0Eh */
30 	"READ REVERSE\0\01",				/* 0Fh */
31 	"WRITE FILEMARKS\0\02"
32 		"\003SYNCRONIZE BUFFER",		/* 10h */
33 	"SPACE(6)\0\01",				/* 11h */
34 	"INQUIRY\0\01",					/* 12h */
35 	"VERIFY\0\01",					/* 13h */
36 	"RECOVER BUFFERED DATA\0\01",			/* 14h */
37 	"MODE SELECT(06)\0\01",				/* 15h */
38 	"RESERVE(06)\0\02"
39 		"\010RESERVE ELEMENT(06)",		/* 16h */
40 	"RELEASE(06)\0\02"
41 		"\010RELEASE ELEMENT(06)",		/* 17h */
42 	"COPY\0\01",					/* 18h */
43 	"ERASE\0\01",					/* 19h */
44 	"MODE SENSE(06)\0\01",				/* 1Ah */
45 	"STOP START UNIT\0\04"
46 		"\001LOAD UNLOAD\0"
47 		"\002STOP PRINT\0"
48 		"\006SCAN\0\002",			/* 1Bh */
49 	"RECEIVE DIAGNOSTIC RESULTS\0\01",		/* 1Ch */
50 	"SEND DIAGNOSTIC\0\01",				/* 1Dh */
51 	"PREVENT ALLOW MEDIUM REMOVAL\0\01",		/* 1Eh */
52 	"\0\0",						/* 1Fh */
53 	"\0\0",						/* 20h */
54 	"\0\0",						/* 21h */
55 	"\0\0",						/* 22h */
56 	"READ FORMAT CAPACITIES\0\01",			/* 23h */
57 	"SET WINDOW\0\01",				/* 24h */
58 	"READ CAPACITY\0\03"
59 		"\006GET WINDOW\0"
60 		"\037FREAD CARD CAPACITY",		/* 25h */
61 	"\0\0",						/* 26h */
62 	"\0\0",						/* 27h */
63 	"READ(10)\0\02"
64 		"\011GET MESSAGE(10)",			/* 28h */
65 	"READ GENERATION\0\01",				/* 29h */
66 	"WRITE(10)\0\03"
67 		"\011SEND(10)\0"
68 		"\011SEND MESSAGE(10)",			/* 2Ah */
69 	"SEEK(10)\0\03"
70 		"LOCATE(10)\0"
71 		"POSITION TO ELEMENT",			/* 2Bh */
72 	"ERASE(10)\0\01",				/* 2Ch */
73 	"READ UPDATED BLOCK\0\01",			/* 2Dh */
74 	"WRITE AND VERIFY(10)\0\01",			/* 2Eh */
75 	"VERIFY(10)\0\01",				/* 2Fh */
76 	"SEARCH DATA HIGH(10)\0\01",			/* 30h */
77 	"SEARCH DATA EQUAL(10)\0\02"
78 		"OBJECT POSITION",			/* 31h */
79 	"SEARCH DATA LOW(10)\0\01",			/* 32h */
80 	"SET LIMITS(10)\0\01",				/* 33h */
81 	"PRE-FETCH(10)\0\03"
82 		"READ POSITION\0"
83 		"GET DATA BUFFER STATUS",		/* 34h */
84 	"SYNCHRONIZE CACHE(10)\0\01",			/* 35h */
85 	"LOCK UNLOCK CACHE(10)\0\01",			/* 36h */
86 	"READ DEFECT DATA(10)\0\01",			/* 37h */
87 	"MEDIUM SCAN\0\01",				/* 38h */
88 	"COMPARE\0\01",					/* 39h */
89 	"COPY AND VERIFY\0\01",				/* 3Ah */
90 	"WRITE BUFFER\0\01",				/* 3Bh */
91 	"READ BUFFER\0\01",				/* 3Ch */
92 	"UPDATE BLOCK\0\01",				/* 3Dh */
93 	"READ LONG\0\01",				/* 3Eh */
94 	"WRITE LONG\0\01",				/* 3Fh */
95 	"CHANGE DEFINITION\0\01",			/* 40h */
96 	"WRITE SAME(10)\0\01",				/* 41h */
97 	"READ SUB-CHANNEL\0\01",			/* 42h */
98 	"READ TOC/PMA/ATIP\0\01",			/* 43h */
99 	"REPORT DENSITY SUPPORT\0\01",			/* 44h */
100 	"READ HEADER\0\01",				/* 44h */
101 	"PLAY AUDIO(10)\0\01",				/* 45h */
102 	"GET CONFIGURATION\0\01",			/* 46h */
103 	"PLAY AUDIO MSF\0\01",				/* 47h */
104 	"PLAY AUDIO TRACK INDEX\0\01",			/* 48h */
105 	"PLAY TRACK RELATIVE(10)\0\01",			/* 49h */
106 	"GET EVENT STATUS NOTIFICATION\0\01",		/* 4Ah */
107 	"PAUSE/RESUME\0\01",				/* 4Bh */
108 	"LOG SELECT\0\01",				/* 4Ch */
109 	"LOG SENSE\0\01",				/* 4Dh */
110 	"STOP PLAY/SCAN\0\01",				/* 4Eh */
111 	"\0\0",						/* 4Fh */
112 	"XDWRITE(10)\0\01",				/* 50h */
113 	"XPWRITE(10)\0\02"
114 		"READ DISC INFORMATION",		/* 51h */
115 	"XDREAD(10)\0\01"
116 		"READ TRACK INFORMATION",		/* 52h */
117 	"RESERVE TRACK\0\01",				/* 53h */
118 	"SEND OPC INFORMATION\0\01",			/* 54h */
119 	"MODE SELECT(10)\0\01",				/* 55h */
120 	"RESERVE(10)\0\02"
121 		"RESERVE ELEMENT(10)",			/* 56h */
122 	"RELEASE(10)\0\02"
123 		"RELEASE ELEMENT(10)",			/* 57h */
124 	"REPAIR TRACK\0\01",				/* 58h */
125 	"READ MASTER CUE\0\01",				/* 59h */
126 	"MODE SENSE(10)\0\01",				/* 5Ah */
127 	"CLOSE TRACK/SESSION\0\01",			/* 5Bh */
128 	"READ BUFFER CAPACITY\0\01",			/* 5Ch */
129 	"SEND CUE SHEET\0\01",				/* 5Dh */
130 	"PERSISTENT RESERVE IN\0\01",			/* 5Eh */
131 	"PERSISTENT RESERVE OUT\0\01",			/* 5Fh */
132 	"\0\0",						/* 60h */
133 	"\0\0",						/* 61h */
134 	"\0\0",						/* 62h */
135 	"\0\0",						/* 63h */
136 	"\0\0",						/* 64h */
137 	"\0\0",						/* 65h */
138 	"\0\0",						/* 66h */
139 	"\0\0",						/* 67h */
140 	"\0\0",						/* 68h */
141 	"\0\0",						/* 69h */
142 	"\0\0",						/* 6Ah */
143 	"\0\0",						/* 6Bh */
144 	"\0\0",						/* 6Ch */
145 	"\0\0",						/* 6Dh */
146 	"\0\0",						/* 6Eh */
147 	"\0\0",						/* 6Fh */
148 	"\0\0",						/* 70h */
149 	"\0\0",						/* 71h */
150 	"\0\0",						/* 72h */
151 	"\0\0",						/* 73h */
152 	"\0\0",						/* 74h */
153 	"\0\0",						/* 75h */
154 	"\0\0",						/* 76h */
155 	"\0\0",						/* 77h */
156 	"\0\0",						/* 78h */
157 	"\0\0",						/* 79h */
158 	"\0\0",						/* 7Ah */
159 	"\0\0",						/* 7Bh */
160 	"\0\0",						/* 7Ch */
161 	"\0\0",						/* 7Eh */
162 	"\0\0",						/* 7Eh */
163 	"\0\0",						/* 7Fh */
164 	"XDWRITE EXTENDED(16)\0\01",			/* 80h */
165 	"REBUILD(16)\0\01",				/* 81h */
166 	"REGENERATE(16)\0\01",				/* 82h */
167 	"EXTENDED COPY\0\01",				/* 83h */
168 	"RECEIVE COPY RESULTS\0\01",			/* 84h */
169 	"ACCESS CONTROL IN  [proposed]\0\01",		/* 86h */
170 	"ACCESS CONTROL OUT  [proposed]\0\01",		/* 87h */
171 	"READ(16)\0\01",				/* 88h */
172 	"DEVICE LOCKS  [proposed]\0\01",		/* 89h */
173 	"WRITE(16)\0\01",				/* 8Ah */
174 	"\0\0",						/* 8Bh */
175 	"READ ATTRIBUTES [proposed]\0\01",		/* 8Ch */
176 	"WRITE ATTRIBUTES [proposed]\0\01",		/* 8Dh */
177 	"WRITE AND VERIFY(16)\0\01",			/* 8Eh */
178 	"VERIFY(16)\0\01",				/* 8Fh */
179 	"PRE-FETCH(16)\0\01",				/* 90h */
180 	"SYNCHRONIZE CACHE(16)\0\02"
181 		"SPACE(16) [1]",			/* 91h */
182 	"LOCK UNLOCK CACHE(16)\0\02"
183 		"LOCATE(16) [1]",			/* 92h */
184 	"WRITE SAME(16)\0\01",				/* 93h */
185 	"[usage proposed by SCSI Socket Services project]\0\01",	/* 94h */
186 	"[usage proposed by SCSI Socket Services project]\0\01",	/* 95h */
187 	"[usage proposed by SCSI Socket Services project]\0\01",	/* 96h */
188 	"[usage proposed by SCSI Socket Services project]\0\01",	/* 97h */
189 	"MARGIN CONTROL [proposed]\0\01",		/* 98h */
190 	"\0\0",						/* 99h */
191 	"\0\0",						/* 9Ah */
192 	"\0\0",						/* 9Bh */
193 	"\0\0",						/* 9Ch */
194 	"\0\0",						/* 9Dh */
195 	"SERVICE ACTION IN [proposed]\0\01",		/* 9Eh */
196 	"SERVICE ACTION OUT [proposed]\0\01",		/* 9Fh */
197 	"REPORT LUNS\0\01",				/* A0h */
198 	"BLANK\0\01",					/* A1h */
199 	"SEND EVENT\0\01",				/* A2h */
200 	"MAINTENANCE (IN)\0\02"
201 		"SEND KEY",				/* A3h */
202 	"MAINTENANCE (OUT)\0\02"
203 		"REPORT KEY",				/* A4h */
204 	"MOVE MEDIUM\0\02"
205 		"PLAY AUDIO(12)",			/* A5h */
206 	"EXCHANGE MEDIUM\0\02"
207 		"LOAD/UNLOAD C/DVD",			/* A6h */
208 	"MOVE MEDIUM ATTACHED\0\02"
209 		"SET READ AHEAD\0\01",			/* A7h */
210 	"READ(12)\0\02"
211 		"GET MESSAGE(12)",			/* A8h */
212 	"PLAY TRACK RELATIVE(12)\0\01",			/* A9h */
213 	"WRITE(12)\0\02"
214 		"SEND MESSAGE(12)",			/* AAh */
215 	"\0\0",						/* ABh */
216 	"ERASE(12)\0\02"
217 		"GET PERFORMANCE",			/* ACh */
218 	"READ DVD STRUCTURE\0\01",			/* ADh */
219 	"WRITE AND VERIFY(12)\0\01",			/* AEh */
220 	"VERIFY(12)\0\01",				/* AFh */
221 	"SEARCH DATA HIGH(12)\0\01",			/* B0h */
222 	"SEARCH DATA EQUAL(12)\0\01",			/* B1h */
223 	"SEARCH DATA LOW(12)\0\01",			/* B2h */
224 	"SET LIMITS(12)\0\01",				/* B3h */
225 	"READ ELEMENT STATUS ATTACHED\0\01",		/* B4h */
226 	"REQUEST VOLUME ELEMENT ADDRESS\0\01",		/* B5h */
227 	"SEND VOLUME TAG\0\02"
228 		"SET STREAMING",			/* B6h */
229 	"READ DEFECT DATA(12)\0\01",			/* B7h */
230 	"READ ELEMENT STATUS\0\01",			/* B8h */
231 	"READ CD MSF\0\01",				/* B9h */
232 	"REDUNDANCY GROUP (IN)\0\02"
233 		"SCAN",					/* BAh */
234 	"REDUNDANCY GROUP (OUT)\0\02"
235 		"SET CD-ROM SPEED",			/* BBh */
236 	"SPARE (IN)\0\02"
237 		"PLAY CD",				/* BCh */
238 	"SPARE (OUT)\0\02"
239 		"MECHANISM STATUS",			/* BDh */
240 	"VOLUME SET (IN)\0\02"
241 		"READ CD",				/* BEh */
242 	"VOLUME SET (OUT)\0\0\02"
243 		"SEND DVD STRUCTURE",			/* BFh */
244 	"\0\0",						/* C0h */
245 	"\0\0",						/* C1h */
246 	"\0\0",						/* C2h */
247 	"\0\0",						/* C3h */
248 	"\0\0",						/* C4h */
249 	"\0\0",						/* C5h */
250 	"\0\0",						/* C6h */
251 	"\0\0",						/* C7h */
252 	"\0\0",						/* C8h */
253 	"\0\0",						/* C9h */
254 	"\0\0",						/* CAh */
255 	"\0\0",						/* CBh */
256 	"\0\0",						/* CCh */
257 	"\0\0",						/* CDh */
258 	"\0\0",						/* CEh */
259 	"\0\0",						/* CFh */
260 	"\0\0",						/* D0h */
261 	"\0\0",						/* D1h */
262 	"\0\0",						/* D2h */
263 	"\0\0",						/* D3h */
264 	"\0\0",						/* D4h */
265 	"\0\0",						/* D5h */
266 	"\0\0",						/* D6h */
267 	"\0\0",						/* D7h */
268 	"\0\0",						/* D8h */
269 	"\0\0",						/* D9h */
270 	"\0\0",						/* DAh */
271 	"\0\0",						/* DBh */
272 	"\0\0",						/* DCh */
273 	"\0\0",						/* DEh */
274 	"\0\0",						/* DEh */
275 	"\0\0",						/* DFh */
276 	"\0\0",						/* E0h */
277 	"\0\0",						/* E1h */
278 	"\0\0",						/* E2h */
279 	"\0\0",						/* E3h */
280 	"\0\0",						/* E4h */
281 	"\0\0",						/* E5h */
282 	"\0\0",						/* E6h */
283 	"\0\0",						/* E7h */
284 	"\0\0",						/* E8h */
285 	"\0\0",						/* E9h */
286 	"\0\0",						/* EAh */
287 	"\0\0",						/* EBh */
288 	"\0\0",						/* ECh */
289 	"\0\0",						/* EDh */
290 	"\0\0",						/* EEh */
291 	"\0\0",						/* EFh */
292 	"\0\0",						/* F0h */
293 	"\0\0",						/* F1h */
294 	"\0\0",						/* F2h */
295 	"\0\0",						/* F3h */
296 	"\0\0",						/* F4h */
297 	"\0\0",						/* F5h */
298 	"\0\0",						/* F6h */
299 	"\0\0",						/* F7h */
300 	"\0\0",						/* F8h */
301 	"\0\0",						/* F9h */
302 	"\0\0",						/* FAh */
303 	"\0\0",						/* FBh */
304 	"\0\0",						/* FEh */
305 	"\0\0",						/* FEh */
306 	"\0\0",						/* FEh */
307 	"\0\0"						/* FFh */
308 };
309 
310