diff --git a/CHANGELIST.md b/CHANGELIST.md
index 446be2e4..85c719c1 100644
--- a/CHANGELIST.md
+++ b/CHANGELIST.md
@@ -119,6 +119,7 @@
- Download Redumper with AppVeyor
- Add Redumper constants
- Add Redumper parameter values
+- Add Redumper command support and reset
### 2.3 (2022-02-05)
- Start overhauling Redump information pulling, again
diff --git a/MPF.Modules/Redumper/Parameters.cs b/MPF.Modules/Redumper/Parameters.cs
index 6ca3ec47..dd3eca47 100644
--- a/MPF.Modules/Redumper/Parameters.cs
+++ b/MPF.Modules/Redumper/Parameters.cs
@@ -185,7 +185,183 @@ namespace MPF.Modules.Redumper
///
public override Dictionary> GetCommandSupport()
{
- return new Dictionary>();
+ // TODO: Figure out actual support for each flag
+ return new Dictionary>()
+ {
+ [CommandStrings.NONE] = new List()
+ {
+ FlagStrings.HelpLong,
+ FlagStrings.HelpShort,
+ },
+ [CommandStrings.CD] = new List()
+ {
+ FlagStrings.AudioSilenceThreshold,
+ FlagStrings.CDiCorrectOffset,
+ FlagStrings.CDiReadyNormalize,
+ FlagStrings.DescrambleNew,
+ FlagStrings.Drive,
+ FlagStrings.ForceOffset,
+ FlagStrings.ForceQTOC,
+ FlagStrings.ForceSplit,
+ FlagStrings.ForceTOC,
+ FlagStrings.ISO9660Trim,
+ FlagStrings.ImageName,
+ FlagStrings.ImagePath,
+ FlagStrings.LeaveUnchanged,
+ FlagStrings.Overwrite,
+ FlagStrings.RefineSubchannel,
+ FlagStrings.Retries,
+ FlagStrings.RingSize,
+ FlagStrings.Skip,
+ FlagStrings.SkipFill,
+ FlagStrings.SkipLeadIn,
+ FlagStrings.SkipSize,
+ FlagStrings.Speed,
+ FlagStrings.StopLBA,
+ FlagStrings.Unsupported,
+ FlagStrings.Verbose,
+ },
+ [CommandStrings.Dump] = new List()
+ {
+ FlagStrings.AudioSilenceThreshold,
+ FlagStrings.CDiCorrectOffset,
+ FlagStrings.CDiReadyNormalize,
+ FlagStrings.DescrambleNew,
+ FlagStrings.Drive,
+ FlagStrings.ForceOffset,
+ FlagStrings.ForceQTOC,
+ FlagStrings.ForceSplit,
+ FlagStrings.ForceTOC,
+ FlagStrings.ISO9660Trim,
+ FlagStrings.ImageName,
+ FlagStrings.ImagePath,
+ FlagStrings.LeaveUnchanged,
+ FlagStrings.Overwrite,
+ FlagStrings.RefineSubchannel,
+ FlagStrings.Retries,
+ FlagStrings.RingSize,
+ FlagStrings.Skip,
+ FlagStrings.SkipFill,
+ FlagStrings.SkipLeadIn,
+ FlagStrings.SkipSize,
+ FlagStrings.Speed,
+ FlagStrings.StopLBA,
+ FlagStrings.Unsupported,
+ FlagStrings.Verbose,
+ },
+ [CommandStrings.Info] = new List()
+ {
+ FlagStrings.AudioSilenceThreshold,
+ FlagStrings.CDiCorrectOffset,
+ FlagStrings.CDiReadyNormalize,
+ FlagStrings.DescrambleNew,
+ FlagStrings.Drive,
+ FlagStrings.ForceOffset,
+ FlagStrings.ForceQTOC,
+ FlagStrings.ForceSplit,
+ FlagStrings.ForceTOC,
+ FlagStrings.ISO9660Trim,
+ FlagStrings.ImageName,
+ FlagStrings.ImagePath,
+ FlagStrings.LeaveUnchanged,
+ FlagStrings.Overwrite,
+ FlagStrings.RefineSubchannel,
+ FlagStrings.Retries,
+ FlagStrings.RingSize,
+ FlagStrings.Skip,
+ FlagStrings.SkipFill,
+ FlagStrings.SkipLeadIn,
+ FlagStrings.SkipSize,
+ FlagStrings.Speed,
+ FlagStrings.StopLBA,
+ FlagStrings.Unsupported,
+ FlagStrings.Verbose,
+ },
+ [CommandStrings.Protection] = new List()
+ {
+ FlagStrings.AudioSilenceThreshold,
+ FlagStrings.CDiCorrectOffset,
+ FlagStrings.CDiReadyNormalize,
+ FlagStrings.DescrambleNew,
+ FlagStrings.Drive,
+ FlagStrings.ForceOffset,
+ FlagStrings.ForceQTOC,
+ FlagStrings.ForceSplit,
+ FlagStrings.ForceTOC,
+ FlagStrings.ISO9660Trim,
+ FlagStrings.ImageName,
+ FlagStrings.ImagePath,
+ FlagStrings.LeaveUnchanged,
+ FlagStrings.Overwrite,
+ FlagStrings.RefineSubchannel,
+ FlagStrings.Retries,
+ FlagStrings.RingSize,
+ FlagStrings.Skip,
+ FlagStrings.SkipFill,
+ FlagStrings.SkipLeadIn,
+ FlagStrings.SkipSize,
+ FlagStrings.Speed,
+ FlagStrings.StopLBA,
+ FlagStrings.Unsupported,
+ FlagStrings.Verbose,
+ },
+ [CommandStrings.Refine] = new List()
+ {
+ FlagStrings.AudioSilenceThreshold,
+ FlagStrings.CDiCorrectOffset,
+ FlagStrings.CDiReadyNormalize,
+ FlagStrings.DescrambleNew,
+ FlagStrings.Drive,
+ FlagStrings.ForceOffset,
+ FlagStrings.ForceQTOC,
+ FlagStrings.ForceSplit,
+ FlagStrings.ForceTOC,
+ FlagStrings.ISO9660Trim,
+ FlagStrings.ImageName,
+ FlagStrings.ImagePath,
+ FlagStrings.LeaveUnchanged,
+ FlagStrings.Overwrite,
+ FlagStrings.RefineSubchannel,
+ FlagStrings.Retries,
+ FlagStrings.RingSize,
+ FlagStrings.Skip,
+ FlagStrings.SkipFill,
+ FlagStrings.SkipLeadIn,
+ FlagStrings.SkipSize,
+ FlagStrings.Speed,
+ FlagStrings.StopLBA,
+ FlagStrings.Unsupported,
+ FlagStrings.Verbose,
+ },
+ [CommandStrings.Split] = new List()
+ {
+ FlagStrings.AudioSilenceThreshold,
+ FlagStrings.CDiCorrectOffset,
+ FlagStrings.CDiReadyNormalize,
+ FlagStrings.DescrambleNew,
+ FlagStrings.Drive,
+ FlagStrings.ForceOffset,
+ FlagStrings.ForceQTOC,
+ FlagStrings.ForceSplit,
+ FlagStrings.ForceTOC,
+ FlagStrings.ISO9660Trim,
+ FlagStrings.ImageName,
+ FlagStrings.ImagePath,
+ FlagStrings.LeaveUnchanged,
+ FlagStrings.Overwrite,
+ FlagStrings.RefineSubchannel,
+ FlagStrings.Retries,
+ FlagStrings.RingSize,
+ FlagStrings.Skip,
+ FlagStrings.SkipFill,
+ FlagStrings.SkipLeadIn,
+ FlagStrings.SkipSize,
+ FlagStrings.Speed,
+ FlagStrings.StopLBA,
+ FlagStrings.Unsupported,
+ FlagStrings.Verbose,
+ },
+ };
}
///
@@ -205,9 +381,22 @@ namespace MPF.Modules.Redumper
///
protected override void ResetValues()
{
- BaseCommand = string.Empty; // TODO: Fill out
+ BaseCommand = CommandStrings.NONE;
flags = new Dictionary();
+
+ AudioSilenceThresholdValue = null;
+ DriveValue = null;
+ ForceFoffsetValue = null;
+ ImageNameValue = null;
+ ImagePathValue = null;
+ RetriesValue = null;
+ RingSizeValue = null;
+ SkipValue = null;
+ SkipFillValue = null;
+ SkipSizeValue = null;
+ SpeedValue = null;
+ StopLBAValue = null;
}
///