mirror of
https://github.com/aaru-dps/Aaru.CommonTypes.git
synced 2025-12-16 11:14:29 +00:00
[Aaru.CommonTypes] Reformat and cleanup.
This commit is contained in:
2480
.editorconfig
2480
.editorconfig
File diff suppressed because it is too large
Load Diff
@@ -45,7 +45,7 @@
|
||||
<PackageReference Include="Macross.Json.Extensions" Version="3.0.0"/>
|
||||
<PackageReference Include="System.ComponentModel.Annotations" Version="6.0.0-preview.4.21253.7"/>
|
||||
<PackageReference Include="System.Security.Principal.Windows" Version="6.0.0-preview.5.21301.5"/>
|
||||
<PackageReference Include="System.Text.Json" Version="8.0.0-rc.1.23419.4" />
|
||||
<PackageReference Include="System.Text.Json" Version="8.0.0-rc.1.23419.4"/>
|
||||
<PackageReference Include="System.ValueTuple" Version="4.5.0"/>
|
||||
<PackageReference Include="Unclassified.NetRevisionTask" Version="0.4.3" PrivateAssets="all"/>
|
||||
</ItemGroup>
|
||||
|
||||
@@ -2,6 +2,6 @@
|
||||
xmlns:s="clr-namespace:System;assembly=mscorlib"
|
||||
xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xml:space="preserve">
|
||||
<s:Boolean
|
||||
x:Key="/Default/CodeInspection/NamespaceProvider/NamespaceFoldersToSkip/=localization/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean
|
||||
x:Key="/Default/CodeInspection/NamespaceProvider/NamespaceFoldersToSkip/=mediatypefromdevice/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>
|
||||
x:Key="/Default/CodeInspection/NamespaceProvider/NamespaceFoldersToSkip/=localization/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean
|
||||
x:Key="/Default/CodeInspection/NamespaceProvider/NamespaceFoldersToSkip/=mediatypefromdevice/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>
|
||||
@@ -49,8 +49,10 @@ public class ATA
|
||||
public Dump Identify { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator ATA(ATAType cicm) => cicm is null ? null : new ATA
|
||||
{
|
||||
Identify = cicm.Identify
|
||||
};
|
||||
}
|
||||
public static implicit operator ATA(ATAType cicm) => cicm is null
|
||||
? null
|
||||
: new ATA
|
||||
{
|
||||
Identify = cicm.Identify
|
||||
};
|
||||
}
|
||||
@@ -114,4 +114,4 @@ public class Advertisement
|
||||
|
||||
return adv;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -47,33 +47,83 @@ namespace Aaru.CommonTypes.AaruMetadata;
|
||||
public enum Architecture
|
||||
{
|
||||
[JsonPropertyName("4004")]
|
||||
_4004, [JsonPropertyName("4040")]
|
||||
_4040, [JsonPropertyName("6502")]
|
||||
_6502, [JsonPropertyName("65816")]
|
||||
_65816, [JsonPropertyName("8008")]
|
||||
_8008, [JsonPropertyName("8051")]
|
||||
_8051, [JsonPropertyName("8080")]
|
||||
_8080, [JsonPropertyName("8085")]
|
||||
_8085, Aarch64, Am29000, Amd64,
|
||||
Apx432, Arm, Avr,
|
||||
Avr32, Axp, Clipper,
|
||||
Cray, Esa390, Hobbit,
|
||||
I86, I860, I960,
|
||||
Ia32, Ia64, M56K,
|
||||
M6800, M6801, M6805,
|
||||
M6809, M68K, M88K,
|
||||
Mcs41, Mcs48, Mips32,
|
||||
Mips64, Msp430, Nios2,
|
||||
Openrisc, Parisc, PDP1,
|
||||
PDP10, PDP11, PDP7,
|
||||
PDP8, Pic, Power,
|
||||
Ppc, Ppc64, Prism,
|
||||
Renesasrx, Riscv, S360,
|
||||
S370, Sh, Sh1,
|
||||
Sh2, Sh3, Sh4,
|
||||
Sh5, Sh64, Sparc,
|
||||
Sparc64, Transputer, Vax,
|
||||
We32000, X32, Z80,
|
||||
Z800, Z8000, Z80000,
|
||||
_4004,
|
||||
[JsonPropertyName("4040")]
|
||||
_4040,
|
||||
[JsonPropertyName("6502")]
|
||||
_6502,
|
||||
[JsonPropertyName("65816")]
|
||||
_65816,
|
||||
[JsonPropertyName("8008")]
|
||||
_8008,
|
||||
[JsonPropertyName("8051")]
|
||||
_8051,
|
||||
[JsonPropertyName("8080")]
|
||||
_8080,
|
||||
[JsonPropertyName("8085")]
|
||||
_8085,
|
||||
Aarch64,
|
||||
Am29000,
|
||||
Amd64,
|
||||
Apx432,
|
||||
Arm,
|
||||
Avr,
|
||||
Avr32,
|
||||
Axp,
|
||||
Clipper,
|
||||
Cray,
|
||||
Esa390,
|
||||
Hobbit,
|
||||
I86,
|
||||
I860,
|
||||
I960,
|
||||
Ia32,
|
||||
Ia64,
|
||||
M56K,
|
||||
M6800,
|
||||
M6801,
|
||||
M6805,
|
||||
M6809,
|
||||
M68K,
|
||||
M88K,
|
||||
Mcs41,
|
||||
Mcs48,
|
||||
Mips32,
|
||||
Mips64,
|
||||
Msp430,
|
||||
Nios2,
|
||||
Openrisc,
|
||||
Parisc,
|
||||
PDP1,
|
||||
PDP10,
|
||||
PDP11,
|
||||
PDP7,
|
||||
PDP8,
|
||||
Pic,
|
||||
Power,
|
||||
Ppc,
|
||||
Ppc64,
|
||||
Prism,
|
||||
Renesasrx,
|
||||
Riscv,
|
||||
S360,
|
||||
S370,
|
||||
Sh,
|
||||
Sh1,
|
||||
Sh2,
|
||||
Sh3,
|
||||
Sh4,
|
||||
Sh5,
|
||||
Sh64,
|
||||
Sparc,
|
||||
Sparc64,
|
||||
Transputer,
|
||||
Vax,
|
||||
We32000,
|
||||
X32,
|
||||
Z80,
|
||||
Z800,
|
||||
Z8000,
|
||||
Z80000,
|
||||
Zarch
|
||||
}
|
||||
}
|
||||
@@ -143,4 +143,4 @@ public class AudioBlock
|
||||
|
||||
return blk;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -93,6 +93,7 @@ public class VideoTrack
|
||||
public uint Horizontal { get; set; }
|
||||
public uint Vertical { get; set; }
|
||||
public long MeanBitrate { get; set; }
|
||||
|
||||
[JsonPropertyName("3D")]
|
||||
public bool ThreeD { get; set; }
|
||||
|
||||
@@ -196,69 +197,137 @@ public class Coordinates
|
||||
public double Longitude { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Coordinates(CoordinatesType cicm) => cicm is null ? null : new Coordinates
|
||||
{
|
||||
Latitude = cicm.Latitude,
|
||||
Longitude = cicm.Longitude
|
||||
};
|
||||
public static implicit operator Coordinates(CoordinatesType cicm) => cicm is null
|
||||
? null
|
||||
: new Coordinates
|
||||
{
|
||||
Latitude = cicm.Latitude,
|
||||
Longitude = cicm.Longitude
|
||||
};
|
||||
}
|
||||
|
||||
[JsonConverter(typeof(JsonStringEnumMemberConverter)), SuppressMessage("ReSharper", "InconsistentNaming")]
|
||||
[JsonConverter(typeof(JsonStringEnumMemberConverter))]
|
||||
[SuppressMessage("ReSharper", "InconsistentNaming")]
|
||||
public enum SourceFormat
|
||||
{
|
||||
[JsonPropertyName("ITU-A")]
|
||||
ITUA, [JsonPropertyName("ITU-B")]
|
||||
ITUB, [JsonPropertyName("ITU-C")]
|
||||
ITUC, [JsonPropertyName("ITU-D")]
|
||||
ITUD, [JsonPropertyName("ITU-E")]
|
||||
ITUE, [JsonPropertyName("ITU-F")]
|
||||
ITUF, [JsonPropertyName("ITU-G")]
|
||||
ITUG, [JsonPropertyName("ITU-H")]
|
||||
ITUH, [JsonPropertyName("ITU-I")]
|
||||
ITUI, [JsonPropertyName("ITU-J")]
|
||||
ITUJ, [JsonPropertyName("ITU-K")]
|
||||
ITUK, [JsonPropertyName("ITU-L")]
|
||||
ITUL, [JsonPropertyName("ITU-M")]
|
||||
ITUM, [JsonPropertyName("ITU-N")]
|
||||
ITUN, [JsonPropertyName("PAL-B")]
|
||||
PALB, [JsonPropertyName("SECAM-B")]
|
||||
SECAMB, [JsonPropertyName("PAL-D")]
|
||||
PALD, [JsonPropertyName("SECAM-D")]
|
||||
SECAMD, [JsonPropertyName("PAL-G")]
|
||||
PALG, [JsonPropertyName("SECAM-G")]
|
||||
SECAMG, [JsonPropertyName("PAL-H")]
|
||||
PALH, [JsonPropertyName("PAL-I")]
|
||||
PALI, [JsonPropertyName("PAL-K")]
|
||||
PALK, [JsonPropertyName("SECAM-K")]
|
||||
SECAMK, [JsonPropertyName("NTSC-M")]
|
||||
NTSCM, [JsonPropertyName("PAL-N")]
|
||||
PALN, [JsonPropertyName("PAL-M")]
|
||||
PALM, [JsonPropertyName("SECAM-M")]
|
||||
SECAMM, MUSE, PALplus, FM,
|
||||
AM, COFDM, [JsonPropertyName("CAM-D")]
|
||||
CAMD, DAB, [JsonPropertyName("DAB+")]
|
||||
DAB1, DRM, [JsonPropertyName("DRM+")]
|
||||
DRM1, FMeXtra, ATSC, ATSC2,
|
||||
ATSC3, [JsonPropertyName("ATSC-M/H")]
|
||||
ATSCMH, [JsonPropertyName("DVB-T")]
|
||||
DVBT, [JsonPropertyName("DVB-T2")]
|
||||
DVBT2, [JsonPropertyName("DVB-S")]
|
||||
DVBS, [JsonPropertyName("DVB-S2")]
|
||||
DVBS2, [JsonPropertyName("DVB-S2X")]
|
||||
DVBS2X, [JsonPropertyName("DVB-C")]
|
||||
DVBC, [JsonPropertyName("DVB-C2")]
|
||||
DVBC2, [JsonPropertyName("DVB-H")]
|
||||
DVBH, [JsonPropertyName("DVB-NGH")]
|
||||
DVBNGH, [JsonPropertyName("DVB-SH")]
|
||||
DVBSH, [JsonPropertyName("ISDB-T")]
|
||||
ISDBT, [JsonPropertyName("ISDB-Tb")]
|
||||
ISDBTb, [JsonPropertyName("ISDB-S")]
|
||||
ISDBS, [JsonPropertyName("ISDB-C")]
|
||||
ISDBC, [JsonPropertyName("1seg")]
|
||||
Item1seg, DTMB, CCMB, [JsonPropertyName("T-DMB")]
|
||||
TDMB, [JsonPropertyName("S-DMB")]
|
||||
SDMB, IPTV, [JsonPropertyName("DVB-MT")]
|
||||
DVBMT, [JsonPropertyName("DVB-MC")]
|
||||
DVBMC, [JsonPropertyName("DVB-MS")]
|
||||
DVBMS, ADR, SDR
|
||||
}
|
||||
ITUA,
|
||||
[JsonPropertyName("ITU-B")]
|
||||
ITUB,
|
||||
[JsonPropertyName("ITU-C")]
|
||||
ITUC,
|
||||
[JsonPropertyName("ITU-D")]
|
||||
ITUD,
|
||||
[JsonPropertyName("ITU-E")]
|
||||
ITUE,
|
||||
[JsonPropertyName("ITU-F")]
|
||||
ITUF,
|
||||
[JsonPropertyName("ITU-G")]
|
||||
ITUG,
|
||||
[JsonPropertyName("ITU-H")]
|
||||
ITUH,
|
||||
[JsonPropertyName("ITU-I")]
|
||||
ITUI,
|
||||
[JsonPropertyName("ITU-J")]
|
||||
ITUJ,
|
||||
[JsonPropertyName("ITU-K")]
|
||||
ITUK,
|
||||
[JsonPropertyName("ITU-L")]
|
||||
ITUL,
|
||||
[JsonPropertyName("ITU-M")]
|
||||
ITUM,
|
||||
[JsonPropertyName("ITU-N")]
|
||||
ITUN,
|
||||
[JsonPropertyName("PAL-B")]
|
||||
PALB,
|
||||
[JsonPropertyName("SECAM-B")]
|
||||
SECAMB,
|
||||
[JsonPropertyName("PAL-D")]
|
||||
PALD,
|
||||
[JsonPropertyName("SECAM-D")]
|
||||
SECAMD,
|
||||
[JsonPropertyName("PAL-G")]
|
||||
PALG,
|
||||
[JsonPropertyName("SECAM-G")]
|
||||
SECAMG,
|
||||
[JsonPropertyName("PAL-H")]
|
||||
PALH,
|
||||
[JsonPropertyName("PAL-I")]
|
||||
PALI,
|
||||
[JsonPropertyName("PAL-K")]
|
||||
PALK,
|
||||
[JsonPropertyName("SECAM-K")]
|
||||
SECAMK,
|
||||
[JsonPropertyName("NTSC-M")]
|
||||
NTSCM,
|
||||
[JsonPropertyName("PAL-N")]
|
||||
PALN,
|
||||
[JsonPropertyName("PAL-M")]
|
||||
PALM,
|
||||
[JsonPropertyName("SECAM-M")]
|
||||
SECAMM,
|
||||
MUSE,
|
||||
PALplus,
|
||||
FM,
|
||||
AM,
|
||||
COFDM,
|
||||
[JsonPropertyName("CAM-D")]
|
||||
CAMD,
|
||||
DAB,
|
||||
[JsonPropertyName("DAB+")]
|
||||
DAB1,
|
||||
DRM,
|
||||
[JsonPropertyName("DRM+")]
|
||||
DRM1,
|
||||
FMeXtra,
|
||||
ATSC,
|
||||
ATSC2,
|
||||
ATSC3,
|
||||
[JsonPropertyName("ATSC-M/H")]
|
||||
ATSCMH,
|
||||
[JsonPropertyName("DVB-T")]
|
||||
DVBT,
|
||||
[JsonPropertyName("DVB-T2")]
|
||||
DVBT2,
|
||||
[JsonPropertyName("DVB-S")]
|
||||
DVBS,
|
||||
[JsonPropertyName("DVB-S2")]
|
||||
DVBS2,
|
||||
[JsonPropertyName("DVB-S2X")]
|
||||
DVBS2X,
|
||||
[JsonPropertyName("DVB-C")]
|
||||
DVBC,
|
||||
[JsonPropertyName("DVB-C2")]
|
||||
DVBC2,
|
||||
[JsonPropertyName("DVB-H")]
|
||||
DVBH,
|
||||
[JsonPropertyName("DVB-NGH")]
|
||||
DVBNGH,
|
||||
[JsonPropertyName("DVB-SH")]
|
||||
DVBSH,
|
||||
[JsonPropertyName("ISDB-T")]
|
||||
ISDBT,
|
||||
[JsonPropertyName("ISDB-Tb")]
|
||||
ISDBTb,
|
||||
[JsonPropertyName("ISDB-S")]
|
||||
ISDBS,
|
||||
[JsonPropertyName("ISDB-C")]
|
||||
ISDBC,
|
||||
[JsonPropertyName("1seg")]
|
||||
Item1seg,
|
||||
DTMB,
|
||||
CCMB,
|
||||
[JsonPropertyName("T-DMB")]
|
||||
TDMB,
|
||||
[JsonPropertyName("S-DMB")]
|
||||
SDMB,
|
||||
IPTV,
|
||||
[JsonPropertyName("DVB-MT")]
|
||||
DVBMT,
|
||||
[JsonPropertyName("DVB-MC")]
|
||||
DVBMC,
|
||||
[JsonPropertyName("DVB-MS")]
|
||||
DVBMS,
|
||||
ADR,
|
||||
SDR
|
||||
}
|
||||
@@ -47,15 +47,33 @@ namespace Aaru.CommonTypes.AaruMetadata;
|
||||
[JsonConverter(typeof(JsonStringEnumMemberConverter))]
|
||||
public enum BarcodeType
|
||||
{
|
||||
Aztec, Codabar, Code11,
|
||||
Code128, Code39, Code93,
|
||||
CPC_Binary, EZcode, FIM,
|
||||
ITF, ITF14, EAN13,
|
||||
EAN8, MaxiCode, ISBN,
|
||||
ISRC, MSI, ShotCode,
|
||||
RM4SCC, QR, EAN5,
|
||||
EAN2, POSTNET, PostBar,
|
||||
Plessey, Pharmacode, PDF417,
|
||||
Aztec,
|
||||
Codabar,
|
||||
Code11,
|
||||
Code128,
|
||||
Code39,
|
||||
Code93,
|
||||
CPC_Binary,
|
||||
EZcode,
|
||||
FIM,
|
||||
ITF,
|
||||
ITF14,
|
||||
EAN13,
|
||||
EAN8,
|
||||
MaxiCode,
|
||||
ISBN,
|
||||
ISRC,
|
||||
MSI,
|
||||
ShotCode,
|
||||
RM4SCC,
|
||||
QR,
|
||||
EAN5,
|
||||
EAN2,
|
||||
POSTNET,
|
||||
PostBar,
|
||||
Plessey,
|
||||
Pharmacode,
|
||||
PDF417,
|
||||
PatchCode
|
||||
}
|
||||
|
||||
@@ -65,9 +83,11 @@ public class Barcode
|
||||
public string Value { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Barcode(Schemas.BarcodeType cicm) => cicm is null ? null : new Barcode
|
||||
{
|
||||
Type = (BarcodeType)cicm.type,
|
||||
Value = cicm.Value
|
||||
};
|
||||
}
|
||||
public static implicit operator Barcode(Schemas.BarcodeType cicm) => cicm is null
|
||||
? null
|
||||
: new Barcode
|
||||
{
|
||||
Type = (BarcodeType)cicm.type,
|
||||
Value = cicm.Value
|
||||
};
|
||||
}
|
||||
@@ -217,4 +217,4 @@ public class BlockTrack
|
||||
|
||||
return trk;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -94,4 +94,4 @@ public class Book
|
||||
|
||||
return book;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -50,23 +50,42 @@ public class Checksum
|
||||
public string Value { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Checksum(Schemas.ChecksumType cicm) => cicm is null ? null : new Checksum
|
||||
{
|
||||
Value = cicm.Value,
|
||||
Type = (ChecksumType)cicm.type
|
||||
};
|
||||
public static implicit operator Checksum(Schemas.ChecksumType cicm) => cicm is null
|
||||
? null
|
||||
: new Checksum
|
||||
{
|
||||
Value = cicm.Value,
|
||||
Type = (ChecksumType)cicm.type
|
||||
};
|
||||
}
|
||||
|
||||
[JsonConverter(typeof(JsonStringEnumMemberConverter))]
|
||||
public enum ChecksumType
|
||||
{
|
||||
Fletcher16, Fletcher32, Adler32,
|
||||
CRC16, CRC16Ccitt, CRC32,
|
||||
CRC64, Md4, Md5,
|
||||
Dm6, Ripemd128, Ripemd160,
|
||||
Ripemed320, Sha1, Sha224,
|
||||
Sha256, Sha384, Sha512,
|
||||
Sha3, Skein, Snefru,
|
||||
Blake256, Blake512, Tiger,
|
||||
Whirlpool, SpamSum
|
||||
}
|
||||
Fletcher16,
|
||||
Fletcher32,
|
||||
Adler32,
|
||||
CRC16,
|
||||
CRC16Ccitt,
|
||||
CRC32,
|
||||
CRC64,
|
||||
Md4,
|
||||
Md5,
|
||||
Dm6,
|
||||
Ripemd128,
|
||||
Ripemd160,
|
||||
Ripemed320,
|
||||
Sha1,
|
||||
Sha224,
|
||||
Sha256,
|
||||
Sha384,
|
||||
Sha512,
|
||||
Sha3,
|
||||
Skein,
|
||||
Snefru,
|
||||
Blake256,
|
||||
Blake512,
|
||||
Tiger,
|
||||
Whirlpool,
|
||||
SpamSum
|
||||
}
|
||||
@@ -234,4 +234,4 @@ public class Directory
|
||||
|
||||
return dir;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -52,13 +52,22 @@ public class Dimensions
|
||||
public double Thickness { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Dimensions(DimensionsType cicm) => cicm is null ? null : new Dimensions
|
||||
{
|
||||
Diameter = cicm.DiameterSpecified ? cicm.Diameter : null,
|
||||
Height = cicm.HeightSpecified ? cicm.Height : null,
|
||||
Width = cicm.WidthSpecified ? cicm.Width : null,
|
||||
Thickness = cicm.Thickness
|
||||
};
|
||||
public static implicit operator Dimensions(DimensionsType cicm) => cicm is null
|
||||
? null
|
||||
: new Dimensions
|
||||
{
|
||||
Diameter =
|
||||
cicm.DiameterSpecified
|
||||
? cicm.Diameter
|
||||
: null,
|
||||
Height = cicm.HeightSpecified
|
||||
? cicm.Height
|
||||
: null,
|
||||
Width = cicm.WidthSpecified
|
||||
? cicm.Width
|
||||
: null,
|
||||
Thickness = cicm.Thickness
|
||||
};
|
||||
|
||||
/// <summary>Gets the physical dimensions, in metadata expected format, for a given media type</summary>
|
||||
/// <param name="mediaType">Media type</param>
|
||||
@@ -69,7 +78,8 @@ public class Dimensions
|
||||
|
||||
switch(mediaType)
|
||||
{
|
||||
#region 5.25" floppy disk
|
||||
#region 5.25" floppy disk
|
||||
|
||||
case MediaType.Apple32SS:
|
||||
case MediaType.Apple32DS:
|
||||
case MediaType.Apple33SS:
|
||||
@@ -112,9 +122,11 @@ public class Dimensions
|
||||
dmns.Thickness = 1.65;
|
||||
|
||||
return dmns;
|
||||
#endregion 5.25" floppy disk
|
||||
|
||||
#region 3.5" floppy disk
|
||||
#endregion 5.25" floppy disk
|
||||
|
||||
#region 3.5" floppy disk
|
||||
|
||||
case MediaType.AppleSonySS:
|
||||
case MediaType.AppleSonyDS:
|
||||
case MediaType.DOS_35_SS_DD_8:
|
||||
@@ -147,9 +159,11 @@ public class Dimensions
|
||||
dmns.Thickness = 3.3;
|
||||
|
||||
return dmns;
|
||||
#endregion 3.5" floppy disk
|
||||
|
||||
#region 8" floppy disk
|
||||
#endregion 3.5" floppy disk
|
||||
|
||||
#region 8" floppy disk
|
||||
|
||||
case MediaType.IBM23FD:
|
||||
case MediaType.IBM33FD_128:
|
||||
case MediaType.IBM33FD_256:
|
||||
@@ -176,9 +190,11 @@ public class Dimensions
|
||||
dmns.Thickness = 1.65;
|
||||
|
||||
return dmns;
|
||||
#endregion 8" floppy disk
|
||||
|
||||
#region 356mm magneto optical
|
||||
#endregion 8" floppy disk
|
||||
|
||||
#region 356mm magneto optical
|
||||
|
||||
case MediaType.ECMA_260:
|
||||
case MediaType.ECMA_260_Double:
|
||||
// According to ECMA-260 et al
|
||||
@@ -189,9 +205,11 @@ public class Dimensions
|
||||
dmns.Thickness = 25.4;
|
||||
|
||||
return dmns;
|
||||
#endregion 356mm magneto optical
|
||||
|
||||
#region 300mm magneto optical
|
||||
#endregion 356mm magneto optical
|
||||
|
||||
#region 300mm magneto optical
|
||||
|
||||
case MediaType.ECMA_189:
|
||||
case MediaType.ECMA_190:
|
||||
case MediaType.ECMA_317:
|
||||
@@ -203,9 +221,11 @@ public class Dimensions
|
||||
dmns.Thickness = 17;
|
||||
|
||||
return dmns;
|
||||
#endregion 300mm magneto optical
|
||||
|
||||
#region 5.25" magneto optical
|
||||
#endregion 300mm magneto optical
|
||||
|
||||
#region 5.25" magneto optical
|
||||
|
||||
case MediaType.ECMA_153:
|
||||
case MediaType.ECMA_153_512:
|
||||
case MediaType.ECMA_183_512:
|
||||
@@ -238,9 +258,11 @@ public class Dimensions
|
||||
dmns.Thickness = 11;
|
||||
|
||||
return dmns;
|
||||
#endregion 5.25" magneto optical
|
||||
|
||||
#region 3.5" magneto optical
|
||||
#endregion 5.25" magneto optical
|
||||
|
||||
#region 3.5" magneto optical
|
||||
|
||||
case MediaType.ECMA_154:
|
||||
case MediaType.ECMA_201:
|
||||
case MediaType.ECMA_201_ROM:
|
||||
@@ -257,7 +279,8 @@ public class Dimensions
|
||||
dmns.Thickness = 6;
|
||||
|
||||
return dmns;
|
||||
#endregion 3.5" magneto optical
|
||||
|
||||
#endregion 3.5" magneto optical
|
||||
|
||||
case MediaType.PD650:
|
||||
case MediaType.PD650_WORM:
|
||||
@@ -983,7 +1006,8 @@ public class Dimensions
|
||||
|
||||
return dmns;
|
||||
|
||||
#region CD/DVD/BD
|
||||
#region CD/DVD/BD
|
||||
|
||||
case MediaType.CDDA:
|
||||
case MediaType.CDG:
|
||||
case MediaType.CDEG:
|
||||
@@ -1083,9 +1107,11 @@ public class Dimensions
|
||||
dmns.Thickness = 1.2;
|
||||
|
||||
return dmns;
|
||||
#endregion CD/DVD/BD
|
||||
|
||||
#region Apple Hard Disks
|
||||
#endregion CD/DVD/BD
|
||||
|
||||
#region Apple Hard Disks
|
||||
|
||||
// TODO: Find Apple Widget size
|
||||
case MediaType.AppleProfile:
|
||||
dmns.Height = 223.8;
|
||||
@@ -1103,7 +1129,8 @@ public class Dimensions
|
||||
dmns.Thickness = 78.7;
|
||||
|
||||
return dmns;
|
||||
#endregion Apple Hard Disks
|
||||
|
||||
#endregion Apple Hard Disks
|
||||
|
||||
case MediaType.UMD:
|
||||
dmns.Height = 64;
|
||||
@@ -1122,7 +1149,8 @@ public class Dimensions
|
||||
dmns.Thickness = 5.64;
|
||||
|
||||
return dmns;
|
||||
default: return null;
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -52,12 +52,14 @@ public class Image
|
||||
public string Value { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Image(ImageType cicm) => cicm is null ? null : new Image
|
||||
{
|
||||
Format = cicm.format,
|
||||
Offset = cicm.offsetSpecified ? cicm.offset : null,
|
||||
Value = cicm.Value
|
||||
};
|
||||
public static implicit operator Image(ImageType cicm) => cicm is null
|
||||
? null
|
||||
: new Image
|
||||
{
|
||||
Format = cicm.format,
|
||||
Offset = cicm.offsetSpecified ? cicm.offset : null,
|
||||
Value = cicm.Value
|
||||
};
|
||||
}
|
||||
|
||||
public class Dump
|
||||
@@ -128,11 +130,13 @@ public class File
|
||||
public string Value { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator File(FileType cicm) => cicm is null ? null : new File
|
||||
{
|
||||
Format = cicm.format,
|
||||
Value = cicm.Value
|
||||
};
|
||||
public static implicit operator File(FileType cicm) => cicm is null
|
||||
? null
|
||||
: new File
|
||||
{
|
||||
Format = cicm.format,
|
||||
Value = cicm.Value
|
||||
};
|
||||
}
|
||||
|
||||
public class BlockSize
|
||||
@@ -141,9 +145,11 @@ public class BlockSize
|
||||
public uint Value { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator BlockSize(BlockSizeType cicm) => cicm is null ? null : new BlockSize
|
||||
{
|
||||
StartingBlock = cicm.startingBlock,
|
||||
Value = cicm.Value
|
||||
};
|
||||
public static implicit operator BlockSize(BlockSizeType cicm) => cicm is null
|
||||
? null
|
||||
: new BlockSize
|
||||
{
|
||||
StartingBlock = cicm.startingBlock,
|
||||
Value = cicm.Value
|
||||
};
|
||||
}
|
||||
@@ -89,11 +89,13 @@ public class Extent
|
||||
public ulong End { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Extent(ExtentType cicm) => cicm is null ? null : new Extent
|
||||
{
|
||||
Start = cicm.Start,
|
||||
End = cicm.End
|
||||
};
|
||||
public static implicit operator Extent(ExtentType cicm) => cicm is null
|
||||
? null
|
||||
: new Extent
|
||||
{
|
||||
Start = cicm.Start,
|
||||
End = cicm.End
|
||||
};
|
||||
}
|
||||
|
||||
public class Software
|
||||
@@ -103,10 +105,12 @@ public class Software
|
||||
public string OperatingSystem { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Software(SoftwareType cicm) => cicm is null ? null : new Software
|
||||
{
|
||||
Name = cicm.Name,
|
||||
Version = cicm.Version,
|
||||
OperatingSystem = cicm.OperatingSystem
|
||||
};
|
||||
}
|
||||
public static implicit operator Software(SoftwareType cicm) => cicm is null
|
||||
? null
|
||||
: new Software
|
||||
{
|
||||
Name = cicm.Name,
|
||||
Version = cicm.Version,
|
||||
OperatingSystem = cicm.OperatingSystem
|
||||
};
|
||||
}
|
||||
@@ -68,27 +68,53 @@ public class FileSystem
|
||||
public FilesystemContents Contents { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator FileSystem(FileSystemType cicm) => cicm is null ? null : new FileSystem
|
||||
{
|
||||
Type = cicm.Type,
|
||||
CreationDate = cicm.CreationDateSpecified ? cicm.CreationDate : null,
|
||||
ModificationDate = cicm.ModificationDateSpecified ? cicm.ModificationDate : null,
|
||||
BackupDate = cicm.BackupDateSpecified ? cicm.BackupDate : null,
|
||||
ClusterSize = cicm.ClusterSize,
|
||||
Clusters = cicm.Clusters,
|
||||
Files = cicm.FilesSpecified ? cicm.Files : null,
|
||||
Bootable = cicm.Bootable,
|
||||
VolumeSerial = cicm.VolumeSerial,
|
||||
VolumeName = cicm.VolumeName,
|
||||
FreeClusters = cicm.FreeClustersSpecified ? cicm.FreeClusters : null,
|
||||
Dirty = cicm.Dirty,
|
||||
ExpirationDate = cicm.ExpirationDateSpecified ? cicm.ExpirationDate : null,
|
||||
EffectiveDate = cicm.EffectiveDateSpecified ? cicm.EffectiveDate : null,
|
||||
SystemIdentifier = cicm.SystemIdentifier,
|
||||
VolumeSetIdentifier = cicm.VolumeSetIdentifier,
|
||||
PublisherIdentifier = cicm.PublisherIdentifier,
|
||||
DataPreparerIdentifier = cicm.DataPreparerIdentifier,
|
||||
ApplicationIdentifier = cicm.ApplicationIdentifier,
|
||||
Contents = cicm.Contents
|
||||
};
|
||||
}
|
||||
public static implicit operator FileSystem(FileSystemType cicm) => cicm is null
|
||||
? null
|
||||
: new FileSystem
|
||||
{
|
||||
Type = cicm.Type,
|
||||
CreationDate =
|
||||
cicm.CreationDateSpecified
|
||||
? cicm.CreationDate
|
||||
: null,
|
||||
ModificationDate =
|
||||
cicm.ModificationDateSpecified
|
||||
? cicm.ModificationDate
|
||||
: null,
|
||||
BackupDate =
|
||||
cicm.BackupDateSpecified
|
||||
? cicm.BackupDate
|
||||
: null,
|
||||
ClusterSize = cicm.ClusterSize,
|
||||
Clusters = cicm.Clusters,
|
||||
Files = cicm.FilesSpecified
|
||||
? cicm.Files
|
||||
: null,
|
||||
Bootable = cicm.Bootable,
|
||||
VolumeSerial = cicm.VolumeSerial,
|
||||
VolumeName = cicm.VolumeName,
|
||||
FreeClusters =
|
||||
cicm.FreeClustersSpecified
|
||||
? cicm.FreeClusters
|
||||
: null,
|
||||
Dirty = cicm.Dirty,
|
||||
ExpirationDate =
|
||||
cicm.ExpirationDateSpecified
|
||||
? cicm.ExpirationDate
|
||||
: null,
|
||||
EffectiveDate =
|
||||
cicm.EffectiveDateSpecified
|
||||
? cicm.EffectiveDate
|
||||
: null,
|
||||
SystemIdentifier = cicm.SystemIdentifier,
|
||||
VolumeSetIdentifier =
|
||||
cicm.VolumeSetIdentifier,
|
||||
PublisherIdentifier =
|
||||
cicm.PublisherIdentifier,
|
||||
DataPreparerIdentifier =
|
||||
cicm.DataPreparerIdentifier,
|
||||
ApplicationIdentifier =
|
||||
cicm.ApplicationIdentifier,
|
||||
Contents = cicm.Contents
|
||||
};
|
||||
}
|
||||
@@ -44,170 +44,495 @@ using System.Text.Json.Serialization;
|
||||
|
||||
namespace Aaru.CommonTypes.AaruMetadata;
|
||||
|
||||
[JsonConverter(typeof(JsonStringEnumMemberConverter)), SuppressMessage("ReSharper", "InconsistentNaming")]
|
||||
[JsonConverter(typeof(JsonStringEnumMemberConverter))]
|
||||
[SuppressMessage("ReSharper", "InconsistentNaming")]
|
||||
public enum Language
|
||||
{
|
||||
aar, abk, ace,
|
||||
ach, ada, ady,
|
||||
afa, afh, afr,
|
||||
ain, aka, akk,
|
||||
alb, ale, alg,
|
||||
alt, amh, ang,
|
||||
anp, apa, ara,
|
||||
arc, arg, arm,
|
||||
arn, arp, art,
|
||||
arw, asm, ast,
|
||||
ath, aus, ava,
|
||||
ave, awa, aym,
|
||||
aze, bad, bai,
|
||||
bak, bal, bam,
|
||||
ban, baq, bas,
|
||||
bat, bej, bel,
|
||||
bem, ben, ber,
|
||||
bho, bih, bik,
|
||||
bin, bis, bla,
|
||||
bnt, bos, bra,
|
||||
bre, btk, bua,
|
||||
bug, bul, bur,
|
||||
byn, cad, cai,
|
||||
car, cat, cau,
|
||||
ceb, cel, cha,
|
||||
chb, che, chg,
|
||||
chi, chk, chm,
|
||||
chn, cho, chp,
|
||||
chr, chu, chv,
|
||||
chy, cmc, cop,
|
||||
cor, cos, cpe,
|
||||
cpf, cpp, cre,
|
||||
crh, crp, csb,
|
||||
cus, cze, dak,
|
||||
dan, dar, day,
|
||||
del, den, dgr,
|
||||
din, div, doi,
|
||||
dra, dsb, dua,
|
||||
dum, dut, dyu,
|
||||
dzo, efi, egy,
|
||||
eka, elx, eng,
|
||||
enm, epo, est,
|
||||
ewe, ewo, fan,
|
||||
fao, fat, fij,
|
||||
fil, fin, fiu,
|
||||
fon, fre, frm,
|
||||
fro, frr, frs,
|
||||
fry, ful, fur,
|
||||
gaa, gay, gba,
|
||||
gem, geo, ger,
|
||||
gez, gil, gla,
|
||||
gle, glg, glv,
|
||||
gmh, goh, gon,
|
||||
gor, got, grb,
|
||||
grc, gre, grn,
|
||||
gsw, guj, gwi,
|
||||
hai, hat, hau,
|
||||
haw, heb, her,
|
||||
hil, him, hin,
|
||||
hit, hmn, hmo,
|
||||
hrv, hsb, hun,
|
||||
hup, iba, ibo,
|
||||
ice, ido, iii,
|
||||
ijo, iku, ile,
|
||||
ilo, ina, inc,
|
||||
ind, ine, inh,
|
||||
ipk, ira, iro,
|
||||
ita, jav, jbo,
|
||||
jpn, jpr, jrb,
|
||||
kaa, kab, kac,
|
||||
kal, kam, kan,
|
||||
kar, kas, kau,
|
||||
kaw, kaz, kbd,
|
||||
kha, khi, khm,
|
||||
kho, kik, kin,
|
||||
kir, kmb, kok,
|
||||
kom, kon, kor,
|
||||
kos, kpe, krc,
|
||||
krl, kro, kru,
|
||||
kua, kum, kur,
|
||||
kut, lad, lah,
|
||||
lam, lao, lat,
|
||||
lav, lez, lim,
|
||||
lin, lit, lol,
|
||||
loz, ltz, lua,
|
||||
lub, lug, lui,
|
||||
lun, luo, lus,
|
||||
mac, mad, mag,
|
||||
mah, mai, mak,
|
||||
mal, man, mao,
|
||||
map, mar, mas,
|
||||
may, mdf, mdr,
|
||||
men, mga, mic,
|
||||
min, mis, mkh,
|
||||
mlg, mlt, mnc,
|
||||
mni, mno, moh,
|
||||
mon, mos, mul,
|
||||
mun, mus, mwl,
|
||||
mwr, myn, myv,
|
||||
nah, nai, nap,
|
||||
nau, nav, nbl,
|
||||
nde, ndo, nds,
|
||||
nep, @new, nia,
|
||||
nic, niu, nno,
|
||||
nob, nog, non,
|
||||
nor, nqo, nso,
|
||||
nub, nwc, nya,
|
||||
nym, nyn, nyo,
|
||||
nzi, oci, oji,
|
||||
ori, orm, osa,
|
||||
oss, ota, oto,
|
||||
paa, pag, pal,
|
||||
pam, pan, pap,
|
||||
pau, peo, per,
|
||||
phi, phn, pli,
|
||||
pol, pon, por,
|
||||
pra, pro, pus,
|
||||
aar,
|
||||
abk,
|
||||
ace,
|
||||
ach,
|
||||
ada,
|
||||
ady,
|
||||
afa,
|
||||
afh,
|
||||
afr,
|
||||
ain,
|
||||
aka,
|
||||
akk,
|
||||
alb,
|
||||
ale,
|
||||
alg,
|
||||
alt,
|
||||
amh,
|
||||
ang,
|
||||
anp,
|
||||
apa,
|
||||
ara,
|
||||
arc,
|
||||
arg,
|
||||
arm,
|
||||
arn,
|
||||
arp,
|
||||
art,
|
||||
arw,
|
||||
asm,
|
||||
ast,
|
||||
ath,
|
||||
aus,
|
||||
ava,
|
||||
ave,
|
||||
awa,
|
||||
aym,
|
||||
aze,
|
||||
bad,
|
||||
bai,
|
||||
bak,
|
||||
bal,
|
||||
bam,
|
||||
ban,
|
||||
baq,
|
||||
bas,
|
||||
bat,
|
||||
bej,
|
||||
bel,
|
||||
bem,
|
||||
ben,
|
||||
ber,
|
||||
bho,
|
||||
bih,
|
||||
bik,
|
||||
bin,
|
||||
bis,
|
||||
bla,
|
||||
bnt,
|
||||
bos,
|
||||
bra,
|
||||
bre,
|
||||
btk,
|
||||
bua,
|
||||
bug,
|
||||
bul,
|
||||
bur,
|
||||
byn,
|
||||
cad,
|
||||
cai,
|
||||
car,
|
||||
cat,
|
||||
cau,
|
||||
ceb,
|
||||
cel,
|
||||
cha,
|
||||
chb,
|
||||
che,
|
||||
chg,
|
||||
chi,
|
||||
chk,
|
||||
chm,
|
||||
chn,
|
||||
cho,
|
||||
chp,
|
||||
chr,
|
||||
chu,
|
||||
chv,
|
||||
chy,
|
||||
cmc,
|
||||
cop,
|
||||
cor,
|
||||
cos,
|
||||
cpe,
|
||||
cpf,
|
||||
cpp,
|
||||
cre,
|
||||
crh,
|
||||
crp,
|
||||
csb,
|
||||
cus,
|
||||
cze,
|
||||
dak,
|
||||
dan,
|
||||
dar,
|
||||
day,
|
||||
del,
|
||||
den,
|
||||
dgr,
|
||||
din,
|
||||
div,
|
||||
doi,
|
||||
dra,
|
||||
dsb,
|
||||
dua,
|
||||
dum,
|
||||
dut,
|
||||
dyu,
|
||||
dzo,
|
||||
efi,
|
||||
egy,
|
||||
eka,
|
||||
elx,
|
||||
eng,
|
||||
enm,
|
||||
epo,
|
||||
est,
|
||||
ewe,
|
||||
ewo,
|
||||
fan,
|
||||
fao,
|
||||
fat,
|
||||
fij,
|
||||
fil,
|
||||
fin,
|
||||
fiu,
|
||||
fon,
|
||||
fre,
|
||||
frm,
|
||||
fro,
|
||||
frr,
|
||||
frs,
|
||||
fry,
|
||||
ful,
|
||||
fur,
|
||||
gaa,
|
||||
gay,
|
||||
gba,
|
||||
gem,
|
||||
geo,
|
||||
ger,
|
||||
gez,
|
||||
gil,
|
||||
gla,
|
||||
gle,
|
||||
glg,
|
||||
glv,
|
||||
gmh,
|
||||
goh,
|
||||
gon,
|
||||
gor,
|
||||
got,
|
||||
grb,
|
||||
grc,
|
||||
gre,
|
||||
grn,
|
||||
gsw,
|
||||
guj,
|
||||
gwi,
|
||||
hai,
|
||||
hat,
|
||||
hau,
|
||||
haw,
|
||||
heb,
|
||||
her,
|
||||
hil,
|
||||
him,
|
||||
hin,
|
||||
hit,
|
||||
hmn,
|
||||
hmo,
|
||||
hrv,
|
||||
hsb,
|
||||
hun,
|
||||
hup,
|
||||
iba,
|
||||
ibo,
|
||||
ice,
|
||||
ido,
|
||||
iii,
|
||||
ijo,
|
||||
iku,
|
||||
ile,
|
||||
ilo,
|
||||
ina,
|
||||
inc,
|
||||
ind,
|
||||
ine,
|
||||
inh,
|
||||
ipk,
|
||||
ira,
|
||||
iro,
|
||||
ita,
|
||||
jav,
|
||||
jbo,
|
||||
jpn,
|
||||
jpr,
|
||||
jrb,
|
||||
kaa,
|
||||
kab,
|
||||
kac,
|
||||
kal,
|
||||
kam,
|
||||
kan,
|
||||
kar,
|
||||
kas,
|
||||
kau,
|
||||
kaw,
|
||||
kaz,
|
||||
kbd,
|
||||
kha,
|
||||
khi,
|
||||
khm,
|
||||
kho,
|
||||
kik,
|
||||
kin,
|
||||
kir,
|
||||
kmb,
|
||||
kok,
|
||||
kom,
|
||||
kon,
|
||||
kor,
|
||||
kos,
|
||||
kpe,
|
||||
krc,
|
||||
krl,
|
||||
kro,
|
||||
kru,
|
||||
kua,
|
||||
kum,
|
||||
kur,
|
||||
kut,
|
||||
lad,
|
||||
lah,
|
||||
lam,
|
||||
lao,
|
||||
lat,
|
||||
lav,
|
||||
lez,
|
||||
lim,
|
||||
lin,
|
||||
lit,
|
||||
lol,
|
||||
loz,
|
||||
ltz,
|
||||
lua,
|
||||
lub,
|
||||
lug,
|
||||
lui,
|
||||
lun,
|
||||
luo,
|
||||
lus,
|
||||
mac,
|
||||
mad,
|
||||
mag,
|
||||
mah,
|
||||
mai,
|
||||
mak,
|
||||
mal,
|
||||
man,
|
||||
mao,
|
||||
map,
|
||||
mar,
|
||||
mas,
|
||||
may,
|
||||
mdf,
|
||||
mdr,
|
||||
men,
|
||||
mga,
|
||||
mic,
|
||||
min,
|
||||
mis,
|
||||
mkh,
|
||||
mlg,
|
||||
mlt,
|
||||
mnc,
|
||||
mni,
|
||||
mno,
|
||||
moh,
|
||||
mon,
|
||||
mos,
|
||||
mul,
|
||||
mun,
|
||||
mus,
|
||||
mwl,
|
||||
mwr,
|
||||
myn,
|
||||
myv,
|
||||
nah,
|
||||
nai,
|
||||
nap,
|
||||
nau,
|
||||
nav,
|
||||
nbl,
|
||||
nde,
|
||||
ndo,
|
||||
nds,
|
||||
nep,
|
||||
@new,
|
||||
nia,
|
||||
nic,
|
||||
niu,
|
||||
nno,
|
||||
nob,
|
||||
nog,
|
||||
non,
|
||||
nor,
|
||||
nqo,
|
||||
nso,
|
||||
nub,
|
||||
nwc,
|
||||
nya,
|
||||
nym,
|
||||
nyn,
|
||||
nyo,
|
||||
nzi,
|
||||
oci,
|
||||
oji,
|
||||
ori,
|
||||
orm,
|
||||
osa,
|
||||
oss,
|
||||
ota,
|
||||
oto,
|
||||
paa,
|
||||
pag,
|
||||
pal,
|
||||
pam,
|
||||
pan,
|
||||
pap,
|
||||
pau,
|
||||
peo,
|
||||
per,
|
||||
phi,
|
||||
phn,
|
||||
pli,
|
||||
pol,
|
||||
pon,
|
||||
por,
|
||||
pra,
|
||||
pro,
|
||||
pus,
|
||||
[JsonPropertyName("qaa-qtz")]
|
||||
qaaqtz, que, raj, rap,
|
||||
rar, roa, roh,
|
||||
rom, rum, run,
|
||||
rup, rus, sad,
|
||||
sag, sah, sai,
|
||||
sal, sam, san,
|
||||
sas, sat, scn,
|
||||
sco, sel, sem,
|
||||
sga, sgn, shn,
|
||||
sid, sin, sio,
|
||||
sit, sla, slo,
|
||||
slv, sma, sme,
|
||||
smi, smj, smn,
|
||||
smo, sms, sna,
|
||||
snd, snk, sog,
|
||||
som, son, sot,
|
||||
spa, srd, srn,
|
||||
srp, srr, ssa,
|
||||
ssw, suk, sun,
|
||||
sus, sux, swa,
|
||||
swe, syc, syr,
|
||||
tah, tai, tam,
|
||||
tat, tel, tem,
|
||||
ter, tet, tgk,
|
||||
tgl, tha, tib,
|
||||
tig, tir, tiv,
|
||||
tkl, tlh, tli,
|
||||
tmh, tog, ton,
|
||||
tpi, tsi, tsn,
|
||||
tso, tuk, tum,
|
||||
tup, tur, tut,
|
||||
tvl, twi, tyv,
|
||||
udm, uga, uig,
|
||||
ukr, umb, und,
|
||||
urd, uzb, vai,
|
||||
ven, vie, vol,
|
||||
vot, wak, wal,
|
||||
war, was, wel,
|
||||
wen, wln, wol,
|
||||
xal, xho, yao,
|
||||
yap, yid, yor,
|
||||
ypk, zap, zbl,
|
||||
zen, zgh, zha,
|
||||
znd, zul, zun,
|
||||
zxx, zza
|
||||
qaaqtz,
|
||||
que,
|
||||
raj,
|
||||
rap,
|
||||
rar,
|
||||
roa,
|
||||
roh,
|
||||
rom,
|
||||
rum,
|
||||
run,
|
||||
rup,
|
||||
rus,
|
||||
sad,
|
||||
sag,
|
||||
sah,
|
||||
sai,
|
||||
sal,
|
||||
sam,
|
||||
san,
|
||||
sas,
|
||||
sat,
|
||||
scn,
|
||||
sco,
|
||||
sel,
|
||||
sem,
|
||||
sga,
|
||||
sgn,
|
||||
shn,
|
||||
sid,
|
||||
sin,
|
||||
sio,
|
||||
sit,
|
||||
sla,
|
||||
slo,
|
||||
slv,
|
||||
sma,
|
||||
sme,
|
||||
smi,
|
||||
smj,
|
||||
smn,
|
||||
smo,
|
||||
sms,
|
||||
sna,
|
||||
snd,
|
||||
snk,
|
||||
sog,
|
||||
som,
|
||||
son,
|
||||
sot,
|
||||
spa,
|
||||
srd,
|
||||
srn,
|
||||
srp,
|
||||
srr,
|
||||
ssa,
|
||||
ssw,
|
||||
suk,
|
||||
sun,
|
||||
sus,
|
||||
sux,
|
||||
swa,
|
||||
swe,
|
||||
syc,
|
||||
syr,
|
||||
tah,
|
||||
tai,
|
||||
tam,
|
||||
tat,
|
||||
tel,
|
||||
tem,
|
||||
ter,
|
||||
tet,
|
||||
tgk,
|
||||
tgl,
|
||||
tha,
|
||||
tib,
|
||||
tig,
|
||||
tir,
|
||||
tiv,
|
||||
tkl,
|
||||
tlh,
|
||||
tli,
|
||||
tmh,
|
||||
tog,
|
||||
ton,
|
||||
tpi,
|
||||
tsi,
|
||||
tsn,
|
||||
tso,
|
||||
tuk,
|
||||
tum,
|
||||
tup,
|
||||
tur,
|
||||
tut,
|
||||
tvl,
|
||||
twi,
|
||||
tyv,
|
||||
udm,
|
||||
uga,
|
||||
uig,
|
||||
ukr,
|
||||
umb,
|
||||
und,
|
||||
urd,
|
||||
uzb,
|
||||
vai,
|
||||
ven,
|
||||
vie,
|
||||
vol,
|
||||
vot,
|
||||
wak,
|
||||
wal,
|
||||
war,
|
||||
was,
|
||||
wel,
|
||||
wen,
|
||||
wln,
|
||||
wol,
|
||||
xal,
|
||||
xho,
|
||||
yao,
|
||||
yap,
|
||||
yid,
|
||||
yor,
|
||||
ypk,
|
||||
zap,
|
||||
zbl,
|
||||
zen,
|
||||
zgh,
|
||||
zha,
|
||||
znd,
|
||||
zul,
|
||||
zun,
|
||||
zxx,
|
||||
zza
|
||||
}
|
||||
@@ -75,10 +75,12 @@ public class Layers
|
||||
}
|
||||
}
|
||||
|
||||
[SuppressMessage("ReSharper", "InconsistentNaming"), JsonConverter(typeof(JsonStringEnumMemberConverter))]
|
||||
[SuppressMessage("ReSharper", "InconsistentNaming")]
|
||||
[JsonConverter(typeof(JsonStringEnumMemberConverter))]
|
||||
public enum LayerType
|
||||
{
|
||||
PTP, OTP
|
||||
PTP,
|
||||
OTP
|
||||
}
|
||||
|
||||
public class LayeredText
|
||||
@@ -87,11 +89,15 @@ public class LayeredText
|
||||
public string Text { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator LayeredText(LayeredTextType cicm) => cicm is null ? null : new LayeredText
|
||||
{
|
||||
Layer = cicm.layerSpecified ? cicm.layer : null,
|
||||
Text = cicm.Value
|
||||
};
|
||||
public static implicit operator LayeredText(LayeredTextType cicm) => cicm is null
|
||||
? null
|
||||
: new LayeredText
|
||||
{
|
||||
Layer = cicm.layerSpecified
|
||||
? cicm.layer
|
||||
: null,
|
||||
Text = cicm.Value
|
||||
};
|
||||
}
|
||||
|
||||
public class Sectors
|
||||
@@ -100,9 +106,12 @@ public class Sectors
|
||||
public ulong Value { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Sectors(SectorsType cicm) => cicm is null ? null : new Sectors
|
||||
{
|
||||
Layer = cicm.layerSpecified ? cicm.layer : null,
|
||||
Value = cicm.Value
|
||||
};
|
||||
}
|
||||
public static implicit operator Sectors(SectorsType cicm) => cicm is null
|
||||
? null
|
||||
: new Sectors
|
||||
{
|
||||
Layer =
|
||||
cicm.layerSpecified ? cicm.layer : null,
|
||||
Value = cicm.Value
|
||||
};
|
||||
}
|
||||
@@ -119,4 +119,4 @@ public class LinearMedia
|
||||
|
||||
return linearMedia;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -91,4 +91,4 @@ public class Magazine
|
||||
|
||||
return magazine;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -52,11 +52,13 @@ public class MultiMediaCard
|
||||
public Dump OCR { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator MultiMediaCard(MultiMediaCardType cicm) => cicm is null ? null : new MultiMediaCard
|
||||
{
|
||||
CSD = cicm.CSD,
|
||||
CID = cicm.CID,
|
||||
ExtendedCSD = cicm.ExtendedCSD,
|
||||
OCR = cicm.OCR
|
||||
};
|
||||
}
|
||||
public static implicit operator MultiMediaCard(MultiMediaCardType cicm) => cicm is null
|
||||
? null
|
||||
: new MultiMediaCard
|
||||
{
|
||||
CSD = cicm.CSD,
|
||||
CID = cicm.CID,
|
||||
ExtendedCSD = cicm.ExtendedCSD,
|
||||
OCR = cicm.OCR
|
||||
};
|
||||
}
|
||||
@@ -309,11 +309,13 @@ public class TrackSequence
|
||||
public uint Session { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator TrackSequence(TrackSequenceType cicm) => cicm is null ? null : new TrackSequence
|
||||
{
|
||||
Number = cicm.TrackNumber,
|
||||
Session = cicm.Session
|
||||
};
|
||||
public static implicit operator TrackSequence(TrackSequenceType cicm) => cicm is null
|
||||
? null
|
||||
: new TrackSequence
|
||||
{
|
||||
Number = cicm.TrackNumber,
|
||||
Session = cicm.Session
|
||||
};
|
||||
}
|
||||
|
||||
public class TrackIndex
|
||||
@@ -322,11 +324,13 @@ public class TrackIndex
|
||||
public int Value { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator TrackIndex(TrackIndexType cicm) => cicm is null ? null : new TrackIndex
|
||||
{
|
||||
Index = cicm.index,
|
||||
Value = cicm.Value
|
||||
};
|
||||
public static implicit operator TrackIndex(TrackIndexType cicm) => cicm is null
|
||||
? null
|
||||
: new TrackIndex
|
||||
{
|
||||
Index = cicm.index,
|
||||
Value = cicm.Value
|
||||
};
|
||||
}
|
||||
|
||||
public class TrackFlags
|
||||
@@ -337,21 +341,29 @@ public class TrackFlags
|
||||
public bool PreEmphasis { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator TrackFlags(TrackFlagsType cicm) => cicm is null ? null : new TrackFlags
|
||||
{
|
||||
CopyPermitted = cicm.CopyPermitted,
|
||||
Data = cicm.Data,
|
||||
PreEmphasis = cicm.PreEmphasis,
|
||||
Quadraphonic = cicm.Quadraphonic
|
||||
};
|
||||
public static implicit operator TrackFlags(TrackFlagsType cicm) => cicm is null
|
||||
? null
|
||||
: new TrackFlags
|
||||
{
|
||||
CopyPermitted = cicm.CopyPermitted,
|
||||
Data = cicm.Data,
|
||||
PreEmphasis = cicm.PreEmphasis,
|
||||
Quadraphonic = cicm.Quadraphonic
|
||||
};
|
||||
}
|
||||
|
||||
[JsonConverter(typeof(JsonStringEnumMemberConverter))]
|
||||
public enum TrackType
|
||||
{
|
||||
Audio, Mode0, Mode1,
|
||||
Mode2, Mode2Form1, Mode2Form2,
|
||||
Dvd, HdDvd, Bluray,
|
||||
Audio,
|
||||
Mode0,
|
||||
Mode1,
|
||||
Mode2,
|
||||
Mode2Form1,
|
||||
Mode2Form2,
|
||||
Dvd,
|
||||
HdDvd,
|
||||
Bluray,
|
||||
Ddcd
|
||||
}
|
||||
|
||||
@@ -383,4 +395,4 @@ public class SubChannel
|
||||
|
||||
return subchannel;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -55,11 +55,13 @@ public class Pci
|
||||
public LinearMedia ExpansionRom { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Pci(PCIType cicm) => cicm is null ? null : new Pci
|
||||
{
|
||||
VendorID = cicm.VendorID,
|
||||
DeviceID = cicm.DeviceID,
|
||||
Configuration = cicm.Configuration,
|
||||
ExpansionRom = cicm.ExpansionROM
|
||||
};
|
||||
}
|
||||
public static implicit operator Pci(PCIType cicm) => cicm is null
|
||||
? null
|
||||
: new Pci
|
||||
{
|
||||
VendorID = cicm.VendorID,
|
||||
DeviceID = cicm.DeviceID,
|
||||
Configuration = cicm.Configuration,
|
||||
ExpansionRom = cicm.ExpansionROM
|
||||
};
|
||||
}
|
||||
@@ -56,14 +56,25 @@ public class Pcmcia
|
||||
public List<string> AdditionalInformation { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Pcmcia(PCMCIAType cicm) => cicm is null ? null : new Pcmcia
|
||||
{
|
||||
Cis = cicm.CIS,
|
||||
Compliance = cicm.Compliance,
|
||||
ManufacturerCode = cicm.ManufacturerCodeSpecified ? cicm.ManufacturerCode : null,
|
||||
CardCode = cicm.CardCodeSpecified ? cicm.CardCode : null,
|
||||
Manufacturer = cicm.Manufacturer,
|
||||
ProductName = cicm.ProductName,
|
||||
AdditionalInformation = cicm.AdditionalInformation is null ? null : new List<string>(cicm.AdditionalInformation)
|
||||
};
|
||||
}
|
||||
public static implicit operator Pcmcia(PCMCIAType cicm) => cicm is null
|
||||
? null
|
||||
: new Pcmcia
|
||||
{
|
||||
Cis = cicm.CIS,
|
||||
Compliance = cicm.Compliance,
|
||||
ManufacturerCode =
|
||||
cicm.ManufacturerCodeSpecified
|
||||
? cicm.ManufacturerCode
|
||||
: null,
|
||||
CardCode = cicm.CardCodeSpecified
|
||||
? cicm.CardCode
|
||||
: null,
|
||||
Manufacturer = cicm.Manufacturer,
|
||||
ProductName = cicm.ProductName,
|
||||
AdditionalInformation =
|
||||
cicm.AdditionalInformation is null
|
||||
? null
|
||||
: new List<string>(
|
||||
cicm.AdditionalInformation)
|
||||
};
|
||||
}
|
||||
@@ -50,9 +50,11 @@ public class Ps3Encryption
|
||||
public string Serial { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Ps3Encryption(PS3EncryptionType cicm) => cicm is null ? null : new Ps3Encryption
|
||||
{
|
||||
Key = cicm.Key,
|
||||
Serial = cicm.Serial
|
||||
};
|
||||
}
|
||||
public static implicit operator Ps3Encryption(PS3EncryptionType cicm) => cicm is null
|
||||
? null
|
||||
: new Ps3Encryption
|
||||
{
|
||||
Key = cicm.Key,
|
||||
Serial = cicm.Serial
|
||||
};
|
||||
}
|
||||
@@ -81,4 +81,4 @@ public class Partition
|
||||
|
||||
return part;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -46,8 +46,16 @@ namespace Aaru.CommonTypes.AaruMetadata;
|
||||
[JsonConverter(typeof(JsonStringEnumMemberConverter))]
|
||||
public enum ReleaseType
|
||||
{
|
||||
Retail, Bundle, Coverdisc,
|
||||
Subscription, Demo, OEM,
|
||||
Shareware, FOSS, Adware,
|
||||
Donationware, DigitalDownload, SaaS
|
||||
}
|
||||
Retail,
|
||||
Bundle,
|
||||
Coverdisc,
|
||||
Subscription,
|
||||
Demo,
|
||||
OEM,
|
||||
Shareware,
|
||||
FOSS,
|
||||
Adware,
|
||||
Donationware,
|
||||
DigitalDownload,
|
||||
SaaS
|
||||
}
|
||||
@@ -52,9 +52,11 @@ public class RequiredOperatingSystem
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator RequiredOperatingSystem(RequiredOperatingSystemType cicm) =>
|
||||
cicm is null ? null : new RequiredOperatingSystem
|
||||
{
|
||||
Name = cicm.Name,
|
||||
Versions = cicm.Version is null ? null : new List<string>(cicm.Version)
|
||||
};
|
||||
}
|
||||
cicm is null
|
||||
? null
|
||||
: new RequiredOperatingSystem
|
||||
{
|
||||
Name = cicm.Name,
|
||||
Versions = cicm.Version is null ? null : new List<string>(cicm.Version)
|
||||
};
|
||||
}
|
||||
@@ -109,4 +109,4 @@ public class Evpd
|
||||
|
||||
return evpd;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -135,25 +135,45 @@ public class Case
|
||||
public Scans Scans { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Case(Schemas.CaseType cicm) => cicm is null ? null : new Case
|
||||
{
|
||||
Type = (CaseType)cicm.CaseType1,
|
||||
Scans = cicm.Scans
|
||||
};
|
||||
public static implicit operator Case(Schemas.CaseType cicm) => cicm is null
|
||||
? null
|
||||
: new Case
|
||||
{
|
||||
Type = (CaseType)cicm.CaseType1,
|
||||
Scans = cicm.Scans
|
||||
};
|
||||
}
|
||||
|
||||
[JsonConverter(typeof(JsonStringEnumMemberConverter))]
|
||||
public enum CaseType
|
||||
{
|
||||
Jewel, BigJewel, SlimJewel,
|
||||
Sleeve, Qpack, Digisleeve,
|
||||
DiscboxSlider, CompacPlus, KeepCase,
|
||||
SnapCase, SoftCase, EcoPack,
|
||||
Liftlock, Spindle, Ps2Case,
|
||||
Ps3Case, BlurayKeepCase, PsCase,
|
||||
DcCase, SaturnCase, XboxCase,
|
||||
Xbox360Case, XboxOneCase, SaturnBigCase,
|
||||
GcCase, WiiCase, Unknown
|
||||
Jewel,
|
||||
BigJewel,
|
||||
SlimJewel,
|
||||
Sleeve,
|
||||
Qpack,
|
||||
Digisleeve,
|
||||
DiscboxSlider,
|
||||
CompacPlus,
|
||||
KeepCase,
|
||||
SnapCase,
|
||||
SoftCase,
|
||||
EcoPack,
|
||||
Liftlock,
|
||||
Spindle,
|
||||
Ps2Case,
|
||||
Ps3Case,
|
||||
BlurayKeepCase,
|
||||
PsCase,
|
||||
DcCase,
|
||||
SaturnCase,
|
||||
XboxCase,
|
||||
Xbox360Case,
|
||||
XboxOneCase,
|
||||
SaturnBigCase,
|
||||
GcCase,
|
||||
WiiCase,
|
||||
Unknown
|
||||
}
|
||||
|
||||
public class Scans
|
||||
@@ -162,11 +182,13 @@ public class Scans
|
||||
public MediaScan Media { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Scans(ScansType cicm) => cicm is null ? null : new Scans
|
||||
{
|
||||
Case = cicm.CaseScan,
|
||||
Media = cicm.Scan
|
||||
};
|
||||
public static implicit operator Scans(ScansType cicm) => cicm is null
|
||||
? null
|
||||
: new Scans
|
||||
{
|
||||
Case = cicm.CaseScan,
|
||||
Media = cicm.Scan
|
||||
};
|
||||
}
|
||||
|
||||
public class CaseScan
|
||||
@@ -175,19 +197,28 @@ public class CaseScan
|
||||
public Scan Scan { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator CaseScan(CaseScanType cicm) => cicm is null ? null : new CaseScan
|
||||
{
|
||||
Element = (CaseScanElement)cicm.CaseScanElement,
|
||||
Scan = cicm.Scan
|
||||
};
|
||||
public static implicit operator CaseScan(CaseScanType cicm) => cicm is null
|
||||
? null
|
||||
: new CaseScan
|
||||
{
|
||||
Element = (CaseScanElement)cicm.
|
||||
CaseScanElement,
|
||||
Scan = cicm.Scan
|
||||
};
|
||||
}
|
||||
|
||||
[JsonConverter(typeof(JsonStringEnumMemberConverter))]
|
||||
public enum CaseScanElement
|
||||
{
|
||||
Sleeve, Inner, Inlay,
|
||||
FrontBack, FrontFull, BoxFront,
|
||||
BoxBack, BoxSpine, External
|
||||
Sleeve,
|
||||
Inner,
|
||||
Inlay,
|
||||
FrontBack,
|
||||
FrontFull,
|
||||
BoxFront,
|
||||
BoxBack,
|
||||
BoxSpine,
|
||||
External
|
||||
}
|
||||
|
||||
public class MediaScan
|
||||
@@ -196,18 +227,25 @@ public class MediaScan
|
||||
public Scan Scan { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator MediaScan(MediaScanType cicm) => cicm is null ? null : new MediaScan
|
||||
{
|
||||
Element = (MediaScanElement)cicm.MediaScanElement,
|
||||
Scan = cicm.Scan
|
||||
};
|
||||
public static implicit operator MediaScan(MediaScanType cicm) => cicm is null
|
||||
? null
|
||||
: new MediaScan
|
||||
{
|
||||
Element = (MediaScanElement)cicm.
|
||||
MediaScanElement,
|
||||
Scan = cicm.Scan
|
||||
};
|
||||
}
|
||||
|
||||
[JsonConverter(typeof(JsonStringEnumMemberConverter))]
|
||||
public enum MediaScanElement
|
||||
{
|
||||
Up, Down, Front,
|
||||
Back, Left, Right
|
||||
Up,
|
||||
Down,
|
||||
Front,
|
||||
Back,
|
||||
Left,
|
||||
Right
|
||||
}
|
||||
|
||||
public class Scanner
|
||||
@@ -220,15 +258,17 @@ public class Scanner
|
||||
public string SoftwareVersion { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Scanner(ScannerType cicm) => cicm is null ? null : new Scanner
|
||||
{
|
||||
Author = cicm.Author,
|
||||
Manufacturer = cicm.Manufacturer,
|
||||
Model = cicm.Model,
|
||||
Serial = cicm.Serial,
|
||||
Software = cicm.Software,
|
||||
SoftwareVersion = cicm.SoftwareVersion
|
||||
};
|
||||
public static implicit operator Scanner(ScannerType cicm) => cicm is null
|
||||
? null
|
||||
: new Scanner
|
||||
{
|
||||
Author = cicm.Author,
|
||||
Manufacturer = cicm.Manufacturer,
|
||||
Model = cicm.Model,
|
||||
Serial = cicm.Serial,
|
||||
Software = cicm.Software,
|
||||
SoftwareVersion = cicm.SoftwareVersion
|
||||
};
|
||||
}
|
||||
|
||||
public class ScanProcessing
|
||||
@@ -238,12 +278,15 @@ public class ScanProcessing
|
||||
public string SoftwareVersion { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator ScanProcessing(ScanProcessingType cicm) => cicm is null ? null : new ScanProcessing
|
||||
{
|
||||
Author = cicm.Author,
|
||||
Software = cicm.Software,
|
||||
SoftwareVersion = cicm.SoftwareVersion
|
||||
};
|
||||
public static implicit operator ScanProcessing(ScanProcessingType cicm) => cicm is null
|
||||
? null
|
||||
: new ScanProcessing
|
||||
{
|
||||
Author = cicm.Author,
|
||||
Software = cicm.Software,
|
||||
SoftwareVersion =
|
||||
cicm.SoftwareVersion
|
||||
};
|
||||
}
|
||||
|
||||
public class OCR
|
||||
@@ -276,4 +319,4 @@ public class OCR
|
||||
|
||||
return ocr;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -52,11 +52,13 @@ public class SecureDigital
|
||||
public Dump OCR { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator SecureDigital(SecureDigitalType cicm) => cicm is null ? null : new SecureDigital
|
||||
{
|
||||
CID = cicm.CID,
|
||||
CSD = cicm.CSD,
|
||||
SCR = cicm.SCR,
|
||||
OCR = cicm.OCR
|
||||
};
|
||||
}
|
||||
public static implicit operator SecureDigital(SecureDigitalType cicm) => cicm is null
|
||||
? null
|
||||
: new SecureDigital
|
||||
{
|
||||
CID = cicm.CID,
|
||||
CSD = cicm.CSD,
|
||||
SCR = cicm.SCR,
|
||||
OCR = cicm.OCR
|
||||
};
|
||||
}
|
||||
@@ -53,12 +53,16 @@ public class Sequence
|
||||
public byte? Layer { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Sequence(SequenceType cicm) => cicm is null ? null : new Sequence
|
||||
{
|
||||
Title = cicm.MediaTitle,
|
||||
MediaSequence = cicm.MediaSequence,
|
||||
TotalMedia = cicm.TotalMedia,
|
||||
Side = cicm.SideSpecified ? cicm.Side : null,
|
||||
Layer = cicm.LayerSpecified ? cicm.Layer : null
|
||||
};
|
||||
}
|
||||
public static implicit operator Sequence(SequenceType cicm) => cicm is null
|
||||
? null
|
||||
: new Sequence
|
||||
{
|
||||
Title = cicm.MediaTitle,
|
||||
MediaSequence = cicm.MediaSequence,
|
||||
TotalMedia = cicm.TotalMedia,
|
||||
Side = cicm.SideSpecified ? cicm.Side : null,
|
||||
Layer = cicm.LayerSpecified
|
||||
? cicm.Layer
|
||||
: null
|
||||
};
|
||||
}
|
||||
@@ -126,4 +126,4 @@ public class TapeFile
|
||||
|
||||
return file;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -51,10 +51,12 @@ public class Usb
|
||||
public Dump Descriptors { get; set; }
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator Usb(USBType cicm) => cicm is null ? null : new Usb
|
||||
{
|
||||
VendorID = cicm.VendorID,
|
||||
ProductID = cicm.ProductID,
|
||||
Descriptors = cicm.Descriptors
|
||||
};
|
||||
}
|
||||
public static implicit operator Usb(USBType cicm) => cicm is null
|
||||
? null
|
||||
: new Usb
|
||||
{
|
||||
VendorID = cicm.VendorID,
|
||||
ProductID = cicm.ProductID,
|
||||
Descriptors = cicm.Descriptors
|
||||
};
|
||||
}
|
||||
@@ -73,4 +73,4 @@ public class UserManual
|
||||
|
||||
return manual;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -79,10 +79,12 @@ public class XboxSecuritySector
|
||||
|
||||
[Obsolete("Will be removed in Aaru 7")]
|
||||
public static implicit operator XboxSecuritySector(XboxSecuritySectorsType cicm) =>
|
||||
cicm is null ? null : new XboxSecuritySector
|
||||
{
|
||||
RequestNumber = cicm.RequestNumber,
|
||||
RequestVersion = cicm.RequestVersion,
|
||||
SecuritySectors = cicm.SecuritySectors
|
||||
};
|
||||
}
|
||||
cicm is null
|
||||
? null
|
||||
: new XboxSecuritySector
|
||||
{
|
||||
RequestNumber = cicm.RequestNumber,
|
||||
RequestVersion = cicm.RequestVersion,
|
||||
SecuritySectors = cicm.SecuritySectors
|
||||
};
|
||||
}
|
||||
@@ -61,7 +61,7 @@ public delegate void InitTwoProgressHandler();
|
||||
|
||||
/// <summary>Updates two progress indicators with text</summary>
|
||||
public delegate void UpdateTwoProgressHandler(string text, long current, long maximum, string text2, long current2,
|
||||
long maximum2);
|
||||
long maximum2);
|
||||
|
||||
/// <summary>Pulses a progress indicator with indeterminate boundaries</summary>
|
||||
public delegate void PulseTwoProgressHandler(string text, string text2);
|
||||
|
||||
@@ -41,8 +41,9 @@ using System.Diagnostics.CodeAnalysis;
|
||||
namespace Aaru.CommonTypes.Enums;
|
||||
|
||||
/// <summary>Enumerates error codes. Negative for UNIX error number equivalents, positive for Aaru error numbers.</summary>
|
||||
[SuppressMessage("ReSharper", "InconsistentNaming"), SuppressMessage("ReSharper", "UnusedMember.Global"),
|
||||
SuppressMessage("ReSharper", "IdentifierTypo")]
|
||||
[SuppressMessage("ReSharper", "InconsistentNaming")]
|
||||
[SuppressMessage("ReSharper", "UnusedMember.Global")]
|
||||
[SuppressMessage("ReSharper", "IdentifierTypo")]
|
||||
public enum ErrorNumber
|
||||
{
|
||||
/// <summary>Operation not permitted</summary>
|
||||
|
||||
121
Enums/Nes.cs
121
Enums/Nes.cs
@@ -4,58 +4,117 @@ namespace Aaru.CommonTypes.Enums;
|
||||
|
||||
public enum NesConsoleType : byte
|
||||
{
|
||||
Nes = 0, Vs = 1, Playchoice = 2,
|
||||
Extended = 3
|
||||
Nes = 0,
|
||||
Vs = 1,
|
||||
Playchoice = 2,
|
||||
Extended = 3
|
||||
}
|
||||
|
||||
public enum NesTimingMode : byte
|
||||
{
|
||||
RP2C02 = 0, RP2C07 = 1, Multiple = 2,
|
||||
RP2C02 = 0,
|
||||
RP2C07 = 1,
|
||||
Multiple = 2,
|
||||
UMC6527P = 3
|
||||
}
|
||||
|
||||
public enum NesVsPpuType : byte
|
||||
{
|
||||
RP2C03B = 0, RP2C03G = 1, RP2C04_0001 = 2,
|
||||
RP2C04_0002 = 3, RP2C04_0003 = 4, RP2C04_0004 = 5,
|
||||
RC2C03B = 6, RC2C03C = 7, RC2C05_01 = 8,
|
||||
RC2C05_02 = 9, RC2C05_03 = 10, RC2C05_04 = 11,
|
||||
RP2C03B = 0,
|
||||
RP2C03G = 1,
|
||||
RP2C04_0001 = 2,
|
||||
RP2C04_0002 = 3,
|
||||
RP2C04_0003 = 4,
|
||||
RP2C04_0004 = 5,
|
||||
RC2C03B = 6,
|
||||
RC2C03C = 7,
|
||||
RC2C05_01 = 8,
|
||||
RC2C05_02 = 9,
|
||||
RC2C05_03 = 10,
|
||||
RC2C05_04 = 11,
|
||||
RC2C05_05 = 12
|
||||
}
|
||||
|
||||
public enum NesVsHardwareType : byte
|
||||
{
|
||||
Normal = 0, RBI = 1, TKO = 2,
|
||||
SuperXevious = 3, IceClimber = 4, Dual = 5,
|
||||
Normal = 0,
|
||||
RBI = 1,
|
||||
TKO = 2,
|
||||
SuperXevious = 3,
|
||||
IceClimber = 4,
|
||||
Dual = 5,
|
||||
RaidOnBungeling = 6
|
||||
}
|
||||
|
||||
public enum NesExtendedConsoleType : byte
|
||||
{
|
||||
Normal = 0, Vs = 1, Playchoice = 2,
|
||||
DecimalMode = 3, VT01_Monochrome = 4, VT01 = 5,
|
||||
VT02 = 6, VT03 = 7, VT09 = 8,
|
||||
VT32 = 9, VT369 = 10, UM6578 = 11
|
||||
Normal = 0,
|
||||
Vs = 1,
|
||||
Playchoice = 2,
|
||||
DecimalMode = 3,
|
||||
VT01_Monochrome = 4,
|
||||
VT01 = 5,
|
||||
VT02 = 6,
|
||||
VT03 = 7,
|
||||
VT09 = 8,
|
||||
VT32 = 9,
|
||||
VT369 = 10,
|
||||
UM6578 = 11
|
||||
}
|
||||
|
||||
public enum NesDefaultExpansionDevice : byte
|
||||
{
|
||||
Unspecified = 0, Controller = 1, FourScore = 2,
|
||||
FourPlayersAdapter = 3, Vs = 4, VsSystem = 5,
|
||||
VsPinball = 6, VsZapper = 7, Zapper = 8,
|
||||
TwoZappers = 9, HyperShotLightgun = 0xA, PowerPadSideA = 0xB,
|
||||
PowerPadSideB = 0xC, FamilyTrainerSideA = 0xD, FamilyTrainerSideB = 0xE,
|
||||
ArkanoidVaus = 0xF, ArkanoidVausFamicom = 0x10, TwoVausDataRecorder = 0x11,
|
||||
HyperShotController = 0x12, CoconutsPachinko = 0x13, ExcitingBoxing = 0x14,
|
||||
JissenMahjong = 0x15, PartyTap = 0x16, OekaKidsTablet = 0x17,
|
||||
SunsoftBarcodeBattler = 0x18, PianoKeyboard = 0x19, PokkunMoguraa = 0x1A,
|
||||
TopRider = 0x1B, DoubleFisted = 0x1C, Famicom3DSystem = 0x1D,
|
||||
DoremikkoKeyboard = 0x1E, GyroSet = 0x1F, DataRecorder = 0x20,
|
||||
TurboFile = 0x21, StorageBattleBox = 0x22, FamilyBASICKeyboardDataRecorder = 0x23,
|
||||
DongdaKeyboard = 0x24, BitCorpKeyboard = 0x25, SuborKeyboard = 0x26,
|
||||
SuborKeyboardMouse = 0x27, SuborKeyboardMouse24 = 0x28, SNESMouse = 0x29,
|
||||
Multicart = 0x2A, SNESControllers = 0x2B, RacerMateBicycle = 0x2C,
|
||||
UForce = 0x2D, StackUp = 0x2E, PatrolmanLightgun = 0x2F,
|
||||
C1CassetteInterface = 0x30, SwappedController = 0x31, SudokuPad = 0x32,
|
||||
ABLPinball = 0x33, GoldenNuggetCasino = 0x34
|
||||
Unspecified = 0,
|
||||
Controller = 1,
|
||||
FourScore = 2,
|
||||
FourPlayersAdapter = 3,
|
||||
Vs = 4,
|
||||
VsSystem = 5,
|
||||
VsPinball = 6,
|
||||
VsZapper = 7,
|
||||
Zapper = 8,
|
||||
TwoZappers = 9,
|
||||
HyperShotLightgun = 0xA,
|
||||
PowerPadSideA = 0xB,
|
||||
PowerPadSideB = 0xC,
|
||||
FamilyTrainerSideA = 0xD,
|
||||
FamilyTrainerSideB = 0xE,
|
||||
ArkanoidVaus = 0xF,
|
||||
ArkanoidVausFamicom = 0x10,
|
||||
TwoVausDataRecorder = 0x11,
|
||||
HyperShotController = 0x12,
|
||||
CoconutsPachinko = 0x13,
|
||||
ExcitingBoxing = 0x14,
|
||||
JissenMahjong = 0x15,
|
||||
PartyTap = 0x16,
|
||||
OekaKidsTablet = 0x17,
|
||||
SunsoftBarcodeBattler = 0x18,
|
||||
PianoKeyboard = 0x19,
|
||||
PokkunMoguraa = 0x1A,
|
||||
TopRider = 0x1B,
|
||||
DoubleFisted = 0x1C,
|
||||
Famicom3DSystem = 0x1D,
|
||||
DoremikkoKeyboard = 0x1E,
|
||||
GyroSet = 0x1F,
|
||||
DataRecorder = 0x20,
|
||||
TurboFile = 0x21,
|
||||
StorageBattleBox = 0x22,
|
||||
FamilyBASICKeyboardDataRecorder = 0x23,
|
||||
DongdaKeyboard = 0x24,
|
||||
BitCorpKeyboard = 0x25,
|
||||
SuborKeyboard = 0x26,
|
||||
SuborKeyboardMouse = 0x27,
|
||||
SuborKeyboardMouse24 = 0x28,
|
||||
SNESMouse = 0x29,
|
||||
Multicart = 0x2A,
|
||||
SNESControllers = 0x2B,
|
||||
RacerMateBicycle = 0x2C,
|
||||
UForce = 0x2D,
|
||||
StackUp = 0x2E,
|
||||
PatrolmanLightgun = 0x2F,
|
||||
C1CassetteInterface = 0x30,
|
||||
SwappedController = 0x31,
|
||||
SudokuPad = 0x32,
|
||||
ABLPinball = 0x33,
|
||||
GoldenNuggetCasino = 0x34
|
||||
}
|
||||
@@ -72,7 +72,7 @@ public class ExtentsByte
|
||||
Tuple<byte, byte> removeTwo = null;
|
||||
Tuple<byte, byte> itemToAdd = null;
|
||||
|
||||
for(int i = 0; i < _backend.Count; i++)
|
||||
for(var i = 0; i < _backend.Count; i++)
|
||||
{
|
||||
// Already contained in an extent
|
||||
if(item >= _backend[i].Item1 &&
|
||||
|
||||
@@ -58,11 +58,13 @@ public static class ExtentsConverter
|
||||
List<Extent> list = new();
|
||||
|
||||
for(ulong i = 0; i < (ulong)tuples.LongLength; i++)
|
||||
{
|
||||
list.Add(new Extent
|
||||
{
|
||||
Start = tuples[i].Item1,
|
||||
End = tuples[i].Item2
|
||||
});
|
||||
}
|
||||
|
||||
return list;
|
||||
}
|
||||
@@ -75,8 +77,8 @@ public static class ExtentsConverter
|
||||
if(extents == null)
|
||||
return null;
|
||||
|
||||
List<Tuple<ulong, ulong>> tuples = extents.Select(extent => new Tuple<ulong, ulong>(extent.Start, extent.End)).
|
||||
ToList();
|
||||
var tuples = extents.Select(extent => new Tuple<ulong, ulong>(extent.Start, extent.End)).
|
||||
ToList();
|
||||
|
||||
return new ExtentsULong(tuples);
|
||||
}
|
||||
|
||||
@@ -72,7 +72,7 @@ public class ExtentsInt
|
||||
Tuple<int, int> removeTwo = null;
|
||||
Tuple<int, int> itemToAdd = null;
|
||||
|
||||
for(int i = 0; i < _backend.Count; i++)
|
||||
for(var i = 0; i < _backend.Count; i++)
|
||||
{
|
||||
// Already contained in an extent
|
||||
if(item >= _backend[i].Item1 &&
|
||||
|
||||
@@ -72,7 +72,7 @@ public class ExtentsLong
|
||||
Tuple<long, long> removeTwo = null;
|
||||
Tuple<long, long> itemToAdd = null;
|
||||
|
||||
for(int i = 0; i < _backend.Count; i++)
|
||||
for(var i = 0; i < _backend.Count; i++)
|
||||
{
|
||||
// Already contained in an extent
|
||||
if(item >= _backend[i].Item1 &&
|
||||
|
||||
@@ -72,7 +72,7 @@ public class ExtentsSByte
|
||||
Tuple<sbyte, sbyte> removeTwo = null;
|
||||
Tuple<sbyte, sbyte> itemToAdd = null;
|
||||
|
||||
for(int i = 0; i < _backend.Count; i++)
|
||||
for(var i = 0; i < _backend.Count; i++)
|
||||
{
|
||||
// Already contained in an extent
|
||||
if(item >= _backend[i].Item1 &&
|
||||
|
||||
@@ -72,7 +72,7 @@ public class ExtentsShort
|
||||
Tuple<short, short> removeTwo = null;
|
||||
Tuple<short, short> itemToAdd = null;
|
||||
|
||||
for(int i = 0; i < _backend.Count; i++)
|
||||
for(var i = 0; i < _backend.Count; i++)
|
||||
{
|
||||
// Already contained in an extent
|
||||
if(item >= _backend[i].Item1 &&
|
||||
|
||||
@@ -72,7 +72,7 @@ public class ExtentsUInt
|
||||
Tuple<uint, uint> removeTwo = null;
|
||||
Tuple<uint, uint> itemToAdd = null;
|
||||
|
||||
for(int i = 0; i < _backend.Count; i++)
|
||||
for(var i = 0; i < _backend.Count; i++)
|
||||
{
|
||||
// Already contained in an extent
|
||||
if(item >= _backend[i].Item1 &&
|
||||
|
||||
@@ -72,7 +72,7 @@ public class ExtentsULong
|
||||
Tuple<ulong, ulong> removeTwo = null;
|
||||
Tuple<ulong, ulong> itemToAdd = null;
|
||||
|
||||
for(int i = 0; i < _backend.Count; i++)
|
||||
for(var i = 0; i < _backend.Count; i++)
|
||||
{
|
||||
// Already contained in an extent
|
||||
if(item >= _backend[i].Item1 &&
|
||||
|
||||
@@ -72,7 +72,7 @@ public class ExtentsUShort
|
||||
Tuple<ushort, ushort> removeTwo = null;
|
||||
Tuple<ushort, ushort> itemToAdd = null;
|
||||
|
||||
for(int i = 0; i < _backend.Count; i++)
|
||||
for(var i = 0; i < _backend.Count; i++)
|
||||
{
|
||||
// Already contained in an extent
|
||||
if(item >= _backend[i].Item1 &&
|
||||
|
||||
@@ -60,6 +60,7 @@ public sealed class FiltersList
|
||||
Filters = new SortedDictionary<string, IFilter>();
|
||||
|
||||
foreach(Type type in assembly.GetTypes().Where(t => t.GetInterfaces().Contains(typeof(IFilter))))
|
||||
{
|
||||
try
|
||||
{
|
||||
var filter = (IFilter)type.GetConstructor(Type.EmptyTypes)?.Invoke(Array.Empty<object>());
|
||||
@@ -72,6 +73,7 @@ public sealed class FiltersList
|
||||
{
|
||||
AaruConsole.ErrorWriteLine(Localization.Exception_0, exception);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Gets the filter that allows to read the specified path</summary>
|
||||
@@ -82,6 +84,7 @@ public sealed class FiltersList
|
||||
IFilter noFilter = null;
|
||||
|
||||
foreach(IFilter filter in Filters.Values)
|
||||
{
|
||||
try
|
||||
{
|
||||
if(filter.Id != new Guid("12345678-AAAA-BBBB-CCCC-123456789000"))
|
||||
@@ -102,6 +105,7 @@ public sealed class FiltersList
|
||||
{
|
||||
// Ignore and continue
|
||||
}
|
||||
}
|
||||
|
||||
if(!noFilter?.Identify(path) == true)
|
||||
return null;
|
||||
|
||||
@@ -132,7 +132,8 @@ public static class Geometry
|
||||
geom.bytesPerSector == geometry.bytesPerSector &&
|
||||
geom.encoding == geometry.encoding &&
|
||||
geom.variableSectorsPerTrack ==
|
||||
geometry.variableSectorsPerTrack select geom.type).
|
||||
geometry.variableSectorsPerTrack
|
||||
select geom.type).
|
||||
FirstOrDefault();
|
||||
|
||||
/// <summary>Gets the geometry for a given media type</summary>
|
||||
|
||||
@@ -49,17 +49,23 @@ public interface IBaseImage
|
||||
{
|
||||
/// <summary>Plugin author</summary>
|
||||
string Author { get; }
|
||||
|
||||
/// <summary>Gets the Aaru Metadata for the image</summary>
|
||||
AaruMetadata.Metadata AaruMetadata { get; }
|
||||
|
||||
/// <summary>List of dump hardware used to create the image from real media</summary>
|
||||
List<DumpHardware> DumpHardware { get; }
|
||||
|
||||
/// <summary>Gets the image format.</summary>
|
||||
/// <value>The image format.</value>
|
||||
string Format { get; }
|
||||
|
||||
/// <summary>Plugin UUID.</summary>
|
||||
Guid Id { get; }
|
||||
|
||||
/// <summary>Image information</summary>
|
||||
ImageInfo Info { get; }
|
||||
|
||||
/// <summary>Plugin name.</summary>
|
||||
string Name { get; }
|
||||
|
||||
|
||||
@@ -50,16 +50,22 @@ public interface IBaseWritableImage : IBaseImage
|
||||
{
|
||||
/// <summary>Contains a description of the last error</summary>
|
||||
string ErrorMessage { get; }
|
||||
|
||||
/// <summary>If set to <c>true</c> means the image is opened for writing</summary>
|
||||
bool IsWriting { get; }
|
||||
|
||||
/// <summary>Gets a list of known extensions for format auto-choosing</summary>
|
||||
IEnumerable<string> KnownExtensions { get; }
|
||||
|
||||
/// <summary>Gets a list of <see cref="MediaTagType" /> that are supported by the media image format</summary>
|
||||
IEnumerable<MediaTagType> SupportedMediaTags { get; }
|
||||
|
||||
/// <summary>Gets a list of <see cref="MediaType" /> that are supported by the media image format</summary>
|
||||
IEnumerable<MediaType> SupportedMediaTypes { get; }
|
||||
|
||||
/// <summary>Retrieves a list of options supported by the filesystem, with name, type and description</summary>
|
||||
IEnumerable<(string name, Type type, string description, object @default)> SupportedOptions { get; }
|
||||
|
||||
/// <summary>Gets a list of <see cref="SectorTagType" /> that are supported by the media image format</summary>
|
||||
IEnumerable<SectorTagType> SupportedSectorTags { get; }
|
||||
|
||||
|
||||
@@ -47,8 +47,10 @@ public interface IFilesystem
|
||||
{
|
||||
/// <summary>Plugin name (translatable).</summary>
|
||||
string Name { get; }
|
||||
|
||||
/// <summary>Plugin UUID.</summary>
|
||||
Guid Id { get; }
|
||||
|
||||
/// <summary>Plugin author</summary>
|
||||
string Author { get; }
|
||||
|
||||
@@ -64,6 +66,6 @@ public interface IFilesystem
|
||||
/// <param name="encoding">Which encoding to use for this filesystem.</param>
|
||||
/// <param name="information">Filesystem information.</param>
|
||||
/// <param name="metadata">Information about the filesystem as expected by Aaru Metadata</param>
|
||||
void GetInformation(IMediaImage imagePlugin, Partition partition, Encoding encoding, out string information,
|
||||
void GetInformation(IMediaImage imagePlugin, Partition partition, Encoding encoding, out string information,
|
||||
out FileSystem metadata);
|
||||
}
|
||||
@@ -50,8 +50,10 @@ public interface IFilter
|
||||
{
|
||||
/// <summary>Descriptive name of the plugin</summary>
|
||||
string Name { get; }
|
||||
|
||||
/// <summary>Unique UUID of the plugin</summary>
|
||||
Guid Id { get; }
|
||||
|
||||
/// <summary>Plugin author</summary>
|
||||
string Author { get; }
|
||||
|
||||
|
||||
@@ -108,7 +108,7 @@ public interface IFloppyImage : IMediaImage
|
||||
/// <param name="sector">Logical sector ID.</param>
|
||||
/// <param name="status">Status of request.</param>
|
||||
/// <param name="buffer">Buffer where the sector data will be stored.</param>
|
||||
ErrorNumber ReadSectorLong(ushort track, byte head, ushort sector, out FloppySectorStatus status,
|
||||
ErrorNumber ReadSectorLong(ushort track, byte head, ushort sector, out FloppySectorStatus status,
|
||||
out byte[] buffer);
|
||||
|
||||
/// <summary>Verifies a track.</summary>
|
||||
|
||||
@@ -62,7 +62,7 @@ public interface IFluxImage : IBaseImage
|
||||
/// <param name="subTrack">Physical sub-step of track (e.g. half-track)</param>
|
||||
/// <param name="captureIndex">Which capture to read. See also <see cref="CapturesLength" /></param>
|
||||
/// <param name="resolution">The resolution of the index capture in picoseconds</param>
|
||||
ErrorNumber ReadFluxIndexResolution(uint head, ushort track, byte subTrack, uint captureIndex,
|
||||
ErrorNumber ReadFluxIndexResolution(uint head, ushort track, byte subTrack, uint captureIndex,
|
||||
out ulong resolution);
|
||||
|
||||
/// <summary>Reads the resolution (sample rate) of a data signal capture in picoseconds.</summary>
|
||||
|
||||
@@ -49,6 +49,7 @@ public interface IOpticalMediaImage : IMediaImage, IPartitionableMediaImage, IVe
|
||||
/// <summary>Gets the disc track extents (start, length).</summary>
|
||||
/// <value>The track extents.</value>
|
||||
List<Track> Tracks { get; }
|
||||
|
||||
/// <summary>Gets the sessions (optical discs only).</summary>
|
||||
/// <value>The sessions.</value>
|
||||
List<Session> Sessions { get; }
|
||||
@@ -117,6 +118,6 @@ public interface IOpticalMediaImage : IMediaImage, IPartitionableMediaImage, IVe
|
||||
/// <param name="track">Track.</param>
|
||||
/// <param name="failingLbas">List of incorrect sectors</param>
|
||||
/// <param name="unknownLbas">List of uncheckable sectors</param>
|
||||
bool? VerifySectors(ulong sectorAddress, uint length, uint track, out List<ulong> failingLbas,
|
||||
bool? VerifySectors(ulong sectorAddress, uint length, uint track, out List<ulong> failingLbas,
|
||||
out List<ulong> unknownLbas);
|
||||
}
|
||||
@@ -47,8 +47,10 @@ public interface IPartition
|
||||
{
|
||||
/// <summary>Plugin name.</summary>
|
||||
string Name { get; }
|
||||
|
||||
/// <summary>Plugin UUID.</summary>
|
||||
Guid Id { get; }
|
||||
|
||||
/// <summary>Plugin author</summary>
|
||||
string Author { get; }
|
||||
|
||||
|
||||
@@ -71,8 +71,8 @@ public interface IReadOnlyFilesystem : IFilesystem
|
||||
/// <param name="encoding">Which encoding to use for this filesystem.</param>
|
||||
/// <param name="options">Dictionary of key=value pairs containing options to pass to the filesystem</param>
|
||||
/// <param name="namespace">Filename namespace</param>
|
||||
ErrorNumber Mount(IMediaImage imagePlugin, Partition partition, Encoding encoding,
|
||||
Dictionary<string, string> options, string @namespace);
|
||||
ErrorNumber Mount(IMediaImage imagePlugin, Partition partition, Encoding encoding,
|
||||
Dictionary<string, string> options, string @namespace);
|
||||
|
||||
/// <summary>Frees all internal structures created by <see cref="Mount" /></summary>
|
||||
ErrorNumber Unmount();
|
||||
@@ -132,11 +132,11 @@ public interface IReadOnlyFilesystem : IFilesystem
|
||||
return ErrorNumber.InvalidArgument;
|
||||
|
||||
long desiredPosition = origin switch
|
||||
{
|
||||
SeekOrigin.Begin => position,
|
||||
SeekOrigin.End => node.Length + position,
|
||||
_ => node.Offset + position
|
||||
};
|
||||
{
|
||||
SeekOrigin.Begin => position,
|
||||
SeekOrigin.End => node.Length + position,
|
||||
_ => node.Offset + position
|
||||
};
|
||||
|
||||
if(desiredPosition < 0)
|
||||
return ErrorNumber.InvalidArgument;
|
||||
@@ -169,9 +169,11 @@ public interface IReadOnlyFilesystem : IFilesystem
|
||||
|
||||
/// <summary>Reads the next entry in the directory.</summary>
|
||||
/// <param name="node">Represent an opened directory.</param>
|
||||
/// <param name="filename">The next entry name.
|
||||
/// <param name="filename">
|
||||
/// The next entry name.
|
||||
/// <value>null</value>
|
||||
/// if there are no more entries.</param>
|
||||
/// if there are no more entries.
|
||||
/// </param>
|
||||
/// <returns>Error number.</returns>
|
||||
ErrorNumber ReadDir(IDirNode node, out string filename);
|
||||
}
|
||||
@@ -181,8 +183,10 @@ public interface IFileNode
|
||||
{
|
||||
/// <summary>Path to the file</summary>
|
||||
string Path { get; }
|
||||
|
||||
/// <summary>File length</summary>
|
||||
long Length { get; }
|
||||
|
||||
/// <summary>Current position in file</summary>
|
||||
long Offset { get; set; }
|
||||
}
|
||||
|
||||
@@ -48,8 +48,10 @@ public interface ITapeImage : IMediaImage
|
||||
{
|
||||
/// <summary>Gets a list of all the files registered in the image</summary>
|
||||
List<TapeFile> Files { get; }
|
||||
|
||||
/// <summary>Gets a list of all the partitions registered in the image</summary>
|
||||
List<TapePartition> TapePartitions { get; }
|
||||
|
||||
/// <summary>If the media is a really a tape, as some formats can store non-tapes</summary>
|
||||
bool IsTape { get; }
|
||||
}
|
||||
@@ -54,8 +54,8 @@ public interface IWritableFluxImage : IFluxImage, IWritableImage
|
||||
/// <param name="track">Physical track (position of the heads over the floppy media, 0-based)</param>
|
||||
/// <param name="subTrack">Physical sub-step of track (e.g. half-track)</param>
|
||||
/// <param name="captureIndex">Which capture slot to write to. See also <see cref="IFluxImage.CapturesLength" /></param>
|
||||
ErrorNumber WriteFluxCapture(ulong indexResolution, ulong dataResolution, byte[] indexBuffer, byte[] dataBuffer,
|
||||
uint head, ushort track, byte subTrack, uint captureIndex);
|
||||
ErrorNumber WriteFluxCapture(ulong indexResolution, ulong dataResolution, byte[] indexBuffer, byte[] dataBuffer,
|
||||
uint head, ushort track, byte subTrack, uint captureIndex);
|
||||
|
||||
/// <summary>Writes a capture's index stream.</summary>
|
||||
/// <returns>Error number</returns>
|
||||
@@ -66,7 +66,7 @@ public interface IWritableFluxImage : IFluxImage, IWritableImage
|
||||
/// <param name="subTrack">Physical sub-step of track (e.g. half-track)</param>
|
||||
/// <param name="captureIndex">Which capture to read. See also <see cref="CapturesLength" /></param>
|
||||
ErrorNumber WriteFluxIndexCapture(ulong resolution, byte[] index, uint head, ushort track, byte subTrack,
|
||||
uint captureIndex);
|
||||
uint captureIndex);
|
||||
|
||||
/// <summary>Writes a capture's data stream.</summary>
|
||||
/// <returns>Error number</returns>
|
||||
@@ -77,5 +77,5 @@ public interface IWritableFluxImage : IFluxImage, IWritableImage
|
||||
/// <param name="subTrack">Physical sub-step of track (e.g. half-track)</param>
|
||||
/// <param name="captureIndex">Which capture to read. See also <see cref="CapturesLength" /></param>
|
||||
ErrorNumber WriteFluxDataCapture(ulong resolution, byte[] data, uint head, ushort track, byte subTrack,
|
||||
uint captureIndex);
|
||||
uint captureIndex);
|
||||
}
|
||||
@@ -126,8 +126,10 @@ public static class DetectOS
|
||||
int error = uname(out utsname unixname);
|
||||
|
||||
if(error != 0)
|
||||
{
|
||||
throw new Exception(string.Format(Localization.Unhandled_exception_calling_uname_0,
|
||||
Marshal.GetLastWin32Error()));
|
||||
}
|
||||
|
||||
switch(unixname.sysname)
|
||||
{
|
||||
@@ -173,43 +175,63 @@ public static class DetectOS
|
||||
Marshal.FreeHGlobal(pLen);
|
||||
|
||||
if(machine != null &&
|
||||
(machine.StartsWith("iPad", StringComparison.Ordinal) ||
|
||||
machine.StartsWith("iPod", StringComparison.Ordinal) ||
|
||||
(machine.StartsWith("iPad", StringComparison.Ordinal) ||
|
||||
machine.StartsWith("iPod", StringComparison.Ordinal) ||
|
||||
machine.StartsWith("iPhone", StringComparison.Ordinal)))
|
||||
return PlatformID.iOS;
|
||||
|
||||
return PlatformID.MacOSX;
|
||||
}
|
||||
|
||||
case "GNU": return PlatformID.Hurd;
|
||||
case "GNU":
|
||||
return PlatformID.Hurd;
|
||||
case "FreeBSD":
|
||||
case "GNU/kFreeBSD": return PlatformID.FreeBSD;
|
||||
case "DragonFly": return PlatformID.DragonFly;
|
||||
case "Haiku": return PlatformID.Haiku;
|
||||
case "HP-UX": return PlatformID.HPUX;
|
||||
case "AIX": return PlatformID.AIX;
|
||||
case "OS400": return PlatformID.OS400;
|
||||
case "GNU/kFreeBSD":
|
||||
return PlatformID.FreeBSD;
|
||||
case "DragonFly":
|
||||
return PlatformID.DragonFly;
|
||||
case "Haiku":
|
||||
return PlatformID.Haiku;
|
||||
case "HP-UX":
|
||||
return PlatformID.HPUX;
|
||||
case "AIX":
|
||||
return PlatformID.AIX;
|
||||
case "OS400":
|
||||
return PlatformID.OS400;
|
||||
case "IRIX":
|
||||
case "IRIX64": return PlatformID.IRIX;
|
||||
case "Minix": return PlatformID.Minix;
|
||||
case "NetBSD": return PlatformID.NetBSD;
|
||||
case "NONSTOP_KERNEL": return PlatformID.NonStop;
|
||||
case "OpenBSD": return PlatformID.OpenBSD;
|
||||
case "QNX": return PlatformID.QNX;
|
||||
case "SINIX-Y": return PlatformID.SINIX;
|
||||
case "SunOS": return PlatformID.Solaris;
|
||||
case "OSF1": return PlatformID.Tru64;
|
||||
case "ULTRIX": return PlatformID.Ultrix;
|
||||
case "SCO_SV": return PlatformID.OpenServer;
|
||||
case "UnixWare": return PlatformID.UnixWare;
|
||||
case "IRIX64":
|
||||
return PlatformID.IRIX;
|
||||
case "Minix":
|
||||
return PlatformID.Minix;
|
||||
case "NetBSD":
|
||||
return PlatformID.NetBSD;
|
||||
case "NONSTOP_KERNEL":
|
||||
return PlatformID.NonStop;
|
||||
case "OpenBSD":
|
||||
return PlatformID.OpenBSD;
|
||||
case "QNX":
|
||||
return PlatformID.QNX;
|
||||
case "SINIX-Y":
|
||||
return PlatformID.SINIX;
|
||||
case "SunOS":
|
||||
return PlatformID.Solaris;
|
||||
case "OSF1":
|
||||
return PlatformID.Tru64;
|
||||
case "ULTRIX":
|
||||
return PlatformID.Ultrix;
|
||||
case "SCO_SV":
|
||||
return PlatformID.OpenServer;
|
||||
case "UnixWare":
|
||||
return PlatformID.UnixWare;
|
||||
case "Interix":
|
||||
case "UWIN-W7": return PlatformID.Win32NT;
|
||||
case "UWIN-W7":
|
||||
return PlatformID.Win32NT;
|
||||
default:
|
||||
{
|
||||
if(unixname.sysname.StartsWith("CYGWIN_NT", StringComparison.Ordinal) ||
|
||||
if(unixname.sysname.StartsWith("CYGWIN_NT", StringComparison.Ordinal) ||
|
||||
unixname.sysname.StartsWith("MINGW32_NT", StringComparison.Ordinal) ||
|
||||
unixname.sysname.StartsWith("MSYS_NT", StringComparison.Ordinal) ||
|
||||
unixname.sysname.StartsWith("UWIN", StringComparison.Ordinal))
|
||||
unixname.sysname.StartsWith("MSYS_NT", StringComparison.Ordinal) ||
|
||||
unixname.sysname.StartsWith("UWIN", StringComparison.Ordinal))
|
||||
return PlatformID.Win32NT;
|
||||
|
||||
return PlatformID.Unknown;
|
||||
@@ -234,20 +256,25 @@ public static class DetectOS
|
||||
|
||||
switch(Environment.OSVersion.Version.Minor)
|
||||
{
|
||||
case 3: return "10.0";
|
||||
case 4: return "10.1";
|
||||
case 3:
|
||||
return "10.0";
|
||||
case 4:
|
||||
return "10.1";
|
||||
}
|
||||
|
||||
goto default;
|
||||
case PlatformID.Win32NT:
|
||||
// From Windows 8.1 the reported version is simply falsified...
|
||||
if(Environment.OSVersion.Version.Major is 6 and >= 2 or > 6)
|
||||
{
|
||||
return FileVersionInfo.
|
||||
GetVersionInfo(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System),
|
||||
"KERNEL32.DLL")).ProductVersion;
|
||||
}
|
||||
|
||||
return environ;
|
||||
default: return environ;
|
||||
default:
|
||||
return environ;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -259,15 +286,24 @@ public static class DetectOS
|
||||
{
|
||||
switch(id)
|
||||
{
|
||||
case PlatformID.AIX: return "AIX";
|
||||
case PlatformID.Android: return "Android";
|
||||
case PlatformID.DragonFly: return "DragonFly BSD";
|
||||
case PlatformID.FreeBSD: return "FreeBSD";
|
||||
case PlatformID.Haiku: return "Haiku";
|
||||
case PlatformID.HPUX: return "HP/UX";
|
||||
case PlatformID.Hurd: return "Hurd";
|
||||
case PlatformID.iOS: return "iOS";
|
||||
case PlatformID.IRIX: return "IRIX";
|
||||
case PlatformID.AIX:
|
||||
return "AIX";
|
||||
case PlatformID.Android:
|
||||
return "Android";
|
||||
case PlatformID.DragonFly:
|
||||
return "DragonFly BSD";
|
||||
case PlatformID.FreeBSD:
|
||||
return "FreeBSD";
|
||||
case PlatformID.Haiku:
|
||||
return "Haiku";
|
||||
case PlatformID.HPUX:
|
||||
return "HP/UX";
|
||||
case PlatformID.Hurd:
|
||||
return "Hurd";
|
||||
case PlatformID.iOS:
|
||||
return "iOS";
|
||||
case PlatformID.IRIX:
|
||||
return "IRIX";
|
||||
case PlatformID.Linux:
|
||||
if(!File.Exists("/proc/version"))
|
||||
return "Linux";
|
||||
@@ -294,24 +330,42 @@ public static class DetectOS
|
||||
|
||||
return minor >= 8 ? "OS X" : "Mac OS X";
|
||||
|
||||
case PlatformID.Minix: return "MINIX";
|
||||
case PlatformID.NetBSD: return "NetBSD";
|
||||
case PlatformID.NonStop: return "NonStop OS";
|
||||
case PlatformID.OpenBSD: return "OpenBSD";
|
||||
case PlatformID.OpenServer: return "SCO OpenServer";
|
||||
case PlatformID.OS400: return "OS/400";
|
||||
case PlatformID.PlayStation3: return "Sony CellOS";
|
||||
case PlatformID.PlayStation4: return "Sony Orbis OS";
|
||||
case PlatformID.QNX: return "QNX";
|
||||
case PlatformID.SINIX: return "SINIX";
|
||||
case PlatformID.Solaris: return "Sun Solaris";
|
||||
case PlatformID.Tizen: return "Samsung Tizen";
|
||||
case PlatformID.Tru64: return "Tru64 UNIX";
|
||||
case PlatformID.Ultrix: return "Ultrix";
|
||||
case PlatformID.Unix: return "UNIX";
|
||||
case PlatformID.UnixWare: return "SCO UnixWare";
|
||||
case PlatformID.Wii: return "Nintendo Wii";
|
||||
case PlatformID.WiiU: return "Nintendo Wii U";
|
||||
case PlatformID.Minix:
|
||||
return "MINIX";
|
||||
case PlatformID.NetBSD:
|
||||
return "NetBSD";
|
||||
case PlatformID.NonStop:
|
||||
return "NonStop OS";
|
||||
case PlatformID.OpenBSD:
|
||||
return "OpenBSD";
|
||||
case PlatformID.OpenServer:
|
||||
return "SCO OpenServer";
|
||||
case PlatformID.OS400:
|
||||
return "OS/400";
|
||||
case PlatformID.PlayStation3:
|
||||
return "Sony CellOS";
|
||||
case PlatformID.PlayStation4:
|
||||
return "Sony Orbis OS";
|
||||
case PlatformID.QNX:
|
||||
return "QNX";
|
||||
case PlatformID.SINIX:
|
||||
return "SINIX";
|
||||
case PlatformID.Solaris:
|
||||
return "Sun Solaris";
|
||||
case PlatformID.Tizen:
|
||||
return "Samsung Tizen";
|
||||
case PlatformID.Tru64:
|
||||
return "Tru64 UNIX";
|
||||
case PlatformID.Ultrix:
|
||||
return "Ultrix";
|
||||
case PlatformID.Unix:
|
||||
return "UNIX";
|
||||
case PlatformID.UnixWare:
|
||||
return "SCO UnixWare";
|
||||
case PlatformID.Wii:
|
||||
return "Nintendo Wii";
|
||||
case PlatformID.WiiU:
|
||||
return "Nintendo Wii U";
|
||||
case PlatformID.Win32NT:
|
||||
if(string.IsNullOrEmpty(version))
|
||||
return "Windows NT/2000/XP/Vista/7/10";
|
||||
@@ -344,10 +398,12 @@ public static class DetectOS
|
||||
if(version.StartsWith("10.0", StringComparison.Ordinal))
|
||||
return "Windows 10";
|
||||
|
||||
return version.StartsWith("11.0", StringComparison.Ordinal) ? "Windows 11"
|
||||
return version.StartsWith("11.0", StringComparison.Ordinal)
|
||||
? "Windows 11"
|
||||
: "Windows NT/2000/XP/Vista/7/10/11";
|
||||
|
||||
case PlatformID.Win32S: return "Windows 3.x with win32s";
|
||||
case PlatformID.Win32S:
|
||||
return "Windows 3.x with win32s";
|
||||
case PlatformID.Win32Windows:
|
||||
if(string.IsNullOrEmpty(version))
|
||||
return "Windows 9x/Me";
|
||||
@@ -363,14 +419,21 @@ public static class DetectOS
|
||||
|
||||
return version.StartsWith("4.9", StringComparison.Ordinal) ? "Windows Me" : "Windows 9x/Me";
|
||||
|
||||
case PlatformID.WinCE: return "Windows CE/Mobile";
|
||||
case PlatformID.WindowsPhone: return "Windows Phone";
|
||||
case PlatformID.Xbox: return "Xbox OS";
|
||||
case PlatformID.zOS: return "z/OS";
|
||||
default: return id.ToString();
|
||||
case PlatformID.WinCE:
|
||||
return "Windows CE/Mobile";
|
||||
case PlatformID.WindowsPhone:
|
||||
return "Windows Phone";
|
||||
case PlatformID.Xbox:
|
||||
return "Xbox OS";
|
||||
case PlatformID.zOS:
|
||||
return "z/OS";
|
||||
default:
|
||||
return id.ToString();
|
||||
}
|
||||
}
|
||||
|
||||
#region Nested type: utsname
|
||||
|
||||
/// <summary>POSIX uname structure, size from OSX, big enough to handle extra fields</summary>
|
||||
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
|
||||
struct utsname
|
||||
@@ -391,4 +454,6 @@ public static class DetectOS
|
||||
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)]
|
||||
public readonly string machine;
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
@@ -55,10 +55,7 @@ public static class Version
|
||||
{
|
||||
Assembly assembly = typeof(GCSettings).Assembly;
|
||||
|
||||
string[] assemblyPath = assembly.CodeBase?.Split(new[]
|
||||
{
|
||||
'/', '\\'
|
||||
}, StringSplitOptions.RemoveEmptyEntries);
|
||||
string[] assemblyPath = assembly.CodeBase?.Split(new[] { '/', '\\' }, StringSplitOptions.RemoveEmptyEntries);
|
||||
|
||||
if(assemblyPath is null)
|
||||
return null;
|
||||
|
||||
@@ -1,621 +1,631 @@
|
||||
<root>
|
||||
<!-- ReSharper disable MarkupTextTypo -->
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>1.3</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="Drive_manufacturer_is_SyQuest_media_has_1961069_blocks_of_512_bytes_setting_media_type_to_SparQ" xml:space="preserve">
|
||||
<!-- ReSharper disable MarkupTextTypo -->
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>1.3</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
|
||||
PublicKeyToken=b77a5c561934e089
|
||||
</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
|
||||
PublicKeyToken=b77a5c561934e089
|
||||
</value>
|
||||
</resheader>
|
||||
<data name="Drive_manufacturer_is_SyQuest_media_has_1961069_blocks_of_512_bytes_setting_media_type_to_SparQ"
|
||||
xml:space="preserve">
|
||||
<value>El fabricante es SyQuest, el medio tiene 1961069 bloques de 512 bytes, estableciendo tipo como SparQ.</value>
|
||||
</data>
|
||||
<data name="Exception_0" xml:space="preserve">
|
||||
<data name="Exception_0" xml:space="preserve">
|
||||
<value>Excepción {0}</value>
|
||||
</data>
|
||||
<data name="IDENTIFY_response_is_different_than_512_bytes_not_decoding" xml:space="preserve">
|
||||
<data name="IDENTIFY_response_is_different_than_512_bytes_not_decoding" xml:space="preserve">
|
||||
<value>La respuesta a IDENTIFY es diferente de 512, no se decodificará.</value>
|
||||
</data>
|
||||
<data name="INQUIRY_response_is_0_bytes_less_than_minimum_of_36_bytes" xml:space="preserve">
|
||||
<data name="INQUIRY_response_is_0_bytes_less_than_minimum_of_36_bytes" xml:space="preserve">
|
||||
<value>La respuesta a INQUIRY es de {0} bytes, menor del mínimo de 36 bytes, los datos decodificados podrían ser incorrect, no se decodificará.</value>
|
||||
</data>
|
||||
<data name="INQUIRY_response_length_0_bytes_is_different_than_specified_in_length_field" xml:space="preserve">
|
||||
<data name="INQUIRY_response_length_0_bytes_is_different_than_specified_in_length_field" xml:space="preserve">
|
||||
<value>El tamaño de la respuesta a INQUIRY ({0} bytes) es diferente a la especificada en el campo de longitud ({1} bytes), los datos decodificados podrían ser incorrectos, no se decodificará.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MD1DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MD1DD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad de 5¼" en formato Acorn.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MD1DD_80" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MD1DD_80" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad de 5¼" y 80 pistas en formato Acorn.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MD1SD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MD1SD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de densidad sencilla de 5¼" en formato Acorn.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MF2DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MF2DD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad de 3½" en formato Acorn.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MF2HD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de alta densidad de 3½" en formato Acorn.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Amiga_MF2DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Amiga_MF2DD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad de 3½" en formato Amiga.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Amiga_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Amiga_MF2HD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de alta densidad de 3½" en formato Amiga.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS32" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS32" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 5¼" en formato Apple DOS 3.2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS32_DS" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS32_DS" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 5¼" de doble cara en formato Apple DOS 3.2</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS33" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS33" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 5¼" en formato Apple DOS 3.3</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS33_DS" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS33_DS" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 5¼" de doble cara en formato Apple DOS 3.3</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Apple_MF1DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Apple_MF1DD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad y una cara de 3½" en formato Apple.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Apricot_MF2DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Apricot_MF2DD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 3½" en formato Apricot.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Atari_MD1SD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Atari_MD1SD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de densidad sencilla de 5¼" en formato Atari.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Atari_MD1DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Atari_MD1DD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad de 5¼" en formato Acorn.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli10" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli10" xml:space="preserve">
|
||||
<value>El fabricante es IOMEGA, el medio tiene {0} bloques de 256 bytes, estableciendo tipo como Bernoulli Box de 10Mb.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli2_150" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli2_150" xml:space="preserve">
|
||||
<value>El fabricante es IOMEGA, el medio tiene 294918 bloques de 512 bytes, estableciendo tipo como Bernoulli Box II de 150Mb.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli2_44" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli2_44" xml:space="preserve">
|
||||
<value>El fabricante es IOMEGA, el medio tiene 87040 bloques de 512 bytes, estableciendo tipo como Bernoulli Box II de 44Mb.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli2_90" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli2_90" xml:space="preserve">
|
||||
<value>El fabricante es IOMEGA, el medio tiene 175856 bloques de 512 bytes, estableciendo tipo como Bernoulli Box II de 90Mb.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_CompactTape" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_CompactTape" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, el modelo de la unidad comienza con "dlt", estableciendo tipo como CompacTape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_CompactTapeII" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_CompactTapeII" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, el modelo de la unidad comienza con "dlt", estableciendo tipo como CompacTape II.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DLTtapeIII" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DLTtapeIII" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, el modelo de la unidad comienza con "dlt", estableciendo tipo como DLTtapeIII.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DLTtapeIIIxt" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DLTtapeIIIxt" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, el modelo de la unidad comienza con "dlt", estableciendo tipo como DLTtape IIIxt.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DLTtapeIV" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DLTtapeIV" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, el modelo de la unidad comienza con "dlt", estableciendo tipo como DLTtape IV.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DAT72_dat" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DAT72_dat" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, el modelo de la unidad comienza con "dat", estableciendo tipo como DAT72.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DDS2_dat" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DDS2_dat" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, el modelo de la unidad comienza con "dat", estableciendo tipo como DDS-2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DDS3_dat" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DDS3_dat" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, el modelo de la unidad comienza con "dat", estableciendo tipo como DDS-3.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DDS4_alt" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DDS4_alt" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, el modelo de la unidad comienza con "dat", estableciendo tipo como DDS-4.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DDS" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DDS" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, estableciendo tipo como DDS.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DDS2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DDS2" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, estableciendo tipo como DDS-2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DDS3" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DDS3" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, estableciendo tipo como DDS-3.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DDS4" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DDS4" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, estableciendo tipo como DDS-4.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DEC_RX02" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DEC_RX02" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete DEC RX02.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DMF_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DMF_MF2HD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de alta densidad de 3½" en formato Microsoft DMF.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA154" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA154" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 3½" conforme con ECMA-154 / ISO 10090.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA201" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA201" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 3½" conforme con ECMA-201 / ISO 13963.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA201_embossed" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA201_embossed" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico estampado de 3½" conforme con ECMA-201 / ISO 13963.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA223" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA223" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 3½" conforme con ECMA-223.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA239" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA239" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 3½" conforme con ECMA-239 / ISO 15498.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_FDFORMAT_MF2DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_FDFORMAT_MF2DD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad de 3½" en formato FDFORMAT.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_FDFORMAT_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_FDFORMAT_MF2HD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de alta densidad de 3½" en formato FDFORMAT.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_GigaMO" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_GigaMO" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 3½" modelo GigaMO.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_GigaMO2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_GigaMO2" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 3½" modelo GigaMO 2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF1DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF1DD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad y una cara de 3½" con formato IBM.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF1DD_8" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF1DD_8" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad y una cara de 3½" con formato IBM (8 sectores).</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2DD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad de 3½" con formato IBM.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2DD_8" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2DD_8" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad de 3½" con formato IBM (8 sectores).</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2ED" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2ED" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de densidad extra de 3½" con formato IBM.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2HD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de alta densidad de 3½" con formato IBM.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LS_PC98_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LS_PC98_MF2HD" xml:space="preserve">
|
||||
<value>El modelo de la unidad es LS (SuperDisk), el medio tiene 2880 bloques de 512 bytes, estableciendo tipo como disquete de alta densidad de 3½" con formato PC-98.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_PC98_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_PC98_MF2HD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de alta densidad de 3½" con formato PC-98.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA183" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA183" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 5¼" conforme con ECMA-183 / ISO 13481.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA184" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA184" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 5¼" conforme con ECMA-184 / ISO 13549.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA195" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA195" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 5¼" conforme con ECMA-195 / ISO 13482.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA238" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA238" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 5¼" conforme con ECMA-238 / ISO 15486.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA280" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA280" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 5¼" conforme con ECMA-280 / ISO 18093.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA322" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA322" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 5¼" conforme con ECMA-322 / ISO 22092.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA260" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA260" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 356mm conforme con ECMA-260 / ISO 15898.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA317" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA317" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 300mm conforme con ECMA-317 / ISO 20162.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA56" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA56" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad de 5¼" en formato ECMA-56.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA66" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA66" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 5¼" en formato ECMA-66.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA70" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA70" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 5¼" en formato ECMA-70.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA78" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA78" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 5¼" en formato ECMA-78.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA99" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA99" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 5¼" en formato ECMA-99.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA54" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA54" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 8" en formato ECMA-54.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA59" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA59" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 8" en formato ECMA-59.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA69" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA69" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 8" en formato ECMA-69.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_FDFORMAT_MD2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_FDFORMAT_MD2HD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de alta densidad de 5¼" en formato FDFORMAT.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD1DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD1DD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad y una cara de 5¼" en formato IBM.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD1DD_8" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD1DD_8" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad y una cara de 5¼" en formato IBM (8 sectores).</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD2DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD2DD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad de 5¼" en formato IBM.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD2DD_8" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD2DD_8" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad de 5¼" en formato IBM (8 sectores.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD2HD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de alta densidad de 5¼" en formato IBM.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ISO10089" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ISO10089" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 5¼" conforme con ISO 10089.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ISO14517" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ISO14517" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 5¼" conforme con ISO 14517.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ISO15041" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ISO15041" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 3½" conforme con ISO 15041.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ISO15286" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ISO15286" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico de 5¼" conforme con ISO 15286.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LS120" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LS120" xml:space="preserve">
|
||||
<value>El modelo de la unidad es LS (SuperDisk), el medio tiene 246528 bloques de 512 bytes, estableciendo tipo como LS-120.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LS240" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LS240" xml:space="preserve">
|
||||
<value>El modelo de la unidad es LS (SuperDisk), el medio tiene 469504 bloques de 512 bytes, estableciendo tipo como LS-120.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_JAZ" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_JAZ" xml:space="preserve">
|
||||
<value>El fabricante de la unidad es IOMEGA, el modelo es JAZ y el medio tiene 2091050 bloques de 512 bytes, estableciendo tipo como JAZ de 1Gb.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_JAZ2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_JAZ2" xml:space="preserve">
|
||||
<value>El fabricante de la unidad es IOMEGA, el modelo es JAZ y el medio tiene 3915600 bloques de 512 bytes, estableciendo tipo como JAZ de 2Gb.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ZIP100" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ZIP100" xml:space="preserve">
|
||||
<value>El fabricante de la unidad es IOMEGA, el modelo es ZIP y el medio tiene 196608 bloques de 512 bytes, estableciendo tipo como ZIP de 100Mb.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ZIP250" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ZIP250" xml:space="preserve">
|
||||
<value>El fabricante de la unidad es IOMEGA, el modelo es ZIP y el medio tiene 196608 bloques de 512 bytes, estableciendo tipo como ZIP de 250Mb.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, estableciendo tipo como LTO.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO2" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, estableciendo tipo como LTO-2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_QIC11" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_QIC11" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, estableciendo tipo como QIC-11.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_QIC120" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_QIC120" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, estableciendo tipo como QIC-120.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_QIC150" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_QIC150" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, estableciendo tipo como QIC-150.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_QIC24" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_QIC24" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, estableciendo tipo como QIC-24.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Travan5" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Travan5" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, estableciendo tipo como Travan 5.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Travan4" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Travan4" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, estableciendo tipo como Travan 4.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T10000A" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T10000A" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el fabricante es StorageTek, estableciendo tipo como T10000A.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T10000B" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T10000B" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el fabricante es StorageTek, estableciendo tipo como T10000B.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T10000C" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T10000C" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el fabricante es StorageTek, estableciendo tipo como T10000C.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T10000D" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T10000D" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el fabricante es StorageTek, estableciendo tipo como T10000D.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T9840A" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T9840A" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el fabricante es StorageTek, estableciendo tipo como T9840A.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T9840D" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T9840D" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el fabricante es StorageTek, estableciendo tipo como T9840D.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T9940A" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T9940A" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el fabricante es StorageTek, estableciendo tipo como T9940A.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T9940B" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T9940B" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el fabricante es StorageTek, estableciendo tipo como T9940B.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T9940C" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T9940C" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el fabricante es StorageTek, estableciendo tipo como T9840C.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_106m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_106m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape de 106m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_112m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_112m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape de 112m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_125m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_125m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape de 125m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_150m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_150m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape de 150m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_15m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_15m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape de 15m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_160m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_160m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape XL de 160m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_170m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_170m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape de 170m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_225m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_225m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape de 225m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_22m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_22m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape de 22m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_22m_AME" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_22m_AME" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape AME de 22m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_28m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_28m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape de 28m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_40m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_40m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape de 40m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_45m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_45m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape de 45m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_54m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_54m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape de 54m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_75m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_75m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape de 75m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_76m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_76m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape de 76.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_80m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_80m" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "exb", estableciendo tipo como Exatape de 80m.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO2_ult" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO2_ult" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "ult", estableciendo tipo como LTO-2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO3" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO3" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "ult", estableciendo tipo como LTO-3.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO4" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO4" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "ult", estableciendo tipo como LTO-4.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO5" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO5" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "ult", estableciendo tipo como LTO-5.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO6_ult" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO6_ult" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "ult", estableciendo tipo como LTO-6.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO7_ult" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO7_ult" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "ult", estableciendo tipo como LTO-7.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO_ult" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO_ult" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "ult", estableciendo tipo como LTO.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SAIT" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SAIT" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "sdz", estableciendo tipo como Super AIT.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SDLT" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SDLT" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "dlt", estableciendo tipo como SuperDLT.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SDLT2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SDLT2" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "dlt", estableciendo tipo como SuperDLT 2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Travan5_stt" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Travan5_stt" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "stt", estableciendo tipo como Travan 5.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Travan7" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Travan7" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "stt", estableciendo tipo como Travan 7.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_VStape" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_VStape" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "dlt", estableciendo tipo como VStape I.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_VXA" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_VXA" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "vxa", estableciendo tipo como VXA.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_VXA2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_VXA2" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "vxa", estableciendo tipo como VXA 2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_VXA3" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_VXA3" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "vxa", estableciendo tipo como VXA 3.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO3" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO3" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "ult", estableciendo tipo como WORM LTO-3.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO4" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO4" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "ult", estableciendo tipo como WORM LTO-4.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO5" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO5" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "ult", estableciendo tipo como WORM LTO-5.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO6_ult" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO6_ult" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "ult", estableciendo tipo como WORM LTO-6.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO7_ult" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO7_ult" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "uly", estableciendo tipo como WORM LTO-7.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO2" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO2"
|
||||
xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "ult", estableciendo tipo como LTO-2.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO3" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO3"
|
||||
xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "ult", estableciendo tipo como LTO-3.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO4" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO4"
|
||||
xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "ult", estableciendo tipo como LTO-4.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO5" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO5"
|
||||
xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el modelo de la unidad comienza por "ult", estableciendo tipo como LTO-5.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Floptical" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Floptical" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como Floptical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_HiMD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_HiMD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como Sony HiMD.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MD60" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MD60" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como MiniDisc de 60 minutos.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MD74" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MD74" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como MiniDisc de 74 minutos.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MD80" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MD80" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como MiniDisc de 80 minutos.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_REV120" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_REV120" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como REV de 120Gb.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_REV35" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_REV35" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como REV de 35Gb.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_REV70" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_REV70" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como REV de 70Gb.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_UDO" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_UDO" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como UDO.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_UDO2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_UDO2" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como UDO2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Unknown" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Unknown" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como desconocido.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Unknown_MO" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Unknown_MO" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como magneto-óptico desconocido.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_WORM_UDO2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_WORM_UDO2" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como WORM UDO 2.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_media_has_1_blocks_of_2_bytes_setting_media_type_to_PD_650" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_media_has_1_blocks_of_2_bytes_setting_media_type_to_PD_650" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como PD-650.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_media_has_1_blocks_of_2_bytes_setting_media_type_to_WORM_PD_650" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_media_has_1_blocks_of_2_bytes_setting_media_type_to_WORM_PD_650"
|
||||
xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como WORM PD-650.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_23FD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_23FD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 8" en formato IBM 23FD.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_33FD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_33FD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 8" en formato IBM 33FD.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_43FD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_43FD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 8" en formato IBM 43FD.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_53FD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_53FD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de 8" en formato IBM 53FD.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_PC98_MD2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_PC98_MD2HD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de alta densidad de 5¼" en formato PC-98.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Sharp_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Sharp_MF2HD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de alta densidad de 3½" con formato Sharp.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_HF12" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_HF12" xml:space="preserve">
|
||||
<value>El medio tiene 46956 bloques de 256 bytes, estableciendo tipo como HyperFlex de 12Mb.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_HF24" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_HF24" xml:space="preserve">
|
||||
<value>El medio tiene 46956 bloques de 256 bytes, estableciendo tipo como HyperFlex de 24Mb.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Orb" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Orb" xml:space="preserve">
|
||||
<value>El modelo de la unidad es Castlewood Orb, el medio tiene 4307184 bloques de 512 bytes, estableciendo tipo como Orb.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_RDX320" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_RDX320" xml:space="preserve">
|
||||
<value>El modelo de la unidad es RDX, el medio tiene {0} bloques de {1} bytes, estableciendo tipo como RDX320.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SQ2000" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SQ2000" xml:space="preserve">
|
||||
<value>El fabricante de la unidad es SyQuest, el medio tiene 390696 bloques de 512 bytes, estableciendo tipo como SQ2000.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SQ310" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SQ310" xml:space="preserve">
|
||||
<value>El fabricante de la unidad es SyQuest, el medio tiene 215440 bloques de 512 bytes, estableciendo tipo como SQ310.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SQ327" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SQ327" xml:space="preserve">
|
||||
<value>El fabricante de la unidad es SyQuest, el medio tiene 524288 bloques de 512 bytes, estableciendo tipo como SQ327.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SQ400" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SQ400" xml:space="preserve">
|
||||
<value>El fabricante de la unidad es SyQuest, el medio tiene 87600 bloques de 512 bytes, estableciendo tipo como SQ400.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SQ800" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SQ800" xml:space="preserve">
|
||||
<value>El fabricante de la unidad es SyQuest, el medio tiene 173456 bloques de 512 bytes, estableciendo tipo como SQ800.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SyJet" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SyJet" xml:space="preserve">
|
||||
<value>El fabricante de la unidad es SyQuest, el medio tiene 2929800 bloques de 512 bytes, estableciendo tipo como SyJet.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_PocketZIP" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_PocketZIP" xml:space="preserve">
|
||||
<value>El fabricante de la unidad es IOMEGA, el medio tiene 78882 bloques de 512 bytes, estableciendo tipo como PocketZIP.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_HiFD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_HiFD" xml:space="preserve">
|
||||
<value>El modelo de la unidad es HiFD, el medio tiene 393380 bloques de 512 bytes, estableciendo tipo como HiFD.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_FD32MB" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_FD32MB" xml:space="preserve">
|
||||
<value>El modelo de la unidad es LS (SuperDisk), el medio tiene 65536 bloques de 512 bytes, estableciendo tipo como FD32MB.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_EZ135" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_EZ135" xml:space="preserve">
|
||||
<value>El fabricante es SyQuest, el medio tiene 262144 bloques de 512 bytes, estableciendo tipo como EZ135.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_EZ230" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_EZ230" xml:space="preserve">
|
||||
<value>El fabricante es SyQuest, el medio tiene 450560 bloques de 512 bytes, estableciendo tipo como EZ230.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM3490" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM3490" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, estableciendo tipo como IBM 3490.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM3490E" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM3490E" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h, estableciendo tipo como IBM 3490E.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM3592" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM3592" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el código de densidad es {1:X2}h y el fabricante de la unidad es IBM, estableciendo tipo como IBM 3592.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MD60_MDDATA" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MD60_MDDATA" xml:space="preserve">
|
||||
<value>El tipo de periférico SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como MiniDisc de 60 minutos.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MD74_MDDATA" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MD74_MDDATA" xml:space="preserve">
|
||||
<value>El tipo de periférico SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como MiniDisc de 74 minutos.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MD80_MDDATA" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MD80_MDDATA" xml:space="preserve">
|
||||
<value>El tipo de periférico SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como MiniDisc de 80 minutos.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MDDATA" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MDDATA" xml:space="preserve">
|
||||
<value>El tipo de periférico SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como MiniDisc for Data.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MetaFloppy" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MetaFloppy" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, el medio tiene {1} bloques de {2} bytes, estableciendo tipo como disquete de doble densidad y una cara de 5¼" en formato MetaFloppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ZBC_Host_Managed" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ZBC_Host_Managed" xml:space="preserve">
|
||||
<value>El tipo de periférico SCSI es {0:X2}h, estableciendo tipo como dispositivo de zonas de bloques gestionado.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_and_device_is_USB_setting_media_type_to_Flash_Drive" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_and_device_is_USB_setting_media_type_to_Flash_Drive" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h y el dispositivo es USB, estableciendo tipo como unidad Flash.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CDR" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CDR" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, estableciendo tipo como CD-R.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CDRW" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CDRW" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, estableciendo tipo como CD-RW.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CD_Plus" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CD_Plus" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, estableciendo tipo como CD+.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CD_ROM" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CD_ROM" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, estableciendo tipo como CD-ROM.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_Compact_Disc" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_Compact_Disc" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, estableciendo tipo como Compact Disc.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_Compact_Disc_Digital_Audio" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_Compact_Disc_Digital_Audio" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, estableciendo tipo como Compact Disc Digital Audio.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_Photo_CD" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_Photo_CD" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, estableciendo tipo como Photo CD.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_unknown_magneto_optical" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_unknown_magneto_optical" xml:space="preserve">
|
||||
<value>El tipo de medio SCSI es {0:X2}h, estableciendo tipo como magneto-óptico desconocido.</value>
|
||||
</data>
|
||||
<data name="Unhandled_exception_calling_uname_0" xml:space="preserve">
|
||||
<data name="Unhandled_exception_calling_uname_0" xml:space="preserve">
|
||||
<value>Excepción no manejada llamando a uname: {0}</value>
|
||||
</data>
|
||||
</root>
|
||||
@@ -1,636 +1,638 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
|
||||
<root>
|
||||
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root"
|
||||
xmlns="">
|
||||
<xsd:element name="root" msdata:IsDataSet="true"></xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>1.3</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
|
||||
PublicKeyToken=b77a5c561934e089
|
||||
</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
|
||||
PublicKeyToken=b77a5c561934e089
|
||||
</value>
|
||||
</resheader>
|
||||
<data name="Unhandled_exception_calling_uname_0" xml:space="preserve">
|
||||
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"
|
||||
id="root"
|
||||
xmlns="">
|
||||
<xsd:element name="root" msdata:IsDataSet="true"></xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>1.3</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
|
||||
PublicKeyToken=b77a5c561934e089
|
||||
</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
|
||||
PublicKeyToken=b77a5c561934e089
|
||||
</value>
|
||||
</resheader>
|
||||
<data name="Unhandled_exception_calling_uname_0" xml:space="preserve">
|
||||
<value>Unhandled exception calling uname: {0}</value>
|
||||
</data>
|
||||
<data name="Drive_manufacturer_is_SyQuest_media_has_1961069_blocks_of_512_bytes_setting_media_type_to_SparQ"
|
||||
xml:space="preserve">
|
||||
<data name="Drive_manufacturer_is_SyQuest_media_has_1961069_blocks_of_512_bytes_setting_media_type_to_SparQ"
|
||||
xml:space="preserve">
|
||||
<value>Drive manufacturer is SyQuest, media has 1961069 blocks of 512 bytes, setting media type to SparQ.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_media_has_1_blocks_of_2_bytes_setting_media_type_to_WORM_PD_650"
|
||||
xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_media_has_1_blocks_of_2_bytes_setting_media_type_to_WORM_PD_650"
|
||||
xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to WORM PD-650.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_media_has_1_blocks_of_2_bytes_setting_media_type_to_PD_650" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_media_has_1_blocks_of_2_bytes_setting_media_type_to_PD_650" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to PD-650.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_Compact_Disc" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_Compact_Disc" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, setting media type to Compact Disc.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CD_ROM" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CD_ROM" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, setting media type to CD-ROM.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_Compact_Disc_Digital_Audio" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_Compact_Disc_Digital_Audio" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, setting media type to Compact Disc Digital Audio.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CD_Plus" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CD_Plus" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, setting media type to CD+.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_Photo_CD" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_Photo_CD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, setting media type to Photo CD.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CDR" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CDR" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, setting media type to CD-R.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CDRW" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_CDRW" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, setting media type to CD-RW.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_and_device_is_USB_setting_media_type_to_Flash_Drive" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_and_device_is_USB_setting_media_type_to_Flash_Drive" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h and device is USB, setting media type to Flash Drive.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO2"
|
||||
xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO2"
|
||||
xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive starts with "ult", setting media type to LTO-2.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO3"
|
||||
xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO3"
|
||||
xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive starts with "ult", setting media type to LTO-3.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO4"
|
||||
xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO4"
|
||||
xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive starts with "ult", setting media type to LTO-4.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO5"
|
||||
xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_density_code_is_1_drive_starts_with_ult_setting_media_type_to_LTO5"
|
||||
xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive starts with "ult", setting media type to LTO-5.</value>
|
||||
</data>
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_unknown_magneto_optical" xml:space="preserve">
|
||||
<data name="SCSI_medium_type_is_0_setting_media_type_to_unknown_magneto_optical" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, setting media type to unknown magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA154" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA154" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-154 / ISO 10090 conforming 3½" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA201_embossed" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA201_embossed" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-201 / ISO 13963 conforming 3½" embossed magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA201" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA201" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-201 / ISO 13963 conforming 3½" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA223" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA223" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-223 conforming 3½" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA183" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA183" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-183 / ISO 13481 conforming 5¼" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ISO15041" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ISO15041" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ISO 15041 conforming 3½" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA184" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA184" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-184 / ISO 13549 conforming 5¼" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA195" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA195" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-195 / ISO 13842 conforming 5¼" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ISO14517" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ISO14517" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ISO 14517 conforming 5¼" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Unknown_MO" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Unknown_MO" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to unknown magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ISO10089" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ISO10089" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ISO 10089 conforming 5¼" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA238" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA238" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-238 / ISO 15486 conforming 5¼" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ISO15286" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ISO15286" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ISO 15286 conforming 5¼" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA322" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA322" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-322 / ISO 22092 conforming 5¼" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA260" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA260" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-260 / ISO 15898 conforming 356mm magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA239" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA239" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-239 / ISO 15498 conforming 3½" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_GigaMO" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_GigaMO" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to GigaMO 3½" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_GigaMO2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_GigaMO2" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to GigaMO 2 3½" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA280" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA280" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-280 / ISO 18093 conforming 5¼" magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA317" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA317" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-317 / ISO 20162 conforming 300mm magneto-optical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_UDO" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_UDO" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to UDO.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_WORM_UDO2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_WORM_UDO2" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to WORM UDO2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_UDO2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_UDO2" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to UDO2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA54" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA54" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-54 formatted 8" floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA59" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA59" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-59 formatted 8" floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA69" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA69" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-69 formatted 8" floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Unknown" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Unknown" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to unknown.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA66" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA66" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-66 formatted 5¼" floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA70" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA70" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-70 formatted 5¼" floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA78" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA78" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-78 formatted 5¼" floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA99" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA99" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-99 formatted 5¼" floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2DD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to IBM formatted 3½" double density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_REV120" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_REV120" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to 120Gb REV.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_REV70" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_REV70" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to 70Gb REV.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_REV35" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_REV35" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to 35Gb REV.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_PC98_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_PC98_MF2HD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to PC-98 formatted 3½" high density floppy (15 sectors).</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2HD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to IBM formatted 3½" high density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Atari_MD1SD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Atari_MD1SD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Atari formatted 5¼" single density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Atari_MD1DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Atari_MD1DD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Atari formatted 5¼" double density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_33FD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_33FD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to IBM formatted 8" (33FD) floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_43FD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_43FD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to IBM formatted 8" (43FD) floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ECMA56" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ECMA56" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to ECMA-56 formatted 5¼" double density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MD1SD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MD1SD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Acorn formatted 5¼" single density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS32" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS32" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Apple DOS 3.2 formatted 5¼" floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS33" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS33" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Apple DOS 3.3 formatted 5¼" floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MD1DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MD1DD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Acorn formatted 5¼" double density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS32_DS" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS32_DS" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Apple DOS 3.2 formatted 5¼" double sided floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS33_DS" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Apple_DOS33_DS" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Apple DOS 3.3 formatted 5¼" double sided floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MetaFloppy" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MetaFloppy" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to MetaFloppy formatted 5¼" double density single sided floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MD1DD_80" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MD1DD_80" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Acorn formatted 5¼" double density floppy with 80 tracks.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DEC_RX02" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DEC_RX02" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to DEC RX02 floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_53FD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_53FD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to IBM formatted 8" (53FD) floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli10" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli10" xml:space="preserve">
|
||||
<value>Drive manufacturer is IOMEGA, media has {0} blocks of 256 bytes, setting media type to 10Mb Bernoulli Box.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_23FD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_23FD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to IBM formatted 8" (23FD) floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD1DD_8" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD1DD_8" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to IBM formatted 5¼" double density single sided floppy (8 sectors).</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD1DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD1DD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to IBM formatted 5¼" double density single sided floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Apricot_MF2DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Apricot_MF2DD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Apricot formatted 3½" floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF1DD_8" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF1DD_8" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to IBM formatted 3½" double density single sided floppy (8 sectors).</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD2DD_8" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD2DD_8" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to IBM formatted 5¼" double density floppy (8 sectors).</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF1DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF1DD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to IBM formatted 3½" double density single sided floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD2DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD2DD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to IBM formatted 5¼" double density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Apple_MF1DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Apple_MF1DD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Apple formatted 3½" double density single sided floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2DD_8" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2DD_8" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to IBM formatted 3½" double density floppy (8 sectors).</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_FDFORMAT_MF2DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_FDFORMAT_MF2DD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to FDFORMAT formatted 3½" double density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Amiga_MF2DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Amiga_MF2DD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Amiga formatted 3½" double density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MD2HD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to IBM formatted 5¼" high density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_FDFORMAT_MD2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_FDFORMAT_MD2HD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to FDFORMAT formatted 5¼" high density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DMF_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DMF_MF2HD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Microsoft DMF formatted 3½" high density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_FDFORMAT_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_FDFORMAT_MF2HD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to FDFORMAT formatted 3½" high density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Amiga_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Amiga_MF2HD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Amiga formatted 3½" high density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2ED" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM_MF2ED" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to IBM formatted 3½" extra density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Floptical" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Floptical" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Floptical.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_FD32MB" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_FD32MB" xml:space="preserve">
|
||||
<value>Drive model is LS (SuperDisk), media has 65536 blocks of 512 bytes, setting media type to FD32MB.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_PocketZIP" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_PocketZIP" xml:space="preserve">
|
||||
<value>Drive manufacturer is IOMEGA, media has 78882 blocks of 512 bytes, setting media type to PocketZIP.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SQ400" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SQ400" xml:space="preserve">
|
||||
<value>Drive manufacturer is SyQuest, media has 86700 blocks of 512 bytes, setting media type to SQ400.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli2_44" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli2_44" xml:space="preserve">
|
||||
<value>Drive manufacturer is IOMEGA, media has 87040 blocks of 512 bytes, setting media type to 44Mb Bernoulli Box II.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SQ800" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SQ800" xml:space="preserve">
|
||||
<value>Drive manufacturer is SyQuest, media has 173456 blocks of 512 bytes, setting media type to SQ800.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli2_90" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli2_90" xml:space="preserve">
|
||||
<value>Drive manufacturer is IOMEGA, media has 175856 blocks of 512 bytes, setting media type to 90Mb Bernoulli Box II.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ZIP100" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ZIP100" xml:space="preserve">
|
||||
<value>Drive manufacturer is IOMEGA, drive model is ZIP, media has 196608 blocks of 512 bytes, setting media type to 100Mb ZIP.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SQ310" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SQ310" xml:space="preserve">
|
||||
<value>Drive manufacturer is SyQuest, media has 215440 blocks of 512 bytes, setting media type to SQ310.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LS120" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LS120" xml:space="preserve">
|
||||
<value>Drive model is LS (SuperDisk), media has 246528 blocks of 512 bytes, setting media type to LS-120.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_EZ135" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_EZ135" xml:space="preserve">
|
||||
<value>Drive manufacturer is SyQuest, media has 262144 blocks of 512 bytes, setting media type to EZ135.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli2_150" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Bernoulli2_150" xml:space="preserve">
|
||||
<value>Drive manufacturer is IOMEGA, media has 294918 blocks of 512 bytes, setting media type to 150Mb Bernoulli Box II.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SQ2000" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SQ2000" xml:space="preserve">
|
||||
<value>Drive manufacturer is SyQuest, media has 390696 blocks of 512 bytes, setting media type to SQ2000.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_HiFD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_HiFD" xml:space="preserve">
|
||||
<value>Drive model is HiFD, media has 393380 blocks of 512 bytes, setting media type to HiFD.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_EZ230" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_EZ230" xml:space="preserve">
|
||||
<value>Drive manufacturer is SyQuest, media has 450560 blocks of 512 bytes, setting media type to EZ230.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LS240" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LS240" xml:space="preserve">
|
||||
<value>Drive model is LS (SuperDisk), media has 469504 blocks of 512 bytes, setting media type to LS-240.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ZIP250" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ZIP250" xml:space="preserve">
|
||||
<value>Drive manufacturer is IOMEGA, drive model is ZIP, media has 489532 blocks of 512 bytes, setting media type to 250Mb ZIP.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SQ327" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SQ327" xml:space="preserve">
|
||||
<value>Drive manufacturer is SyQuest, media has 524288 blocks of 512 bytes, setting media type to SQ327.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_JAZ" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_JAZ" xml:space="preserve">
|
||||
<value>Drive manufacturer is IOMEGA, drive model is JAZ, media has 2091050 blocks of 512 bytes, setting media type to 1Gb JAZ.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SyJet" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SyJet" xml:space="preserve">
|
||||
<value>Drive manufacturer is SyQuest, media has 2929800 blocks of 512 bytes, setting media type to SyJet.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_JAZ2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_JAZ2" xml:space="preserve">
|
||||
<value>Drive manufacturer is IOMEGA, drive model is JAZ, media has 3915600 blocks of 512 bytes, setting media type to 2Gb JAZ.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Orb" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Orb" xml:space="preserve">
|
||||
<value>Drive model is Castlewood Orb, media has 4307184 blocks of 512 bytes, setting media type to Orb.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_RDX320" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_RDX320" xml:space="preserve">
|
||||
<value>Drive model is RDX, media has {0} blocks of {1} bytes, setting media type to RDX320.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MF2DD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MF2DD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Acorn formatted 3½" double density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LS_PC98_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LS_PC98_MF2HD" xml:space="preserve">
|
||||
<value>Drive model is LS (SuperDisk), media has 2880 blocks of 512 bytes, setting media type to PC-98 formatted 3½" high density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Sharp_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Sharp_MF2HD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Sharp formatted 3½" high density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_PC98_MD2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_PC98_MD2HD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to PC-98 formatted 5¼" high density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MF2HD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Acorn_MF2HD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Acorn formatted 3½" high density floppy.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MD60" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MD60" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to 60 minute MiniDisc.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MD74" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MD74" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to 74 minute MiniDisc.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MD80" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MD80" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to 80 minute MiniDisc.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_HiMD" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_HiMD" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to Sony HiMD.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MDDATA" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MDDATA" xml:space="preserve">
|
||||
<value>SCSI peripheral type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to MiniDisc for Data.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MD60_MDDATA" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MD60_MDDATA" xml:space="preserve">
|
||||
<value>SCSI peripheral type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to 60 minute MiniDisc.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MD74_MDDATA" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MD74_MDDATA" xml:space="preserve">
|
||||
<value>SCSI peripheral type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to 74 minute MiniDisc.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_MD80_MDDATA" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_MD80_MDDATA" xml:space="preserve">
|
||||
<value>SCSI peripheral type is {0:X2}h, media has {1} blocks of {2} bytes, setting media type to 80 minute MiniDisc.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_ZBC_Host_Managed" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_ZBC_Host_Managed" xml:space="preserve">
|
||||
<value>SCSI peripheral type is {0:X2}h, setting media type to host managed zoned block device.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_QIC11" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_QIC11" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, setting media type to QIC-11.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_QIC24" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_QIC24" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, setting media type to QIC-24.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM3490" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM3490" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, setting media type to IBM 3490.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_QIC120" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_QIC120" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, setting media type to QIC-120.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_QIC150" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_QIC150" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, setting media type to QIC-150.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DDS" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DDS" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, setting media type to DDS.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DDS2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DDS2" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, setting media type to DDS-2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DDS3" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DDS3" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, setting media type to DDS-3.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DDS4" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DDS4" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, setting media type to DDS-4.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM3490E" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM3490E" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, setting media type to IBM 3490E.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO_ult" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO_ult" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "ult" setting media type to LTO.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SAIT" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SAIT" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "sdz" setting media type to Super AIT.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO2_ult" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO2_ult" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "ult" setting media type to LTO-2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T9840A" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T9840A" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive manufacturer is StorageTek, setting media type to T9840A.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T9940A" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T9940A" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive manufacturer is StorageTek, setting media type to T9940A.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO3" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO3" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "ult" setting media type to LTO-3.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T9940B" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T9940B" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive manufacturer is StorageTek, setting media type to T9940B.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T9940C" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T9940C" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive manufacturer is StorageTek, setting media type to T9840C.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO4" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO4" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "ult" setting media type to LTO-4.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T9840D" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T9840D" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive manufacturer is StorageTek, setting media type to T9840D.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T10000A" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T10000A" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive manufacturer is StorageTek, setting media type to T10000A.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T10000B" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T10000B" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive manufacturer is StorageTek, setting media type to T10000B.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T10000C" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T10000C" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive manufacturer is StorageTek, setting media type to T10000C.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_T10000D" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_T10000D" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive manufacturer is StorageTek, setting media type to T10000D.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO5" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO5" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "ult" setting media type to LTO-5.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO3" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO3" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "ult" setting media type to WORM LTO-3.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO4" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO4" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "ult" setting media type to WORM LTO-4.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO5" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO5" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "ult" setting media type to WORM LTO-5.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, setting media type to LTO.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO2" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, setting media type to LTO-2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DDS3_dat" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DDS3_dat" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "dat" setting media type to DDS-3.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DDS4_alt" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DDS4_alt" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "dat" setting media type to DDS-4.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DAT72_dat" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DAT72_dat" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "dat" setting media type to DAT72.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DDS2_dat" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DDS2_dat" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "dat" setting media type to DDS-2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO6_ult" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO6_ult" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "ult" setting media type to LTO-6.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO6_ult" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO6_ult" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "ult" setting media type to WORM LTO-6.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_LTO7_ult" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_LTO7_ult" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "ult" setting media type to LTO-7.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO7_ult" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_WORM_LTO7_ult" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "ult" setting media type to WORM LTO-7.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_15m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_15m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 15m Exatape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_IBM3592" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_IBM3592" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive manufacturer is IBM, setting media type to IBM 3592.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_VXA" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_VXA" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "vxa" setting media type to VXA.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_28m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_28m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 28m Exatape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_CompactTape" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_CompactTape" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "dlt" setting media type to CompactTape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_CompactTapeII" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_CompactTapeII" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "dlt" setting media type to CompactTape II.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_VXA2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_VXA2" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "vxa" setting media type to VXA 2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_VXA3" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_VXA3" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "vxa" setting media type to VXA 3.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_54m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_54m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 54m Exatape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DLTtapeIII" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DLTtapeIII" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "dlt" setting media type to DLTtape III.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DLTtapeIIIxt" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DLTtapeIIIxt" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "dlt" setting media type to DLTtape IIIxt.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_106m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_106m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 106m Exatape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_DLTtapeIV" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_DLTtapeIV" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "dlt" setting media type to DLTtape IV.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Travan5_stt" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Travan5_stt" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "stt" setting media type to Travan 5.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_160m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_160m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 160m Exatape XL.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SDLT" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SDLT" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "dlt" setting media type to SuperDLT.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_SDLT2" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_SDLT2" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "dlt" setting media type to SuperDLT 2.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_VStape" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_VStape" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "dlt" setting media type to VStape I.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Travan7" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Travan7" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "stt" setting media type to Travan 7.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Travan4" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Travan4" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, setting media type to Travan 4.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Travan5" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Travan5" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, setting media type to Travan 5.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_22m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_22m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 22m Exatape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_40m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_40m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 40m Exatape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_76m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_76m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 76m Exatape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_112m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_112m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 112m Exatape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_22m_AME" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_22m_AME" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 22m Exatape AME.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_170m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_170m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 170m Exatape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_125m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_125m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 125m Exatape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_45m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_45m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 45m Exatape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_225m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_225m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 225m Exatape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_150m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_150m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 150m Exatape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_75m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_75m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 75m Exatape.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_Exatape_80m" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_Exatape_80m" xml:space="preserve">
|
||||
<value>SCSI medium type is {0:X2}h, density code is {1:X2}h, drive model starts with "exb" setting media type to 80m Exatape.</value>
|
||||
</data>
|
||||
<data name="IDENTIFY_response_is_different_than_512_bytes_not_decoding" xml:space="preserve">
|
||||
<data name="IDENTIFY_response_is_different_than_512_bytes_not_decoding" xml:space="preserve">
|
||||
<value>IDENTIFY response is different than 512 bytes, not decoding.</value>
|
||||
</data>
|
||||
<data name="INQUIRY_response_is_0_bytes_less_than_minimum_of_36_bytes" xml:space="preserve">
|
||||
<data name="INQUIRY_response_is_0_bytes_less_than_minimum_of_36_bytes" xml:space="preserve">
|
||||
<value>INQUIRY response is {0} bytes, less than minimum of 36 bytes, decoded data can be incorrect, not decoding.</value>
|
||||
</data>
|
||||
<data name="INQUIRY_response_length_0_bytes_is_different_than_specified_in_length_field" xml:space="preserve">
|
||||
<data name="INQUIRY_response_length_0_bytes_is_different_than_specified_in_length_field" xml:space="preserve">
|
||||
<value>INQUIRY response length ({0} bytes) is different than specified in length field ({1} bytes), decoded data can be incorrect, not decoding.</value>
|
||||
</data>
|
||||
<data name="Exception_0" xml:space="preserve">
|
||||
<data name="Exception_0" xml:space="preserve">
|
||||
<value>Exception {0}</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_HF12" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_HF12" xml:space="preserve">
|
||||
<value>Media has 46956 blocks of 256 bytes, setting media type to 12Mb HyperFlex.</value>
|
||||
</data>
|
||||
<data name="SCSI_Media_Type_Description_HF24" xml:space="preserve">
|
||||
<data name="SCSI_Media_Type_Description_HF24" xml:space="preserve">
|
||||
<value>Media has 78936 blocks of 256 bytes, setting media type to 24Mb HyperFlex.</value>
|
||||
</data>
|
||||
</root>
|
||||
671
MediaType.cs
671
MediaType.cs
@@ -50,14 +50,19 @@ namespace Aaru.CommonTypes;
|
||||
|
||||
public enum MediaEncoding
|
||||
{
|
||||
Unknown, FM, MFM,
|
||||
M2FM, AppleGCR, CommodoreGCR
|
||||
Unknown,
|
||||
FM,
|
||||
MFM,
|
||||
M2FM,
|
||||
AppleGCR,
|
||||
CommodoreGCR
|
||||
}
|
||||
|
||||
/// <summary>Contains an enumeration of all known types of media.</summary>
|
||||
public enum MediaType : uint
|
||||
{
|
||||
#region Generics, types 0 to 9
|
||||
#region Generics, types 0 to 9
|
||||
|
||||
/// <summary>Unknown disk type</summary>
|
||||
Unknown = 0,
|
||||
/// <summary>Unknown magneto-optical</summary>
|
||||
@@ -72,9 +77,11 @@ public enum MediaType : uint
|
||||
FlashDrive = 5,
|
||||
/// <summary>Unknown data tape</summary>
|
||||
UnknownTape = 6,
|
||||
#endregion Generics, types 0 to 9
|
||||
|
||||
#region Somewhat standard Compact Disc formats, types 10 to 39
|
||||
#endregion Generics, types 0 to 9
|
||||
|
||||
#region Somewhat standard Compact Disc formats, types 10 to 39
|
||||
|
||||
/// <summary>Any unknown or standard violating CD</summary>
|
||||
CD = 10,
|
||||
/// <summary>CD Digital Audio (Red Book)</summary>
|
||||
@@ -127,10 +134,13 @@ public enum MediaType : uint
|
||||
/// CD-i Ready, contains a track before the first TOC track, in mode 2, and all TOC tracks are Audio. Subchannel
|
||||
/// marks track as audio pause.
|
||||
/// </summary>
|
||||
CDIREADY = 34, FMTOWNS = 35,
|
||||
#endregion Somewhat standard Compact Disc formats, types 10 to 39
|
||||
CDIREADY = 34,
|
||||
FMTOWNS = 35,
|
||||
|
||||
#endregion Somewhat standard Compact Disc formats, types 10 to 39
|
||||
|
||||
#region Standard DVD formats, types 40 to 50
|
||||
|
||||
#region Standard DVD formats, types 40 to 50
|
||||
/// <summary>DVD-ROM (applies to DVD Video and DVD Audio)</summary>
|
||||
DVDROM = 40,
|
||||
/// <summary>DVD-R</summary>
|
||||
@@ -153,9 +163,11 @@ public enum MediaType : uint
|
||||
DVDRWDL = 49,
|
||||
/// <summary>DVD-Download</summary>
|
||||
DVDDownload = 50,
|
||||
#endregion Standard DVD formats, types 40 to 50
|
||||
|
||||
#region Standard HD-DVD formats, types 51 to 59
|
||||
#endregion Standard DVD formats, types 40 to 50
|
||||
|
||||
#region Standard HD-DVD formats, types 51 to 59
|
||||
|
||||
/// <summary>HD DVD-ROM (applies to HD DVD Video)</summary>
|
||||
HDDVDROM = 51,
|
||||
/// <summary>HD DVD-RAM</summary>
|
||||
@@ -168,9 +180,11 @@ public enum MediaType : uint
|
||||
HDDVDRDL = 55,
|
||||
/// <summary>HD DVD-RW DL</summary>
|
||||
HDDVDRWDL = 56,
|
||||
#endregion Standard HD-DVD formats, types 51 to 59
|
||||
|
||||
#region Standard Blu-ray formats, types 60 to 69
|
||||
#endregion Standard HD-DVD formats, types 51 to 59
|
||||
|
||||
#region Standard Blu-ray formats, types 60 to 69
|
||||
|
||||
/// <summary>BD-ROM (and BD Video)</summary>
|
||||
BDROM = 60,
|
||||
/// <summary>BD-R</summary>
|
||||
@@ -183,9 +197,11 @@ public enum MediaType : uint
|
||||
BDREXL = 64,
|
||||
/// <summary>Ultra HD Blu-ray</summary>
|
||||
UHDBD = 65,
|
||||
#endregion Standard Blu-ray formats, types 60 to 69
|
||||
|
||||
#region Rare or uncommon optical standards, types 70 to 79
|
||||
#endregion Standard Blu-ray formats, types 60 to 69
|
||||
|
||||
#region Rare or uncommon optical standards, types 70 to 79
|
||||
|
||||
/// <summary>Enhanced Versatile Disc</summary>
|
||||
EVD = 70,
|
||||
/// <summary>Forward Versatile Disc</summary>
|
||||
@@ -204,18 +220,25 @@ public enum MediaType : uint
|
||||
FDDVD = 77,
|
||||
/// <summary>China Video Disc</summary>
|
||||
CVD = 78,
|
||||
#endregion Rare or uncommon optical standards, types 70 to 79
|
||||
|
||||
#region LaserDisc based, types 80 to 89
|
||||
#endregion Rare or uncommon optical standards, types 70 to 79
|
||||
|
||||
#region LaserDisc based, types 80 to 89
|
||||
|
||||
/// <summary>Pioneer LaserDisc</summary>
|
||||
LD = 80,
|
||||
/// <summary>Pioneer LaserDisc data</summary>
|
||||
LDROM = 81, LDROM2 = 82, LVROM = 83, MegaLD = 84,
|
||||
LDROM = 81,
|
||||
LDROM2 = 82,
|
||||
LVROM = 83,
|
||||
MegaLD = 84,
|
||||
/// <summary>Writable LaserDisc with support for component video</summary>
|
||||
CRVdisc = 85,
|
||||
#endregion LaserDisc based, types 80 to 89
|
||||
|
||||
#region MiniDisc based, types 90 to 99
|
||||
#endregion LaserDisc based, types 80 to 89
|
||||
|
||||
#region MiniDisc based, types 90 to 99
|
||||
|
||||
/// <summary>Sony Hi-MD</summary>
|
||||
HiMD = 90,
|
||||
/// <summary>Sony MiniDisc</summary>
|
||||
@@ -230,19 +253,24 @@ public enum MediaType : uint
|
||||
MD74 = 95,
|
||||
/// <summary>Sony MiniDisc, 80 minutes, formatted with Hi-MD format</summary>
|
||||
MD80 = 96,
|
||||
#endregion MiniDisc based, types 90 to 99
|
||||
|
||||
#region Plasmon UDO, types 100 to 109
|
||||
#endregion MiniDisc based, types 90 to 99
|
||||
|
||||
#region Plasmon UDO, types 100 to 109
|
||||
|
||||
/// <summary>5.25", Phase-Change, 1834348 sectors, 8192 bytes/sector, Ultra Density Optical, ECMA-350, ISO 17345</summary>
|
||||
UDO = 100,
|
||||
/// <summary>5.25", Phase-Change, 3669724 sectors, 8192 bytes/sector, Ultra Density Optical 2, ECMA-380, ISO 11976</summary>
|
||||
UDO2 = 101,
|
||||
/// <summary>5.25", Write-Once, 3668759 sectors, 8192 bytes/sector, Ultra Density Optical 2, ECMA-380, ISO 11976</summary>
|
||||
UDO2_WORM = 102,
|
||||
#endregion Plasmon UDO, types 100 to 109
|
||||
|
||||
#region Sony game media, types 110 to 129
|
||||
PlayStationMemoryCard = 110, PlayStationMemoryCard2 = 111,
|
||||
#endregion Plasmon UDO, types 100 to 109
|
||||
|
||||
#region Sony game media, types 110 to 129
|
||||
|
||||
PlayStationMemoryCard = 110,
|
||||
PlayStationMemoryCard2 = 111,
|
||||
/// <summary>Sony PlayStation game CD</summary>
|
||||
PS1CD = 112,
|
||||
/// <summary>Sony PlayStation 2 game CD</summary>
|
||||
@@ -256,12 +284,15 @@ public enum MediaType : uint
|
||||
/// <summary>Sony PlayStation 4 game Blu-ray</summary>
|
||||
PS4BD = 117,
|
||||
/// <summary>Sony PlayStation Portable Universal Media Disc (ECMA-365)</summary>
|
||||
UMD = 118, PlayStationVitaGameCard = 119,
|
||||
UMD = 118,
|
||||
PlayStationVitaGameCard = 119,
|
||||
/// <summary>Sony PlayStation 5 game Ultra HD Blu-ray</summary>
|
||||
PS5BD = 120,
|
||||
#endregion Sony game media, types 110 to 129
|
||||
|
||||
#region Microsoft game media, types 130 to 149
|
||||
#endregion Sony game media, types 110 to 129
|
||||
|
||||
#region Microsoft game media, types 130 to 149
|
||||
|
||||
/// <summary>Microsoft X-box Game Disc</summary>
|
||||
XGD = 130,
|
||||
/// <summary>Microsoft X-box 360 Game Disc</summary>
|
||||
@@ -270,9 +301,11 @@ public enum MediaType : uint
|
||||
XGD3 = 132,
|
||||
/// <summary>Microsoft X-box One Game Disc</summary>
|
||||
XGD4 = 133,
|
||||
#endregion Microsoft game media, types 130 to 149
|
||||
|
||||
#region Sega game media, types 150 to 169
|
||||
#endregion Microsoft game media, types 130 to 149
|
||||
|
||||
#region Sega game media, types 150 to 169
|
||||
|
||||
/// <summary>Sega MegaCD</summary>
|
||||
MEGACD = 150,
|
||||
/// <summary>Sega Saturn disc</summary>
|
||||
@@ -280,12 +313,20 @@ public enum MediaType : uint
|
||||
/// <summary>Sega/Yamaha Gigabyte Disc</summary>
|
||||
GDROM = 152,
|
||||
/// <summary>Sega/Yamaha recordable Gigabyte Disc</summary>
|
||||
GDR = 153, SegaCard = 154, MilCD = 155, MegaDriveCartridge = 156,
|
||||
_32XCartridge = 157, SegaPicoCartridge = 158, MasterSystemCartridge = 159,
|
||||
GameGearCartridge = 160, SegaSaturnCartridge = 161,
|
||||
#endregion Sega game media, types 150 to 169
|
||||
GDR = 153,
|
||||
SegaCard = 154,
|
||||
MilCD = 155,
|
||||
MegaDriveCartridge = 156,
|
||||
_32XCartridge = 157,
|
||||
SegaPicoCartridge = 158,
|
||||
MasterSystemCartridge = 159,
|
||||
GameGearCartridge = 160,
|
||||
SegaSaturnCartridge = 161,
|
||||
|
||||
#endregion Sega game media, types 150 to 169
|
||||
|
||||
#region Other game media, types 170 to 179
|
||||
|
||||
#region Other game media, types 170 to 179
|
||||
/// <summary>PC-Engine / TurboGrafx cartridge</summary>
|
||||
HuCard = 170,
|
||||
/// <summary>PC-Engine / TurboGrafx CD</summary>
|
||||
@@ -306,9 +347,11 @@ public enum MediaType : uint
|
||||
Nuon = 178,
|
||||
/// <summary>Bandai Playdia</summary>
|
||||
Playdia = 179,
|
||||
#endregion Other game media, types 170 to 179
|
||||
|
||||
#region Apple standard floppy format, types 180 to 189
|
||||
#endregion Other game media, types 170 to 179
|
||||
|
||||
#region Apple standard floppy format, types 180 to 189
|
||||
|
||||
/// <summary>5.25", SS, DD, 35 tracks, 13 spt, 256 bytes/sector, GCR</summary>
|
||||
Apple32SS = 180,
|
||||
/// <summary>5.25", DS, DD, 35 tracks, 13 spt, 256 bytes/sector, GCR</summary>
|
||||
@@ -323,9 +366,11 @@ public enum MediaType : uint
|
||||
AppleSonyDS = 185,
|
||||
/// <summary>5.25", DS, ?D, ?? tracks, ?? spt, 512 bytes/sector, GCR, opposite side heads, aka Twiggy</summary>
|
||||
AppleFileWare = 186,
|
||||
#endregion Apple standard floppy format
|
||||
|
||||
#region IBM/Microsoft PC floppy formats, types 190 to 209
|
||||
#endregion Apple standard floppy format
|
||||
|
||||
#region IBM/Microsoft PC floppy formats, types 190 to 209
|
||||
|
||||
/// <summary>5.25", SS, DD, 40 tracks, 8 spt, 512 bytes/sector, MFM</summary>
|
||||
DOS_525_SS_DD_8 = 190,
|
||||
/// <summary>5.25", SS, DD, 40 tracks, 9 spt, 512 bytes/sector, MFM</summary>
|
||||
@@ -362,9 +407,11 @@ public enum MediaType : uint
|
||||
/// bytes/sector, falsified to DOS as 23 spt, 512 bps
|
||||
/// </summary>
|
||||
XDF_35 = 204,
|
||||
#endregion IBM/Microsoft PC standard floppy formats, types 190 to 209
|
||||
|
||||
#region IBM standard floppy formats, types 210 to 219
|
||||
#endregion IBM/Microsoft PC standard floppy formats, types 190 to 209
|
||||
|
||||
#region IBM standard floppy formats, types 210 to 219
|
||||
|
||||
/// <summary>8", SS, SD, 32 tracks, 8 spt, 319 bytes/sector, FM</summary>
|
||||
IBM23FD = 210,
|
||||
/// <summary>8", SS, SD, 73 tracks, 26 spt, 128 bytes/sector, FM</summary>
|
||||
@@ -392,9 +439,11 @@ public enum MediaType : uint
|
||||
/// side 1 = 26 sectors, 256 bytes/sector
|
||||
/// </summary>
|
||||
IBM53FD_1024 = 218,
|
||||
#endregion IBM standard floppy formats, types 210 to 219
|
||||
|
||||
#region DEC standard floppy formats, types 220 to 229
|
||||
#endregion IBM standard floppy formats, types 210 to 219
|
||||
|
||||
#region DEC standard floppy formats, types 220 to 229
|
||||
|
||||
/// <summary>8", SS, DD, 77 tracks, 26 spt, 128 bytes/sector, FM</summary>
|
||||
RX01 = 220,
|
||||
/// <summary>8", SS, DD, 77 tracks, 26 spt, 256 bytes/sector, FM/MFM</summary>
|
||||
@@ -403,9 +452,11 @@ public enum MediaType : uint
|
||||
RX03 = 222,
|
||||
/// <summary>5.25", SS, DD, 80 tracks, 10 spt, 512 bytes/sector, MFM</summary>
|
||||
RX50 = 223,
|
||||
#endregion DEC standard floppy formats, types 220 to 229
|
||||
|
||||
#region Acorn standard floppy formats, types 230 to 239
|
||||
#endregion DEC standard floppy formats, types 220 to 229
|
||||
|
||||
#region Acorn standard floppy formats, types 230 to 239
|
||||
|
||||
/// <summary>5,25", SS, SD, 40 tracks, 10 spt, 256 bytes/sector, FM</summary>
|
||||
ACORN_525_SS_SD_40 = 230,
|
||||
/// <summary>5,25", SS, SD, 80 tracks, 10 spt, 256 bytes/sector, FM</summary>
|
||||
@@ -420,9 +471,11 @@ public enum MediaType : uint
|
||||
ACORN_35_DS_DD = 235,
|
||||
/// <summary>3,5", DS, HD, 80 tracks, 10 spt, 1024 bytes/sector, MFM</summary>
|
||||
ACORN_35_DS_HD = 236,
|
||||
#endregion Acorn standard floppy formats, types 230 to 239
|
||||
|
||||
#region Atari standard floppy formats, types 240 to 249
|
||||
#endregion Acorn standard floppy formats, types 230 to 239
|
||||
|
||||
#region Atari standard floppy formats, types 240 to 249
|
||||
|
||||
/// <summary>5,25", SS, SD, 40 tracks, 18 spt, 128 bytes/sector, FM</summary>
|
||||
ATARI_525_SD = 240,
|
||||
/// <summary>5,25", SS, ED, 40 tracks, 26 spt, 128 bytes/sector, MFM</summary>
|
||||
@@ -437,9 +490,11 @@ public enum MediaType : uint
|
||||
ATARI_35_SS_DD_11 = 245,
|
||||
/// <summary>3,5", DS, DD, 80 tracks, 11 spt, 512 bytes/sector, MFM</summary>
|
||||
ATARI_35_DS_DD_11 = 246,
|
||||
#endregion Atari standard floppy formats, types 240 to 249
|
||||
|
||||
#region Commodore standard floppy formats, types 250 to 259
|
||||
#endregion Atari standard floppy formats, types 240 to 249
|
||||
|
||||
#region Commodore standard floppy formats, types 250 to 259
|
||||
|
||||
/// <summary>3,5", DS, DD, 80 tracks, 10 spt, 512 bytes/sector, MFM (1581)</summary>
|
||||
CBM_35_DD = 250,
|
||||
/// <summary>3,5", DS, DD, 80 tracks, 11 spt, 512 bytes/sector, MFM (Amiga)</summary>
|
||||
@@ -452,9 +507,11 @@ public enum MediaType : uint
|
||||
CBM_1540_Ext = 254,
|
||||
/// <summary>5,25", DS, DD, 35 tracks, GCR</summary>
|
||||
CBM_1571 = 255,
|
||||
#endregion Commodore standard floppy formats, types 250 to 259
|
||||
|
||||
#region NEC/SHARP standard floppy formats, types 260 to 269
|
||||
#endregion Commodore standard floppy formats, types 250 to 259
|
||||
|
||||
#region NEC/SHARP standard floppy formats, types 260 to 269
|
||||
|
||||
/// <summary>8", DS, SD, 77 tracks, 26 spt, 128 bytes/sector, FM</summary>
|
||||
NEC_8_SD = 260,
|
||||
/// <summary>8", DS, DD, 77 tracks, 26 spt, 256 bytes/sector, MFM</summary>
|
||||
@@ -479,9 +536,11 @@ public enum MediaType : uint
|
||||
SHARP_35 = NEC_35_HD_8,
|
||||
/// <summary>3,5", DS, HD, 80 tracks, 9 spt, 1024 bytes/sector, MFM</summary>
|
||||
SHARP_35_9 = 269,
|
||||
#endregion NEC/SHARP standard floppy formats, types 260 to 269
|
||||
|
||||
#region ECMA floppy standards, types 270 to 289
|
||||
#endregion NEC/SHARP standard floppy formats, types 260 to 269
|
||||
|
||||
#region ECMA floppy standards, types 270 to 289
|
||||
|
||||
/// <summary>
|
||||
/// 5,25", DS, DD, 80 tracks, 8 spt, 1024 bytes/sector, MFM, track 0 side 0 = 26 sectors, 128 bytes/sector, track
|
||||
/// 0 side 1 = 26 sectors, 256 bytes/sector
|
||||
@@ -536,9 +595,11 @@ public enum MediaType : uint
|
||||
ECMA_78 = 280,
|
||||
/// <summary>5,25", DS, DD, 80 tracks, 9 spt, 512 bytes/sector, FM</summary>
|
||||
ECMA_78_2 = 281,
|
||||
#endregion ECMA floppy standards, types 270 to 289
|
||||
|
||||
#region Non-standard PC formats (FDFORMAT, 2M, etc), types 290 to 308
|
||||
#endregion ECMA floppy standards, types 270 to 289
|
||||
|
||||
#region Non-standard PC formats (FDFORMAT, 2M, etc), types 290 to 308
|
||||
|
||||
/// <summary>5,25", DS, DD, 82 tracks, 10 spt, 512 bytes/sector, MFM</summary>
|
||||
FDFORMAT_525_DD = 290,
|
||||
/// <summary>5,25", DS, HD, 82 tracks, 17 spt, 512 bytes/sector, MFM</summary>
|
||||
@@ -547,35 +608,61 @@ public enum MediaType : uint
|
||||
FDFORMAT_35_DD = 292,
|
||||
/// <summary>3,5", DS, HD, 82 tracks, 21 spt, 512 bytes/sector, MFM</summary>
|
||||
FDFORMAT_35_HD = 293,
|
||||
#endregion Non-standard PC formats (FDFORMAT, 2M, etc), types 290 to 308
|
||||
|
||||
#region Apricot ACT standard floppy formats, type 309
|
||||
#endregion Non-standard PC formats (FDFORMAT, 2M, etc), types 290 to 308
|
||||
|
||||
#region Apricot ACT standard floppy formats, type 309
|
||||
|
||||
/// <summary>3.5", DS, DD, 70 tracks, 9 spt, 512 bytes/sector, MFM</summary>
|
||||
Apricot_35 = 309,
|
||||
#endregion Apricot ACT standard floppy formats, type 309
|
||||
|
||||
#region OnStream ADR, types 310 to 319
|
||||
ADR2120 = 310, ADR260 = 311, ADR30 = 312,
|
||||
#endregion Apricot ACT standard floppy formats, type 309
|
||||
|
||||
#region OnStream ADR, types 310 to 319
|
||||
|
||||
ADR2120 = 310,
|
||||
ADR260 = 311,
|
||||
ADR30 = 312,
|
||||
ADR50 = 313,
|
||||
#endregion OnStream ADR, types 310 to 319
|
||||
|
||||
#region Advanced Intelligent Tape, types 320 to 339
|
||||
AIT1 = 320, AIT1Turbo = 321, AIT2 = 322,
|
||||
AIT2Turbo = 323, AIT3 = 324, AIT3Ex = 325,
|
||||
AIT3Turbo = 326, AIT4 = 327, AIT5 = 328,
|
||||
AITETurbo = 329, SAIT1 = 330, SAIT2 = 331,
|
||||
#endregion Advanced Intelligent Tape, types 320 to 339
|
||||
#endregion OnStream ADR, types 310 to 319
|
||||
|
||||
#region Advanced Intelligent Tape, types 320 to 339
|
||||
|
||||
AIT1 = 320,
|
||||
AIT1Turbo = 321,
|
||||
AIT2 = 322,
|
||||
AIT2Turbo = 323,
|
||||
AIT3 = 324,
|
||||
AIT3Ex = 325,
|
||||
AIT3Turbo = 326,
|
||||
AIT4 = 327,
|
||||
AIT5 = 328,
|
||||
AITETurbo = 329,
|
||||
SAIT1 = 330,
|
||||
SAIT2 = 331,
|
||||
|
||||
#endregion Advanced Intelligent Tape, types 320 to 339
|
||||
|
||||
#region Iomega, types 340 to 359
|
||||
|
||||
#region Iomega, types 340 to 359
|
||||
/// <summary>Obsolete type for 8"x11" Bernoulli Box disk</summary>
|
||||
[Obsolete]
|
||||
Bernoulli = 340,
|
||||
/// <summary>Obsolete type for 5⅓" Bernoulli Box II disks</summary>
|
||||
[Obsolete]
|
||||
Bernoulli2 = 341, Ditto = 342, DittoMax = 343, Jaz = 344,
|
||||
Jaz2 = 345, PocketZip = 346, REV120 = 347,
|
||||
REV35 = 348, REV70 = 349, ZIP100 = 350,
|
||||
ZIP250 = 351, ZIP750 = 352,
|
||||
Bernoulli2 = 341,
|
||||
Ditto = 342,
|
||||
DittoMax = 343,
|
||||
Jaz = 344,
|
||||
Jaz2 = 345,
|
||||
PocketZip = 346,
|
||||
REV120 = 347,
|
||||
REV35 = 348,
|
||||
REV70 = 349,
|
||||
ZIP100 = 350,
|
||||
ZIP250 = 351,
|
||||
ZIP750 = 352,
|
||||
/// <summary>5⅓" Bernoulli Box II disk with 35Mb capacity</summary>
|
||||
Bernoulli35 = 353,
|
||||
/// <summary>5⅓" Bernoulli Box II disk with 44Mb capacity</summary>
|
||||
@@ -590,50 +677,94 @@ public enum MediaType : uint
|
||||
Bernoulli150 = 358,
|
||||
/// <summary>5⅓" Bernoulli Box II disk with 230Mb capacity</summary>
|
||||
Bernoulli230 = 359,
|
||||
#endregion Iomega, types 340 to 359
|
||||
|
||||
#region Audio or video media, types 360 to 369
|
||||
CompactCassette = 360, Data8 = 361, MiniDV = 362,
|
||||
#endregion Iomega, types 340 to 359
|
||||
|
||||
#region Audio or video media, types 360 to 369
|
||||
|
||||
CompactCassette = 360,
|
||||
Data8 = 361,
|
||||
MiniDV = 362,
|
||||
/// <summary>D/CAS-25: Digital data on Compact Cassette form factor, special magnetic media, 9-track</summary>
|
||||
Dcas25 = 363,
|
||||
/// <summary>D/CAS-85: Digital data on Compact Cassette form factor, special magnetic media, 17-track</summary>
|
||||
Dcas85 = 364,
|
||||
/// <summary>D/CAS-103: Digital data on Compact Cassette form factor, special magnetic media, 21-track</summary>
|
||||
Dcas103 = 365,
|
||||
#endregion Audio media, types 360 to 369
|
||||
|
||||
#region CompactFlash Association, types 370 to 379
|
||||
CFast = 370, CompactFlash = 371, CompactFlashType2 = 372,
|
||||
#endregion CompactFlash Association, types 370 to 379
|
||||
#endregion Audio media, types 360 to 369
|
||||
|
||||
#region Digital Audio Tape / Digital Data Storage, types 380 to 389
|
||||
DigitalAudioTape = 380, DAT160 = 381, DAT320 = 382,
|
||||
DAT72 = 383, DDS1 = 384, DDS2 = 385,
|
||||
DDS3 = 386, DDS4 = 387,
|
||||
#endregion Digital Audio Tape / Digital Data Storage, types 380 to 389
|
||||
#region CompactFlash Association, types 370 to 379
|
||||
|
||||
#region DEC, types 390 to 399
|
||||
CompactTapeI = 390, CompactTapeII = 391, DECtapeII = 392,
|
||||
DLTtapeIII = 393, DLTtapeIIIxt = 394, DLTtapeIV = 395,
|
||||
DLTtapeS4 = 396, SDLT1 = 397, SDLT2 = 398,
|
||||
VStapeI = 399,
|
||||
#endregion DEC, types 390 to 399
|
||||
CFast = 370,
|
||||
CompactFlash = 371,
|
||||
CompactFlashType2 = 372,
|
||||
|
||||
#region Exatape, types 400 to 419
|
||||
Exatape15m = 400, Exatape22m = 401, Exatape22mAME = 402,
|
||||
Exatape28m = 403, Exatape40m = 404, Exatape45m = 405,
|
||||
Exatape54m = 406, Exatape75m = 407, Exatape76m = 408,
|
||||
Exatape80m = 409, Exatape106m = 410, Exatape160mXL = 411,
|
||||
Exatape112m = 412, Exatape125m = 413, Exatape150m = 414,
|
||||
Exatape170m = 415, Exatape225m = 416,
|
||||
#endregion Exatape, types 400 to 419
|
||||
#endregion CompactFlash Association, types 370 to 379
|
||||
|
||||
#region PCMCIA / ExpressCard, types 420 to 429
|
||||
ExpressCard34 = 420, ExpressCard54 = 421, PCCardTypeI = 422,
|
||||
PCCardTypeII = 423, PCCardTypeIII = 424, PCCardTypeIV = 425,
|
||||
#endregion PCMCIA / ExpressCard, types 420 to 429
|
||||
#region Digital Audio Tape / Digital Data Storage, types 380 to 389
|
||||
|
||||
DigitalAudioTape = 380,
|
||||
DAT160 = 381,
|
||||
DAT320 = 382,
|
||||
DAT72 = 383,
|
||||
DDS1 = 384,
|
||||
DDS2 = 385,
|
||||
DDS3 = 386,
|
||||
DDS4 = 387,
|
||||
|
||||
#endregion Digital Audio Tape / Digital Data Storage, types 380 to 389
|
||||
|
||||
#region DEC, types 390 to 399
|
||||
|
||||
CompactTapeI = 390,
|
||||
CompactTapeII = 391,
|
||||
DECtapeII = 392,
|
||||
DLTtapeIII = 393,
|
||||
DLTtapeIIIxt = 394,
|
||||
DLTtapeIV = 395,
|
||||
DLTtapeS4 = 396,
|
||||
SDLT1 = 397,
|
||||
SDLT2 = 398,
|
||||
VStapeI = 399,
|
||||
|
||||
#endregion DEC, types 390 to 399
|
||||
|
||||
#region Exatape, types 400 to 419
|
||||
|
||||
Exatape15m = 400,
|
||||
Exatape22m = 401,
|
||||
Exatape22mAME = 402,
|
||||
Exatape28m = 403,
|
||||
Exatape40m = 404,
|
||||
Exatape45m = 405,
|
||||
Exatape54m = 406,
|
||||
Exatape75m = 407,
|
||||
Exatape76m = 408,
|
||||
Exatape80m = 409,
|
||||
Exatape106m = 410,
|
||||
Exatape160mXL = 411,
|
||||
Exatape112m = 412,
|
||||
Exatape125m = 413,
|
||||
Exatape150m = 414,
|
||||
Exatape170m = 415,
|
||||
Exatape225m = 416,
|
||||
|
||||
#endregion Exatape, types 400 to 419
|
||||
|
||||
#region PCMCIA / ExpressCard, types 420 to 429
|
||||
|
||||
ExpressCard34 = 420,
|
||||
ExpressCard54 = 421,
|
||||
PCCardTypeI = 422,
|
||||
PCCardTypeII = 423,
|
||||
PCCardTypeIII = 424,
|
||||
PCCardTypeIV = 425,
|
||||
|
||||
#endregion PCMCIA / ExpressCard, types 420 to 429
|
||||
|
||||
#region SyQuest, types 430 to 449
|
||||
|
||||
#region SyQuest, types 430 to 449
|
||||
/// <summary>SyQuest 135Mb cartridge for use in EZ135 and EZFlyer drives</summary>
|
||||
EZ135 = 430,
|
||||
/// <summary>SyQuest EZFlyer 230Mb cartridge for use in EZFlyer drive</summary>
|
||||
@@ -663,84 +794,173 @@ public enum MediaType : uint
|
||||
SQ2000 = 442,
|
||||
/// <summary>SyQuest 1.5Gb cartridge for SyJet drive</summary>
|
||||
SyJet = 443,
|
||||
#endregion SyQuest, types 430 to 449
|
||||
|
||||
#region Nintendo, types 450 to 469
|
||||
FamicomGamePak = 450, GameBoyAdvanceGamePak = 451, GameBoyGamePak = 452,
|
||||
#endregion SyQuest, types 430 to 449
|
||||
|
||||
#region Nintendo, types 450 to 469
|
||||
|
||||
FamicomGamePak = 450,
|
||||
GameBoyAdvanceGamePak = 451,
|
||||
GameBoyGamePak = 452,
|
||||
/// <summary>Nintendo GameCube Optical Disc</summary>
|
||||
GOD = 453, N64DD = 454, N64GamePak = 455, NESGamePak = 456,
|
||||
Nintendo3DSGameCard = 457, NintendoDiskCard = 458, NintendoDSGameCard = 459,
|
||||
NintendoDSiGameCard = 460, SNESGamePak = 461, SNESGamePakUS = 462,
|
||||
GOD = 453,
|
||||
N64DD = 454,
|
||||
N64GamePak = 455,
|
||||
NESGamePak = 456,
|
||||
Nintendo3DSGameCard = 457,
|
||||
NintendoDiskCard = 458,
|
||||
NintendoDSGameCard = 459,
|
||||
NintendoDSiGameCard = 460,
|
||||
SNESGamePak = 461,
|
||||
SNESGamePakUS = 462,
|
||||
/// <summary>Nintendo Wii Optical Disc</summary>
|
||||
WOD = 463,
|
||||
/// <summary>Nintendo Wii U Optical Disc</summary>
|
||||
WUOD = 464, SwitchGameCard = 465,
|
||||
#endregion Nintendo, types 450 to 469
|
||||
WUOD = 464,
|
||||
SwitchGameCard = 465,
|
||||
|
||||
#region IBM Tapes, types 470 to 479
|
||||
IBM3470 = 470, IBM3480 = 471, IBM3490 = 472,
|
||||
IBM3490E = 473, IBM3592 = 474,
|
||||
#endregion IBM Tapes, types 470 to 479
|
||||
#endregion Nintendo, types 450 to 469
|
||||
|
||||
#region LTO Ultrium, types 480 to 509
|
||||
LTO = 480, LTO2 = 481, LTO3 = 482,
|
||||
LTO3WORM = 483, LTO4 = 484, LTO4WORM = 485,
|
||||
LTO5 = 486, LTO5WORM = 487, LTO6 = 488,
|
||||
LTO6WORM = 489, LTO7 = 490, LTO7WORM = 491,
|
||||
#endregion LTO Ultrium, types 480 to 509
|
||||
#region IBM Tapes, types 470 to 479
|
||||
|
||||
#region MemoryStick, types 510 to 519
|
||||
MemoryStick = 510, MemoryStickDuo = 511, MemoryStickMicro = 512,
|
||||
MemoryStickPro = 513, MemoryStickProDuo = 514,
|
||||
#endregion MemoryStick, types 510 to 519
|
||||
IBM3470 = 470,
|
||||
IBM3480 = 471,
|
||||
IBM3490 = 472,
|
||||
IBM3490E = 473,
|
||||
IBM3592 = 474,
|
||||
|
||||
#region SecureDigital, types 520 to 529
|
||||
microSD = 520, miniSD = 521, SecureDigital = 522,
|
||||
#endregion SecureDigital, types 520 to 529
|
||||
#endregion IBM Tapes, types 470 to 479
|
||||
|
||||
#region MultiMediaCard, types 530 to 539
|
||||
MMC = 530, MMCmicro = 531, RSMMC = 532,
|
||||
MMCplus = 533, MMCmobile = 534,
|
||||
#endregion MultiMediaCard, types 530 to 539
|
||||
#region LTO Ultrium, types 480 to 509
|
||||
|
||||
#region SLR, types 540 to 569
|
||||
MLR1 = 540, MLR1SL = 541, MLR3 = 542,
|
||||
SLR1 = 543, SLR2 = 544, SLR3 = 545,
|
||||
SLR32 = 546, SLR32SL = 547, SLR4 = 548,
|
||||
SLR5 = 549, SLR5SL = 550, SLR6 = 551,
|
||||
SLRtape7 = 552, SLRtape7SL = 553, SLRtape24 = 554,
|
||||
SLRtape24SL = 555, SLRtape40 = 556, SLRtape50 = 557,
|
||||
SLRtape60 = 558, SLRtape75 = 559, SLRtape100 = 560,
|
||||
LTO = 480,
|
||||
LTO2 = 481,
|
||||
LTO3 = 482,
|
||||
LTO3WORM = 483,
|
||||
LTO4 = 484,
|
||||
LTO4WORM = 485,
|
||||
LTO5 = 486,
|
||||
LTO5WORM = 487,
|
||||
LTO6 = 488,
|
||||
LTO6WORM = 489,
|
||||
LTO7 = 490,
|
||||
LTO7WORM = 491,
|
||||
|
||||
#endregion LTO Ultrium, types 480 to 509
|
||||
|
||||
#region MemoryStick, types 510 to 519
|
||||
|
||||
MemoryStick = 510,
|
||||
MemoryStickDuo = 511,
|
||||
MemoryStickMicro = 512,
|
||||
MemoryStickPro = 513,
|
||||
MemoryStickProDuo = 514,
|
||||
|
||||
#endregion MemoryStick, types 510 to 519
|
||||
|
||||
#region SecureDigital, types 520 to 529
|
||||
|
||||
microSD = 520,
|
||||
miniSD = 521,
|
||||
SecureDigital = 522,
|
||||
|
||||
#endregion SecureDigital, types 520 to 529
|
||||
|
||||
#region MultiMediaCard, types 530 to 539
|
||||
|
||||
MMC = 530,
|
||||
MMCmicro = 531,
|
||||
RSMMC = 532,
|
||||
MMCplus = 533,
|
||||
MMCmobile = 534,
|
||||
|
||||
#endregion MultiMediaCard, types 530 to 539
|
||||
|
||||
#region SLR, types 540 to 569
|
||||
|
||||
MLR1 = 540,
|
||||
MLR1SL = 541,
|
||||
MLR3 = 542,
|
||||
SLR1 = 543,
|
||||
SLR2 = 544,
|
||||
SLR3 = 545,
|
||||
SLR32 = 546,
|
||||
SLR32SL = 547,
|
||||
SLR4 = 548,
|
||||
SLR5 = 549,
|
||||
SLR5SL = 550,
|
||||
SLR6 = 551,
|
||||
SLRtape7 = 552,
|
||||
SLRtape7SL = 553,
|
||||
SLRtape24 = 554,
|
||||
SLRtape24SL = 555,
|
||||
SLRtape40 = 556,
|
||||
SLRtape50 = 557,
|
||||
SLRtape60 = 558,
|
||||
SLRtape75 = 559,
|
||||
SLRtape100 = 560,
|
||||
SLRtape140 = 561,
|
||||
#endregion SLR, types 540 to 569
|
||||
|
||||
#region QIC, types 570 to 589
|
||||
QIC11 = 570, QIC120 = 571, QIC1350 = 572,
|
||||
QIC150 = 573, QIC24 = 574, QIC3010 = 575,
|
||||
QIC3020 = 576, QIC3080 = 577, QIC3095 = 578,
|
||||
QIC320 = 579, QIC40 = 580, QIC525 = 581,
|
||||
#endregion SLR, types 540 to 569
|
||||
|
||||
#region QIC, types 570 to 589
|
||||
|
||||
QIC11 = 570,
|
||||
QIC120 = 571,
|
||||
QIC1350 = 572,
|
||||
QIC150 = 573,
|
||||
QIC24 = 574,
|
||||
QIC3010 = 575,
|
||||
QIC3020 = 576,
|
||||
QIC3080 = 577,
|
||||
QIC3095 = 578,
|
||||
QIC320 = 579,
|
||||
QIC40 = 580,
|
||||
QIC525 = 581,
|
||||
QIC80 = 582,
|
||||
#endregion QIC, types 570 to 589
|
||||
|
||||
#region StorageTek tapes, types 590 to 609
|
||||
STK4480 = 590, STK4490 = 591, STK9490 = 592,
|
||||
T9840A = 593, T9840B = 594, T9840C = 595,
|
||||
T9840D = 596, T9940A = 597, T9940B = 598,
|
||||
T10000A = 599, T10000B = 600, T10000C = 601,
|
||||
#endregion QIC, types 570 to 589
|
||||
|
||||
#region StorageTek tapes, types 590 to 609
|
||||
|
||||
STK4480 = 590,
|
||||
STK4490 = 591,
|
||||
STK9490 = 592,
|
||||
T9840A = 593,
|
||||
T9840B = 594,
|
||||
T9840C = 595,
|
||||
T9840D = 596,
|
||||
T9940A = 597,
|
||||
T9940B = 598,
|
||||
T10000A = 599,
|
||||
T10000B = 600,
|
||||
T10000C = 601,
|
||||
T10000D = 602,
|
||||
#endregion StorageTek tapes, types 590 to 609
|
||||
|
||||
#region Travan, types 610 to 619
|
||||
Travan = 610, Travan1Ex = 611, Travan3 = 612,
|
||||
Travan3Ex = 613, Travan4 = 614, Travan5 = 615,
|
||||
#endregion StorageTek tapes, types 590 to 609
|
||||
|
||||
#region Travan, types 610 to 619
|
||||
|
||||
Travan = 610,
|
||||
Travan1Ex = 611,
|
||||
Travan3 = 612,
|
||||
Travan3Ex = 613,
|
||||
Travan4 = 614,
|
||||
Travan5 = 615,
|
||||
Travan7 = 616,
|
||||
#endregion Travan, types 610 to 619
|
||||
|
||||
#region VXA, types 620 to 629
|
||||
VXA1 = 620, VXA2 = 621, VXA3 = 622,
|
||||
#endregion VXA, types 620 to 629
|
||||
#endregion Travan, types 610 to 619
|
||||
|
||||
#region VXA, types 620 to 629
|
||||
|
||||
VXA1 = 620,
|
||||
VXA2 = 621,
|
||||
VXA3 = 622,
|
||||
|
||||
#endregion VXA, types 620 to 629
|
||||
|
||||
#region Magneto-optical, types 630 to 659
|
||||
|
||||
#region Magneto-optical, types 630 to 659
|
||||
/// <summary>5,25", M.O., WORM, 650Mb, 318750 sectors, 1024 bytes/sector, ECMA-153, ISO 11560</summary>
|
||||
ECMA_153 = 630,
|
||||
/// <summary>5,25", M.O., WORM, 600Mb, 581250 sectors, 512 bytes/sector, ECMA-153, ISO 11560</summary>
|
||||
@@ -801,33 +1021,62 @@ public enum MediaType : uint
|
||||
ISO_10089 = 658,
|
||||
/// <summary>5,25", M.O., ?????? sectors, 512 bytes/sector, ISO 10089, 594Mb/cart</summary>
|
||||
ISO_10089_512 = 659,
|
||||
#endregion Magneto-optical, types 630 to 659
|
||||
|
||||
#region Other floppy standards, types 660 to 689
|
||||
CompactFloppy = 660, DemiDiskette = 661,
|
||||
#endregion Magneto-optical, types 630 to 659
|
||||
|
||||
#region Other floppy standards, types 660 to 689
|
||||
|
||||
CompactFloppy = 660,
|
||||
DemiDiskette = 661,
|
||||
/// <summary>3.5", 652 tracks, 2 sides, 512 bytes/sector, Floptical, ECMA-207, ISO 14169</summary>
|
||||
Floptical = 662, HiFD = 663, QuickDisk = 664, UHD144 = 665,
|
||||
VideoFloppy = 666, Wafer = 667, ZXMicrodrive = 668,
|
||||
Floptical = 662,
|
||||
HiFD = 663,
|
||||
QuickDisk = 664,
|
||||
UHD144 = 665,
|
||||
VideoFloppy = 666,
|
||||
Wafer = 667,
|
||||
ZXMicrodrive = 668,
|
||||
/// <summary>5.25", SS, DD, 77 tracks, 16 spt, 256 bytes/sector, MFM, 100 tpi, 300rpm</summary>
|
||||
MetaFloppy_Mod_II = 669,
|
||||
#endregion Other floppy standards, types 660 to 669
|
||||
|
||||
#region Miscellaneous, types 670 to 689
|
||||
BeeCard = 670, Borsu = 671, DataStore = 672,
|
||||
DIR = 673, DST = 674, DTF = 675,
|
||||
DTF2 = 676, Flextra3020 = 677, Flextra3225 = 678,
|
||||
HiTC1 = 679, HiTC2 = 680, LT1 = 681,
|
||||
MiniCard = 872, Orb = 683, Orb5 = 684,
|
||||
SmartMedia = 685, xD = 686, XQD = 687,
|
||||
DataPlay = 688,
|
||||
#endregion Miscellaneous, types 670 to 689
|
||||
#endregion Other floppy standards, types 660 to 669
|
||||
|
||||
#region Apple specific media, types 690 to 699
|
||||
AppleProfile = 690, AppleWidget = 691, AppleHD20 = 692,
|
||||
PriamDataTower = 693, Pippin = 694,
|
||||
#endregion Apple specific media, types 690 to 699
|
||||
#region Miscellaneous, types 670 to 689
|
||||
|
||||
BeeCard = 670,
|
||||
Borsu = 671,
|
||||
DataStore = 672,
|
||||
DIR = 673,
|
||||
DST = 674,
|
||||
DTF = 675,
|
||||
DTF2 = 676,
|
||||
Flextra3020 = 677,
|
||||
Flextra3225 = 678,
|
||||
HiTC1 = 679,
|
||||
HiTC2 = 680,
|
||||
LT1 = 681,
|
||||
MiniCard = 872,
|
||||
Orb = 683,
|
||||
Orb5 = 684,
|
||||
SmartMedia = 685,
|
||||
xD = 686,
|
||||
XQD = 687,
|
||||
DataPlay = 688,
|
||||
|
||||
#endregion Miscellaneous, types 670 to 689
|
||||
|
||||
#region Apple specific media, types 690 to 699
|
||||
|
||||
AppleProfile = 690,
|
||||
AppleWidget = 691,
|
||||
AppleHD20 = 692,
|
||||
PriamDataTower = 693,
|
||||
Pippin = 694,
|
||||
|
||||
#endregion Apple specific media, types 690 to 699
|
||||
|
||||
#region DEC hard disks, types 700 to 729
|
||||
|
||||
#region DEC hard disks, types 700 to 729
|
||||
/// <summary>
|
||||
/// 2382 cylinders, 4 tracks/cylinder, 42 sectors/track, 128 words/sector, 32 bits/word, 512 bytes/sector,
|
||||
/// 204890112 bytes
|
||||
@@ -963,33 +1212,49 @@ public enum MediaType : uint
|
||||
/// 178387200 bytes
|
||||
/// </summary>
|
||||
RP06_18 = 726,
|
||||
#endregion DEC hard disks, types 700 to 729
|
||||
|
||||
#region Imation, types 730 to 739
|
||||
LS120 = 730, LS240 = 731, FD32MB = 732,
|
||||
RDX = 733,
|
||||
#endregion DEC hard disks, types 700 to 729
|
||||
|
||||
#region Imation, types 730 to 739
|
||||
|
||||
LS120 = 730,
|
||||
LS240 = 731,
|
||||
FD32MB = 732,
|
||||
RDX = 733,
|
||||
/// <summary>Imation 320Gb RDX</summary>
|
||||
RDX320 = 734,
|
||||
#endregion Imation, types 730 to 739
|
||||
|
||||
#region VideoNow, types 740 to 749
|
||||
VideoNow = 740, VideoNowColor = 741, VideoNowXp = 742,
|
||||
#endregion
|
||||
#endregion Imation, types 730 to 739
|
||||
|
||||
#region VideoNow, types 740 to 749
|
||||
|
||||
VideoNow = 740,
|
||||
VideoNowColor = 741,
|
||||
VideoNowXp = 742,
|
||||
|
||||
#endregion
|
||||
|
||||
#region Iomega, types 750 to 759
|
||||
|
||||
#region Iomega, types 750 to 759
|
||||
/// <summary>8"x11" Bernoulli Box disk with 10Mb capacity</summary>
|
||||
Bernoulli10 = 750,
|
||||
/// <summary>8"x11" Bernoulli Box disk with 20Mb capacity</summary>
|
||||
Bernoulli20 = 751,
|
||||
/// <summary>5⅓" Bernoulli Box II disk with 20Mb capacity</summary>
|
||||
BernoulliBox2_20 = 752,
|
||||
#endregion Iomega, types 750 to 759
|
||||
|
||||
#region Kodak, types 760 to 769
|
||||
KodakVerbatim3 = 760, KodakVerbatim6 = 761, KodakVerbatim12 = 762,
|
||||
#endregion Kodak, types 760 to 769
|
||||
#endregion Iomega, types 750 to 759
|
||||
|
||||
#region Kodak, types 760 to 769
|
||||
|
||||
KodakVerbatim3 = 760,
|
||||
KodakVerbatim6 = 761,
|
||||
KodakVerbatim12 = 762,
|
||||
|
||||
#endregion Kodak, types 760 to 769
|
||||
|
||||
#region Sony and Panasonic Blu-ray derived, types 770 to 799
|
||||
|
||||
#region Sony and Panasonic Blu-ray derived, types 770 to 799
|
||||
/// <summary>Professional Disc for video, single layer, rewritable, 23Gb</summary>
|
||||
ProfessionalDisc = 770,
|
||||
/// <summary>Professional Disc for video, dual layer, rewritable, 50Gb</summary>
|
||||
@@ -1024,9 +1289,11 @@ public enum MediaType : uint
|
||||
ODC3300R = 785,
|
||||
/// <summary>Optical Disc archive, 5th gen., write once, 5500Gb</summary>
|
||||
ODC5500R = 786,
|
||||
#endregion Sony and Panasonic Blu-ray derived, types 770 to 799
|
||||
|
||||
#region Magneto-optical, types 800 to 819
|
||||
#endregion Sony and Panasonic Blu-ray derived, types 770 to 799
|
||||
|
||||
#region Magneto-optical, types 800 to 819
|
||||
|
||||
/// <summary>5,25", M.O., 4383356 sectors, 1024 bytes/sector, ECMA-322, ISO 22092, 9.1Gb/cart</summary>
|
||||
ECMA_322_1k = 800,
|
||||
/// <summary>5,25", M.O., ??????? sectors, 512 bytes/sector, ECMA-322, ISO 22092, 9.1Gb/cart</summary>
|
||||
@@ -1037,16 +1304,20 @@ public enum MediaType : uint
|
||||
ISO_14517_512 = 803,
|
||||
/// <summary>3,5", M.O., 1041500 sectors, 512 bytes/sector, ISO 15041, 540Mb/cart</summary>
|
||||
ISO_15041_512 = 804,
|
||||
#endregion Magneto-optical, types 800 to 819
|
||||
|
||||
#region More floppy formats, types 820 to deprecated
|
||||
#endregion Magneto-optical, types 800 to 819
|
||||
|
||||
#region More floppy formats, types 820 to deprecated
|
||||
|
||||
/// <summary>5.25", SS, DD, 35 tracks, 16 spt, 256 bytes/sector, MFM, 48 tpi, ???rpm</summary>
|
||||
MetaFloppy_Mod_I = 820,
|
||||
/// <summary>HyperFlex (12Mb), 5.25", DS, 301 tracks, 78 spt, 256 bytes/sector, MFM, 333 tpi, 600rpm</summary>
|
||||
HF12 = 823,
|
||||
/// <summary>HyperFlex (24Mb), 5.25", DS, 506 tracks, 78 spt, 256 bytes/sector, MFM, 666 tpi, 720rpm</summary>
|
||||
HF24 = 824,
|
||||
#endregion
|
||||
|
||||
AtariLynxCard = 821, AtariJaguarCartridge = 822
|
||||
#endregion
|
||||
|
||||
AtariLynxCard = 821,
|
||||
AtariJaguarCartridge = 822
|
||||
}
|
||||
@@ -47,7 +47,7 @@ public static partial class MediaTypeFromDevice
|
||||
/// <param name="blocks">Number of blocks in device</param>
|
||||
/// <returns>The media type</returns>
|
||||
public static MediaType GetFromAta(string manufacturer, string model, bool removable, bool compactFlash,
|
||||
bool pcmcia, ulong blocks)
|
||||
bool pcmcia, ulong blocks)
|
||||
{
|
||||
if(!removable)
|
||||
{
|
||||
|
||||
@@ -50,12 +50,13 @@ public static partial class MediaTypeFromDevice
|
||||
/// <param name="opticalDisc">Is the media an optical disc</param>
|
||||
/// <returns>Media type</returns>
|
||||
static MediaType GetFromMmc(string model, byte mediumType, byte densityCode, ulong blocks, uint blockSize,
|
||||
bool isUsb, bool opticalDisc)
|
||||
bool isUsb, bool opticalDisc)
|
||||
{
|
||||
switch(mediumType)
|
||||
{
|
||||
case 0x00:
|
||||
if(blockSize == 512)
|
||||
{
|
||||
if(blocks == 1281856)
|
||||
{
|
||||
AaruConsole.DebugWriteLine(MODULE_NAME,
|
||||
@@ -74,6 +75,7 @@ public static partial class MediaTypeFromDevice
|
||||
|
||||
return MediaType.PD650;
|
||||
}
|
||||
}
|
||||
|
||||
AaruConsole.DebugWriteLine(MODULE_NAME,
|
||||
Localization.SCSI_medium_type_is_0_setting_media_type_to_Compact_Disc,
|
||||
@@ -144,6 +146,7 @@ public static partial class MediaTypeFromDevice
|
||||
return MediaType.FlashDrive;
|
||||
case 0x80:
|
||||
if(model.ToLowerInvariant().StartsWith("ult", StringComparison.Ordinal))
|
||||
{
|
||||
switch(densityCode)
|
||||
{
|
||||
case 0x42:
|
||||
@@ -175,6 +178,7 @@ public static partial class MediaTypeFromDevice
|
||||
|
||||
return MediaType.LTO5;
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -67,15 +67,18 @@ public static partial class MediaTypeFromDevice
|
||||
return GetFromSbc(vendor, model, mediumType, blocks, blockSize);
|
||||
|
||||
// Sequential access device
|
||||
case 0x01: return GetFromSsc(scsiPeripheralType, vendor, model, mediumType, densityCode, blocks, blockSize);
|
||||
case 0x01:
|
||||
return GetFromSsc(scsiPeripheralType, vendor, model, mediumType, densityCode, blocks, blockSize);
|
||||
|
||||
// Write-once device
|
||||
case 0x04:
|
||||
// Optical device
|
||||
case 0x07: return GetFromOdc(mediumType, blocks, blockSize);
|
||||
case 0x07:
|
||||
return GetFromOdc(mediumType, blocks, blockSize);
|
||||
|
||||
// MultiMedia Device
|
||||
case 0x05: return GetFromMmc(model, mediumType, densityCode, blocks, blockSize, isUsb, opticalDisc);
|
||||
case 0x05:
|
||||
return GetFromMmc(model, mediumType, densityCode, blocks, blockSize, isUsb, opticalDisc);
|
||||
|
||||
// MD DATA drives
|
||||
case 0x10 when model.StartsWith("MDM", StringComparison.Ordinal) ||
|
||||
|
||||
@@ -49,7 +49,7 @@ public static partial class MediaTypeFromDevice
|
||||
/// <param name="blockSize">Size of a block in bytes</param>
|
||||
/// <returns>Media type</returns>
|
||||
public static MediaType GetFromSsc(byte scsiPeripheralType, string vendor, string model, byte mediumType,
|
||||
byte densityCode, ulong blocks, uint blockSize)
|
||||
byte densityCode, ulong blocks, uint blockSize)
|
||||
{
|
||||
switch(mediumType)
|
||||
{
|
||||
@@ -1073,8 +1073,8 @@ public static partial class MediaTypeFromDevice
|
||||
return MediaType.Exatape106m;
|
||||
}
|
||||
|
||||
if(model.ToLowerInvariant().StartsWith("dlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("sdlt", StringComparison.Ordinal) ||
|
||||
if(model.ToLowerInvariant().StartsWith("dlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("sdlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("superdlt", StringComparison.Ordinal))
|
||||
{
|
||||
AaruConsole.DebugWriteLine(MODULE_NAME,
|
||||
@@ -1127,8 +1127,8 @@ public static partial class MediaTypeFromDevice
|
||||
case 0x88:
|
||||
case 0x89:
|
||||
{
|
||||
if(model.ToLowerInvariant().StartsWith("dlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("sdlt", StringComparison.Ordinal) ||
|
||||
if(model.ToLowerInvariant().StartsWith("dlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("sdlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("superdlt", StringComparison.Ordinal))
|
||||
{
|
||||
AaruConsole.DebugWriteLine(MODULE_NAME,
|
||||
@@ -1174,8 +1174,8 @@ public static partial class MediaTypeFromDevice
|
||||
return MediaType.Exatape160mXL;
|
||||
}
|
||||
|
||||
if(model.ToLowerInvariant().StartsWith("dlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("sdlt", StringComparison.Ordinal) ||
|
||||
if(model.ToLowerInvariant().StartsWith("dlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("sdlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("superdlt", StringComparison.Ordinal))
|
||||
{
|
||||
AaruConsole.DebugWriteLine(MODULE_NAME, Localization.SCSI_Media_Type_Description_SDLT,
|
||||
@@ -1205,8 +1205,8 @@ public static partial class MediaTypeFromDevice
|
||||
case 0x92:
|
||||
case 0x93:
|
||||
{
|
||||
if(model.ToLowerInvariant().StartsWith("dlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("sdlt", StringComparison.Ordinal) ||
|
||||
if(model.ToLowerInvariant().StartsWith("dlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("sdlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("superdlt", StringComparison.Ordinal))
|
||||
{
|
||||
AaruConsole.DebugWriteLine(MODULE_NAME, Localization.SCSI_Media_Type_Description_SDLT,
|
||||
@@ -1228,8 +1228,8 @@ public static partial class MediaTypeFromDevice
|
||||
case 0x00:
|
||||
case 0x4A:
|
||||
{
|
||||
if(model.ToLowerInvariant().StartsWith("dlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("sdlt", StringComparison.Ordinal) ||
|
||||
if(model.ToLowerInvariant().StartsWith("dlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("sdlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("superdlt", StringComparison.Ordinal))
|
||||
{
|
||||
AaruConsole.DebugWriteLine(MODULE_NAME,
|
||||
@@ -1254,8 +1254,8 @@ public static partial class MediaTypeFromDevice
|
||||
case 0x98:
|
||||
case 0x99:
|
||||
{
|
||||
if(model.ToLowerInvariant().StartsWith("dlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("sdlt", StringComparison.Ordinal) ||
|
||||
if(model.ToLowerInvariant().StartsWith("dlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("sdlt", StringComparison.Ordinal) ||
|
||||
model.ToLowerInvariant().StartsWith("superdlt", StringComparison.Ordinal))
|
||||
{
|
||||
AaruConsole.DebugWriteLine(MODULE_NAME,
|
||||
|
||||
@@ -45,12 +45,16 @@ public class CdOffset
|
||||
{
|
||||
/// <summary>Drive manufacturer</summary>
|
||||
public string Manufacturer { get; set; }
|
||||
|
||||
/// <summary>Drive model</summary>
|
||||
public string Model { get; set; }
|
||||
|
||||
/// <summary>Reading offset</summary>
|
||||
public short Offset { get; set; }
|
||||
|
||||
/// <summary>Number of times this offset has been submitted</summary>
|
||||
public int Submissions { get; set; }
|
||||
|
||||
/// <summary>Percentage of submissions in agreement with this offset</summary>
|
||||
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:P0}")]
|
||||
public float Agreement { get; set; }
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -57,12 +57,19 @@ public class ResumeJson
|
||||
}
|
||||
|
||||
/// <summary>Information that allows to resume a dump</summary>
|
||||
[Serializable, XmlRoot("DicResume", Namespace = "", IsNullable = false)]
|
||||
[Serializable]
|
||||
[XmlRoot("DicResume", Namespace = "", IsNullable = false)]
|
||||
public class Resume
|
||||
{
|
||||
/// <summary>List of blocks that returned an error on reading</summary>
|
||||
[XmlArrayItem("Block")]
|
||||
public List<ulong> BadBlocks;
|
||||
/// <summary>List of CD subchannels that did not read correctly</summary>
|
||||
[XmlArrayItem("Block")]
|
||||
public List<int> BadSubchannels;
|
||||
/// <summary>Extents of BLANK sectors for magneto-opticals</summary>
|
||||
[XmlArrayItem("Extent")]
|
||||
public Extent[] BlankExtents;
|
||||
/// <summary>Date/time this resume file was created</summary>
|
||||
[XmlElement(DataType = "dateTime")]
|
||||
public DateTime CreationDate;
|
||||
@@ -71,21 +78,15 @@ public class Resume
|
||||
/// <summary>Date/time this resume file was last written to</summary>
|
||||
[XmlElement(DataType = "dateTime")]
|
||||
public DateTime LastWriteDate;
|
||||
/// <summary>Title keys that has not been read</summary>
|
||||
[XmlArrayItem("Block")]
|
||||
public List<ulong> MissingTitleKeys;
|
||||
/// <summary>Next block to read</summary>
|
||||
public ulong NextBlock;
|
||||
/// <summary>Is media removable?</summary>
|
||||
public bool Removable;
|
||||
/// <summary>Is media a tape?</summary>
|
||||
public bool Tape;
|
||||
/// <summary>List of CD subchannels that did not read correctly</summary>
|
||||
[XmlArrayItem("Block")]
|
||||
public List<int> BadSubchannels;
|
||||
/// <summary>Extents of BLANK sectors for magneto-opticals</summary>
|
||||
[XmlArrayItem("Extent")]
|
||||
public Extent[] BlankExtents;
|
||||
/// <summary>Title keys that has not been read</summary>
|
||||
[XmlArrayItem("Block")]
|
||||
public List<ulong> MissingTitleKeys;
|
||||
/// <summary>List of dump tries</summary>
|
||||
[XmlArrayItem("DumpTry")]
|
||||
public List<DumpHardware> Tries;
|
||||
|
||||
@@ -52,34 +52,45 @@ public class Stats
|
||||
{
|
||||
/// <summary>Executed commands</summary>
|
||||
public CommandsStats Commands;
|
||||
|
||||
/// <summary>Operating systems Aaru has run from</summary>
|
||||
[XmlArrayItem("OperatingSystem")]
|
||||
public List<OsStats> OperatingSystems { get; set; }
|
||||
|
||||
/// <summary>Aaru versions</summary>
|
||||
[XmlArrayItem("Version")]
|
||||
public List<NameValueStats> Versions { get; set; }
|
||||
|
||||
/// <summary>Detected filesystems</summary>
|
||||
[XmlArrayItem("Filesystem")]
|
||||
public List<NameValueStats> Filesystems { get; set; }
|
||||
|
||||
/// <summary>Detected partitioning schemes</summary>
|
||||
[XmlArrayItem("Scheme")]
|
||||
public List<NameValueStats> Partitions { get; set; }
|
||||
|
||||
/// <summary>Media image formats</summary>
|
||||
[XmlArrayItem("Format")]
|
||||
public List<NameValueStats> MediaImages { get; set; }
|
||||
|
||||
/// <summary>Used filters</summary>
|
||||
[XmlArrayItem("Filter", IsNullable = true)]
|
||||
public List<NameValueStats> Filters { get; set; }
|
||||
|
||||
/// <summary>Found devices</summary>
|
||||
[XmlArrayItem("Device", IsNullable = true)]
|
||||
public List<DeviceStats> Devices { get; set; }
|
||||
|
||||
/// <summary>Found media types, real, and in image</summary>
|
||||
[XmlArrayItem("Media")]
|
||||
public List<MediaStats> Medias { get; set; }
|
||||
|
||||
/// <summary>Benchmark statistics</summary>
|
||||
public BenchmarkStats Benchmark { get; set; }
|
||||
|
||||
/// <summary>Media scanning statistics</summary>
|
||||
public MediaScanStats MediaScan { get; set; }
|
||||
|
||||
/// <summary>Image verification statistics</summary>
|
||||
public VerifyStats Verify { get; set; }
|
||||
}
|
||||
@@ -96,26 +107,37 @@ public class StatsDto
|
||||
{
|
||||
/// <summary>Executed commands</summary>
|
||||
public List<NameValueStats> Commands { get; set; }
|
||||
|
||||
/// <summary>Operating systems Aaru has run from</summary>
|
||||
public List<OsStats> OperatingSystems { get; set; }
|
||||
|
||||
/// <summary>Aaru versions</summary>
|
||||
public List<NameValueStats> Versions { get; set; }
|
||||
|
||||
/// <summary>Detected filesystems</summary>
|
||||
public List<NameValueStats> Filesystems { get; set; }
|
||||
|
||||
/// <summary>Detected partitioning schemes</summary>
|
||||
public List<NameValueStats> Partitions { get; set; }
|
||||
|
||||
/// <summary>Media image formats</summary>
|
||||
public List<NameValueStats> MediaFormats { get; set; }
|
||||
|
||||
/// <summary>Used filters</summary>
|
||||
public List<NameValueStats> Filters { get; set; }
|
||||
|
||||
/// <summary>Found devices</summary>
|
||||
public List<DeviceStats> Devices { get; set; }
|
||||
|
||||
/// <summary>Found media types, real, and in image</summary>
|
||||
public List<MediaStats> Medias { get; set; }
|
||||
|
||||
/// <summary>Remote applications</summary>
|
||||
public List<OsStats> RemoteApplications { get; set; }
|
||||
|
||||
/// <summary>Remote application architectures</summary>
|
||||
public List<NameValueStats> RemoteArchitectures { get; set; }
|
||||
|
||||
/// <summary>Operating systems where a remote application has been running</summary>
|
||||
public List<OsStats> RemoteOperatingSystems { get; set; }
|
||||
}
|
||||
@@ -260,13 +282,13 @@ public class BenchmarkStats
|
||||
[SuppressMessage("ReSharper", "InconsistentNaming")]
|
||||
public class MediaStats
|
||||
{
|
||||
/// <summary>Found in a real device?</summary>
|
||||
[XmlAttribute]
|
||||
public bool real;
|
||||
/// <summary>Media type</summary>
|
||||
[XmlAttribute(AttributeName = "type")]
|
||||
[JsonPropertyName("type")]
|
||||
public string MediaType;
|
||||
/// <summary>Found in a real device?</summary>
|
||||
[XmlAttribute]
|
||||
public bool real;
|
||||
/// <summary>Number of times it has been found</summary>
|
||||
[XmlText]
|
||||
public long Value;
|
||||
@@ -278,12 +300,16 @@ public class DeviceStats
|
||||
/// <summary>Is manufacturer null?</summary>
|
||||
[XmlIgnore]
|
||||
public bool ManufacturerSpecified;
|
||||
|
||||
/// <summary>Manufacturer string</summary>
|
||||
public string Manufacturer { get; set; }
|
||||
|
||||
/// <summary>Model string</summary>
|
||||
public string Model { get; set; }
|
||||
|
||||
/// <summary>Revision or firmware version</summary>
|
||||
public string Revision { get; set; }
|
||||
|
||||
/// <summary>Bus the device was attached to</summary>
|
||||
public string Bus { get; set; }
|
||||
}
|
||||
@@ -295,6 +321,7 @@ public class NameValueStats
|
||||
/// <summary>Name</summary>
|
||||
[XmlAttribute]
|
||||
public string name { get; set; }
|
||||
|
||||
/// <summary>Number of times it has been used/found</summary>
|
||||
[XmlText]
|
||||
public long Value { get; set; }
|
||||
@@ -307,9 +334,11 @@ public class OsStats
|
||||
/// <summary>Operating system name</summary>
|
||||
[XmlAttribute]
|
||||
public string name { get; set; }
|
||||
|
||||
/// <summary>Operating system version</summary>
|
||||
[XmlAttribute]
|
||||
public string version { get; set; }
|
||||
|
||||
/// <summary>Number of times Aaru run on it</summary>
|
||||
[XmlText]
|
||||
public long Value { get; set; }
|
||||
|
||||
@@ -61,8 +61,10 @@ public struct Partition : IEquatable<Partition>, IComparable<Partition>
|
||||
public ulong Length;
|
||||
/// <summary>Information that does not find space in this struct</summary>
|
||||
public string Description;
|
||||
|
||||
/// <summary>LBA of last partition sector</summary>
|
||||
public readonly ulong End => Start + Length - 1;
|
||||
|
||||
/// <summary>Name of partition scheme that contains this partition</summary>
|
||||
public string Scheme;
|
||||
|
||||
|
||||
@@ -55,11 +55,12 @@ namespace Aaru.CommonTypes.Structs.Devices.ATA;
|
||||
/// T13-1699D rev. 3f (ATA8-ACS) T13-1699D rev. 4a (ATA8-ACS) T13-2015D rev. 2 (ACS-2) T13-2161D rev. 5 (ACS-3) CF+
|
||||
/// & CF Specification rev. 1.4 (CFA)
|
||||
/// </summary>
|
||||
[SuppressMessage("ReSharper", "InconsistentNaming"), SuppressMessage("ReSharper", "MemberCanBeInternal"),
|
||||
SuppressMessage("ReSharper", "MemberCanBePrivate.Global")]
|
||||
[SuppressMessage("ReSharper", "InconsistentNaming")]
|
||||
[SuppressMessage("ReSharper", "MemberCanBeInternal")]
|
||||
[SuppressMessage("ReSharper", "MemberCanBePrivate.Global")]
|
||||
public static class Identify
|
||||
{
|
||||
const string MODULE_NAME = "ATA/ATAPI IDENTIFY decoder";
|
||||
#region CapabilitiesBit enum
|
||||
|
||||
/// <summary>Capabilities flag bits.</summary>
|
||||
[Flags]
|
||||
@@ -101,6 +102,10 @@ public static class Identify
|
||||
PhysicalAlignment0 = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region CapabilitiesBit2 enum
|
||||
|
||||
/// <summary>More capabilities flag bits.</summary>
|
||||
[Flags]
|
||||
public enum CapabilitiesBit2 : ushort
|
||||
@@ -109,17 +114,29 @@ public static class Identify
|
||||
MustBeClear = 0x8000,
|
||||
/// <summary>MUST be set</summary>
|
||||
MustBeSet = 0x4000,
|
||||
#pragma warning disable 1591
|
||||
Reserved13 = 0x2000, Reserved12 = 0x1000, Reserved11 = 0x0800,
|
||||
Reserved10 = 0x0400, Reserved09 = 0x0200, Reserved08 = 0x0100,
|
||||
Reserved07 = 0x0080, Reserved06 = 0x0040, Reserved05 = 0x0020,
|
||||
Reserved04 = 0x0010, Reserved03 = 0x0008, Reserved02 = 0x0004,
|
||||
#pragma warning disable 1591
|
||||
Reserved13 = 0x2000,
|
||||
Reserved12 = 0x1000,
|
||||
Reserved11 = 0x0800,
|
||||
Reserved10 = 0x0400,
|
||||
Reserved09 = 0x0200,
|
||||
Reserved08 = 0x0100,
|
||||
Reserved07 = 0x0080,
|
||||
Reserved06 = 0x0040,
|
||||
Reserved05 = 0x0020,
|
||||
Reserved04 = 0x0010,
|
||||
Reserved03 = 0x0008,
|
||||
Reserved02 = 0x0004,
|
||||
Reserved01 = 0x0002,
|
||||
#pragma warning restore 1591
|
||||
#pragma warning restore 1591
|
||||
/// <summary>Indicates a device specific minimum standby timer value</summary>
|
||||
SpecificStandbyTimer = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region CapabilitiesBit3 enum
|
||||
|
||||
/// <summary>Even more capabilities flag bits.</summary>
|
||||
[Flags]
|
||||
public enum CapabilitiesBit3 : byte
|
||||
@@ -136,13 +153,17 @@ public static class Identify
|
||||
SanitizeCommands = 0x0008,
|
||||
/// <summary>SANITIZE ANTIFREEZE LOCK EXT is supported</summary>
|
||||
SanitizeAntifreeze = 0x0004,
|
||||
#pragma warning disable 1591
|
||||
#pragma warning disable 1591
|
||||
Reserved01 = 0x0002,
|
||||
#pragma warning restore 1591
|
||||
#pragma warning restore 1591
|
||||
/// <summary>Multiple logical sector setting is valid</summary>
|
||||
MultipleValid = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region CommandSetBit enum
|
||||
|
||||
/// <summary>Command set flag bits.</summary>
|
||||
[Flags]
|
||||
public enum CommandSetBit : ushort
|
||||
@@ -181,6 +202,10 @@ public static class Identify
|
||||
SMART = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region CommandSetBit2 enum
|
||||
|
||||
/// <summary>More command set flag bits.</summary>
|
||||
[Flags]
|
||||
public enum CommandSetBit2 : ushort
|
||||
@@ -219,6 +244,10 @@ public static class Identify
|
||||
DownloadMicrocode = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region CommandSetBit3 enum
|
||||
|
||||
/// <summary>Even more command set flag bits.</summary>
|
||||
[Flags]
|
||||
public enum CommandSetBit3 : ushort
|
||||
@@ -257,6 +286,10 @@ public static class Identify
|
||||
SMARTLog = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region CommandSetBit4 enum
|
||||
|
||||
/// <summary>Yet more command set flag bits.</summary>
|
||||
[Flags]
|
||||
public enum CommandSetBit4 : ushort
|
||||
@@ -265,10 +298,12 @@ public static class Identify
|
||||
MustBeClear = 0x8000,
|
||||
/// <summary>MUST be set</summary>
|
||||
MustBeSet = 0x4000,
|
||||
#pragma warning disable 1591
|
||||
Reserved13 = 0x2000, Reserved12 = 0x1000, Reserved11 = 0x0800,
|
||||
#pragma warning disable 1591
|
||||
Reserved13 = 0x2000,
|
||||
Reserved12 = 0x1000,
|
||||
Reserved11 = 0x0800,
|
||||
Reserved10 = 0x0400,
|
||||
#pragma warning restore 1591
|
||||
#pragma warning restore 1591
|
||||
/// <summary>DSN feature set is supported</summary>
|
||||
DSN = 0x0200,
|
||||
/// <summary>Accessible Max Address Configuration is supported</summary>
|
||||
@@ -291,6 +326,10 @@ public static class Identify
|
||||
DT1825 = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region CommandSetBit5 enum
|
||||
|
||||
/// <summary>Yet again more command set flag bits.</summary>
|
||||
[Flags]
|
||||
public enum CommandSetBit5 : ushort
|
||||
@@ -329,21 +368,39 @@ public static class Identify
|
||||
ZonedBit0 = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region DataSetMgmtBit enum
|
||||
|
||||
/// <summary>Data set management flag bits.</summary>
|
||||
[Flags]
|
||||
public enum DataSetMgmtBit : ushort
|
||||
{
|
||||
#pragma warning disable 1591
|
||||
Reserved15 = 0x8000, Reserved14 = 0x4000, Reserved13 = 0x2000,
|
||||
Reserved12 = 0x1000, Reserved11 = 0x0800, Reserved10 = 0x0400,
|
||||
Reserved09 = 0x0200, Reserved08 = 0x0100, Reserved07 = 0x0080,
|
||||
Reserved06 = 0x0040, Reserved05 = 0x0020, Reserved04 = 0x0010,
|
||||
Reserved03 = 0x0008, Reserved02 = 0x0004, Reserved01 = 0x0002,
|
||||
#pragma warning restore 1591
|
||||
#pragma warning disable 1591
|
||||
Reserved15 = 0x8000,
|
||||
Reserved14 = 0x4000,
|
||||
Reserved13 = 0x2000,
|
||||
Reserved12 = 0x1000,
|
||||
Reserved11 = 0x0800,
|
||||
Reserved10 = 0x0400,
|
||||
Reserved09 = 0x0200,
|
||||
Reserved08 = 0x0100,
|
||||
Reserved07 = 0x0080,
|
||||
Reserved06 = 0x0040,
|
||||
Reserved05 = 0x0020,
|
||||
Reserved04 = 0x0010,
|
||||
Reserved03 = 0x0008,
|
||||
Reserved02 = 0x0004,
|
||||
Reserved01 = 0x0002,
|
||||
#pragma warning restore 1591
|
||||
/// <summary>TRIM is supported</summary>
|
||||
Trim = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region DeviceFormFactorEnum enum
|
||||
|
||||
/// <summary>Device form factor</summary>
|
||||
public enum DeviceFormFactorEnum : ushort
|
||||
{
|
||||
@@ -361,6 +418,10 @@ public static class Identify
|
||||
LessThanOnePointEight = 5
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region ExtendedIdentifyBit enum
|
||||
|
||||
/// <summary>Extended identify flag bits.</summary>
|
||||
[Flags]
|
||||
public enum ExtendedIdentifyBit : byte
|
||||
@@ -383,6 +444,10 @@ public static class Identify
|
||||
Words54to58Valid = 0x01
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region GeneralConfigurationBit enum
|
||||
|
||||
/// <summary>General configuration flag bits.</summary>
|
||||
[Flags]
|
||||
public enum GeneralConfigurationBit : ushort
|
||||
@@ -423,14 +488,20 @@ public static class Identify
|
||||
Reserved = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region MajorVersionBit enum
|
||||
|
||||
/// <summary>Word 80 Major version</summary>
|
||||
[Flags]
|
||||
public enum MajorVersionBit : ushort
|
||||
{
|
||||
#pragma warning disable 1591
|
||||
Reserved15 = 0x8000, Reserved14 = 0x4000, Reserved13 = 0x2000,
|
||||
#pragma warning disable 1591
|
||||
Reserved15 = 0x8000,
|
||||
Reserved14 = 0x4000,
|
||||
Reserved13 = 0x2000,
|
||||
Reserved12 = 0x1000,
|
||||
#pragma warning restore 1591
|
||||
#pragma warning restore 1591
|
||||
/// <summary>ACS-4</summary>
|
||||
ACS4 = 0x0800,
|
||||
/// <summary>ACS-3</summary>
|
||||
@@ -453,11 +524,15 @@ public static class Identify
|
||||
Ata2 = 0x0004,
|
||||
/// <summary>ATA-1</summary>
|
||||
Ata1 = 0x0002,
|
||||
#pragma warning disable 1591
|
||||
#pragma warning disable 1591
|
||||
Reserved00 = 0x0001
|
||||
#pragma warning restore 1591
|
||||
#pragma warning restore 1591
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region SATACapabilitiesBit enum
|
||||
|
||||
/// <summary>SATA capabilities flags</summary>
|
||||
[Flags]
|
||||
public enum SATACapabilitiesBit : ushort
|
||||
@@ -478,10 +553,12 @@ public static class Identify
|
||||
PowerReceipt = 0x0200,
|
||||
/// <summary>Supports NCQ</summary>
|
||||
NCQ = 0x0100,
|
||||
#pragma warning disable 1591
|
||||
Reserved07 = 0x0080, Reserved06 = 0x0040, Reserved05 = 0x0020,
|
||||
#pragma warning disable 1591
|
||||
Reserved07 = 0x0080,
|
||||
Reserved06 = 0x0040,
|
||||
Reserved05 = 0x0020,
|
||||
Reserved04 = 0x0010,
|
||||
#pragma warning restore 1591
|
||||
#pragma warning restore 1591
|
||||
/// <summary>Supports SATA Gen. 3 Signaling Speed (6.0Gb/s)</summary>
|
||||
Gen3Speed = 0x0008,
|
||||
/// <summary>Supports SATA Gen. 2 Signaling Speed (3.0Gb/s)</summary>
|
||||
@@ -492,15 +569,25 @@ public static class Identify
|
||||
Clear = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region SATACapabilitiesBit2 enum
|
||||
|
||||
/// <summary>More SATA capabilities flags</summary>
|
||||
[Flags]
|
||||
public enum SATACapabilitiesBit2 : ushort
|
||||
{
|
||||
#pragma warning disable 1591
|
||||
Reserved15 = 0x8000, Reserved14 = 0x4000, Reserved13 = 0x2000,
|
||||
Reserved12 = 0x1000, Reserved11 = 0x0800, Reserved10 = 0x0400,
|
||||
Reserved09 = 0x0200, Reserved08 = 0x0100, Reserved07 = 0x0080,
|
||||
#pragma warning restore 1591
|
||||
#pragma warning disable 1591
|
||||
Reserved15 = 0x8000,
|
||||
Reserved14 = 0x4000,
|
||||
Reserved13 = 0x2000,
|
||||
Reserved12 = 0x1000,
|
||||
Reserved11 = 0x0800,
|
||||
Reserved10 = 0x0400,
|
||||
Reserved09 = 0x0200,
|
||||
Reserved08 = 0x0100,
|
||||
Reserved07 = 0x0080,
|
||||
#pragma warning restore 1591
|
||||
/// <summary>Supports RECEIVE FPDMA QUEUED and SEND FPDMA QUEUED</summary>
|
||||
FPDMAQ = 0x0040,
|
||||
/// <summary>Supports NCQ Queue Management</summary>
|
||||
@@ -521,15 +608,24 @@ public static class Identify
|
||||
Clear = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region SATAFeaturesBit enum
|
||||
|
||||
/// <summary>SATA features flags</summary>
|
||||
[Flags]
|
||||
public enum SATAFeaturesBit : ushort
|
||||
{
|
||||
#pragma warning disable 1591
|
||||
Reserved15 = 0x8000, Reserved14 = 0x4000, Reserved13 = 0x2000,
|
||||
Reserved12 = 0x1000, Reserved11 = 0x0800, Reserved10 = 0x0400,
|
||||
Reserved09 = 0x0200, Reserved08 = 0x0100,
|
||||
#pragma warning restore 1591
|
||||
#pragma warning disable 1591
|
||||
Reserved15 = 0x8000,
|
||||
Reserved14 = 0x4000,
|
||||
Reserved13 = 0x2000,
|
||||
Reserved12 = 0x1000,
|
||||
Reserved11 = 0x0800,
|
||||
Reserved10 = 0x0400,
|
||||
Reserved09 = 0x0200,
|
||||
Reserved08 = 0x0100,
|
||||
#pragma warning restore 1591
|
||||
/// <summary>Supports NCQ autosense</summary>
|
||||
NCQAutoSense = 0x0080,
|
||||
/// <summary>Automatic Partial to Slumber transitions are enabled</summary>
|
||||
@@ -552,16 +648,26 @@ public static class Identify
|
||||
Clear = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region SCTCommandTransportBit enum
|
||||
|
||||
/// <summary>SCT Command Transport flags</summary>
|
||||
[Flags]
|
||||
public enum SCTCommandTransportBit : ushort
|
||||
{
|
||||
#pragma warning disable 1591
|
||||
Vendor15 = 0x8000, Vendor14 = 0x4000, Vendor13 = 0x2000,
|
||||
Vendor12 = 0x1000, Reserved11 = 0x0800, Reserved10 = 0x0400,
|
||||
Reserved09 = 0x0200, Reserved08 = 0x0100, Reserved07 = 0x0080,
|
||||
#pragma warning disable 1591
|
||||
Vendor15 = 0x8000,
|
||||
Vendor14 = 0x4000,
|
||||
Vendor13 = 0x2000,
|
||||
Vendor12 = 0x1000,
|
||||
Reserved11 = 0x0800,
|
||||
Reserved10 = 0x0400,
|
||||
Reserved09 = 0x0200,
|
||||
Reserved08 = 0x0100,
|
||||
Reserved07 = 0x0080,
|
||||
Reserved06 = 0x0040,
|
||||
#pragma warning restore 1591
|
||||
#pragma warning restore 1591
|
||||
/// <summary>SCT Command Transport Data Tables supported</summary>
|
||||
DataTables = 0x0020,
|
||||
/// <summary>SCT Command Transport Features Control supported</summary>
|
||||
@@ -576,20 +682,29 @@ public static class Identify
|
||||
Supported = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region SecurityStatusBit enum
|
||||
|
||||
/// <summary>Security status flag bits.</summary>
|
||||
[Flags]
|
||||
public enum SecurityStatusBit : ushort
|
||||
{
|
||||
#pragma warning disable 1591
|
||||
Reserved15 = 0x8000, Reserved14 = 0x4000, Reserved13 = 0x2000,
|
||||
Reserved12 = 0x1000, Reserved11 = 0x0800, Reserved10 = 0x0400,
|
||||
#pragma warning disable 1591
|
||||
Reserved15 = 0x8000,
|
||||
Reserved14 = 0x4000,
|
||||
Reserved13 = 0x2000,
|
||||
Reserved12 = 0x1000,
|
||||
Reserved11 = 0x0800,
|
||||
Reserved10 = 0x0400,
|
||||
Reserved09 = 0x0200,
|
||||
#pragma warning restore 1591
|
||||
#pragma warning restore 1591
|
||||
/// <summary>Maximum security level</summary>
|
||||
Maximum = 0x0100,
|
||||
#pragma warning disable 1591
|
||||
Reserved07 = 0x0080, Reserved06 = 0x0040,
|
||||
#pragma warning restore 1591
|
||||
#pragma warning disable 1591
|
||||
Reserved07 = 0x0080,
|
||||
Reserved06 = 0x0040,
|
||||
#pragma warning restore 1591
|
||||
/// <summary>Supports enhanced security erase</summary>
|
||||
Enhanced = 0x0020,
|
||||
/// <summary>Security count expired</summary>
|
||||
@@ -604,6 +719,10 @@ public static class Identify
|
||||
Supported = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region SpecificConfigurationEnum enum
|
||||
|
||||
/// <summary>Specific configuration flags</summary>
|
||||
public enum SpecificConfigurationEnum : ushort
|
||||
{
|
||||
@@ -617,17 +736,30 @@ public static class Identify
|
||||
NotRequiresSetCompleteResponse = 0xC837
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region TransferMode enum
|
||||
|
||||
/// <summary>Transfer mode flags</summary>
|
||||
[Flags]
|
||||
public enum TransferMode : byte
|
||||
{
|
||||
#pragma warning disable 1591
|
||||
Mode7 = 0x80, Mode6 = 0x40, Mode5 = 0x20,
|
||||
Mode4 = 0x10, Mode3 = 0x08, Mode2 = 0x04,
|
||||
Mode1 = 0x02, Mode0 = 0x01
|
||||
#pragma warning restore 1591
|
||||
#pragma warning disable 1591
|
||||
Mode7 = 0x80,
|
||||
Mode6 = 0x40,
|
||||
Mode5 = 0x20,
|
||||
Mode4 = 0x10,
|
||||
Mode3 = 0x08,
|
||||
Mode2 = 0x04,
|
||||
Mode1 = 0x02,
|
||||
Mode0 = 0x01
|
||||
#pragma warning restore 1591
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region TrustedComputingBit enum
|
||||
|
||||
/// <summary>Trusted Computing flags</summary>
|
||||
[Flags]
|
||||
public enum TrustedComputingBit : ushort
|
||||
@@ -636,17 +768,158 @@ public static class Identify
|
||||
Clear = 0x8000,
|
||||
/// <summary>MUST be set</summary>
|
||||
Set = 0x4000,
|
||||
#pragma warning disable 1591
|
||||
Reserved13 = 0x2000, Reserved12 = 0x1000, Reserved11 = 0x0800,
|
||||
Reserved10 = 0x0400, Reserved09 = 0x0200, Reserved08 = 0x0100,
|
||||
Reserved07 = 0x0080, Reserved06 = 0x0040, Reserved05 = 0x0020,
|
||||
Reserved04 = 0x0010, Reserved03 = 0x0008, Reserved02 = 0x0004,
|
||||
#pragma warning disable 1591
|
||||
Reserved13 = 0x2000,
|
||||
Reserved12 = 0x1000,
|
||||
Reserved11 = 0x0800,
|
||||
Reserved10 = 0x0400,
|
||||
Reserved09 = 0x0200,
|
||||
Reserved08 = 0x0100,
|
||||
Reserved07 = 0x0080,
|
||||
Reserved06 = 0x0040,
|
||||
Reserved05 = 0x0020,
|
||||
Reserved04 = 0x0010,
|
||||
Reserved03 = 0x0008,
|
||||
Reserved02 = 0x0004,
|
||||
Reserved01 = 0x0002,
|
||||
#pragma warning restore 1591
|
||||
#pragma warning restore 1591
|
||||
/// <summary>Trusted Computing feature set is supported</summary>
|
||||
TrustedComputing = 0x0001
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
const string MODULE_NAME = "ATA/ATAPI IDENTIFY decoder";
|
||||
|
||||
/// <summary>Decodes a raw IDENTIFY DEVICE response</summary>
|
||||
/// <param name="IdentifyDeviceResponse">Raw IDENTIFY DEVICE response</param>
|
||||
/// <returns>Decoded IDENTIFY DEVICE</returns>
|
||||
public static IdentifyDevice? Decode(byte[] IdentifyDeviceResponse)
|
||||
{
|
||||
if(IdentifyDeviceResponse == null)
|
||||
return null;
|
||||
|
||||
if(IdentifyDeviceResponse.Length != 512)
|
||||
{
|
||||
AaruConsole.DebugWriteLine(MODULE_NAME,
|
||||
Localization.IDENTIFY_response_is_different_than_512_bytes_not_decoding);
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
IdentifyDevice ATAID = Marshal.ByteArrayToStructureLittleEndian<IdentifyDevice>(IdentifyDeviceResponse);
|
||||
|
||||
ATAID.WWN = DescrambleWWN(ATAID.WWN);
|
||||
ATAID.WWNExtension = DescrambleWWN(ATAID.WWNExtension);
|
||||
|
||||
ATAID.SerialNumber = DescrambleATAString(IdentifyDeviceResponse, 10 * 2, 20);
|
||||
ATAID.FirmwareRevision = DescrambleATAString(IdentifyDeviceResponse, 23 * 2, 8);
|
||||
ATAID.Model = DescrambleATAString(IdentifyDeviceResponse, 27 * 2, 40);
|
||||
ATAID.AdditionalPID = DescrambleATAString(IdentifyDeviceResponse, 170 * 2, 8);
|
||||
ATAID.MediaSerial = DescrambleATAString(IdentifyDeviceResponse, 176 * 2, 40);
|
||||
ATAID.MediaManufacturer = DescrambleATAString(IdentifyDeviceResponse, 196 * 2, 20);
|
||||
|
||||
return ATAID;
|
||||
}
|
||||
|
||||
/// <summary>Encodes a raw IDENTIFY DEVICE response</summary>
|
||||
/// <param name="identify">Decoded IDENTIFY DEVICE</param>
|
||||
/// <returns>Raw IDENTIFY DEVICE response</returns>
|
||||
public static byte[] Encode(IdentifyDevice? identify)
|
||||
{
|
||||
if(identify is null)
|
||||
return null;
|
||||
|
||||
IdentifyDevice ataId = identify.Value;
|
||||
|
||||
ataId.WWN = DescrambleWWN(ataId.WWN);
|
||||
ataId.WWNExtension = DescrambleWWN(ataId.WWNExtension);
|
||||
|
||||
var buf = new byte[512];
|
||||
nint ptr = System.Runtime.InteropServices.Marshal.AllocHGlobal(512);
|
||||
System.Runtime.InteropServices.Marshal.StructureToPtr(ataId, ptr, false);
|
||||
System.Runtime.InteropServices.Marshal.Copy(ptr, buf, 0, 512);
|
||||
System.Runtime.InteropServices.Marshal.FreeHGlobal(ptr);
|
||||
|
||||
byte[] str = ScrambleATAString(ataId.SerialNumber, 20);
|
||||
Array.Copy(str, 0, buf, 10 * 2, 20);
|
||||
str = ScrambleATAString(ataId.FirmwareRevision, 8);
|
||||
Array.Copy(str, 0, buf, 23 * 2, 8);
|
||||
str = ScrambleATAString(ataId.Model, 40);
|
||||
Array.Copy(str, 0, buf, 27 * 2, 40);
|
||||
str = ScrambleATAString(ataId.AdditionalPID, 8);
|
||||
Array.Copy(str, 0, buf, 170 * 2, 8);
|
||||
str = ScrambleATAString(ataId.MediaSerial, 40);
|
||||
Array.Copy(str, 0, buf, 176 * 2, 40);
|
||||
str = ScrambleATAString(ataId.MediaManufacturer, 20);
|
||||
Array.Copy(str, 0, buf, 196 * 2, 20);
|
||||
|
||||
return buf;
|
||||
}
|
||||
|
||||
static ulong DescrambleWWN(ulong WWN)
|
||||
{
|
||||
byte[] qwb = BitConverter.GetBytes(WWN);
|
||||
var qword = new byte[8];
|
||||
|
||||
qword[7] = qwb[1];
|
||||
qword[6] = qwb[0];
|
||||
qword[5] = qwb[3];
|
||||
qword[4] = qwb[2];
|
||||
qword[3] = qwb[5];
|
||||
qword[2] = qwb[4];
|
||||
qword[1] = qwb[7];
|
||||
qword[0] = qwb[6];
|
||||
|
||||
return BitConverter.ToUInt64(qword, 0);
|
||||
}
|
||||
|
||||
static string DescrambleATAString(IList<byte> buffer, int offset, int length)
|
||||
{
|
||||
byte[] outbuf = buffer[offset + length - 1] != 0x00 ? new byte[length + 1] : new byte[length];
|
||||
|
||||
for(var i = 0; i < length; i += 2)
|
||||
{
|
||||
outbuf[i] = buffer[offset + i + 1];
|
||||
outbuf[i + 1] = buffer[offset + i];
|
||||
}
|
||||
|
||||
string outStr = StringHandlers.CToString(outbuf);
|
||||
|
||||
return outStr.Trim();
|
||||
}
|
||||
|
||||
static byte[] ScrambleATAString(string str, int length)
|
||||
{
|
||||
var buf = new byte[length];
|
||||
|
||||
for(var i = 0; i < length; i++)
|
||||
buf[i] = 0x20;
|
||||
|
||||
if(str is null)
|
||||
return buf;
|
||||
|
||||
byte[] bytes = Encoding.ASCII.GetBytes(str);
|
||||
|
||||
if(bytes.Length % 2 != 0)
|
||||
{
|
||||
var tmp = new byte[bytes.Length + 1];
|
||||
tmp[^1] = 0x20;
|
||||
Array.Copy(bytes, 0, tmp, 0, bytes.Length);
|
||||
bytes = tmp;
|
||||
}
|
||||
|
||||
for(var i = 0; i < bytes.Length; i += 2)
|
||||
{
|
||||
buf[i] = bytes[i + 1];
|
||||
buf[i + 1] = bytes[i];
|
||||
}
|
||||
|
||||
return buf;
|
||||
}
|
||||
|
||||
#region Nested type: IdentifyDevice
|
||||
|
||||
/// <summary>IDENTIFY DEVICE decoded response</summary>
|
||||
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi, Pack = 2)]
|
||||
public struct IdentifyDevice
|
||||
@@ -999,130 +1272,5 @@ public static class Identify
|
||||
public byte Checksum;
|
||||
}
|
||||
|
||||
/// <summary>Decodes a raw IDENTIFY DEVICE response</summary>
|
||||
/// <param name="IdentifyDeviceResponse">Raw IDENTIFY DEVICE response</param>
|
||||
/// <returns>Decoded IDENTIFY DEVICE</returns>
|
||||
public static IdentifyDevice? Decode(byte[] IdentifyDeviceResponse)
|
||||
{
|
||||
if(IdentifyDeviceResponse == null)
|
||||
return null;
|
||||
|
||||
if(IdentifyDeviceResponse.Length != 512)
|
||||
{
|
||||
AaruConsole.DebugWriteLine(MODULE_NAME,
|
||||
Localization.IDENTIFY_response_is_different_than_512_bytes_not_decoding);
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
IdentifyDevice ATAID = Marshal.ByteArrayToStructureLittleEndian<IdentifyDevice>(IdentifyDeviceResponse);
|
||||
|
||||
ATAID.WWN = DescrambleWWN(ATAID.WWN);
|
||||
ATAID.WWNExtension = DescrambleWWN(ATAID.WWNExtension);
|
||||
|
||||
ATAID.SerialNumber = DescrambleATAString(IdentifyDeviceResponse, 10 * 2, 20);
|
||||
ATAID.FirmwareRevision = DescrambleATAString(IdentifyDeviceResponse, 23 * 2, 8);
|
||||
ATAID.Model = DescrambleATAString(IdentifyDeviceResponse, 27 * 2, 40);
|
||||
ATAID.AdditionalPID = DescrambleATAString(IdentifyDeviceResponse, 170 * 2, 8);
|
||||
ATAID.MediaSerial = DescrambleATAString(IdentifyDeviceResponse, 176 * 2, 40);
|
||||
ATAID.MediaManufacturer = DescrambleATAString(IdentifyDeviceResponse, 196 * 2, 20);
|
||||
|
||||
return ATAID;
|
||||
}
|
||||
|
||||
/// <summary>Encodes a raw IDENTIFY DEVICE response</summary>
|
||||
/// <param name="identify">Decoded IDENTIFY DEVICE</param>
|
||||
/// <returns>Raw IDENTIFY DEVICE response</returns>
|
||||
public static byte[] Encode(IdentifyDevice? identify)
|
||||
{
|
||||
if(identify is null)
|
||||
return null;
|
||||
|
||||
IdentifyDevice ataId = identify.Value;
|
||||
|
||||
ataId.WWN = DescrambleWWN(ataId.WWN);
|
||||
ataId.WWNExtension = DescrambleWWN(ataId.WWNExtension);
|
||||
|
||||
byte[] buf = new byte[512];
|
||||
nint ptr = System.Runtime.InteropServices.Marshal.AllocHGlobal(512);
|
||||
System.Runtime.InteropServices.Marshal.StructureToPtr(ataId, ptr, false);
|
||||
System.Runtime.InteropServices.Marshal.Copy(ptr, buf, 0, 512);
|
||||
System.Runtime.InteropServices.Marshal.FreeHGlobal(ptr);
|
||||
|
||||
byte[] str = ScrambleATAString(ataId.SerialNumber, 20);
|
||||
Array.Copy(str, 0, buf, 10 * 2, 20);
|
||||
str = ScrambleATAString(ataId.FirmwareRevision, 8);
|
||||
Array.Copy(str, 0, buf, 23 * 2, 8);
|
||||
str = ScrambleATAString(ataId.Model, 40);
|
||||
Array.Copy(str, 0, buf, 27 * 2, 40);
|
||||
str = ScrambleATAString(ataId.AdditionalPID, 8);
|
||||
Array.Copy(str, 0, buf, 170 * 2, 8);
|
||||
str = ScrambleATAString(ataId.MediaSerial, 40);
|
||||
Array.Copy(str, 0, buf, 176 * 2, 40);
|
||||
str = ScrambleATAString(ataId.MediaManufacturer, 20);
|
||||
Array.Copy(str, 0, buf, 196 * 2, 20);
|
||||
|
||||
return buf;
|
||||
}
|
||||
|
||||
static ulong DescrambleWWN(ulong WWN)
|
||||
{
|
||||
byte[] qwb = BitConverter.GetBytes(WWN);
|
||||
byte[] qword = new byte[8];
|
||||
|
||||
qword[7] = qwb[1];
|
||||
qword[6] = qwb[0];
|
||||
qword[5] = qwb[3];
|
||||
qword[4] = qwb[2];
|
||||
qword[3] = qwb[5];
|
||||
qword[2] = qwb[4];
|
||||
qword[1] = qwb[7];
|
||||
qword[0] = qwb[6];
|
||||
|
||||
return BitConverter.ToUInt64(qword, 0);
|
||||
}
|
||||
|
||||
static string DescrambleATAString(IList<byte> buffer, int offset, int length)
|
||||
{
|
||||
byte[] outbuf = buffer[offset + length - 1] != 0x00 ? new byte[length + 1] : new byte[length];
|
||||
|
||||
for(int i = 0; i < length; i += 2)
|
||||
{
|
||||
outbuf[i] = buffer[offset + i + 1];
|
||||
outbuf[i + 1] = buffer[offset + i];
|
||||
}
|
||||
|
||||
string outStr = StringHandlers.CToString(outbuf);
|
||||
|
||||
return outStr.Trim();
|
||||
}
|
||||
|
||||
static byte[] ScrambleATAString(string str, int length)
|
||||
{
|
||||
byte[] buf = new byte[length];
|
||||
|
||||
for(int i = 0; i < length; i++)
|
||||
buf[i] = 0x20;
|
||||
|
||||
if(str is null)
|
||||
return buf;
|
||||
|
||||
byte[] bytes = Encoding.ASCII.GetBytes(str);
|
||||
|
||||
if(bytes.Length % 2 != 0)
|
||||
{
|
||||
byte[] tmp = new byte[bytes.Length + 1];
|
||||
tmp[^1] = 0x20;
|
||||
Array.Copy(bytes, 0, tmp, 0, bytes.Length);
|
||||
bytes = tmp;
|
||||
}
|
||||
|
||||
for(int i = 0; i < bytes.Length; i += 2)
|
||||
{
|
||||
buf[i] = bytes[i + 1];
|
||||
buf[i + 1] = bytes[i];
|
||||
}
|
||||
|
||||
return buf;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
@@ -47,8 +47,9 @@ namespace Aaru.CommonTypes.Structs.Devices.SCSI;
|
||||
/// Information from the following standards: T9/375-D revision 10l T10/995-D revision 10 T10/1236-D revision 20
|
||||
/// T10/1416-D revision 23 T10/1731-D revision 16 T10/502 revision 05 RFC 7144 ECMA-111
|
||||
/// </summary>
|
||||
[SuppressMessage("ReSharper", "InconsistentNaming"), SuppressMessage("ReSharper", "MemberCanBeInternal"),
|
||||
SuppressMessage("ReSharper", "MemberCanBePrivate.Global")]
|
||||
[SuppressMessage("ReSharper", "InconsistentNaming")]
|
||||
[SuppressMessage("ReSharper", "MemberCanBeInternal")]
|
||||
[SuppressMessage("ReSharper", "MemberCanBePrivate.Global")]
|
||||
public struct Inquiry
|
||||
{
|
||||
const string MODULE_NAME = "SCSI INQUIRY decoder";
|
||||
@@ -149,7 +150,8 @@ public struct Inquiry
|
||||
|
||||
// Per DLT4000/DLT4500/DLT4700 Cartridge Tape Subsystem Product Manual
|
||||
|
||||
#region Quantum vendor unique inquiry data structure
|
||||
#region Quantum vendor unique inquiry data structure
|
||||
|
||||
/// <summary>Means that the INQUIRY response contains 56 bytes or more, so this data has been filled</summary>
|
||||
public bool QuantumPresent;
|
||||
/// <summary>The product family. Byte 36, bits 7 to 5</summary>
|
||||
@@ -188,9 +190,11 @@ public struct Inquiry
|
||||
public bool Qt_LibraryPresent;
|
||||
/// <summary>The module revision. Bytes 52 to 55</summary>
|
||||
public byte[] Qt_ModuleRevision;
|
||||
#endregion Quantum vendor unique inquiry data structure
|
||||
|
||||
#region IBM vendor unique inquiry data structure
|
||||
#endregion Quantum vendor unique inquiry data structure
|
||||
|
||||
#region IBM vendor unique inquiry data structure
|
||||
|
||||
/// <summary>Means that the INQUIRY response contains 56 bytes or more, so this data has been filled</summary>
|
||||
public bool IBMPresent;
|
||||
/// <summary>Drive is not capable of automation Byte 36 bit 0</summary>
|
||||
@@ -199,9 +203,11 @@ public struct Inquiry
|
||||
public byte IBM_PerformanceLimit;
|
||||
/// <summary>Byte 41</summary>
|
||||
public byte IBM_OEMSpecific;
|
||||
#endregion IBM vendor unique inquiry data structure
|
||||
|
||||
#region HP vendor unique inquiry data structure
|
||||
#endregion IBM vendor unique inquiry data structure
|
||||
|
||||
#region HP vendor unique inquiry data structure
|
||||
|
||||
/// <summary>Means that the INQUIRY response contains 49 bytes or more, so this data has been filled</summary>
|
||||
public bool HPPresent;
|
||||
/// <summary>WORM version Byte 40 bits 7 to 1</summary>
|
||||
@@ -210,9 +216,11 @@ public struct Inquiry
|
||||
public bool HP_WORM;
|
||||
/// <summary>Bytes 43 to 48</summary>
|
||||
public byte[] HP_OBDR;
|
||||
#endregion HP vendor unique inquiry data structure
|
||||
|
||||
#region Seagate vendor unique inquiry data structure
|
||||
#endregion HP vendor unique inquiry data structure
|
||||
|
||||
#region Seagate vendor unique inquiry data structure
|
||||
|
||||
/// <summary>Means that bytes 36 to 43 are filled</summary>
|
||||
public bool SeagatePresent;
|
||||
/// <summary>Drive Serial Number Bytes 36 to 43</summary>
|
||||
@@ -225,9 +233,11 @@ public struct Inquiry
|
||||
public bool Seagate3Present;
|
||||
/// <summary>Reserved Seagate field Bytes 144 to 147</summary>
|
||||
public byte[] Seagate_ServoPROMPartNo;
|
||||
#endregion Seagate vendor unique inquiry data structure
|
||||
|
||||
#region Kreon vendor unique inquiry data structure
|
||||
#endregion Seagate vendor unique inquiry data structure
|
||||
|
||||
#region Kreon vendor unique inquiry data structure
|
||||
|
||||
/// <summary>Means that firmware is Kreon</summary>
|
||||
public bool KreonPresent;
|
||||
/// <summary>Kreon identifier Bytes 36 to 40</summary>
|
||||
@@ -236,23 +246,28 @@ public struct Inquiry
|
||||
public byte KreonSpace;
|
||||
/// <summary>Kreon version string Bytes 42 to 46</summary>
|
||||
public byte[] KreonVersion;
|
||||
#endregion Kreon vendor unique inquiry data structure
|
||||
|
||||
#region Sony Hi-MD data
|
||||
#endregion Kreon vendor unique inquiry data structure
|
||||
|
||||
#region Sony Hi-MD data
|
||||
|
||||
/// <summary>Set if Hi-MD signature is present</summary>
|
||||
public bool IsHiMD;
|
||||
/// <summary>Hi-MD signature, bytes 36 to 44</summary>
|
||||
public byte[] HiMDSignature;
|
||||
/// <summary>Unknown data, bytes 44 to 55</summary>
|
||||
public byte[] HiMDSpecific;
|
||||
#endregion Sony Hi-MD data
|
||||
|
||||
#endregion Sony Hi-MD data
|
||||
|
||||
static readonly byte[] HiMDSignatureContents = "Hi-MD "u8.ToArray();
|
||||
|
||||
/// <summary>Decodes a SCSI INQUIRY response</summary>
|
||||
/// <param name="SCSIInquiryResponse">INQUIRY raw response data</param>
|
||||
/// <returns>Decoded SCSI INQUIRY</returns>
|
||||
#region Public methods
|
||||
|
||||
#region Public methods
|
||||
|
||||
public static Inquiry? Decode(byte[] SCSIInquiryResponse)
|
||||
{
|
||||
if(SCSIInquiryResponse == null)
|
||||
@@ -465,8 +480,8 @@ public struct Inquiry
|
||||
|
||||
decoded.VersionDescriptors = new ushort[descriptorsNo];
|
||||
|
||||
for(int i = 0; i < descriptorsNo; i++)
|
||||
decoded.VersionDescriptors[i] = BitConverter.ToUInt16(SCSIInquiryResponse, 58 + (i * 2));
|
||||
for(var i = 0; i < descriptorsNo; i++)
|
||||
decoded.VersionDescriptors[i] = BitConverter.ToUInt16(SCSIInquiryResponse, 58 + i * 2);
|
||||
}
|
||||
|
||||
switch(SCSIInquiryResponse.Length)
|
||||
@@ -518,8 +533,8 @@ public struct Inquiry
|
||||
|
||||
Inquiry decoded = inq.Value;
|
||||
|
||||
byte[] buffer = new byte[512];
|
||||
byte length = 0;
|
||||
var buffer = new byte[512];
|
||||
byte length = 0;
|
||||
|
||||
buffer[0] = (byte)(decoded.PeripheralQualifier << 5);
|
||||
buffer[0] += decoded.PeripheralDeviceType;
|
||||
@@ -682,7 +697,7 @@ public struct Inquiry
|
||||
Array.Copy(decoded.Seagate_DriveSerialNumber, 0, buffer, 36, 8);
|
||||
}
|
||||
|
||||
if(decoded is { KreonIdentifier: {}, KreonVersion: {} })
|
||||
if(decoded is { KreonIdentifier: not null, KreonVersion: not null })
|
||||
{
|
||||
length = 46;
|
||||
Array.Copy(decoded.KreonIdentifier, 0, buffer, 36, 5);
|
||||
@@ -712,7 +727,7 @@ public struct Inquiry
|
||||
Array.Copy(decoded.HiMDSpecific, 0, buffer, 44, 12);
|
||||
}
|
||||
|
||||
if(decoded is { VendorSpecific: {}, IsHiMD: false })
|
||||
if(decoded is { VendorSpecific: not null, IsHiMD: false })
|
||||
{
|
||||
length = 56;
|
||||
Array.Copy(decoded.VendorSpecific, 0, buffer, 36, 20);
|
||||
@@ -742,10 +757,10 @@ public struct Inquiry
|
||||
|
||||
if(decoded.VersionDescriptors != null)
|
||||
{
|
||||
length = (byte)(58 + (decoded.VersionDescriptors.Length * 2));
|
||||
length = (byte)(58 + decoded.VersionDescriptors.Length * 2);
|
||||
|
||||
for(int i = 0; i < decoded.VersionDescriptors.Length; i++)
|
||||
Array.Copy(BitConverter.GetBytes(decoded.VersionDescriptors[i]), 0, buffer, 56 + (i * 2), 2);
|
||||
for(var i = 0; i < decoded.VersionDescriptors.Length; i++)
|
||||
Array.Copy(BitConverter.GetBytes(decoded.VersionDescriptors[i]), 0, buffer, 56 + i * 2, 2);
|
||||
}
|
||||
|
||||
if(decoded.Reserved5 != null)
|
||||
@@ -773,10 +788,11 @@ public struct Inquiry
|
||||
}
|
||||
|
||||
buffer[4] = length;
|
||||
byte[] dest = new byte[length];
|
||||
var dest = new byte[length];
|
||||
Array.Copy(buffer, 0, dest, 0, length);
|
||||
|
||||
return dest;
|
||||
}
|
||||
#endregion Public methods
|
||||
|
||||
#endregion Public methods
|
||||
}
|
||||
@@ -38,89 +38,128 @@ using System.Text.Json.Serialization;
|
||||
namespace Aaru.CommonTypes.Structs.Devices.SCSI.Modes;
|
||||
|
||||
#region Mode Page 0x2A: CD-ROM capabilities page
|
||||
|
||||
/// <summary>
|
||||
/// CD-ROM capabilities page Page code 0x2A 16 bytes in OB-U0077C 20 bytes in SFF-8020i 22 bytes in MMC-1 26 bytes
|
||||
/// in MMC-2 Variable bytes in MMC-3
|
||||
/// </summary>
|
||||
[SuppressMessage("ReSharper", "InconsistentNaming"), SuppressMessage("ReSharper", "MemberCanBeInternal"),
|
||||
SuppressMessage("ReSharper", "MemberCanBePrivate.Global"), SuppressMessage("ReSharper", "NotAccessedField.Global")]
|
||||
[SuppressMessage("ReSharper", "InconsistentNaming")]
|
||||
[SuppressMessage("ReSharper", "MemberCanBeInternal")]
|
||||
[SuppressMessage("ReSharper", "MemberCanBePrivate.Global")]
|
||||
[SuppressMessage("ReSharper", "NotAccessedField.Global")]
|
||||
public class ModePage_2A
|
||||
{
|
||||
/// <summary>Write speed performance descriptors</summary>
|
||||
public ModePage_2A_WriteDescriptor[] WriteSpeedPerformanceDescriptors;
|
||||
|
||||
/// <summary>Parameters can be saved</summary>
|
||||
public bool PS { get; set; }
|
||||
|
||||
/// <summary>Drive supports multi-session and/or Photo-CD</summary>
|
||||
public bool MultiSession { get; set; }
|
||||
|
||||
/// <summary>Drive is capable of reading sectors in Mode 2 Form 2 format</summary>
|
||||
public bool Mode2Form2 { get; set; }
|
||||
|
||||
/// <summary>Drive is capable of reading sectors in Mode 2 Form 1 format</summary>
|
||||
public bool Mode2Form1 { get; set; }
|
||||
|
||||
/// <summary>Drive is capable of playing audio</summary>
|
||||
public bool AudioPlay { get; set; }
|
||||
|
||||
/// <summary>Drive can return the ISRC</summary>
|
||||
public bool ISRC { get; set; }
|
||||
|
||||
/// <summary>Drive can return the media catalogue number</summary>
|
||||
public bool UPC { get; set; }
|
||||
|
||||
/// <summary>Drive can return C2 pointers</summary>
|
||||
public bool C2Pointer { get; set; }
|
||||
|
||||
/// <summary>Drive can read, deinterlave and correct R-W subchannels</summary>
|
||||
public bool DeinterlaveSubchannel { get; set; }
|
||||
|
||||
/// <summary>Drive can read interleaved and uncorrected R-W subchannels</summary>
|
||||
public bool Subchannel { get; set; }
|
||||
|
||||
/// <summary>Drive can continue from a loss of streaming on audio reading</summary>
|
||||
public bool AccurateCDDA { get; set; }
|
||||
|
||||
/// <summary>Audio can be read as digital data</summary>
|
||||
public bool CDDACommand { get; set; }
|
||||
|
||||
/// <summary>Loading Mechanism Type</summary>
|
||||
public byte LoadingMechanism { get; set; }
|
||||
|
||||
/// <summary>Drive can eject discs</summary>
|
||||
public bool Eject { get; set; }
|
||||
|
||||
/// <summary>Drive's optional prevent jumper status</summary>
|
||||
public bool PreventJumper { get; set; }
|
||||
|
||||
/// <summary>Current lock status</summary>
|
||||
public bool LockState { get; set; }
|
||||
|
||||
/// <summary>Drive can lock media</summary>
|
||||
public bool Lock { get; set; }
|
||||
|
||||
/// <summary>Each channel can be muted independently</summary>
|
||||
public bool SeparateChannelMute { get; set; }
|
||||
|
||||
/// <summary>Each channel's volume can be controlled independently</summary>
|
||||
public bool SeparateChannelVolume { get; set; }
|
||||
|
||||
/// <summary>Maximum drive speed in Kbytes/second</summary>
|
||||
public ushort MaximumSpeed { get; set; }
|
||||
|
||||
/// <summary>Supported volume levels</summary>
|
||||
public ushort SupportedVolumeLevels { get; set; }
|
||||
|
||||
/// <summary>Buffer size in Kbytes</summary>
|
||||
public ushort BufferSize { get; set; }
|
||||
|
||||
/// <summary>Current drive speed in Kbytes/second</summary>
|
||||
public ushort CurrentSpeed { get; set; }
|
||||
|
||||
/// <summary>Can read packet media</summary>
|
||||
public bool Method2 { get; set; }
|
||||
|
||||
/// <summary>Can read CD-RW</summary>
|
||||
public bool ReadCDRW { get; set; }
|
||||
|
||||
/// <summary>Can read CD-R</summary>
|
||||
public bool ReadCDR { get; set; }
|
||||
|
||||
/// <summary>Can write CD-RW</summary>
|
||||
public bool WriteCDRW { get; set; }
|
||||
|
||||
/// <summary>Can write CD-R</summary>
|
||||
public bool WriteCDR { get; set; }
|
||||
|
||||
/// <summary>Supports IEC-958 digital output on port 2</summary>
|
||||
public bool DigitalPort2 { get; set; }
|
||||
|
||||
/// <summary>Supports IEC-958 digital output on port 1</summary>
|
||||
public bool DigitalPort1 { get; set; }
|
||||
|
||||
/// <summary>Can deliver a composite audio and video data stream</summary>
|
||||
public bool Composite { get; set; }
|
||||
|
||||
/// <summary>This bit controls the behavior of the LOAD/UNLOAD command when trying to load a Slot with no Disc present</summary>
|
||||
public bool SSS { get; set; }
|
||||
|
||||
/// <summary>Contains a changer that can report the exact contents of the slots</summary>
|
||||
public bool SDP { get; set; }
|
||||
|
||||
/// <summary>Page length</summary>
|
||||
public byte Length { get; set; }
|
||||
|
||||
/// <summary>Set if LSB comes first</summary>
|
||||
public bool LSBF { get; set; }
|
||||
|
||||
/// <summary>Set if HIGH on LRCK indicates left channel. Clear if HIGH on LRCK indicates right channel.</summary>
|
||||
public bool RCK { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Set if data valid on the falling edge of the BCK signal. Clear if data valid on the rising edge of the BCK
|
||||
/// signal
|
||||
@@ -129,37 +168,52 @@ public class ModePage_2A
|
||||
|
||||
/// <summary>Can do a test write</summary>
|
||||
public bool TestWrite { get; set; }
|
||||
|
||||
/// <summary>Maximum write speed</summary>
|
||||
public ushort MaxWriteSpeed { get; set; }
|
||||
|
||||
/// <summary>Current write speed</summary>
|
||||
public ushort CurrentWriteSpeed { get; set; }
|
||||
|
||||
/// <summary>Can read disc's barcode</summary>
|
||||
public bool ReadBarcode { get; set; }
|
||||
|
||||
/// <summary>Can read DVD-RAM</summary>
|
||||
public bool ReadDVDRAM { get; set; }
|
||||
|
||||
/// <summary>Can read DVD-R</summary>
|
||||
public bool ReadDVDR { get; set; }
|
||||
|
||||
/// <summary>Can read DVD-ROM</summary>
|
||||
public bool ReadDVDROM { get; set; }
|
||||
|
||||
/// <summary>Can write DVD-RAM</summary>
|
||||
public bool WriteDVDRAM { get; set; }
|
||||
|
||||
/// <summary>Can write DVD-R</summary>
|
||||
public bool WriteDVDR { get; set; }
|
||||
|
||||
/// <summary>Can read raw R-W subchannel from the Lead-In</summary>
|
||||
public bool LeadInPW { get; set; }
|
||||
|
||||
/// <summary>Can read both sides of a disc</summary>
|
||||
public bool SCC { get; set; }
|
||||
|
||||
/// <summary>Support copyright management</summary>
|
||||
public ushort CMRSupported { get; set; }
|
||||
|
||||
/// <summary>Supports buffer under-run free recording</summary>
|
||||
public bool BUF { get; set; }
|
||||
|
||||
/// <summary>Selected rotational control</summary>
|
||||
public byte RotationControlSelected { get; set; }
|
||||
|
||||
/// <summary>Current write speed selected</summary>
|
||||
public ushort CurrentWriteSpeedSelected { get; set; }
|
||||
|
||||
/// <summary>Database ID</summary>
|
||||
[JsonIgnore, Key]
|
||||
[JsonIgnore]
|
||||
[Key]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>Decodes the page 2Ah of a MODE SENSE response</summary>
|
||||
@@ -263,15 +317,17 @@ public class ModePage_2A
|
||||
decoded.RotationControlSelected = (byte)(pageResponse[27] & 0x03);
|
||||
decoded.CurrentWriteSpeedSelected = (ushort)((pageResponse[28] << 8) + pageResponse[29]);
|
||||
|
||||
ushort descriptors = (ushort)((pageResponse.Length - 32) / 4);
|
||||
var descriptors = (ushort)((pageResponse.Length - 32) / 4);
|
||||
decoded.WriteSpeedPerformanceDescriptors = new ModePage_2A_WriteDescriptor[descriptors];
|
||||
|
||||
for(int i = 0; i < descriptors; i++)
|
||||
for(var i = 0; i < descriptors; i++)
|
||||
{
|
||||
decoded.WriteSpeedPerformanceDescriptors[i] = new ModePage_2A_WriteDescriptor
|
||||
{
|
||||
RotationControl = (byte)(pageResponse[1 + 32 + (i * 4)] & 0x07),
|
||||
WriteSpeed = (ushort)((pageResponse[2 + 32 + (i * 4)] << 8) + pageResponse[3 + 32 + (i * 4)])
|
||||
RotationControl = (byte)(pageResponse[1 + 32 + i * 4] & 0x07),
|
||||
WriteSpeed = (ushort)((pageResponse[2 + 32 + i * 4] << 8) + pageResponse[3 + 32 + i * 4])
|
||||
};
|
||||
}
|
||||
|
||||
return decoded;
|
||||
}
|
||||
@@ -281,8 +337,8 @@ public class ModePage_2A
|
||||
/// <returns>Raw page 2Ah</returns>
|
||||
public static byte[] Encode(ModePage_2A decoded)
|
||||
{
|
||||
byte[] pageResponse = new byte[512];
|
||||
byte length = 16;
|
||||
var pageResponse = new byte[512];
|
||||
byte length = 16;
|
||||
|
||||
pageResponse[0] = 0x2A;
|
||||
|
||||
@@ -480,20 +536,20 @@ public class ModePage_2A
|
||||
{
|
||||
length = 32;
|
||||
|
||||
for(int i = 0; i < decoded.WriteSpeedPerformanceDescriptors.Length; i++)
|
||||
for(var i = 0; i < decoded.WriteSpeedPerformanceDescriptors.Length; i++)
|
||||
{
|
||||
length += 4;
|
||||
pageResponse[1 + 32 + (i * 4)] = decoded.WriteSpeedPerformanceDescriptors[i].RotationControl;
|
||||
length += 4;
|
||||
pageResponse[1 + 32 + i * 4] = decoded.WriteSpeedPerformanceDescriptors[i].RotationControl;
|
||||
|
||||
pageResponse[2 + 32 + (i * 4)] =
|
||||
pageResponse[2 + 32 + i * 4] =
|
||||
(byte)((decoded.WriteSpeedPerformanceDescriptors[i].WriteSpeed & 0xFF00) >> 8);
|
||||
|
||||
pageResponse[3 + 32 + (i * 4)] = (byte)(decoded.WriteSpeedPerformanceDescriptors[i].WriteSpeed & 0xFF);
|
||||
pageResponse[3 + 32 + i * 4] = (byte)(decoded.WriteSpeedPerformanceDescriptors[i].WriteSpeed & 0xFF);
|
||||
}
|
||||
}
|
||||
|
||||
pageResponse[1] = (byte)(length - 2);
|
||||
byte[] buf = new byte[length];
|
||||
var buf = new byte[length];
|
||||
Array.Copy(pageResponse, 0, buf, 0, length);
|
||||
|
||||
return buf;
|
||||
@@ -509,4 +565,5 @@ public struct ModePage_2A_WriteDescriptor
|
||||
/// <summary>Write speed</summary>
|
||||
public ushort WriteSpeed;
|
||||
}
|
||||
|
||||
#endregion Mode Page 0x2A: CD-ROM capabilities page
|
||||
@@ -156,32 +156,46 @@ public class FileEntryInfo
|
||||
{
|
||||
/// <summary>File attributes</summary>
|
||||
public FileAttributes Attributes { get; set; }
|
||||
|
||||
/// <summary>File length in blocks</summary>
|
||||
public long Blocks { get; set; }
|
||||
|
||||
/// <summary>File block size in bytes</summary>
|
||||
public long BlockSize { get; set; }
|
||||
|
||||
/// <summary>If file points to a device, device number. Null if the underlying filesystem does not support them.</summary>
|
||||
public ulong? DeviceNo { get; set; }
|
||||
|
||||
/// <summary>POSIX group ID. Null if the underlying filesystem does not support them.</summary>
|
||||
public ulong? GID { get; set; }
|
||||
|
||||
/// <summary>inode number for this file (or other unique identifier for the volume)</summary>
|
||||
public ulong Inode { get; set; }
|
||||
|
||||
/// <summary>File length in bytes</summary>
|
||||
public long Length { get; set; }
|
||||
|
||||
/// <summary>Number of hard links pointing to this file (. and .. entries count as hard links)</summary>
|
||||
public ulong Links { get; set; }
|
||||
|
||||
/// <summary>POSIX permissions/mode for this file. Null if the underlying filesystem does not support them.</summary>
|
||||
public uint? Mode { get; set; }
|
||||
|
||||
/// <summary>POSIX owner ID. Null if the underlying filesystem does not support them.</summary>
|
||||
public ulong? UID { get; set; }
|
||||
|
||||
/// <summary>File creation date in UTC. Null if the underlying filesystem does not support them.</summary>
|
||||
public DateTime? CreationTimeUtc { get; set; }
|
||||
|
||||
/// <summary>File last access date in UTC. Null if the underlying filesystem does not support them.</summary>
|
||||
public DateTime? AccessTimeUtc { get; set; }
|
||||
|
||||
/// <summary>File attributes change date in UTC. Null if the underlying filesystem does not support them.</summary>
|
||||
public DateTime? StatusChangeTimeUtc { get; set; }
|
||||
|
||||
/// <summary>File last backup date in UTC. Null if the underlying filesystem does not support them.</summary>
|
||||
public DateTime? BackupTimeUtc { get; set; }
|
||||
|
||||
/// <summary>File last modification date in UTC. Null if the underlying filesystem does not support them.</summary>
|
||||
public DateTime? LastWriteTimeUtc { get; set; }
|
||||
|
||||
|
||||
@@ -202,21 +202,28 @@ public struct LinearMemoryDevice
|
||||
{
|
||||
/// <summary>Device manufacturer</summary>
|
||||
public string Manufacturer { get; set; }
|
||||
|
||||
/// <summary>Device model</summary>
|
||||
public string Model { get; set; }
|
||||
|
||||
/// <summary>Device package, e.g. DIP28</summary>
|
||||
public string Package { get; set; }
|
||||
|
||||
/// <summary>Device location marking in PCB, e.g. U28</summary>
|
||||
public string Location { get; set; }
|
||||
|
||||
/// <summary>Device functional type</summary>
|
||||
public LinearMemoryType Type { get; set; }
|
||||
|
||||
/// <summary>Arbitrary device information</summary>
|
||||
public string Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Physical addressing is the address considering all devices in the linear memory media, starting at the lowest
|
||||
/// marking in PCB and going up incrementally. This is the view of the memory inside Aaru.
|
||||
/// </summary>
|
||||
public LinearMemoryAddressing PhysicalAddress { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Virtual addressing is the address as seen by the hardware directly accessing the linear memory media. This
|
||||
/// allows devices to be overlapped or banked.
|
||||
@@ -229,8 +236,10 @@ public class LinearMemoryAddressing
|
||||
{
|
||||
/// <summary>Start in memory where the device is mapped</summary>
|
||||
public ulong Start { get; set; }
|
||||
|
||||
/// <summary>Length in bytes of the device, not including interleaving</summary>
|
||||
public ulong Length { get; set; }
|
||||
|
||||
/// <summary>Interleaving information</summary>
|
||||
public LinearMemoryInterleave Interleave { get; set; }
|
||||
}
|
||||
@@ -240,6 +249,7 @@ public class LinearMemoryInterleave
|
||||
{
|
||||
/// <summary>How many bytes to skip from start of map before device first byte starts</summary>
|
||||
public uint Offset { get; set; }
|
||||
|
||||
/// <summary>How many bytes in memory to skip every device byte</summary>
|
||||
public uint Value { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user