Synchronize DataType with Aaru.

This commit is contained in:
2025-10-04 05:28:06 +01:00
parent 60111f7e80
commit 2ac2c6db7c
3 changed files with 148 additions and 138 deletions

View File

@@ -869,9 +869,9 @@ typedef enum
DvdTitleKeyDecrypted = 15, ///< Decrypted DVD sector title key, 5 bytes DvdTitleKeyDecrypted = 15, ///< Decrypted DVD sector title key, 5 bytes
DvdSectorInformation = 16, ///< DVD sector information, 1 bytes DvdSectorInformation = 16, ///< DVD sector information, 1 bytes
DvdSectorNumber = 17, ///< DVD sector number, 3 bytes DvdSectorNumber = 17, ///< DVD sector number, 3 bytes
DvdSectorIed = 18, ///< DVD sector ID error detection, 2 bytes DvdSectorIedAaru = 18, ///< DVD sector ID error detection, 2 bytes
DvdSectorEdc = 19, ///< DVD sector EDC, 4 bytes DvdSectorEdcAaru = 19, ///< DVD sector EDC, 4 bytes
MaxSectorTag = DvdSectorEdc MaxSectorTag = DvdSectorEdcAaru
} SectorTagType; } SectorTagType;
/** @} */ /* end of SectorTags group */ /** @} */ /* end of SectorTags group */

View File

@@ -30,10 +30,10 @@
*/ */
typedef enum typedef enum
{ {
None = 0, ///< Not compressed. None = 0, ///< Not compressed.
Lzma = 1, ///< LZMA compression. Lzma = 1, ///< LZMA compression.
Flac = 2, ///< FLAC compression. Flac = 2, ///< FLAC compression.
LzmaClauniaSubchannelTransform = 3 ///< LZMA applied to Claunia Subchannel Transform processed data. LzmaClauniaSubchannelTransform = 3 ///< LZMA applied to Claunia Subchannel Transform processed data.
} CompressionType; } CompressionType;
/** /**
@@ -42,86 +42,94 @@ typedef enum
*/ */
typedef enum typedef enum
{ {
NoData = 0, ///< No data. NoData = 0, ///< No data.
UserData = 1, ///< User (main) data. UserData = 1, ///< User (main) data.
CompactDiscPartialToc = 2, ///< Compact Disc partial Table of Contents. CompactDiscPartialToc = 2, ///< Compact Disc partial Table of Contents.
CompactDiscSessionInfo = 3, ///< Compact Disc session information. CompactDiscSessionInfo = 3, ///< Compact Disc session information.
CompactDiscToc = 4, ///< Compact Disc full Table of Contents. CompactDiscToc = 4, ///< Compact Disc full Table of Contents.
CompactDiscPma = 5, ///< Compact Disc Power Management Area (PMA). CompactDiscPma = 5, ///< Compact Disc Power Management Area (PMA).
CompactDiscAtip = 6, ///< Compact Disc Absolute Time In Pregroove (ATIP). CompactDiscAtip = 6, ///< Compact Disc Absolute Time In Pregroove (ATIP).
CompactDiscLeadInCdText = 7, ///< Compact Disc lead-in CD-Text. CompactDiscLeadInCdText = 7, ///< Compact Disc lead-in CD-Text.
DvdPfi = 8, ///< DVD Physical Format Information. DvdPfi = 8, ///< DVD Physical Format Information.
DvdLeadInCmi = 9, ///< DVD lead-in Copyright Management Information (CMI). DvdLeadInCmi = 9, ///< DVD lead-in Copyright Management Information (CMI).
DvdDiscKey = 10, ///< DVD disc key. DvdDiscKey = 10, ///< DVD disc key.
DvdBca = 11, ///< DVD Burst Cutting Area (BCA). DvdBca = 11, ///< DVD Burst Cutting Area (BCA).
DvdDmi = 12, ///< DVD Disc Manufacturing Information (DMI). DvdDmi = 12, ///< DVD Disc Manufacturing Information (DMI).
DvdMediaIdentifier = 13, ///< DVD media identifier. DvdMediaIdentifier = 13, ///< DVD media identifier.
DvdMediaKeyBlock = 14, ///< DVD Media Key Block (MKB). DvdMediaKeyBlock = 14, ///< DVD Media Key Block (MKB).
DvdRamDds = 15, ///< DVD-RAM Disc Definition Structure (DDS). DvdRamDds = 15, ///< DVD-RAM Disc Definition Structure (DDS).
DvdRamMediumStatus = 16, ///< DVD-RAM medium status. DvdRamMediumStatus = 16, ///< DVD-RAM medium status.
DvdRamSpareArea = 17, ///< DVD-RAM spare area information. DvdRamSpareArea = 17, ///< DVD-RAM spare area information.
DvdRRmd = 18, ///< DVD-R RMD (Recording Management Data). DvdRRmd = 18, ///< DVD-R RMD (Recording Management Data).
DvdRPrerecordedInfo = 19, ///< DVD-R prerecorded information. DvdRPrerecordedInfo = 19, ///< DVD-R prerecorded information.
DvdRMediaIdentifier = 20, ///< DVD-R media identifier. DvdRMediaIdentifier = 20, ///< DVD-R media identifier.
DvdRPfi = 21, ///< DVD-R Physical Format Information. DvdRPfi = 21, ///< DVD-R Physical Format Information.
DvdAdip = 22, ///< DVD Address In Pregroove (ADIP). DvdAdip = 22, ///< DVD Address In Pregroove (ADIP).
HdDvdCpi = 23, ///< HD DVD Copy Protection Information (CPI). HdDvdCpi = 23, ///< HD DVD Copy Protection Information (CPI).
HdDvdMediumStatus = 24, ///< HD DVD medium status. HdDvdMediumStatus = 24, ///< HD DVD medium status.
DvdDlLayerCapacity = 25, ///< DVD dual-layer capacity. DvdDlLayerCapacity = 25, ///< DVD dual-layer capacity.
DvdDlMiddleZoneAddress = 26, ///< DVD dual-layer middle zone address. DvdDlMiddleZoneAddress = 26, ///< DVD dual-layer middle zone address.
DvdDlJumpIntervalSize = 27, ///< DVD dual-layer jump interval size. DvdDlJumpIntervalSize = 27, ///< DVD dual-layer jump interval size.
DvdDlManualLayerJumpLba = 28, ///< DVD dual-layer manual layer jump LBA. DvdDlManualLayerJumpLba = 28, ///< DVD dual-layer manual layer jump LBA.
BlurayDi = 29, ///< Blu-ray Disc Information (DI). BlurayDi = 29, ///< Blu-ray Disc Information (DI).
BlurayBca = 30, ///< Blu-ray Burst Cutting Area (BCA). BlurayBca = 30, ///< Blu-ray Burst Cutting Area (BCA).
BlurayDds = 31, ///< Blu-ray Disc Definition Structure (DDS). BlurayDds = 31, ///< Blu-ray Disc Definition Structure (DDS).
BlurayCartridgeStatus = 32, ///< Blu-ray cartridge status. BlurayCartridgeStatus = 32, ///< Blu-ray cartridge status.
BluraySpareArea = 33, ///< Blu-ray spare area information. BluraySpareArea = 33, ///< Blu-ray spare area information.
AacsVolumeIdentifier = 34, ///< AACS volume identifier. AacsVolumeIdentifier = 34, ///< AACS volume identifier.
AacsSerialNumber = 35, ///< AACS serial number. AacsSerialNumber = 35, ///< AACS serial number.
AacsMediaIdentifier = 36, ///< AACS media identifier. AacsMediaIdentifier = 36, ///< AACS media identifier.
AacsMediaKeyBlock = 37, ///< AACS Media Key Block (MKB). AacsMediaKeyBlock = 37, ///< AACS Media Key Block (MKB).
AacsDataKeys = 38, ///< AACS data keys. AacsDataKeys = 38, ///< AACS data keys.
AacsLbaExtents = 39, ///< AACS LBA extents. AacsLbaExtents = 39, ///< AACS LBA extents.
CprmMediaKeyBlock = 40, ///< CPRM Media Key Block (MKB). CprmMediaKeyBlock = 40, ///< CPRM Media Key Block (MKB).
HybridRecognizedLayers = 41, ///< Recognized layers (hybrid media). HybridRecognizedLayers = 41, ///< Recognized layers (hybrid media).
ScsiMmcWriteProtection = 42, ///< MMC write-protection data. ScsiMmcWriteProtection = 42, ///< MMC write-protection data.
ScsiMmcDiscInformation = 43, ///< MMC disc information. ScsiMmcDiscInformation = 43, ///< MMC disc information.
ScsiMmcTrackResourcesInformation= 44, ///< MMC track resources information. ScsiMmcTrackResourcesInformation = 44, ///< MMC track resources information.
ScsiMmcPowResourcesInformation = 45, ///< MMC POW (Persistent Optical Write?) resources information. ScsiMmcPowResourcesInformation = 45, ///< MMC POW (Persistent Optical Write?) resources information.
ScsiInquiry = 46, ///< SCSI INQUIRY response. ScsiInquiry = 46, ///< SCSI INQUIRY response.
ScsiModePage2A = 47, ///< SCSI MODE PAGE 2Ah. ScsiModePage2A = 47, ///< SCSI MODE PAGE 2Ah.
AtaIdentify = 48, ///< ATA IDENTIFY DEVICE data. AtaIdentify = 48, ///< ATA IDENTIFY DEVICE data.
AtapiIdentify = 49, ///< ATAPI IDENTIFY PACKET DEVICE data. AtapiIdentify = 49, ///< ATAPI IDENTIFY PACKET DEVICE data.
PcmciaCis = 50, ///< PCMCIA Card Information Structure (CIS). PcmciaCis = 50, ///< PCMCIA Card Information Structure (CIS).
SecureDigitalCid = 51, ///< Secure Digital CID register. SecureDigitalCid = 51, ///< Secure Digital CID register.
SecureDigitalCsd = 52, ///< Secure Digital CSD register. SecureDigitalCsd = 52, ///< Secure Digital CSD register.
SecureDigitalScr = 53, ///< Secure Digital SCR register. SecureDigitalScr = 53, ///< Secure Digital SCR register.
SecureDigitalOcr = 54, ///< Secure Digital OCR register. SecureDigitalOcr = 54, ///< Secure Digital OCR register.
MultiMediaCardCid = 55, ///< MultiMediaCard CID register. MultiMediaCardCid = 55, ///< MultiMediaCard CID register.
MultiMediaCardCsd = 56, ///< MultiMediaCard CSD register. MultiMediaCardCsd = 56, ///< MultiMediaCard CSD register.
MultiMediaCardOcr = 57, ///< MultiMediaCard OCR register. MultiMediaCardOcr = 57, ///< MultiMediaCard OCR register.
MultiMediaCardExtendedCsd = 58, ///< MultiMediaCard Extended CSD register. MultiMediaCardExtendedCsd = 58, ///< MultiMediaCard Extended CSD register.
XboxSecuritySector = 59, ///< Xbox Security Sector. XboxSecuritySector = 59, ///< Xbox Security Sector.
FloppyLeadOut = 60, ///< Floppy leadout data. FloppyLeadOut = 60, ///< Floppy leadout data.
DvdDiscControlBlock = 61, ///< DVD Disc Control Block. DvdDiscControlBlock = 61, ///< DVD Disc Control Block.
CompactDiscFirstTrackPregap = 62, ///< Compact Disc first track pre-gap. CompactDiscFirstTrackPregap = 62, ///< Compact Disc first track pre-gap.
CompactDiscLeadOut = 63, ///< Compact Disc leadout. CompactDiscLeadOut = 63, ///< Compact Disc leadout.
ScsiModeSense6 = 64, ///< SCSI MODE SENSE (6) response. ScsiModeSense6 = 64, ///< SCSI MODE SENSE (6) response.
ScsiModeSense10 = 65, ///< SCSI MODE SENSE (10) response. ScsiModeSense10 = 65, ///< SCSI MODE SENSE (10) response.
UsbDescriptors = 66, ///< USB descriptors set. UsbDescriptors = 66, ///< USB descriptors set.
XboxDmi = 67, ///< Xbox DMI. XboxDmi = 67, ///< Xbox DMI.
XboxPfi = 68, ///< Xbox Physical Format Information (PFI). XboxPfi = 68, ///< Xbox Physical Format Information (PFI).
CdSectorPrefix = 69, ///< Compact Disc sector prefix (sync, header). CdSectorPrefix = 69, ///< Compact Disc sector prefix (sync, header).
CdSectorSuffix = 70, ///< Compact Disc sector suffix (EDC, ECC P, ECC Q). CdSectorSuffix = 70, ///< Compact Disc sector suffix (EDC, ECC P, ECC Q).
CdSectorSubchannel = 71, ///< Compact Disc subchannel data. CdSectorSubchannel = 71, ///< Compact Disc subchannel data.
AppleProfileTag = 72, ///< Apple Profile (20byte) tag. AppleProfileTag = 72, ///< Apple Profile (20byte) tag.
AppleSonyTag = 73, ///< Apple Sony (12byte) tag. AppleSonyTag = 73, ///< Apple Sony (12byte) tag.
PriamDataTowerTag = 74, ///< Priam Data Tower (24byte) tag. PriamDataTowerTag = 74, ///< Priam Data Tower (24byte) tag.
CompactDiscMediaCatalogueNumber = 75, ///< Compact Disc Media Catalogue Number (leadin, 13 ASCII bytes). CompactDiscMediaCatalogueNumber = 75, ///< Compact Disc Media Catalogue Number (leadin, 13 ASCII bytes).
CdSectorPrefixCorrected = 76, ///< Compact Disc sector prefix (sync, header) corrected-only stored. CdSectorPrefixCorrected = 76, ///< Compact Disc sector prefix (sync, header) corrected-only stored.
CdSectorSuffixCorrected = 77, ///< Compact Disc sector suffix (EDC, ECC P, ECC Q) corrected-only stored. CdSectorSuffixCorrected = 77, ///< Compact Disc sector suffix (EDC, ECC P, ECC Q) corrected-only stored.
CompactDiscMode2Subheader = 78, ///< Compact Disc MODE 2 subheader. CompactDiscMode2Subheader = 78, ///< Compact Disc MODE 2 subheader.
CompactDiscLeadIn = 79 ///< Compact Disc leadin. CompactDiscLeadIn = 79, ///< Compact Disc leadin.
DvdDiscKeyDecrypted = 80, ///< Decrypted DVD Disc Key
DvdSectorCprMai = 81, ///< DVD Copyright Management Information (CPR_MAI)
DvdSectorTitleKeyDecrypted = 82, ///< Decrypted DVD Title Key
DvdSectorId = 83, ///< DVD Identification Data (ID)
DvdSectorIed = 84, ///< DVD ID Error Detection Code (IED)
DvdSectorEdc = 85, ///< DVD Error Detection Code (EDC)
DvdSectorEccPi = 86, ///< DVD Error Correction Code (ECC) Parity of Inner Code (PI)
DvdEccBlockPo = 87 ///< DVD Error Correction Code (ECC) Parity of Outer Code (PO)
} DataType; } DataType;
/** /**
@@ -130,22 +138,22 @@ typedef enum
*/ */
typedef enum typedef enum
{ {
DataBlock = 0x4B4C4244, ///< Block containing data. DataBlock = 0x4B4C4244, ///< Block containing data.
DeDuplicationTable = 0x2A544444, ///< Block containing a deduplication table (v1). DeDuplicationTable = 0x2A544444, ///< Block containing a deduplication table (v1).
DeDuplicationTable2 = 0x32544444, ///< Block containing a deduplication table v2. DeDuplicationTable2 = 0x32544444, ///< Block containing a deduplication table v2.
IndexBlock = 0x58444E49, ///< Block containing the index (v1). IndexBlock = 0x58444E49, ///< Block containing the index (v1).
IndexBlock2 = 0x32584449, ///< Block containing the index v2. IndexBlock2 = 0x32584449, ///< Block containing the index v2.
IndexBlock3 = 0x33584449, ///< Block containing the index v3. IndexBlock3 = 0x33584449, ///< Block containing the index v3.
GeometryBlock = 0x4D4F4547, ///< Block containing logical geometry. GeometryBlock = 0x4D4F4547, ///< Block containing logical geometry.
MetadataBlock = 0x4154454D, ///< Block containing metadata. MetadataBlock = 0x4154454D, ///< Block containing metadata.
TracksBlock = 0x534B5254, ///< Block containing optical disc tracks. TracksBlock = 0x534B5254, ///< Block containing optical disc tracks.
CicmBlock = 0x4D434943, ///< Block containing CICM XML metadata. CicmBlock = 0x4D434943, ///< Block containing CICM XML metadata.
ChecksumBlock = 0x4D534B43, ///< Block containing contents checksums. ChecksumBlock = 0x4D534B43, ///< Block containing contents checksums.
DataPositionMeasurementBlock = 0x2A4D5044, ///< Block containing data position measurements (reserved / TODO). DataPositionMeasurementBlock = 0x2A4D5044, ///< Block containing data position measurements (reserved / TODO).
SnapshotBlock = 0x50414E53, ///< Block containing a snapshot index (reserved / TODO). SnapshotBlock = 0x50414E53, ///< Block containing a snapshot index (reserved / TODO).
ParentBlock = 0x50524E54, ///< Block describing how to locate the parent image (reserved / TODO). ParentBlock = 0x50524E54, ///< Block describing how to locate the parent image (reserved / TODO).
DumpHardwareBlock = 0x2A504D44, ///< Block containing an array of hardware used to create the image. DumpHardwareBlock = 0x2A504D44, ///< Block containing an array of hardware used to create the image.
TapeFileBlock = 0x454C4654 ///< Block containing list of files for a tape image (reserved / TODO). TapeFileBlock = 0x454C4654 ///< Block containing list of files for a tape image (reserved / TODO).
} BlockType; } BlockType;
/** /**
@@ -154,12 +162,12 @@ typedef enum
*/ */
typedef enum typedef enum
{ {
Invalid = 0, ///< Invalid / unspecified algorithm. Invalid = 0, ///< Invalid / unspecified algorithm.
Md5 = 1, ///< MD5 hash. Md5 = 1, ///< MD5 hash.
Sha1 = 2, ///< SHA-1 hash. Sha1 = 2, ///< SHA-1 hash.
Sha256 = 3, ///< SHA-256 hash. Sha256 = 3, ///< SHA-256 hash.
SpamSum = 4, ///< SpamSum (context-triggered piecewise hash). SpamSum = 4, ///< SpamSum (context-triggered piecewise hash).
Blake3 = 5, ///< BLAKE3 hash. Blake3 = 5, ///< BLAKE3 hash.
} ChecksumAlgorithm; } ChecksumAlgorithm;
/** /**
@@ -168,11 +176,11 @@ typedef enum
*/ */
typedef enum typedef enum
{ {
NotDumped = 0x10000000, ///< Sector(s) have not yet been dumped. NotDumped = 0x10000000, ///< Sector(s) have not yet been dumped.
Correct = 0x20000000, ///< Sector(s) contain valid MODE 1 data with regenerable suffix/prefix. Correct = 0x20000000, ///< Sector(s) contain valid MODE 1 data with regenerable suffix/prefix.
Mode2Form1Ok = 0x30000000, ///< Sector suffix valid for MODE 2 Form 1; regenerable. Mode2Form1Ok = 0x30000000, ///< Sector suffix valid for MODE 2 Form 1; regenerable.
Mode2Form2Ok = 0x40000000, ///< Sector suffix valid for MODE 2 Form 2 with correct CRC. Mode2Form2Ok = 0x40000000, ///< Sector suffix valid for MODE 2 Form 2 with correct CRC.
Mode2Form2NoCrc = 0x50000000 ///< Sector suffix valid for MODE 2 Form 2 but CRC absent/empty. Mode2Form2NoCrc = 0x50000000 ///< Sector suffix valid for MODE 2 Form 2 but CRC absent/empty.
} CdFixFlags; } CdFixFlags;
/** /**
@@ -181,12 +189,12 @@ typedef enum
*/ */
typedef enum typedef enum
{ {
Audio = 0, ///< Audio track. Audio = 0, ///< Audio track.
Data = 1, ///< Generic data track (not further specified). Data = 1, ///< Generic data track (not further specified).
CdMode1 = 2, ///< Compact Disc Mode 1 data track. CdMode1 = 2, ///< Compact Disc Mode 1 data track.
CdMode2Formless = 3, ///< Compact Disc Mode 2 (formless) data track. CdMode2Formless = 3, ///< Compact Disc Mode 2 (formless) data track.
CdMode2Form1 = 4, ///< Compact Disc Mode 2 Form 1 data track. CdMode2Form1 = 4, ///< Compact Disc Mode 2 Form 1 data track.
CdMode2Form2 = 5 ///< Compact Disc Mode 2 Form 2 data track. CdMode2Form2 = 5 ///< Compact Disc Mode 2 Form 2 data track.
} TrackType; } TrackType;
/** /**
@@ -195,7 +203,7 @@ typedef enum
*/ */
typedef enum typedef enum
{ {
AARUF_STATUS_INVALID_CONTEXT = -1 ///< Provided context/handle is invalid. AARUF_STATUS_INVALID_CONTEXT = -1 ///< Provided context/handle is invalid.
} AaruformatStatus; } AaruformatStatus;
/** /**
@@ -204,10 +212,10 @@ typedef enum
*/ */
typedef enum typedef enum
{ {
OpticalDisc = 0, ///< Purely optical discs. OpticalDisc = 0, ///< Purely optical discs.
BlockMedia = 1, ///< Media that is physically block-based or abstracted like that. BlockMedia = 1, ///< Media that is physically block-based or abstracted like that.
LinearMedia = 2, ///< Media that can be accessed by-byte or by-bit, like chips. LinearMedia = 2, ///< Media that can be accessed by-byte or by-bit, like chips.
AudioMedia = 3 ///< Media that can only store data when modulated to audio. AudioMedia = 3 ///< Media that can only store data when modulated to audio.
} XmlMediaType; } XmlMediaType;
/** /**
@@ -216,8 +224,8 @@ typedef enum
*/ */
typedef enum typedef enum
{ {
SmallDdtSizeType = 0, ///< Small sized DDT entries. SmallDdtSizeType = 0, ///< Small sized DDT entries.
BigDdtSizeType = 1 ///< Large sized DDT entries. BigDdtSizeType = 1 ///< Large sized DDT entries.
} DdtSizeType; } DdtSizeType;
/** /**
@@ -226,17 +234,17 @@ typedef enum
*/ */
typedef enum typedef enum
{ {
SectorStatusNotDumped = 0x0, ///< Sector(s) not yet acquired during image dumping. SectorStatusNotDumped = 0x0, ///< Sector(s) not yet acquired during image dumping.
SectorStatusDumped = 0x1, ///< Sector(s) successfully dumped without error. SectorStatusDumped = 0x1, ///< Sector(s) successfully dumped without error.
SectorStatusErrored = 0x2, ///< Error during dumping; data may be incomplete or corrupt. SectorStatusErrored = 0x2, ///< Error during dumping; data may be incomplete or corrupt.
SectorStatusMode1Correct = 0x3, ///< Valid MODE 1 data with regenerable suffix/prefix. SectorStatusMode1Correct = 0x3, ///< Valid MODE 1 data with regenerable suffix/prefix.
SectorStatusMode2Form1Ok = 0x4, ///< Suffix verified/regenerable for MODE 2 Form 1. SectorStatusMode2Form1Ok = 0x4, ///< Suffix verified/regenerable for MODE 2 Form 1.
SectorStatusMode2Form2Ok = 0x5, ///< Suffix matches MODE 2 Form 2 with valid CRC. SectorStatusMode2Form2Ok = 0x5, ///< Suffix matches MODE 2 Form 2 with valid CRC.
SectorStatusMode2Form2NoCrc = 0x6, ///< Suffix matches MODE 2 Form 2 but CRC empty/missing. SectorStatusMode2Form2NoCrc = 0x6, ///< Suffix matches MODE 2 Form 2 but CRC empty/missing.
SectorStatusTwin = 0x7, ///< Pointer references a twin sector table. SectorStatusTwin = 0x7, ///< Pointer references a twin sector table.
SectorStatusUnrecorded = 0x8, ///< Sector physically unrecorded; repeated reads non-deterministic. SectorStatusUnrecorded = 0x8, ///< Sector physically unrecorded; repeated reads non-deterministic.
SectorStatusEncrypted = 0x9, ///< Content encrypted and stored encrypted in image. SectorStatusEncrypted = 0x9, ///< Content encrypted and stored encrypted in image.
SectorStatusUnencrypted = 0xA ///< Content originally encrypted but stored decrypted in image. SectorStatusUnencrypted = 0xA ///< Content originally encrypted but stored decrypted in image.
} SectorStatus; } SectorStatus;
/** /**

View File

@@ -170,6 +170,8 @@ int32_t aaruf_get_media_tag_type_for_datatype(int32_t type)
return CD_MCN; return CD_MCN;
case CompactDiscLeadIn: case CompactDiscLeadIn:
return CD_LeadIn; return CD_LeadIn;
case DvdDiscKeyDecrypted:
return DVD_DiscKey_Decrypted;
default: default:
return -1; return -1;
} }