| |
Frantic
Registered: Mar 2003 Posts: 1661 |
Configurable addresses in multi sid tunes please
Hi guys!
If you want to make a fellow scener a tiny bit happier than he already is:
In multi sid tunes (2 sid chips or more) it would be super nice if more people started to add the possibility to configure the adress of the extra sid chips before the tune starts playing. After all, if you play multi sid tunes on a real machine it may not be easy to change the addressing of the extra sids you have. Sometimes there are jumpers which allow a bit of configuration (such as switching between de00 and df00, or between d4xx/d5xx or something). However, in many cases the configuration options are limited. For example, in my 3sid-machine, the sid chips are located at $d400, $d420 and $d500 and that's that. I can't change it. No jumpers or stuff like that. :)
I understand that most people use VICE or various cross platform music editors, or emulated+configurable "sid chips" like the ones in the 1541U2, when they deal with multi sid stuff, but still.. the real machine with real hardware sid chips is always the main target, right? ;)
Thanks in advance! ;) |
|
| |
Frantic
Registered: Mar 2003 Posts: 1661 |
(...and if you want to make it real fancy you could even autodetect where the sids are located, if available. TLR wrote a nice tool called something like siddetect which does a nice job in identifying sid chips. Can't remember where I found that. It doesn't seem to be on here.) |
| |
tlr
Registered: Sep 2003 Posts: 1807 |
Quote: (...and if you want to make it real fancy you could even autodetect where the sids are located, if available. TLR wrote a nice tool called something like siddetect which does a nice job in identifying sid chips. Can't remember where I found that. It doesn't seem to be on here.)
I'm not sure it does 8+ SIDs but it could be expanded of course.
The original post was here:
https://csdb.dk/forums/?roomid=14&topicid=99181#99226
It's mirrored here:
http://toolsforscholars.com/defmon/doku.php?id=docs:stereo_sid_..
Seems like it never made it onto the database. As it's gone from experiment to somewhat of a tool, maybe it should? |
| |
bugjam
Registered: Apr 2003 Posts: 2717 |
Yes, it should, definitely! :-) |
| |
tlr
Registered: Sep 2003 Posts: 1807 |
Ok then, here: sid-detect2 |
| |
4mat
Registered: May 2010 Posts: 66 |
I wrote a wrapper for someone that did a soft read/write of the sid registers to re-map multi sid songs where needed. Obviously that was doing the writes in an order I chose, but seeing as most multisid tunes are probably doing them all at once I guess it would be accurate enough. (only seems to be old drivers that do register re-writes inside the frame pass)
I probably don't have time to write it as a tool but that's really all that's needed isn't it? I've had to patch drivers directly for musicdisks to do sid select and it's way more of a pain. |
| |
4mat
Registered: May 2010 Posts: 66 |
Having written all that, in the source for Instinct there's a routine called 'patch_sids' that will hard patch multi-sid tracks to do their register writes to an area in memory. Then you can write directly to your sids from there instead. That way you don't get 'cross-talk' between sids being read/written to which can happen. (took a long time figuring that out when doing FMX)
Instinct |
| |
tlr
Registered: Sep 2003 Posts: 1807 |
@4mat: both are very neat solutions, although I don't really fancy altering the write order/timing. As you say, for older tunes it can fail, sometimes completely.
I don't think it's plausible that every musician doing a stereo/multi sid will be adding these approaches manually. In the ideal case the actual multi SID music routine should provide a way to set the base address.
An alternative could be a sidreloc type tool that allows relocating the sid base (or making it runtime relocatable). |
| |
Frantic
Registered: Mar 2003 Posts: 1661 |
Also, I guess in the end there aren't that many players/editors that support multiple sids, so I guess it would be fairly simple to just make custom solutions for each of them.
Which ones are there actually? SidWizard, GoatTracker, CheeseCutter, defMON, Threesome... Did I miss any?
I guess most of the released multi sid tunes are created in SidWizard or GoatTracker...? |
| |
FunFun
Registered: Dec 2018 Posts: 5 |
Quote: I wrote a wrapper for someone that did a soft read/write of the sid registers to re-map multi sid songs where needed. Obviously that was doing the writes in an order I chose, but seeing as most multisid tunes are probably doing them all at once I guess it would be accurate enough. (only seems to be old drivers that do register re-writes inside the frame pass)
I probably don't have time to write it as a tool but that's really all that's needed isn't it? I've had to patch drivers directly for musicdisks to do sid select and it's way more of a pain.
I have also written a tool that tries to detect SIDs in C64 using TLR's method.
SIDdetector V1.0
I did a video on the subject.
https://www.youtube.com/watch?v=q3ssYPXpFZk&t=335s
Most SID are in GoatTracker or CheesCutter and the player could be changed to handle runtime change of SID second address. The problem main problem is that ARMSID, FPGASid, SSU, SIDFX, MIXSID or UltiSID are not configured in the same way. All uses different tools for doing this. |
| |
Frantic
Registered: Mar 2003 Posts: 1661 |
Yep, nice tool you've got there. The question was not about configuring the sids to change their adress to adapt to where the player expects the sid to be though, but to allow for the players to adapt to where the sids are, so — in relation to the question — I don't see why it would be a problem that different kinds of emulated sids are configured in different ways. |
... 36 posts hidden. Click here to view all posts.... |
Previous - 1 | 2 | 3 | 4 | 5 - Next |