[UTIL][24MAY10]PreKitchen Tool (Sort, Clean, Merge and create folders)

Search This thread

TehPenguin

Retired Senior Moderator
Nov 2, 2006
593
5
Redmond
dpaoliello.wordpress.com
(Formerly "Dump Sorter" and "XipDumpSort")

New and Improved - Much more functionality than the old one!
I'm trying to make this a general cleaning\sorting\worker app for processing dumped folders. If you'd like a feature added, please let me know.

What is it?
This is a simple program designed to take the hard work out of rearranging, cleaning and merging dumped ROMs with Kitchens.

What can it do?
  • Clean - Removed all files with the same name as their directories (This is very useful when converting files to modules)
  • Sort - Files and Folders can be sorted by:
    • Ervius Kitchen's folder format
    • osKitchen's folder format
    • By comparing to a donor folder (should work with any kitchen)
  • Unsort from:
    • Ervius Kitchen's folder format
    • osKitchen's folder format
  • Merge missing file and folders from a donor directory (useful when the dump is missing files\folders) (SVN Directories are ignored ('.svn' and '_svn'))

How to install
Click the 'Install' button at http://vidmes.com/dumpsorter/publish.htm
(In order to use the 'launch' link, you need to be using IE)
(Alternatively, just use the zip below)

Notes
Merging is done last, so if the donor directory is 'dirty', this 'dirt' will be copied across

This requires .NET 3.5

Also attached is the source code (for anybody interested) - the project was built using Visual Studio 2010, so it may not open in older versions of VS

Known Issues

Things to do
  • Get a logo\icon
  • Ability to pull data from archives (eg zip, rar and 7 zip)

Changelog
Version numbers: <installer version> (<executable version>)

* 0.3.0.3 (0.3.3796.19478)
Fixed: Settings in ComboBoxes would not save (e.g. language, resolution, etc)
WARNING: Upgrading to 0.3.0.3 will wipe any of your current settings

* 0.3.0.2 (0.3.3789.38088)
Fixed: Bug where the 'Browse' button for selecting the donor folder to clone didn't do anything

* 0.3.0.1 (0.3.3734.42067)
Added: Support for OndraStar's osKitchen (sorting, unsorting, creating blank folders)

* 0.3.0.0 (0.3.3733.25038)
Added: Ability to unsort from Ervius format
Added: Ability to only sort DPI\RES\LANG that you actually want

* 0.2.0.1 (0.2.3518.38275)
Added: Ability to invert log
Added: Update log on the fly (instead of at the end)
Fixed: Progress bar go to 100% when complete (or reset afterwards)

* 0.2.0.0 (0.2.3516.36999)
Added: Ability to create a default folder layout for Ervius SYS

* 0.2.3516.24314
Added: About box
Fixed: Merger now ignores SVN directories ('.svn' and '_svn')

* 0.2.3516.23053
Added: Cleaner (remove files with same name as directory)
Added: Sorter for Ervius SYS format
Added: Merger (file and folder)
Fixed: Sorter now removes 'unsorted' directory if it is empty

* 1.0.3509.31117
Fixed: Browse buttons now re-enable after sorting is complete

* 1.0.3497.39310
Initial release
 
Last edited:

ivanmmj

Retired Moderator
Jan 3, 2007
5,165
54
40
This thing is awesome. It's perfect for organizing SYS folders for any kitchen based on ervius's visual kitchen.
 

DarkAngelFR

Senior Member
Aug 29, 2008
203
1
Lille
blog.idlezone.org
Hello,
Thanks for this tool, it's really nice!!!
Just small thing added to your code :
Code:
void bgwDoSorting_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
	txtLog.Text = (string)e.UserState;
	pgbrStatus.Value = (e.ProgressPercentage > 100) ? 100 : e.ProgressPercentage;
}
and :
Code:
//old : bgwDoSorting.ReportProgress(workDone * 100 / workTotal);
bgwDoSorting.ReportProgress(workDone * 100 / workTotal, result);
I also reverse the log to have latest lines on top (log+newline instead of newline+log)
:p

Thanks for the great job!!
 
Last edited:

TehPenguin

Retired Senior Moderator
Nov 2, 2006
593
5
Redmond
dpaoliello.wordpress.com
Hello,
Thanks for this tool, it's really nice!!!
Just small thing added to your code :
Code:
void bgwDoSorting_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
	txtLog.Text = (string)e.UserState;
	pgbrStatus.Value = (e.ProgressPercentage > 100) ? 100 : e.ProgressPercentage;
}
and :
Code:
//old : bgwDoSorting.ReportProgress(workDone * 100 / workTotal);
bgwDoSorting.ReportProgress(workDone * 100 / workTotal, result);
I also reverse the log to have latest lines on top (log+newline instead of newline+log)
:p

Thanks for the great job!!

I was considering that, but I think you'll find it will run a bit slower (due to having to constantly update the log box). Then again, if you have a dual processor machine (and who doesn't?), you probably won't notice a difference.
 

jmckeejr

Senior Member
Aug 11, 2008
1,768
68
Altoona, Pa
www.mckeeflooring.com
Any chance someone would also be interested in writing a batch file or simple program to delete duplicate files inside of a folder? ie: if there happened to be files inside of the module folder as well as the actual module files. So for example "tapres.dll" module folder for some reason has "tapres.dll" file inside. Would need to got hrough whole SYS though.
 

TehPenguin

Retired Senior Moderator
Nov 2, 2006
593
5
Redmond
dpaoliello.wordpress.com
Any chance someone would also be interested in writing a batch file or simple program to delete duplicate files inside of a folder? ie: if there happened to be files inside of the module folder as well as the actual module files. So for example "tapres.dll" module folder for some reason has "tapres.dll" file inside. Would need to got hrough whole SYS though.

Sure

Maybe I can change my sorter into a cleaner as well...

Any other 'common tasks' I should include?
Perhaps a tool to merge missing folders into the sorted folder? (eg if the new SYS or OEM is missing stuff from the old one)
 

DarkAngelFR

Senior Member
Aug 29, 2008
203
1
Lille
blog.idlezone.org
...Any other 'common tasks' I should include?...
Good ideas...
Maybe I add one : default template folder, for example specify DPI, RESV/H and Lang code(s) then go ;) should be usefull when adding a new language to an existing kitchen who don't have the full folder structure yet for the new language :rolleyes:
If you need help do not hesitate!

PS: about performance, as you said everyone have dualcore computers at least so backgroundworker + log refresh is not slowing the process, and if it is it's not really visible (I'm not working on 1000000 files for 1000 languages so...)
 

TehPenguin

Retired Senior Moderator
Nov 2, 2006
593
5
Redmond
dpaoliello.wordpress.com
I've rebuilt the backend to be more 'flexible' (ie custom workers and sorters).

I will build the cleaner and the extra sorter some time soon and have it posted up - don't expect anything too soon though...

Attached is the updated source code
(You should be able to tweak the .sln file to work in Visual Studio 2008)
 

Attachments

  • DumpSorter.zip
    18.6 KB · Views: 89

DarkAngelFR

Senior Member
Aug 29, 2008
203
1
Lille
blog.idlezone.org
.Net 3.5 include 2.0 but you don't need to remove 2.0 before installing 3.5...
If you use windows update it will be big but not as big as if you download the full package from microsoft (it will just take kind of missing parts)
I like the way microsoft made all this framework, you can setup 3.5 without any problem to your existing 2.0 (or 1.1) applications.....more and more programs are using it so it's not a time loosing install for me..
 

TehPenguin

Retired Senior Moderator
Nov 2, 2006
593
5
Redmond
dpaoliello.wordpress.com
New version released!

Dump Sorter now has all of the features requested.

From the changelog:
* 0.2.3516.24314
Added: About box
Fixed: Merger now ignores SVN directories ('.svn' and '_svn')

* 0.2.3516.23053
Added: Cleaner (remove files with same name as directory)
Added: Sorter for Ervius SYS format
Added: Merger (file and folder)
Fixed: Sorter now removes 'unsorted' directory if it is empty
 

+ Que PPC

Inactive Recognized Developer
Mar 23, 2007
4,724
88
40
Guadalajara
es.youtube.com
Nice i saw your announcement in the release and came to see it... downloading and testing in the next release i seton the kitchen... maybe the tutorials will be useless :p... Thanks a lot man!!!
 

DarkAngelFR

Senior Member
Aug 29, 2008
203
1
Lille
blog.idlezone.org
hey there :)
Thanks for this update, will test today...
Missing screenshots on 1st post ;) lol
what about using ClickOnce so we can have auto updates of the program? If you need help hosting I may help.... :rolleyes: I love programs I like to be auto updated and it's really a small thing to do with VS (never tested with 2010)
Keep the good work, looks like we are coming to a complete "pre-kitchen tool"....