PDA

View Full Version : TC Electronic Toneprint Hack?


binge
06-07-2011, 02:25 PM
So I was thinking, when you download a Toneprint all the settings for your pedal are in that file, correct? Well, I believe that there's bound to be a way that you can get in and manually change those settings and then load the Toneprint on to your pedal...

Has anyone tried this? I am using a Mac OS but didn't get very far, I can view the package contents of the Toneprint file but my lack of knowledge with the command line makes it difficult for me to go further. I think that you would need to use the command line to edit the source, or at least try to edit it.

Someone has to have some views on this.....right?

electrical
06-07-2011, 03:02 PM
Nahh, it wouldn't be in the command line... it would be in the source code itself. You need some form of a text editor. I can take a look at it later in the evening after I've freed up a bit. I'm also on Mac OS, but I also know a few programming languages.

kwaping
06-07-2011, 03:07 PM
Assuming it's some sort of plain-text file and not a binary...

Bombshell
06-07-2011, 03:28 PM
i can't imagine it being straight binary, although, a simple .cfg-style seems far too simple.

hope someone figures it out. i'm staying away from the Flashback until someone cracks it, or the official software comes out.

binge
06-07-2011, 03:28 PM
Nahh, it wouldn't be in the command line... it would be in the source code itself. You need some form of a text editor. I can take a look at it later in the evening after I've freed up a bit. I'm also on Mac OS, but I also know a few programming languages.

Cool! I checked out the file in the Contents folder via Text Edit and it was all garbage. Hopefully you can come up with something. I really think that this would work and don't see a reason why it wouldn't.

Just opened the file in the Contents folder with pico and it's all garbage too. I'm guessing you need some sort of disassemble command and then you'd need to reassmble after making changes...?

Just ran a otool command and got loads of this:

000ca793 popl %ecx
000ca794 pushl %ebp
000ca795 movl %esp,%ebp
000ca797 leal 0x0007fa4d(%ecx),%eax
000ca79d movl %eax,0x08(%ebp)
000ca7a0 leave
000ca7a1 jmpl 0x0014c1c7


This means nothing to me....

cj_wattage
06-07-2011, 04:02 PM
The Tone Print loader files are binary. You need a hex editor to get in there and make the changes. But first you have to figure out what to change, and that's not just listed in plain English (or Danish, for that matter). ;)

I've poked around with this already a little bit. It *should* be possible to make a Flashback Tone Print work on a Hall of Fame, and vice versa.

But the trick is, I think, in the "authentication" part of the Tone Print loader applications. Again, I *think* if we knew what the "challenge-response" process is (probably just a simple code check/verification), it would be possible to edit the Tone Print loader app so that it would load its Tone Print onto a different pedal. If you try to fire up a HOF Tone Print app with a Flashback connected, for example, the button that initiates the upload is greyed out, and it says "Not Connected" even though there is a pedal connected (just not the *right* pedal). So if the loader app can be convinced that the right pedal is connected even though it isn't, I think it will load the Tone Print.

I've been doing a little USB sniffing trying to get a full dump of the entire communication between the app and the pedal, but there is no software USB sniffer for Macs, and I don't have admin access to any Windows machines. But I may be able to get the data dump done tomorrow or perhaps this weekend some time.

This all might get deleted, but whatever. I don't want to cheat TC out of a pedal sale or anything. And I think if this actually works out, they'll sell more pedals. I'd buy another one. :) After all, it won't turn a Flasback into a HOF. It just allows the loading of one single program of the opposite pedal. And since you can't have two programs running at once, it's only sort of useful. But an interesting exercise nonetheless.

Stevil
06-07-2011, 04:21 PM
This all might get deleted, but whatever. I don't want to cheat TC out of a pedal sale or anything. And I think if this actually works out, they'll sell more pedals. I'd buy another one. :)

i've got a Vortex & a HoF. while they sound nice in a pedestrian sort of way, i put both back in the original packaging because i wasn't all that impressed with the current batch of sounds available & the only reason i havent sold or returned em is because i'm waiting to see if they or someone else will make it so i can do my own custom toneprints & see what these boxes can really do.

http://www.brainwashaudio.com/stevil/smile/popcorn.gif

cj_wattage
06-07-2011, 04:27 PM
i'm waiting to see if they or someone else will make it so i can do my own custom toneprints & see what these boxes can really do.
Well, that's a different issue. If TC releases some stripped down version of their program editor, that would be awesome. But what I'm talking about still just leaves you at the mercy of what they release.

Stevil
06-07-2011, 04:41 PM
If TC releases some stripped down version of their program editor, that would be awesome.

indeed. imo, they don't even have to strip it down.
http://www.brainwashaudio.com/stevil/smile/smilie_drink3.gif

sonicmayhem
06-07-2011, 04:45 PM
I want the software you see in the making of the toneprints videos.

electrical
06-07-2011, 04:57 PM
Well I haven't looked at it yet, but the code you just posted could be... well, just about anything. Most likely C. What you've copy/pasted is a bunch of pointers. And some commands, and comments. That's going to be sticky...

Ramblin390
06-07-2011, 05:01 PM
watch out, Tore has a bad accent-and it has come to my attention he's like ^6'6". He has a wrath of god toneprint as well as a armegeddon tp. Just sayin'....

binge
06-08-2011, 04:24 AM
The Tone Print loader files are binary. You need a hex editor to get in there and make the changes. But first you have to figure out what to change, and that's not just listed in plain English (or Danish, for that matter). ;)

I've poked around with this already a little bit. It *should* be possible to make a Flashback Tone Print work on a Hall of Fame, and vice versa.

But the trick is, I think, in the "authentication" part of the Tone Print loader applications. Again, I *think* if we knew what the "challenge-response" process is (probably just a simple code check/verification), it would be possible to edit the Tone Print loader app so that it would load its Tone Print onto a different pedal. If you try to fire up a HOF Tone Print app with a Flashback connected, for example, the button that initiates the upload is greyed out, and it says "Not Connected" even though there is a pedal connected (just not the *right* pedal). So if the loader app can be convinced that the right pedal is connected even though it isn't, I think it will load the Tone Print.

I've been doing a little USB sniffing trying to get a full dump of the entire communication between the app and the pedal, but there is no software USB sniffer for Macs, and I don't have admin access to any Windows machines. But I may be able to get the data dump done tomorrow or perhaps this weekend some time.

This all might get deleted, but whatever. I don't want to cheat TC out of a pedal sale or anything. And I think if this actually works out, they'll sell more pedals. I'd buy another one. :) After all, it won't turn a Flasback into a HOF. It just allows the loading of one single program of the opposite pedal. And since you can't have two programs running at once, it's only sort of useful. But an interesting exercise nonetheless.

I'd be interested to see the outcome of this!!

heminder
06-08-2011, 08:09 PM
Cool! I checked out the file in the Contents folder via Text Edit and it was all garbage. Hopefully you can come up with something. I really think that this would work and don't see a reason why it wouldn't.

Just opened the file in the Contents folder with pico and it's all garbage too. I'm guessing you need some sort of disassemble command and then you'd need to reassmble after making changes...?

Just ran a otool command and got loads of this:

000ca793 popl %ecx
000ca794 pushl %ebp
000ca795 movl %esp,%ebp
000ca797 leal 0x0007fa4d(%ecx),%eax
000ca79d movl %eax,0x08(%ebp)
000ca7a0 leave
000ca7a1 jmpl 0x0014c1c7


This means nothing to me....

dude, that looks like Assembler code to me.
http://en.wikipedia.org/wiki/Assembly_language

yep, my first post.
i registered here just to post that :D
determined to get this pedal cracked!
hope that helps out a bit :aok

electrical
06-08-2011, 09:10 PM
I don't think it's assembly. The beginning eight digits are all hexadecimal, making me think pointers. The phrases immediately following the pointers are probably just function recall, and anything after a percent sign is a comment.

Looks like C to me.

heminder
06-09-2011, 12:43 PM
I don't think it's assembly. The beginning eight digits are all hexadecimal, making me think pointers. The phrases immediately following the pointers are probably just function recall, and anything after a percent sign is a comment.

Looks like C to me.

doesn't assembly use hex digits to point to memory blocks or something?
it's been a while since i did programming at college, but i think it's assembly. it looks very familiar. i don't remember C looking like that.

DPiddy
06-09-2011, 01:01 PM
I'm excited about this thread and don't understand it at the same time.

Matthew John Bell
01-23-2012, 03:41 PM
Any news on this front? The prospect of using software to edit tone prints is exciting. I'm surprised it hasn't leaked yet.

cj_wattage
01-23-2012, 03:44 PM
I tried like hell to analyze the data that comes across the USB cable as a Toneprint is loaded, and I can't make heads or tails of it.

I'm sure *someone* could figure it out, but it's a bit outside of my proficiency, I'm afraid.



http://image.spreadshirt.com/image-server/image/composition/16626311/view/1/producttypecolor/1/type/png/width/280/height/280/donny-you-are-out-of-your-element_design.png

mledbetter
07-22-2012, 01:21 PM
pushes, pops and moves are array terminology - you can't really tell from this what language it is. Some forms of assy code have this - but what you are seeing here isn't the actual code. It's a hex translation of the compiled code. I'm sure the actual file is created in a proprietary editor that the TC guys use that outputs this. Chances are the builder app was written in C but regardless - it doesn't really matter. The TC pedals are most likely looking for a certain set of paramaters with values, which are manipulated by the editor - and then saved as a compiled file. It would be very difficult to hack a file like this unless you knew the list of paramaters the pedal accepts in the toneprint instructions.

Not to dash anyone's hopes, but I doubt people will be developing their own toneprints unless someone with some pretty sophisticated hardware and programming skills hacks the software AND the hardware and makes an open source editor - or until TC releases some sort of consumer version of the software to make your own patches.

On that note - i really don't see see why they don't. The more successful FX platforms know that users creating their own patches only builds brand loyalty and tends to increase their interest in the products. People don't like to be kept in the dark. So who knows - maybe they will release something before too long. These pedals are obviously capable of some really high quality patches. They could be just scratching the surface of their success.

spamsponge
07-22-2012, 04:13 PM
Cool! I checked out the file in the Contents folder via Text Edit and it was all garbage. Hopefully you can come up with something. I really think that this would work and don't see a reason why it wouldn't.

Just opened the file in the Contents folder with pico and it's all garbage too. I'm guessing you need some sort of disassemble command and then you'd need to reassmble after making changes...?

Just ran a otool command and got loads of this:

000ca793 popl %ecx
000ca794 pushl %ebp
000ca795 movl %esp,%ebp
000ca797 leal 0x0007fa4d(%ecx),%eax
000ca79d movl %eax,0x08(%ebp)
000ca7a0 leave
000ca7a1 jmpl 0x0014c1c7


This means nothing to me....

IIRC, otool on an Intel Mac assumes what it disassembles is Intel assembler code.
The posted code is without a doubt Intel 32 bit x86 Assembly Code. But, some parts of it do not make sense AND I doubt they'd use an Intel chip in their pedals since they cost too much for what they can do versus a real DSP.

td2243
07-23-2012, 12:33 PM
This thread rules. Maybe the fact that 'the kids' are trying to crack the toneprint will get TC in gear about releasing the software editor. :p

Then, hopefully 1 week after that they'll release a pedal with 10 empty slots!

Trotter
07-23-2012, 12:40 PM
I'm sure there's some Russian programmer kid out there who could figure this out in like 10 minutes...

Liquid_Metal
07-23-2012, 01:05 PM
Be patient, they will release an editor somewhere in time.

Orwells Ghost
07-23-2012, 01:50 PM
i just want the damned Echorec tone print they released on with the Alterego for my Flashback. It's a real PITA if I have to sell the Flashback just to fund an Alterego when the only difference is 20Kb worth of ones and zeros.

chocobo
07-23-2012, 03:47 PM
The real problem with releasing the editor, is that the hardware of all digital TC stompboxes are essentially the same if they're of the same effects group (e.g. flash back and hof and corona). And for a pedal that could process so many different parameters on the fly, everyone of them is a multi-effect unit in nature. I bet you could even do dirt type stuff with them, just won't sound that great. Hence If the editor gets leaked or cracked, you could do virtually anything with just one pedal, hampering their sales.

cj_wattage
07-23-2012, 07:25 PM
Hence If the editor gets leaked or cracked, you could do virtually anything with just one pedal, hampering their sales.
Yeah, you could do 8 different presets on one pedal. But you can only load one at a time. Who wants that? So people would want to buy 3 or 4 of the Toneprint boxes to be able to use more than one preset at a time.

Sounds like a winning idea to me.

td2243
07-24-2012, 10:22 PM
Hence If thYe editor gets leaked or cracked, you could do virtually anything with just one pedal, hampering their sales.


That's a tough call, because I won't buy a TC pedal without the editor, so the editor would actually increase sales....from one part of the market. That part being, people who want to shape the sounds themselves but aren't allowed to.

I get what you are saying though. What would stop people from loading a chorus, 2 delays and 2 reverbs on the same pedal. Yes, we would no longer need 3 TC pedals to accomplish that, but the reality is that I won't even buy 1 because I can't do that.

In my opinion, the more power you give to the user, the more useful the product and hopefully more sales. For all we know, TC could be working on a Toneprint type programmable effects pedal. The technology is there, it is just a matter of how they want to package it.

Matthew John Bell
07-25-2012, 10:01 AM
The real problem with releasing the editor, is that the hardware of all digital TC stompboxes are essentially the same if they're of the same effects group (e.g. flash back and hof and corona). And for a pedal that could process so many different parameters on the fly, everyone of them is a multi-effect unit in nature. I bet you could even do dirt type stuff with them, just won't sound that great. Hence If the editor gets leaked or cracked, you could do virtually anything with just one pedal, hampering their sales.

This is what Brian Neunaber has done with his line of pedals. He touts it as a feature. But if you want both his chorus and reverb, you're going to have to buy two boxes. To me, this says that this is how strongly Brian believes in his product.

TC on the other hand is acting in such a way that shows some insecurity in their product. But honestly ... a blank slate stomp box, with computer editable parameters, powerful dsp, and first rate analog path seems like a product that many people would line up to pay $200 for. Add the ability to store presets and I think you're in the $300 ballpark.

Maybe we need to look to Strymon to help us.

Liversage
07-25-2012, 10:22 AM
There could be an acceptable middle ground, though. For the Flashback, for example, why not just a Flashback specific Toneprint delay editor? I'm convinced that users being able to create their own prints, and upload / share them with others over some lightly moderated website would be a massively winning feature - enormously increasing the potential of the pedal and selling loads more en-route.

cj_wattage
07-25-2012, 10:32 AM
There could be an acceptable middle ground, though. For the Flashback, for example, why not just a Flashback specific Toneprint delay editor?
That was my thought as well. Maybe they could release a delay-only toneprint pedal, and a chorus-only pedal. But you could edit all the patches on them any way you wanted within the confines of that effect type.

earthtonesaudio
07-31-2012, 08:48 PM
Using Matlab I got the FFT of one of the audio Toneprints that I recorded as a .wav:
http://dl.dropbox.com/u/85489814/fft.png

Then I did FM demodulation:
http://dl.dropbox.com/u/85489814/fm_glance.png

And next cleaned up the FMdemod so it's a binary array:
http://dl.dropbox.com/u/85489814/digiFM.png

Still a ways to go but I think my primary goal (decode enough to roll my own preset) is in sight now.

earthtonesaudio
07-31-2012, 08:51 PM
Here's the Matlab code if anyone's interested:

% .WAV file analysis, try to decode data
%
%
%

format short % don't need accuracy
clear all
clc
fprintf('This application analyzes a high-frequency audio file.\nFrequency and timing information is acquired.\nThe goal is to determine what sort of modulation is used to encode the audio \nand ultimately decode this data.\n\n')
% Data input, extracting variables:
[y,Fs] = wavread('tone1'); % Get stereo .WAV file data (actually two separate tracks)

% TIMING DATA
t = 0:1/Fs:(length(y)-1)/Fs; % time, t, seconds
t = min(t,2.5); % Cut time array after 2.5 seconds (silence)
% size_t = size(t);
halftime = t(1,1:2:end-1); % Array of every other timing sample


Fc = 8619.5; % Center frequency (best guess)

% Try some different demodulation methods, look at output:
fsk = fskdemod(y,8,3341,2,Fs,'bin'); % frequency shift keying demod, both tracks
fm = fmdemod(y,Fc,Fs,1670.5); % fm demod both tracks
fm = min(fm,2); % trim the tops...
fm = max(fm,-2); % ...and bottoms, to better fit graph


% Size of various matrices:
% size_fm1 = size(fm1);
% size_y = size(y);
% size_track1 = size(track1);
% size_track2 = size(track2);
% size_fsk1 = size(fsk1)
% size_t = size(t);
% size(halftime)

% sample = (1:13822); % Arbitrary sample length to examine

% FFT stuff:
n = length(y)-1;
f=0:Fs/n:Fs;
track1fft = abs(fft(y(:,1)));
% size_f = size(f);
% track2fft = abs(fft(track2));
% diff_fft = abs(track1fft+track2fft);
% size_fft = size(track1fft);
% maxfft = max(track1fft);
% Useful info: high frequency = 10290 Hz
% low frequency = 7061 Hz
% difference = 3229 Hz


% plot(f,wavefft)
% grid


if 1
q1 = input('Do you want to see plots of the files?\nEnter Y for yes, any other key for no:\n','s');
if (lower(q1)=='y')
% Plot the two example .wav files:
subplot(2,1,1)
plot(t,y(:,1))
ylabel('Amplitude (volts)')
title('Track 1')
subplot(2,1,2)
plot(t,y(:,2))
xlabel('Time, t, Seconds')
ylabel('Amplitude (volts)')
title('Track 2')
pause

% Plot FM demodulated arrays
subplot(2,1,1)
plot(t,fm(:,1))
xlabel('Time, t, Seconds')
ylabel('Rel. Frequency')
title('Frequency Demodulated Track 1')
subplot(2,1,2)
plot(t,fm(:,2))
xlabel('Time, t, Seconds')
ylabel('Rel. Frequency')
title('Frequency Demodulated Track 2')
pause

% Plot FM demodulated arrays, cleaned up
subplot(2,1,1)
plot(t,round(fm(:,1)))
xlabel('Time, t, Seconds')
ylabel('Rel. Frequency')
title('FM Track 1, Digitized')
subplot(2,1,2)
plot(t,round(fm(:,2)))
xlabel('Time, t, Seconds')
ylabel('Rel. Frequency')
title('FM Track 2, Digitized')
pause

% Plot FSK demod (useless?)
subplot(2,1,1)
plot(halftime,fsk(:,1))
xlabel('Time, t, Seconds')
ylabel('FSK "letter"')
title('FSK demodulation of Track 1 (use zoom tool)')
subplot(2,1,2)
plot(halftime,fsk(:,2))
xlabel('Time, t, Seconds')
ylabel('FSK "letter"')
title('FSK demodulation of Track 2 (use zoom tool)')
pause

% Plot FFTs
subplot(2,1,1)
plot(f,track1fft)
xlabel('Frequency, Hz')
ylabel('Relative Amplitude')
title('Linear Fast Fourier Transform of Track 1 (Track 2 similar)')
subplot(2,1,2)
semilogy(f,track1fft)
xlabel('Frequency, Hz')
ylabel('Relative Amplitude')
title('Semilog (y) Fast Fourier Transform of Track 1 (Track 2 similar)')
end
end

cj_wattage
07-31-2012, 08:55 PM
Alex, you are one sick puppy. :banana

earthtonesaudio
07-31-2012, 09:27 PM
Cheers!
I'm too tired to do the next step now, which is to write a function that syncs up two different Toneprint files to figure out where they are the same. I *hope* that once this is done for a few Toneprints, it will start to make sense.


...Maybe the ideal open-source goal should be a webapp where people can dial in some knobs and press 'play' to blast their new custom screech into the pedal. I've never done anything like that, but then again all of this is new to me. :)

danonbass
07-31-2012, 10:21 PM
Holy crap, earthtone! It looks like you are really on to something here!

earthtonesaudio
08-01-2012, 04:44 PM
A minor update:
Here is a plot of the *differences* between two different Toneprint presets.
Basically the blue lines are where they are different, and the gaps are where they are the same.
There appears to be a significant unique section near the beginning (after the "ready" tone, which is what I'm calling the big gap before the 0.5s mark).
http://dl.dropbox.com/u/85489814/FMdiffs.png

0xeneye
08-01-2012, 05:00 PM
It's assembly language with a hex representation included. the code loads a value into memory slot the jumps execution. not really interesting....

Matthew John Bell
08-01-2012, 05:54 PM
I think the idea of being able to roll your own presets is very interesting.

earthtonesaudio
08-01-2012, 07:19 PM
It's assembly language with a hex representation included. the code loads a value into memory slot the jumps execution. not really interesting....

Are you talking about the USB version of the app? If you can parse assembly language from a 2.5 second fm audio waveform I want your powers!

cj_wattage
08-01-2012, 09:06 PM
Are you talking about the USB version of the app? If you can parse assembly language from a 2.5 second fm audio waveform I want your powers!
I, too, wish to have these wondrous powers. But I'd settle for a basic understanding of assembly, so that's where I'm at. :D

markplaysguitar
08-02-2012, 08:43 AM
This thread is great...the TGP in-house geniuses unleashed!

This gave me an idea - imagine an open source digital pedal platform. It could be built by a boutique builder, like Neunaber. It would provide the code for a few simple effects, and be totally open source from there. Eventually, a friendlier interface could be released with a GUI and preassigned parameters for people to mess with (like the TC software). Imagine the amazing things guitar nerds everywhere could create!!!

cj_wattage
08-02-2012, 08:59 AM
This gave me an idea - imagine an open source digital pedal platform.
You mean like this?
http://howleraudio.com/frontpage/

earthtonesaudio
08-02-2012, 09:04 AM
This next plot shows the two Toneprint files I recorded, with their differences in blue between them. I'm going through this and visually inspecting to see if a) they are lined up properly, and b) what patterns may emerge.

http://dl.dropbox.com/u/85489814/diffs2.png

earthtonesaudio
08-02-2012, 10:27 AM
And a more interesting test:

For those of you who have a Flashback Delay, try beaming this audio file into your pedal:
http://dl.dropbox.com/u/85489814/NewTrack1.wav

It is the "Modulated Delay" Toneprint with a single bit changed.
*NOTE* This could possibly break your pedal, but I doubt it. Attempt at your own risk.

thecrob19
08-02-2012, 11:59 AM
You mean like this?
http://howleraudio.com/frontpage/

Oh my gosh, this looks sweet, I'm really interested right now

chocobo
08-02-2012, 12:15 PM
Wow somebody is doing it, finally!

markplaysguitar
08-02-2012, 12:18 PM
You mean like this?
http://howleraudio.com/frontpage/

WHOA for real??? awesome...I've gotta check this out!

boogiejem
08-02-2012, 12:48 PM
And a more interesting test:

For those of you who have a Flashback Delay, try beaming this audio file into your pedal:
http://dl.dropbox.com/u/85489814/NewTrack1.wav

It is the "Modulated Delay" Toneprint with a single bit changed.
*NOTE* This could possibly break your pedal, but I doubt it. Attempt at your own risk.

Would interesting to see if this did anything but I guess it depends on where the bit was changed and if the encoding includes any error correction (highly likely). The first section of the waveform looks like a period of 'reversals' that will be used by the pedal to synch up to the the input signal baud rate. I'm guessing that the middle bit is a sequence of 8 bit parameter values (there dosn't seem to be enough data here for this to be actual assembly code), the final section may be error correction like CRC. I'm guessing that changing one bit will result the pedal rejecting the file on the assumption that it was corrupted?

earthtonesaudio
08-02-2012, 01:09 PM
That's what I hope to find out. If it still works with the single bit changed, that implies no parity checking.

cj_wattage
08-02-2012, 01:37 PM
That's what I hope to find out. If it still works with the single bit changed, that implies no parity checking.
I'll test it when I get home today.

cj_wattage
08-02-2012, 04:02 PM
Doesn't work. :(

The pedal doesn't recognize the audio as being a valid communication, I'm guessing.

When a Toneprint is played through the app, you can see the pedal's bypass indicator turn green while it is receiving data. This did not happen with the WAV file you created.

So I guess something is wrong in the preamble?

drbob1
08-02-2012, 06:13 PM
I'm not sure how helpful this is, but there's a new Toneprint pedal:

http://www.tcelectronic.com/the-dreamscape.asp

It apparently can function as Chorus, Flanger or Phaser, so it's very likely that the engine can do anything...

td2243
08-02-2012, 07:48 PM
You mean like this?
http://howleraudio.com/frontpage/

This is VERY similar to the Yamaha Magicstomp from about a decade ago. THIS should be the new direction of pedals as far as I'm concerned, at least for anything digital. Analog is a different matter.

cj_wattage
08-02-2012, 07:59 PM
It apparently can function as Chorus, Flanger or Phaser, so it's very likely that the engine can do anything...
I'm sure it can. It seems unlikely that a DSP manufacturer would make a chipset *just* for chorus or *just* for delay. It's all about how you program that processor and use the available memory.

My experiments with the FV-1, although much simpler than what TC is using, is making this stuff a little easier to understand. You can make it do all sorts of stuff! It's like a blank canvas for audio manipulation. :)

pcb
08-03-2012, 12:03 PM
Hi all.

About TonePrint Wave to Binary decoding...

Check this

http://www.worldofspectrum.org/soundload.html#to

i try to use it
Spectrum Tape Reader v2.00 (PC/Windows) by Jocelyn Gibart.
and this software is work, it's same coding type like ZX spectrum Tape

in_sherman
08-03-2012, 01:36 PM
this thread is too advanced for me

cookedbutok
08-03-2012, 02:06 PM
It's really silly that they don't put this power in the hands of the consumer, it'll only advance the capabilities and potential of their product. Microsoft did that with Kinect and the DIY's in that community fleshed out a bunch of creative uses and ideas that Microsoft hadn't even thought of that are being implemented into the next gen... Instead of making their consumers dig around data to hack their system, give them some incentive to buy your product.

Other than the 2-3 creative Toneprints that were formulated with PGS, TC has given consumers nothing outside the box when it comes to toneprints. just a bunch of spring reverbs, mod delays, etc. nothing unique or even on par with the uniqueness of other companies. I went from 3-4 TC pedals to one (Polytune) because of this very reason...until they step up their game, I see no reason to buy any Toneprint pedals from them.

thecrob19
08-03-2012, 02:20 PM
this thread is too advanced for me

:agree

earthtonesaudio
08-03-2012, 07:08 PM
Okay backtracking ... just the basics:
First I simply take the recorded file, read it into Matlab, then write a new wave file without changing anything:
Toneprint1 (http://dl.dropbox.com/u/85489814/codec1.wav)
Toneprint2 (http://dl.dropbox.com/u/85489814/codec2.wav)
If these don't work then there's something wrong with my setup.

These next two are really for if you want to "line in" to the pedal. They have a 2nd order lowpass at 5kHz applied, to simulate the guitar pickup/cable roll-off. Same as above, not altered but run through Matlab.
LPF1 ("http://dl.dropbox.com/u/85489814/LPF1.wav)
LPF2 ("http://dl.dropbox.com/u/85489814/LPF2.wav)

cj_wattage
08-03-2012, 07:11 PM
I'll test it in a bit, Alex. If that doesn't work, I can mail you my pedal so you can futz around with it. I think that would be a lot faster. :)

cj_wattage
08-03-2012, 07:59 PM
The first two you posted definitely work when played through iTunes on my phone. So that's a good starting point.

earthtonesaudio
08-03-2012, 09:57 PM
One more before I call it a day. For this one, I took the raw track, FM demodulated it, then FM modulated it again. This destroyed the bit of silence at the beginning so I extracted the original envelope and applied that to the FM modulated track.
Hope it works.
FM_demodulated_then_remodulated_with_envelope (http://dl.dropbox.com/u/85489814/FMde_mod.wav)

ERGExplorer
08-04-2012, 11:03 AM
This is VERY similar to the Yamaha Magicstomp from about a decade ago.

The extremely large main difference is that Yamaha published the MIDI Implementation Chart, and someone was able to build an editor from it.

From what TC has done so far, it looks like they'd rather sell a new pedal every time there's a truly interesting new TonePrint developed.

And that's only fair.

After all, it's not like they promised to make any really neat TonePrints available free of charge, or talked up the pedals using promises like that.

cj_wattage
08-06-2012, 08:56 AM
One more before I call it a day. For this one, I took the raw track, FM demodulated it, then FM modulated it again. This destroyed the bit of silence at the beginning so I extracted the original envelope and applied that to the FM modulated track.
Hope it works.
FM_demodulated_then_remodulated_with_envelope (http://dl.dropbox.com/u/85489814/FMde_mod.wav)

Good to go. Let the games begin.

hardrubbish
10-17-2012, 10:03 PM
I recently rediscovered this thread and was amazed to see that the wheels have started turning! Very exciting!

Have there been any further developments since August?

cj_wattage
10-17-2012, 10:19 PM
Quite a bit of progress, but no full-on joy yet:
http://freestompboxes.org/viewtopic.php?f=29&t=18084

hardrubbish
10-18-2012, 02:30 AM
Wow!
Lots of new info, by the looks of things. Some exciting reading time to come.

Thanks very much for the link.

glennd
01-15-2013, 10:58 AM
The whole capturing the wav and altering it is very interesting. I started down a different path and just thought I would provide what I found out in a couple of minutes. I had downloaded some Tone Prints before and grabbed one more just to be current. But I never loaded any into my pedal (Corona Chorus) via computer. I beamed them with the Android app (pretty neat).

I am a software engineer but my expertise is definitely not in reverse-engineering stuff (although I have taken a "look" at a paid program or two many years ago). I started my investigation (before coming across this thread) by just seeing what was in a Tone Print file. I grabbed the Orianthi Tone Print for the Corona Chorus. It came down as an .exe but previous files I had grabbed were zipped. Those zip files just have an .exe inside. Starting with the .exe, I took a look at it using Notepad++. Seeing that the first 2 bytes were "MZ" I immediately knew it was actually an MS DOS executable file or its newer offshoots of NE or PE (they could have been trying to throw people off by giving a false extension...it could have been zipped if the first 2 bytes were "PK" instead as an example). So, again, since I have never used one of these files I am guessing to install it you just double-click on it and it runs a tiny program to deliver the Tone Print to the pedal (I wasn't sure how the file was used - was there a separate uploader, etc.). I do not have C++ installed so the only other thing I could do at this point was try to open it using 7Zip. Suprisingly, it was able to open it (more on this later) and I could therefore get some more insight. Here is the structure of the file (entries are files unless otherwise stated)...

|-.rsrc (folder)
| |-1030 (folder)
| | |-GROUP_ICON (folder)
| | | |-101
| | |-ICON (folder)
| | |-1.ico
| | |-2.ico
| | |-3.ico
| | |-4.ico
| | |-5.ico
| |-1033 (folder)
| |-Manifest (folder)
| |-1
|-.textbss
|-.text
|-.rdata
|-.data
|-.idata
|-CERTIFICATE
|-.rsrc_1

OK. So, all the files are binary EXCEPT for the "1" file in the Manifest folder which is XML (here it is)...
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>

The CERTIFICATE file does appear to be what it says as it has VeriSign, Symantec, Microsoft, and TC Electronic references in it (but is still binary) and some timestamps. That could be an issue in and of itself as if so much as a single byte is changed in the data, the file will probably no longer load (my guess). Back to the fact that this openend up in 7Zip; I think this means this is the MS .NET extension of the PE format executable file (but again, not my area of expertise). I will have to play around with that a bit more.

Again, this is what I could figure out in a few minutes. Just thought some of you might be interested in this or even want to pick the ball up and run with it. I was surprised that this info was not already posted in this thread (unless I missed it somehow).

fallout-labs
01-17-2013, 06:55 PM
interest peaked... off to the tc electronics page to download a couple toneprint updates :)

fallout-labs
01-17-2013, 07:14 PM
alright, this was kinda fun.

i took brian nutters chorus tone print, and orianthi's chorus tone print and did a binary level comparison.

out of 8606 functions in the code, 8601 functions matched at a binary level, so its very easy to identify which part of the 2.2MB exe file is the actual data used to generate the tone print.. my only problem, is i don't have a toneprint pedal to muck with :(

fallout-labs
01-17-2013, 07:28 PM
looks like its written in C++, probably Visual Studio..

'C:\hudson\jobs\ErikTonePrint\workspace\Tools\Pres etUpdater\Project\Win32_VS_2008\CoronaToneprint\Co ronaToneprint.pdb'

binary is stripped, so none of the function names have any meaning, which is kind of a pain to quickly decipher whats going on..

Occam
01-17-2013, 07:46 PM
It's too bad TC never saw fit to give this to the customers...it's a big reason why I haven't gotten any of their newer pedals.

909one
01-18-2013, 10:15 AM
Yeah,
I just bought a Hall of Fame on a whim, had a gift card to eBay. Its in the mail today, and I am wondering the same thing... Why don't they just offer up their editor for the user to be able to create their own toneprints? Clavia does something similar with the Nord products. Dave Smith does it with his synths. Its common in the synth world, but not so much in the guitar world, most likely because of marketing and sales figures. They are assuming average guitar player just wants to sound like their heros and don't care about creating their own sounds. But, there are a lot of us out there who could give a shit about what John Petrucci thinks is a cool patch. If I could edit and save my own reverb patches, that would make this pedal infinitely more interesting to me. What about this idea, create a blank platform pedal that can be used for any effect. Charge a nominal fee to buy different toneprint editors. For example $30 for a delay editor, $30 for a reverb editor. I'd buy that for sure. You can still monetize the experience but allows those people who are into tweaking stuff to take advantage of the technology.

We'll see what I think of HOF, I've been through so many reverb pedals. I'm not really expecting much though since it was essentially free to me though.

caeman
01-18-2013, 10:47 AM
The best solution here would be an open-source hardware project for the pedal, allowing anyone to manufacturer them to spec. One model might be for gain solutions, another model for modulations since they both have slightly different needs. Or maybe not. A standard of 4 knobs. Release software. Watch the world explode with new downloads of effects to try. No more pedal flipping, just software flipping.

hugbot
01-18-2013, 11:46 AM
TC was teasing something toneprint related for NAMM on their facebook page so the editor might be on the horizon.

-alex
01-19-2013, 01:16 PM
I just saw this thread. It will be interesting to see what TC Electronics actually releases for an editor. I suspect it will be a USB attached editor because the workflow for beaming edits would be too painfully awkward.

The question will be if you can save your patches for use with with an iPhone, or otherwise share patches. It will also be interesting if they keep any special features locked.

What if the official editor is lame? What would people really want in an editor? Is there some capability in the pedals that are worth unlocking? (e.g. the Vitaly m43 camera hacks).


For fun, I just yanked a bunch of tone print files off of my iPhone, all mono, 44.1 mp3s. Pulled a few into matlab & confirmed earthtonesaudio's initial view. I'm not quite convinced of simple FM modulation, I suspect there is a signal constellation/symbol codebook to help reduce ambiguity: plot(psd(spectrum.periodogram, wavefile ,'Fs',Fs,'NFFT',length(wavefile))); but that is just an implementation detail that could be worked out if there is a real reason to create an audio codec.

fuzz-bruzz
01-19-2013, 07:23 PM
What if the official editor is lame? What would people really want in an editor? Is there some capability in the pedals that are worth unlocking? (e.g. the Vitaly m43 camera hacks).

I think all people want in the editor is exactly what Tore uses in some of the toneprint videos. Nothing touched up or restricted interms of tweakability, all the access to saturation, modulation (chorus, phase, flange etc.) and EQ of the delays, things that aren't on the Flashback pedal itself and these are definitely variables that people would like full control over themselves and not preset by certain toneprints.

erzu
01-24-2013, 04:15 AM
http://www.tcelectronic.com/toneprint-editor/

Thank You TC :)

I can't wait to try it on my Hall Of Fame.

Now I want to also have Flashback.

myke232
01-24-2013, 07:27 AM
Ah, that's looks like it will be very cool!!

I'm assuming it will be freeware?!

glennd
01-24-2013, 08:51 AM
It is official and it is coming...

http://www.tcelectronic.com/toneprint-editor/

And go there and sign up so you get the editor 3 days before it is released to the public!!!

:aok

x-ray specs
01-24-2013, 09:36 AM
I realize it's not out yet, but I wonder if with the Tone Print editor we'll be able to create new tone prints like a shimmer effect for the HOF, or copying the tone prints fom the Trinity reverb and putting them on a HOF.

jlagrassa
01-24-2013, 09:47 AM
It is official and it is coming...

http://www.tcelectronic.com/toneprint-editor/

And go there and sign up so you get the editor 3 days before it is released to the public!!!

:aok


Just signed up... Thanks!

XiXora
01-24-2013, 11:23 AM
I realize it's not out yet, but I wonder if with the Tone Print editor we'll be able to create new tone prints like a shimmer effect for the HOF, or copying the tone prints fom the Trinity reverb and putting them on a HOF.

You cannot create Shimmer. There is no pitch algorithm in the HOF (yet).
You can create a pseudo-shimmer with tri-chorus.

Hope that helps :)