hydra as a musical instrument
coherent.noise
Posts: 2
just brainstorming for now....
i'm considering buying a hydra not so much to make games, but to use as a custom live chiptune style musical instrument. unfortunately, it only has monaural audio output. but the hydra is so incredibly well equipped otherwise. i saw a previous thread with a little bit about this. maybe once i get things hashed out with the hydra, i could see how many spare cogs i can get and use them in a custom design with several audio output channels.
so, i guess i'm asking if there's anyone out there pursuing something similar. i've seen a lot of work that looks interesting, like the HDMF (if i recall the acronym correctly). if i'm the first one to go down this path, i guess that's cool, too (if a little daunting).
if i decide to take the plunge after a little more research, i'm sure you'll see a lot more of me.
~andrew
i'm considering buying a hydra not so much to make games, but to use as a custom live chiptune style musical instrument. unfortunately, it only has monaural audio output. but the hydra is so incredibly well equipped otherwise. i saw a previous thread with a little bit about this. maybe once i get things hashed out with the hydra, i could see how many spare cogs i can get and use them in a custom design with several audio output channels.
so, i guess i'm asking if there's anyone out there pursuing something similar. i've seen a lot of work that looks interesting, like the HDMF (if i recall the acronym correctly). if i'm the first one to go down this path, i guess that's cool, too (if a little daunting).
if i decide to take the plunge after a little more research, i'm sure you'll see a lot more of me.
~andrew
Comments
There may not be a multiply instruction, but for small multipliers, it's very easy to do the multiplication with only a few instructions given the "barrel shifter" that shifts any number of bits in one instruction. If the multiplier changes, but not too often (like a coefficient), you can even do a sort of compiler to construct the instruction sequence to do the multiplication.
There are some nice, short, reasonably fast assembly routines for unsigned integer multiplication, division, and square root that Chip wrote and posted in a document called "Propeller Guts". Signed variations of these are nice "exercises for the reader" type things.
The Propeller version 2 will have a 16x16 multiply instruction that can easily be used to do a 32 x 32 multiply.
I also think it would be better to start off with a demoboard/protoboard or a propstick-usb (which is what i have ) and use the propeller ports for midi-in/through/out, headphones digital audio out... or some fancy ir-input devices like the roland "D Beam controller".
Actually I was "dreaming" about building a device with the propeller like these little yamaha pocket sequencers/expanders (QY-70 etc.) that they have discontinued.
http://www.yamahasynth.com/products/qy100/index.html
But I realize that's a little ambitious for someone who's only just starting with programming!
Maybe I will try something more simple like controlling the speech synthesis example from the propeller-library via midi and keyboard.
It would be nice to be able to type text on the keyboard and have the propeller sing the words in the pitch of the notes you press on the midi keyboard.
Andre'
I had a hunch but didn't really know if the prototyping board would allow me some audio expansion. I would ultimately probably like to have something like a synthesizer per cog, and then connect the outputs to a desktop mixer. Anyway, so I see it's relatively easy. Good.
As for hardware multiply, I had thought about that myself, too. But when I was reading the Propeller data sheet I saw that it has log and sine tables (I suppose to partly make up for the lack of hardware capability?). I thought it could at least be "fun" to go back to school, as it were, and try to come up with clever ways of making sound with those tables.
I'm glad there is a midi object. My dream is not so much a pocket sequencer (or tracker) -- just because I'd be too lazy to mess with more customized I/O. Rather, I'm looking to make things more along the lines of Cynthcart, Synthcart, NanoLoop, MIDINES, and Prophet64 but customized just for me.
Anyway, I don't suppose you all needed to know that. Thanks for the tips anyway. I'm really planning on saving up to get one now. (I might, just might, use it for games, too!)
I'm working on the same thing, also inspired by the those things you mentioned. I was actually on my way to learning ASM just to mess around with the Atari 2600, NES. Then by chance came across the Hydra. It's a great way to learn this stuff.
(I'm coming from a "circuit bending", self taught background, so the programming is all new for me.)