pouët.net

Dump of SID registers

category: music [glöplog]
 
Hi, I need a help, since I'm not a coder so I'm unable to write my own tool.
I'd like to have a SID registers' dump, namely dump of filter register from selected C64 SID tunes. The goal is to mimic the filter settings for my own song (yes, to copy it, but also investigate how specific sound is done and adapt it to use with the editor I use (TFX)). I really like basses in Jeroen Tel's musics, but I'm unable to mimic them in my editor just by ear, so I'd like to see how the bass sound is exactly filtered, you know, the numbers from 'filter table'.. Is there such a tool or any advice how to do it? :) Thanks a lot!!! :)
added on the 2014-02-25 16:02:19 by aki aki
SID files are executable C64 code and the player routines differ, so there's no one single way to do this. You'd need to disassemble the source to figure out how it works, but the filter register is located in memory $d415-d416 so maybe you could just watch what happens in that memory location. Going to be tricky in any case.
added on the 2014-02-25 16:44:49 by Preacher Preacher
You can't read or dump the SID registers but there's a trick that I used back in 94ish: Set the IO area to RAM (poke 1,48 :), call music routine, copy $d400-$d418 somewhere else, set banks back to normal. Then for reference transfer your copy of the registers back to $d400 so you can hear what's going on.

This might screw up when the music routine in question accesses the registers multiplie times per call (weird hardrestarts or osc syncs) but works well with the majority of tunes. I actually used it in a music player that could show EGs per voice, turn voices on/off and first of all "emulate" between 6581 and 8580 by fixing the filter frequency and exchanging the mixed waveforms :)
added on the 2014-02-25 16:46:44 by kb_ kb_
Hmm that seem to be complicated. I was thinking about using emulator instead of real machine. Even VICE doesn't have any 'log into file' feature to monitor what's happening in inside the machine? The only thing which cones to my mind atm is to watch registers window in SidPlay for Mac, slow the music to its minimum and try to catch the SID's filter register on thy fly, and probably make a video of it and then note down all the numbers...
added on the 2014-02-25 17:16:59 by aki aki
Factor6 :

Do you know jsidplay2? It has a SID dump feature, which looks like this:

https://dl.dropboxusercontent.com/u/74645405/SID-dump%20cybernoid
added on the 2014-02-25 17:23:23 by Shinobi Shinobi
goattracker comes with "siddump" which ... does just that :)
added on the 2014-02-25 17:26:12 by groepaz groepaz
oops its not actually related to GT? ... my bad :)
added on the 2014-02-25 17:40:29 by groepaz groepaz
for things where the order and # of writes is irrelevant you could do the IO/RAM flipping trick. if it isn't, you could replace all the SID writes with subroutine calls that log the register addresses and values
added on the 2014-02-25 19:16:44 by linde linde

login