+0 以下は、カーネル・ソース・コード(include/linux/cdrom.h)からの抜粋である。
+1 {{{
+2 /*********************************************************************
+3 * Generic Packet commands, MMC commands, and such
+4 *********************************************************************/
+5
+6 /* The generic packet command opcodes for CD/DVD Logical Units,
+7 * From Table 57 of the SFF8090 Ver. 3 (Mt. Fuji) draft standard. */
+8 #define GPCMD_BLANK 0xa1
+9 #define GPCMD_CLOSE_TRACK 0x5b
+10 #define GPCMD_FLUSH_CACHE 0x35
+11 #define GPCMD_FORMAT_UNIT 0x04
+12 #define GPCMD_GET_CONFIGURATION 0x46
+13 #define GPCMD_GET_EVENT_STATUS_NOTIFICATION 0x4a
+14 #define GPCMD_GET_PERFORMANCE 0xac
+15 #define GPCMD_INQUIRY 0x12
+16 #define GPCMD_LOAD_UNLOAD 0xa6
+17 #define GPCMD_MECHANISM_STATUS 0xbd
+18 #define GPCMD_MODE_SELECT_10 0x55
+19 #define GPCMD_MODE_SENSE_10 0x5a
+20 #define GPCMD_PAUSE_RESUME 0x4b
+21 #define GPCMD_PLAY_AUDIO_10 0x45
+22 #define GPCMD_PLAY_AUDIO_MSF 0x47
+23 #define GPCMD_PLAY_AUDIO_TI 0x48
+24 #define GPCMD_PLAY_CD 0xbc
+25 #define GPCMD_PREVENT_ALLOW_MEDIUM_REMOVAL 0x1e
+26 #define GPCMD_READ_10 0x28
+27 #define GPCMD_READ_12 0xa8
+28 #define GPCMD_READ_BUFFER_CAPACITY 0x5c
+29 #define GPCMD_READ_CDVD_CAPACITY 0x25
+30 #define GPCMD_READ_CD 0xbe
+31 #define GPCMD_READ_CD_MSF 0xb9
+32 #define GPCMD_READ_DISC_INFO 0x51
+33 #define GPCMD_READ_DVD_STRUCTURE 0xad
+34 #define GPCMD_READ_FORMAT_CAPACITIES 0x23
+35 #define GPCMD_READ_HEADER 0x44
+36 #define GPCMD_READ_TRACK_RZONE_INFO 0x52
+37 #define GPCMD_READ_SUBCHANNEL 0x42
+38 #define GPCMD_READ_TOC_PMA_ATIP 0x43
+39 #define GPCMD_REPAIR_RZONE_TRACK 0x58
+40 #define GPCMD_REPORT_KEY 0xa4
+41 #define GPCMD_REQUEST_SENSE 0x03
+42 #define GPCMD_RESERVE_RZONE_TRACK 0x53
+43 #define GPCMD_SEND_CUE_SHEET 0x5d
+44 #define GPCMD_SCAN 0xba
+45 #define GPCMD_SEEK 0x2b
+46 #define GPCMD_SEND_DVD_STRUCTURE 0xbf
+47 #define GPCMD_SEND_EVENT 0xa2
+48 #define GPCMD_SEND_KEY 0xa3
+49 #define GPCMD_SEND_OPC 0x54
+50 #define GPCMD_SET_READ_AHEAD 0xa7
+51 #define GPCMD_SET_STREAMING 0xb6
+52 #define GPCMD_START_STOP_UNIT 0x1b
+53 #define GPCMD_STOP_PLAY_SCAN 0x4e
+54 #define GPCMD_TEST_UNIT_READY 0x00
+55 #define GPCMD_VERIFY_10 0x2f
+56 #define GPCMD_WRITE_10 0x2a
+57 #define GPCMD_WRITE_AND_VERIFY_10 0x2e
+58 /* This is listed as optional in ATAPI 2.6, but is (curiously)
+59 * missing from Mt. Fuji, Table 57. It _is_ mentioned in Mt. Fuji
+60 * Table 377 as an MMC command for SCSi devices though... Most ATAPI
+61 * drives support it. */
+62 #define GPCMD_SET_SPEED 0xbb
+63 /* This seems to be a SCSI specific CD-ROM opcode
+64 * to play data at track/index */
+65 #define GPCMD_PLAYAUDIO_TI 0x48
+66 /*
+67 * From MS Media Status Notification Support Specification. For
+68 * older drives only.
+69 */
+70 #define GPCMD_GET_MEDIA_STATUS 0xda
+71
+72 /* Mode page codes for mode sense/set */
+73 #define GPMODE_VENDOR_PAGE 0x00
+74 #define GPMODE_R_W_ERROR_PAGE 0x01
+75 #define GPMODE_WRITE_PARMS_PAGE 0x05
+76 #define GPMODE_AUDIO_CTL_PAGE 0x0e
+77 #define GPMODE_POWER_PAGE 0x1a
+78 #define GPMODE_FAULT_FAIL_PAGE 0x1c
+79 #define GPMODE_TO_PROTECT_PAGE 0x1d
+80 #define GPMODE_CAPABILITIES_PAGE 0x2a
+81 #define GPMODE_ALL_PAGES 0x3f
+82 /* Not in Mt. Fuji, but in ATAPI 2.6 -- depricated now in favor
+83 * of MODE_SENSE_POWER_PAGE */
+84 #define GPMODE_CDROM_PAGE 0x0d
+85
+86
+87 }}}