Home › Forums › General › General MIDI discussion › Demystify Cakewalk ins files
- This topic has 3 replies, 2 voices, and was last updated 4 years, 9 months ago by JT64.
-
AuthorPosts
-
June 24, 2019 at 11:17 am #115312
Some things pretty straighforward but when it comes to drum patches….
.Patch Names
[N364 GM Drums]
0 = GM Kit
16 = Power Kit
24 = Dance Kit
25 = Analog Kit
32 = Jazz Kit
40 = Brush Kit
48 = Orch Kit
64 = Perc KitIt is pretty clear to me although it does not say anything about the banks just programs “in the bank”
A bit later when banks should be loaded it get confusing…..Instrument Definitions
[KORG N364 Programs]
Control = N364 Controllers
RPN = N364 RPN
//I removed some other banks standard 0,1,2,3….
Patch[7169] = N364 Prog GM
Patch[7937] = N364 GM Drums
Patch[ * ] = 0. .127
Key[7937, 0] = N364 GM Kit
Key[7937, 16] = N364 Power Kit
Key[7937, 25] = N364 Dance Kit
Key[7937, 26] = N364 Analog Kit
Key[7937, 33] = N364 Jazz Kit
Key[7937, 41] = N364 Brush Kit
Key[7937, 48] = N364 Orch Kit
Key[7937, 65] = N364 Perc Kit
Drum[7937, * ] = 1Now i do know howto load the “drum ang gm” bank but i do not see how it relates to cakewalk ins files, because somehow the above must be used to load banks.
What i find utterly confusing is that DRUMS and GM bank is the same although DRUMS use number above 127. But how does it relate to this in the insfile, it seem like separate banks?
Patch[7169] = N364 Prog GM
Patch[7937] = N364 GM DrumsThe reason i ask is that i read in ins files with “javascript” to use for synth control, but to get any use beyond load just load programs, and standard banks (0,1,2,3) i must somehow decrypt the cakewalk instrument messages above.
Below is a little snippet of my code to set GM and DRUM in javascript. How does this relate to 7169 and 7937 in ins file is the mystery i would like explained/solved, as you see i use the GM bank for setting the drums and it apparently work. It would be nice if i could generalise “understand” the conversion so i can use the ins file fully to load “patches and banks”
So please anyone? I attached a bank instruction from Korg that i use.
//This i use to set drum bank and GM bank “which in reality seem to be the same? above / below 127”
if (bankNr==1){selectProgramMode();GM=56;bankNr=0;}
if (bankNr==0){selectProgramMode();GM=62;bankNr=0;}//CTRL 0 message
settingChange = [176,0,GM];
outportarr[outportindex].send(settingChange);
settingChange = [176,32,bankNr];
//CTRL 32 message
outportarr[outportindex].send(settingChange);
//This sends the program message
settingChange = [192,programnumber];
outportarr[outportindex].send(settingChange);Attachments:
You must be logged in to view attached files.June 24, 2019 at 1:15 pm #115314Another thing, to change program in GM or DRUM mode i have to send the full bank message, so i am probably doing something wrong in GM and DRUM mode. One would think that they should react to “a single program” change message, but they do not then need the CTRL 0 and 32 message coming with change.
Probably i do it all wrong.
June 24, 2019 at 4:07 pm #115317Just a guess about the Cakewalk mess:
The “change-to-bank3” message looks like this [b0 00 3e]
3e in binary is 111110
7937 in binary is 1111100000001. The upper 6 bits are 111110 = 3e
you could take some zeroes from the lower bits for the 2nd byte = 00The same with 7169 – in binary 1110000000001. Upper 6 bits = 111000 = 38 = the needed value.
Well, pretty messy…
About having to send bankchange in order to get GM patches: If the synth is NOT in GM-mode I guess this is how it was intended by Korg. You can put the synth into GM-mode by sending this message: f0 7e 7f 09 01 f7. If I get it right this is a standardized universal message for all GM capable synths. I haven’t tried this mode but in theory you should get all GM-patches by just sending program-change from 0 to 127.
June 24, 2019 at 7:29 pm #115322Well i checked the midi chart so it is the first byte that change, well i do not like it whole thing is utterly confusing.
1100nnnn 0ppppppp Program Change. This message sent when the patch number changes. (ppppppp) is the new program number.So
11000001=193
and then the program message well i guess i have to try. -
AuthorPosts
- The forum ‘General MIDI discussion’ is closed to new topics and replies.