33 #ifndef __CDRW_DEVICE_H__ 34 #define __CDRW_DEVICE_H__ 57 struct _REQUEST_SENSE {
69 struct _CDB6READWRITE {
114 #define FormatUnit_Code_Mask 0x07 115 #define FormatUnit_Cmp 0x08 116 #define FormatUnit_Fmt 0x10 158 #define PauseResume_Pause 0x00 159 #define PauseResume_Resume 0x01 161 struct _PAUSE_RESUME {
172 #define ReadTOC_Format_Mask 0x0f 173 #define ReadTOC_Format_TOC 0x00 174 #define ReadTOC_Format_SesInfo 0x01 175 #define ReadTOC_Format_FullTOC 0x02 176 #define ReadTOC_Format_PMA 0x03 177 #define ReadTOC_Format_ATIP 0x04 178 #define ReadTOC_Format_CdText 0x05 203 struct _PLAY_AUDIO_MSF {
215 #define SubChannel_SubQ_Header 0x00 216 #define SubChannel_SubQ_Block 0x01 236 #define ReadCD_SecType_Mask 0x1c 237 #define ReadCD_SecType_Any 0x00 238 #define ReadCD_SecType_CDDA 0x04 239 #define ReadCD_SecType_M1 0x08 240 #define ReadCD_SecType_M2 0x0c 241 #define ReadCD_SecType_M2F1 0x10 242 #define ReadCD_SecType_M2F2 0x14 244 struct _READ_CD_MSF {
291 #define WriteCd_RELADR 0x01 292 #define WriteCd_FUA 0x08 293 #define WriteCd_DPO 0x10 327 struct _MODE_SENSE10 {
341 struct _MODE_SELECT {
352 struct _MODE_SELECT10 {
387 #define StartStop_Start 0x01 388 #define StartStop_Load 0x02 406 #define StartStop_Power_NoChg 0x00 407 #define StartStop_Power_Idle 0x02 408 #define StartStop_Power_Standby 0x03 409 #define StartStop_Power_Sleep 0x05 411 struct _MEDIA_REMOVAL {
420 struct _READ_FORMAT_CAPACITIES {
435 #define LoadUnload_Start 0x01 436 #define LoadUnload_Load 0x02 438 struct _LOAD_UNLOAD {
451 struct _MECH_STATUS {
463 #define EventStat_Immed 0x01 465 #define EventStat_Class_OpChange 0x02 466 #define EventStat_Class_PM 0x04 467 #define EventStat_Class_ExternalReq 0x08 468 #define EventStat_Class_Media 0x10 469 #define EventStat_Class_MultiInit 0x20 470 #define EventStat_Class_DevBusy 0x40 472 struct _GET_EVENT_STATUS {
488 struct _READ_DISC_INFO {
495 #define ReadTrackInfo_Type_Mask 0x01 496 #define ReadTrackInfo_Type_LBA 0x00 497 #define ReadTrackInfo_Type_Track 0x01 499 #define ReadTrackInfo_LastTrk 0xff 501 struct _READ_TRACK_INFO {
511 #define ReadTrackInfo3_Type_Mask 0x03 512 #define ReadTrackInfo3_Type_LBA ReadTrackInfo_Type_LBA 513 #define ReadTrackInfo3_Type_Track ReadTrackInfo_Type_Track 514 #define ReadTrackInfo3_Type_Ses 0x02 516 #define ReadTrackInfo3_LastTrk ReadTrackInfo_LastTrk 517 #define ReadTrackInfo3_DiscLeadIn 0x00 // for Track type 519 struct _READ_TRACK_INFO_3 {
529 struct _RESERVE_TRACK {
536 #define CloseTrkSes_Immed 0x01 538 #define CloseTrkSes_Trk 0x01 539 #define CloseTrkSes_Ses 0x02 541 #define CloseTrkSes_LastTrkSes 0xff 543 #define CloseTrkSes_Delay DEF_I64(3100000000) // 310 s 545 struct _CLOSE_TRACK_SESSION {
568 struct _SET_CD_SPEED {
576 #define SyncCache_RELADR 0x01 577 #define SyncCache_Immed 0x02 579 struct _SYNCHRONIZE_CACHE {
597 #define BlankMedia_Mask 0x07 598 #define BlankMedia_Complete 0x00 599 #define BlankMedia_Minimal 0x01 600 #define BlankMedia_Track 0x02 601 #define BlankMedia_UnreserveTrack 0x03 602 #define BlankMedia_TrackTail 0x04 603 #define BlankMedia_UncloseLastSes 0x05 604 #define BlankMedia_EraseSes 0x06 605 #define BlankMedia_Immed 0x10 607 struct _BLANK_MEDIA {
622 #define SendKey_ReportAGID 0x00 623 #define SendKey_ChallengeKey 0x01 624 #define SendKey_Key1 0x02 625 #define SendKey_Key2 0x03 626 #define SendKey_TitleKey 0x04 627 #define SendKey_ReportASF 0x05 628 #define SendKey_InvalidateAGID 0x3F 653 struct _READ_DVD_STRUCTURE {
673 struct _GET_CONFIGURATION {
688 struct _SET_READ_AHEAD {
705 #define SendOpc_DoOpc 0x01 707 struct _SEND_OPC_INFO {
722 struct _SEND_CUE_SHEET {
734 struct _CDB12READWRITE {
783 struct _NEC_READ_CDDA {
796 #define CDB6GENERIC_LENGTH 6 797 #define CDB10GENERIC_LENGTH 10 798 #define CDB12GENERIC_LENGTH 12 800 #define MAXIMUM_NUMBER_OF_TRACKS 100 801 #define MAXIMUM_NUMBER_OF_SESSIONS 1024 //maximal number of entries in Read Full TOC 808 #define MODE_PAGE_ERROR_RECOVERY 0x01 809 #define MODE_PAGE_WRITE_PARAMS 0x05 810 #define MODE_PAGE_VERIFY_ERROR 0x07 // shall not be used 811 #define MODE_PAGE_CACHING 0x08 // undocumented, but used by DirectCd 812 #define MODE_PAGE_MEDIUM_TYPES 0x0B // shall not be used 813 #define MODE_PAGE_CD_DEVICE_PARAMS 0x0D 814 #define MODE_PAGE_CD_AUDIO_CONTROL 0x0E 815 #define MODE_PAGE_POWER_CONDITION 0x1A 816 #define MODE_PAGE_FAIL_REPORT 0x1C 817 #define MODE_PAGE_TIMEOUT_AND_PROTECT 0x1D 818 #define MODE_PAGE_PHILIPS_SECTOR_TYPE 0x21 819 #define MODE_PAGE_CAPABILITIES 0x2A 821 #define MODE_SENSE_RETURN_ALL 0x3f 823 #define MODE_SENSE_CURRENT_VALUES 0x00 824 #define MODE_SENSE_CHANGEABLE_VALUES 0x40 825 #define MODE_SENSE_DEFAULT_VAULES 0x80 826 #define MODE_SENSE_SAVED_VALUES 0xc0 830 #define SCSIOP_TEST_UNIT_READY 0x00 831 #define SCSIOP_REZERO_UNIT 0x01 832 #define SCSIOP_REWIND 0x01 833 #define SCSIOP_REQUEST_BLOCK_ADDR 0x02 834 #define SCSIOP_REQUEST_SENSE 0x03 835 #define SCSIOP_FORMAT_UNIT 0x04 836 #define SCSIOP_READ_BLOCK_LIMITS 0x05 837 #define SCSIOP_REASSIGN_BLOCKS 0x07 838 #define SCSIOP_READ6 0x08 839 #define SCSIOP_RECEIVE 0x08 840 #define SCSIOP_WRITE6 0x0A 841 #define SCSIOP_PRINT 0x0A 842 #define SCSIOP_SEND 0x0A 843 #define SCSIOP_SEEK6 0x0B 844 #define SCSIOP_TRACK_SELECT 0x0B 845 #define SCSIOP_SLEW_PRINT 0x0B 846 #define SCSIOP_SEEK_BLOCK 0x0C 847 #define SCSIOP_PARTITION 0x0D 848 #define SCSIOP_READ_REVERSE 0x0F 849 #define SCSIOP_WRITE_FILEMARKS 0x10 850 #define SCSIOP_FLUSH_BUFFER 0x10 851 #define SCSIOP_SPACE 0x11 852 #define SCSIOP_INQUIRY 0x12 853 #define SCSIOP_VERIFY6 0x13 854 #define SCSIOP_RECOVER_BUF_DATA 0x14 855 #define SCSIOP_MODE_SELECT 0x15 856 #define SCSIOP_RESERVE_UNIT 0x16 857 #define SCSIOP_RELEASE_UNIT 0x17 858 #define SCSIOP_COPY 0x18 859 #define SCSIOP_ERASE 0x19 860 #define SCSIOP_MODE_SENSE 0x1A 861 #define SCSIOP_START_STOP_UNIT 0x1B 862 #define SCSIOP_STOP_PRINT 0x1B 863 #define SCSIOP_LOAD_UNLOAD 0x1B 864 #define SCSIOP_RECEIVE_DIAGNOSTIC 0x1C 865 #define SCSIOP_SEND_DIAGNOSTIC 0x1D 866 #define SCSIOP_MEDIUM_REMOVAL 0x1E 867 #define SCSIOP_READ_FORMAT_CAPACITY 0x23 868 #define SCSIOP_READ_CAPACITY 0x25 869 #define SCSIOP_READ 0x28 870 #define SCSIOP_WRITE 0x2A 871 #define SCSIOP_WRITE_CD 0x2A 872 #define SCSIOP_SEEK 0x2B 873 #define SCSIOP_LOCATE 0x2B 874 #define SCSIOP_ERASE10 0x2C 875 #define SCSIOP_WRITE_VERIFY 0x2E 876 #define SCSIOP_VERIFY 0x2F 877 #define SCSIOP_SEARCH_DATA_HIGH 0x30 878 #define SCSIOP_SEARCH_DATA_EQUAL 0x31 879 #define SCSIOP_SEARCH_DATA_LOW 0x32 880 #define SCSIOP_SET_LIMITS 0x33 881 #define SCSIOP_READ_POSITION 0x34 882 #define SCSIOP_SYNCHRONIZE_CACHE 0x35 883 #define SCSIOP_COMPARE 0x39 884 #define SCSIOP_COPY_COMPARE 0x3A 885 #define SCSIOP_COPY_VERIFY 0x3A 886 #define SCSIOP_WRITE_DATA_BUFF 0x3B 887 #define SCSIOP_READ_DATA_BUFF 0x3C 888 #define SCSIOP_CHANGE_DEFINITION 0x40 889 #define SCSIOP_PLAY_AUDIO10 0x41 890 #define SCSIOP_READ_SUB_CHANNEL 0x42 891 #define SCSIOP_READ_TOC 0x43 892 #define SCSIOP_READ_HEADER 0x44 893 #define SCSIOP_PLAY_AUDIO 0x45 894 #define SCSIOP_GET_CONFIGURATION 0x46 895 #define SCSIOP_PLAY_AUDIO_MSF 0x47 896 #define SCSIOP_PLAY_TRACK_INDEX 0x48 897 #define SCSIOP_PLAY_TRACK_RELATIVE 0x49 898 #define SCSIOP_GET_EVENT_STATUS 0x4A 899 #define SCSIOP_PAUSE_RESUME 0x4B 900 #define SCSIOP_LOG_SELECT 0x4C 901 #define SCSIOP_LOG_SENSE 0x4D 902 #define SCSIOP_STOP_PLAY_SCAN 0x4E 903 #define SCSIOP_READ_DISC_INFO 0x51 904 #define SCSIOP_READ_TRACK_INFO 0x52 905 #define SCSIOP_RESERVE_TRACK 0x53 906 #define SCSIOP_SEND_OPC_INFO 0x54 907 #define SCSIOP_MODE_SELECT10 0x55 908 #define SCSIOP_REPAIR_TRACK 0x58 // obsolete 909 #define SCSIOP_READ_MASTER_CUE 0x59 910 #define SCSIOP_MODE_SENSE10 0x5A 911 #define SCSIOP_CLOSE_TRACK_SESSION 0x5B 912 #define SCSIOP_READ_BUFFER_CAPACITY 0x5C 913 #define SCSIOP_SEND_CUE_SHEET 0x5D 914 #define SCSIOP_READ16 0x88 915 #define SCSIOP_WRITE16 0x8A 916 #define SCSIOP_VERIFY16 0x8F 917 #define SCSIOP_SERVICE_ACTION16 0x9E 919 #define SCSIOP_SA_READ_CAPACITY16 0x10 921 #define SCSIOP_REPORT_LUNS 0xA0 922 #define SCSIOP_BLANK 0xA1 923 #define SCSIOP_SEND_KEY 0xA3 924 #define SCSIOP_REPORT_KEY 0xA4 925 #define SCSIOP_PLAY_AUDIO12 0xA5 926 #define SCSIOP_LOAD_UNLOAD_SLOT 0xA6 927 #define SCSIOP_SET_READ_AHEAD 0xA7 928 #define SCSIOP_READ12 0xA8 929 #define SCSIOP_WRITE12 0xAA 930 #define SCSIOP_VERIFY12 0xAF 931 #define SCSIOP_SEEK12 0xAB 932 #define SCSIOP_GET_PERFORMANCE 0xAC 933 #define SCSIOP_READ_DVD_STRUCTURE 0xAD 934 #define SCSIOP_WRITE_VERIFY12 0xAE 935 #define SCSIOP_VERIFY12 0xAF 936 #define SCSIOP_SET_STREAMING 0xB6 937 #define SCSIOP_READ_CD_MSF 0xB9 938 #define SCSIOP_SET_CD_SPEED 0xBB 939 #define SCSIOP_MECHANISM_STATUS 0xBD 940 #define SCSIOP_READ_CD 0xBE 941 #define SCSIOP_SEND_DVD_STRUCTURE 0xBF 942 #define SCSIOP_DOORLOCK 0xDE // lock door on removable drives 943 #define SCSIOP_DOORUNLOCK 0xDF // unlock door on removable drives 950 #define CDB_RETURN_ON_COMPLETION 0 951 #define CDB_RETURN_IMMEDIATE 1 957 #define CDB_FORCE_MEDIA_ACCESS 0x08 961 #define SCSIOP_DENON_EJECT_DISC 0xE6 962 #define SCSIOP_DENON_STOP_AUDIO 0xE7 963 #define SCSIOP_DENON_PLAY_AUDIO 0xE8 964 #define SCSIOP_DENON_READ_TOC 0xE9 965 #define SCSIOP_DENON_READ_SUBCODE 0xEB 969 #define SCSIOP_PHILIPS_GET_NWA 0xE2 970 #define SCSIOP_PHILIPS_RESERVE_TRACK 0xE4 971 #define SCSIOP_PHILIPS_WRITE_TRACK 0xE6 972 #define SCSIOP_PHILIPS_LOAD_UNLOAD 0xE7 973 #define SCSIOP_PHILIPS_CLOSE_TRACK_SESSION 0xE9 974 #define SCSIOP_PHILIPS_RECOVER_BUF_DATA 0xEC 975 #define SCSIOP_PHILIPS_READ_SESSION_INFO 0xEE 979 #define SCSIOP_PLEXTOR_READ_CDDA 0xD8 983 #define SCSIOP_NEC_READ_CDDA 0xD4 987 #define SCSIMESS_ABORT 0x06 988 #define SCSIMESS_ABORT_WITH_TAG 0x0D 989 #define SCSIMESS_BUS_DEVICE_RESET 0X0C 990 #define SCSIMESS_CLEAR_QUEUE 0X0E 991 #define SCSIMESS_COMMAND_COMPLETE 0X00 992 #define SCSIMESS_DISCONNECT 0X04 993 #define SCSIMESS_EXTENDED_MESSAGE 0X01 994 #define SCSIMESS_IDENTIFY 0X80 995 #define SCSIMESS_IDENTIFY_WITH_DISCON 0XC0 996 #define SCSIMESS_IGNORE_WIDE_RESIDUE 0X23 997 #define SCSIMESS_INITIATE_RECOVERY 0X0F 998 #define SCSIMESS_INIT_DETECTED_ERROR 0X05 999 #define SCSIMESS_LINK_CMD_COMP 0X0A 1000 #define SCSIMESS_LINK_CMD_COMP_W_FLAG 0X0B 1001 #define SCSIMESS_MESS_PARITY_ERROR 0X09 1002 #define SCSIMESS_MESSAGE_REJECT 0X07 1003 #define SCSIMESS_NO_OPERATION 0X08 1004 #define SCSIMESS_HEAD_OF_QUEUE_TAG 0X21 1005 #define SCSIMESS_ORDERED_QUEUE_TAG 0X22 1006 #define SCSIMESS_SIMPLE_QUEUE_TAG 0X20 1007 #define SCSIMESS_RELEASE_RECOVERY 0X10 1008 #define SCSIMESS_RESTORE_POINTERS 0X03 1009 #define SCSIMESS_SAVE_DATA_POINTER 0X02 1010 #define SCSIMESS_TERMINATE_IO_PROCESS 0X11 1014 #define SCSIMESS_MODIFY_DATA_POINTER 0X00 1015 #define SCSIMESS_SYNCHRONOUS_DATA_REQ 0X01 1016 #define SCSIMESS_WIDE_DATA_REQUEST 0X03 1020 #define SCSIMESS_MODIFY_DATA_LENGTH 5 1021 #define SCSIMESS_SYNCH_DATA_LENGTH 3 1022 #define SCSIMESS_WIDE_DATA_LENGTH 2 1030 union _EXTENDED_ARGUMENTS {
1049 #define SCSISTAT_GOOD 0x00 1050 #define SCSISTAT_CHECK_CONDITION 0x02 1051 #define SCSISTAT_CONDITION_MET 0x04 1052 #define SCSISTAT_BUSY 0x08 1053 #define SCSISTAT_INTERMEDIATE 0x10 1054 #define SCSISTAT_INTERMEDIATE_COND_MET 0x14 1055 #define SCSISTAT_RESERVATION_CONFLICT 0x18 1056 #define SCSISTAT_COMMAND_TERMINATED 0x22 1057 #define SCSISTAT_QUEUE_FULL 0x28 1062 #define CDB_INQUIRY_EVPD 0x01 1065 #define NOT_READY_RETRY_INTERVAL 20 1068 #define LUN0_FORMAT_SAVING_DEFECT_LIST 0 1069 #define USE_DEFAULTMSB 0 1070 #define USE_DEFAULTLSB 0 1072 #define START_UNIT_CODE 0x01 1073 #define STOP_UNIT_CODE 0x00 1084 #define INQUIRYDATABUFFERSIZE 36 1120 #define DIRECT_ACCESS_DEVICE 0x00 // disks 1121 #define SEQUENTIAL_ACCESS_DEVICE 0x01 // tapes 1122 #define PRINTER_DEVICE 0x02 // printers 1123 #define PROCESSOR_DEVICE 0x03 // scanners, printers, etc 1124 #define WRITE_ONCE_READ_MULTIPLE_DEVICE 0x04 // worms 1125 #define READ_ONLY_DIRECT_ACCESS_DEVICE 0x05 // cdroms 1126 #define SCANNER_DEVICE 0x06 // scanners 1127 #define OPTICAL_DEVICE 0x07 // optical disks 1128 #define MEDIUM_CHANGER 0x08 // jukebox 1129 #define COMMUNICATION_DEVICE 0x09 // network 1130 #define LOGICAL_UNIT_NOT_PRESENT_DEVICE 0x7F 1131 #define DEVICE_QUALIFIER_NOT_SUPPORTED 0x03 1135 #define DEVICE_CONNECTED 0x00 1159 #define SENSE_BUFFER_SIZE 18 1163 #define SCSI_SENSE_NO_SENSE 0x00 1164 #define SCSI_SENSE_RECOVERED_ERROR 0x01 1165 #define SCSI_SENSE_NOT_READY 0x02 1166 #define SCSI_SENSE_MEDIUM_ERROR 0x03 1167 #define SCSI_SENSE_HARDWARE_ERROR 0x04 1168 #define SCSI_SENSE_ILLEGAL_REQUEST 0x05 1169 #define SCSI_SENSE_UNIT_ATTENTION 0x06 1170 #define SCSI_SENSE_DATA_PROTECT 0x07 1171 #define SCSI_SENSE_BLANK_CHECK 0x08 1172 #define SCSI_SENSE_UNIQUE 0x09 1173 #define SCSI_SENSE_COPY_ABORTED 0x0A 1174 #define SCSI_SENSE_ABORTED_COMMAND 0x0B 1175 #define SCSI_SENSE_EQUAL 0x0C 1176 #define SCSI_SENSE_VOL_OVERFLOW 0x0D 1177 #define SCSI_SENSE_MISCOMPARE 0x0E 1178 #define SCSI_SENSE_RESERVED 0x0F 1183 #define SCSI_ADSENSE_NO_SENSE 0x00 1186 #define SCSI_ADSENSE_WARNING 0x0B 1187 #define SCSI_ADSENSE_REC_DATA_NOECC 0x17 1188 #define SCSI_ADSENSE_REC_DATA_ECC 0x18 1189 #define SCSI_ADSENSE_ROUNDED_PARAM 0x37 1190 #define SCSI_ADSENSE_FAILURE_PREDICTED 0x5D 1191 #define SCSI_ADSENSE_CD_CONTROL_ERR 0x73 1194 #define SCSI_ADSENSE_LUN_NOT_READY 0x04 1195 #define SCSI_ADSENSE_INCOMPATIBLE_MEDIA 0x30 1196 #define SCSI_ADSENSE_INVALID_MEDIA SCSI_ADSENSE_INCOMPATIBLE_MEDIA // for w2k 1197 #define SCSI_ADSENSE_NO_MEDIA_IN_DEVICE 0x3A 1198 #define SCSI_ADSENSE_POSITION_ERROR 0x3B 1199 #define SCSI_ADSENSE_NOT_SELF_CONFIGURED 0x3E 1203 #define SCSI_ADSENSE_NO_SEEK 0x02 1204 #define SCSI_ADSENSE_NO_REFERENCE 0x06 1205 #define SCSI_ADSENSE_CD_WRITE_ERROR 0x0C 1206 #define SCSI_ADSENSE_CD_READ_ERROR 0x11 1207 #define SCSI_ADSENSE_TRACK_ERROR 0x14 1208 #define SCSI_ADSENSE_SEEK_ERROR 0x15 1209 #define SCSI_ADSENSE_FORMAT_CORRUPTED 0x31 1210 #define SCSI_ADSENSE_ENCLOSURE_FAILURE 0x34 1211 #define SCSI_ADSENSE_ENCLOSURE_SERVICE 0x35 1212 #define SCSI_ADSENSE_ERASE_ERROR 0x51 1213 #define SCSI_ADSENSE_UNRECOVERED_TOC 0x57 1214 #define SCSI_ADSENSE_SESSION_FIXATION 0x71 1218 #define SCSI_ADSENSE_CLEAN_REQUEST 0x00 1219 #define SCSI_ADSENSE_SELECT 0x04 1220 #define SCSI_ADSENSE_COMMUNICATION 0x08 1221 #define SCSI_ADSENSE_LOST_STREAMING 0x09 1222 #define SCSI_ADSENSE_SYNC_ERROR 0x1B 1223 #define SCSI_ADSENSE_MECH_ERROR 0x3B 1224 #define SCSI_ADSENSE_LUN_ERROR 0x3E 1225 #define SCSI_ADSENSE_DIAGNOSTIC 0x40 1226 #define SCSI_ADSENSE_INTERNAL 0x44 1227 #define SCSI_ADSENSE_SOFT_RESET 0x46 1228 #define SCSI_ADSENSE_SCSI_PARITY 0x47 1229 #define SCSI_ADSENSE_CMD_PHASE 0x4A 1230 #define SCSI_ADSENSE_DATA_PHASE 0x4B 1231 #define SCSI_ADSENSE_SELF_CONFIG 0x4C 1232 #define SCSI_ADSENSE_MEDIUM_REMOVAL 0x53 1233 #define SCSI_ADSENSE_VOLTAGE 0x65 1236 #define SCSI_ADSENSE_AUDIO_PLAY 0x00 1237 #define SCSI_ADSENSE_MULTISELECT 0x07 1238 #define SCSI_ADSENSE_INVALID_PARAM_LENGTH 0x1A 1239 #define SCSI_ADSENSE_ILLEGAL_COMMAND 0x20 1240 #define SCSI_ADSENSE_ILLEGAL_BLOCK 0x21 1241 #define SCSI_ADSENSE_INVALID_CDB 0x24 1242 #define SCSI_ADSENSE_INVALID_LUN 0x25 1243 #define SCSI_ADSENSE_INVALID_VALUE 0x26 1244 #define SCSI_ADSENSE_WRITE_PROTECT 0x27 1245 #define SCSI_ADSENSE_CANT_DISCONNECT 0x2B 1246 #define SCSI_ADSENSE_INVALID_CMD_SEQUENCE 0x2C 1247 #define SCSI_ADSENSE_INVALID_SESSION_MODE 0x30 1248 #define SCSI_ADSENSE_SAVE_NOT_SUPPORTED 0x35 1249 #define SCSI_ADSENSE_INVALID_BITS_IN_IDENT_MSG 0x3D 1250 #define SCSI_ADSENSE_MSG_ERROR 0x43 1252 #define SCSI_ADSENSE_SYS_RESOURCE_FAILURE 0x55 1253 #define SCSI_ADSENSE_OUT_OF_SPACE 0x63 1254 #define SCSI_ADSENSE_ILLEGAL_MODE_FOR_THIS_TRACK 0x64 1255 #define SCSI_ADSENSE_CD_COPY_ERROR 0x6F 1256 #define SCSI_ADSENSE_INCOMPLETE_DATA 0x72 1257 #define SCSI_ADSENSE_VENDOR_UNIQUE 0x80 1258 #define SCSI_ADSENSE_MUSIC_AREA 0xA0 1259 #define SCSI_ADSENSE_DATA_AREA 0xA1 1260 #define SCSI_ADSENSE_VOLUME_OVERFLOW 0xA7 1263 #define SCSI_ADSENSE_LOG_OVERFLOW 0x0A 1264 #define SCSI_ADSENSE_MEDIUM_CHANGED 0x28 1265 #define SCSI_ADSENSE_BUS_RESET 0x29 1266 #define SCSI_ADSENSE_PARAM_CHANGE 0x2A 1267 #define SCSI_ADSENSE_CMD_CLEARED_BY_ANOTHER 0x2F 1268 #define SCSI_ADSENSE_MEDIA_STATE 0x3B 1269 #define SCSI_ADSENSE_FUNCTIONALTY_CHANGE 0x3F 1270 #define SCSI_ADSENSE_OPERATOR 0x5A 1271 #define SCSI_ADSENSE_MAX_LOG 0x5B 1272 #define SCSI_ADSENSE_POWER 0x5E 1275 #define SCSI_ADSENSE_READ_LOST_STREAMING 0x11 1276 #define SCSI_ADSENSE_RESELECT_FAILURE 0x45 1277 #define SCSI_ADSENSE_ERR_MSG_DETECTED 0x48 1278 #define SCSI_ADSENSE_INVALID_ERR_MSG 0x49 1279 #define SCSI_ADSENSE_TEGGED_OVERLAPPED 0x4D 1280 #define SCSI_ADSENSE_OVERLAPPED_ATTEMPT 0x4E 1284 #define SCSI_SENSEQ_NO_SENSE 0x00 1288 #define SCSI_SENSEQ_CAUSE_NOT_REPORTABLE 0x00 1289 #define SCSI_SENSEQ_BECOMING_READY 0x01 1290 #define SCSI_SENSEQ_INIT_COMMAND_REQUIRED 0x02 1291 #define SCSI_SENSEQ_MANUAL_INTERVENTION_REQUIRED 0x03 1292 #define SCSI_SENSEQ_FORMAT_IN_PROGRESS 0x04 1293 #define SCSI_SENSEQ_OPERATION_IN_PROGRESS 0x07 1294 #define SCSI_SENSEQ_LONG_WRITE_IN_PROGRESS 0x08 1297 #define SCSI_SENSEQ_INCOMPATIBLE_MEDIA_INSTALLED 0x00 1298 #define SCSI_SENSEQ_UNKNOWN_FORMAT 0x01 1299 #define SCSI_SENSEQ_INCOMPATIBLE_FORMAT 0x02 1300 #define SCSI_SENSEQ_CLEANING_CARTRIDGE_INSTALLED 0x03 1301 #define SCSI_SENSEQ_WRITE_UNKNOWN_FORMAT 0x04 1302 #define SCSI_SENSEQ_WRITE_INCOMPATIBLE_FORMAT 0x05 1303 #define SCSI_SENSEQ_FORMAT_INCOMPATIBLE_MEDIUM 0x06 1304 #define SCSI_SENSEQ_CLEANING_FAILURE 0x07 1307 #define SCSI_SENSEQ_TRAY_CLOSED 0x01 1308 #define SCSI_SENSEQ_TRAY_OPEN 0x02 1311 #define SENSEQ_W_RECOVERY_NEEDED 0x07 1312 #define SENSEQ_W_RECOVERY_FAILED 0x08 1313 #define SENSEQ_LOST_STREAMING 0x09 1314 #define SENSEQ_PADDING_BLOCKS_ADDED 0x0A 1318 #define SCSI_SENSEQ_LEAD_IN_ERROR 0x01 1319 #define SCSI_SENSEQ_LEAD_OUT_ERRROR 0x02 1320 #define SCSI_SENSEQ_INCOMPLETE_TRACK 0x03 1321 #define SCSI_SENSEQ_INCOMPLETE_RESERVED_TRACK 0x04 1322 #define SCSI_SENSEQ_NO_MORE_RESERVATION 0x05 1325 #define SCSI_SENSEQ_PARAM_NOT_SUPPORTED 0x01 1326 #define SCSI_SENSEQ_PARAM_INVALID_VALUE 0x02 1327 #define SCSI_SENSEQ_THRESHOLD_PARAM_NOT_SUPPORTED 0x03 1328 #define SCSI_SENSEQ_INVALID_RELEASE_OF_PERSISTENT_RESERVATION 0x04 1331 #define SCSI_SENSEQ_HW_PROTECTION 0x01 1332 #define SCSI_SENSEQ_LUN_SOFT_PROTECTION 0x02 1333 #define SCSI_SENSEQ_ASSOCIATED_PROTECTION 0x03 1334 #define SCSI_SENSEQ_PERSIST_PROTECTION 0x04 1335 #define SCSI_SENSEQ_PERMANENT_PROTECTION 0x05 1338 #define SCSI_SENSEQ_PROGRAMM_AREA_NOT_EMPTY 0x03 1339 #define SCSI_SENSEQ_PROGRAMM_AREA_EMPTY 0x04 1342 #define SCSI_SENSEQ_APP_CODE_MISSMATCH 0x08 1343 #define SCSI_SENSEQ_NOT_FIXED_FOR_APPEND 0x09 1346 #define SCSI_SENSEQ_AUTHENTICATION_FAILURE 0x00 1347 #define SCSI_SENSEQ_KEY_NOT_PRESENT 0x01 1348 #define SCSI_SENSEQ_KEY_NOT_ESTABLISHED 0x02 1349 #define SCSI_SENSEQ_READ_OF_SCRAMBLED_SECTOR_WITHOUT_AUTHENTICATION 0x03 1350 #define SCSI_SENSEQ_MEDIA_CODE_MISMATCHED_TO_LOGICAL_UNIT 0x04 1351 #define SCSI_SENSEQ_LOGICAL_UNIT_RESET_COUNT_ERROR 0x05 1354 #define SCSI_SENSEQ_IMPORT_OR_EXPERT_ELEMENT_ACCESS 0x01 1357 #define SCSI_SENSEQ_POWER_ON 0x01 1358 #define SCSI_SENSEQ_SCSI_BUS 0x02 1359 #define SCSI_SENSEQ_BUS_DEVICE_FUNCTION 0x03 1360 #define SCSI_SENSEQ_DEVICE_INTERNAL 0x04 1363 #define SCSI_SENSEQ_MODE_PARAMETERS 0x01 1364 #define SCSI_SENSEQ_LOG_PARAMETERS 0x02 1365 #define SCSI_SENSEQ_RESERVATIONS_PREEMPTED 0x03 1368 #define SCSI_SENSEQ_DESTINATION_ELEMENT_FULL 0x0D 1369 #define SCSI_SENSEQ_SOURCE_ELEMENT_EMPTY 0x0E 1370 #define SCSI_SENSEQ_END_OF_MEDIUM 0x0F 1371 #define SCSI_SENSEQ_MAGAZINE_NOT_ACCESSIBLE 0x11 1372 #define SCSI_SENSEQ_MAGAZINE_REMOVED 0x12 1373 #define SCSI_SENSEQ_MAGAZINE_INSERTED 0x13 1374 #define SCSI_SENSEQ_MAGAZINE_LOCKED 0x14 1375 #define SCSI_SENSEQ_MAGAZINE_UNLOCKED 0x15 1378 #define SCSI_SENSEQ_MICROCODE 0x01 1379 #define SCSI_SENSEQ_OPERATION_DEFINITION 0x02 1380 #define SCSI_SENSEQ_INQUIRY_DATA 0x03 1383 #define SCSI_SENSEQ_MEDIUM_CHANGE_REQ 0x01 1384 #define SCSI_SENSEQ_W_PROTECT_SELECTED 0x02 1385 #define SCSI_SENSEQ_W_PROTECT_PERMITED 0x03 1388 #define SCSI_SENSEQ_LOW_POWER_COND 0x00 1389 #define SCSI_SENSEQ_IDLE_BY_TIMER 0x01 1390 #define SCSI_SENSEQ_STANDBY_BY_TIMER 0x02 1391 #define SCSI_SENSEQ_IDLE_BY_CMD 0x03 1392 #define SCSI_SENSEQ_STANDBY_BY_CMD 0x04 1394 #define SCSI_SENSEQ_FILEMARK_DETECTED 0x01 1395 #define SCSI_SENSEQ_SETMARK_DETECTED 0x03 1396 #define SCSI_SENSEQ_END_OF_MEDIA_DETECTED 0x02 1397 #define SCSI_SENSEQ_BEGINNING_OF_MEDIA_DETECTED 0x04 1401 #define FILE_DEVICE_SCSI 0x0000001b 1403 #define IOCTL_SCSI_EXECUTE_IN ((FILE_DEVICE_SCSI << 16) + 0x0011) 1404 #define IOCTL_SCSI_EXECUTE_OUT ((FILE_DEVICE_SCSI << 16) + 0x0012) 1405 #define IOCTL_SCSI_EXECUTE_NONE ((FILE_DEVICE_SCSI << 16) + 0x0013) 1409 #define IOCTL_SCSI_MINIPORT_SMART_VERSION ((FILE_DEVICE_SCSI << 16) + 0x0500) 1410 #define IOCTL_SCSI_MINIPORT_IDENTIFY ((FILE_DEVICE_SCSI << 16) + 0x0501) 1411 #define IOCTL_SCSI_MINIPORT_READ_SMART_ATTRIBS ((FILE_DEVICE_SCSI << 16) + 0x0502) 1412 #define IOCTL_SCSI_MINIPORT_READ_SMART_THRESHOLDS ((FILE_DEVICE_SCSI << 16) + 0x0503) 1413 #define IOCTL_SCSI_MINIPORT_ENABLE_SMART ((FILE_DEVICE_SCSI << 16) + 0x0504) 1414 #define IOCTL_SCSI_MINIPORT_DISABLE_SMART ((FILE_DEVICE_SCSI << 16) + 0x0505) 1415 #define IOCTL_SCSI_MINIPORT_RETURN_STATUS ((FILE_DEVICE_SCSI << 16) + 0x0506) 1416 #define IOCTL_SCSI_MINIPORT_ENABLE_DISABLE_AUTOSAVE ((FILE_DEVICE_SCSI << 16) + 0x0507) 1417 #define IOCTL_SCSI_MINIPORT_SAVE_ATTRIBUTE_VALUES ((FILE_DEVICE_SCSI << 16) + 0x0508) 1418 #define IOCTL_SCSI_MINIPORT_EXECUTE_OFFLINE_DIAGS ((FILE_DEVICE_SCSI << 16) + 0x0509) 1419 #define IOCTL_SCSI_MINIPORT_ENABLE_DISABLE_AUTO_OFFLINE ((FILE_DEVICE_SCSI << 16) + 0x050a) 1420 #define IOCTL_SCSI_MINIPORT_READ_SMART_LOG ((FILE_DEVICE_SCSI << 16) + 0x050b) 1421 #define IOCTL_SCSI_MINIPORT_WRITE_SMART_LOG ((FILE_DEVICE_SCSI << 16) + 0x050c) 1442 #define TocControl_TrkMode_Mask WParam_TrkMode_Mask 1443 #define TocControl_TrkMode_Audio WParam_TrkMode_Audio 1444 #define TocControl_TrkMode_Audio_PreEmph WParam_TrkMode_Audio_PreEmph 1445 #define TocControl_TrkMode_Data WParam_TrkMode_Data 1446 #define TocControl_TrkMode_IncrData WParam_TrkMode_IncrData 1447 #define TocControl_TrkMode_QAudio_PreEmph WParam_TrkMode_QAudio_PreEmph 1448 #define TocControl_TrkMode_AllowCpy WParam_TrkMode_AllowCpy 1465 #define TOC_LastTrack_ID 0xAA 1482 #define POINT_StartPositionOfTrack_Min 0x01 1483 #define POINT_StartPositionOfTrack_Max 0x63 1484 #define POINT_FirstTrackNum 0xA0 1485 #define POINT_LastTrackNum 0xA1 1486 #define POINT_StartPositionOfLeadOut 0xA2 1488 #define POINT_SkipInterval_Min 0x01 1489 #define POINT_SkipInterval_Max 0x40 1490 #define POINT_StartPositionOfNextProgramArea 0xB0 1491 #define POINT_NumOfSkips 0xB1 1492 #define POINT_SkipTrackAssignmet_Min 0xB2 1493 #define POINT_SkipTrackAssignmet_Max 0xB4 1494 #define POINT_StartPositionOfFirstLeadIn 0xC0 1495 #define POINT_CopyOfAdditionalAreaInATIP 0xC1 1522 #define FullTOC_DiscType_CDDA_or_M1 WParam_SesFmt_CdRom // 0x00 1523 #define FullTOC_DiscType_CDI WParam_SesFmt_CdI // 0x10 1524 #define FullTOC_DiscType_CDXA_M2 WParam_SesFmt_CdRomXa // 0x20 1607 #define ATIP_SpeedRef_Mask 0x07 1608 #define ATIP_SpeedRef_2X 0x01 1609 #define ATIP_WritingPower_Mask 0x07 1621 #define ATIP_URU 0x40 1632 #define ATIP_A1 0x01 // 16-18 are valid 1633 #define ATIP_A2 0x02 // 20-22 are valid 1634 #define ATIP_A3 0x04 // 24-26 are valid 1635 #define ATIP_SubType_Mask 0x38 // shall be set to zero 1636 #define ATIP_Type_Mask 0x40 1637 #define ATIP_Type_CDR 0x00 1638 #define ATIP_Type_CDRW 0x40 1658 #define ATIP_MinSpeedCVL_Mask 0x70 1659 #define ATIP_MinSpeedCVL_2X 0x10 1660 #define ATIP_MaxSpeedCVL_Mask 0x0f 1661 #define ATIP_MaxSpeedCVL_2X 0x01 1662 #define ATIP_MaxSpeedCVL_4X 0x02 1663 #define ATIP_MaxSpeedCVL_6X 0x03 1664 #define ATIP_MaxSpeedCVL_8X 0x04 1675 #define ATIP_Power_Y_Mask 0x0e 1676 #define ATIP_Power_P_Mask 0x70 1688 #define ATIP_PW_ratio_Mask 0x70 1712 #define CdText_ID1_Title 0x80 // ID2 = 0 - Album, ID2 = 1-63 - Track 1713 #define CdText_ID1_Performer 0x81 1714 #define CdText_ID1_Songwriter 0x82 1715 #define CdText_ID1_Composer 0x83 1716 #define CdText_ID1_Arranger 0x84 1717 #define CdText_ID1_Message 0x85 1718 #define CdText_ID1_DiscID 0x86 1719 #define CdText_ID1_GenreInfo 0x87 1720 #define CdText_ID1_TOC 0x88 1721 #define CdText_ID1_TOC2 0x89 1722 #define CdText_ID1_Special 0x8D 1723 #define CdText_ID1_UPC_EAN_ISRC 0x8E 1724 #define CdText_ID1_BlockSizeInfo 0x8F 1730 #define CdText_CharPos_Mask 0x0f 1731 #define CdText_BlkNum_Mask 0x70 1773 #define FormatHeader_VS 0x01 1774 #define FormatHeader_Immed 0x02 1775 #define FormatHeader_DSP 0x04 1776 #define FormatHeader_IP 0x08 1777 #define FormatHeader_STPF 0x10 1778 #define FormatHeader_DCRT 0x20 1779 #define FormatHeader_DPRY 0x40 1780 #define FormatHeader_FOV 0x80 1800 #define FormatDesc_Grow 0x40 1801 #define FormatDesc_Ses 0x80 1849 #define EventRetStat_Class_Mask 0x07 1850 #define EventRetStat_Class_OpChange 0x01 1851 #define EventRetStat_Class_PM 0x02 1852 #define EventRetStat_Class_Media 0x04 1853 #define EventRetStat_Class_DevBusy 0x06 1854 #define EventRetStat_NEA 0x80 1873 #define EventStat_OpEvent_Mask 0x0f 1883 #define EventStat_OpStat_Mask 0x0f 1884 #define EventStat_OpStat_Ready 0x00 1885 #define EventStat_OpStat_TempBusy 0x01 1886 #define EventStat_OpStat_Busy 0x02 1897 #define EventStat_OpReport_NoChg 0x00 1898 #define EventStat_OpReport_Change 0x01 1899 #define EventStat_OpReport_AddChg 0x02 1900 #define EventStat_OpReport_Reset 0x03 1901 #define EventStat_OpReport_FirmwareChg 0x04 // microcode change 1902 #define EventStat_OpReport_InquaryChg 0x05 1903 #define EventStat_OpReport_CtrlReq 0x06 1904 #define EventStat_OpReport_CtrlRelease 0x07 1914 #define EventStat_PowerEvent_Mask 0x0f 1915 #define EventStat_PowerEvent_NoChg 0x00 1916 #define EventStat_PowerEvent_ChgOK 0x01 1917 #define EventStat_PowerEvent_ChgFail 0x02 1927 #define EventStat_PowerStat_Mask 0x0f 1928 #define EventStat_PowerStat_Active 0x01 1929 #define EventStat_PowerStat_Idle 0x02 1930 #define EventStat_PowerStat_Standby 0x03 1931 #define EventStat_PowerStat_Sleep 0x04 1949 #define EventStat_MediaEvent_Mask 0x0f 1950 #define EventStat_MediaEvent_None 0x00 1951 #define EventStat_MediaEvent_EjectReq 0x01 1952 #define EventStat_MediaEvent_New 0x02 1953 #define EventStat_MediaEvent_Removal 0x03 1954 #define EventStat_MediaEvent_Chg 0x04 1964 #define EventStat_MediaStat_DoorOpen 0x01 1965 #define EventStat_MediaStat_Present 0x02 1985 #define EventStat_BusyEvent_Mask 0x0f 1986 #define EventStat_BusyEvent_None 0x00 1987 #define EventStat_BusyEvent_Busy 0x01 1997 #define EventStat_BusyStat_Mask 0x0f 1998 #define EventStat_BusyStat_NoEvent 0x00 1999 #define EventStat_BusyStat_Power 0x01 2000 #define EventStat_BusyStat_Immed 0x02 2001 #define EventStat_BusyStat_Deferred 0x03 2020 #define DiscInfo_Disk_Mask 0x03 2021 #define DiscInfo_Disk_Empty 0x00 2022 #define DiscInfo_Disk_Appendable 0x01 2023 #define DiscInfo_Disk_Complete 0x02 2025 #define DiscInfo_Ses_Mask 0x0C 2026 #define DiscInfo_Ses_Empty 0x00 2027 #define DiscInfo_Ses_Incomplete 0x04 2028 #define DiscInfo_Ses_Complete 0x0C 2030 #define DiscInfo_Disk_Erasable 0x10 2047 #define DiscInfo_URU 0x20 2048 #define DiscInfo_DBC_V 0x40 2049 #define DiscInfo_DID_V 0x80 2061 #define DiscInfo_Type_cdrom 0x00 // CD-DA / CD-ROM 2062 #define DiscInfo_Type_cdi 0x10 // CD-I 2063 #define DiscInfo_Type_cdromxa 0x20 // CD-ROM XA 2064 #define DiscInfo_Type_unknown 0xFF // HZ ;) 2086 #define TrkInfo_Trk_Mask 0x0F 2087 #define TrkInfo_Trk_Mode1 0x01 2088 #define TrkInfo_Trk_Mode2 0x02 2089 #define TrkInfo_Trk_XA 0x02 2090 #define TrkInfo_Trk_DDCD 0x04 // MMC-3 2091 #define TrkInfo_Trk_NonCD 0x04 // MMC-3 2092 #define TrkInfo_Trk_Inc 0x05 // MMC-3 2093 #define TrkInfo_Trk_unknown 0x0F 2094 #define TrkInfo_Copy 0x10 2095 #define TrkInfo_Damage 0x20 2103 #define TrkInfo_Dat_Mask 0x0F 2104 #define TrkInfo_Dat_Mode1 0x01 2105 #define TrkInfo_Dat_Mode2 0x02 2106 #define TrkInfo_Dat_XA 0x02 2107 #define TrkInfo_Dat_DDCD 0x02 2108 #define TrkInfo_Dat_unknown 0x0F 2109 #define TrkInfo_FP 0x10 2110 #define TrkInfo_Packet 0x20 2111 #define TrkInfo_Blank 0x40 2112 #define TrkInfo_RT 0x80 2121 #define TrkInfo_NWA_V 0x01 2122 #define TrkInfo_LRA_V 0x02 // MMC-3 2148 #define MediaType_Unknown 0x00 2149 #define MediaType_120mm_CDROM_DataOnly 0x01 2150 #define MediaType_120mm_CDROM_AudioOnly 0x02 //CDDA 2151 #define MediaType_120mm_CDROM_DataAudioCombined 0x03 2152 #define MediaType_120mm_CDROM_Hybrid_PhotoCD 0x04 2153 #define MediaType_80mm_CDROM_DataOnly 0x05 2154 #define MediaType_80mm_CDROM_AudioOnly 0x06 //CDDA 2155 #define MediaType_80mm_CDROM_DataAudioCombined 0x07 2156 #define MediaType_80mm_CDROM_Hybrid_PhotoCD 0x08 2158 #define MediaType_UnknownSize_CDR 0x10 2159 #define MediaType_120mm_CDR_DataOnly 0x11 2160 #define MediaType_120mm_CDR_AudioOnly 0x12 //CDDA 2161 #define MediaType_120mm_CDR_DataAudioCombined 0x13 2162 #define MediaType_120mm_CDR_Hybrid_PhotoCD 0x14 2163 #define MediaType_80mm_CDR_DataOnly 0x15 2164 #define MediaType_80mm_CDR_AudioOnly 0x16 //CDDA 2165 #define MediaType_80mm_CDR_DataAudioCombined 0x17 2166 #define MediaType_80mm_CDR_Hybrid_Photo_CD 0x18 2168 #define MediaType_UnknownSize_CDRW 0x20 2169 #define MediaType_120mm_CDRW_DataOnly 0x21 2170 #define MediaType_120mm_CDRW_AudioOnly 0x22 //CDDA 2171 #define MediaType_120mm_CDRW_DataAudioCombined 0x23 2172 #define MediaType_120mm_CDRW_Hybrid 0x24 2173 #define MediaType_80mm_CDRW_DataOnly 0x25 2174 #define MediaType_80mm_CDRW_AudioOnly 0x26 //CDDA 2175 #define MediaType_80mm_CDRW_DataAudioCombined 0x27 2176 #define MediaType_80mm_CDRW_Hybrid 0x28 2178 #define MediaType_NoDiscPresent 0x70 2179 #define MediaType_DoorOpen 0x71 2198 #define MODE_FD_SINGLE_SIDE 0x01 2199 #define MODE_FD_DOUBLE_SIDE 0x02 2200 #define MODE_FD_MAXIMUM_TYPE 0x1E 2201 #define MODE_DSP_FUA_SUPPORTED 0x10 2202 #define MODE_DSP_WRITE_PROTECT 0x80 2283 #define WParam_WType_Mask 0x0f 2284 #define WParam_WType_Packet 0x00 2285 #define WParam_WType_TAO 0x01 2286 #define WParam_WType_Ses 0x02 2287 #define WParam_WType_Raw 0x03 2288 #define WParam_TestWrite 0x10 2289 #define WParam_LS_V 0x20 2290 #define WParam_BUFF 0x40 2303 #define WParam_TrkMode_Mask 0x0d // xx0x 2304 #define WParam_TrkMode_None 0x00 2305 #define WParam_TrkMode_Audio 0x00 2306 #define WParam_TrkMode_Audio_PreEmph 0x01 2307 #define WParam_TrkMode_Data 0x04 2308 #define WParam_TrkMode_IncrData 0x05 2309 #define WParam_TrkMode_QAudio_PreEmph 0x08 2310 #define WParam_TrkMode_AllowCpy 0x02 2311 #define WParam_Copy 0x10 2312 #define WParam_FP 0x20 2313 #define WParam_MultiSes_Mask 0xc0 2314 #define WParam_Multises_None 0x00 2315 #define WParam_Multises_Final 0x80 2316 #define WParam_Multises_Multi 0xc0 2328 #define WParam_BlkType_Mask 0x0f 2329 #define WParam_BlkType_Raw_2352 0x00 2330 #define WParam_BlkType_RawPQ_2368 0x01 2331 #define WParam_BlkType_RawPW_2448 0x02 2332 #define WParam_BlkType_RawPW_R_2448 0x03 2333 #define WParam_BlkType_VendorSpec1 0x07 2334 #define WParam_BlkType_M1_2048 0x08 2335 #define WParam_BlkType_M2_2336 0x09 2336 #define WParam_BlkType_M2XAF1_2048 0x0a 2337 #define WParam_BlkType_M2XAF1SH_2056 0x0b 2338 #define WParam_BlkType_M2XAF2_2324 0x0c 2339 #define WParam_BlkType_M2XAFXSH_2332 0x0d 2340 #define WParam_BlkType_VendorSpec2 0x0f 2361 #define WParam_SesFmt_CdRom 0x00 2362 #define WParam_SesFmt_CdI 0x10 2363 #define WParam_SesFmt_CdRomXa 0x20 2388 struct _SubHdrParams1 {
2392 #define WParam_SubHdr_SubMode0 0x00 2393 #define WParam_SubHdr_SubMode1 0x08 2399 #define WParam_SubHdr_Mode_Mask 0x03 2400 #define WParam_SubHdr_Mode0 0x00 2401 #define WParam_SubHdr_Mode1 0x01 2402 #define WParam_SubHdr_Mode2 0x02 2403 #define WParam_SubHdr_Format_Mask 0xe0 2404 #define WParam_SubHdr_Format_UserData 0x00 2405 #define WParam_SubHdr_Format_RunIn4 0x20 2406 #define WParam_SubHdr_Format_RunIn3 0x40 2407 #define WParam_SubHdr_Format_RunIn2 0x60 2408 #define WParam_SubHdr_Format_RunIn1 0x80 2409 #define WParam_SubHdr_Format_Link 0xa0 2410 #define WParam_SubHdr_Format_RunOut2 0xc0 2411 #define WParam_SubHdr_Format_RunOut1 0xe0 2461 #define CdParams_InactvityTime_Mask 0x0f 2480 #define CddaPort_Channel_Mask 0x0f 2481 #define CddaPort_Channel_Mute 0x00 2482 #define CddaPort_Channel_0 0x01 2483 #define CddaPort_Channel_1 0x02 2484 #define CddaPort_Channel_0_1 0x03 2485 #define CddaPort_Channel_2 0x04 2486 #define CddaPort_Channel_3 0x08 2499 #define CdAudio_SOTC 0x02 2500 #define CdAudio_Immed 0x04 2529 #define PowerCond_Standby 0x01 2530 #define PowerCond_Idle 0x02 2555 #define FailReport_LogErr 0x01 2556 #define FailReport_Test 0x04 2557 #define FailReport_DExcept 0x08 2558 #define FailReport_Perf 0x80 2596 #define Timeout_SW 0x01 2597 #define Timeout_DISP 0x02 2598 #define Timeout_TMOE 0x04 2636 #define WParams_Philips_CreateNewTrack 0 2654 #define DevCap_read_cd_r 0x01 // reserved in 1.2 2655 #define DevCap_read_cd_rw 0x02 // reserved in 1.2 2656 #define DevCap_method2 0x04 2657 #define DevCap_read_dvd_rom 0x08 2658 #define DevCap_read_dvd_r 0x10 2659 #define DevCap_read_dvd_ram 0x20 2670 #define DevCap_write_cd_r 0x01 // reserved in 1.2 2671 #define DevCap_write_cd_rw 0x02 // reserved in 1.2 2672 #define DevCap_test_write 0x04 2673 #define DevCap_write_dvd_r 0x10 2674 #define DevCap_write_dvd_ram 0x20 2685 #define DevCap_audio_play 0x01 2686 #define DevCap_composite 0x02 2687 #define DevCap_digport1 0x04 2688 #define DevCap_digport2 0x08 2689 #define DevCap_mode2_form1 0x10 2690 #define DevCap_mode2_form2 0x20 2691 #define DevCap_multisession 0x40 2703 #define DevCap_cdda 0x01 2704 #define DevCap_cdda_accurate 0x02 2705 #define DevCap_rw_supported 0x04 2706 #define DevCap_rw_corr 0x08 2707 #define DevCap_c2_pointers 0x10 2708 #define DevCap_isrc 0x20 2709 #define DevCap_upc 0x40 2710 #define DevCap_read_bar_code 0x80 2722 #define DevCap_lock 0x01 2723 #define DevCap_lock_state 0x02 2724 #define DevCap_prevent_jumper 0x04 2725 #define DevCap_eject 0x08 2726 #define DevCap_mechtype_mask 0xE0 2727 #define DevCap_mechtype_caddy 0x00 2728 #define DevCap_mechtype_tray (0x01<<5) 2729 #define DevCap_mechtype_popup (0x02<<5) 2730 #define DevCap_mechtype_individual_changer (0x04<<5) 2731 #define DevCap_mechtype_cartridge_changer (0x05<<5) 2741 #define DevCap_separate_volume 0x01 2742 #define DevCap_separate_mute 0x02 2743 #define DevCap_disc_present 0x04 // reserved in 1.2 2744 #define DevCap_sw_slot_select 0x08 // reserved in 1.2 2745 #define DevCap_change_side_cap 0x10 2746 #define DevCap_rw_leadin_read 0x20 2793 #define LunWPerf_RotCtrl_Mask 0x07 2794 #define LunWPerf_RotCtrl_CLV 0x00 2795 #define LunWPerf_RotCtrl_CAV 0x01 2805 #define MODE_BLOCK_DESC_LENGTH 8 2806 #define MODE_HEADER_LENGTH 4 2807 #define MODE_HEADER_LENGTH10 8 2809 #define CDB_USE_MSF 0x01 2939 #endif //__CDRW_DEVICE_H__ UCHAR FieldReplaceableUnitCode
struct _TOC_SES_INFO::@816::@826 StartPositionOfFirstLeadIn
ULONGLONG LogicalBlockAddress
struct _READ_CAPACITY_DATA READ_CAPACITY_DATA
struct _MODE_FAIL_REPORT_PAGE MODE_FAIL_REPORT_PAGE
MODE_PARAMETER_HEADER ParameterListHeader
UCHAR FirstTrackNumLastSes
READ_TOC_FULL_TOC READ_TOC_PMA
struct _CDB::_GET_EVENT_STATUS GET_EVENT_STATUS
struct _MODE_CD_AUDIO_CONTROL_PAGE * PMODE_CD_AUDIO_CONTROL_PAGE
struct _CDB::_READ_DISC_INFO * PREAD_DISC_INFO
struct _CDB::_MODE_SELECT10 MODE_SELECT10
struct _MODE_PHILIPS_SECTOR_TYPE_PAGE MODE_PHILIPS_SECTOR_TYPE_PAGE
union _CDB::_CLOSE_TRACK_SESSION::@796 Byte2
union _EVENT_STAT_PM_BLOCK::@865 Byte0
struct _CDB::_READ_TRACK_INFO_3 * PREAD_TRACK_INFO_3
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG BufferLength
union _MODE_POWER_CONDITION_PAGE::@909 Byte3
struct _TOC_SES_INFO * PTOC_SES_INFO
struct _TOC_SES_INFO::@816::@817 GENERIC
struct _MODE_READ_WRITE_RECOVERY_PAGE MODE_READ_WRITE_RECOVERY_PAGE
union _MODE_WRITE_PARAMS_PAGE::@896 Byte7
struct _DISC_INFO_BLOCK DISC_INFO_BLOCK
UCHAR StartingDataSector[4]
struct _CDB::_SERVICE_ACTION16 SERVICE_ACTION16
struct _CDB::_CLOSE_TRACK_SESSION * PCLOSE_TRACK_SESSION
UCHAR CommandSpecificInformation[4]
union _READ_TOC_ATIP::@828 Flags1
struct _CDB::_LOAD_UNLOAD LOAD_UNLOAD
UCHAR ProductRevisionLevel[4]
_In_ ULONG _In_ ULONG _In_ ULONG Length
UCHAR AllocationLength[2]
MODE_WRITE_PARAMS_PAGE Standard
CDDA_PORT_CONTROL Port[4]
UCHAR LastRecordedAddr[4]
struct _CDB::_WRITE_CD WRITE_CD
UCHAR AllocationLength[2]
struct _EVENT_STAT_HEADER * PEVENT_STAT_HEADER
struct _MODE_CD_AUDIO_CONTROL_PAGE::@907::@908 Fields
UCHAR CopyManagementRevision[2]
UCHAR AllocationLength[2]
union _CDB::_CDB12READWRITE::@809 Byte1
struct _CDVD_REPORT_AGID_DATA * PCDVD_REPORT_AGID_DATA
_In_ WDFIOTARGET _In_ PWDF_REQUEST_COMPLETION_PARAMS Params
struct _CDB::_NEC_READ_CDDA NEC_READ_CDDA
struct _OPC_INFO_BLOCK OPC_INFO_BLOCK
struct _SENSE_DATA * PSENSE_DATA
struct _CDVD_KEY_DATA * PCDVD_KEY_DATA
struct _CDB::_MEDIA_REMOVAL MEDIA_REMOVAL
struct _CDB::_CDB16READWRITE CDB16READWRITE
union _CDB::_READ_TOC::@783 Byte2
struct _CDB::_READ_CD * PREAD_CD
struct _CDVD_REPORT_AGID_DATA CDVD_REPORT_AGID_DATA
struct _CDB::_READ_BUFFER_CAPACITY * PREAD_BUFFER_CAPACITY
struct _CDB::_REPORT_KEY REPORT_KEY
struct _SLOT_TABLE_INFORMATION * PSLOT_TABLE_INFORMATION
struct _CDB::_ERASE ERASE
struct _CDB::_SEEK * PSEEK
UCHAR AllocationLength[4]
struct _SENSE_DATA SENSE_DATA
struct _MODE_WRITE_PARAMS_PAGE::@897::@902::_SubHdrParams1 Params1
struct _CDB::_READ_TRACK_INFO READ_TRACK_INFO
struct _SLOT_TABLE_INFORMATION SLOT_TABLE_INFORMATION
struct _CDB::_GET_CONFIGURATION GET_CONFIGURATION
struct _BUFFER_CAPACITY_BLOCK * PBUFFER_CAPACITY_BLOCK
struct _MODE_PARAMETER_HEADER10 MODE_PARAMETER_HEADER10
UCHAR LogicalBlocksPerSecond[2]
UCHAR MaximumSpeedSupported[2]
struct _READ_CAPACITY16_DATA READ_CAPACITY16_DATA
struct _MODE_PARAMETER_HEADER MODE_PARAMETER_HEADER
struct _DVD_LAYER_DESCRIPTOR * PDVD_LAYER_DESCRIPTOR
struct _CDB::_CDB6FORMAT CDB6FORMAT
struct _CDB::_REQUEST_SENSE REQUEST_SENSE
UCHAR SubChannelSelection
union _EVENT_STAT_PM_BLOCK::@866 Byte1
struct _CDB::_CDB12READWRITE::@809::@810 Fields
struct _CDB::_CDB12READWRITE * PCDB12READWRITE
struct _CDB::_REPORT_LUNS REPORT_LUNS
struct _CDB::_PLXTR_READ_CDDA PLXTR_READ_CDDA
struct _CDB::_SEND_OPC_INFO * PSEND_OPC_INFO
IN PVOID IN PVOID IN USHORT IN USHORT Size
DVD_DESCRIPTOR_HEADER Header
struct _CDB::_MODE_SENSE10 MODE_SENSE10
ULONG LogicalBlockAddress
UCHAR AllocationLength[3]
struct _CDRW_FORMAT_DESCRIPTOR * PCDRW_FORMAT_DESCRIPTOR
struct _CDB::_READ_CD_MSF * PREAD_CD_MSF
union _READ_TOC_ATIP::@830 DiscType
struct _CDB::_PLAY_AUDIO_MSF PLAY_AUDIO_MSF
union _MODE_TIMEOUT_AND_PROTECT_PAGE::@915 Byte4
struct _CDB::_SYNCHRONIZE_CACHE * PSYNCHRONIZE_CACHE
struct _DVD_DISK_KEY_STRUCTURES DVD_DISK_KEY_STRUCTURES
UCHAR AllocationLength[2]
struct _READ_TOC_FULL_TOC * PREAD_TOC_FULL_TOC
union _READ_TOC_ATIP::@829 Flags2
struct _CDB::_READ_DVD_STRUCTURE * PREAD_DVD_STRUCTURE
struct _CDB::_SEND_KEY * PSEND_KEY
UCHAR LastTrackNumLastSes2
struct _CDDA_PORT_CONTROL CDDA_PORT_CONTROL
struct _CAPACITY_LIST_HEADER CAPACITY_LIST_HEADER
struct _MODE_CD_AUDIO_CONTROL_PAGE MODE_CD_AUDIO_CONTROL_PAGE
struct _CDB::_WRITE_CD * PWRITE_CD
struct _CDB::_MECH_STATUS * PMECH_STATUS
struct _CDB::_READ_TRACK_INFO_3 READ_TRACK_INFO_3
struct _READ_TOC_TOC READ_TOC_TOC
UCHAR RecoveryTimeLimit[2]
struct _TOC_TRACK_INFO * PTOC_TRACK_INFO
UCHAR EndLayerZeroSector[4]
struct _READ_TOC_CD_TEXT READ_TOC_CD_TEXT
struct _CDB::_CDB10 CDB10
UCHAR AllocationLength[2]
UCHAR ReadRetensionPriority
struct _CDVD_KEY_DATA CDVD_KEY_DATA
struct _DVD_DISK_KEY_STRUCTURES * PDVD_DISK_KEY_STRUCTURES
union _CDB::_SEND_OPC_INFO::@805 Byte1
struct _CDB::_SYNCHRONIZE_CACHE::@799::@800 Fields
struct _CDVD_CHALLENGE_KEY_DATA CDVD_CHALLENGE_KEY_DATA
UCHAR FUnits_per_SUnit[2]
PREAD_TOC_FULL_TOC PREAD_TOC_PMA
struct _DVD_DESCRIPTOR_HEADER DVD_DESCRIPTOR_HEADER
struct _CDB::_LOGSENSE * PLOGSENSE
_In_ WDFREQUEST _In_ NTSTATUS _In_ ULONG_PTR Information
struct _CDB::_LOAD_UNLOAD * PLOAD_UNLOAD
struct _CDB::_GET_CONFIGURATION::@803::@804 Fields
struct _MODE_READ_RECOVERY_PAGE MODE_READ_RECOVERY_PAGE
UCHAR AllocationLength[2]
struct _MODE_PARAMETER_BLOCK MODE_PARAMETER_BLOCK
struct _MECHANICAL_STATUS * PMECHANICAL_STATUS
struct _SCSI_EXTENDED_MESSAGE * PSCSI_EXTENDED_MESSAGE
union _MODE_CD_PARAMS_PAGE::@905 Byte2
TOC_SES_INFO SessionData[MAXIMUM_NUMBER_OF_SESSIONS]
struct _CDB::_SEND_CUE_SHEET SEND_CUE_SHEET
struct _DVD_COPYRIGHT_DESCRIPTOR * PDVD_COPYRIGHT_DESCRIPTOR
union _CDB::_WRITE_CD::@785 Byte1
struct _EVENT_STAT_OPERATIONAL_BLOCK::@861::@863 Fields
struct _CDB::_SEND_KEY SEND_KEY
union _MODE_READ_WRITE_RECOVERY_PAGE::@885 ErrorRecoveryParam
struct _CDB::_CDB6 * PCDB6
struct _MODE_TIMEOUT_AND_PROTECT_PAGE::@915::@916 Fields
struct _CDB::_RESERVE_TRACK * PRESERVE_TRACK
struct _READ_TOC_ATIP READ_TOC_ATIP
SLOT_TABLE_INFORMATION SlotTableInfo[1]
UCHAR LunWPerfDescriptorCount[2]
UCHAR AllocationLength[2]
struct _CDB::_ERASE10 ERASE10
struct _DVD_RPC_KEY * PDVD_RPC_KEY
struct _MODE_CAPABILITIES_PAGE2 * PMODE_CAPABILITIES_PAGE2
struct _MODE_PHILIPS_SECTOR_TYPE_PAGE * PMODE_PHILIPS_SECTOR_TYPE_PAGE
struct _CDB::_SEND_CUE_SHEET * PSEND_CUE_SHEET
struct _CDB::_CDB12 * PCDB12
UCHAR ParameterListLength
struct _CDVD_KEY_HEADER * PCDVD_KEY_HEADER
struct _CDB::_GET_EVENT_STATUS * PGET_EVENT_STATUS
UCHAR MultiplicationFactor
struct _CDVD_CHALLENGE_KEY_DATA * PCDVD_CHALLENGE_KEY_DATA
UCHAR SenseKeySpecific[3]
struct _CDB::_MECH_STATUS MECH_STATUS
struct _CDB::_PLAY_AUDIO_MSF * PPLAY_AUDIO_MSF
struct _FORMATTABLE_CAPACITY_DESCRIPTOR * PFORMATTABLE_CAPACITY_DESCRIPTOR
UCHAR AllocationLength[2]
UCHAR SubChannelSelection
UCHAR UserResetsAvailable
struct _CDB::_READ_TOC * PREAD_TOC
union _MODE_WRITE_PARAMS_PAGE::@893 Byte2
struct _CDB::_READ_BUFFER_CAPACITY READ_BUFFER_CAPACITY
MECHANICAL_STATUS_INFORMATION_HEADER MechanicalStatusHeader
struct _CDB::_MEDIA_REMOVAL * PMEDIA_REMOVAL
struct _EVENT_STAT_HEADER EVENT_STAT_HEADER
struct _MODE_PARAMETER_BLOCK * PMODE_PARAMETER_BLOCK
UCHAR CurrentWriteSpeed[2]
struct _READ_CAPACITY_DATA * PREAD_CAPACITY_DATA
_Reserved_ PVOID Reserved
struct _READ_TOC_HEADER * PREAD_TOC_HEADER
struct _CDB::_READ_FORMAT_CAPACITIES READ_FORMAT_CAPACITIES
union _CD_TEXT_PACK_DATA::@840 BlkNum_CharPos
struct _CDB::_CLOSE_TRACK_SESSION CLOSE_TRACK_SESSION
struct _CDB::_CDB12 CDB12
struct _MODE_CAPABILITIES_PAGE2 MODE_CAPABILITIES_PAGE2
UCHAR DeviceTypeQualifier
struct _CDB::_START_STOP START_STOP
struct _READ_TOC_HEADER READ_TOC_HEADER
struct _INQUIRYDATA INQUIRYDATA
struct _CDVD_TITLE_KEY_HEADER CDVD_TITLE_KEY_HEADER
union _CDB::_CDB16READWRITE::@1191 Byte1
struct _CDB::_WRITE_CD::@785::@786 Fields
struct _CDB::_MODE_SELECT MODE_SELECT
struct _CDB::_MODE_SENSE MODE_SENSE
struct _CDB::_READ_CD_MSF READ_CD_MSF
UCHAR AdditionalSenseCodeQualifier
struct _CD_TEXT_PACK_DATA::@840::@841 Fields
struct _CDB::_READ_TOC READ_TOC
struct _CDB::_ERASE * PERASE
struct _TRACK_INFO_BLOCK TRACK_INFO_BLOCK
struct _DVD_RPC_KEY DVD_RPC_KEY
struct _CDB::_LOGSENSE LOGSENSE
struct _INQUIRYDATA * PINQUIRYDATA
union _EVENT_STAT_DEV_BUSY_BLOCK::@878 Byte1
struct _MODE_TIMEOUT_AND_PROTECT_PAGE * PMODE_TIMEOUT_AND_PROTECT_PAGE
struct _LUN_WRITE_PERF_DESC * PLUN_WRITE_PERF_DESC
union _MODE_WRITE_PARAMS_PAGE::@897::@902 Params
UCHAR AllocationLength[2]
struct _CDB::_READ_TOC::@783::@784 Fields
struct _EVENT_STAT_DEV_BUSY_BLOCK * PEVENT_STAT_DEV_BUSY_BLOCK
TOC_TRACK_INFO TrackData[MAXIMUM_NUMBER_OF_TRACKS+1]
struct _TOC_SES_INFO::@816::@825 SkipTrackAsignment
struct _MODE_FAIL_REPORT_PAGE * PMODE_FAIL_REPORT_PAGE
struct _DISC_INFO_BLOCK * PDISC_INFO_BLOCK
struct _MODE_POWER_CONDITION_PAGE * PMODE_POWER_CONDITION_PAGE
struct _FORMAT_UNIT_PARAMETER_LIST * PFORMAT_UNIT_PARAMETER_LIST
struct _CDB::_SYNCHRONIZE_CACHE SYNCHRONIZE_CACHE
struct _CDB::_SERVICE_ACTION16 * PSERVICE_ACTION16
struct _MODE_READ_WRITE_RECOVERY_PAGE * PMODE_READ_WRITE_RECOVERY_PAGE
union _CDB::_CLOSE_TRACK_SESSION::@795 Byte1
struct _CDB::_SEND_OPC_INFO::@805::@807 Fields
UCHAR ManufacturerResetsAvailable
struct _CDB::_CLOSE_TRACK_SESSION::@795::@797 Fields
UCHAR SUnits_per_MUnit[2]
struct _MODE_WRITE_PARAMS_PAGE_3 MODE_WRITE_PARAMS_PAGE_3
struct _REPORT_LUNS_INFO_HDR * PREPORT_LUNS_INFO_HDR
struct _EVENT_STAT_PM_BLOCK::@865::@867 Fields
struct _EVENT_STAT_PM_BLOCK * PEVENT_STAT_PM_BLOCK
struct _CDB::_CDB6INQUIRY * PCDB6INQUIRY
struct _TOC_SES_INFO::@816::@822 SkipInterval
struct _CDVD_KEY_HEADER CDVD_KEY_HEADER
UCHAR ParameterListLength[2]
union _TOC_SES_INFO::@816 Params
struct _CDB::_SUBCHANNEL * PSUBCHANNEL
union _READ_TOC_ATIP::@833 ErasePower
struct _TRACK_INFO_BLOCK * PTRACK_INFO_BLOCK
union _READ_TOC_ATIP::@832 Power
struct _CDB::_SET_READ_AHEAD * PSET_READ_AHEAD
union _SCSI_EXTENDED_MESSAGE::_EXTENDED_ARGUMENTS ExtendedArguments
struct _CDVD_REPORT_ASF_DATA CDVD_REPORT_ASF_DATA
struct _CD_TEXT_PACK_DATA * PCD_TEXT_PACK_DATA
struct _MODE_PHILIPS_SECTOR_TYPE_PAGE::@917::@918 Fields
struct _CDB::_CDB6READWRITE CDB6READWRITE
struct _CDB::_BLANK_MEDIA BLANK_MEDIA
struct _MODE_WRITE_PARAMS_PAGE MODE_WRITE_PARAMS_PAGE
struct _CDB::_LOCK_DOOR LOCK_DOOR
struct _CDVD_TITLE_KEY_HEADER * PCDVD_TITLE_KEY_HEADER
union _CDB::_GET_EVENT_STATUS::@789 Byte1
UCHAR ChallengeKeyValue[10]
UCHAR AllocationLength[2]
struct _SCSI_EXTENDED_MESSAGE::_EXTENDED_ARGUMENTS::@813 Wide
struct _CDB::_SET_READ_AHEAD SET_READ_AHEAD
UCHAR BlankBufferLength[4]
struct _TOC_SES_INFO::@816::@821 StartPositionOfLeadOut