| |
SparkyNZ Account closed
Registered: Jan 2011 Posts: 34 |
Help: SID Filters
Hi, I'm not very familiar with the use of the SID filters. In particular, it would appear to me from the C64 Ref Guide that you can only assign filters to one channel only?? Or would that be all channels only??
I'm sure I've heard tunes where the filter is doing its job on one channel only (ie. Reyn Ouwehand's work). Where's the best place to find out how to use the filters on the C64?
Cheers
Sparky |
|
| |
tlr
Registered: Sep 2003 Posts: 1790 |
There's only one filter but you can pass any combination of the voices through it. |
| |
Frantic
Registered: Mar 2003 Posts: 1648 |
Also note that the more channels you route through the filters, the more distortion you will hear, especially on the old SID. Hence, do not expect it to sound the same as in VICE if you route several channels through the filter. (..but maybe this is better emulated in these days. I might not be completely up to date in this regard.)
I am not sure if it helps, but you could have a look at the registers $d415 to $d418 to see basically everything you can do with the SID:
http://unusedino.de/ec64/technical/aay/c64/sidmain.htm
In $D417 you select which of the voices that should be routed through the filters. As TLR says, any combinations of channels can be routed through the filter. In $D418 you select what filter type to use. Again, you can use any combination of filter types at the same time, but since there is only one filter, all the voices that are currently routed through the filter will make use of the same configuration of filter types. (In $d418 you can also change the volume of the SID, but this isn't related to the filter as such, but rather does precisely what I said: it controls the global volume of the SID, no matter if any voices are routed through the filter or not.)
There is also a chapter on the SID in the programmers reference guide. Mapping the C64 also contains info on the workings of the SID. Both of these books are available here:
http://codebase64.org/doku.php?id=books:start
|
| |
SparkyNZ Account closed
Registered: Jan 2011 Posts: 34 |
Thanks guys. I'm actually writing something similar to GoatTracker so I'll be using the ReSID code from Vice.. so I guess I won't be expecting the filters to work the same as a real C64, but thats OK. Its all for fun. :)
So by the looks of things you just set bits to say include channel 1, 2,3 etc and through whichever filter they go.
Thanks again. I have to say, its awesome to see you all so enthusiastic about the C64. I've been writing tunes for a while and I'm going to have some SID lead synth in my next efforts. No matter what I listen to, I can't stop listening to Cybernoid - you just can't beat SID!! SID rocks!! \m/ |
| |
Conrad
Registered: Nov 2006 Posts: 849 |
Good to see another SID fan. :) Yes, voice 1,2,3 can be combined depending what you set in $d417... for example:
Filter Voice 1 + 2... = $f3 (bit 0 (voice 1) & bit 1 (voice 2))
Filter Voice 1 + 3... = $f5 (bit 0 (voice 1) & bit 2 (voice 3))
Filter Voice 2 + 3... = $f6 (bit 1 (voice 2) & bit 2 (voice 3))
The left nybble ($f) configures the resonance of the filter pass (or what I like to call personally, the amount of juice put into the filter).
you'll be fine as long as you know binary and hex, which I assume you are.
Good luck with this new editor... also, if you ever want to make it MAC portable, ask someone like Mr.SID... he made the MAC port of GoatTracker. |
| |
SparkyNZ Account closed
Registered: Jan 2011 Posts: 34 |
Quote: Also note that the more channels you route through the filters, the more distortion you will hear, especially on the old SID. Hence, do not expect it to sound the same as in VICE if you route several channels through the filter. (..but maybe this is better emulated in these days. I might not be completely up to date in this regard.)
I am not sure if it helps, but you could have a look at the registers $d415 to $d418 to see basically everything you can do with the SID:
http://unusedino.de/ec64/technical/aay/c64/sidmain.htm
In $D417 you select which of the voices that should be routed through the filters. As TLR says, any combinations of channels can be routed through the filter. In $D418 you select what filter type to use. Again, you can use any combination of filter types at the same time, but since there is only one filter, all the voices that are currently routed through the filter will make use of the same configuration of filter types. (In $d418 you can also change the volume of the SID, but this isn't related to the filter as such, but rather does precisely what I said: it controls the global volume of the SID, no matter if any voices are routed through the filter or not.)
There is also a chapter on the SID in the programmers reference guide. Mapping the C64 also contains info on the workings of the SID. Both of these books are available here:
http://codebase64.org/doku.php?id=books:start
A Mac port? Hell no.. I've already got a GoatTracker player working on my iPod.. :-) Thats the platform I'm aiming for - I want something small to entertain myself on the train. Funnily enough my little program is going to be called TrainTracker..
Actually my code builds on Windows, Mac and iPod since its all SDL/OpenGL based. Cross platform rules!! Android one day.. maybe.. but I'm still probably ages away from seeing my toy work on the iPod. I wonder if there'll be any interest at all. I can't think of anything more fun than being able to knock up SID-sounding tunes on the go. :-) |
| |
Laxity
Registered: Aug 2005 Posts: 459 |
i've been working on the exact same thing, only it's to run on the iPad.. If ever finished. :) |
| |
SparkyNZ Account closed
Registered: Jan 2011 Posts: 34 |
Quote: i've been working on the exact same thing, only it's to run on the iPad.. If ever finished. :)
When you drop down into the smaller screen, new challenges arise. The day I bought my iPod I couldnt wait to try SunVox but it was just impossible to use on such a small screen when bouncing around on the train (our trains are pretty old and crap! :) ) .. so I figured I could create an easier GUI. The GUI is the fun part but I've hated the SID player routine. Getting that hard restart stuff working has been doing my head in. Couldn't have done it without help of Cadaver. |
| |
Laxity
Registered: Aug 2005 Posts: 459 |
Oh right. Are you emulating the c64 processor running the player from there? |
| |
SparkyNZ Account closed
Registered: Jan 2011 Posts: 34 |
No, I'm using ReSID - it emulates the SID chip so you have twiddle the registers, make it process a number of cycles to give you some samples back which you have to mix etc. All good (hair pulling!) fun. Been a steep learning curve for a non-audio programmer such as myself! |
| |
Stainless Steel
Registered: Mar 2003 Posts: 966 |
@Laxity & SparkyNZ:
I'd like to see what GUI you came up with for a touch-screen device, Screenshot's possible ? |
| |
SparkyNZ Account closed
Registered: Jan 2011 Posts: 34 |
Hi Stainless. I'm happy to send a screenshot through sometime. The only screen shots I have are on my Mac and they're pretty basic looking at the moment. My Mac is sitting in the corner of the room while I'm nutting out my SID player. I've been having headaches trying to get the player to work for several weeks and I'm in the middle of seperation at the moment too so its taken a bit of a back seat. Send me a PM with your email if you like and I'll make a note to send you some shots through once I get the Mac plugged in again - or I could send you through a Windows screenshot. It just looks more realistic on the iPhone simulator than it does on Windows etc. Its all fixed screen size at the moment too and in landscape mode - no special stretching or tilting etc. But.. at the end of the day - if it does what I want it to so I can be musically productive, thats what I'm after. Maybe I can find someone to make it look prettier on here as I have no pixel artistic flair whatsoever.. Or lets just say that my career as a graphics artist ended when I upgraded from my Vic20 to a C64. LOL |
| |
Laxity
Registered: Aug 2005 Posts: 459 |
I use resid too, but also emulate the 6510, so the player is the same as on the 64 in my environment. So far I have emulation and playback working. The editor part has a long way to go still, and I haven't worked on it since January, because I've been more than busy with other things. :/
Ss, Since I'm not doing the editor yet, there's not so much touch input stuff the check out - only a couple of buttons and windows that can be activated and such.. PC version will probably be finished first before I move on to the iPad build. |
| |
SparkyNZ Account closed
Registered: Jan 2011 Posts: 34 |
I'm itching to get back to working on my editor. That was the fun part. Right now I'm still trying to get the player playing sequences of notes exactly like GoatTracker does. I'm nearly there - I ran some notes through it lastnight but the attack of the notes sound different on both programs. GoatTracker allows for configuration of hard restart where my player doesn't at the moment.. It could be that but comparing SID register dumps gets a bit boring for me. :-)
I'm also really nervous about the whole sound processing on the iPod - when I ported GoatTracker's player a while ago, it plays most of the GT example tunes fine but stutters a bit on some. Enabling debug to file on my laptop also causes stuttering so it can be a real pain to debug.
Last Jan, eh? Yeah I've been on and off for months too. No kids this weekend so hopefully I'll get something done if the weather is poor.
|
| |
Laxity
Registered: Aug 2005 Posts: 459 |
The iPod ought to be powerful enough to run ReSid without stuttering - I didn't have problems at all, with ReSid without modificatons. Didn't use interpolation or any other fancy setting though, just the most plain setting there is. Are you running it on an old iPod equivalent to iPhone3 or earlier?
Kids have a tendency to eat good spare time - I know mine do. :) |
| |
SparkyNZ Account closed
Registered: Jan 2011 Posts: 34 |
My iPod is an iPod Touch - same hardware as the iPhone 4. I just did a straight compile of GoatTracker, made it load a tune and it worked. Maybe the tune is supposed to stutter haha. I think it was called Dojo.sng or something.
I really hope it has enough grunt because I'm wanting to run multiple ReSID instances. We'll see how it goes. I'd better get these player routine glitches sorted out I suppose. :-) |
| |
Laxity
Registered: Aug 2005 Posts: 459 |
Well, since you had the same stutter when writing the audio stream to disk, it's surely an implementation issue rather than power issue. :)
I suppose it has the power to run a couple of ReSid instances at least.. The iPhone3G (not S) can run it :)
|
| |
SparkyNZ Account closed
Registered: Jan 2011 Posts: 34 |
Ah, for sure. If I turn my debug off its fine. It'll be because I'm opening and closing a file every time it writes a line of debug.. well.. thats what its doing on Windows at the moment. I'm not too worried about the iPod just yet - gotta get my logic all sorted first. At least I'm getting some good things fixed today. The beer in the fridge is calling though.. better fix the track commands now otherwise it won't happen until tomorrow! :-)
I can't honestly see me wanting to use more than 2 ReSIDs.. but you never know. I'm not going to put any limitations on it. I suppose if you wanted lots of channel 3 instances it could be good for that .. but.. I personally doubt I'd ever be doing that.
|
| |
Laxity
Registered: Aug 2005 Posts: 459 |
Just out of curiosity. Are you not planning on having the tunes made with your tracker play back on the 64? |
| |
SparkyNZ Account closed
Registered: Jan 2011 Posts: 34 |
Nah.. The whole intention for me is to write music on the go. I could have just written a tracker, but if I do that I'm bound to get stuck and want more samples than I have on the iPod at the time. I take it your iPad app is going to be a real C64 sound producing workhorse? |
| |
Laxity
Registered: Aug 2005 Posts: 459 |
Yeah, that was the idea.. But as many pet projects, there's a risk that it'll amount to nothing. :) |
| |
Digger
Registered: Mar 2005 Posts: 437 |
@Laxity: Any news about the iPod app? :) |
| |
SparkyNZ Account closed
Registered: Jan 2011 Posts: 34 |
Quote: @Laxity: Any news about the iPod app? :)
My iPod app is still in development.. The player routine is driving me nuts! :) Its only getting a couple of hours attention every week tho. :( |