| |
| static const char *ScsiOpcodeString[256] = { |
| "TEST UNIT READY\0\01", /* 00h */ |
| "REWIND\0\002" |
| "\001REZERO UNIT", /* 01h */ |
| "\0\0", /* 02h */ |
| "REQUEST SENSE\0\01", /* 03h */ |
| "FORMAT UNIT\0\03" |
| "\001FORMAT MEDIUM\0" |
| "\002FORMAT", /* 04h */ |
| "READ BLOCK LIMITS\0\1", /* 05h */ |
| "\0\0", /* 06h */ |
| "REASSIGN BLOCKS\0\02" |
| "\010INITIALIZE ELEMENT STATUS", /* 07h */ |
| "READ(06)\0\04" |
| "\001READ\0" |
| "\003RECEIVE\0" |
| "\011GET MESSAGE(06)", /* 08h */ |
| "\0\0", /* 09h */ |
| "WRITE(06)\0\05" |
| "\001WRITE\0" |
| "\002PRINT\0" |
| "\003SEND(6)\0" |
| "\011SEND MESSAGE(06)", /* 0Ah */ |
| "SEEK(06)\0\02" |
| "\003SLEW AND PRINT", /* 0Bh */ |
| "\0\0", /* 0Ch */ |
| "\0\0", /* 0Dh */ |
| "\0\0", /* 0Eh */ |
| "READ REVERSE\0\01", /* 0Fh */ |
| "WRITE FILEMARKS\0\02" |
| "\003SYNCRONIZE BUFFER", /* 10h */ |
| "SPACE(6)\0\01", /* 11h */ |
| "INQUIRY\0\01", /* 12h */ |
| "VERIFY\0\01", /* 13h */ |
| "RECOVER BUFFERED DATA\0\01", /* 14h */ |
| "MODE SELECT(06)\0\01", /* 15h */ |
| "RESERVE(06)\0\02" |
| "\010RESERVE ELEMENT(06)", /* 16h */ |
| "RELEASE(06)\0\02" |
| "\010RELEASE ELEMENT(06)", /* 17h */ |
| "COPY\0\01", /* 18h */ |
| "ERASE\0\01", /* 19h */ |
| "MODE SENSE(06)\0\01", /* 1Ah */ |
| "STOP START UNIT\0\04" |
| "\001LOAD UNLOAD\0" |
| "\002STOP PRINT\0" |
| "\006SCAN\0\002", /* 1Bh */ |
| "RECEIVE DIAGNOSTIC RESULTS\0\01", /* 1Ch */ |
| "SEND DIAGNOSTIC\0\01", /* 1Dh */ |
| "PREVENT ALLOW MEDIUM REMOVAL\0\01", /* 1Eh */ |
| "\0\0", /* 1Fh */ |
| "\0\0", /* 20h */ |
| "\0\0", /* 21h */ |
| "\0\0", /* 22h */ |
| "READ FORMAT CAPACITIES\0\01", /* 23h */ |
| "SET WINDOW\0\01", /* 24h */ |
| "READ CAPACITY\0\03" |
| "\006GET WINDOW\0" |
| "\037FREAD CARD CAPACITY", /* 25h */ |
| "\0\0", /* 26h */ |
| "\0\0", /* 27h */ |
| "READ(10)\0\02" |
| "\011GET MESSAGE(10)", /* 28h */ |
| "READ GENERATION\0\01", /* 29h */ |
| "WRITE(10)\0\03" |
| "\011SEND(10)\0" |
| "\011SEND MESSAGE(10)", /* 2Ah */ |
| "SEEK(10)\0\03" |
| "LOCATE(10)\0" |
| "POSITION TO ELEMENT", /* 2Bh */ |
| "ERASE(10)\0\01", /* 2Ch */ |
| "READ UPDATED BLOCK\0\01", /* 2Dh */ |
| "WRITE AND VERIFY(10)\0\01", /* 2Eh */ |
| "VERIFY(10)\0\01", /* 2Fh */ |
| "SEARCH DATA HIGH(10)\0\01", /* 30h */ |
| "SEARCH DATA EQUAL(10)\0\02" |
| "OBJECT POSITION", /* 31h */ |
| "SEARCH DATA LOW(10)\0\01", /* 32h */ |
| "SET LIMITS(10)\0\01", /* 33h */ |
| "PRE-FETCH(10)\0\03" |
| "READ POSITION\0" |
| "GET DATA BUFFER STATUS", /* 34h */ |
| "SYNCHRONIZE CACHE(10)\0\01", /* 35h */ |
| "LOCK UNLOCK CACHE(10)\0\01", /* 36h */ |
| "READ DEFECT DATA(10)\0\01", /* 37h */ |
| "MEDIUM SCAN\0\01", /* 38h */ |
| "COMPARE\0\01", /* 39h */ |
| "COPY AND VERIFY\0\01", /* 3Ah */ |
| "WRITE BUFFER\0\01", /* 3Bh */ |
| "READ BUFFER\0\01", /* 3Ch */ |
| "UPDATE BLOCK\0\01", /* 3Dh */ |
| "READ LONG\0\01", /* 3Eh */ |
| "WRITE LONG\0\01", /* 3Fh */ |
| "CHANGE DEFINITION\0\01", /* 40h */ |
| "WRITE SAME(10)\0\01", /* 41h */ |
| "READ SUB-CHANNEL\0\01", /* 42h */ |
| "READ TOC/PMA/ATIP\0\01", /* 43h */ |
| "REPORT DENSITY SUPPORT\0\01", /* 44h */ |
| "READ HEADER\0\01", /* 44h */ |
| "PLAY AUDIO(10)\0\01", /* 45h */ |
| "GET CONFIGURATION\0\01", /* 46h */ |
| "PLAY AUDIO MSF\0\01", /* 47h */ |
| "PLAY AUDIO TRACK INDEX\0\01", /* 48h */ |
| "PLAY TRACK RELATIVE(10)\0\01", /* 49h */ |
| "GET EVENT STATUS NOTIFICATION\0\01", /* 4Ah */ |
| "PAUSE/RESUME\0\01", /* 4Bh */ |
| "LOG SELECT\0\01", /* 4Ch */ |
| "LOG SENSE\0\01", /* 4Dh */ |
| "STOP PLAY/SCAN\0\01", /* 4Eh */ |
| "\0\0", /* 4Fh */ |
| "XDWRITE(10)\0\01", /* 50h */ |
| "XPWRITE(10)\0\02" |
| "READ DISC INFORMATION", /* 51h */ |
| "XDREAD(10)\0\01" |
| "READ TRACK INFORMATION", /* 52h */ |
| "RESERVE TRACK\0\01", /* 53h */ |
| "SEND OPC INFORMATION\0\01", /* 54h */ |
| "MODE SELECT(10)\0\01", /* 55h */ |
| "RESERVE(10)\0\02" |
| "RESERVE ELEMENT(10)", /* 56h */ |
| "RELEASE(10)\0\02" |
| "RELEASE ELEMENT(10)", /* 57h */ |
| "REPAIR TRACK\0\01", /* 58h */ |
| "READ MASTER CUE\0\01", /* 59h */ |
| "MODE SENSE(10)\0\01", /* 5Ah */ |
| "CLOSE TRACK/SESSION\0\01", /* 5Bh */ |
| "READ BUFFER CAPACITY\0\01", /* 5Ch */ |
| "SEND CUE SHEET\0\01", /* 5Dh */ |
| "PERSISTENT RESERVE IN\0\01", /* 5Eh */ |
| "PERSISTENT RESERVE OUT\0\01", /* 5Fh */ |
| "\0\0", /* 60h */ |
| "\0\0", /* 61h */ |
| "\0\0", /* 62h */ |
| "\0\0", /* 63h */ |
| "\0\0", /* 64h */ |
| "\0\0", /* 65h */ |
| "\0\0", /* 66h */ |
| "\0\0", /* 67h */ |
| "\0\0", /* 68h */ |
| "\0\0", /* 69h */ |
| "\0\0", /* 6Ah */ |
| "\0\0", /* 6Bh */ |
| "\0\0", /* 6Ch */ |
| "\0\0", /* 6Dh */ |
| "\0\0", /* 6Eh */ |
| "\0\0", /* 6Fh */ |
| "\0\0", /* 70h */ |
| "\0\0", /* 71h */ |
| "\0\0", /* 72h */ |
| "\0\0", /* 73h */ |
| "\0\0", /* 74h */ |
| "\0\0", /* 75h */ |
| "\0\0", /* 76h */ |
| "\0\0", /* 77h */ |
| "\0\0", /* 78h */ |
| "\0\0", /* 79h */ |
| "\0\0", /* 7Ah */ |
| "\0\0", /* 7Bh */ |
| "\0\0", /* 7Ch */ |
| "\0\0", /* 7Eh */ |
| "\0\0", /* 7Eh */ |
| "\0\0", /* 7Fh */ |
| "XDWRITE EXTENDED(16)\0\01", /* 80h */ |
| "REBUILD(16)\0\01", /* 81h */ |
| "REGENERATE(16)\0\01", /* 82h */ |
| "EXTENDED COPY\0\01", /* 83h */ |
| "RECEIVE COPY RESULTS\0\01", /* 84h */ |
| "ACCESS CONTROL IN [proposed]\0\01", /* 86h */ |
| "ACCESS CONTROL OUT [proposed]\0\01", /* 87h */ |
| "READ(16)\0\01", /* 88h */ |
| "DEVICE LOCKS [proposed]\0\01", /* 89h */ |
| "WRITE(16)\0\01", /* 8Ah */ |
| "\0\0", /* 8Bh */ |
| "READ ATTRIBUTES [proposed]\0\01", /* 8Ch */ |
| "WRITE ATTRIBUTES [proposed]\0\01", /* 8Dh */ |
| "WRITE AND VERIFY(16)\0\01", /* 8Eh */ |
| "VERIFY(16)\0\01", /* 8Fh */ |
| "PRE-FETCH(16)\0\01", /* 90h */ |
| "SYNCHRONIZE CACHE(16)\0\02" |
| "SPACE(16) [1]", /* 91h */ |
| "LOCK UNLOCK CACHE(16)\0\02" |
| "LOCATE(16) [1]", /* 92h */ |
| "WRITE SAME(16)\0\01", /* 93h */ |
| "[usage proposed by SCSI Socket Services project]\0\01", /* 94h */ |
| "[usage proposed by SCSI Socket Services project]\0\01", /* 95h */ |
| "[usage proposed by SCSI Socket Services project]\0\01", /* 96h */ |
| "[usage proposed by SCSI Socket Services project]\0\01", /* 97h */ |
| "MARGIN CONTROL [proposed]\0\01", /* 98h */ |
| "\0\0", /* 99h */ |
| "\0\0", /* 9Ah */ |
| "\0\0", /* 9Bh */ |
| "\0\0", /* 9Ch */ |
| "\0\0", /* 9Dh */ |
| "SERVICE ACTION IN [proposed]\0\01", /* 9Eh */ |
| "SERVICE ACTION OUT [proposed]\0\01", /* 9Fh */ |
| "REPORT LUNS\0\01", /* A0h */ |
| "BLANK\0\01", /* A1h */ |
| "SEND EVENT\0\01", /* A2h */ |
| "MAINTENANCE (IN)\0\02" |
| "SEND KEY", /* A3h */ |
| "MAINTENANCE (OUT)\0\02" |
| "REPORT KEY", /* A4h */ |
| "MOVE MEDIUM\0\02" |
| "PLAY AUDIO(12)", /* A5h */ |
| "EXCHANGE MEDIUM\0\02" |
| "LOAD/UNLOAD C/DVD", /* A6h */ |
| "MOVE MEDIUM ATTACHED\0\02" |
| "SET READ AHEAD\0\01", /* A7h */ |
| "READ(12)\0\02" |
| "GET MESSAGE(12)", /* A8h */ |
| "PLAY TRACK RELATIVE(12)\0\01", /* A9h */ |
| "WRITE(12)\0\02" |
| "SEND MESSAGE(12)", /* AAh */ |
| "\0\0", /* ABh */ |
| "ERASE(12)\0\02" |
| "GET PERFORMANCE", /* ACh */ |
| "READ DVD STRUCTURE\0\01", /* ADh */ |
| "WRITE AND VERIFY(12)\0\01", /* AEh */ |
| "VERIFY(12)\0\01", /* AFh */ |
| "SEARCH DATA HIGH(12)\0\01", /* B0h */ |
| "SEARCH DATA EQUAL(12)\0\01", /* B1h */ |
| "SEARCH DATA LOW(12)\0\01", /* B2h */ |
| "SET LIMITS(12)\0\01", /* B3h */ |
| "READ ELEMENT STATUS ATTACHED\0\01", /* B4h */ |
| "REQUEST VOLUME ELEMENT ADDRESS\0\01", /* B5h */ |
| "SEND VOLUME TAG\0\02" |
| "SET STREAMING", /* B6h */ |
| "READ DEFECT DATA(12)\0\01", /* B7h */ |
| "READ ELEMENT STATUS\0\01", /* B8h */ |
| "READ CD MSF\0\01", /* B9h */ |
| "REDUNDANCY GROUP (IN)\0\02" |
| "SCAN", /* BAh */ |
| "REDUNDANCY GROUP (OUT)\0\02" |
| "SET CD-ROM SPEED", /* BBh */ |
| "SPARE (IN)\0\02" |
| "PLAY CD", /* BCh */ |
| "SPARE (OUT)\0\02" |
| "MECHANISM STATUS", /* BDh */ |
| "VOLUME SET (IN)\0\02" |
| "READ CD", /* BEh */ |
| "VOLUME SET (OUT)\0\0\02" |
| "SEND DVD STRUCTURE", /* BFh */ |
| "\0\0", /* C0h */ |
| "\0\0", /* C1h */ |
| "\0\0", /* C2h */ |
| "\0\0", /* C3h */ |
| "\0\0", /* C4h */ |
| "\0\0", /* C5h */ |
| "\0\0", /* C6h */ |
| "\0\0", /* C7h */ |
| "\0\0", /* C8h */ |
| "\0\0", /* C9h */ |
| "\0\0", /* CAh */ |
| "\0\0", /* CBh */ |
| "\0\0", /* CCh */ |
| "\0\0", /* CDh */ |
| "\0\0", /* CEh */ |
| "\0\0", /* CFh */ |
| "\0\0", /* D0h */ |
| "\0\0", /* D1h */ |
| "\0\0", /* D2h */ |
| "\0\0", /* D3h */ |
| "\0\0", /* D4h */ |
| "\0\0", /* D5h */ |
| "\0\0", /* D6h */ |
| "\0\0", /* D7h */ |
| "\0\0", /* D8h */ |
| "\0\0", /* D9h */ |
| "\0\0", /* DAh */ |
| "\0\0", /* DBh */ |
| "\0\0", /* DCh */ |
| "\0\0", /* DEh */ |
| "\0\0", /* DEh */ |
| "\0\0", /* DFh */ |
| "\0\0", /* E0h */ |
| "\0\0", /* E1h */ |
| "\0\0", /* E2h */ |
| "\0\0", /* E3h */ |
| "\0\0", /* E4h */ |
| "\0\0", /* E5h */ |
| "\0\0", /* E6h */ |
| "\0\0", /* E7h */ |
| "\0\0", /* E8h */ |
| "\0\0", /* E9h */ |
| "\0\0", /* EAh */ |
| "\0\0", /* EBh */ |
| "\0\0", /* ECh */ |
| "\0\0", /* EDh */ |
| "\0\0", /* EEh */ |
| "\0\0", /* EFh */ |
| "\0\0", /* F0h */ |
| "\0\0", /* F1h */ |
| "\0\0", /* F2h */ |
| "\0\0", /* F3h */ |
| "\0\0", /* F4h */ |
| "\0\0", /* F5h */ |
| "\0\0", /* F6h */ |
| "\0\0", /* F7h */ |
| "\0\0", /* F8h */ |
| "\0\0", /* F9h */ |
| "\0\0", /* FAh */ |
| "\0\0", /* FBh */ |
| "\0\0", /* FEh */ |
| "\0\0", /* FEh */ |
| "\0\0", /* FEh */ |
| "\0\0" /* FFh */ |
| }; |
| |