diff --git a/CHANGELIST.md b/CHANGELIST.md
index ae9f2ebf..9dfa13f1 100644
--- a/CHANGELIST.md
+++ b/CHANGELIST.md
@@ -32,6 +32,7 @@
- Clean up options serialization and ordering
- Add placeholder CLI media info methods
- Further cleanup in Options
+- Move dump settings next to execution contexts
### 3.6.0 (2025-11-28)
diff --git a/MPF.ExecutionContexts/Aaru/DumpSettings.cs b/MPF.ExecutionContexts/Aaru/DumpSettings.cs
new file mode 100644
index 00000000..da296e1c
--- /dev/null
+++ b/MPF.ExecutionContexts/Aaru/DumpSettings.cs
@@ -0,0 +1,38 @@
+namespace MPF.ExecutionContexts.Aaru
+{
+ ///
+ /// Settings related to the dumping step
+ ///
+ public class DumpSettings
+ {
+ ///
+ /// Enable debug output while dumping by default
+ ///
+ /// Version 1 and greater
+ public bool EnableDebug { get; set; } = SettingConstants.EnableDebugDefault;
+
+ ///
+ /// Enable verbose output while dumping by default
+ ///
+ /// Version 1 and greater
+ public bool EnableVerbose { get; set; } = SettingConstants.EnableVerboseDefault;
+
+ ///
+ /// Enable force dumping of media by default
+ ///
+ /// Version 1 and greater
+ public bool ForceDumping { get; set; } = SettingConstants.ForceDumpingDefault;
+
+ ///
+ /// Default number of sector/subchannel rereads
+ ///
+ /// Version 1 and greater
+ public int RereadCount { get; set; } = SettingConstants.RereadCountDefault;
+
+ ///
+ /// Strip personal data information from Aaru metadata by default
+ ///
+ /// Version 1 and greater
+ public bool StripPersonalData { get; set; } = SettingConstants.StripPersonalDataDefault;
+ }
+}
diff --git a/MPF.ExecutionContexts/DiscImageCreator/DumpSettings.cs b/MPF.ExecutionContexts/DiscImageCreator/DumpSettings.cs
new file mode 100644
index 00000000..b5e3ff51
--- /dev/null
+++ b/MPF.ExecutionContexts/DiscImageCreator/DumpSettings.cs
@@ -0,0 +1,55 @@
+namespace MPF.ExecutionContexts.DiscImageCreator
+{
+ ///
+ /// Settings related to the dumping step (DIC)
+ ///
+ public class DumpSettings
+ {
+ ///
+ /// Enable multi-sector read flag by default
+ ///
+ /// Version 1 and greater
+ public bool MultiSectorRead { get; set; } = SettingConstants.MultiSectorReadDefault;
+
+ ///
+ /// Include a default multi-sector read value
+ ///
+ /// Version 1 and greater
+ public int MultiSectorReadValue { get; set; } = SettingConstants.MultiSectorReadValueDefault;
+
+ ///
+ /// Enable overly-secure dumping flags by default
+ ///
+ ///
+ /// Version 1 and greater
+ /// Split this into component parts later. Currently does:
+ /// - Scan sector protection and set subchannel read level to 2 for CD
+ /// - Set scan file protect flag for DVD
+ ///
+ public bool ParanoidMode { get; set; } = SettingConstants.ParanoidModeDefault;
+
+ ///
+ /// Enable the Quiet flag by default
+ ///
+ /// Version 1 and greater
+ public bool QuietMode { get; set; } = SettingConstants.QuietModeDefault;
+
+ ///
+ /// Default number of C2 rereads
+ ///
+ /// Version 1 and greater
+ public int RereadCount { get; set; } = SettingConstants.RereadCountDefault;
+
+ ///
+ /// Default number of DVD/HD-DVD/BD rereads
+ ///
+ /// Version 1 and greater
+ public int DVDRereadCount { get; set; } = SettingConstants.DVDRereadCountDefault;
+
+ ///
+ /// Use the CMI flag for supported disc types
+ ///
+ /// Version 1 and greater
+ public bool UseCMIFlag { get; set; } = SettingConstants.UseCMIFlagDefault;
+ }
+}
diff --git a/MPF.ExecutionContexts/Dreamdump/DumpSettings.cs b/MPF.ExecutionContexts/Dreamdump/DumpSettings.cs
new file mode 100644
index 00000000..b32c4d2a
--- /dev/null
+++ b/MPF.ExecutionContexts/Dreamdump/DumpSettings.cs
@@ -0,0 +1,26 @@
+namespace MPF.ExecutionContexts.Dreamdump
+{
+ ///
+ /// Settings related to the dumping step (Dreamdump)
+ ///
+ public class DreamdumpDumpSettings
+ {
+ ///
+ /// Enable options incompatible with redump submissions
+ ///
+ /// Version 1 and greater
+ public bool NonRedumpMode { get; set; } = false;
+
+ ///
+ /// Currently selected default Dreamdump sector order
+ ///
+ /// Version 1 and greater
+ public SectorOrder SectorOrder { get; set; } = SettingConstants.SectorOrderDefault;
+
+ ///
+ /// Default number of rereads
+ ///
+ /// Version 1 and greater
+ public int RereadCount { get; set; } = SettingConstants.RereadCountDefault;
+ }
+}
diff --git a/MPF.ExecutionContexts/Redumper/DumpSettings.cs b/MPF.ExecutionContexts/Redumper/DumpSettings.cs
new file mode 100644
index 00000000..9a85005a
--- /dev/null
+++ b/MPF.ExecutionContexts/Redumper/DumpSettings.cs
@@ -0,0 +1,68 @@
+namespace MPF.ExecutionContexts.Redumper
+{
+ ///
+ /// Settings related to the dumping step (Redumper)
+ ///
+ public class DumpSettings
+ {
+ ///
+ /// Enable skeleton output while dumping by default
+ ///
+ /// Version 1 and greater; This is a hidden setting
+ public bool EnableSkeleton { get; set; } = SettingConstants.EnableSkeletonDefault;
+
+ ///
+ /// Enable verbose output while dumping by default
+ ///
+ /// Version 1 and greater
+ public bool EnableVerbose { get; set; } = SettingConstants.EnableVerboseDefault;
+
+ ///
+ /// Default number of redumper Plextor leadin retries
+ ///
+ /// Version 1 and greater
+ public int LeadinRetryCount { get; set; } = SettingConstants.LeadinRetryCountDefault;
+
+ ///
+ /// Enable options incompatible with redump submissions
+ ///
+ /// Version 1 and greater
+ public bool NonRedumpMode { get; set; } = false;
+
+ ///
+ /// Currently selected default redumper drive type
+ ///
+ /// Version 1 and greater
+ public DriveType DriveType { get; set; } = SettingConstants.DriveTypeDefault;
+
+ ///
+ /// Currently selected default redumper drive pregap start sector
+ ///
+ /// Version 1 and greater
+ public int DrivePregapStart { get; set; } = SettingConstants.DrivePregapStartDefault;
+
+ ///
+ /// Currently selected default redumper read method
+ ///
+ /// Version 1 and greater
+ public ReadMethod ReadMethod { get; set; } = SettingConstants.ReadMethodDefault;
+
+ ///
+ /// Currently selected default redumper sector order
+ ///
+ /// Version 1 and greater
+ public SectorOrder SectorOrder { get; set; } = SettingConstants.SectorOrderDefault;
+
+ ///
+ /// Default number of rereads
+ ///
+ /// Version 1 and greater
+ public int RereadCount { get; set; } = SettingConstants.RereadCountDefault;
+
+ ///
+ /// Enable the refine sector mode flag by default
+ ///
+ /// Version 1 and greater
+ public bool RefineSectorMode { get; set; } = SettingConstants.RefineSectorModeDefault;
+ }
+}
diff --git a/MPF.Frontend/Options.cs b/MPF.Frontend/Options.cs
index 2ccacc8e..74bab1c7 100644
--- a/MPF.Frontend/Options.cs
+++ b/MPF.Frontend/Options.cs
@@ -4,10 +4,14 @@ using System.IO;
using Newtonsoft.Json;
using SabreTools.RedumpLib.Data;
using AaruConstants = MPF.ExecutionContexts.Aaru.SettingConstants;
+using AaruDumpSettings = MPF.ExecutionContexts.Aaru.DumpSettings;
using DiscImageCreatorConstants = MPF.ExecutionContexts.DiscImageCreator.SettingConstants;
+using DiscImageCreatorDumpSettings = MPF.ExecutionContexts.DiscImageCreator.DumpSettings;
using DreamdumpConstants = MPF.ExecutionContexts.Dreamdump.SettingConstants;
+using DreamdumpDumpSettings = MPF.ExecutionContexts.Dreamdump.DreamdumpDumpSettings;
using LogCompression = MPF.Processors.LogCompression;
using RedumperConstants = MPF.ExecutionContexts.Redumper.SettingConstants;
+using RedumperDumpSettings = MPF.ExecutionContexts.Redumper.DumpSettings;
namespace MPF.Frontend
{
@@ -971,188 +975,5 @@ namespace MPF.Frontend
public string? CustomTextColor { get; set; } = null;
}
- #region Per-Program Dump Settings
-
- ///
- /// Settings related to the dumping step (Aaru)
- ///
- public class AaruDumpSettings
- {
- ///
- /// Enable debug output while dumping by default
- ///
- /// Version 1 and greater
- public bool EnableDebug { get; set; } = AaruConstants.EnableDebugDefault;
-
- ///
- /// Enable verbose output while dumping by default
- ///
- /// Version 1 and greater
- public bool EnableVerbose { get; set; } = AaruConstants.EnableVerboseDefault;
-
- ///
- /// Enable force dumping of media by default
- ///
- /// Version 1 and greater
- public bool ForceDumping { get; set; } = AaruConstants.ForceDumpingDefault;
-
- ///
- /// Default number of sector/subchannel rereads
- ///
- /// Version 1 and greater
- public int RereadCount { get; set; } = AaruConstants.RereadCountDefault;
-
- ///
- /// Strip personal data information from Aaru metadata by default
- ///
- /// Version 1 and greater
- public bool StripPersonalData { get; set; } = AaruConstants.StripPersonalDataDefault;
- }
-
- ///
- /// Settings related to the dumping step (DIC)
- ///
- public class DiscImageCreatorDumpSettings
- {
- ///
- /// Enable multi-sector read flag by default
- ///
- /// Version 1 and greater
- public bool MultiSectorRead { get; set; } = DiscImageCreatorConstants.MultiSectorReadDefault;
-
- ///
- /// Include a default multi-sector read value
- ///
- /// Version 1 and greater
- public int MultiSectorReadValue { get; set; } = DiscImageCreatorConstants.MultiSectorReadValueDefault;
-
- ///
- /// Enable overly-secure dumping flags by default
- ///
- ///
- /// Version 1 and greater
- /// Split this into component parts later. Currently does:
- /// - Scan sector protection and set subchannel read level to 2 for CD
- /// - Set scan file protect flag for DVD
- ///
- public bool ParanoidMode { get; set; } = DiscImageCreatorConstants.ParanoidModeDefault;
-
- ///
- /// Enable the Quiet flag by default
- ///
- /// Version 1 and greater
- public bool QuietMode { get; set; } = DiscImageCreatorConstants.QuietModeDefault;
-
- ///
- /// Default number of C2 rereads
- ///
- /// Version 1 and greater
- public int RereadCount { get; set; } = DiscImageCreatorConstants.RereadCountDefault;
-
- ///
- /// Default number of DVD/HD-DVD/BD rereads
- ///
- /// Version 1 and greater
- public int DVDRereadCount { get; set; } = DiscImageCreatorConstants.DVDRereadCountDefault;
-
- ///
- /// Use the CMI flag for supported disc types
- ///
- /// Version 1 and greater
- public bool UseCMIFlag { get; set; } = DiscImageCreatorConstants.UseCMIFlagDefault;
- }
-
- ///
- /// Settings related to the dumping step (Dreamdump)
- ///
- public class DreamdumpDumpSettings
- {
- ///
- /// Enable options incompatible with redump submissions
- ///
- /// Version 1 and greater
- public bool NonRedumpMode { get; set; } = false;
-
- ///
- /// Currently selected default Dreamdump sector order
- ///
- /// Version 1 and greater
- public ExecutionContexts.Dreamdump.SectorOrder SectorOrder { get; set; } = DreamdumpConstants.SectorOrderDefault;
-
- ///
- /// Default number of rereads
- ///
- /// Version 1 and greater
- public int RereadCount { get; set; } = DreamdumpConstants.RereadCountDefault;
- }
-
- ///
- /// Settings related to the dumping step (Redumper)
- ///
- public class RedumperDumpSettings
- {
- ///
- /// Enable skeleton output while dumping by default
- ///
- /// Version 1 and greater; This is a hidden setting
- public bool EnableSkeleton { get; set; } = RedumperConstants.EnableSkeletonDefault;
-
- ///
- /// Enable verbose output while dumping by default
- ///
- /// Version 1 and greater
- public bool EnableVerbose { get; set; } = RedumperConstants.EnableVerboseDefault;
-
- ///
- /// Default number of redumper Plextor leadin retries
- ///
- /// Version 1 and greater
- public int LeadinRetryCount { get; set; } = RedumperConstants.LeadinRetryCountDefault;
-
- ///
- /// Enable options incompatible with redump submissions
- ///
- /// Version 1 and greater
- public bool NonRedumpMode { get; set; } = false;
-
- ///
- /// Currently selected default redumper drive type
- ///
- /// Version 1 and greater
- public ExecutionContexts.Redumper.DriveType DriveType { get; set; } = RedumperConstants.DriveTypeDefault;
-
- ///
- /// Currently selected default redumper drive pregap start sector
- ///
- /// Version 1 and greater
- public int DrivePregapStart { get; set; } = RedumperConstants.DrivePregapStartDefault;
-
- ///
- /// Currently selected default redumper read method
- ///
- /// Version 1 and greater
- public ExecutionContexts.Redumper.ReadMethod ReadMethod { get; set; } = RedumperConstants.ReadMethodDefault;
-
- ///
- /// Currently selected default redumper sector order
- ///
- /// Version 1 and greater
- public ExecutionContexts.Redumper.SectorOrder SectorOrder { get; set; } = RedumperConstants.SectorOrderDefault;
-
- ///
- /// Default number of rereads
- ///
- /// Version 1 and greater
- public int RereadCount { get; set; } = RedumperConstants.RereadCountDefault;
-
- ///
- /// Enable the refine sector mode flag by default
- ///
- /// Version 1 and greater
- public bool RefineSectorMode { get; set; } = RedumperConstants.RefineSectorModeDefault;
- }
-
- #endregion
-
#endregion
}