dreamend: For whatever reason, the CZ-101/1000 doesn't spit out the data in the perfect way so that you can simply reverse the process. When requested, the CZ gives you the data you asked for, which is what we went through with the multi-step process. To reverse the process, and to put that information BACK on the CZ, you have to rephrase the header. You have to edit the header a little bit to politely request the CZ to store the data. Every time you ask the CZ for a patch, it gives you some hex data that starts like this: F0 44 00 00 70 30 00 00 00 00 00 ... F7 For the purpose of this discussion, let's divide the big message into a header portion, and the body of the message: -----Header------- ------Body------------ [F0 44 00 00 70 30] [00 00 00 00 00 ... F7] The header portion needs to be edited so that the CZ will know to store the data in a certain memory location. With the header as it is, it is saying: F0 "hello" 44 00 00 "Casio machine" 70 "using channel 1" 30 "okay" You want to edit it to say something like: F0 "hello" 44 00 00 "Casio machine" 70 "using channel 1" 20 "store a patch" 20 "In INTERNAL memory 1" So the stored data you have looks like this at the beginning: F0 44 00 00 70 30 You need to change it to say: F0 44 00 00 70 20 20 Notice that YOU HAVE TO ADD A BYTE, a byte which says which memory location to store it in. Without this, nothing will happen. You can add this byte using a hex editor, but it's much easier to do it with MIDIOX, right when the patch is being saved. You have to change the seventh byte so that each patch is stored in a different location, like this: F0 44 00 00 70 20 20 - store a patch in INTERNAL 1 F0 44 00 00 70 20 21 - store a patch in INTERNAL 2 F0 44 00 00 70 20 22 - store a patch in INTERNAL 3 F0 44 00 00 70 20 23 - store a patch in INTERNAL 4 ... ... F0 44 00 00 70 20 2F - store a patch in INTERNAL 16 I wish this was easier to do, but that's what you get with old keyboards. Lucky it has sysex at all. The Casio CZ-1 just gives out the data in ready-to-go format. TO SUMMARIZE: In the header of the sysex data you stored, change the 30 to a 20, and then add a byte right after the 20 that says what memory bank to store it in. Let me know how it goes. --- In CZsynth@yahoogroups.com, "dreamend" <dreamend@...> wrote: > > > > > It works!!!! Thank you so much, steve and fuifl-objective. That's > really helpful of you, it seems I was messing up the midi channel by > always setting it as `2' by setting it to `1'. > > So now I understand both sysex and hex better! Wayhey, I thought'd I'd > I was never gonna figure this out. > > Thanks a bunch both of you, you deserve CZ medals of honour... :) > > Oh and er, how do you send the recieved sysex back out.... I tried > just a straight send but the sound didn't change.... >
Message
Re: Can someone help with requesting a sysex voice data dump from my cz-1000? Pl
2009-03-01 by Fulfil Objective
Attachments
- No local attachments were found for this message.