Update to newest DIC, create new release

This commit is contained in:
Matt Nadareski
2019-07-01 20:50:38 -07:00
parent 44b91a6611
commit 7074fa1e2c
12 changed files with 110 additions and 22 deletions

View File

@@ -1,3 +1,12 @@
### 1.13 (2019-07-02)
- Added new DIC commands and flags
- Made DICUI Check more robust
- Added and updated systems along with format cleanup
- Created a new SubmissionInfo template (and internals)
- Added automatic grabbing of Redump information, if possible
- Better media format support (BD, UMD)
- Initial disc type detection
### 1.12.2 (2019-04-19)
- Added DICUI Check, a new standalone tool for parsing DIC output from platforms unsupported by DICUI
- Added a few machines/formats

View File

@@ -18,6 +18,7 @@
public const string MDS = "mds";
public const string Merge = "merge";
public const string Reset = "reset";
public const string SACD = "sacd";
public const string Start = "start";
public const string Stop = "stop";
public const string Sub = "sub";
@@ -46,8 +47,9 @@
public const string NoFixSubP = "/np";
public const string NoFixSubQ = "/nq";
public const string NoFixSubQLibCrypt = "/nl";
public const string NoFixSubQSecuROM = "/ns";
public const string NoFixSubRtoW = "/nr";
public const string NoFixSubQSecuROM = "/ns";
public const string NoSkipSS = "/nss";
public const string Raw = "/raw";
public const string Reverse = "/r";
public const string ScanAntiMod = "/am";

View File

@@ -37,6 +37,7 @@
MDS,
Merge,
Reset,
SACD,
Start,
Stop,
Sub,
@@ -66,8 +67,9 @@
NoFixSubP,
NoFixSubQ,
NoFixSubQLibCrypt,
NoFixSubQSecuROM,
NoFixSubRtoW,
NoFixSubQSecuROM,
NoSkipSS,
Raw,
Reverse,
ScanAntiMod,
@@ -286,6 +288,7 @@
PhotoCD,
PlayStationGameSharkUpdates,
RainbowDisc,
SuperAudioCD,
TaoiKTV,
TomyKissSite,
VideoCD,

View File

@@ -10,7 +10,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("DICUI.Library")]
[assembly: AssemblyCopyright("Copyright © 2018")]
[assembly: AssemblyCopyright("Copyright © 2019")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
@@ -32,6 +32,6 @@ using System.Runtime.InteropServices;
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.11")]
[assembly: AssemblyFileVersion("1.11.0.0")]
[assembly: AssemblyVersion("1.13")]
[assembly: AssemblyFileVersion("1.13.0.0")]
[assembly: InternalsVisibleTo("DICUI.Test")]

View File

@@ -28,6 +28,8 @@ namespace DICUI.Utilities
return KnownSystem.SegaDreamcast;
case DICCommand.BluRay:
return KnownSystem.SonyPlayStation3;
case DICCommand.SACD:
return KnownSystem.SuperAudioCD;
case DICCommand.XBOX:
case DICCommand.XBOXSwap:
return KnownSystem.MicrosoftXBOX;
@@ -217,6 +219,7 @@ namespace DICUI.Utilities
case DICCommand.Audio:
case DICCommand.CompactDisc:
case DICCommand.Data:
case DICCommand.SACD:
return MediaType.CDROM;
case DICCommand.GDROM:
case DICCommand.Swap:
@@ -540,6 +543,8 @@ namespace DICUI.Utilities
return DICCommandStrings.Merge;
case DICCommand.Reset:
return DICCommandStrings.Reset;
case DICCommand.SACD:
return DICCommandStrings.SACD;
case DICCommand.Start:
return DICCommandStrings.Start;
case DICCommand.Stop:
@@ -598,10 +603,12 @@ namespace DICUI.Utilities
return DICFlagStrings.NoFixSubQ;
case DICFlag.NoFixSubQLibCrypt:
return DICFlagStrings.NoFixSubQLibCrypt;
case DICFlag.NoFixSubQSecuROM:
return DICFlagStrings.NoFixSubQSecuROM;
case DICFlag.NoFixSubRtoW:
return DICFlagStrings.NoFixSubRtoW;
case DICFlag.NoFixSubQSecuROM:
return DICFlagStrings.NoFixSubQSecuROM;
case DICFlag.NoSkipSS:
return DICFlagStrings.NoSkipSS;
case DICFlag.Raw:
return DICFlagStrings.Raw;
case DICFlag.Reverse:
@@ -871,6 +878,8 @@ namespace DICUI.Utilities
return "PlayStation GameShark Updates";
case KnownSystem.RainbowDisc:
return "Rainbow Disc";
case KnownSystem.SuperAudioCD:
return "Super Audio CD";
case KnownSystem.TaoiKTV:
return "Tao iKTV";
case KnownSystem.TomyKissSite:
@@ -1652,6 +1661,8 @@ namespace DICUI.Utilities
return "gameshark";
case KnownSystem.RainbowDisc:
return "rainbow";
case KnownSystem.SuperAudioCD:
return "sacd";
case KnownSystem.TaoiKTV:
return "iktv";
case KnownSystem.TomyKissSite:
@@ -2870,6 +2881,10 @@ namespace DICUI.Utilities
case "rainbowdisc":
case "rainbow disc":
return KnownSystem.RainbowDisc;
case "sacd":
case "superaudiocd":
case "super audio cd":
return KnownSystem.SuperAudioCD;
case "iktv":
case "taoiktv":
case "tao iktv":

View File

@@ -286,7 +286,9 @@ namespace DICUI.Utilities
string outputFilename = Path.GetFileNameWithoutExtension(OutputFilename);
// Some disc types are audio-only
bool audioOnly = (System == KnownSystem.AtariJaguarCD) || (System == KnownSystem.AudioCD);
bool audioOnly = (System == KnownSystem.AtariJaguarCD)
|| (System == KnownSystem.AudioCD)
|| (System == KnownSystem.SuperAudioCD);
// Now ensure that all required files exist
string combinedBase = Path.Combine(OutputDirectory, outputFilename);

View File

@@ -251,6 +251,7 @@ namespace DICUI.Utilities
|| Command == DICCommand.Floppy
|| Command == DICCommand.GDROM
|| Command == DICCommand.Reset
|| Command == DICCommand.SACD
|| Command == DICCommand.Start
|| Command == DICCommand.Stop
|| Command == DICCommand.Swap
@@ -275,6 +276,7 @@ namespace DICUI.Utilities
|| Command == DICCommand.GDROM
|| Command == DICCommand.MDS
|| Command == DICCommand.Merge
|| Command == DICCommand.SACD
|| Command == DICCommand.Swap
|| Command == DICCommand.Sub
|| Command == DICCommand.XBOX
@@ -304,6 +306,7 @@ namespace DICUI.Utilities
|| Command == DICCommand.Data
|| Command == DICCommand.DigitalVideoDisc
|| Command == DICCommand.GDROM
|| Command == DICCommand.SACD
|| Command == DICCommand.Swap
|| Command == DICCommand.XBOX
|| Command == DICCommand.XBOXSwap
@@ -524,6 +527,16 @@ namespace DICUI.Utilities
parameters.Add(DICFlag.NoFixSubRtoW.LongName());
}
// Not skip security sectors
if (Command == DICCommand.XBOX
|| Command == DICCommand.XBOXSwap
|| Command == DICCommand.XGD2Swap
|| Command == DICCommand.XGD3Swap)
{
if (this[DICFlag.NoSkipSS])
parameters.Add(DICFlag.NoSkipSS.LongName());
}
// Raw read (2064 byte/sector)
if (Command == DICCommand.DigitalVideoDisc)
{
@@ -909,6 +922,28 @@ namespace DICUI.Utilities
Command = DICCommand.Reset;
break;
case DICCommandStrings.SACD:
if (!DoesExist(parts, 1) || !IsValidDriveLetter(parts[1]))
return false;
else
DriveLetter = parts[1];
if (!DoesExist(parts, 2) || IsFlag(parts[2]))
return false;
else
Filename = parts[2];
if (!DoesExist(parts, 3) || !IsValidNumber(parts[3], lowerBound: 0, upperBound: 16))
return false;
else
DriveSpeed = Int32.Parse(parts[3]);
if (parts.Count > 4)
return false;
Command = DICCommand.SACD;
break;
case DICCommandStrings.Start:
if (!DoesExist(parts, 1) || !IsValidDriveLetter(parts[1]))
return false;
@@ -1189,6 +1224,16 @@ namespace DICUI.Utilities
this[DICFlag.NoFixSubQLibCrypt] = true;
break;
case DICFlagStrings.NoFixSubRtoW:
if (parts[0] != DICCommandStrings.Audio
&& parts[0] != DICCommandStrings.CompactDisc
&& parts[0] != DICCommandStrings.Data
&& parts[0] != DICCommandStrings.GDROM)
return false;
this[DICFlag.NoFixSubRtoW] = true;
break;
case DICFlagStrings.NoFixSubQSecuROM:
if (parts[0] != DICCommandStrings.Audio
&& parts[0] != DICCommandStrings.CompactDisc
@@ -1199,14 +1244,14 @@ namespace DICUI.Utilities
this[DICFlag.NoFixSubQSecuROM] = true;
break;
case DICFlagStrings.NoFixSubRtoW:
if (parts[0] != DICCommandStrings.Audio
&& parts[0] != DICCommandStrings.CompactDisc
&& parts[0] != DICCommandStrings.Data
&& parts[0] != DICCommandStrings.GDROM)
case DICFlagStrings.NoSkipSS:
if (parts[0] != DICCommandStrings.XBOX
&& parts[0] != DICCommandStrings.XBOXSwap
&& parts[0] != DICCommandStrings.XGD2Swap
&& parts[0] != DICCommandStrings.XGD3Swap)
return false;
this[DICFlag.NoFixSubRtoW] = true;
this[DICFlag.NoSkipSS] = true;
break;
case DICFlagStrings.Raw:
@@ -1415,7 +1460,10 @@ namespace DICUI.Utilities
switch (type)
{
case MediaType.CDROM:
Command = DICCommand.CompactDisc;
if (system == KnownSystem.SuperAudioCD)
Command = DICCommand.SACD;
else
Command = DICCommand.CompactDisc;
return;
case MediaType.DVD:
if (system == KnownSystem.MicrosoftXBOX

View File

@@ -647,6 +647,11 @@ namespace DICUI.Utilities
types.Add(MediaType.CDROM);
break;
// https://en.wikipedia.org/wiki/Super_Audio_CD
case KnownSystem.SuperAudioCD:
types.Add(MediaType.CDROM);
break;
// https://www.cnet.com/products/tao-music-iktv-karaoke-station-karaoke-system-series/
case KnownSystem.TaoiKTV:
types.Add(MediaType.CDROM);

View File

@@ -19,6 +19,7 @@ namespace DICUI.Test.Utilities
[InlineData(DICCommand.GDROM, MediaType.GDROM)]
[InlineData(DICCommand.MDS, null)]
[InlineData(DICCommand.Reset, null)]
[InlineData(DICCommand.SACD, MediaType.CDROM)]
[InlineData(DICCommand.Start, null)]
[InlineData(DICCommand.Stop, null)]
[InlineData(DICCommand.Sub, null)]
@@ -42,6 +43,7 @@ namespace DICUI.Test.Utilities
[InlineData(DICCommand.GDROM, KnownSystem.SegaDreamcast)]
[InlineData(DICCommand.MDS, null)]
[InlineData(DICCommand.Reset, null)]
[InlineData(DICCommand.SACD, KnownSystem.SuperAudioCD)]
[InlineData(DICCommand.Start, null)]
[InlineData(DICCommand.Stop, null)]
[InlineData(DICCommand.Sub, null)]

View File

@@ -12,7 +12,7 @@ using System.Windows;
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("DICUI")]
[assembly: AssemblyCopyright("Copyright © 2018")]
[assembly: AssemblyCopyright("Copyright © 2019")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
@@ -51,8 +51,8 @@ using System.Windows;
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.11")]
[assembly: AssemblyFileVersion("1.11.0.0")]
[assembly: AssemblyVersion("1.13")]
[assembly: AssemblyFileVersion("1.13.0.0")]
// Anything marked as internal can be used by the test methods
[assembly: InternalsVisibleTo("DICUI.Test")]

View File

@@ -23,8 +23,10 @@ Ensure that your operating system is as up-to-date as possible, since some featu
## Releases
Download the latest release here:
[https://github.com/SabreTools/DICUI/releases](https://github.com/SabreTools/DICUI/releases)
For those who would rather the most recently stable build, ownload the latest release here:
[Releases Page](https://github.com/SabreTools/DICUI/releases)
For those who like to test the newest features, download the latest AppVeyor WIP build here: [AppVeyor](https://ci.appveyor.com/project/mnadareski/dicui/build/artifacts)
## Changelist

View File

@@ -32,9 +32,9 @@ build:
# post-build step
after_build:
- ps: appveyor DownloadFile https://github.com/saramibreak/DiscImageCreator/files/3008503/DiscImageCreator_20190326.zip
- ps: appveyor DownloadFile https://github.com/saramibreak/DiscImageCreator/files/3341769/DiscImageCreator_20190627.zip
- ps: appveyor DownloadFile http://www.rawdump.net/tools/subdump_fua_0x28.zip
- 7z e DiscImageCreator_20190326.zip -oDICUI\bin\Debug\Programs Release_ANSI\*
- 7z e DiscImageCreator_20190627.zip -oDICUI\bin\Debug\Programs Release_ANSI\*
- 7z e subdump_fua_0x28.zip -oDICUI\bin\Debug *
- mv DICUI\bin\Debug\subdump_fua_0x28.exe DICUI\bin\Debug\subdump.exe
- 7z a DICUI.zip DICUI\bin\Debug\*