Stephanie Wallace
Member
Hi all! I'm currently building a unique synthesizer using a bank of antiquated PSGs; as I'm sure it won't be terribly difficult to guess: YM2149s. The synth is meant to be used in two different ways (with the exception of one of the YM2149s, which is being used to route 9 bit vocals in real time—figuratively, of course there is a slight delay, though the Cortex-M7's math/DSP capabilities are so extraordinary that I can send audio in, convert it to the appropriate register values, and return it well below Reason's delay compensation threshold—for which the channels will be summed prior to ADC):
Each chip/group of chips serves a different purpose, for which I'm developing custom Rack Extensions: The aforementioned vocal routing chip, a drum machine, 2 chips chips that are being used to produce sounds well beyond the constraints imposed by the Atari STe, and three chips that are used with those constraints imposed with one exception: Channel A, B and C from each chip will be combined in 3 groups from each separate YM2149 so each channel can use a different envelope.
While this isn't what this post is about, and I've no doubt many of you are familiar with the AY-3-8910 and YM2149, but to assuage curiosity for those who aren't: The YM2149 produces only square waves, but simulates a few other envelopes by adjusting a 5 bit, logarithmic volume scale during each square wave cycle. When you select an "envelope", it applies to all channels, though each channel can be set to different frequencies. As you have very precise control over a given envelopes start time and length, you can create custom envelopes for each channel by rapidly switching envelope types before a duty cycle has completed. This one of only myriad tricks developed by demoscene artists, a huge number of which have been conceived over the last 10 years. If you're interested in the basics, here is a link to the datasheet of this extremely rudimentary PSG: http://www.ym2149.com/ym2149.pdf
With the lengthy preamble out of the way: I've already devised several means of doing much more with these chips that one what has been accomplished on the ST and STe. I don't consider this a terribly impressive feat given how much more control I have over the chip not just because I can change the registers several orders of magnitude more frequently, as well as change the dynamically adjust the clock speed and duty cycle, but that's no matter—I'm simply interested in creating a unique synthesizer for an EP I'd nearly completed last November, then realized I wanted to completely rework all of the track as the idea for the synth had been percolating for some time.
My question is thus: I recently purchased a TPU, and it struck me that I can program it to control all of the PSG's registers, then feed it sounds, and allow it to manipulate the chip to attempt to approximate them as closely as possible, potentially yielding new techniques never before conceived. I don't have any technical questions; rather, I'm simply curious if any of you have ever attempted IC hacking and manipulation of vintage chips with a neural network; I've searched extensively to see if others have attempted this, and have found no evidence of anyone trying to do anything other than break cryptographic keys/locking mechanisms of modern chips.
I'm very interested in folks thoughts on this, whether any of you have attempted similar projects yourselves, and whether anyone here has come across work of others doing the same. I felt (and hope!) it might interest many of you as much as it interests me, and at the very least, would be great discussion fodder. Any thoughts, ideas, and questions whatsoever are welcome, even if they're not specific to audio ICs!
(Probably worth noting: I have acquired over 100 YM2149s, primarily so I can ensure I can use the synth for decades, and because pretty much every lot comes with a fritzed chip or two—they all have to be tested before use, not just to ensure they're in good condition, but also to ensure they aren't AY-3-8910s that have been re-wrapped to appear as if they're YM2149s. This also means I can seriously stress test some of the chips without concern if I destroy a few while undertaking this endeavor)
- To output analog audio with zero post processing aside from low and high pass filtering to remove the DC offset and ugly harmonics at higher frequencies.
- Return each individual channel via ADC to Reason so every individual channel can be "wired" to any Reason Rack Extension.
Each chip/group of chips serves a different purpose, for which I'm developing custom Rack Extensions: The aforementioned vocal routing chip, a drum machine, 2 chips chips that are being used to produce sounds well beyond the constraints imposed by the Atari STe, and three chips that are used with those constraints imposed with one exception: Channel A, B and C from each chip will be combined in 3 groups from each separate YM2149 so each channel can use a different envelope.
While this isn't what this post is about, and I've no doubt many of you are familiar with the AY-3-8910 and YM2149, but to assuage curiosity for those who aren't: The YM2149 produces only square waves, but simulates a few other envelopes by adjusting a 5 bit, logarithmic volume scale during each square wave cycle. When you select an "envelope", it applies to all channels, though each channel can be set to different frequencies. As you have very precise control over a given envelopes start time and length, you can create custom envelopes for each channel by rapidly switching envelope types before a duty cycle has completed. This one of only myriad tricks developed by demoscene artists, a huge number of which have been conceived over the last 10 years. If you're interested in the basics, here is a link to the datasheet of this extremely rudimentary PSG: http://www.ym2149.com/ym2149.pdf
With the lengthy preamble out of the way: I've already devised several means of doing much more with these chips that one what has been accomplished on the ST and STe. I don't consider this a terribly impressive feat given how much more control I have over the chip not just because I can change the registers several orders of magnitude more frequently, as well as change the dynamically adjust the clock speed and duty cycle, but that's no matter—I'm simply interested in creating a unique synthesizer for an EP I'd nearly completed last November, then realized I wanted to completely rework all of the track as the idea for the synth had been percolating for some time.
My question is thus: I recently purchased a TPU, and it struck me that I can program it to control all of the PSG's registers, then feed it sounds, and allow it to manipulate the chip to attempt to approximate them as closely as possible, potentially yielding new techniques never before conceived. I don't have any technical questions; rather, I'm simply curious if any of you have ever attempted IC hacking and manipulation of vintage chips with a neural network; I've searched extensively to see if others have attempted this, and have found no evidence of anyone trying to do anything other than break cryptographic keys/locking mechanisms of modern chips.
I'm very interested in folks thoughts on this, whether any of you have attempted similar projects yourselves, and whether anyone here has come across work of others doing the same. I felt (and hope!) it might interest many of you as much as it interests me, and at the very least, would be great discussion fodder. Any thoughts, ideas, and questions whatsoever are welcome, even if they're not specific to audio ICs!
(Probably worth noting: I have acquired over 100 YM2149s, primarily so I can ensure I can use the synth for decades, and because pretty much every lot comes with a fritzed chip or two—they all have to be tested before use, not just to ensure they're in good condition, but also to ensure they aren't AY-3-8910s that have been re-wrapped to appear as if they're YM2149s. This also means I can seriously stress test some of the chips without concern if I destroy a few while undertaking this endeavor)