Login / Register  0 items | $0.00 New#KVRDeals
Algorythm
KVRist
 
275 posts since 25 Sep, 2004

Postby Algorythm; Wed Aug 17, 2005 5:03 am Import .sid files in a C64 vsti

Hello! Does anybody know if is there any c64 sid emulator vsti that can import original .sid files and play them through it's engine?I've tried Refx Quadrasid but it doesn't have this function.Is it a difficult work for the developers?
It's more fun to compute..
Mike from reFX
KVRian
 
539 posts since 26 Feb, 2001, from Vancouver / Canada

Postby Mike from reFX; Wed Aug 17, 2005 5:19 am

No, it's not difficult. You just have to emulate a complete C64, capture the changes of the SID registers and write a human-intelligence like AI system to make heads and tails out of the data to convert them to LFOs, envelopes etc. to make it work. No big deal. Can do that in one afternoon ;)
stefancrs
KVRAF
 
4629 posts since 20 Feb, 2004, from Gothenburg, Sweden

Postby stefancrs; Wed Aug 17, 2005 5:22 am

Algorythm, sid files are _programs_ that run on the c64. Executables. Tough luck, eh? :)
Stefan H Singer
Musician, coder and co-founder of We made you look Web agency
Paulie Phonick
KVRian
 
1352 posts since 23 Sep, 2003, from ocation: cation: ation: tion: ion: on: n: :

Postby Paulie Phonick; Wed Aug 17, 2005 5:34 am

But PC SID players exist - SIDPlay is even based on a GPL emulation library. Perhaps it could be used to at least write an offline converter that would catch requests that go to the SID chip and transform them into MIDI notes and CC data that could be used to control a SID emulator VSTi? (might be a dumb idea, I don't have real knowledge about how SID files work).
the the impotence of proofreading
Mike from reFX
KVRian
 
539 posts since 26 Feb, 2001, from Vancouver / Canada

Postby Mike from reFX; Wed Aug 17, 2005 5:37 am

And then? You have a *huge* datastream of midi-cc data. That's not a patch, that's like a taperecorder. You can do nothing with that data exept play it back. You can use samples for that, which are playable by tons of samplers and are much easier to handle and much lighter on the CPU. The problem is converting this data-stream into logical data like LFOs, envelopes and a mod-matrix. Write a logic for that and I put it into QuadraSID.
Paulie Phonick
KVRian
 
1352 posts since 23 Sep, 2003, from ocation: cation: ation: tion: ion: on: n: :

Postby Paulie Phonick; Wed Aug 17, 2005 5:47 am

I mentioned the idea may be dumb ;)

I just thought there would be a way of capturing some high level control data that could be converted into meaningful MIDI messages. Oh well... :shrug:
the the impotence of proofreading
Algorythm
KVRist
 
275 posts since 25 Sep, 2004

Postby Algorythm; Wed Aug 17, 2005 5:55 am

So mr. Kleps, is it possible for you to make a sid player like Sidplay, based on your brilliant Quadrasid engine?I didn't understand the above posts so well..I think that there must be a way to combine the source code from an emulator like the one on Sidplay and some parts of a c64 vsti to make the best reproduction.It could be the best soft player for c64 fans...
It's more fun to compute..
User avatar
odo
KVRAF
 
3380 posts since 1 Sep, 2002

Postby odo; Wed Aug 17, 2005 5:59 am

sid= :love: :D
Make Your Voice Heard!!
EUROPEAN VAPERS PROTEST 29th 2.00PM.It saved my life.
Mike from reFX
KVRian
 
539 posts since 26 Feb, 2001, from Vancouver / Canada

Postby Mike from reFX; Wed Aug 17, 2005 6:14 am

What is the purpose of yet another SID player?
jmh
KVRian
 
1409 posts since 8 Dec, 2002

Postby jmh; Wed Aug 17, 2005 6:17 am

.sid files aren't programs actually, just the player routine and data... (in other words, they're not executable files)

There's SID2MIDI which does a reasonable job in converting the music into MIDI, but after that it's up to the user to modify the MIDI data and come up with sounds to get it to play halfway decently.

There are a lot of folks doing C64 remixes nowadays, and some of them utilize SID2MIDI in the process.

It would of course be ideal if there was a magical SID VSTi that did all this - it's quite possible to construct a parser that builds instruments from the data the play routine writes to SID registers, as witnessed by HardSID PCI sound editor... (a mad french friend of mine has a half functioning tracker project that includes a 'sound ripper', you basically feed a sid tune to it and it allows you to use its sounds!)

Using GPLed code in a VSTi is a can of worms naturally, unless the coder is willing to accept the license and everything that comes with it.

In the meantime, get acquainted with SID2MIDI, some heavy MIDI tweaking and some good sound sources for SID style sounds (Quadrasid, Vanguard, Quantum64 for starters...)

Me, I use SID2MIDI, sample bits from a tweaked C64 (two SIDs and some electronics to provide a way better, cleaner output than the overpriced SIDStation), HardSID Quattro (the old ISA model with two 6581s and two 8580s), and a pile of synths... with emphasis on using the real SIDs for things emulators and whatnot don't do yet (that filter saturation!!! and some other esoteric tidbits) but I'm not trying to make things sounds as if they came from a real C64 :)

One idea I've been fiddling with is porting parts of reSID engine into a SynthMaker-made synth. I'm not after a faithful emulation of the real thing, instead I just want the oscillators (especially the noise generator) and filters in my own synth. If it ever gets up to the quality that it's worth releasing, I'll do so in accordance to GPL (which would most likely mean publishing the SM schematic and the parts of the reSID code ported to SM).

Michael How are things with the successor to QuadraSID? Hope you will finally find some time to work with it :)

Regards,

JMH
Now available with added Inherently Suspect Justification!
stefancrs
KVRAF
 
4629 posts since 20 Feb, 2004, from Gothenburg, Sweden

Postby stefancrs; Wed Aug 17, 2005 6:17 am

It wouldn't be able to sync to the host or anything. Just render your sids to wav if you must have them in your daw :)
Stefan H Singer
Musician, coder and co-founder of We made you look Web agency
Algorythm
KVRist
 
275 posts since 25 Sep, 2004

Postby Algorythm; Wed Aug 17, 2005 6:20 am

Michael Kleps from reFX wrote:What is the purpose of yet another SID player?


More accurate reproduction through software!If you hear the hard c64 or a Hardsid card, they are far better than all the soft Sid players..Sidplay which is currently the best, has about 75% of the characteristic original sound.Someone must raise this value because the bad results are audible.. :(
It's more fun to compute..
Mike from reFX
KVRian
 
539 posts since 26 Feb, 2001, from Vancouver / Canada

Postby Mike from reFX; Wed Aug 17, 2005 6:22 am

SID2MIDI has NOTHING (I repeat) NOTHING to do with the patches themselves. It just extracts the notes (the performance, the melody, the art) NOT the sounds itself. Guys. The HardSID PCI sound editor has some serious drawbacks and it's not fully automated. You actually have to edit the data and nearly convert it by hand. Computers are not humans that can understand and analyze stuff automatically. As far as "SID-register analyzing -> quadraSID patch" logic goes, only humans can do it. The only way for a computer would be to brutaly minimize the effort by watching only for simple things (exact pitch cycles etc.) which could then be turned into an LFO->pitch mod-matrix. The amount of work involved is simply not worth the results. More complex stuff is simply not possible. Forget it.
Paulie Phonick
KVRian
 
1352 posts since 23 Sep, 2003, from ocation: cation: ation: tion: ion: on: n: :

Postby Paulie Phonick; Wed Aug 17, 2005 6:36 am

It could be fun to create a neural net for this, learn it with QuadraSID parameters on one side and FFTd output samples on the other and then feed it with FFTd SID sounds to recreate and watch the results. You might actually get a good starting point this way...

Ok, just kidding :hihi:
the the impotence of proofreading
jmh
KVRian
 
1409 posts since 8 Dec, 2002

Postby jmh; Wed Aug 17, 2005 8:43 am

Michael :) I'm well aware of all this, I didn't state it would be simple nor trivial. FWIW, I've been at it since 1987, and during all these years I've talked to most people who have ever done any research on it.

Doing a generalized push-one-button-and-it's-done kind of solution is nearly impossible. However, people who have spent some serious time and are extremely familiar with C64 routines have shown what would be possible.

Familiarity with the player routine itself in regard to a single tune would allow to extract the patch information, build a synth patch based on that, extract the control information from the music data and convert that to MIDI information. However, take into account that there are hundreds of routines used, and yep, it's nearly impossible.

And once again, a big HOWEVER. Simple register dumps can be used to construct parts of the actual sounds, and with some analysis, it can be taken further (as I mentioned before, people have been working on such contraptions).

One could analyze those register dumps and construct most of the relevant information - that is waveforms or 'wavetables' (drums most of the time), 'pitch tables' (drums, arpeggios), pwm behavior (be it tables or simple routines - 99% they are really simple indeed)... translating this to a generalized, existing VA VST would of course be rather difficult if it doesn't provide the necessary features (although most of the play routines on C64 offer rather simple patches when it comes to sound architecture). But that doesn't exclude the possibility of a dedicated VST that is built on a generalized structure of a one channel C64 instrument with the most typical features of an instrument already present... provide the said instrument with wavetables, pitch tables, filter tables, necessary pwm functionality, etc. and translate the analysis data - not impossible, just difficult.

(As a C64 musician I'm more than familiar with most of the popular players and editors, and I do know that an instrument in these routines can be broken down to a list of components so that a generalized version can be constructed that can play most sounds done with these players - there are even players+editors out there that provide the ability to mimic other players perfectly... but this is perhaps drifting too deep into that area =))

Is it really worth it then? Seriously I don't think so. Something like QuadraSID provides the same sounds already, just in a more powerful manner. There's hardly a sound (patch, should I say) on C64 I'd use as is, when there's the possibility of doing it better with the existing SID emulation VSTis.

As you said, the amount of work involved isn't worth the results. I agree totally with this.

Now... I don't know if you noticed my question at the end of my posting, so I'll ask again nicely :)

Can you share any information on how things are going with the successor to QuadraSID? The last I recall reading was that you need to find the time for it. I for one am really anxious on hearing about it, hoping that one day you'll find a time slot for the project to continue :)

Regards,

JMH
Now available with added Inherently Suspect Justification!
Next

Moderator: Moderators (Main)

Return to Instruments