mirror of
https://github.com/aaru-dps/Aaru.Server.git
synced 2025-12-16 19:24:27 +00:00
Added MMC features and profiles enumerations.
This commit is contained in:
@@ -1,3 +1,8 @@
|
|||||||
|
2015-11-01 Natalia Portillo <claunia@claunia.com>
|
||||||
|
|
||||||
|
* Enums.cs:
|
||||||
|
Added MMC features and profiles enumerations.
|
||||||
|
|
||||||
2015-10-31 Natalia Portillo <claunia@claunia.com>
|
2015-10-31 Natalia Portillo <claunia@claunia.com>
|
||||||
|
|
||||||
* Device/ScsiCommands.cs:
|
* Device/ScsiCommands.cs:
|
||||||
|
|||||||
@@ -2743,5 +2743,399 @@ namespace DiscImageChef.Devices
|
|||||||
[Obsolete]
|
[Obsolete]
|
||||||
PreventAll = 0x03
|
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