PCG Tools for Korg M50

Discussion relating to the Korg M50 Workstation.

Moderators: Sharp, X-Trade, Pepperpotty, karmathanever

User avatar
michelkeijzers
Approved Merchant
Approved Merchant
Posts: 9112
Joined: Thu Feb 08, 2007 3:10 pm
Location: Netherlands
Contact:

PCG Tools for Korg M50

Post by michelkeijzers »

For those who have followed the Korg Kronos or Korg Oasys threads, may know I have been busy with an app for getting information out of PCG files.

What can it do with these files:
- show a list per program, where it is used (in which combis/set list slots)
- show a list per combi, which programs are used
- sorting programs alphabetically
- sorting combis alphabetically
- sorting set lists alphabetically

The good news is that it will soon (within a few days) also support Korg M50 PCG files.

For more information see the main thread:
http://www.korgforums.com/forum/phpBB2/ ... hp?t=63765
Image
Developer of the free PCG file managing application for most Korg workstations: PCG Tools, see https://www.kronoshaven.com/pcgtools/
runeharpun
Full Member
Posts: 208
Joined: Sun Jan 11, 2009 12:08 pm
Location: Norway

Post by runeharpun »

Great :). Can it find out if a program is different to it's factory default?
User avatar
michelkeijzers
Approved Merchant
Approved Merchant
Posts: 9112
Joined: Thu Feb 08, 2007 3:10 pm
Location: Netherlands
Contact:

Post by michelkeijzers »

runeharpun wrote:Great :). Can it find out if a program is different to it's factory default?
Not completely, however if you generate a list of which programs are used by which combis (it can be done with the app in seconds) and you do the same with the factory list you can find out (with a generic text diff program) if programs have been changed.

You also can generate a patch list of both and diff them to see if patch names are changed or patches have been added/deleted.

You cannot see if parameters have been changed for now.

However, to fully meet your wish I will add it to the wish list. It seems like a valuable function. Thanks for the response and idea!
Image
Developer of the free PCG file managing application for most Korg workstations: PCG Tools, see https://www.kronoshaven.com/pcgtools/
runeharpun
Full Member
Posts: 208
Joined: Sun Jan 11, 2009 12:08 pm
Location: Norway

Post by runeharpun »

Thanks. The actual change is less important than knowing that something is changed in a program.

You would probably get into trouble if you include the fabric default PCG in your program for a diff. I suggest you make a md5 checksum of each of the original programs for validation against the current version.
User avatar
michelkeijzers
Approved Merchant
Approved Merchant
Posts: 9112
Joined: Thu Feb 08, 2007 3:10 pm
Location: Netherlands
Contact:

Post by michelkeijzers »

runeharpun wrote:Thanks. The actual change is less important than knowing that something is changed in a program.

You would probably get into trouble if you include the fabric default PCG in your program for a diff. I suggest you make a md5 checksum of each of the original programs for validation against the current version.
I want to diff on a patch by patch basis. So you will get something like:

Patch Difference List

Code: Select all

Program        C034: Grand Piano
Program        D025: ...
Combi          A100: ...
Set List Item  012/012
...
Note: set list items are for Kronos only.

I will not check for arpeggio, drumkit, global differences.
(and of course it is not implemented ... I have several other items on my wish list too).
Image
Developer of the free PCG file managing application for most Korg workstations: PCG Tools, see https://www.kronoshaven.com/pcgtools/
runeharpun
Full Member
Posts: 208
Joined: Sun Jan 11, 2009 12:08 pm
Location: Norway

Post by runeharpun »

I was talking per patch. I assume you can just fetch a block of the PCG file containing the patch. If you generate the md5 on this, you would get hashes for each patch :)

EDIT: I guess some parameters are stored as references, like arpeggios. So those would obviously be harder to get correct. But I think the sound parameters inside the patch is most important.

EDIT2: I notice you're from Netherland. So I guess I should point out that I am taking about the computer-hash :lol:
Last edited by runeharpun on Tue Aug 09, 2011 10:00 am, edited 1 time in total.
User avatar
michelkeijzers
Approved Merchant
Approved Merchant
Posts: 9112
Joined: Thu Feb 08, 2007 3:10 pm
Location: Netherlands
Contact:

Post by michelkeijzers »

There are certain parameters which I can get directly, like patch name, status (Off/Int/Ext/Ex2), Muted On/Off and used programs and banks in a combi. To do a real differ I should implement ALL parameters which is not my goal so an MD5 seems a good way. I also can do a real diff (like differ every single byte in a patch). That way I also can take into account changed names but parameters being equal.
Image
Developer of the free PCG file managing application for most Korg workstations: PCG Tools, see https://www.kronoshaven.com/pcgtools/
User avatar
michelkeijzers
Approved Merchant
Approved Merchant
Posts: 9112
Joined: Thu Feb 08, 2007 3:10 pm
Location: Netherlands
Contact:

Post by michelkeijzers »

I also can use it to count how many differences there are. That way I can generate lists of patches inside one PCG file which are (almost) equal.
Image
Developer of the free PCG file managing application for most Korg workstations: PCG Tools, see https://www.kronoshaven.com/pcgtools/
runeharpun
Full Member
Posts: 208
Joined: Sun Jan 11, 2009 12:08 pm
Location: Norway

Post by runeharpun »

You wrote in another thread that you offered the source code. Can you PM me your email address?

R
User avatar
michelkeijzers
Approved Merchant
Approved Merchant
Posts: 9112
Joined: Thu Feb 08, 2007 3:10 pm
Location: Netherlands
Contact:

Post by michelkeijzers »

runeharpun wrote:You wrote in another thread that you offered the source code. Can you PM me your email address?

R
Yes the code is for free, but it's under construction of course.
I will PM you my email (but it's more a request for your email so I can send the code).
Image
Developer of the free PCG file managing application for most Korg workstations: PCG Tools, see https://www.kronoshaven.com/pcgtools/
User avatar
michelkeijzers
Approved Merchant
Approved Merchant
Posts: 9112
Joined: Thu Feb 08, 2007 3:10 pm
Location: Netherlands
Contact:

Post by michelkeijzers »

The app now supports all M50 PCG files.

For everybody interested in the app and/or the code, message me.

If you have any ideas, improvements, tips, experiences or problems, send them or place them here.

See the link in my signature for detailed information about the app.

The app is FREE.

Have fun, Michel
Image
Developer of the free PCG file managing application for most Korg workstations: PCG Tools, see https://www.kronoshaven.com/pcgtools/
User avatar
michelkeijzers
Approved Merchant
Approved Merchant
Posts: 9112
Joined: Thu Feb 08, 2007 3:10 pm
Location: Netherlands
Contact:

Post by michelkeijzers »

0.1.5.62 14-Aug-2011
Feature: All lists can be generated in XML format.
Improv: Output file can be set (and opened by connected application)
Improv: Screen layout changed.
Bug fix: CSV File format improved (can handle commas in names of patches)
Bug fix: If the PCG file cannot be read, the app does not crash but gives a message box.

I also spent time for making a command line interface (passing arguments instead of a GUI), but this cannot be published on the usual way. If somebody wants that version, please let me know and I will send it.

See the link in my signature for all details about the app.
Image
Developer of the free PCG file managing application for most Korg workstations: PCG Tools, see https://www.kronoshaven.com/pcgtools/
User avatar
michelkeijzers
Approved Merchant
Approved Merchant
Posts: 9112
Joined: Thu Feb 08, 2007 3:10 pm
Location: Netherlands
Contact:

Post by michelkeijzers »

And it is time for another update. This time as promised something for everybody (not supporting more synth models this time).

This time differences lists are added. Some fragments look as follows:

Code: Select all

Program I-A074
 6 Diffs: U-E062 
...
Program U-A000
 6 Diffs: U-A001 
 7 Diffs: U-A002 
...
Set List Slot 000/024
 4 Diffs: 000/027 
 8 Diffs: 000/025 
 25 Diffs: 000/029 
...
Set List Slot 000/030
 24 Diffs: 000/031 
This list shows for every program, combi and set list their similar patches. You can define how many bytes a patch should differ maximally and you can select to ignore patch names and ignore descriptions (for set list slots). Of course most usual options apply (like selecting which program, combi banks and set lists to take into account) and output is in text, CSV or XML.

Some ideas to use this lists for:
- you have once copied programs or combis but you are forgotten where you copied them from (or you want to have a list of them)
- you can check if someone just copied patches with small differences or if it are real new patches
- you want to know which patches are equal or similar.

However, take into account that one byte difference can make a very big difference, it depends on the parameter but this is almost impossible to automate.

0.1.6.64 18-Aug-2001
Feature: Differences List.
Improv: Changed parameters in command line interface.
Image
Developer of the free PCG file managing application for most Korg workstations: PCG Tools, see https://www.kronoshaven.com/pcgtools/
User avatar
michelkeijzers
Approved Merchant
Approved Merchant
Posts: 9112
Joined: Thu Feb 08, 2007 3:10 pm
Location: Netherlands
Contact:

Post by michelkeijzers »

It has been some time ago I updated PCG Tools. Reasons where:
- vacation (away from computer)
- thinking about what to create next
- checksum for Kronos PCG files

With some help of others (thanks), I have managed to be able not only generate lists (existing functionality), but also:

PATCH LISTS ON GUI: All patches are shown on the GUI. This makes it possible to select them to perform actions like:

EDIT PROGRAM NAMES: From now on you can edit names of any program in a PCG file.

EDIT COMBI NAMES: Same but for combination names.

EDIT SET LIST NAMES: Same but for set lists.

EDIT SET LIST DESCRIPTIONS: Tired of editing those (max) 512 characters in the Kronos: do it from a normal keyboard instead!

Much more features will be added (hopefully) soon.


Update involves:
0.2.0.75 3-Sep-2011
Feature: Show banks with programs, combis and set list slots on GUI.
Feature: Ability to change names of Programs, Combis and Set List Slots.
Feature: Ability to change descriptions of Set List Slots.
Improv: CHanged text "Kronos PCG File Name" to "PCG File Name.
Bug Fix: Default settings/enabling of UI checkboxes for filtering on text.
Image
Developer of the free PCG file managing application for most Korg workstations: PCG Tools, see https://www.kronoshaven.com/pcgtools/
User avatar
michelkeijzers
Approved Merchant
Approved Merchant
Posts: 9112
Joined: Thu Feb 08, 2007 3:10 pm
Location: Netherlands
Contact:

Post by michelkeijzers »

A new version is released.

EASY MOVING OF PROGRAMS AND COMBIS WITHIN A BANK
When programs are moved, automatically the combis using those programs will be fixed.

Furthermore, some fixes have been done. See details below for the full change list.

Code: Select all

0.2.1.78     7-Sep-2011 Feature: Moving programs, combis, set list slots up and down with automatic reference updating.
            10-Sep-2011 Support: Support for Korg Triton (Classic), Triton Rack, Triton Le, Triton Le88, Triton Studio,
                                 Triton TR 61/76/88.
                        Support: Support for Korg Karma.
                        Bug Fix: Fixed reading of Korg Triton PCGs with MOSS programs.
Image
Developer of the free PCG file managing application for most Korg workstations: PCG Tools, see https://www.kronoshaven.com/pcgtools/
Post Reply

Return to “Korg M50”