mirror of
https://github.com/aaru-dps/Aaru.git
synced 2025-12-16 19:24:25 +00:00
Add detection and media type for Ultra HD Blu-ray.
This commit is contained in:
7
.idea/.idea.Aaru/.idea/vcs.xml
generated
7
.idea/.idea.Aaru/.idea/vcs.xml
generated
@@ -5,13 +5,6 @@
|
|||||||
<inspection_tool class="GraziCommit" enabled="true" level="WARNING" enabled_by_default="true" />
|
<inspection_tool class="GraziCommit" enabled="true" level="WARNING" enabled_by_default="true" />
|
||||||
</profile>
|
</profile>
|
||||||
</component>
|
</component>
|
||||||
<component name="GithubSharedProjectSettings">
|
|
||||||
<option name="branchProtectionPatterns">
|
|
||||||
<list>
|
|
||||||
<option value="master" />
|
|
||||||
</list>
|
|
||||||
</option>
|
|
||||||
</component>
|
|
||||||
<component name="VcsDirectoryMappings">
|
<component name="VcsDirectoryMappings">
|
||||||
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
||||||
<mapping directory="$PROJECT_DIR$/Aaru.Checksums" vcs="Git" />
|
<mapping directory="$PROJECT_DIR$/Aaru.Checksums" vcs="Git" />
|
||||||
|
|||||||
Submodule Aaru.CommonTypes updated: 727c9fbca0...dd856a397f
@@ -46,9 +46,9 @@ using Aaru.Devices;
|
|||||||
using Schemas;
|
using Schemas;
|
||||||
using DDS = Aaru.Decoders.DVD.DDS;
|
using DDS = Aaru.Decoders.DVD.DDS;
|
||||||
using DMI = Aaru.Decoders.Xbox.DMI;
|
using DMI = Aaru.Decoders.Xbox.DMI;
|
||||||
|
using DVDDecryption = Aaru.Decryption.DVD.Dump;
|
||||||
using Inquiry = Aaru.CommonTypes.Structs.Devices.SCSI.Inquiry;
|
using Inquiry = Aaru.CommonTypes.Structs.Devices.SCSI.Inquiry;
|
||||||
using Spare = Aaru.Decoders.DVD.Spare;
|
using Spare = Aaru.Decoders.DVD.Spare;
|
||||||
using DVDDecryption = Aaru.Decryption.DVD.Dump;
|
|
||||||
|
|
||||||
// ReSharper disable JoinDeclarationAndInitializer
|
// ReSharper disable JoinDeclarationAndInitializer
|
||||||
|
|
||||||
@@ -768,6 +768,7 @@ namespace Aaru.Core.Devices.Dumping
|
|||||||
case MediaType.BDROM:
|
case MediaType.BDROM:
|
||||||
case MediaType.BDRXL:
|
case MediaType.BDRXL:
|
||||||
case MediaType.BDREXL:
|
case MediaType.BDREXL:
|
||||||
|
case MediaType.UHDBD:
|
||||||
_dumpLog.WriteLine("Reading Disc Information.");
|
_dumpLog.WriteLine("Reading Disc Information.");
|
||||||
|
|
||||||
sense = _dev.ReadDiscStructure(out cmdBuf, out _, MmcDiscStructureMediaType.Bd, 0, 0,
|
sense = _dev.ReadDiscStructure(out cmdBuf, out _, MmcDiscStructureMediaType.Bd, 0, 0,
|
||||||
@@ -800,6 +801,7 @@ namespace Aaru.Core.Devices.Dumping
|
|||||||
{
|
{
|
||||||
#region BD-ROM only
|
#region BD-ROM only
|
||||||
case MediaType.BDROM:
|
case MediaType.BDROM:
|
||||||
|
case MediaType.UHDBD:
|
||||||
_dumpLog.WriteLine("Reading Burst Cutting Area.");
|
_dumpLog.WriteLine("Reading Burst Cutting Area.");
|
||||||
|
|
||||||
sense = _dev.ReadDiscStructure(out cmdBuf, out _, MmcDiscStructureMediaType.Bd, 0, 0,
|
sense = _dev.ReadDiscStructure(out cmdBuf, out _, MmcDiscStructureMediaType.Bd, 0, 0,
|
||||||
|
|||||||
@@ -1003,8 +1003,10 @@ namespace Aaru.Core.Media.Detection
|
|||||||
case MediaType.DVDROM:
|
case MediaType.DVDROM:
|
||||||
case MediaType.HDDVDROM:
|
case MediaType.HDDVDROM:
|
||||||
case MediaType.BDROM:
|
case MediaType.BDROM:
|
||||||
|
case MediaType.UHDBD:
|
||||||
case MediaType.Unknown:
|
case MediaType.Unknown:
|
||||||
if(mediaType == MediaType.BDROM)
|
if(mediaType == MediaType.BDROM ||
|
||||||
|
mediaType == MediaType.UHDBD)
|
||||||
{
|
{
|
||||||
sense = dev.ReadDiscStructure(out cmdBuf, out _, MmcDiscStructureMediaType.Bd, 0, 0,
|
sense = dev.ReadDiscStructure(out cmdBuf, out _, MmcDiscStructureMediaType.Bd, 0, 0,
|
||||||
MmcDiscStructureFormat.DiscInformation, 0, dev.Timeout, out _);
|
MmcDiscStructureFormat.DiscInformation, 0, dev.Timeout, out _);
|
||||||
@@ -1112,11 +1114,11 @@ namespace Aaru.Core.Media.Detection
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(mediaType == MediaType.DVDROM)
|
if(mediaType == MediaType.DVDROM)
|
||||||
{
|
{
|
||||||
sense = dev.ReadDiscStructure(out cmdBuf, out _, MmcDiscStructureMediaType.Dvd, 0, 0,
|
sense = dev.ReadDiscStructure(out cmdBuf, out _, MmcDiscStructureMediaType.Dvd, 0, 0,
|
||||||
MmcDiscStructureFormat.DiscManufacturingInformation, 0, dev.Timeout,
|
MmcDiscStructureFormat.DiscManufacturingInformation, 0,
|
||||||
out _);
|
dev.Timeout, out _);
|
||||||
|
|
||||||
if(!sense)
|
if(!sense)
|
||||||
{
|
{
|
||||||
@@ -1129,9 +1131,9 @@ namespace Aaru.Core.Media.Detection
|
|||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(DMI.IsXbox360(cmdBuf))
|
if(DMI.IsXbox360(cmdBuf))
|
||||||
{
|
{
|
||||||
|
|
||||||
// All XGD3 all have the same number of blocks
|
// All XGD3 all have the same number of blocks
|
||||||
if(blocks == 25063 || // Locked (or non compatible drive)
|
if(blocks == 25063 || // Locked (or non compatible drive)
|
||||||
blocks == 4229664 || // Xtreme unlock
|
blocks == 4229664 || // Xtreme unlock
|
||||||
@@ -1141,15 +1143,20 @@ namespace Aaru.Core.Media.Detection
|
|||||||
"Found Xbox 360 DMI with {0} blocks, setting disc type to Xbox 360 Game Disc 3 (XGD3).");
|
"Found Xbox 360 DMI with {0} blocks, setting disc type to Xbox 360 Game Disc 3 (XGD3).");
|
||||||
|
|
||||||
mediaType = MediaType.XGD3;
|
mediaType = MediaType.XGD3;
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
AaruConsole.DebugWriteLine("Media detection",
|
AaruConsole.DebugWriteLine("Media detection",
|
||||||
"Found Xbox 360 DMI with {0} blocks, setting disc type to Xbox 360 Game Disc 2 (XGD2).");
|
"Found Xbox 360 DMI with {0} blocks, setting disc type to Xbox 360 Game Disc 2 (XGD2).");
|
||||||
|
|
||||||
mediaType = MediaType.XGD2;
|
mediaType = MediaType.XGD2;
|
||||||
return;
|
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
// Recordables will be checked for PhotoCD only
|
// Recordables will be checked for PhotoCD only
|
||||||
@@ -2232,6 +2239,7 @@ namespace Aaru.Core.Media.Detection
|
|||||||
case MediaType.DVDROM:
|
case MediaType.DVDROM:
|
||||||
case MediaType.HDDVDROM:
|
case MediaType.HDDVDROM:
|
||||||
case MediaType.BDROM:
|
case MediaType.BDROM:
|
||||||
|
case MediaType.UHDBD:
|
||||||
case MediaType.Unknown:
|
case MediaType.Unknown:
|
||||||
// TODO: Nuon requires reading the filesystem, searching for a file called "/NUON/NUON.RUN"
|
// TODO: Nuon requires reading the filesystem, searching for a file called "/NUON/NUON.RUN"
|
||||||
if(ps2BootSectors != null &&
|
if(ps2BootSectors != null &&
|
||||||
@@ -2302,12 +2310,24 @@ namespace Aaru.Core.Media.Detection
|
|||||||
{
|
{
|
||||||
string blurayType = StringHandlers.CToString(blurayDi?.Units[0].DiscTypeIdentifier);
|
string blurayType = StringHandlers.CToString(blurayDi?.Units[0].DiscTypeIdentifier);
|
||||||
|
|
||||||
if(blurayType == "XG4")
|
switch(blurayType)
|
||||||
{
|
{
|
||||||
AaruConsole.DebugWriteLine("Media detection",
|
case "XG4":
|
||||||
"Blu-ray type set to \"XG4\", setting disc type to Xbox One Disc (XGD4).");
|
AaruConsole.DebugWriteLine("Media detection",
|
||||||
|
"Blu-ray type set to \"XG4\", setting disc type to Xbox One Disc (XGD4).");
|
||||||
|
|
||||||
mediaType = MediaType.XGD4;
|
mediaType = MediaType.XGD4;
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
// TODO: PS5
|
||||||
|
case "BDU":
|
||||||
|
AaruConsole.DebugWriteLine("Media detection",
|
||||||
|
"Blu-ray type set to \"BDU\", setting disc type to Ultra HD Blu-ray.");
|
||||||
|
|
||||||
|
mediaType = MediaType.UHDBD;
|
||||||
|
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -45,12 +45,11 @@ using Aaru.Decoders.SCSI;
|
|||||||
using Aaru.Decoders.SCSI.MMC;
|
using Aaru.Decoders.SCSI.MMC;
|
||||||
using Aaru.Decoders.SCSI.SSC;
|
using Aaru.Decoders.SCSI.SSC;
|
||||||
using Aaru.Decoders.Xbox;
|
using Aaru.Decoders.Xbox;
|
||||||
using Aaru.Decryption.DVD;
|
|
||||||
using Aaru.Devices;
|
using Aaru.Devices;
|
||||||
using DeviceInfo = Aaru.Core.Devices.Info.DeviceInfo;
|
using DeviceInfo = Aaru.Core.Devices.Info.DeviceInfo;
|
||||||
using DMI = Aaru.Decoders.Xbox.DMI;
|
using DMI = Aaru.Decoders.Xbox.DMI;
|
||||||
using Inquiry = Aaru.CommonTypes.Structs.Devices.SCSI.Inquiry;
|
|
||||||
using DVDDecryption = Aaru.Decryption.DVD.Dump;
|
using DVDDecryption = Aaru.Decryption.DVD.Dump;
|
||||||
|
using Inquiry = Aaru.CommonTypes.Structs.Devices.SCSI.Inquiry;
|
||||||
|
|
||||||
namespace Aaru.Core.Media.Info
|
namespace Aaru.Core.Media.Info
|
||||||
{
|
{
|
||||||
@@ -714,7 +713,7 @@ namespace Aaru.Core.Media.Info
|
|||||||
#endregion DVD-R and HD DVD-R
|
#endregion DVD-R and HD DVD-R
|
||||||
}
|
}
|
||||||
|
|
||||||
var dvdDecrypt = new Dump(dev);
|
var dvdDecrypt = new DVDDecryption(dev);
|
||||||
sense = dvdDecrypt.ReadBusKey(out cmdBuf, out senseBuf, CopyrightType.CSS, dev.Timeout, out _);
|
sense = dvdDecrypt.ReadBusKey(out cmdBuf, out senseBuf, CopyrightType.CSS, dev.Timeout, out _);
|
||||||
|
|
||||||
if(!sense)
|
if(!sense)
|
||||||
@@ -724,7 +723,7 @@ namespace Aaru.Core.Media.Info
|
|||||||
|
|
||||||
if(sense)
|
if(sense)
|
||||||
AaruConsole.DebugWriteLine("Media-Info command", "READ DISC STRUCTURE: Disc Key\n{0}",
|
AaruConsole.DebugWriteLine("Media-Info command", "READ DISC STRUCTURE: Disc Key\n{0}",
|
||||||
Decoders.SCSI.Sense.PrettifySense(senseBuf));
|
Sense.PrettifySense(senseBuf));
|
||||||
else
|
else
|
||||||
DvdDiscKey = cmdBuf;
|
DvdDiscKey = cmdBuf;
|
||||||
|
|
||||||
@@ -734,7 +733,7 @@ namespace Aaru.Core.Media.Info
|
|||||||
|
|
||||||
if(sense)
|
if(sense)
|
||||||
AaruConsole.DebugWriteLine("Media-Info command", "READ DISC STRUCTURE: Sector CMI\n{0}",
|
AaruConsole.DebugWriteLine("Media-Info command", "READ DISC STRUCTURE: Sector CMI\n{0}",
|
||||||
Decoders.SCSI.Sense.PrettifySense(senseBuf));
|
Sense.PrettifySense(senseBuf));
|
||||||
else
|
else
|
||||||
DvdSectorCmi = cmdBuf;
|
DvdSectorCmi = cmdBuf;
|
||||||
}
|
}
|
||||||
@@ -968,6 +967,7 @@ namespace Aaru.Core.Media.Info
|
|||||||
case MediaType.BDR:
|
case MediaType.BDR:
|
||||||
case MediaType.BDRE:
|
case MediaType.BDRE:
|
||||||
case MediaType.BDROM:
|
case MediaType.BDROM:
|
||||||
|
case MediaType.UHDBD:
|
||||||
case MediaType.BDRXL:
|
case MediaType.BDRXL:
|
||||||
case MediaType.BDREXL:
|
case MediaType.BDREXL:
|
||||||
sense = dev.ReadDiscStructure(out cmdBuf, out senseBuf, MmcDiscStructureMediaType.Bd, 0, 0,
|
sense = dev.ReadDiscStructure(out cmdBuf, out senseBuf, MmcDiscStructureMediaType.Bd, 0, 0,
|
||||||
@@ -996,6 +996,7 @@ namespace Aaru.Core.Media.Info
|
|||||||
{
|
{
|
||||||
#region BD-ROM only
|
#region BD-ROM only
|
||||||
case MediaType.BDROM:
|
case MediaType.BDROM:
|
||||||
|
case MediaType.UHDBD:
|
||||||
sense = dev.ReadDiscStructure(out cmdBuf, out senseBuf, MmcDiscStructureMediaType.Bd, 0, 0,
|
sense = dev.ReadDiscStructure(out cmdBuf, out senseBuf, MmcDiscStructureMediaType.Bd, 0, 0,
|
||||||
MmcDiscStructureFormat.BdBurstCuttingArea, 0, dev.Timeout, out _);
|
MmcDiscStructureFormat.BdBurstCuttingArea, 0, dev.Timeout, out _);
|
||||||
|
|
||||||
|
|||||||
@@ -183,6 +183,7 @@ namespace Aaru.DiscImages
|
|||||||
case MediaType.HDDVDRDL:
|
case MediaType.HDDVDRDL:
|
||||||
case MediaType.HDDVDRWDL:
|
case MediaType.HDDVDRWDL:
|
||||||
case MediaType.BDROM:
|
case MediaType.BDROM:
|
||||||
|
case MediaType.UHDBD:
|
||||||
case MediaType.BDR:
|
case MediaType.BDR:
|
||||||
case MediaType.BDRE:
|
case MediaType.BDRE:
|
||||||
case MediaType.BDRXL:
|
case MediaType.BDRXL:
|
||||||
|
|||||||
@@ -145,10 +145,10 @@ namespace Aaru.DiscImages
|
|||||||
};
|
};
|
||||||
public IEnumerable<MediaType> SupportedMediaTypes => new[]
|
public IEnumerable<MediaType> SupportedMediaTypes => new[]
|
||||||
{
|
{
|
||||||
MediaType.BDR, MediaType.BDRE, MediaType.BDREXL, MediaType.BDROM, MediaType.BDRXL, MediaType.CBHD,
|
MediaType.BDR, MediaType.BDRE, MediaType.BDREXL, MediaType.BDROM, MediaType.UHDBD, MediaType.BDRXL,
|
||||||
MediaType.CD, MediaType.CDDA, MediaType.CDEG, MediaType.CDG, MediaType.CDI, MediaType.CDMIDI,
|
MediaType.CBHD, MediaType.CD, MediaType.CDDA, MediaType.CDEG, MediaType.CDG, MediaType.CDI,
|
||||||
MediaType.CDMRW, MediaType.CDPLUS, MediaType.CDR, MediaType.CDROM, MediaType.CDROMXA, MediaType.CDRW,
|
MediaType.CDMIDI, MediaType.CDMRW, MediaType.CDPLUS, MediaType.CDR, MediaType.CDROM, MediaType.CDROMXA,
|
||||||
MediaType.CDV, MediaType.DVDDownload, MediaType.DVDPR, MediaType.DVDPRDL, MediaType.DVDPRW,
|
MediaType.CDRW, MediaType.CDV, MediaType.DVDDownload, MediaType.DVDPR, MediaType.DVDPRDL, MediaType.DVDPRW,
|
||||||
MediaType.DVDPRWDL, MediaType.DVDR, MediaType.DVDRAM, MediaType.DVDRDL, MediaType.DVDROM, MediaType.DVDRW,
|
MediaType.DVDPRWDL, MediaType.DVDR, MediaType.DVDRAM, MediaType.DVDRDL, MediaType.DVDROM, MediaType.DVDRW,
|
||||||
MediaType.DVDRWDL, MediaType.EVD, MediaType.FDDVD, MediaType.DTSCD, MediaType.FVD, MediaType.HDDVDR,
|
MediaType.DVDRWDL, MediaType.EVD, MediaType.FDDVD, MediaType.DTSCD, MediaType.FVD, MediaType.HDDVDR,
|
||||||
MediaType.HDDVDRAM, MediaType.HDDVDRDL, MediaType.HDDVDROM, MediaType.HDDVDRW, MediaType.HDDVDRWDL,
|
MediaType.HDDVDRAM, MediaType.HDDVDRDL, MediaType.HDDVDROM, MediaType.HDDVDRW, MediaType.HDDVDRWDL,
|
||||||
|
|||||||
@@ -145,7 +145,7 @@ namespace Aaru.DiscImages
|
|||||||
}
|
}
|
||||||
|
|
||||||
static (byte minute, byte second, byte frame) LbaToMsf(ulong sector) =>
|
static (byte minute, byte second, byte frame) LbaToMsf(ulong sector) =>
|
||||||
((byte)(sector / 75 / 60), (byte)((sector / 75) % 60), (byte)(sector % 75));
|
((byte)(sector / 75 / 60), (byte)(sector / 75 % 60), (byte)(sector % 75));
|
||||||
|
|
||||||
static string GetTrackMode(Track track)
|
static string GetTrackMode(Track track)
|
||||||
{
|
{
|
||||||
@@ -177,6 +177,7 @@ namespace Aaru.DiscImages
|
|||||||
case MediaType.BDREXL:
|
case MediaType.BDREXL:
|
||||||
case MediaType.BDRE: return CDRWIN_DISK_TYPE_BDRE;
|
case MediaType.BDRE: return CDRWIN_DISK_TYPE_BDRE;
|
||||||
case MediaType.BDROM:
|
case MediaType.BDROM:
|
||||||
|
case MediaType.UHDBD:
|
||||||
case MediaType.CBHD:
|
case MediaType.CBHD:
|
||||||
case MediaType.PS3BD:
|
case MediaType.PS3BD:
|
||||||
case MediaType.PS4BD:
|
case MediaType.PS4BD:
|
||||||
|
|||||||
@@ -198,19 +198,19 @@ namespace Aaru.DiscImages
|
|||||||
};
|
};
|
||||||
public IEnumerable<MediaType> SupportedMediaTypes => new[]
|
public IEnumerable<MediaType> SupportedMediaTypes => new[]
|
||||||
{
|
{
|
||||||
MediaType.BDR, MediaType.BDRE, MediaType.BDREXL, MediaType.BDROM, MediaType.BDRXL, MediaType.CBHD,
|
MediaType.BDR, MediaType.BDRE, MediaType.BDREXL, MediaType.BDROM, MediaType.UHDBD, MediaType.BDRXL,
|
||||||
MediaType.CD, MediaType.CDDA, MediaType.CDEG, MediaType.CDG, MediaType.CDI, MediaType.CDMIDI,
|
MediaType.CBHD, MediaType.CD, MediaType.CDDA, MediaType.CDEG, MediaType.CDG, MediaType.CDI,
|
||||||
MediaType.CDMRW, MediaType.CDPLUS, MediaType.CDR, MediaType.CDROM, MediaType.CDROMXA, MediaType.CDRW,
|
MediaType.CDMIDI, MediaType.CDMRW, MediaType.CDPLUS, MediaType.CDR, MediaType.CDROM, MediaType.CDROMXA,
|
||||||
MediaType.CDV, MediaType.DDCD, MediaType.DDCDR, MediaType.DDCDRW, MediaType.DVDDownload, MediaType.DVDPR,
|
MediaType.CDRW, MediaType.CDV, MediaType.DDCD, MediaType.DDCDR, MediaType.DDCDRW, MediaType.DVDDownload,
|
||||||
MediaType.DVDPRDL, MediaType.DVDPRW, MediaType.DVDPRWDL, MediaType.DVDR, MediaType.DVDRAM, MediaType.DVDRDL,
|
MediaType.DVDPR, MediaType.DVDPRDL, MediaType.DVDPRW, MediaType.DVDPRWDL, MediaType.DVDR, MediaType.DVDRAM,
|
||||||
MediaType.DVDROM, MediaType.DVDRW, MediaType.DVDRWDL, MediaType.EVD, MediaType.FDDVD, MediaType.DTSCD,
|
MediaType.DVDRDL, MediaType.DVDROM, MediaType.DVDRW, MediaType.DVDRWDL, MediaType.EVD, MediaType.FDDVD,
|
||||||
MediaType.FVD, MediaType.HDDVDR, MediaType.HDDVDRAM, MediaType.HDDVDRDL, MediaType.HDDVDROM,
|
MediaType.DTSCD, MediaType.FVD, MediaType.HDDVDR, MediaType.HDDVDRAM, MediaType.HDDVDRDL,
|
||||||
MediaType.HDDVDRW, MediaType.HDDVDRWDL, MediaType.HDVMD, MediaType.HVD, MediaType.JaguarCD,
|
MediaType.HDDVDROM, MediaType.HDDVDRW, MediaType.HDDVDRWDL, MediaType.HDVMD, MediaType.HVD,
|
||||||
MediaType.MEGACD, MediaType.PS1CD, MediaType.PS2CD, MediaType.PS2DVD, MediaType.PS3BD, MediaType.PS3DVD,
|
MediaType.JaguarCD, MediaType.MEGACD, MediaType.PS1CD, MediaType.PS2CD, MediaType.PS2DVD, MediaType.PS3BD,
|
||||||
MediaType.PS4BD, MediaType.SuperCDROM2, MediaType.SVCD, MediaType.SVOD, MediaType.SATURNCD,
|
MediaType.PS3DVD, MediaType.PS4BD, MediaType.SuperCDROM2, MediaType.SVCD, MediaType.SVOD,
|
||||||
MediaType.ThreeDO, MediaType.UDO, MediaType.UDO2, MediaType.UDO2_WORM, MediaType.UMD, MediaType.VCD,
|
MediaType.SATURNCD, MediaType.ThreeDO, MediaType.UDO, MediaType.UDO2, MediaType.UDO2_WORM, MediaType.UMD,
|
||||||
MediaType.VCDHD, MediaType.NeoGeoCD, MediaType.PCFX, MediaType.CDTV, MediaType.CD32, MediaType.Nuon,
|
MediaType.VCD, MediaType.VCDHD, MediaType.NeoGeoCD, MediaType.PCFX, MediaType.CDTV, MediaType.CD32,
|
||||||
MediaType.Playdia, MediaType.Pippin, MediaType.FMTOWNS, MediaType.MilCD, MediaType.VideoNow,
|
MediaType.Nuon, MediaType.Playdia, MediaType.Pippin, MediaType.FMTOWNS, MediaType.MilCD, MediaType.VideoNow,
|
||||||
MediaType.VideoNowColor, MediaType.VideoNowXp, MediaType.CVD, MediaType.PCD
|
MediaType.VideoNowColor, MediaType.VideoNowXp, MediaType.CVD, MediaType.PCD
|
||||||
};
|
};
|
||||||
public IEnumerable<(string name, Type type, string description, object @default)> SupportedOptions => new[]
|
public IEnumerable<(string name, Type type, string description, object @default)> SupportedOptions => new[]
|
||||||
|
|||||||
Reference in New Issue
Block a user