Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > C64 Productions > SIDBlaster
2025-05-04 19:33
Raistlin

Registered: Mar 2007
Posts: 757
SIDBlaster

A little early perhaps to put here on CSDb as a full release .. but for anyone interested, here's a new tool from me:-

https://github.com/RobertTroughton/SIDBlaster

I have big plans with this.. main features right now (may be buggy!) are:-

- ability to add simple players to SIDs <-- later on of course this will allow full visualisers, SID information and more

- relocation of SIDs. The process used for this is very different to other relocators that I've seen. I essentially do a 10mins emulation of the CPU, running through the SID, checking what's data, what's code, what's read from, what's written to, etc... detecting indirect reads, and where the vectors for those come from ... dealing with "backups" of those vectors and all that nastiness. It's far from perfect .. but it works already with many SIDs and I'll look at other SIDs to see how easy those will be to fixup.

Next tasks:-
- exposing more information to players/visualisers
- allowing import of information/defines from txt files to pass to the visualisers
- adding an "insanity check" to the relocator - so I'll do 10mins' emulation of the SID before and after relocation, recording all the $d4xx writes and making sure they tally up.

Much more to be done ... feedback is of course welcome.

Windows/Ubuntu/Mac releases are there .. though I've only tested Windows - hopefully the others "just work"??
 
... 20 posts hidden. Click here to view all posts....
 
2025-05-05 21:58
Burglar

Registered: Dec 2004
Posts: 1137
@raistlin, cheers for the explanation, will follow this project :)
2025-05-05 22:06
Stone

Registered: Oct 2006
Posts: 176
Quoting Raistlin

It's a fun project to work on so I'm definitely going to push ahead and see if I can get the relocation working solidly.


I Hope you do one of your write-ups on this one too. It's always interesting.
2025-05-06 19:33
Raistlin

Registered: Mar 2007
Posts: 757
Quoting Stone
I Hope you do one of your write-ups on this one too. It's always interesting.


Well, now that you mention it..!

https://c64demo.com/welcome-to-sidblaster/

And, also, while I'm here .. I added some new features today - WIP and subject to massive change - to make it easier to verify relocation work etc. It's not 100% yet but it works well enough for now.

https://github.com/RobertTroughton/SIDBlaster

PS. I will still change the name of the tool .. maybe .. but probably as I get to v1.0.
2025-05-09 17:20
Raistlin

Registered: Mar 2007
Posts: 757
Quote: RSID are not supported, it's not told anywhere, add in the readme a warning at least. Trying to relocate \MUSICIANS\T\Turbocracker_87\Crockets_Theme.sid the message is a bit vague

SIDBlaster.exe -relocate=$1000 Crockets_Theme.sid Crockets_1000.sid

Not a valid SID file!
[2025-05-05 16:50:52] [ERROR] Failed to load file: Crockets_Theme.sid

other than that, if the exe needs java to run kickass, I'm outta here. I won't install java to test if further


Hey Ian,

I've added detection for RSID on the head version now and will put in a later release .. but .. I don't suppose you can give example SIDs for the various other versions, could you..? If they exist in HVSC - maybe everything's already updated to the latest PSID version?

I might come back to RSID if there's any way to emulate it - but it sounds like it would be tricky?
2025-05-09 17:58
iAN CooG

Registered: May 2002
Posts: 3235
"RSID files require a true C64 environment and cannot be emulated by SIDBlaster."
Very well, now it's clear why the sid gets refused =) Before it seemed it was either in the wrong path or something else.

I tried a RSID to see if this new tool would support them, but apparently no tool so far emulates them to be able to relocate them.

I really don't understand what you mean by:

"I don't suppose you can give example SIDs for the various other versions, could you..? If they exist in HVSC - maybe everything's already updated to the latest PSID version?"

Which other versions? Other PSID header version?
*_2SID.sid (version 3)
f.e. HVSC\MUSICIANS\A\A-Man\Phat_Frog_2SID.sid
*_3SID.sid (version 4)
f.e. HVSC\MUSICIANS\C\Chiummo_Gaetano\Arcade_Memories_3SID.sid
2025-05-09 18:57
Raistlin

Registered: Mar 2007
Posts: 757
Thanks Ian, that's perfect. Both the _2sid and _3sid files seem to work (on the current head version at least). Interestingly, I couldn't load the _3sid file in SidPlayerW so wasn't able to audibly test it that way - but that's fine, my tool will do a before/after verify anyway so should be all good.
2025-05-22 18:50
Raistlin

Registered: Mar 2007
Posts: 757
SIDwinder is the NEW SIDBlaster :-)

https://github.com/RobertTroughton/SIDwinder

And we're back to v0.1.0.

It's worth looking at for the visualiser stuff now. I use a new (to me, anyway) technique for grabbing hold of the SID registers that means that audio playback should be PERFECT.

Basically, SIDwinder determines what memory address the SID will change in the Play() calls .. usually there's around 100 of these - but of course some players will be better or worse than others. Anyway, it then generates C64 code that can save and restore all those values.

With that, the SID Play() function can be called twice!

1) save data that might change in Play()
2) Play() <-- this is a "perfect" play call, no mods - nothing that will affect the audio at all
3) restore data
4) disable ROM
5) call Play() again
6) copy ghost bytes from $d400-d418
7) enable ROM

Due to the save in (1) and restore in (3), the 2nd Play() call is exactly like the 1st - but giving us access to the SID write values.

Try it out..! Just grab the binaries and:-

SIDwinder.exe -player=RaistlinBars input.sid output.prg

and that's it - it'll package it all up and crunch it for you.
2025-05-22 18:58
Gordian

Registered: May 2022
Posts: 98
I thought it will be SIDBuster;)
2025-05-22 21:30
iAN CooG

Registered: May 2002
Posts: 3235
SIDwinder is a native sid composing program, use some search before naming your tool after existing programs, but beware, you only have one life left =)
https://csdb.dk/search/?seinsel=all&search=SIDwinder&Go.x=0&Go...
2025-05-22 23:05
TheRyk

Registered: Mar 2009
Posts: 2466
Well, then:
Quoting Gordian
... it will be SIDBuster;)

...seems free :D
(at least as Tool Name)
Previous - 1 | 2 | 3 | 4 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
GI-Joe/MYD!
Airwolf/F4CG
LMan
Henne
A3/AFL
Guests online: 403
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Codeboys & Endians  (9.7)
4 Mojo  (9.6)
5 Coma Light 13  (9.6)
6 Edge of Disgrace  (9.6)
7 Signal Carnival  (9.6)
8 Uncensored  (9.5)
9 Wonderland XIV  (9.5)
10 No Bounds  (9.5)
Top onefile Demos
1 Nine  (9.7)
2 Layers  (9.6)
3 Cubic Dream  (9.6)
4 Party Elk 2  (9.6)
5 Copper Booze  (9.5)
6 Scan and Spin  (9.5)
7 Onscreen 5k  (9.5)
8 Grey  (9.5)
9 Dawnfall V1.1  (9.5)
10 Rainbow Connection  (9.5)
Top Groups
1 Artline Designs  (9.3)
2 Booze Design  (9.3)
3 Oxyron  (9.3)
4 Performers  (9.3)
5 Censor Design  (9.3)
Top Webmasters
1 Slaygon  (9.7)
2 Perff  (9.6)
3 Sabbi  (9.5)
4 Morpheus  (9.4)
5 CreaMD  (9.1)

Home - Disclaimer
Copyright © No Name 2001-2025
Page generated in: 0.078 sec.