Compare commits

..

10 Commits
1.01d ... 1.02b

Author SHA1 Message Date
ReignStumble
3a749b67e3 Merge branch 'master' of https://github.com/reignstumble/DICUI 2018-05-18 23:13:49 -04:00
ReignStumble
3abc277aab Changed /c2 to /c2 20 2018-05-18 23:13:47 -04:00
reignstumble
894f2c6fde Update README.md 2018-05-18 22:39:05 -04:00
ReignStumble
8c43615235 Fixed PS4 and XBOX one drive speed and more 2018-05-18 22:32:30 -04:00
ReignStumble
bbf51a7f94 Fixed a missing space in sg_raw.exe command 2018-05-14 14:55:04 -04:00
reignstumble
515e58fae8 Merge pull request #6 from mnadareski/master
Enable future settings use
2018-05-14 14:48:17 -04:00
Matt Nadareski
f3319f4ee2 Untabify 2018-05-14 11:21:17 -07:00
Matt Nadareski
e2789ddd11 Enable future settings use
This change converts the static DIC path to one that is controlled by settings. Currently, nothing saves or changes these settings so nothing has changed in terms of what the workflow is. This will, however, enable these settings to be controlled through the UI in the future, and allow for settings persistence between sessions without having to rely on AppData or the registry.
2018-05-14 11:20:31 -07:00
reignstumble
1c04f6e30c Update README.md 2018-05-14 13:49:58 -04:00
reignstumble
c7d4d319ce Update README.md 2018-05-14 13:49:26 -04:00
7 changed files with 236 additions and 201 deletions

View File

@@ -1,6 +1,19 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="DICUI.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup>
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
</startup>
<userSettings>
<DICUI.Properties.Settings>
<setting name="
" serializeAs="String">
<value>Release_ANSI\\DiscImageCreator.exe</value>
</setting>
</DICUI.Properties.Settings>
</userSettings>
</configuration>

View File

@@ -109,19 +109,10 @@
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
</EmbeddedResource>
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
</ItemGroup>
<ItemGroup>
<None Include="App.config" />

View File

@@ -5,28 +5,27 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:DICUI"
mc:Ignorable="d"
Title="Disc Image Creator GUI" Height="350" Width="500">
Title="Disc Image Creator GUI" Height="400" Width="600">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="4*"/>
<ColumnDefinition Width="13*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="3*"/>
<RowDefinition Height="4*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<GroupBox Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Margin="5,5,5.2,5.4" HorizontalAlignment="Stretch" Header="Settings"/>
<GroupBox Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Margin="5,4.6,5.2,4.8" HorizontalAlignment="Stretch" Header="Controls"/>
<GroupBox Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" Margin="5,5.2,5.2,4.8" HorizontalAlignment="Stretch" Header="Status"/>
<GroupBox Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Margin="5" HorizontalAlignment="Stretch" Header="Informations Input"/>
<GroupBox Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Margin="5" HorizontalAlignment="Stretch" Header="Control"/>
<GroupBox Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" Margin="5" HorizontalAlignment="Stretch" Header="Status"/>
<Grid Grid.Row="0" Grid.Column="0" Margin="15,25,15,10">
<Grid Grid.Row="0" Grid.Column="0" Margin="15,25,15.2,10.4" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="2.5*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition/>
@@ -34,15 +33,17 @@
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<Label Grid.Row="0" Grid.Column="0" VerticalAlignment="Center">Disc Type</Label>
<Label Grid.Row="1" Grid.Column="0" VerticalAlignment="Center">Output Filename</Label>
<Label Grid.Row="2" Grid.Column="0" VerticalAlignment="Center">Output Directory</Label>
<Label Grid.Row="3" Grid.Column="0" VerticalAlignment="Center">Drive Letter</Label>
<Label Grid.Row="4" Grid.Column="0" VerticalAlignment="Center">Drive Speed</Label>
<Label Grid.Row="1" Grid.Column="0" VerticalAlignment="Center">DiscImageCreator Path</Label>
<Label Grid.Row="2" Grid.Column="0" VerticalAlignment="Center">Output Filename</Label>
<Label Grid.Row="3" Grid.Column="0" VerticalAlignment="Center">Output Directory</Label>
<Label Grid.Row="4" Grid.Column="0" VerticalAlignment="Center">Drive Letter</Label>
<Label Grid.Row="5" Grid.Column="0" VerticalAlignment="Center">Drive Speed</Label>
<ComboBox x:Name="CB_DiscType" Grid.Row="0" Grid.Column="1" Height="22" Text="Bandai Playdia Quick Interactive System" SelectionChanged="CB_DiscType_SelectionChanged">
<ComboBox x:Name="cmb_DiscType" Grid.Row="0" Grid.Column="1" Height="22" Text="Bandai Playdia Quick Interactive System" DropDownClosed="cmb_DiscType_DropDownClosed" SelectionChanged="cmb_DiscType_SelectionChanged">
<ComboBoxItem Content="Unknown"/>
<ComboBoxItem Content="---------- Consoles ----------" IsEnabled="False"/>
<ComboBoxItem Content="Bandai Playdia Quick Interactive System"/>
@@ -82,46 +83,51 @@
<ComboBoxItem Content="Tomy Kiss-Site"/>
<ComboBoxItem Content="Video CD"/>
</ComboBox>
<TextBox x:Name="TXT_OutputFilename" Grid.Row="1" Grid.Column="1" Height="22"></TextBox>
<TextBox x:Name="TXT_OutputDirectory" Grid.Row="2" Grid.Column="1" Height="22" Width="290" HorizontalAlignment="left" Text="ISO" ></TextBox>
<Button x:Name="BTN_OutputDirectoryBrowse" Grid.Row="2" Grid.Column="1" Height="22" Width="50" HorizontalAlignment="Right" Content="Browse" Click="BTN_OutputDirectoryBrowse_Click" ></Button>
<ComboBox x:Name="CB_DriveLetter" Grid.Row="3" Grid.Column="1" Height="22" Width="60" HorizontalAlignment="left">
</ComboBox>
<ComboBox x:Name="CB_DriveSpeed" Grid.Row="4" Grid.Column="1" Height="22" Width="60" HorizontalAlignment="left" SelectionChanged="CB_DriveSpeed_SelectionChanged">
<TextBox x:Name="TXT_DiscImageCreatorPath" Grid.Row="1" Grid.Column="1" Height="22" Width="345" HorizontalAlignment="left" IsEnabled="False" ></TextBox>
<Button x:Name="BTN_DiscImageCreatorBrowse" Grid.Row="1" Grid.Column="1" Height="22" Width="50" HorizontalAlignment="Right" Content="Browse" IsEnabled="False"></Button>
<TextBox x:Name="txt_OutputFilename" Grid.Row="2" Grid.Column="1" Height="22"></TextBox>
<TextBox x:Name="txt_OutputDirectory" Grid.Row="3" Grid.Column="1" Height="22" Width="345" HorizontalAlignment="left" Text="ISO" ></TextBox>
<Button x:Name="BTN_OutputDirectoryBrowse" Grid.Row="3" Grid.Column="1" Height="22" Width="50" HorizontalAlignment="Right" Content="Browse" Click="BTN_OutputDirectoryBrowse_Click" ></Button>
<ComboBox x:Name="cmb_DriveLetter" Grid.Row="4" Grid.Column="1" Height="22" Width="60" HorizontalAlignment="left"></ComboBox>
<ComboBox x:Name="cmb_DriveSpeed" Grid.Row="5" Grid.Column="1" Height="22" Width="60" HorizontalAlignment="left" SelectionChanged="cmb_DriveSpeed_SelectionChanged">
<ComboBoxItem Content="4"/>
<ComboBoxItem Content="8"/>
<ComboBoxItem Content="16"/>
<ComboBoxItem Content="48"/>
<ComboBoxItem Content="Custom"/>
</ComboBox>
</Grid>
<Grid Grid.Row="1" Grid.Column="0" Margin="15,20,15,10">
<Grid Grid.Row="1" Grid.Column="0" Margin="15,19.6,15.2,9.8" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition/>
</Grid.RowDefinitions>
<Button x:Name="BTN_Start" Grid.Row="0" Grid.Column="0" Height="22" Width="150" VerticalAlignment="Center" HorizontalAlignment="Center" Content="Start Dumping" Click="BTN_Start_Click" IsEnabled="False" />
<Button x:Name="BTN_Search" Grid.Row="0" Grid.Column="1" Height="22" Width="150" VerticalAlignment="Center" HorizontalAlignment="Center" Content="Scan for disks" Click="BTN_Search_Click" />
<Button x:Name="btn_Start" Grid.Row="0" Grid.Column="0" Height="22" Width="150" VerticalAlignment="Center" HorizontalAlignment="Center" Content="Start Dumping" Click="btn_Start_Click" IsEnabled="False" />
<Button x:Name="btn_Search" Grid.Row="0" Grid.Column="1" Height="22" Width="150" VerticalAlignment="Center" HorizontalAlignment="Center" Content="Scan for disks" Click="btn_Search_Click" />
</Grid>
<Grid Grid.Row="2" Grid.Column="0" Margin="15,20,15,10">
<Grid Grid.Row="2" Grid.Column="0" Margin="15,20.2,15.2,9.8" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition/>
</Grid.RowDefinitions>
<Label x:Name="LBL_Status" Grid.Row="0" Grid.Column="0" VerticalAlignment="Center" HorizontalAlignment="Center" Content="Waiting for CD or DVD..." />
<Label x:Name="lbl_Status" Grid.Row="0" Grid.Column="0" VerticalAlignment="Center" HorizontalAlignment="Center" Content="Waiting for CD or DVD..." />
</Grid>
</Grid>
</Window>

View File

@@ -6,36 +6,48 @@ using WinForms = System.Windows.Forms;
using System.Diagnostics;
using System.Threading.Tasks;
namespace DICUI
{
public partial class MainWindow : Window
{
public String discType;
public String processArguments;
public String dicPath = "Programs\\DiscImageCreator.exe";
public String driveLetter;
public String outputDirectory;
public String outputFileName;
public String driveSpeed;
public Boolean isPSX = false;
public Boolean isXboneOrPS4 = false;
public void ScanForDisk()
{
BTN_Search.IsEnabled = false;
CB_DriveLetter.Items.Clear();
btn_Search.IsEnabled = false;
cmb_DriveLetter.Items.Clear();
foreach (var d in DriveInfo.GetDrives().Where(d => d.DriveType == DriveType.CDRom))
{
if (d.IsReady == true)
{
TXT_OutputFilename.Text = d.VolumeLabel;
txt_OutputFilename.Text = d.VolumeLabel;
if (TXT_OutputFilename.Text == "")
if (txt_OutputFilename.Text == "")
{
TXT_OutputFilename.Text = "unknown";
txt_OutputFilename.Text = "unknown";
}
CB_DriveLetter.Items.Add(d.Name.Replace(":\\", ""));
CB_DriveLetter.SelectedIndex = 0;
TXT_OutputDirectory.Text = "ISO" + "\\" + TXT_OutputFilename.Text + "\\";
LBL_Status.Content = "CD or DVD found ! Choose your Disc Type";
BTN_Start.IsEnabled = true;
CB_DriveSpeed.Text = "8";
cmb_DriveLetter.Items.Add(d.Name.Replace(":\\", ""));
cmb_DriveLetter.SelectedIndex = 0;
txt_OutputDirectory.Text = "ISO" + "\\" + txt_OutputFilename.Text + "\\";
lbl_Status.Content = "CD or DVD found ! Choose your Disc Type";
btn_Start.IsEnabled = true;
cmb_DriveSpeed.Text = "8";
}
else
{
LBL_Status.Content = "No CD or DVD found !";
lbl_Status.Content = "No CD or DVD found !";
}
BTN_Search.IsEnabled = true;
btn_Search.IsEnabled = true;
}
}
@@ -47,41 +59,38 @@ namespace DICUI
if (result == WinForms.DialogResult.OK)
{
String sPath = folderDialog.SelectedPath;
TXT_OutputDirectory.Text = sPath;
txt_OutputDirectory.Text = sPath;
}
}
public async void StartDumping()
{
String VAR_Type = "";
String VAR_Switches = "";
String VAR_DriveLetter = CB_DriveLetter.Text;
String VAR_OutputDirectory = TXT_OutputDirectory.Text;
String VAR_OutputFilename = TXT_OutputFilename.Text;
String VAR_DriveSpeed = CB_DriveSpeed.Text;
Boolean VAR_IsPSX = false;
Boolean VAR_IsXBOXorPS4 = false;
BTN_Start.IsEnabled = false;
switch (Convert.ToString(CB_DiscType.Text))
driveLetter = cmb_DriveLetter.Text;
outputDirectory = txt_OutputDirectory.Text;
outputFileName = txt_OutputFilename.Text;
driveSpeed = cmb_DriveSpeed.Text;
btn_Start.IsEnabled = false;
switch (Convert.ToString(cmb_DiscType.Text))
{
#region Consoles
case "Bandai Playdia Quick Interactive System":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Bandai / Apple Pippin":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Commodore Amiga CD / CD32 / CDTV":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Mattel HyperScan":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Microsoft XBOX":
// Placeholder for later use
@@ -90,17 +99,17 @@ namespace DICUI
// Placeholder for later use
break;
case "Microsoft XBOX One":
VAR_Type = "bd";
VAR_Switches = "";
VAR_IsXBOXorPS4 = true;
discType = "bd";
processArguments = "";
isXboneOrPS4 = true;
break;
case "NEC PC-Engine / TurboGrafx CD":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "NEC PC-FX / PC-FXGA":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Nintendo GameCube":
// Placeholder for later use
@@ -112,48 +121,48 @@ namespace DICUI
// Placeholder for later use
break;
case "Panasonic 3DO":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Philips CD-i":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Sega CD / Mega CD":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Sega Dreamcast":
// Placeholder for later use
break;
case "Sega Saturn":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "SNK Neo Geo CD":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Sony PlayStation":
VAR_Type = "cd";
VAR_Switches = "/c2";
VAR_IsPSX = true;
discType = "cd";
processArguments = "/c2 20";
isPSX = true;
break;
case "Sony PlayStation 2 (CD-Rom)":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Sony PlayStation 2 (DVD-Rom)":
VAR_Type = "dvd";
VAR_Switches = "";
discType = "dvd";
processArguments = "";
break;
case "Sony PlayStation 3":
// Placeholder for later use
break;
case "Sony PlayStation 4":
VAR_Type = "bd";
VAR_Switches = "";
VAR_IsXBOXorPS4 = true;
discType = "bd";
processArguments = "";
isXboneOrPS4 = true;
break;
case "Sony PlayStation Portable":
// No-op - PSP can't be dumped with DIC
@@ -162,8 +171,8 @@ namespace DICUI
// Placeholder for later use
break;
case "VTech V.Flash - V.Smile Pro":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "ZAPiT Games Game Wave Family Entertainment System":
// Placeholder for later use
@@ -177,32 +186,32 @@ namespace DICUI
// Placeholder for later use
break;
case "Apple Macintosh (CD-Rom)":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Apple Macintosh (DVD-Rom)":
VAR_Type = "dvd";
VAR_Switches = "";
discType = "dvd";
processArguments = "";
break;
case "Fujitsu FM Towns series":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "IBM PC Compatible (CD-Rom)":
VAR_Type = "cd";
VAR_Switches = "/c2 /ns /sf /ss";
discType = "cd";
processArguments = "/c2 20 /ns /sf /ss";
break;
case "IBM PC Compatible (DVD-Rom)":
VAR_Type = "dvd";
VAR_Switches = "";
discType = "dvd";
processArguments = "";
break;
case "NEC PC-88":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "NEC PC-98":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Sharp X68000":
// Placeholder for later use
@@ -219,8 +228,8 @@ namespace DICUI
// Placeholder for later use
break;
case "Sega Lindbergh":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Sega Naomi":
// Placeholder for later use
@@ -241,49 +250,49 @@ namespace DICUI
#region Others
case "Audio CD":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "BD-Video":
VAR_Type = "bd";
VAR_Switches = "";
discType = "bd";
processArguments = "";
break;
case "DVD-Video":
VAR_Type = "dvd";
discType = "dvd";
break;
case "PalmOS":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Philips CD-i Digital Video":
// Placeholder for later use
break;
case "Photo CD":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "PlayStation GameShark Updates":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Tao iKTV":
// Placeholder for later use
break;
case "Tomy Kiss-Site":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
case "Video CD":
VAR_Type = "cd";
VAR_Switches = "/c2";
discType = "cd";
processArguments = "/c2 20";
break;
#endregion
case "Unknown":
default:
VAR_Type = "";
VAR_Switches = "";
discType = "";
processArguments = "";
break;
}
@@ -291,46 +300,45 @@ namespace DICUI
() =>
{
Process process = new Process();
process.StartInfo.FileName = "Release_ANSI\\DiscImageCreator.exe";
process.StartInfo.Arguments = VAR_Type + " " + VAR_DriveLetter + " \"" + VAR_OutputDirectory + "\\" + VAR_OutputFilename + "\" " + VAR_DriveSpeed + " " + VAR_Switches;
process.StartInfo.FileName = dicPath; // TODO: Make this configurable in UI
process.StartInfo.Arguments = discType + " " + driveLetter + " \"" + outputDirectory + "\\" + outputFileName + "\" " + driveSpeed + " " + processArguments;
Console.WriteLine(process.StartInfo.Arguments);
process.Start();
process.WaitForExit();
});
if (VAR_IsXBOXorPS4 == true)
if (isXboneOrPS4 == true)
{
using (StreamWriter writetext = new StreamWriter("PS4orXBOXONE.bat"))
// TODO: Add random string / GUID to end of batch file name so that multiple instances can run at once
using (StreamWriter writetext = new StreamWriter("XboneOrPS4.bat"))
{
writetext.WriteLine("sg_raw.exe -v -r 4100 -R " + VAR_DriveLetter + ":" + "ad 01 00 00 00 00 00 00 10 04 00 00 -o \"PIC.bin\"");
writetext.WriteLine("sg_raw.exe -v -r 4100 -R " + driveLetter + ": " + "ad 01 00 00 00 00 00 00 10 04 00 00 -o \"PIC.bin\"");
}
Process processps4orxboxone = new Process();
processps4orxboxone.StartInfo.FileName = "PS4orXBOXONE.bat";
processps4orxboxone.Start();
processps4orxboxone.WaitForExit();
Process processXboneOrPS4 = new Process();
processXboneOrPS4.StartInfo.FileName = "XboneOrPS4.bat";
processXboneOrPS4.Start();
processXboneOrPS4.WaitForExit();
}
if (VAR_IsPSX == true)
if (isPSX == true)
{
// TODO: Add random string / GUID to end of batch file name so that multiple instances can run at once
using (StreamWriter writetext = new StreamWriter("PSX.bat"))
{
writetext.WriteLine("edccchk" + " " + "\"" + VAR_OutputDirectory + "\\" + VAR_OutputFilename + ".bin" + "\" > " + "\"" + VAR_OutputDirectory + "\\" + "edccchk1.txt");
writetext.WriteLine("edccchk" + " " + "\"" + VAR_OutputDirectory + "\\" + VAR_OutputFilename + " (Track 1).bin" + "\" > " + "\"" + VAR_OutputDirectory + "\\" + "edccchk1.txt");
writetext.WriteLine("edccchk" + " " + "\"" + VAR_OutputDirectory + "\\" + VAR_OutputFilename + " (Track 01).bin" + "\" > " + "\"" + VAR_OutputDirectory + "\\" + "edccchk1.txt");
writetext.WriteLine("psxt001z" + " " + "\"" + VAR_OutputDirectory + "\\" + VAR_OutputFilename + ".bin" + "\" > " + "\"" + VAR_OutputDirectory + "\\" + "psxt001z1.txt");
writetext.WriteLine("psxt001z" + " " + "\"" + VAR_OutputDirectory + "\\" + VAR_OutputFilename + " (Track 1).bin" + "\" > " + "\"" + VAR_OutputDirectory + "\\" + "psxt001z2.txt");
writetext.WriteLine("psxt001z" + " " + "\"" + VAR_OutputDirectory + "\\" + VAR_OutputFilename + " (Track 01).bin" + "\" > " + "\"" + VAR_OutputDirectory + "\\" + "psxt001z3.txt");
writetext.WriteLine("psxt001z" + " " + "--libcrypt " + "\"" + VAR_OutputDirectory + "\\" + VAR_OutputFilename + ".sub\" > " + "\"" + VAR_OutputDirectory + "\\" + "libcrypt.txt");
writetext.WriteLine("psxt001z" + " " + "--libcryptdrvfast " + VAR_DriveLetter + " > " + "\"" + VAR_OutputDirectory + "\\" + "libcryptdrv.log");
writetext.WriteLine("edccchk" + " " + "\"" + outputDirectory + "\\" + outputFileName + ".bin" + "\" > " + "\"" + outputDirectory + "\\" + "edccchk1.txt");
writetext.WriteLine("edccchk" + " " + "\"" + outputDirectory + "\\" + outputFileName + " (Track 1).bin" + "\" > " + "\"" + outputDirectory + "\\" + "edccchk1.txt");
writetext.WriteLine("edccchk" + " " + "\"" + outputDirectory + "\\" + outputFileName + " (Track 01).bin" + "\" > " + "\"" + outputDirectory + "\\" + "edccchk1.txt");
writetext.WriteLine("psxt001z" + " " + "\"" + outputDirectory + "\\" + outputFileName + ".bin" + "\" > " + "\"" + outputDirectory + "\\" + "psxt001z1.txt");
writetext.WriteLine("psxt001z" + " " + "\"" + outputDirectory + "\\" + outputFileName + " (Track 1).bin" + "\" > " + "\"" + outputDirectory + "\\" + "psxt001z2.txt");
writetext.WriteLine("psxt001z" + " " + "\"" + outputDirectory + "\\" + outputFileName + " (Track 01).bin" + "\" > " + "\"" + outputDirectory + "\\" + "psxt001z3.txt");
writetext.WriteLine("psxt001z" + " " + "--libcrypt " + "\"" + outputDirectory + "\\" + outputFileName + ".sub\" > " + "\"" + outputDirectory + "\\" + "libcrypt.txt");
writetext.WriteLine("psxt001z" + " " + "--libcryptdrvfast " + driveLetter + " > " + "\"" + outputDirectory + "\\" + "libcryptdrv.log");
}
Process processpsx = new Process();
processpsx.StartInfo.FileName = "PSX.bat";
processpsx.Start();
processpsx.WaitForExit();
}
BTN_Start.IsEnabled = true;
btn_Start.IsEnabled = true;
}
public MainWindow()
@@ -339,7 +347,7 @@ namespace DICUI
ScanForDisk();
}
private void BTN_Start_Click(object sender, RoutedEventArgs e)
private void btn_Start_Click(object sender, RoutedEventArgs e)
{
StartDumping();
}
@@ -349,24 +357,55 @@ namespace DICUI
BrowseFolder();
}
private void BTN_Search_Click(object sender, RoutedEventArgs e)
private void btn_Search_Click(object sender, RoutedEventArgs e)
{
ScanForDisk();
}
private void CB_DiscType_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
private void cmb_DiscType_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
{
LBL_Status.Content = "Ready to dump";
lbl_Status.Content = "Ready to dump";
}
private void CB_DriveSpeed_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
private void cmb_DriveSpeed_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
{
if (CB_DriveSpeed.SelectedIndex == 4)
// TODO: Figure out how to keep the list of items while also allowing the custom input
if (cmb_DriveSpeed.SelectedIndex == 4)
{
CB_DriveSpeed.Items.Clear();
CB_DriveSpeed.IsEditable = true;
cmb_DriveSpeed.Items.Clear();
cmb_DriveSpeed.IsEditable = true;
}
}
private void cmb_DiscType_DropDownClosed(object sender, EventArgs e)
{
switch (Convert.ToString(cmb_DiscType.Text))
{
case "Sony PlayStation 4":
cmb_DriveSpeed.Items.Clear();
cmb_DriveSpeed.IsEnabled = false;
break;
case "Microsoft XBOX One":
cmb_DriveSpeed.Items.Clear();
cmb_DriveSpeed.IsEnabled = false;
break;
default:
cmb_DriveSpeed.IsEnabled = true;
cmb_DriveSpeed.Items.Clear();
cmb_DriveSpeed.Items.Add("4");
cmb_DriveSpeed.Items.Add("8");
cmb_DriveSpeed.Items.Add("16");
cmb_DriveSpeed.Items.Add("48");
cmb_DriveSpeed.Items.Add("Custom");
cmb_DriveSpeed.SelectedIndex = 1;
break;
}
}
}
}

View File

@@ -1,26 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace DICUI.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.6.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
}
}

View File

@@ -1,7 +0,0 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="uri:settings" CurrentProfile="(Default)">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>

View File

@@ -1,10 +1,16 @@
# DICUI
This is my current progress on my C# Disc Image Creator UI.
I am using Disc Image Creator, created by Sarami, and would like to thanks him for this great software.
You can get the latest code and released on his github right here:
https://github.com/saramibreak/DiscImageCreator
I'm a hobbyist programmer, so this code might not be optimal, feel free to make your recommendation / Pull request.
I would like this project to be a community project, so if you have some time and knowledge to give, I'll be glad to add you to the contributor of this project :)
--------------------------------------------------------------------------
Currently working on the project:
ReignStumble - Lead Developer
@@ -16,8 +22,21 @@ NHellFire - Contributer
Dizzzy - Concept/Ideas/Beta tester
2018-05-14
--------------------------------------------------------------------------
2018-05-18
--------------------------------------------------------------------------
Version 1.01c released:
Version 1.02 released:
- Fixed XBOX One and PS4 Drive Speed issue.
- Started implementing DiscImageCreator Path selection.
- Conforming my naming for objects and variable.
--------------------------------------------------------------------------
2018-05-14
--------------------------------------------------------------------------
Version 1.01d released:
Download the latest release here:
https://github.com/reignstumble/DICUI/releases