Emulation of the MOS SID 6581: the C64 sound chip.
https://youtu.be/w_o1x2BQYCo An overview of the GUI.
https://youtu.be/q-gvpAawSGA A run-through of the presets of v1.1
This ensemble is a near-perfect emulation of the extraordinary Commodore 64 sound chip. Included are all features of the original hardware:
* Three channels with Triangle, Square/PWM, Sawtooth, Noise and combined oscillators.
* Ring modulation and hard sync.
* The classic SID saturating filter that is incredibly important but missing on most emulations.
* LFOs and envelopes for pulse width, pitch, amplitude and filter cutoff.
* Step table at up to 50Hz for that genuine sound.
* Optional quantization clock to restrict modulation updates to 50Hz or 60Hz as used in most games, or 100Hz or 150Hz as used in modern SID tunes and by Martin Galway in the Wizball theme.
No attempt is made to create a better SID. No features are enhanced or improved. This is not the usual 'SID-like' or '8-bit style' synth. This is an attempt to recreate the real thing as closely as possible with the most user-friendly interface possible. Included are multiple presets taken directly from Commodore 64 games by dumping out the hardware registers during playback.
The SID Filter emulates the characteristic saturation and distortion present in the real hardware, which is the main feature that distinguishes most emulations from the real thing. I have spent a long time using an oscilloscope to view the output from multiple real SID chips alongside Insidious 6581 to ensure that the output is as close as possible.
The example sound is entitled "For All It's Worth" and was created by me using multiple instances of only this plugin. All of the sounds are included in the ensemble. It was created for the free "Summer of SID" album, available at https://c64audio.com/pages/summer
You can hear another example with my recreation of Chris Huelsbeck's title screen music from the game R-Type at https://www.youtube.com/watch?v=Vt0K8vM_4HQ.
I have a blog about the creation of this ensemble at http://insidious6581.blogspot.co.uk
As of v1.2.2, this ensemble uses a component of Simple Arp by salamanderanagram.
Changes v1.2.3 (2017/12/16):
* Added a PWM position display that shows the final combined PWM value.
* Remade the LFO Fade/Delay implementation to take into the account the starting phase of the waveform, making it more flexible and seamless.
Changes v1.2.2 (2017/12/10):
* Added new play mode options: Solo, Legato, and Live arp. With live arp you can note play those 8-bit bubbly chords live.
* Added new presets from my track 'For All It's Worth'.
* Simplified the top-most channel routing.
* The whole portamento section has been replaced. Portamento is now logarithmic instead of linear using the Smooth module from 2-OSC, but does not produce gate clicks like before.
* Fixed a bug in the table looping where an incorrect waveform could be set on a zero entry.
Changes v1.2.1 (2017/11/19):
* The waveforms are now output at the correct bit depth according to the hardware specs.
* The ADSR wave is now quantised to 8-bits.
* The Filter automation parameters had the same IDs as channel 3's parameters, so were being hidden.
* Removed the full channel switch if the waveform is set to nothing. Now only pressing mute button will completely stop processing. Fixes a potential problem with program changes.
Changes v1.2 (2017/11/11):
* More accurate root waveforms. The tone and saturation now perfectly match the real hardware.
* Much improved combined waveforms, especially at higher frequencies.
* Vastly more accurate filter, tweaked by matching waveforms using an oscilloscope connected to real SID chips. It is almost indistinguishable from the real thing.
* Root pulse width value now allows the full 0-100% rage instead of 0-50%.
* Pulse width is quantised to 4096 values like the real chip.
* Table loop start and end points. Tables can be simpler and have an attack phase.
* Increased pitch range.
* New custom graphics
* Control sensitivity adjustments
* Improved the modulation envelope graphs and added a graph to the main volume ADSR.
* Added a MIDI channel parameter to the filter to set the channel used for its LFO Key Follow and envelope triggering.
* Better CPU usage. Also, muting a channel will completely stop it from using any CPU.
* Added volume ADSR to the automatable parameters.
* Added support for Bank Select for better patch organisation.
* Fade time now matches the specified value correctly.
* Fixed a clicking that could occur on triggering a note.
* Switched from using custom MIDI data parsing to using Reaktor's built-in MIDI modules for reduced complexity.
Changes v1.1 (2015/06/09):
* Fixed an issue with the redisplay of the LFO waveforms after changing programs.
* Added a feature to clock the modulation at 50Hz or 60Hz to emulate C64 games more closely and give a slightly more '8-bit' sound.
* Added the ability to hard sync the combined waveforms.
* Added presets for the R-Type title music MIDI file.
* Added a MIDI file for the R-Type title music.