Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
  You are not logged in - nap
jsSID-0.9.1   [2016]

jsSID-0.9.1 Released by :

Release Date :
25 February 2016

Type :
Other Platform C64 Tool

JavaScript SID emulator and player

Website :

User rating:awaiting 8 votes (3 left)   See votestatistics

Credits :
Code .... Hermit of Samar Productions, SIDRIP Alliance, Singular
Design .... Hermit of Samar Productions, SIDRIP Alliance, Singular
Idea .... Hermit of Samar Productions, SIDRIP Alliance, Singular
Concept .... Hermit of Samar Productions, SIDRIP Alliance, Singular
Docs .... Hermit of Samar Productions, SIDRIP Alliance, Singular
Test .... Hermit of Samar Productions, SIDRIP Alliance, Singular

Download :

Look for downloads on external sites:

User Comment
Submitted by Yogibear on 21 March 2016
Great stuff!
User Comment
Submitted by Slajerek on 8 March 2016
This is really awesome. Great comments inside and these signal processig tricks :D
User Comment
Submitted by ChristopherJam on 8 March 2016
Very nice work indeed. I agree with Pex, the CPU emulation's really tidy.
User Comment
Submitted by Hermit on 7 March 2016
Thanks guys. My trick (if I can call it that way) for compactness is planning ahead on paper (sometimes for days) before coding anything at all (learned from iWoz and life), and of course the 8bit scene spirit to pursue simplicity... (Something is not the best when you can't add more to it, but when you can't take more from it. Something like this is what I read in a chipdesign book 1-2 years ago...)
And PC is no exception, no matter what resources it might have, I can never be sure how much machines my programs will be running on...
User Comment
Submitted by Pex Mahoney Tufvesson on 7 March 2016
Cool stuff! I love the simplicity of your CPU emulation-js!
User Comment
Submitted by mstram on 7 March 2016
Hermit, I'm in awe of your programming greatness ;)
User Comment
Submitted by Hermit on 26 February 2016
New browser-related information: The 6581 cutoff-curve seems to have a bit of inconsistency around the treshold in Opera 35 while it's OK in Firefox. I guess it's something related to preciseness of Math.exp function)
User Comment
Submitted by Hermit on 26 February 2016
Or not including examples at all, as readability is probably my weak point then... (Or I just had no time to make it properly, who can tell...)
User Comment
Submitted by Oswald on 26 February 2016
btw you could do some formatting work on the example html page, its practically unreadable. align to left for a start. lot of unnecessary () brackets. put comments behind code lines etc etc.
User Comment
Submitted by Hermit on 26 February 2016
If anyone is interested, how I generate the combined waveforms algorithmically in jsSID or how I clean the high-pitch/thin pulse and saw sounds, some lengthy comments now can be found in the GitHub jsSID.js source:
User Comment
Submitted by Hermit on 26 February 2016
Oh, I just see there's no need for thos kind of permissions at GitHub. Digger simply forked the code. Looking forward your work Digger...
User Comment
Submitted by Hermit on 26 February 2016
I uploaded 0.9.1 sources to GitHub, and also added many comments, so feel free to make jsSID better.
I did what I planned, now I have to move onto other projects...
But I can help further, if needed, and if anyone needs access to the git repository, drop me a message somewhere...
User Comment
Submitted by Hermit on 26 February 2016
Browser tests and feedbacks summarized:
-Firefox, Chrome, Safari seems to work with jsSID
-On my Lubuntu15.04 test system Firefox 33 and 37 sometimes aggregates the sound depending on system load, but the most frustratin thing was that sound generation just stopped after a while. But as no one reported the same sympthoms, this issue might only be present with this particular OS+browser combination...
-Opera 35 seems to work fine with the freshest zip. (The workaround for Opera was to only disconnect AudioContext in JS if it has already been connected.) It plays fine without stopping the sound or clicking...
(Opera is my favourite browser BTW, I used its v12.16, the latest one with Presto, but Web Audio API is only supported since Opera15...)
Opera on the other hand seems not to like XMLHttpRequests for the local files, it complains in the debugger about 'cross origin' request despite using relative links. But the http based requests online operate fine, so you can still use Opera for the online player. (In offline mode only the test.html browse button works in jsSID with Opera...)
User Comment
Submitted by akaobi on 25 February 2016
Smooth sound. Great!
User Comment
Submitted by Slator on 25 February 2016
just wow, awesome work! sounds really nice, what a hell of work you did here :-D
User Comment
Submitted by Hermit on 25 February 2016
Good idea. Hah, hah, haaa :)

Just a little clarification: For people who are not familiar with web programming, this might not be obvious: jsSID is built from scratch, doesn't need any external sources. I coded the SID engine just as the CPU engine and the SID loader logic from scratch. Otherwise it wouldn't fit into 14..15kbytes...
You just need a contemporary browser that supports Web Audio API, that's all. No flash, java, or any plugins are required...
User Comment
Submitted by mankeli on 25 February 2016
Wonderful! Now someone should make a web interface that allows people to find all the good sids from HVSC!
I suggest: Track users, let them rate/save their play histories, match users who have lots of collisions, play them good sid music, sell the data about all c64 users, and make millions!
User Comment
Submitted by Hermit on 25 February 2016
I decided to upload a new version here...

This version has two additions:
-Default subtune number can be specified in the example player.html playlist for tunes by appending it to the playtime-information (separated by ':')...
-2nd and 3rd SID emulated when needed, so 2SID and 3SID tunes are played...

Version 0.9 is still suitable for single SID tunes, and the minimized jsSID.js 1kbyte less than this version (wich is now 15kbyte)...

I don't plan further additions, but listening to Digger's advice I open-sourced the code at GitHub, so feel free to improve it or customize it to your needs...
(BTW, the source code is included in the zipped downloadable content too...
Search CSDb
Prev - Random - Next
Detailed Info
· Summaries
· User Comments (18)
· Production Notes
Fun Stuff
· Goofs
· Hidden Parts
· Trivia
· Discuss this release (17)
Support CSDb
Help keep CSDb running:

Funding status:

About this site:
CSDb (Commodore 64 Scene Database) is a website which goal is to gather as much information and material about the scene around the commodore 64 computer - the worlds most popular home computer throughout time. Here you can find almost anything which was ever made for the commodore 64, and more is being added every day. As this website is scene related, you can mostly find demos, music and graphics made by the people who made the scene (the sceners), but you can also find a lot of the old classic games here. Try out the search box in the top right corner, or check out the CSDb main page for the latest additions.
Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.108 sec.