Added some polyfills for old browsers
This commit is contained in:
parent
0b78b2885e
commit
07ee5497bc
11 changed files with 69 additions and 13 deletions
|
|
@ -18,6 +18,8 @@ function D(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.g
|
|||
w.prototype={constructor:w,parent:null,toString:function(){return this.name?this.name:this.id||this.type},xa:function(a,b,c){switch(b){case "clear":return this.K[b]||(this.K[b]=c,c.onclick=function(a){return function(){a.K.print&&(a.K.print.value="")}}(this)),!0;case "print":return this.K[b]||(this.kb=this.K[b]=c,c.value="",this.g=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(c),
|
||||
this.ra=function(a){this.g(a,this.Fb)}),!0;default:return!1}},log:function(){},g:function(){},status:function(a){this.g(this.Fb+": "+a)},ra:function(a,b,c){c=c||this.type;b||v((c?c+": ":"")+a)},Qa:function(){return this.u.ja=!0},Pa:function(a,b){b&&(this.u.ja=!1);return!0}};function db(a,b,c,d){a.G&&(!0===c||E(a,c|0))&&a.G.message(b,d)}function E(a,b){if(a.G){a===a.G?b|=0:b=b||a.ka;var c=a.G.ka&b;return!!b&&c===b||!!(c&a.G.Oc)}return!1}
|
||||
function eb(a,b){if(a.u.ic)return a.u.Kb=!1,a.u.ic=!1;if(a.u.error)return a.g(a.toString()+" error"),!1;a.u.Kb=b;return a.u.Kb}function fb(a,b){a.u.Kb&&(b?a.u.ic=!0:void 0===b&&a.g(a.toString()+" busy"));return a.u.Kb}function F(a){if(!a.u.error&&(a.u.ready=!0,a.u.ready)){var b=a.ac;a.ac=null;b&&b()}}function gb(a,b){b&&(a.u.ready?b():a.ac=b);return a.u.ready}function tb(a){return a.u.error?(a.g(a.toString()+" error"),!0):!1}function ub(a,b){a.u.error=!0;a.ra(b)}
|
||||
Array.prototype.indexOf||(Array.prototype.indexOf=function(a,b){b=b||0;for(var c=this.length;b<c;b++)if(this[b]===a)return b;return-1});
|
||||
Function.prototype.bind||(Function.prototype.bind=function(a){function b(){return f.apply(this instanceof c&&a?this:a,d.concat(Array.prototype.slice.call(arguments)))}function c(){}if("function"!=typeof this)throw new TypeError("Function.prototype.bind: non-callable object");var d=Array.prototype.slice.call(arguments,1),f=this;c.prototype=this.prototype;b.prototype=new c;return b});
|
||||
var vb="undefined"!==typeof ArrayBuffer,G={cpu:1,trap:16,bus:64,mem:128,keyboard:65536,key:131072,disk:2097152,serial:8388608,speaker:33554432,computer:67108864,log:268435456,warn:536870912,buffer:1073741824,halt:-2147483648};function wb(a){w.call(this,"Panel",a,wb)}B(wb);l=wb.prototype;l.xa=function(a,b,c,d){return this.B&&this.B.xa(a,b,c,d)||this.b&&this.b.xa(a,b,c,d)||this.G&&this.G.xa(a,b,c,d)?!0:this.parent.xa.call(this,a,b,c,d)};l.Ya=function(a,b,c,d){this.B=a;this.H=b;this.b=c;this.G=d};
|
||||
l.Qa=function(a,b){b||xb();return!0};l.Pa=function(){return!0};l.Ha=function(){};function xb(){for(var a=!1,b=D(document,"pdp11","panel"),c=0;c<b.length;c++){var d=b[c],f=C(d),e;a:{e=f.id;if(void 0!==e){var g;for(g=0;g<x.length;g++)if(x[g].id===e){e=x[g];break a}}e=null}e||(a=!0,e=new wb(f));cb(e,d);a&&F(e)}}Pa(xb);
|
||||
function yb(a,b,c){w.call(this,"Bus",a,yb,64);this.b=b;this.G=c;this.I=a.busWidth||16;this.D=Math.pow(2,this.I);this.j=this.D-1|0;this.Z=(this.I>>1)+2;10>this.Z&&(this.Z=10);15<this.Z&&(this.Z=15);this.Ea=1<<this.Z;this.L=this.Ea>>2;this.f=this.Ea-1;this.A=this.D/this.Ea|0;this.B=this.A-1;this.Ta=[];this.F=null;this.Mb=this.Kc;a=new H;zb(a,this.G);this.O=Array(this.A);for(b=0;b<this.A;b++)this.O[b]=a;this.Hb=Array(4);this.Hb[0]=Ab;this.Hb[1]=Bb;this.Hb[2]=Cb;this.Hb[3]=Db;Eb(this,this.D-8192,8192,
|
||||
|
|
@ -28,7 +30,7 @@ l.reset=function(){this.F&&this.F()};l.Kc=function(){return 0};l.Qa=function(a,b
|
|||
function Eb(a,b,c,d,f){for(var e=b,g=c,h=e>>>a.Z;0<g&&h<a.O.length;){var k=a.O[h],m=h*a.Ea,n=a.Ea-(e-m);n>g&&(n=g);if(k&&k.size){if(k.type==d&&k.controller==f){if(e+g<=k.w)return k.Yb+=k.w-e,k.w=e,!0;if(e>=k.w+k.Yb){n=k.size-(e-m);n>g&&(n=g);k.Yb=e-k.w+n;e=m+a.Ea;g-=n;h++;continue}}return Gb(1,e,g)}e=new H(e,n,a.Ea,d,f);zb(e,a.G,k);a.O[h++]=e;e=m+a.Ea;g-=n}return 0>=g?(a.status(Math.floor(c/1024)+"Kb "+Hb[d]+" at "+t(b,8,!0)),!0):Gb(2,b,c)}
|
||||
l.sb=function(a){return this.O[(a&this.j)>>>this.Z].wb(a&this.f,a)};l.Ka=function(a){var b=a&this.f,c=(a&this.j)>>>this.Z;return b!=this.f?this.O[c].Rb(b,a):this.O[c++].wb(b,a)|this.O[c&this.B].wb(0,a+1)<<8};function Ib(a,b){var c=b&a.f,d=(b&a.j)>>>a.Z;return c!=a.f?a.O[d].oc(c,b):a.O[d++].Qb(c,b)|a.O[d&a.B].Qb(0,b+1)<<8}l.Vb=function(a,b){this.O[(a&this.j)>>>this.Z].Cb(a&this.f,b&255,a)};
|
||||
l.pb=function(a,b){var c=a&this.f,d=(a&this.j)>>>this.Z;c!=this.f?this.O[d].Jc(c,b&65535,a):(this.O[d++].Cb(c,b&255,a),this.O[d&this.B].Cb(0,b>>8&255,a+1))};function Jb(a){for(var b=0,c=[],d=0;d<a.A;d++){var f=a.O[d];if(f.Xa||f.Rc){c[b++]=d;var e=b++;if(f=f.save()){for(var g=0,h=0,k=[];g<f.length;){for(var m=f[g],n=g+1;n<f.length&&f[n]===m;)n++;k[h++]=n-g;k[h++]=m;g=n}k.length<f.length&&(f=k)}c[e]=f}}return c}
|
||||
function Kb(a,b){var c=Lb,d;for(d in c)for(var f=c[d],e=a,g=+d,h=f[0]?f[0].bind(b):null,k=f[1]?f[1].bind(b):null,m=f[2]?f[2].bind(b):null,n=f[3]?f[3].bind(b):null,f=f[4],p=+d;p<=g;p+=2){var q=p&8191;void 0!==e.Ta[q]?v("I/O address already registered: "+t(p,8,!0)):e.Ta[q]=[h,k,m,n,!1,f||"unknown"]}}function Mb(a,b,c){a.F=b;a.Mb=c}function Gb(a,b,c){v("Memory block error ("+a+": "+t(b)+","+t(c)+")");return!1}
|
||||
function Kb(a,b){var c=Lb,d;for(d in c)for(var f=c[d],e=f[0]?f[0].bind(b):null,g=f[1]?f[1].bind(b):null,h=f[2]?f[2].bind(b):null,k=f[3]?f[3].bind(b):null,m=a,n=+d,f=f[4],p=+d;p<=n;p+=2){var q=p&8191;void 0!==m.Ta[q]?v("I/O address already registered: "+t(p,8,!0)):m.Ta[q]=[e,g,h,k,!1,f||"unknown"]}}function Mb(a,b,c){a.F=b;a.Mb=c}function Gb(a,b,c){v("Memory block error ("+a+": "+t(b)+","+t(c)+")");return!1}
|
||||
function I(a){w.call(this,"Device",a,I);this.f={nc:[],va:0,ya:128,G:127,Qc:0};this.B={data:0,wd:0,tb:20,pd:0};this.j={M:0,sc:-1};this.A={Tb:2496,oa:0,R:128,Ub:0,Sb:0,wa:0,Ec:0,qa:[],hb:[406,406,406,406],aa:[12,12,12,12]};this.D={M:129,Jb:0,ga:0,$a:0,Ua:0,fb:0,qa:[],aa:[40,40,40,40],hb:[1024,1024,512,512],Mc:[157,157,29,29]};this.F={b:[8210,8208,8210,8226],aa:[22,22,22,50],gb:[19,19,19,32],hc:[815,411,815,630],qa:[],T:2176,zb:0,xb:0,Ga:[0,0,0,0,0,0,0,0],Fa:0,sa:[4544,4544,4544,4544,4544,4544,4544,
|
||||
4544],yb:[0,0,0,0,0,0,0,0],ob:0,md:[0,0,0,0,0,0,0,0],Fc:0,Gc:[0,0,0,0,0,0,0,0],f:[0,0,0,0,0,0,0,0],nd:[1,2,3,4,5,6,7,8],Hc:[0,0,0,0,0,0,0,0],Sa:[0,0,0,0,0,0,0,0],gc:[0,0,0,0,0,0,0,0],kd:[0,0,0,0,0,0,0,0],ld:[0,0,0,0,0,0,0,0],hd:[0,0,0,0,0,0,0,0],jd:[0,0,0,0,0,0,0,0],eb:0,qc:0}}B(I);
|
||||
var Nb=[4127,448,4191,450,4383,452,2591,454,21983,32768,65534,13791,16384,65534,770,2719,454,2591,65534,257,0,2566,33028,34051,33282,1281,33537,0,2758,32771,770,1025,1793,0,3078,33794,34305,513,0,5574,43690,4480,4097,4162,4227,4292,4357,57665,1281,769,0,3138,34305,1281,0,24707,2691,2627,24769,34561,1793,0,3076,20739,24899,2691,34562,2753,1281,0,2624,33537,0,16385,24641,1537,1793,0,193,8279,21589,516,12549,1538,2629,513,0,38336,65281,32769,0,32258,2561,2689,32258,3008,514,3009,769,0,5574,510,2551,
|
||||
|
|
|
|||
Loading…
Reference in a new issue