matoz Posted March 10, 2010 Report Share Posted March 10, 2010 I' ve just found that... interesting instruments... http://gadgetgangster.com/find-a-project?subcat=3 regards Quote Link to comment Share on other sites More sharing options...
Wilba Posted March 11, 2010 Report Share Posted March 11, 2010 I think the SIDstick was already "teased" here before: Maybe someone can wrap up that SIDcog core into a SID-pin-compatible package like SwinSID. Someone with more time than I have. :thumbsup: Quote Link to comment Share on other sites More sharing options...
Nick McClick Posted March 12, 2010 Report Share Posted March 12, 2010 @matoz - glad you found them interesting! The GrooveAxe is pretty cool - it's a PICaxe drum machine by grandtippler, although I did the pcb layout. The German Gaming mag 'Gee' is doing a story on the SIDStick - I'm looking forward to that. I also put the SIDcog core on El Jugador, a game console I did - giant bomb loved it and did a little video. The NoiseAxe is tough - I like playing with it, but it's hard making pleasing sounds with it. grandtippler also designed that with a PICaxe 08m. For SIDcog, I want to do a fun little mini-synth. Johannes' code is set up to do it easily, but the hardest part is the UI. It's tough trying to design a UI that will let the average user make pleasing music but still be inexpensive and flexible. Quote Link to comment Share on other sites More sharing options...
Shadoclaw Posted July 3, 2012 Report Share Posted July 3, 2012 Hi all! Long time reader, first time poster. I know this topic had been laying dead since 2010 (I know, I know, I'm digging up the bones of the dead horse to kick it once again), but I felt I would post on it anyway, given that it is in line with what I am trying to do. First, to Wilba's statement, and I do quote: "Maybe someone can wrap up that SIDcog core into a SID-pin-compatible package like SwinSID. Someone with more time than I have." It is possible, given the nature of the device, to do just that. The problem lays in two directions: 1)VDD- The maximum voltage you can put on a Propeller's pins is 3.3v. This means that VDD has to be dropped down to that level: Not a problem for new designs, but as a direct replacement, one would have to figure out how to compensate for the Sid's original dual voltage design (In other words, don't try to plug it into your C64). Also, because the pins are only tolerant to 3.3v, any input from other devices has to be dropped down in order to keep from frying the device (I'm thinking pulldown resistors at this point). The good news is, no more dealing with Dual power supplies: the power dropdown for the MBSID applications can be dropped down at the chip using a 3.3 Voltage regulator to supply the supply voltage to the chip. 2) The Propeller is a 40 pin device, 32 of those pins are assignable. Given a Stereo output and a mono input, that leaves 29 pins to play with. Doing the math for a basic 1 SID application, one would need 16 of those 29 pins to interface with the core module on a MIDIbox Sid device: 1 Reset, 1 clock, 1 CS, 5 Address Pins, and 8 Data pins (Do I have that right? I'm going off memory): VDD and Ground are not a part of those assignable pins. This leaves 13 pins to play around with. Oh, and the SIDCog, as per it's name, only runs in one of the Cogs (Prop 32 bit cores are called Cogs, for those not in the know) on the device: The Prop has 8. So what I am thinking, and what I am planning to test once I have the firmware settled to that point, is using the prop to simulate a full compliment of 8 SIDs controlled by 4 Core Modules. Why? Because I'm a bit of a mad scientist, And the old lady is not gonna let me buy a full compliment of SIDs on Ebay for $200 US, especially when I can build a very decent simulation of those chips for around $10. Oh, and because it makes me feel like I'm playing GAWD!!! That was meladramatic... Anyway, I am hoping to compile and test the Firmware for the 8Sid Simulator tonight. I had read on the SwinSID topic that the MultiSID application can control the 2 virtual SIDS in the SwinSID via two additional address lines set to Binary on the SwinSID, is this accurate TK? And if so, would the same apply to this project, basically adding 4 additional address lines to address the SIDS Individually, in groups, or all at the same time using common Data lines? If so, this could be a great boon to the project, as I would only have to assign 1 pin on the Prop for each additional core. Looking forward to hearing from you all, and thanks! Quote Link to comment Share on other sites More sharing options...
TK. Posted July 3, 2012 Report Share Posted July 3, 2012 Hi, I had read on the SwinSID topic that the MultiSID application can control the 2 virtual SIDS in the SwinSID via two additional address lines set to Binary on the SwinSID, is this accurate TK? Not completely: data, address and control lines coming from the serial shift registers are shared, only the chip select line has to be connected separately so that both SIDs can get different data. And if so, would the same apply to this project, basically adding 4 additional address lines to address the SIDS Individually, in groups, or all at the same time using common Data lines? No, this isn't possible since only a single stereo engine can run on a PIC, and since two PICs can't share the same bus (such an approach would have a massive performance impact) Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
Shadoclaw Posted July 3, 2012 Report Share Posted July 3, 2012 Well, Hello TK! Not completely: data, address and control lines coming from the serial shift registers are shared, only the chip select line has to be connected separately so that both SIDs can get different data... No, this isn't possible since only a single stereo engine can run on a PIC, and since two PICs can't share the same bus (such an approach would have a massive performance impact) Yes, i see the logic in this... So really, with a StereoSID example, given the hardware, one could merely build an extra Chip Select line into the device? And if we were looking at multiple PICs, each would have to have it's own dedicated Data, address, and control lines as well leading into the device? Starting to Grokk this more... I really need to reread the SID datasheet. My other question was this: Since the Data, address and control lines are sharing the same line, divided by the shift registers, would it be possible to consolidate all of these into one pin on the Prop, basically adapting the firmware to decode the Serial signal as it comes in? I know you're not an expert on the device in question, simply wish to know if the theory was sound. I had thought about doing it this way, might experiment with that as well. Cheers! DB Quote Link to comment Share on other sites More sharing options...
TK. Posted July 3, 2012 Report Share Posted July 3, 2012 Yes, i see the logic in this... So really, with a StereoSID example, given the hardware, one could merely build an extra Chip Select line into the device? under the given pin constraints (parallel interface, most pins allocated): yes - but see also my answer on the serial interface approach below. And if we were looking at multiple PICs, each would have to have it's own dedicated Data, address, and control lines as well leading into the device? with a parallel interface: yes My other question was this: Since the Data, address and control lines are sharing the same line, divided by the shift registers, would it be possible to consolidate all of these into one pin on the Prop, basically adapting the firmware to decode the Serial signal as it comes in? I know you're not an expert on the device in question, simply wish to know if the theory was sound. I had thought about doing it this way, might experiment with that as well. interfacing the chip via the already existing serial interface sounds like a good plan! In this case, mulitple PICs could transfer data to the the chip independent from each other. And no 74HC595 shift registers would be required. The serial clock is ca. 10 MHz, this means that the "cog" would have to sample the data inputs at least with 20 MHz (better: 40 MHz) Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
Shadoclaw Posted July 3, 2012 Report Share Posted July 3, 2012 (edited) interfacing the chip via the already existing serial interface sounds like a good plan! In this case, mulitple PICs could transfer data to the the chip independent from each other. And no 74HC595 shift registers would be required. The serial clock is ca. 10 MHz, this means that the "cog" would have to sample the data inputs at least with 20 MHz (better: 40 MHz) Excellent! I'll start cracking the code then. Basically, the way I see it, it would be essentially the same code as would be used to decode an 74hc165, I think. Basically we convince the Prop that the Data line is itself a pair of parallel in shift registers. The code would then be handled internally. And considering that the Prop spins (Get it? Spins!) at 80 MHz, I should be fine, though I would have to check the Prop Datasheet again (All 400 pages of it). Unfortunately, the code that I just found for it on the object exchange looks like it itself takes up a cog, so the maximum number of Cogs dedicated to Sims would have to be 6, if my math is right. Then again, I wonder, since we are obviously not trying to actually duplicate the actual SID here, if I can just program each cog with 6 oscillators... this would drop the number of cogs (on a fully loaded MBSID) to 4, and still retain the 24 Oscillators that would be available on 8 SIDs... basically, program each cog to emulate 2 SIDs instead of one. I am also looking to bypass the Filtering issues that Nils detected with the SIDcog initially by dedicating pins to filtering- Basically, 2 in and outs which are connected together by caps. Given the theory about the Serial thing, I might just have enough pins to do a set for each SIDcog, too. And considering they just canned me from work, well, I have plenty of free time on my hands... Cheers! DB Edited July 3, 2012 by Shadoclaw Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.