├── .gitmodules ├── index.html ├── js ├── alda.js ├── app.js ├── log.js ├── player.js └── processor.js └── style.css /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "MIDI.js"] 2 | path = MIDI.js 3 | url = https://github.com/mudcube/MIDI.js.git 4 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /js/alda.js: -------------------------------------------------------------------------------- 1 | if(typeof Math.imul == "undefined" || (Math.imul(0xffffffff,5) == 0)) { 2 | Math.imul = function (a, b) { 3 | var ah = (a >>> 16) & 0xffff; 4 | var al = a & 0xffff; 5 | var bh = (b >>> 16) & 0xffff; 6 | var bl = b & 0xffff; 7 | // the shift by 0 fixes the sign on the high part 8 | // the final |0 converts the unsigned value into a signed value 9 | return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); 10 | } 11 | } 12 | 13 | 14 | var g,ba=this;function ca(b,a){var c=b.split("."),d=ba;c[0]in d||!d.execScript||d.execScript("var "+c[0]);for(var e;c.length&&(e=c.shift());)c.length||void 0===a?d=d[e]?d[e]:d[e]={}:d[e]=a} 15 | function m(b){var a=typeof b;if("object"==a)if(b){if(b instanceof Array)return"array";if(b instanceof Object)return a;var c=Object.prototype.toString.call(b);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof b.length&&"undefined"!=typeof b.splice&&"undefined"!=typeof b.propertyIsEnumerable&&!b.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof b.call&&"undefined"!=typeof b.propertyIsEnumerable&&!b.propertyIsEnumerable("call"))return"function"}else return"null"; 16 | else if("function"==a&&"undefined"==typeof b.call)return"object";return a}var da="closure_uid_"+(1E9*Math.random()>>>0),ea=0;function fa(b,a){for(var c in b)a.call(void 0,b[c],c,b)};function ga(b,a){null!=b&&this.append.apply(this,arguments)}g=ga.prototype;g.rb="";g.set=function(b){this.rb=""+b};g.append=function(b,a,c){this.rb+=b;if(null!=a)for(var d=1;d