Skip to content
This repository has been archived by the owner on Sep 1, 2022. It is now read-only.

Commit

Permalink
- V1.3
Browse files Browse the repository at this point in the history
- Log Window that updates in realtime
- Some tweaks in log messages
  • Loading branch information
john32b committed Mar 29, 2018
1 parent 1ff480a commit 10c4731
Show file tree
Hide file tree
Showing 26 changed files with 458 additions and 114 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.MD
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
## CHANGELOG

### V1.3
- Added LOG window. You can now see a realtime log by pressing the "LOG" button on the bottom right of the window
- Upgraded version to 1.3, because many new features were added since 1.2

### V1.2.4
- Progress Bar now reports total progress correctly and updates more frequently
- Progress Report on taskbar and window title
Expand Down
15 changes: 7 additions & 8 deletions README.MD
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@

# CDCRUSH dot NET

**Name**: cdcrush, *Highy compress cd-image games*\
**Author:** John Dimi, <johndimi@outlook.com> *twitter*: [@jondmt](https://twitter.com/jondmt)\
**Project Page and Sources:** [https://github.com/johndimi/cdcrush.net](https://github.com/johndimi/cdcrush.net)\
**Language:** C# .NET 4.5, **Licence:** MIT\
**Version:** 1.2.4 **Platform:** Windows
**Version:** 1.3 **Platform:** Windows

## Download

Expand All @@ -15,7 +14,7 @@ Available for **windows** only.

## What is it

![](https://i.imgur.com/wGMpNAP.png)
![CDCRUSH LOGO](images/logo.png)

**cdcrush** is a tool that can highly compress **CD based games** *( playstation 1, Pc-engine, etc )* for storage / sharing purposes. **ALSO** it can encode the audio tracks of a CD and create a `.cue` file with *(mp3/ogg/flac)* tracks for use in emulators.

Expand Down Expand Up @@ -56,11 +55,11 @@ Available for **windows** only.
- When selecting an **output folder** you will be asked to save a dummy file, that file will not ever be written and the program will select the folder of that file.
- You can download the release without **FFmpeg** if you already have it, just be sure to set it up in the `settings` tab.
- :star2: **NEW since 1.2.4** : You can see the detailed info of a CD along with the tracks checksum. When restoring a CD, click the `Detailed Info` button. And for when crushing a CD, the button will become active AFTER the operation is complete.

- :scroll: **NEW since 1.3** : Logging. You can click the `log` button on the bottom right of the window to open the main log. It's an advanced feature, use it in case something goes wrong to get more detailed info.

## :cd: Crushing a CD (*Compressing* )

![Crushing a CD screen](https://i.imgur.com/FIKj4eG.png)
![Crushing a CD screen](images/tab_compress.png)
- Select an input file ( **.cue** ). You can drop it in the window or click the **[...]** button to select one
- Optionally set an output folder, the final **.arc** file will be created there, auto-named after the CD title
- Optionally set a cover image by dropping a **.jpg** file in the window, or by clicking on the image placeholder
Expand All @@ -73,7 +72,7 @@ Available for **windows** only.

## :arrows_clockwise: Restoring a CD

![Restoring a CD screen](https://i.imgur.com/tmQncxk.png)
![Restoring a CD screen](images/tab_restore.png)

- Select a previously crushed archive ( **.arc** ) to be restored. You can drop it in the window or click the **[...]** button to select one
- Optionally set an output folder, the (**.cue/.bin**) files will be created there, auto-named after the CD title
Expand All @@ -89,14 +88,14 @@ You can **convert** a `.cue/.bin` CD, into another `.cue/.bin` combo with **enco

To convert a CD, go to the **Compress a CD** screen and **tick** the`convert to .CUE/encoded Audio` checkbox, select the audio quality and click **CONVERT**. The new files are going to be generated under a subfolder to avoid overwriting the source .cue/.bin files.

![](https://i.imgur.com/sP8VdMU.png)
![Convert to encoded audio/cue Example](images/convert_example.png)
<sup>Example of what this operation does.</sup>

> **NOTE**: This can also be achieved when restoring a CD be ticking the `restore to .cue/encoded audio`
## :wrench: Settings tab

![](https://i.imgur.com/mtlI5DR.png)
![Settings tab](images/tab_settings.png)

**Temp Folder** :
You can set a custom temporary folder for the various background processes like FFmpeg. Useful if you have a RAMDRIVE. \
Expand Down
9 changes: 9 additions & 0 deletions cdcrush/cdcrush.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,12 @@
<Compile Include="forms\FormComponentsTest.Designer.cs">
<DependentUpon>FormComponentsTest.cs</DependentUpon>
</Compile>
<Compile Include="forms\FormLog.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="forms\FormLog.Designer.cs">
<DependentUpon>FormLog.cs</DependentUpon>
</Compile>
<Compile Include="forms\FormMain.cs">
<SubType>Form</SubType>
</Compile>
Expand Down Expand Up @@ -139,6 +145,9 @@
<EmbeddedResource Include="forms\FormComponentsTest.resx">
<DependentUpon>FormComponentsTest.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="forms\FormLog.resx">
<DependentUpon>FormLog.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="forms\FormMain.resx">
<DependentUpon>FormMain.cs</DependentUpon>
</EmbeddedResource>
Expand Down
7 changes: 4 additions & 3 deletions cdcrush/forms/FormChecksums.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions cdcrush/forms/FormChecksums.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ public partial class FormChecksums: Form
// --
CueReader cd;

static public bool ISOPEN = false;

// --
public FormChecksums(CueReader _cd)
{
Expand All @@ -30,12 +32,18 @@ protected override void OnLoad(EventArgs e)
textbox.Text+= " - Detailed CD Info" + Environment.NewLine;
textbox.Text+= "---------------------------------" + Environment.NewLine;
textbox.Text+= cd.getDetailedInfo();
ISOPEN = true;
}// -----------------------------------------

// --
private void btn_close_Click(object sender, EventArgs e)
{
Close();
}// -----------------------------------------

private void FormChecksums_FormClosing(object sender, FormClosingEventArgs e)
{
ISOPEN = false;
}
}// --
}// --
65 changes: 65 additions & 0 deletions cdcrush/forms/FormLog.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

36 changes: 36 additions & 0 deletions cdcrush/forms/FormLog.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace cdcrush.forms
{
public partial class FormLog: Form
{

public static bool ISOPEN = false;

public FormLog()
{
InitializeComponent();
}// -------------------

private void FormLog_Load(object sender, EventArgs e)
{
lib.LOG.attachTextBox(textBox,true);
ISOPEN = true;
}// -------------------

private void FormLog_FormClosing(object sender, FormClosingEventArgs e)
{
lib.LOG.detachTextBox();
ISOPEN = false;
}// -------------------

}//--
}// --
120 changes: 120 additions & 0 deletions cdcrush/forms/FormLog.resx
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
Loading

0 comments on commit 10c4731

Please sign in to comment.