Anybody rewrite algorithms?

Started by drewl, February 19, 2008, 08:43:31 PM

Previous topic - Next topic

drewl

Maybe an odd question...
I have a Digitech ValveFX I use for live gigs.
A while back I worked with a computer whiz kid who had the same unit and was working on a way to rewrite the programming of the processor(s) so we could alter the placement of the different effects in the unit.
Unfortunately he went back to school and we never got back to it.
So I was wondering if anybody had attempted anything similiar.

grjeff

This is a very intriguing queston. I wish I knew. If there is anyone out there that knows this could open up allot of possibilities.

Inventor

I write guitar effects programs, but I don't know how to rewrite an existing program.  Well, I know how but I'm not gonna do that, lol!  I do basic stuff like distortion and wah plus some really fun stuff like my thunderstorm effect.  I also program to utilize my guitar motion sensor.  What did you have in mind, I might have something for you or be able to cook something up? 

jaysg

Talk about misery.  With the right tools you can download an image of the memory then run it through a dis-assembler or emulator which will show you the code at the assembly language level.  A friend of mine had to do this when a programmer tried to stick up his employer for $100K.   It took her a couple of years to nail the source down and start to make updates.   It was a large program of course.   I have no idea how big a multi-effects image would be.

cheezit

Quote from: jaysg on October 12, 2008, 11:31:05 AM
Talk about misery.  With the right tools you can download an image of the memory then run it through a dis-assembler or emulator which will show you the code at the assembly language level.  A friend of mine had to do this when a programmer tried to stick up his employer for $100K.   It took her a couple of years to nail the source down and start to make updates.   It was a large program of course.   I have no idea how big a multi-effects image would be.

I write software, though not DSP stuff.  This type of project would have numerous gotchas and I wouldn't predict "success" in the sense of making the unit just like it was but better.  As far as effects routing, the existing code could have been written in a way that would support this easily, or it could make things very hard.  There's really no way to know until you start, and if there is no SDK/decompiler available, and there probably isn't, the first step is a difficult process of reverse-engineering.

The unfortunate fact is that digital music gear is usually not "hackable" in the way that a wah-wah pedal or a Boss distortion pedal is.

You won't save money or effort doing this.  I'd say you should go get a better/more expensive unit that does what you want, unless you are fascinated with the learning process for its own sake, which I kinda doubt given that you were talking to someone else about doing this.  And if you are interested in DSP programming there are better places to start.

SeanCostello

Reverse engineering is really really hard. If you have the skills to do it, you probably have the skills to implement your own algorithms on the Tonecore Developer Kit (now shipping!), or the Spin Semi FV-1 (limited, but great for what it does). 

When working with audio DSP hardware, one issue is that the DSP may not be an "off-the-shelf" DSP, so deciphering the code might be difficult to impossible. Some of the Digitech boxes used a TI DSP, but I am unsure how it was related to other DSPs. The Digitech boxes might also use custom ASICs, which are far more difficult to reverse engineer.

For the most part, reverse engineering is done as a way of learning what algorithms are used in a given piece of hardware. For some older units, such as higher end Lexicons, Quantec reverbs, and the like, this makes sense, as these algorithms stand up well today and should run on modern hardware easily. For some modern units, such as the high-end TC Electronics reverbs, reverse-engineering doesn't make much sense, since the algorithms are so resource-heavy that reproducing them would require a huge investment in hardware. Most of the older DSP boxes aren't worth reverse engineering, as their algorithms were never the best in their class, which is why you can buy the boxes for pennies on the dollar today. Most of the Digitech boxes fall in this class, IMO.

Sean Costello