diff --git a/CHANGELIST.md b/CHANGELIST.md index b78ffb52..a7101a34 100644 --- a/CHANGELIST.md +++ b/CHANGELIST.md @@ -7,6 +7,7 @@ - Use default media type if not provided - Update Redumper to build 682 (Dreamcast support) - Add default subfolder to CLI outputs +- Update DIC to 20260101 ### 3.6.0 (2025-11-28) diff --git a/MPF.ExecutionContexts.Test/DiscImageCreatorTests.cs b/MPF.ExecutionContexts.Test/DiscImageCreatorTests.cs index 2473a1f3..a3c6d960 100644 --- a/MPF.ExecutionContexts.Test/DiscImageCreatorTests.cs +++ b/MPF.ExecutionContexts.Test/DiscImageCreatorTests.cs @@ -102,6 +102,21 @@ namespace MPF.ExecutionContexts.Test #endregion + #region AuthPS3 + + [Theory] + [InlineData("authps3 f")] + public void AuthPS3Test(string parameters) + { + string? expected = "authps3 f"; + var context = new ExecutionContext(parameters); + string? actual = context.GenerateParameters(); + Assert.Equal(expected, actual); + Assert.False(context.IsDumpingCommand()); + } + + #endregion + #region BluRay [Theory] diff --git a/MPF.ExecutionContexts/DiscImageCreator/CommandStrings.cs b/MPF.ExecutionContexts/DiscImageCreator/CommandStrings.cs index 48808f23..01828e1e 100644 --- a/MPF.ExecutionContexts/DiscImageCreator/CommandStrings.cs +++ b/MPF.ExecutionContexts/DiscImageCreator/CommandStrings.cs @@ -7,6 +7,7 @@ namespace MPF.ExecutionContexts.DiscImageCreator { public const string NONE = ""; public const string Audio = "audio"; + public const string AuthPS3 = "authps3"; public const string BluRay = "bd"; public const string Close = "close"; public const string CompactDisc = "cd"; diff --git a/MPF.ExecutionContexts/DiscImageCreator/ExecutionContext.cs b/MPF.ExecutionContexts/DiscImageCreator/ExecutionContext.cs index 8ed8b762..4f2a37a2 100644 --- a/MPF.ExecutionContexts/DiscImageCreator/ExecutionContext.cs +++ b/MPF.ExecutionContexts/DiscImageCreator/ExecutionContext.cs @@ -208,6 +208,8 @@ namespace MPF.ExecutionContexts.DiscImageCreator FlagStrings.Tages, ], + [CommandStrings.AuthPS3] = [], + [CommandStrings.BluRay] = [ FlagStrings.DatExpand, @@ -418,6 +420,7 @@ namespace MPF.ExecutionContexts.DiscImageCreator // Drive Letter if (BaseCommand == CommandStrings.Audio + || BaseCommand == CommandStrings.AuthPS3 || BaseCommand == CommandStrings.BluRay || BaseCommand == CommandStrings.Close || BaseCommand == CommandStrings.CompactDisc @@ -1186,6 +1189,14 @@ namespace MPF.ExecutionContexts.DiscImageCreator index = 6; break; + case CommandStrings.AuthPS3: + if (parts.Length != 2) + return false; + + // Blindly assume the path exists + DrivePath = parts[1]; + break; + case CommandStrings.BluRay: if (parts.Length < 4) return false; diff --git a/MPF.Processors.Test/DiscImageCreatorTests.cs b/MPF.Processors.Test/DiscImageCreatorTests.cs index e0b1171b..abc766cc 100644 --- a/MPF.Processors.Test/DiscImageCreatorTests.cs +++ b/MPF.Processors.Test/DiscImageCreatorTests.cs @@ -95,7 +95,7 @@ namespace MPF.Processors.Test var processor = new DiscImageCreator(RedumpSystem.IBMPCcompatible); var actual = processor.GetOutputFiles(MediaType.CDROM, outputDirectory, outputFilename); - Assert.Equal(26, actual.Count); + Assert.Equal(28, actual.Count); } [Fact] @@ -276,7 +276,7 @@ namespace MPF.Processors.Test string outputFilename = "test.cue"; var processor = new DiscImageCreator(RedumpSystem.IBMPCcompatible); var actual = processor.GenerateArtifacts(MediaType.CDROM, outputDirectory, outputFilename); - Assert.Equal(21, actual.Count); + Assert.Equal(23, actual.Count); } #endregion @@ -324,7 +324,7 @@ namespace MPF.Processors.Test string outputFilename = "test.cue"; var processor = new DiscImageCreator(RedumpSystem.IBMPCcompatible); var actual = processor.GetZippableFilePaths(MediaType.CDROM, outputDirectory, outputFilename); - Assert.Equal(24, actual.Count); + Assert.Equal(26, actual.Count); } #region GetPreservedFilePaths diff --git a/MPF.Processors.Test/TestData/DiscImageCreator/CDROM-zip/test_logs.zip b/MPF.Processors.Test/TestData/DiscImageCreator/CDROM-zip/test_logs.zip index 50622e58..65ac0ed1 100644 Binary files a/MPF.Processors.Test/TestData/DiscImageCreator/CDROM-zip/test_logs.zip and b/MPF.Processors.Test/TestData/DiscImageCreator/CDROM-zip/test_logs.zip differ diff --git a/MPF.Processors.Test/TestData/DiscImageCreator/CDROM/test_interleave.sub b/MPF.Processors.Test/TestData/DiscImageCreator/CDROM/test_interleave.sub new file mode 100644 index 00000000..1aa4b5d8 --- /dev/null +++ b/MPF.Processors.Test/TestData/DiscImageCreator/CDROM/test_interleave.sub @@ -0,0 +1 @@ +TEST DATA \ No newline at end of file diff --git a/MPF.Processors.Test/TestData/DiscImageCreator/CDROM/test_with_cdg.bin b/MPF.Processors.Test/TestData/DiscImageCreator/CDROM/test_with_cdg.bin new file mode 100644 index 00000000..1aa4b5d8 --- /dev/null +++ b/MPF.Processors.Test/TestData/DiscImageCreator/CDROM/test_with_cdg.bin @@ -0,0 +1 @@ +TEST DATA \ No newline at end of file diff --git a/MPF.Processors/DiscImageCreator.cs b/MPF.Processors/DiscImageCreator.cs index 8711a4e6..fd5f907d 100644 --- a/MPF.Processors/DiscImageCreator.cs +++ b/MPF.Processors/DiscImageCreator.cs @@ -636,6 +636,9 @@ namespace MPF.Processors | OutputFileFlags.Artifact | OutputFileFlags.Zippable, "img_cue"), + new($"{outputFilename}_interleave.sub", OutputFileFlags.Binary + | OutputFileFlags.Zippable, + "interleave_sub"), new($"{outputFilename}_mainError.txt", OutputFileFlags.Required | OutputFileFlags.Artifact | OutputFileFlags.Zippable, @@ -666,6 +669,9 @@ namespace MPF.Processors | OutputFileFlags.Artifact | OutputFileFlags.Zippable, "vol_desc"), + new($"{outputFilename}_with_cdg.bin", OutputFileFlags.Binary + | OutputFileFlags.Zippable, + "with_cdg_bin"), new([$"{outputFilename} (Track 0).sub", $"{outputFilename} (Track 00).sub"], OutputFileFlags.Binary | OutputFileFlags.Zippable, diff --git a/publish-nix.sh b/publish-nix.sh index 5a2da78a..ec459a1c 100755 --- a/publish-nix.sh +++ b/publish-nix.sh @@ -92,12 +92,12 @@ function download_programs() { # DiscImageCreator DL_MAP["Creator_linux-arm64"]="" - DL_MAP["Creator_linux-x64"]="https://github.com/user-attachments/files/22080484/DiscImageCreator_20250901.tar.gz" - DL_MAP["Creator_osx-arm64"]="https://github.com/user-attachments/files/20000184/DiscImageCreator_20250501.zip" - DL_MAP["Creator_osx-x64"]="https://github.com/user-attachments/files/20000184/DiscImageCreator_20250501.zip" + DL_MAP["Creator_linux-x64"]="https://github.com/user-attachments/files/24401509/DiscImageCreator_20260101.tar.gz" + DL_MAP["Creator_osx-arm64"]="https://github.com/user-attachments/files/24401512/DiscImageCreator_20260101.zip" + DL_MAP["Creator_osx-x64"]="https://github.com/user-attachments/files/24401512/DiscImageCreator_20260101.zip" DL_MAP["Creator_win-arm64"]="" - DL_MAP["Creator_win-x64"]="https://github.com/user-attachments/files/22080480/DiscImageCreator_20250901.zip" - DL_MAP["Creator_win-x86"]="https://github.com/user-attachments/files/22080480/DiscImageCreator_20250901.zip" + DL_MAP["Creator_win-x64"]="https://github.com/user-attachments/files/24401506/DiscImageCreator_20260101.zip" + DL_MAP["Creator_win-x86"]="https://github.com/user-attachments/files/24401506/DiscImageCreator_20260101.zip" # Redumper DL_MAP["Redumper_linux-arm64"]="https://github.com/superg/redumper/releases/download/b682/redumper-b682-linux-arm64.zip" diff --git a/publish-win.ps1 b/publish-win.ps1 index 93ab98de..186dabd9 100644 --- a/publish-win.ps1 +++ b/publish-win.ps1 @@ -81,12 +81,12 @@ function Download-Programs { # DiscImageCreator "Creator_linux-arm64" = "" - "Creator_linux-x64" = "https://github.com/user-attachments/files/22080484/DiscImageCreator_20250901.tar.gz" - "Creator_osx-arm64" = "https://github.com/user-attachments/files/20000184/DiscImageCreator_20250501.zip" - "Creator_osx-x64" = "https://github.com/user-attachments/files/20000184/DiscImageCreator_20250501.zip" + "Creator_linux-x64" = "https://github.com/user-attachments/files/24401509/DiscImageCreator_20260101.tar.gz" + "Creator_osx-arm64" = "https://github.com/user-attachments/files/24401512/DiscImageCreator_20260101.zip" + "Creator_osx-x64" = "https://github.com/user-attachments/files/24401512/DiscImageCreator_20260101.zip" "Creator_win-arm64" = "" - "Creator_win-x86" = "https://github.com/user-attachments/files/22080480/DiscImageCreator_20250901.zip" - "Creator_win-x64" = "https://github.com/user-attachments/files/22080480/DiscImageCreator_20250901.zip" + "Creator_win-x86" = "https://github.com/user-attachments/files/24401506/DiscImageCreator_20260101.zip" + "Creator_win-x64" = "https://github.com/user-attachments/files/24401506/DiscImageCreator_20260101.zip" # Redumper "Redumper_linux-arm64" = "https://github.com/superg/redumper/releases/download/b682/redumper-b682-linux-arm64.zip"