Added structures from MMC-6.

This commit is contained in:
2015-11-01 04:20:45 +00:00
parent dddb7da787
commit fc835c8bc3
2 changed files with 182 additions and 40 deletions

View File

@@ -1,3 +1,8 @@
2015-11-01 Natalia Portillo <claunia@claunia.com>
* SCSI/MMC/Features.cs:
Added structures from MMC-6.
2015-11-01 Natalia Portillo <claunia@claunia.com> 2015-11-01 Natalia Portillo <claunia@claunia.com>
* SCSI/MMC/Features.cs: * SCSI/MMC/Features.cs:

View File

@@ -597,6 +597,10 @@ namespace DiscImageChef.Decoders.SCSI.MMC
/// </summary> /// </summary>
public bool PreventJumper; public bool PreventJumper;
/// <summary> /// <summary>
/// Reports Device Busy Class events during medium loading/unloading
/// </summary>
public bool DBML;
/// <summary>
/// Medium is currently locked /// Medium is currently locked
/// </summary> /// </summary>
public bool Lock; public bool Lock;
@@ -620,6 +624,10 @@ namespace DiscImageChef.Decoders.SCSI.MMC
/// </summary> /// </summary>
public bool Current; public bool Current;
/// <summary> /// <summary>
/// Drive can read/write Disc Write Protect PAC on BD-R/-RE media
/// </summary>
public bool DWP;
/// <summary>
/// Supports reading/writing Write Inhibit DCB on DVD+RW media. /// Supports reading/writing Write Inhibit DCB on DVD+RW media.
/// </summary> /// </summary>
public bool WDCB; public bool WDCB;
@@ -736,6 +744,10 @@ namespace DiscImageChef.Decoders.SCSI.MMC
/// </summary> /// </summary>
public bool MULTI110; public bool MULTI110;
/// <summary> /// <summary>
/// Supports reading all DVD-RW DL
/// </summary>
public bool DualRW;
/// <summary>
/// Supports reading all DVD-R DL including remapping /// Supports reading all DVD-R DL including remapping
/// </summary> /// </summary>
public bool DualR; public bool DualR;
@@ -868,6 +880,10 @@ namespace DiscImageChef.Decoders.SCSI.MMC
/// </summary> /// </summary>
public bool Cert; public bool Cert;
/// <summary> /// <summary>
/// Supports FORMAT type 18h
/// </summary>
public bool FRF;
/// <summary>
/// Supports FORMAT type 00h/32h sub-type 10b on BD-R /// Supports FORMAT type 00h/32h sub-type 10b on BD-R
/// </summary> /// </summary>
public bool RRM; public bool RRM;
@@ -1338,6 +1354,25 @@ namespace DiscImageChef.Decoders.SCSI.MMC
public byte[] LinkSizes; public byte[] LinkSizes;
} }
/// <summary>
/// Stop Long Operation Feature (0035h)
/// </summary>
public struct Feature_0035
{
/// <summary>
/// Feature version
/// </summary>
public byte Version;
/// <summary>
/// Feature is persistent
/// </summary>
public bool Persistent;
/// <summary>
/// Feature is currently in use
/// </summary>
public bool Current;
}
/// <summary> /// <summary>
/// CD-RW Media Write Support Feature (0037h) /// CD-RW Media Write Support Feature (0037h)
/// </summary> /// </summary>
@@ -1459,30 +1494,38 @@ namespace DiscImageChef.Decoders.SCSI.MMC
/// Feature is currently in use /// Feature is currently in use
/// </summary> /// </summary>
public bool Current; public bool Current;
public byte Class0BDREMSB; /// <summary>
public byte Class0BDRELSB; /// Can read BCA
public byte Class1BDREMSB; /// </summary>
public byte Class1BDRELSB; public bool BCA;
public byte Class2BDREMSB; /// <summary>
public byte Class2BDRELSB; /// Supports reading BD-RE Ver.2
public byte Class3BDREMSB; /// </summary>
public byte Class3BDRELSB; public bool RE2;
public byte Class0BDRMSB; /// <summary>
public byte Class0BDRLSB; /// Supports reading BD-RE Ver.1
public byte Class1BDRMSB; /// </summary>
public byte Class1BDRLSB; public bool RE1;
public byte Class2BDRMSB; /// <summary>
public byte Class2BDRLSB; /// Obsolete
public byte Class3BDRMSB; /// </summary>
public byte Class3BDRLSB; public bool OldRE;
public byte Class0BDROMMSB; /// <summary>
public byte Class0BDROMLSB; /// Supports reading BD-R Ver.1
public byte Class1BDROMMSB; /// </summary>
public byte Class1BDROMLSB; public bool R;
public byte Class2BDROMMSB; /// <summary>
public byte Class2BDROMLSB; /// Obsolete
public byte Class3BDROMMSB; /// </summary>
public byte Class3BDROMLSB; public bool OldR;
/// <summary>
/// Supports reading BD-ROM Ver.1
/// </summary>
public bool ROM;
/// <summary>
/// Obsolete
/// </summary>
public bool OldROM;
} }
/// <summary> /// <summary>
@@ -1506,22 +1549,26 @@ namespace DiscImageChef.Decoders.SCSI.MMC
/// Supports verify not required /// Supports verify not required
/// </summary> /// </summary>
public bool SVNR; public bool SVNR;
public byte Class0BDREMSB; /// <summary>
public byte Class0BDRELSB; /// Supports writing BD-RE Ver.2
public byte Class1BDREMSB; /// </summary>
public byte Class1BDRELSB; public bool RE2;
public byte Class2BDREMSB; /// <summary>
public byte Class2BDRELSB; /// Supports writing BD-RE Ver.1
public byte Class3BDREMSB; /// </summary>
public byte Class3BDRELSB; public bool RE1;
public byte Class0BDRMSB; /// <summary>
public byte Class0BDRLSB; /// Obsolete
public byte Class1BDRMSB; /// </summary>
public byte Class1BDRLSB; public bool OldRE;
public byte Class2BDRMSB; /// <summary>
public byte Class2BDRLSB; /// Supports writing BD-R Ver.1
public byte Class3BDRMSB; /// </summary>
public byte Class3BDRLSB; public bool R;
/// <summary>
/// Obsolete
/// </summary>
public bool OldR;
} }
/// <summary> /// <summary>
@@ -1970,6 +2017,22 @@ namespace DiscImageChef.Decoders.SCSI.MMC
/// </summary> /// </summary>
public bool Current; public bool Current;
/// <summary> /// <summary>
/// Drive supports reading drive certificate
/// </summary>
public bool RDC;
/// <summary>
/// Drive can read media key block of CPRM
/// </summary>
public bool RMC;
/// <summary>
/// Drive can write bus encrypted blocks
/// </summary>
public bool WBE;
/// <summary>
/// Drive supports bus encryption
/// </summary>
public bool BCE;
/// <summary>
/// Drive supports generating the binding nonce /// Drive supports generating the binding nonce
/// </summary> /// </summary>
public bool BNG; public bool BNG;
@@ -1987,6 +2050,80 @@ namespace DiscImageChef.Decoders.SCSI.MMC
public byte AACSVersion; public byte AACSVersion;
} }
/// <summary>
/// DVD CSS Managed Recording Feature (010Eh)
/// </summary>
public struct Feature_010E
{
/// <summary>
/// Feature version
/// </summary>
public byte Version;
/// <summary>
/// Feature is persistent
/// </summary>
public bool Persistent;
/// <summary>
/// Feature is currently in use
/// </summary>
public bool Current;
/// <summary>
/// Maximum number of Scramble Extent information entries in a single SEND DISC STRUCTURE
/// </summary>
public byte MaxScrambleExtent;
}
/// <summary>
/// SecurDisc Feature (0113h)
/// </summary>
public struct Feature_0113
{
/// <summary>
/// Feature version
/// </summary>
public byte Version;
/// <summary>
/// Feature is persistent
/// </summary>
public bool Persistent;
/// <summary>
/// Feature is currently in use
/// </summary>
public bool Current;
}
/// <summary>
/// OSSC Feature (0142h)
/// </summary>
public struct Feature_0142
{
/// <summary>
/// Feature version
/// </summary>
public byte Version;
/// <summary>
/// Feature is persistent
/// </summary>
public bool Persistent;
/// <summary>
/// Feature is currently in use
/// </summary>
public bool Current;
/// <summary>
/// Supports PSA updates on write-once media
/// </summary>
public bool PSAU;
/// <summary>
/// Supports linked OSPBs
/// </summary>
public bool LOSPB;
/// <summary>
/// Restricted to recording only OSSC disc format
/// </summary>
public bool ME;
public ushort[] Profiles;
}
/// <summary> /// <summary>
/// VCPS Feature (0110h) /// VCPS Feature (0110h)
/// </summary> /// </summary>