'[t[2] '[u] '[o] THIS PAGE IS UNDER CONSTRUCTION '[/u]'[/t] // marks to be deleted, # marks to be changed '[/o] '[t[1] The MOS Technology 6581/8580, better known as the '[b] '[o] SID (Sound Interface Device)'[/b]'[/o], is the programmable sound synthesizer chip found in Commodore's CBM-II, Commodore 64, Commodore 128 and Commodore MAX Machine, although it is best known for its use in the Commodore 64. This article covers a small technical specification of sound chip, available tools to compose for the format, ways to reliably play back files as well as mentioning some related tools and other useful links. '[/t] '[#[Specifications] Sound is delivered through three independent audio oscillators (channels) programmed through CPU, in which each channel can play either of the following waveforms; ‒ Sawtooth ‒ Triangle ‒ Pulse (with pulse width control) ‒ Any combination between Sawtooth, Triangle and Pulse ‒ Pseudo-random Noise The SID has no direct volume control per oscillator; each oscillator has to be controlled with ADSR (Attack, Decay, Sustain, Release) generator parameters. Each of the parameters have a resolution of 4 bits; meaning a range of 0-F (in hex). The chip also has a global linear volume control, again with a resolution of 4 bits. The part of the SID that gives it its characteristic tone is its programmable multimode filter, which can be set to low-pass, high-pass and band-pass outputs (or any combination thereof) with a rolloff of either 6 dB/oct (bandpass) or 12 dB/octave (lowpass/highpass). Filter cut-off frequency and resonance can be controlled as well. The different filter modes are sometimes combined to produce additional timbres, for instance a notch-reject filter. Each voice may be ring-modulated with one of the other voices, i.e. the frequency spectrum is convolved and output. Thus, the ring modulation, filter, and programming techniques for switching between different waveforms at high speed make up the characteristic sound of the SID. [ oscillator sync for each oscillator, 8 bit A/D which can be manipulated to play samples ] [[ talk about two different versions of the SID ]] '[#[Tools] '[t[b2]MML Compilers'[/t] • '[t[1] '[[XPMCK] '[/t] XPMCK is a cross-platform MML compiler kit targeted towards various video game systems, including the C64 SID. You can download the latest build of XPMCK on '[l[http://jiggawatt.org/muzak/xpmck/[its website] (at the download section). '[t[b2]Trackers (Native)'[/t] • '[t[1] SID-Wizard '[/t] A soundtracker that runs natively on the Commodore 64. It supports a wide range of engine features, can turn off engine features to reduce memory footprint on export, can export to .SID, to name a few. SID-Wizard is an open-source project and everyone is welcomed to help in further developments of the extensively commented source-code. SID-Wizard can be '[l[http://www.pouet.net/prod.php?which=59899[downloaded here]. • '[t[1] Blackbird '[/t] Another soundtracker that runs natively on the computer. This is a fairly new tool with extensive documentation. Should be accessible to most people trying SID composing (and exporting). • '[t[1] CyberTracker '[/t] Text here --> Not most recommended and not builtin export, must use external source (?) --> perphaps delete this entry • '[t[1] Tool name '[/t] Text here '[t[0]'[u] '[o]DISCLAIMER:'[/u]'[/o]'[/t] '[_s]These trackers will only run natively on the system and thus require you to either use the real hardware or alternatively use emulators (which is the easiest way to transfer export files to modern OSes). The '[l[http://vice-emu.sourceforge.net/[VICE C64 emulator] is recommended for this use. '[/_s] '[t[b2]Trackers (Modern OS)'[/t] • '[t[1] GoatTracker II '[/t] GoatTracker II is perhaps the most popular SID tracker available on modern platforms (Win/OSX, Linux versions can be compiled from sourcecode). It has support for both the 6581 and the 8580 through ReSID emulation (and are customizable in the config.ini), can export to .SID as well as to assembly sources(?). Features highly optimized playback routines for small export filesizes. Though one of the best SID trackers overall, the interface (looking like a DOS program) and programming in data with the tracker may prove it to have a steep learning curve for most users. Watching / reading online tutorials / guides beforehand is strongly recommended. #Future re-written manual GoatTracker II may be '[l[https://cadaver.github.io/[download here (+ related tools)] for Windows and OSX. • '[t[1] '[[CheeseCutter] '[/t] Cheesecutter is a SID tracker extremely similar to GoatTracker II; both in interface and features. #More on CC later. '[l[http://theyamo.kapsi.fi/ccutter/[download] >> Win, OSX • '[t[1] '[[Deflemask Tracker] '[/t] Deflemask is a mutli-system tracker with support for C64 SID. Keep in mind that the .SID output is relatively very large due to the way DefleMask handles rastertime. If your song is too complex/long or has overuse of fast pattern tickrates/tempo, the export will sometimes be too large and a 0 kB .SID file is created (corrupted). An updated .SID compiler, that has not been implemented yet is available as download '[l[https://drive.google.com/open?id=1nzIzqJwMnN5dhUzr89G0EPMgi-VzIYd5[here] and may help people compiling otherwise too big DefleMask SID modules, though it is no guarantee to always work: the modules are often still too big. In order to work with the compiler, you must export a .VGM of your SID DefleMask module and drag 'n drop it on the batch file to compile a .SID file out of it. # '[l[http://hvmec.altervista.org/blog/[...and many more native tools] '[#[// Restrictions on submit] # Entry should be created by a tool using the '[[SID (soundchip)]. '[#[File Formats & Playback] '[t[b2].SID'[/t] Text here '[t[b2].PRG'[/t] Text here '[t[b2]Players'[/t] '[l[http://www.hvsc.de/players.htm#players[List of SID players] '[#[See also] - '[[Complete list of ripped chiptunes repositories] '[t[0]¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯'[/t]