diff --git a/MPF.Core/UI/ViewModels/MainViewModel.cs b/MPF.Core/UI/ViewModels/MainViewModel.cs
index 9f919008..75e54daa 100644
--- a/MPF.Core/UI/ViewModels/MainViewModel.cs
+++ b/MPF.Core/UI/ViewModels/MainViewModel.cs
@@ -1583,6 +1583,35 @@ namespace MPF.Core.UI.ViewModels
this.DriveSpeed = speed;
}
+ ///
+ /// Returns False if a given InternalProgram does not support a given MediaType
+ ///
+ public bool ProgramSupportsMedia(InternalProgram program, MediaType? media)
+ {
+ switch (program)
+ {
+ case InternalProgram.Redumper:
+ switch (media)
+ {
+ case MediaType.HDDVD:
+ return false;
+ case MediaType.BluRay:
+ return false;
+ default:
+ return true;
+ }
+ case InternalProgram.Aaru:
+ case InternalProgram.DiscImageCreator:
+ switch (media)
+ {
+ default:
+ return true;
+ }
+ default:
+ return true;
+ }
+ }
+
///
/// Determine if the dumping button should be enabled
///
@@ -1591,7 +1620,8 @@ namespace MPF.Core.UI.ViewModels
return Drives != null
&& Drives.Count > 0
&& this.CurrentSystem != null
- && this.CurrentMediaType != null;
+ && this.CurrentMediaType != null
+ && ProgramSupportsMedia(this.CurrentProgram, this.CurrentMediaType);
}
///