mirror of
https://github.com/aaru-dps/Aaru.git
synced 2025-12-16 19:24:25 +00:00
Added feature structures from MMC-1.
This commit is contained in:
@@ -1,3 +1,9 @@
|
||||
2015-11-01 Natalia Portillo <claunia@claunia.com>
|
||||
|
||||
* SCSI/MMC/Features.cs:
|
||||
* DiscImageChef.Decoders.csproj:
|
||||
Added feature structures from MMC-1.
|
||||
|
||||
2015-10-31 Natalia Portillo <claunia@claunia.com>
|
||||
|
||||
* SCSI/Modes.cs:
|
||||
|
||||
@@ -80,6 +80,7 @@
|
||||
<Compile Include="ATA\Identify.cs" />
|
||||
<Compile Include="SCSI\EVPD.cs" />
|
||||
<Compile Include="SCSI\Modes.cs" />
|
||||
<Compile Include="SCSI\MMC\Features.cs" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<ItemGroup>
|
||||
|
||||
1170
DiscImageChef.Decoders/SCSI/MMC/Features.cs
Normal file
1170
DiscImageChef.Decoders/SCSI/MMC/Features.cs
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,3 +1,8 @@
|
||||
2015-11-01 Natalia Portillo <claunia@claunia.com>
|
||||
|
||||
* Enums.cs:
|
||||
Added feature structures from MMC-1.
|
||||
|
||||
2015-11-01 Natalia Portillo <claunia@claunia.com>
|
||||
|
||||
* Enums.cs:
|
||||
|
||||
@@ -2743,399 +2743,5 @@ namespace DiscImageChef.Devices
|
||||
[Obsolete]
|
||||
PreventAll = 0x03
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// MMC Feature enumeration
|
||||
/// </summary>
|
||||
public enum ScsiMmcFeatureNumber : ushort
|
||||
{
|
||||
/// <summary>
|
||||
/// Lists all profiles
|
||||
/// </summary>
|
||||
ProfileList = 0x0000,
|
||||
/// <summary>
|
||||
/// Mandatory behaviour
|
||||
/// </summary>
|
||||
Core = 0x0001,
|
||||
/// <summary>
|
||||
/// Operational changes
|
||||
/// </summary>
|
||||
Morphing = 0x0002,
|
||||
/// <summary>
|
||||
/// Removable medium
|
||||
/// </summary>
|
||||
Removable = 0x0003,
|
||||
/// <summary>
|
||||
/// Ability to control write protection status
|
||||
/// </summary>
|
||||
WriteProtect = 0x0004,
|
||||
/// <summary>
|
||||
/// Ability to read sectors with random addressing
|
||||
/// </summary>
|
||||
RandomRead = 0x0010,
|
||||
/// <summary>
|
||||
/// Reads on OSTA Multi-Read
|
||||
/// </summary>
|
||||
MultiRead = 0x001D,
|
||||
/// <summary>
|
||||
/// Able to read CD structures
|
||||
/// </summary>
|
||||
CDRead = 0x001E,
|
||||
/// <summary>
|
||||
/// Able to read DVD structures
|
||||
/// </summary>
|
||||
DVDRead = 0x001F,
|
||||
/// <summary>
|
||||
/// Ability to write sectors with random addressing
|
||||
/// </summary>
|
||||
RandomWrite = 0x0020,
|
||||
/// <summary>
|
||||
/// Ability to sequentially write
|
||||
/// </summary>
|
||||
IncrementalWrite = 0x0021,
|
||||
/// <summary>
|
||||
/// Support for media that requires erase before write
|
||||
/// </summary>
|
||||
SectorErasable = 0x0022,
|
||||
/// <summary>
|
||||
/// Supports formatting media
|
||||
/// </summary>
|
||||
Formattable = 0x0023,
|
||||
/// <summary>
|
||||
/// Ability to provide defect-free space
|
||||
/// </summary>
|
||||
HardwareDefectMgmt = 0x0024,
|
||||
/// <summary>
|
||||
/// Supports for write-once media in random order
|
||||
/// </summary>
|
||||
WriteOnce = 0x0025,
|
||||
/// <summary>
|
||||
/// Supports for media that shall be written from blocking boundaries
|
||||
/// </summary>
|
||||
RestrictedOverwrite = 0x0026,
|
||||
/// <summary>
|
||||
/// Supports high speed CD-RW
|
||||
/// </summary>
|
||||
CDRWCAV = 0x0027,
|
||||
/// <summary>
|
||||
/// Read and optionally write MRW
|
||||
/// </summary>
|
||||
MRW = 0x0028,
|
||||
/// <summary>
|
||||
/// Ability to control RECOVERED ERROR reporting
|
||||
/// </summary>
|
||||
EnDefectReport = 0x0029,
|
||||
/// <summary>
|
||||
/// Ability to recognize, read and optionally write DVD+RW
|
||||
/// </summary>
|
||||
DVDRWPlus = 0x002A,
|
||||
/// <summary>
|
||||
/// Ability to read DVD+R
|
||||
/// </summary>
|
||||
DVDRPlus = 0x002B,
|
||||
/// <summary>
|
||||
/// Ability to write CD in Track-at-Once
|
||||
/// </summary>
|
||||
CDTAO = 0x002D,
|
||||
/// <summary>
|
||||
/// Ability to write CD in Session-at-Once or RAW
|
||||
/// </summary>
|
||||
CDMastering = 0x002E,
|
||||
/// <summary>
|
||||
/// Ability to write DVD structures
|
||||
/// </summary>
|
||||
DVDRWrite = 0x002F,
|
||||
/// <summary>
|
||||
/// Ability to read DDCD
|
||||
/// </summary>
|
||||
DDCD = 0x0030,
|
||||
/// <summary>
|
||||
/// Ability to write DDCD-R
|
||||
/// </summary>
|
||||
DDCDR = 0x0031,
|
||||
/// <summary>
|
||||
/// Ability to write DDCD-RW
|
||||
/// </summary>
|
||||
DDCDRW = 0x0032,
|
||||
/// <summary>
|
||||
/// Ability to record in layer jump mode
|
||||
/// </summary>
|
||||
LayerJump = 0x0033,
|
||||
/// <summary>
|
||||
/// Ability to perform Layer Jump recording on Rigid Restricted Overwrite
|
||||
/// </summary>
|
||||
LJRigid = 0x0034,
|
||||
/// <summary>
|
||||
/// Ability to stop the long immediate operation
|
||||
/// </summary>
|
||||
StopLong = 0x0035,
|
||||
/// <summary>
|
||||
/// Ability to report CD-RW media sub-types supported for write
|
||||
/// </summary>
|
||||
CDRWMediaWrite = 0x0037,
|
||||
/// <summary>
|
||||
/// Logical block overwrite service on BD-R formatted as SRM+POW
|
||||
/// </summary>
|
||||
BDRPOW = 0x0038,
|
||||
/// <summary>
|
||||
/// Ability to read DVD+RW DL
|
||||
/// </summary>
|
||||
DVDRWDLPlus = 0x003A,
|
||||
/// <summary>
|
||||
/// Ability to read DVD+R DL
|
||||
/// </summary>
|
||||
DVDRDLPlus = 0x003B,
|
||||
/// <summary>
|
||||
/// Ability to read BD discs
|
||||
/// </summary>
|
||||
BDRead = 0x0040,
|
||||
/// <summary>
|
||||
/// Ability to write BD discs
|
||||
/// </summary>
|
||||
BDWrite = 0x0041,
|
||||
/// <summary>
|
||||
/// Timely, Safe Recording
|
||||
/// </summary>
|
||||
TSR = 0x0042,
|
||||
/// <summary>
|
||||
/// Ability to read HD DVD
|
||||
/// </summary>
|
||||
HDDVDRead = 0x0050,
|
||||
/// <summary>
|
||||
/// Ability to write HD DVD
|
||||
/// </summary>
|
||||
HDDVDWrite = 0x0051,
|
||||
/// <summary>
|
||||
/// Ability to write HD DVD-RW fragmented
|
||||
/// </summary>
|
||||
HDDVDRWFragment = 0x0052,
|
||||
/// <summary>
|
||||
/// Supports some Hybrid Discs
|
||||
/// </summary>
|
||||
Hybrid = 0x0080,
|
||||
/// <summary>
|
||||
/// Host and device directed power management
|
||||
/// </summary>
|
||||
PowerMgmt = 0x0100,
|
||||
/// <summary>
|
||||
/// Supports S.M.A.R.T.
|
||||
/// </summary>
|
||||
SMART = 0x0101,
|
||||
/// <summary>
|
||||
/// Single machanism multiple disc changer
|
||||
/// </summary>
|
||||
Changer = 0x0102,
|
||||
/// <summary>
|
||||
/// Ability to play CD audio to an analogue output
|
||||
/// </summary>
|
||||
CDAudioExt = 0x0103,
|
||||
/// <summary>
|
||||
/// Ability to accept new microcode
|
||||
/// </summary>
|
||||
MicrocodeUpgrade = 0x0104,
|
||||
/// <summary>
|
||||
/// Ability to respond to all commands within a specific time
|
||||
/// </summary>
|
||||
Timeout = 0x0105,
|
||||
/// <summary>
|
||||
/// Supports DVD CSS/CPPM
|
||||
/// </summary>
|
||||
CSS = 0x0106,
|
||||
/// <summary>
|
||||
/// Ability to read and write using host requested performance parameters
|
||||
/// </summary>
|
||||
RTS = 0x0107,
|
||||
/// <summary>
|
||||
/// Drive has a unique identifier
|
||||
/// </summary>
|
||||
DriveSerial = 0x0108,
|
||||
/// <summary>
|
||||
/// Ability to return unique Media Serial Number
|
||||
/// </summary>
|
||||
MediaSerial = 0x0109,
|
||||
/// <summary>
|
||||
/// Ability to read and/or write DCBs
|
||||
/// </summary>
|
||||
DCBs = 0x010A,
|
||||
/// <summary>
|
||||
/// Supports DVD CPRM
|
||||
/// </summary>
|
||||
CPRM = 0x010B,
|
||||
/// <summary>
|
||||
/// Firmware creation date report
|
||||
/// </summary>
|
||||
FirmwareInfo = 0x010C,
|
||||
/// <summary>
|
||||
/// Ability to decode and optionally encode AACS
|
||||
/// </summary>
|
||||
AACS = 0x010D,
|
||||
/// <summary>
|
||||
/// Ability to perform DVD CSS managed recording
|
||||
/// </summary>
|
||||
CSSManagedRec = 0x010E,
|
||||
/// <summary>
|
||||
/// Ability to decode and optionally encode VCPS
|
||||
/// </summary>
|
||||
VCPS = 0x0110,
|
||||
/// <summary>
|
||||
/// Supports SecurDisc
|
||||
/// </summary>
|
||||
SecurDisc = 0x0113,
|
||||
/// <summary>
|
||||
/// TCG Optical Security Subsystem Class
|
||||
/// </summary>
|
||||
OSSC = 0x0142
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// MMC Profile enumeration
|
||||
/// </summary>
|
||||
public enum ScsiMmcProfileNumber : ushort
|
||||
{
|
||||
/// <summary>
|
||||
/// Not to use
|
||||
/// </summary>
|
||||
Reserved = 0x0000,
|
||||
/// <summary>
|
||||
/// Non-removable disk profile
|
||||
/// </summary>
|
||||
NonRemovable = 0x0001,
|
||||
/// <summary>
|
||||
/// Rewritable with removable media
|
||||
/// </summary>
|
||||
Removable = 0x0002,
|
||||
/// <summary>
|
||||
/// Magneto-Optical with sector erase
|
||||
/// </summary>
|
||||
MOErasable = 0x0003,
|
||||
/// <summary>
|
||||
/// Optical write once
|
||||
/// </summary>
|
||||
OpticalWORM = 0x0004,
|
||||
/// <summary>
|
||||
/// Advance Storage - Magneto-Optical
|
||||
/// </summary>
|
||||
ASMO = 0x0005,
|
||||
/// <summary>
|
||||
/// Read-only Compact Disc
|
||||
/// </summary>
|
||||
CDROM = 0x0008,
|
||||
/// <summary>
|
||||
/// Write-once Compact Disc
|
||||
/// </summary>
|
||||
CDR = 0x0009,
|
||||
/// <summary>
|
||||
/// Re-writable Compact Disc
|
||||
/// </summary>
|
||||
CDRW = 0x000A,
|
||||
/// <summary>
|
||||
/// Read-only DVD
|
||||
/// </summary>
|
||||
DVDROM = 0x0010,
|
||||
/// <summary>
|
||||
/// Write-once sequentially recorded DVD-R
|
||||
/// </summary>
|
||||
DVDRSeq = 0x0011,
|
||||
/// <summary>
|
||||
/// DVD-RAM
|
||||
/// </summary>
|
||||
DVDRAM = 0x0012,
|
||||
/// <summary>
|
||||
/// Restricted overwrite DVD-RW
|
||||
/// </summary>
|
||||
DVDRWRes = 0x0013,
|
||||
/// <summary>
|
||||
/// Sequential recording DVD-RW
|
||||
/// </summary>
|
||||
DVDRWSeq = 0x0014,
|
||||
/// <summary>
|
||||
/// Sequential recording DVD-R DL
|
||||
/// </summary>
|
||||
DVDRDLSeq = 0x0015,
|
||||
/// <summary>
|
||||
/// Layer jump recording DVD-R DL
|
||||
/// </summary>
|
||||
DVDRDLJump = 0x0016,
|
||||
/// <summary>
|
||||
/// DVD+RW DL
|
||||
/// </summary>
|
||||
DVDRWDL = 0x0017,
|
||||
/// <summary>
|
||||
/// DVD-Download
|
||||
/// </summary>
|
||||
DVDDownload = 0x0018,
|
||||
/// <summary>
|
||||
/// DVD+RW
|
||||
/// </summary>
|
||||
DVDRWPlus = 0x001A,
|
||||
/// <summary>
|
||||
/// DVD+R
|
||||
/// </summary>
|
||||
DVDRPlus = 0x001B,
|
||||
/// <summary>
|
||||
/// DDCD-ROM
|
||||
/// </summary>
|
||||
DDCDROM = 0x0020,
|
||||
/// <summary>
|
||||
/// DDCD-R
|
||||
/// </summary>
|
||||
DDCDR = 0x0021,
|
||||
/// <summary>
|
||||
/// DDCD-RW
|
||||
/// </summary>
|
||||
DDCDRW = 0x0022,
|
||||
/// <summary>
|
||||
/// DVD+RW DL
|
||||
/// </summary>
|
||||
DVDRWDLPlus = 0x002A,
|
||||
/// <summary>
|
||||
/// DVD+R DL
|
||||
/// </summary>
|
||||
DVDRDLPlus = 0x002B,
|
||||
/// <summary>
|
||||
/// BD-ROM
|
||||
/// </summary>
|
||||
BDROM = 0x0040,
|
||||
/// <summary>
|
||||
/// BD-R SRM
|
||||
/// </summary>
|
||||
BDRSeq = 0x0041,
|
||||
/// <summary>
|
||||
/// BD-R RRM
|
||||
/// </summary>
|
||||
BDRRdm = 0x0042,
|
||||
/// <summary>
|
||||
/// BD-RE
|
||||
/// </summary>
|
||||
BDRE = 0x0043,
|
||||
/// <summary>
|
||||
/// HD DVD-ROM
|
||||
/// </summary>
|
||||
HDDVDROM = 0x0050,
|
||||
/// <summary>
|
||||
/// HD DVD-R
|
||||
/// </summary>
|
||||
HDDVDR = 0x0051,
|
||||
/// <summary>
|
||||
/// HD DVD-RAM
|
||||
/// </summary>
|
||||
HDDVDRAM = 0x0052,
|
||||
/// <summary>
|
||||
/// HD DVD-RW
|
||||
/// </summary>
|
||||
HDDVDRW = 0x0053,
|
||||
/// <summary>
|
||||
/// HD DVD-R DL
|
||||
/// </summary>
|
||||
HDDVDRDL = 0x0058,
|
||||
/// <summary>
|
||||
/// HD DVD-RW DL
|
||||
/// </summary>
|
||||
HDDVDRWDL = 0x005A,
|
||||
/// <summary>
|
||||
/// Drive does not conform to any profiles
|
||||
/// </summary>
|
||||
Unconforming = 0xFFFF
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user