Changed the alert style for restore failures

This commit is contained in:
Jeff Parsons 2017-06-22 16:06:41 -07:00 • committed by Jeff Parsons
commit 3ba6f0e047
7 changed files with 228 additions and 227 deletions

View file

@ -72,8 +72,8 @@ function yb(a,b){b=zb(b.parentNode,"pcx86-control");for(var c=0;c<b.length;c++)f
function zb(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var e=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)e.test(a[b].className)&&c.push(a[b]);return c}
function Ab(a){for(var b=!0,c=Bb[a];c&&c.length;){var d=c.splice(0,1)[0],e=d[0],f=null;0<=Cb.indexOf(e)&&(f=function(){return function(){Ab(a)}}());var g=Db[e];if(g)if(!f)b=g(d[1],d[2],d[3]);else{if(!g(f,d[1],d[2],d[3]))break}else{var b=!1,h=ub(d[1],a);if(h)if(g=Eb[e])b=g(h,d[2],d[3]);else{var k=h.exports;if(k&&(g=k[e]))if(b=!0,!f)b=g.call(h,d[2],d[3]);else if(!g.call(h,f,d[2],d[3]))break}}if(!b){gb("Script error: "+e+(g?" failed":" unrecognized"));break}}c&&!c.length&&delete Bb[a];return b}l=mb.prototype;
l.toString=function(){return this.name?this.name:this.id||this.type};
l.Cb=function(a,b,c){switch(b){case "clear":return this.na[b]||(this.na[b]=c,c.onclick=function(a){return function(){a.na.print&&(a.na.print.value="")}}(this)),!0;case "print":return this.na[b]||(this.Je=this.na[b]=c,c.value="",this.P=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.Ea=function(a){this.P(a,this.ce)}),!0;default:return!1}};l.log=function(){};l.P=function(){};
l.status=function(a){this.P(this.ce+": "+a)};l.Ea=function(a,b,c){if(!b){var d=ub("Computer",this.id);if(d&&d.ea.pi){console.log("ignoring notice during unload: "+a);return}}c=c||this.type;b||gb((c?c+": ":"")+a)};function Fb(a,b){a.ea.error=!0;a.Ea(b)}function Gb(a,b){b&&(a.ea.ready?b():a.qg=b);return a.ea.ready}function Ib(a,b){a.ea.error||(a.ea.ready=!1!==b,a.ea.ready&&(b=a.qg,a.qg=null,b&&b()))}function Jb(a,b){a.ea.qf&&(b?a.ea.ah=!0:void 0===b&&a.P(a.toString()+" busy"));return a.ea.qf}
l.Cb=function(a,b,c){switch(b){case "clear":return this.na[b]||(this.na[b]=c,c.onclick=function(a){return function(){a.na.print&&(a.na.print.value="")}}(this)),!0;case "print":return this.na[b]||(this.Je=this.na[b]=c,c.value="",this.P=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.Da=function(a){this.P(a,this.ce)}),!0;default:return!1}};l.log=function(){};l.P=function(){};
l.status=function(a){this.P(this.ce+": "+a)};l.Da=function(a,b,c){if(!b){var d=ub("Computer",this.id);if(d&&d.ea.pi){console.log("ignoring notice during unload: "+a);return}}c=c||this.type;b||gb((c?c+": ":"")+a)};function Fb(a,b){a.ea.error=!0;a.Da(b)}function Gb(a,b){b&&(a.ea.ready?b():a.qg=b);return a.ea.ready}function Ib(a,b){a.ea.error||(a.ea.ready=!1!==b,a.ea.ready&&(b=a.qg,a.qg=null,b&&b()))}function Jb(a,b){a.ea.qf&&(b?a.ea.ah=!0:void 0===b&&a.P(a.toString()+" busy"));return a.ea.qf}
function Kb(a,b){if(a.ea.ah)return a.ea.qf=!1,a.ea.ah=!1;if(a.ea.error)return a.P(a.toString()+" error"),!1;a.ea.qf=b;return a.ea.qf}l.Xb=function(){return this.ea.Yb=!0};l.Wb=function(a,b){b&&(this.ea.Yb=!1);return!0};function t(a,b){if(a.ba){a===a.ba?b|=0:b=b||a.ic;var c=a.ba.ic&b;return!!b&&c===b||!!(c&a.ba.yl)}return!1}function Lb(a,b,c,d){a.ba&&(!0===c||t(a,c|0))&&a.ba.message(b,d)}function w(a,b,c,d,e,f,g){a.ba&&(!0===g?g=0:null==g&&(g=a.ic),Mb(a.ba,a,b,c,d,e,f,g))}
window&&(window.PCjs||(window.PCjs={}),window.PCjs.Machines||(window.PCjs.Machines={}),window.PCjs.Components||(window.PCjs.Components=[]),window.PCjs.Commands||(window.PCjs.Commands={}));
var pb=window?window.PCjs.Machines:{},nb=window?window.PCjs.Components:[],Bb=window?window.PCjs.Commands:{},Cb=["hold","sleep","wait"],Db={alert:function(a){gb(a);return!0},sleep:function(a,b){setTimeout(a,+b);return!1}},Eb={select:function(a,b,c){var d=!1;if(a=a.bindings[b])for(b=0;b<a.options.length;b++)if(a.options[b].textContent==c){a.selectedIndex!=b&&(a.selectedIndex=b);d=!0;break}return d}};
@ -95,7 +95,7 @@ log:536870912,warn:1073741824,halt:-2147483648};function Sb(a,b,c,d){this.A=[a,b
function Ub(a,b,c,d){void 0===d&&(d=b>=c>>2);d?(b=new Tb(a.x,a.y,a.Nc,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new Tb(a.x,a.y,a.Nc*b/c|0,a.A),a.x+=b.Nc,a.Nc-=b.Nc);return b}function Vb(a){mb.call(this,"Panel",a);this.F=this.G=this.L=-1}ba(Vb,mb);l=Vb.prototype;l.Cb=function(a,b,c,d){return this.pa&&this.pa.Cb(a,b,c,d)||this.H&&this.H.Cb(a,b,c,d)||this.C&&this.C.Cb(a,b,c,d)||this.ba&&this.ba.Cb(a,b,c,d)?!0:mb.prototype.Cb.call(this,a,b,c,d)};
l.uc=function(a,b,c,d){this.pa=a;this.ka=b;this.H=c;this.ba=d;this.C=Wb(a,"Keyboard")};l.Xb=function(a,b){b||Xb();return!0};l.Wb=function(){return!0};l.Wd=function(a,b){a.button||(this.L=b?0:-1,Yb(this,a,b))};l.uf=function(a){Yb(this,a)};
function Yb(a,b,c){var d=Zb/null.offsetWidth,e=$b/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.L||(a.L=Math.abs(a.F-d)>Math.abs(a.G-b)?1:2),1==a.L?b=a.G:2==a.L&&(d=a.F));a.F=d;a.G=b;if(0<=d&&d<Zb&&0<=b&&b<$b){a:{c=d;if(c<ac&&a.A&&a.A.De)for(f=0;f<a.A.De.length;f++)if(e=a.A.De[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.A.lf[f],g=Ga(bc.Jk,a.A.Sg[d.Nl]),f=g*a.ka.C,d=(g+d.Id)*a.ka.C-1;0<b&&(f+=e.Nc*(b-1)*a.da);f+=c*a.da;f|=0;f>d&&(f=d);c=
f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ga)){b=c;if(a.context&&a.N&&a.O){e=cc-dc;f=a.N.width;a.O.fillStyle=ec;a.O.fillRect(0,e,f,dc);fc(a,e+gc,a.N,a.O);a.W=a.ha.width/24|0;if(null==b)hc(a,"Mouse over memory to dump");else for(hc(a,q(b,8,!0),null,0,1),d=1;16>=d;d++){for(var g="",h=1;8>=h;h++){var k;k=a.ka;var m=b++;k=k.aa[(m&k.B)>>>k.A].$d(m&k.D,m);hc(a,q(k,2),null,1);g+=32<=k&&128>k?String.fromCharCode(k):"."}hc(a,g,null,0,1)}a.context.drawImage(a.N,0,e,f,dc,a.Da,a.Ha,a.va,a.za)}a.ga=c}}}
f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ga)){b=c;if(a.context&&a.N&&a.O){e=cc-dc;f=a.N.width;a.O.fillStyle=ec;a.O.fillRect(0,e,f,dc);fc(a,e+gc,a.N,a.O);a.W=a.ha.width/24|0;if(null==b)hc(a,"Mouse over memory to dump");else for(hc(a,q(b,8,!0),null,0,1),d=1;16>=d;d++){for(var g="",h=1;8>=h;h++){var k;k=a.ka;var m=b++;k=k.aa[(m&k.B)>>>k.A].$d(m&k.D,m);hc(a,q(k,2),null,1);g+=32<=k&&128>k?String.fromCharCode(k):"."}hc(a,g,null,0,1)}a.context.drawImage(a.N,0,e,f,dc,a.Ea,a.Ha,a.va,a.za)}a.ga=c}}}
function ic(a,b,c,d){a.A.lf[a.A.bj++]={Nl:b,Id:c,type:d};return Fa(bc,b,c,0,d)}function fc(a,b,c,d){var e,f=null.style.color,g=a.ta=10;a.B=g;a.I=b;a.J=a.aa=gc;e||(e=a.Z||a.aa+"px "+jc);a.M=a.Z=e;c&&(a.ha=c);d&&(a.D=d,a.la=f||"white")}function hc(a,b,c,d,e){a.D.font=a.M;a.D.fillStyle=a.la;a.D.fillText(b,a.B,a.I);a.B+=a.W;null!=c&&(16!=a.Ca?b=c.toString():(b=8>a.qa?"0x":"",b+=q(c,a.qa)),a.D.fillText(b,a.B,a.I),a.B+=a.W);d&&(a.B+=a.W*d);e&&(a.B=a.ta,a.I+=(a.J+2)*(e||1))}
function Xb(){for(var a=!1,b=zb(document,"pcx86","panel"),c=0;c<b.length;c++){var d=b[c],e=vb(d),f=tb(e.id);f||(a=!0,f=new Vb(e));yb(f,d);a&&Ib(f)}}var Zb=1280,$b=720,gc=18,jc="Monaco, Lucida Console, Courier New",ac=3*Zb>>2,kc=$b,cc=$b,ec="black",dc=$b>>1;$a(Xb);
function lc(a,b,c){mb.call(this,"Bus",a);this.H=b;this.ba=c;this.I=a.busWidth||20;this.O=Math.pow(2,this.I);this.N=this.B=this.O-1|0;this.A=32==this.I||20>=this.I?12:24>=this.I?14:15;this.C=1<<this.A;this.da=this.C>>2;this.D=this.C-1;this.M=this.O/this.C|0;this.W=this.M-1;this.F=[];this.G=[];this.K=this.L=!1;this.Y=[];this.Z=[];a=new x;mc(a,this.ba);this.aa=Array(this.M);for(b=0;b<this.M;b++)this.aa[b]=a;a=this.H;b=this.aa;c=this.A;a.sc=a.aa=b;a.hb=c;a.Og=1<<a.hb;a.Db=a.Og-1;a.Xf=b.length;a.ef=a.Xf-
@ -161,15 +161,15 @@ function sd(a,b,c,d){var e=(b&-4194304)>>>20,f=a.sc[(a.Wc+e&a.ff)>>>a.hb],g=f.Od
e>>2;b.ob=g;b.C=h>>2;Nb&&Ec&&c.X&&!c.controller&&!c.ie&&!c.je?(b.Pa=c.Pa,b.Sd=c.Sd,b.X=c.X,zc(b,vd)):(b.F=c?td(32):0,b.J=c?td(96):0,zc(b,ed));mc(b,a.ba,k);a.aa[d]=b;a.Yf.push(d);return b}function of(a){a.aa!==a.sc&&(a.aa=a.sc,a.ag=null,a.Yf=null,a.gf=null)}l=ue.prototype;l.reset=function(){this.ea.vb&&this.Jb();jf(this);zd(this);this.ea.error=!1};
function uf(a,b){var c;switch(b){case 0:c=a.D;break;case 1:c=a.I;break;case 2:c=a.L;break;case 3:c=a.G;break;case 4:c=z(a);break;case 5:c=a.M;break;case 6:c=a.K;break;case 7:c=a.J}return c}function vf(a,b,c){switch(b){case 0:a.D=c;break;case 1:a.I=c;break;case 2:a.L=c;break;case 3:a.G=c;break;case 4:ge(a,c);break;case 5:a.M=c;break;case 6:a.K=c;break;case 7:a.J=c}}
function jf(a){a.D=0;a.G=0;a.I=0;a.L=0;a.Hc=0;a.M=0;a.K=0;a.J=0;a.vc=!1;a.Ba=a.Ya=0;a.en=[0,0];a.fn=[0,0];a.xa=0;a.uj=0;a.ga=0;a.qa=65520;a.Pb=0;a.cd=1023;a.O=a.lc=0;a.Ae=a.jf=a.ze=a.Be=0;a.Uc=-1;a.Bd=a.Vc=-1;a.Cd=a.ta=-1;a.Z=new Ud(a,de,"CS");a.Ca=new Ud(a,pe,"DS");a.oa=new Ud(a,pe,"ES");a.Y=new Ud(a,$d,"SS");ge(a,0);fe(a,0);if(80386<=a.ca){switch(a.xe){case 80562:case 80563:a.L=771;break;case 80578:a.L=772;break;case 80594:a.L=773;break;case 80595:case 80596:a.L=776}a.qa=16;a.Pg=0;a.Dd=0;a.Wc=0;
a.Qb=[0,0,0,0,null,null,0,0];a.eg=[null,null,null,null,null,null,0,0];a.Ga=new Ud(a,pe,"FS");a.Ha=new Ud(a,pe,"GS");of(a)}a.Rg=new Ud(a,0,"NULL");a.Da=a.Ca;a.Rb=a.Y;a.N=a.ha=0;a.B=a.F=-1;a.eb=a.Rg;a.Xa=0;if(80286>a.ca)se(a,0,65535);else{a.Kb=0;a.Pc=65535;a.Eb=new Ud(a,5,"LDT",!0);a.la=new Ud(a,be,"TSS",!0);a.xb=new Ud(a,Zd,"VER",!0);se(a,65520,61440);var b,c=A(a);b=a.Z;var d=-65536;80386>b.gc.ca&&(d&=16777215);b=b.ua=d;a.da=b+c|0;a.Qg=(b>>>0)+(a.Z.Ka>>>0)+1}re(a,0);ie(a)}
a.Qb=[0,0,0,0,null,null,0,0];a.eg=[null,null,null,null,null,null,0,0];a.Ga=new Ud(a,pe,"FS");a.Ha=new Ud(a,pe,"GS");of(a)}a.Rg=new Ud(a,0,"NULL");a.Ea=a.Ca;a.Rb=a.Y;a.N=a.ha=0;a.B=a.F=-1;a.eb=a.Rg;a.Xa=0;if(80286>a.ca)se(a,0,65535);else{a.Kb=0;a.Pc=65535;a.Eb=new Ud(a,5,"LDT",!0);a.la=new Ud(a,be,"TSS",!0);a.xb=new Ud(a,Zd,"VER",!0);se(a,65520,61440);var b,c=A(a);b=a.Z;var d=-65536;80386>b.gc.ca&&(d&=16777215);b=b.ua=d;a.da=b+c|0;a.Qg=(b>>>0)+(a.Z.Ka>>>0)+1}re(a,0);ie(a)}
function wf(a){2==a.Jc?(a.Sb=a.ja,a.kc=xf,a.tc=yf,a.ld=zf,2==a.V?(a.ma=Af,a.za=Bf,a.ib=Cf):(a.ma=Df,a.za=Ef,a.ib=Ff)):(a.Sb=a.ia,a.kc=Gf,a.tc=Hf,a.ld=If,2==a.V?(a.ma=Jf,a.za=Kf,a.ib=Lf):(a.ma=Mf,a.za=Nf,a.ib=Of))}function je(a,b){a.V!=b&&(a.ha|=1024,a.V=b,a.R=2==b?65535:-1,Pf(a))}function Pf(a){2==a.V?(a.Fb=32768,a.jb=a.ja,a.yb=a.fb,2==a.Jc?(a.ma=Af,a.za=Bf,a.ib=Cf):(a.ma=Jf,a.za=Kf,a.ib=Lf)):(a.Fb=-2147483648,a.jb=a.ia,a.yb=a.ab,2==a.Jc?(a.ma=Df,a.za=Ef,a.ib=Ff):(a.ma=Mf,a.za=Nf,a.ib=Of))}
function Qf(a){a.Jc=a.Z.Jc;a.wa=a.Z.wa;wf(a);a.V=a.Z.V;a.R=a.Z.R;Pf(a);a.ha&=-3073}l.wj=function(){var a=this.D+this.G+this.I+this.L+z(this)+this.M+this.K+this.J|0;return a=a+A(this)+this.Z.U+this.Ca.U+this.Y.U+this.oa.U+qe(this)|0};function Rf(a,b,c){void 0===a.Zf[b]&&(a.Zf[b]=[]);a.Zf[b].push(c)}function Sf(a,b,c){c&&(null==a.$f[b]&&a.bg++,a.$f[b]=c)}function Tf(a,b){var c=a.$f[b];null!=c&&(c(--a.bg),delete a.$f[b])}
function Uf(a,b){for(var c=a.Qb[7],d=c>>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.Qb[e],g=g&~(d>>2&3);b?a.aa[g>>>a.hb].Hd(g&a.Db,f,a):(g=a.aa[g>>>a.hb],f?--g.je||jd(g):--g.ie||id(g))}c>>=2;d>>=4}}function qd(a,b,c,d){if(!(a.N&8192)&&a.Qb[7]&255){c--;var e=a.Qb[7],f=e>>16;d=d?1:0==d?3:0;for(var g=0;4>g;g++){if(e&3&&(f&3)==d){var h=f>>2;if(b+c>=a.Qb[g]&&b<=a.Qb[g]+h){a.Qb[6]|=1<<g;a.Xa|=2;break}}e>>=2;f>>=4}}}
function ie(a,b,c){void 0===b&&(b=!!(a.qa&1));void 0===c&&(c=!!(a.O&131072));a.pj=b&&!c?Vf:Ce;Vd(a.Z,!1,b,c);Vd(a.Ca,!1,b,c);Vd(a.Y,!1,b,c);Vd(a.oa,!1,b,c);80386<=a.ca&&(Vd(a.Ga,!1,b,c),Vd(a.Ha,!1,b,c));Qf(a)}
l.save=function(){var a=new Wf(this);a.set(0,[this.D,this.G,this.I,this.L,z(this),this.M,this.K,this.J]);var b=A(this),c=this.Z.save(),d=this.Ca.save(),e=this.Y.save(),f=this.oa.save(),g;null!=this.Kb?(g=[this.qa,this.Kb,this.Pc,this.Pb,this.cd,this.Eb.save(),this.la.save(),this.lc],80386<=this.ca&&(g.push(this.Pg),g.push(this.Dd),g.push(this.Wc),g.push(this.Qb),g.push(this.eg))):g=null;b=[b,c,d,e,f,g,qe(this)];80386<=this.ca&&(b.push(this.Ga.save()),b.push(this.Ha.save()));a.set(1,b);a.set(2,[this.Da.$b,
l.save=function(){var a=new Wf(this);a.set(0,[this.D,this.G,this.I,this.L,z(this),this.M,this.K,this.J]);var b=A(this),c=this.Z.save(),d=this.Ca.save(),e=this.Y.save(),f=this.oa.save(),g;null!=this.Kb?(g=[this.qa,this.Kb,this.Pc,this.Pb,this.cd,this.Eb.save(),this.la.save(),this.lc],80386<=this.ca&&(g.push(this.Pg),g.push(this.Dd),g.push(this.Wc),g.push(this.Qb),g.push(this.eg))):g=null;b=[b,c,d,e,f,g,qe(this)];80386<=this.ca&&(b.push(this.Ga.save()),b.push(this.Ha.save()));a.set(1,b);a.set(2,[this.Ea.$b,
this.Rb.$b,this.N,this.ha,this.Xa,this.B,this.F]);a.set(3,[0,this.Ed,this.T.Ld]);a.set(4,Kc(this.ka,!!(this.qa&-2147483648)));return a.data()};
l.restore=function(a){var b=a[0];this.D=b[0];this.G=b[1];this.I=b[2];this.L=b[3];var c=b[4];this.M=b[5];this.K=b[6];this.J=b[7];b=a[1];this.Z.restore(b[1]);this.Ca.restore(b[2]);this.Y.restore(b[3]);this.oa.restore(b[4]);var d=b[5];d&&d.length&&(this.qa=d[0],this.Kb=d[1],this.Pc=d[2],this.Pb=d[3],this.cd=d[4],this.Eb.restore(d[5]),this.la.restore(d[6]),this.lc=d[7],80386<=this.ca&&(this.Pg=d[8],this.Dd=d[9],this.Wc=d[10],this.Qb=d[11],this.eg=d[12]),ie(this));re(this,b[6]);var d=!1,e;a:{e=this.ka;
var f=a[4],g;for(g=0;g<f.length-1;g+=2){var h=f[g],k=f[g+1];if(k&&k.length<e.da){for(var m=0,p=Array(e.da),v=0;v<k.length-1;)for(var u=k[v++],E=k[v++];u--;)p[m++]=E;k=p}m=e.aa[h];if(!m||!m.restore(k)){gb("Unable to restore memory block "+h);e=!1;break a}}void 0!==f[g]&&nc(e,f[g]);e=!0}e&&(se(this,b[0],this.Z.U),ge(this,c),fe(this,this.Y.U),80386<=this.ca&&(this.Ga.restore(b[7]),this.Ha.restore(b[8])),d=!0);b=a[2];this.Da=null!=b[0]&&Xf(this,b[0])||this.Ca;this.Rb=null!=b[1]&&Xf(this,b[1])||this.Y;
var f=a[4],g;for(g=0;g<f.length-1;g+=2){var h=f[g],k=f[g+1];if(k&&k.length<e.da){for(var m=0,p=Array(e.da),v=0;v<k.length-1;)for(var u=k[v++],E=k[v++];u--;)p[m++]=E;k=p}m=e.aa[h];if(!m||!m.restore(k)){gb("Unable to restore memory block "+h);e=!1;break a}}void 0!==f[g]&&nc(e,f[g]);e=!0}e&&(se(this,b[0],this.Z.U),ge(this,c),fe(this,this.Y.U),80386<=this.ca&&(this.Ga.restore(b[7]),this.Ha.restore(b[8])),d=!0);b=a[2];this.Ea=null!=b[0]&&Xf(this,b[0])||this.Ca;this.Rb=null!=b[1]&&Xf(this,b[1])||this.Y;
this.N=b[2];this.ha=b[3];this.Xa=b[4];this.B=b[5];this.F=b[6];b=a[3];this.Ed=b[1];Ed(this,b[2]);return d};function Xf(a,b){switch(b){case "CS":return a.Z;case "DS":return a.Ca;case "SS":return a.Y;case "ES":return a.oa;case "NULL":return a.Rg;default:return[0,b,0,0,""]}}function Yf(a,b){null!=se(a,A(a),b)&&(a.N|=a.Wf)}function me(a,b){-1!==a.Ca.load(b)&&(a.N|=a.Wf)}
function fe(a,b,c){var d=z(a);-1!==a.Y.load(b)&&(ge(a,d),a.Y.Oc?(a.dg=a.Y.ua+a.Y.wa|0,a.hf=a.Y.ua+a.Y.Ka|0):(a.dg=a.Y.ua+a.Y.Ka|0,a.hf=a.Y.ua),c||(a.N|=4))}function ne(a,b){-1!==a.oa.load(b)&&(a.N|=a.Wf)}function A(a){return a.da-a.Z.ua|0}function C(a,b){a.da=a.Z.ua+(b&a.R)|0}function Zf(a,b){a.da=b;a.Qg=(a.Z.ua>>>0)+(a.Z.Ka>>>0)+1;a.Ma=a.Z.Ab;Qf(a)}function se(a,b,c,d){var e=a.Z;e.Kf=b;e.B=d;b=e.load(c);return-1!==b?(Zf(a,b+(a.Z.Kf&a.Z.R)),a.Z.Qe):null}
function $f(a,b){b=(a.da>>>0)+b;b>a.Qg&&(8088>=a.ca||a.Z.Ka==a.Z.wa?b=a.Z.ua+(b-a.Qg&a.R):y.call(a,13,0));return b|0}function ag(a){a.da=a.Cd}function z(a){return a.Hc&~a.Y.wa|a.Aa-a.Y.ua}function ge(a,b){a.Hc=b;a.Aa=a.Y.ua+(b&a.Y.wa)|0}function bg(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&cg(a),g&2&&dg(a),g&4&&eg(a),g&8&&fg(a),g&16&&gg(a),g&32&&hg(a))}f?(a.Ae=d,a.ze=b):(a.Ae=b,a.ze=d);a.jf=c;a.Be=d;a.resultType=e}
@ -182,12 +182,12 @@ l.Cb=function(a,b,c){switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case
function xg(a,b,c,d){var e=(d?a.sc:a.aa)[(b&a.ed)>>>a.hb];e&&e.type==bd&&(e=sd(a,b,!1,!0));if(e){var f=b&a.Db;if(!c||1==c)return e.$d(f,b);if(2==c)return f<a.Db?e.Of(f,b):e.$d(f,b)|xg(a,b+1,1,d)<<8;if(4==c)return f<a.Db-2?e.ki(f,b):f==a.Db-1?e.Of(f,b)|xg(a,b+2,2,d)<<16:e.$d(f,b)|xg(a,b+1,1,d)<<8|xg(a,b+2,1,d)<<16|xg(a,b+3,1,d)<<24}return null}l.Ia=function(a){return this.aa[(a&this.ed)>>>this.hb].Bc(a&this.Db,a)};
l.ja=function(a){var b=a&this.Db,c=(a&this.ed)>>>this.hb;this.A-=this.C.Ag;if(b<this.Db)return this.aa[c].Nf(b,a);b=this.aa[c].Bc(b,a);this.N&4096||(b|=this.aa[c+1&this.ef].Bc(0,a+1)<<8);return b};l.ia=function(a){var b=a&this.Db,c=(a&this.ed)>>>this.hb;if(b<this.Db-2)return this.aa[c].Od(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;){d|=this.aa[c].Bc(b++,a++)<<f;if(this.N&4096)break;--g||(c=c+1&this.ef,b=0);f+=8}return d};l.fc=function(a,b){this.aa[(a&this.ed)>>>this.hb].Dc(a&this.Db,b&255,a)};
l.fb=function(a,b){var c=a&this.Db,d=(a&this.ed)>>>this.hb;this.A-=this.C.Ag;c<this.Db?this.aa[d].Uf(c,b&65535,a):(this.aa[d++].Dc(c,b&255,a),this.N&4096||this.aa[d&this.ef].Dc(0,b>>8&255,a+1))};l.ab=function(a,b){var c=a&this.Db,d=(a&this.ed)>>>this.hb;this.A-=this.C.Ag;if(c<this.Db-2)this.aa[d].Tf(c,b,a);else for(var e=4,f=4-(c&3);e--;){this.aa[d].Dc(c++,b&255,a++);if(this.N&4096)break;--f||(d=d+1&this.ef,c=0);b>>>=8}};
function yg(a,b,c){a.eb=b;a.wb=c&a.wa;a.B=b.bc(a.wb,1);return a.N&1?0:a.Ia(a.B)}function D(a,b){return yg(a,a.Da,b)}function zg(a,b){return yg(a,a.Rb,b)}function Ag(a,b,c){a.eb=b;a.wb=c&a.wa;a.B=b.bc(a.wb,a.V);return a.N&1?0:a.jb(a.B)}function F(a,b){a.eb=a.Da;a.wb=b&a.wa;a.B=a.eb.bc(a.wb,2);return a.N&1?0:a.ja(a.B)}function Bg(a,b){a.eb=a.Rb;a.wb=b&a.wa;a.B=a.eb.bc(a.wb,2);return a.N&1?0:a.ja(a.B)}function H(a,b){a.eb=a.Da;a.wb=b&a.wa;a.B=a.eb.bc(a.wb,4);return a.N&1?0:a.ia(a.B)}
function yg(a,b,c){a.eb=b;a.wb=c&a.wa;a.B=b.bc(a.wb,1);return a.N&1?0:a.Ia(a.B)}function D(a,b){return yg(a,a.Ea,b)}function zg(a,b){return yg(a,a.Rb,b)}function Ag(a,b,c){a.eb=b;a.wb=c&a.wa;a.B=b.bc(a.wb,a.V);return a.N&1?0:a.jb(a.B)}function F(a,b){a.eb=a.Ea;a.wb=b&a.wa;a.B=a.eb.bc(a.wb,2);return a.N&1?0:a.ja(a.B)}function Bg(a,b){a.eb=a.Rb;a.wb=b&a.wa;a.B=a.eb.bc(a.wb,2);return a.N&1?0:a.ja(a.B)}function H(a,b){a.eb=a.Ea;a.wb=b&a.wa;a.B=a.eb.bc(a.wb,4);return a.N&1?0:a.ia(a.B)}
function Cg(a,b){a.eb=a.Rb;a.wb=b&a.wa;a.B=a.eb.bc(a.wb,4);return a.N&1?0:a.ia(a.B)}function Dg(a,b){a.N&2||a.fc(a.eb.cc(a.wb,1),b)}function Eg(a,b){a.N&2||a.fb(a.eb.cc(a.wb,2),b)}function Fg(a,b){a.N&2||a.ab(a.eb.cc(a.wb,4),b)}function ke(a,b,c){return a.jb(b.bc(c,a.V))}l.ra=function(){var a=$f(this,1),b=this.Ia(this.da);this.da=a;return b};function Gg(a){var b=$f(a,2),c=a.ja(a.da);a.da=b;return c}function K(a){var b=$f(a,a.Jc),c=a.Sb(a.da);a.da=b;return c}
l.Fa=function(){var a=$f(this,this.V),b=this.jb(this.da);this.da=a;return b};l.S=function(){var a=$f(this,1),b=this.Ia(this.da)<<24>>24;this.da=a;return b};function ee(a){var b=a.jb(a.Aa);a.Aa=a.Aa+a.V|0;var c=a.dg-a.Aa|0;0>c&&0<=(a.dg^a.Aa)&&(8088>=a.ca||!a.Y.Oc&&a.Y.Ka==a.Y.wa||a.Y.Oc&&!a.Y.Ka?ge(a,a.Aa-a.Y.ua&a.Y.wa):-1>c&&y.call(a,12,0));return b}
function le(a,b,c,d){c=a.Aa-c|0;0>(c-a.hf|0)&&0<=(a.hf^c)&&(8088>=a.ca||!a.Y.Oc&&a.Y.Ka==a.Y.wa||a.Y.Oc&&!a.Y.Ka?(ge(a,c-a.Y.ua&a.Y.wa),c=a.Aa):y.call(a,12,0));switch(d){case 1:a.fc(c,b);break;case 2:a.fb(c,b);break;case 4:a.ab(c,b)}a.Aa=c}function oe(a,b){var c=a.Aa-a.V|0;0>(c-a.hf|0)&&0<=(a.hf^c)&&(8088>=a.ca||!a.Y.Oc&&a.Y.Ka==a.Y.wa||a.Y.Oc&&!a.Y.Ka?(ge(a,c-a.Y.ua&a.Y.wa),c=a.Aa):y.call(a,12,0));a.yb(c,b);a.Aa=c}
function Hg(a,b,c){var d=4;1==b.length&&(d=1,c=c?1:0);if(80386>a.ca)2<b.length&&(b=b.substr(1,2));else if("PS"==b||2<b.length)d=8;a.na[b]&&(void 0===c&&(Fb(a,"Value for "+b+" is invalid"),a.Jb()),d=!a.ea.vb||a.ea.mj?q(c,d):"--------".substr(0,d),a.na[b].textContent!=d&&(a.na[b].textContent=d))}
l.Mg=function(a){this.ea.complete=!0;var b=this.ea.lj=this.ba&&Ig(this.ba),c=a?this.ea.oi?0:1:-1;this.ea.oi=!1;this.zc=this.A=a;this.W&&!a&&Nd(this.W);a||t(this,1024)||(this.N|=4);do{var d=this.N&3312;if(d)this.ha|=d;else if(this.Cd=this.da,this.Da=this.Ca,this.Rb=this.Y,this.B=this.F=-1,this.ha&3072&&Qf(this),this.ha=this.N&256,this.Xa){a:{if(!(this.N&4))for(var d=80286>this.ca?0:1,e=0;2>e;e++){switch(d){case 0:if(this.Xa&1&&this.O&512){var f=Jg(this.W);if(-1<=f&&(this.Xa&=-2,0<=f)){this.Xa&=-5;
l.Mg=function(a){this.ea.complete=!0;var b=this.ea.lj=this.ba&&Ig(this.ba),c=a?this.ea.oi?0:1:-1;this.ea.oi=!1;this.zc=this.A=a;this.W&&!a&&Nd(this.W);a||t(this,1024)||(this.N|=4);do{var d=this.N&3312;if(d)this.ha|=d;else if(this.Cd=this.da,this.Ea=this.Ca,this.Rb=this.Y,this.B=this.F=-1,this.ha&3072&&Qf(this),this.ha=this.N&256,this.Xa){a:{if(!(this.N&4))for(var d=80286>this.ca?0:1,e=0;2>e;e++){switch(d){case 0:if(this.Xa&1&&this.O&512){var f=Jg(this.W);if(-1<=f&&(this.Xa&=-2,0<=f)){this.Xa&=-5;
Kg.call(this,f);d=!0;break a}}break;case 1:if(this.Xa&2){this.Xa&=-3;80386<=this.ca&&(this.Qb[6]|=16384);Kg.call(this,1);d=!0;break a}}d=1-d}d=!1}if(d&&!a){this.P("interrupt dispatched");this.N=0;break}if(this.Xa&4){this.N=this.A=0;break}}if(b){if(Lg(this.ba,this.da,c)){this.Jb();break}c=1}this.N=0;this.va[this.ra()].call(this)}while(0<this.A);return this.ea.complete?this.zc-this.A:void 0===this.ea.complete?0:-1};var mf=512;
$a(function(){for(var a=zb(document,"pcx86","cpu"),b=0;b<a.length;b++){var c=a[b],d=vb(c),d=new ue(d);yb(d,c)}});
function Mg(a){mb.call(this,"FPU",a);this.ca=a.model||8087;this.F=new Float64Array(8);this.L=new Int32Array(this.F.buffer);this.Z=new Float32Array(1);this.ha=new Int32Array(this.Z.buffer);this.K=new Float64Array(1);this.G=new Int32Array(this.K.buffer);this.D=Array(3);this.M=this.N=-1;this.I=this.J=this.O=this.A=0;this.Y=new Float64Array(1);this.aa=new Int32Array(this.Y.buffer);this.aa[0]=0;this.aa[1]=268402688;Ng(this);this.ga=Mg.prototype.ni;this.da=Mg.prototype.dl}ba(Mg,mb);l=Mg.prototype;
@ -245,7 +245,7 @@ function Hj(a,b,c){if(c){16<c&&(a=b,c-=16);var d=a>>>c-1;a=(d>>>1|b<<16-c)&65535
function gk(){return this.xa}function hk(a,b){this.Bd=this.Z.U;this.Vc=this.Y.U;this.ta=this.Aa;var c=A(this),d=this.V;null!=se(this,a,b,!0)&&(le(this,this.Bd,d,2),le(this,c,d,d));this.Bd=this.Vc=this.ta=-1}function ik(a,b,c){this.A-=this.C.ek+(c||0);c=qe(this);var d=this.Z.U,e=A(this);a=this.Z.Ej(a);-1!==a&&(oe(this,c),oe(this,d),oe(this,e),null!=b&&oe(this,b),this.Uc=-1,Zf(this,a))}
function jk(a){this.Vc=this.Y.U;this.ta=this.Aa;var b=ee(this),c=ee(this);a&&ge(this,z(this)+a);se(this,b,c,!1)&&(a&&ge(this,z(this)+a),kk.call(this,this.Ca),kk.call(this,this.oa),80386<=this.ca&&(kk.call(this,this.Ga),kk.call(this,this.Ha)));2==a&&this.bg&&Tf(this,this.da);this.Vc=this.ta=-1}function lk(){8086==this.ca?(this.Uc=-1,ik.call(this,0,null,2)):y.call(this,0,null,2)}function Kg(a,b){this.Uc=a;void 0===b&&(b=11);ik.call(this,a,null,b)}
function y(a,b,c,d){var e=!1;this.ea.complete?80186<=this.ca&&(e=!0,0>this.Uc?(-1!=this.Bd&&(this.Bd!==this.Z.U&&(this.Z.Ab=this.Bd&3,Yf(this,this.Bd)),this.Bd=-1),this.Cd!==this.da&&Zf(this,this.Cd),-1!=this.Vc&&(this.Vc!==this.Y.U&&fe(this,this.Vc),this.Vc=-1),-1!==this.ta&&(this.ta!==this.Aa&&ge(this,this.Hc&~this.Y.wa|this.ta-this.Y.ua),this.ta=-1)):8!=this.Uc?(b=0,a=8):(b=0,a=-1,jf(this),e=d=!1)):Zf(this,this.Cd);var f=a,g=b,h=32,k=xg(this,this.da);204!=k||this.cd||(d=!1);this.O&131072&&(6==
f&&99==k||13==f&&205==k)&&(d=!1);!1===d&&(h|=1);983040<=this.da&&1048575>=this.da&&(d=!1);t(this,h|-2147483648)&&(d=!0);if(t(this,h)||d){var m=this.ea.vb,f="Fault "+r(f)+(null!=g?" ("+sa(g)+")":"")+" on opcode "+r(k);d&&m&&(f+=" (blocked)");this.ba?(Lb(this,f,d||h,!0),d&&(d=m,this.ba.Jb())):(this.Ea(f),this.Jb())}if(d&&e)throw-1;if(e)throw this.Uc=a,ik.call(this,a,b,c),this.Cd=this.da,this.N=1==a?this.N|8192:this.N|4096,a;}
f&&99==k||13==f&&205==k)&&(d=!1);!1===d&&(h|=1);983040<=this.da&&1048575>=this.da&&(d=!1);t(this,h|-2147483648)&&(d=!0);if(t(this,h)||d){var m=this.ea.vb,f="Fault "+r(f)+(null!=g?" ("+sa(g)+")":"")+" on opcode "+r(k);d&&m&&(f+=" (blocked)");this.ba?(Lb(this,f,d||h,!0),d&&(d=m,this.ba.Jb())):(this.Da(f),this.Jb())}if(d&&e)throw-1;if(e)throw this.Uc=a,ik.call(this,a,b,c),this.Cd=this.da,this.N=1==a?this.N|8192:this.N|4096,a;}
function nf(a,b,c){this.Dd=a;a=0;b&&(a|=1);c&&(a|=2);3==this.Ma&&(a|=4);y.call(this,14,a)}function kk(a){var b=a.lb&7680;a.U&65528&&(6144==b||7168==b||7168>b&&a.qc<this.Ma&&a.qc<(a.U&3))&&a.load(0)}
function xf(a){var b,c;switch((this.ga=this.ra())&199){case 0:c=D(this,this.G+this.K);this.A-=this.C.Rc;break;case 1:c=D(this,this.G+this.J);this.A-=this.C.Sc;break;case 2:c=zg(this,this.M+this.K);this.A-=this.C.Sc;break;case 3:c=zg(this,this.M+this.J);this.A-=this.C.Rc;break;case 4:c=D(this,this.K);this.A-=this.C.wc;break;case 5:c=D(this,this.J);this.A-=this.C.wc;break;case 6:c=D(this,K(this));this.A-=this.C.ud;break;case 7:c=D(this,this.G);this.A-=this.C.wc;break;case 64:c=D(this,this.G+this.K+
this.S());this.A-=this.C.Tb;break;case 65:c=D(this,this.G+this.J+this.S());this.A-=this.C.Ub;break;case 66:c=zg(this,this.M+this.K+this.S());this.A-=this.C.Ub;break;case 67:c=zg(this,this.M+this.J+this.S());this.A-=this.C.Tb;break;case 68:c=D(this,this.K+this.S());this.A-=this.C.Va;break;case 69:c=D(this,this.J+this.S());this.A-=this.C.Va;break;case 70:c=zg(this,this.M+this.S());this.A-=this.C.Va;break;case 71:c=D(this,this.G+this.S());this.A-=this.C.Va;break;case 128:c=D(this,this.G+this.K+K(this));
@ -332,10 +332,10 @@ function Of(a,b){var c,d=(this.ga=this.ra())&199;switch(d){case 0:c=H(this,this.
this.F=this.B;break;case 66:c=H(this,this.L+this.S());this.F=this.B;break;case 67:c=H(this,this.G+this.S());this.F=this.B;break;case 68:c=H(this,mk.call(this,1)+this.S());this.F=this.B;break;case 69:c=Cg(this,this.M+this.S());this.F=this.B;break;case 70:c=H(this,this.K+this.S());this.F=this.B;break;case 71:c=H(this,this.J+this.S());this.F=this.B;break;case 128:c=H(this,this.D+K(this));this.F=this.B;break;case 129:c=H(this,this.I+K(this));this.F=this.B;break;case 130:c=H(this,this.L+K(this));this.F=
this.B;break;case 131:c=H(this,this.G+K(this));this.F=this.B;break;case 132:c=H(this,mk.call(this,2)+K(this));this.F=this.B;break;case 133:c=Cg(this,this.M+K(this));this.F=this.B;break;case 134:c=H(this,this.K+K(this));this.F=this.B;break;case 135:c=H(this,this.J+K(this));this.F=this.B;break;case 192:c=this.D;break;case 193:c=this.I;break;case 194:c=this.L;break;case 195:c=this.G;break;case 196:c=z(this);break;case 197:c=this.M;break;case 198:c=this.K;break;case 199:c=this.J;break;default:c=0}a=a[this.ga>>
3&7].call(this,c,b.call(this));switch(d){case 192:this.D=a;break;case 193:this.I=a;break;case 194:this.L=a;break;case 195:this.G=a;break;case 196:ge(this,a);break;case 197:this.M=a;break;case 198:this.K=a;break;case 199:this.J=a;break;default:Fg(this,a)}}
function mk(a){var b=this.ra(),c=b>>6,d,e;switch(b>>3&7){case 0:d=this.D;break;case 1:d=this.I;break;case 2:d=this.L;break;case 3:d=this.G;break;case 4:d=0;break;case 5:d=this.M;break;case 6:d=this.K;break;case 7:d=this.J}switch(b&7){case 0:e=this.D;break;case 1:e=this.I;break;case 2:e=this.L;break;case 3:e=this.G;break;case 4:e=z(this);this.Da=this.Rb;break;case 5:a?(e=this.M,this.Da=this.Rb):e=K(this);break;case 6:e=this.K;break;case 7:e=this.J}return(d<<c)+e|0}
function mk(a){var b=this.ra(),c=b>>6,d,e;switch(b>>3&7){case 0:d=this.D;break;case 1:d=this.I;break;case 2:d=this.L;break;case 3:d=this.G;break;case 4:d=0;break;case 5:d=this.M;break;case 6:d=this.K;break;case 7:d=this.J}switch(b&7){case 0:e=this.D;break;case 1:e=this.I;break;case 2:e=this.L;break;case 3:e=this.G;break;case 4:e=z(this);this.Ea=this.Rb;break;case 5:a?(e=this.M,this.Ea=this.Rb):e=K(this);break;case 6:e=this.K;break;case 7:e=this.J}return(d<<c)+e|0}
function Ve(){this.Qd[this.ra()].call(this)}function Ye(){oe(this,z(this)&this.R);this.A-=this.C.Ic}function Ee(){this.ta=this.Aa;var a=z(this)&this.R;oe(this,this.D&this.R);oe(this,this.I&this.R);oe(this,this.L&this.R);oe(this,this.G&this.R);oe(this,a);oe(this,this.M&this.R);oe(this,this.K&this.R);oe(this,this.J&this.R);this.A-=this.C.Bk;this.ta=-1}
function Fe(){this.ta=this.Aa;this.J=this.J&~this.R|ee(this);this.K=this.K&~this.R|ee(this);this.M=this.M&~this.R|ee(this);ge(this,z(this)+this.V);this.G=this.G&~this.R|ee(this);this.L=this.L&~this.R|ee(this);this.I=this.I&~this.R|ee(this);this.D=this.D&~this.R|ee(this);this.A-=this.C.zk;this.ta=-1}function Ge(){this.ma.call(this,pi)}function Ze(){!(this.qa&1)||this.O&131072?y.call(this,6):this.za.call(this,oi)}function $e(){this.N|=20;this.Da=this.Rb=this.Ga;this.A-=this.C.bd}
function af(){this.N|=20;this.Da=this.Rb=this.Ha;this.A-=this.C.bd}function bf(){this.N|=1024;this.ha&1024||(this.V^=6,this.R^=-65536,Pf(this));this.A-=this.C.bd}function cf(){this.N|=2048;this.ha&2048||(this.Jc^=6,this.wa^=-65536,wf(this));this.A-=this.C.bd}function He(){oe(this,this.Fa());this.A-=this.C.Ic}function Ie(){this.ma.call(this,Hi)}function Je(){oe(this,this.S());this.A-=this.C.Ic}function Ke(){this.ma.call(this,Fi)}
function Fe(){this.ta=this.Aa;this.J=this.J&~this.R|ee(this);this.K=this.K&~this.R|ee(this);this.M=this.M&~this.R|ee(this);ge(this,z(this)+this.V);this.G=this.G&~this.R|ee(this);this.L=this.L&~this.R|ee(this);this.I=this.I&~this.R|ee(this);this.D=this.D&~this.R|ee(this);this.A-=this.C.zk;this.ta=-1}function Ge(){this.ma.call(this,pi)}function Ze(){!(this.qa&1)||this.O&131072?y.call(this,6):this.za.call(this,oi)}function $e(){this.N|=20;this.Ea=this.Rb=this.Ga;this.A-=this.C.bd}
function af(){this.N|=20;this.Ea=this.Rb=this.Ha;this.A-=this.C.bd}function bf(){this.N|=1024;this.ha&1024||(this.V^=6,this.R^=-65536,Pf(this));this.A-=this.C.bd}function cf(){this.N|=2048;this.ha&2048||(this.Jc^=6,this.wa^=-65536,wf(this));this.A-=this.C.bd}function He(){oe(this,this.Fa());this.A-=this.C.Ic}function Ie(){this.ma.call(this,Hi)}function Je(){oe(this,this.S());this.A-=this.C.Ic}function Ke(){this.ma.call(this,Fi)}
function Le(){var a=1,b=0,c=this.wa,d=5;this.ha&192&&(a=this.I&c,b=1,this.ha&256&&(d=4));if(a--){var e=this.L&65535;ug(this,e,1,!0)&&(e=Oc(this.ka,e,1,this.da-b-1),this.fc(this.oa.cc(this.J&c,1),e),this.J=this.J&~c|this.J+(this.O&1024?-1:1)&c,this.I=this.I&~c|this.I-b&c,this.A-=d,a&&(ag(this),this.N|=256))}}
function Me(){var a=1,b=0,c=this.wa,d=5;this.ha&192&&(a=this.I&c,b=1,this.ha&256&&(d=4));if(a--){var e=this.L&65535;ug(this,e,this.V,!0)&&(e=Oc(this.ka,e,this.V,this.da-b-1),this.yb(this.oa.cc(this.J&c,this.V),e),this.J=this.J&~c|this.J+(this.O&1024?-this.V:this.V)&c,this.I=this.I&~c|this.I-b&c,this.A-=d,a&&(ag(this),this.N|=256))}}
function Ne(){var a=1,b=0,c=this.wa,d=5;this.ha&192&&(a=this.I&c,b=1,this.ha&256&&(d=4));if(a--){var e=this.L&65535;if(ug(this,e,1,!1)){var f=this.Ia(this.Ca.bc(this.K&c,1));Sc(this.ka,e,1,f,this.da-b-1);this.K=this.K&~c|this.K+(this.O&1024?-1:1)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(ag(this),this.N|=256)}}}
@ -350,33 +350,33 @@ function Xe(){C(this,this.Cd-this.Z.ua);Fb(this,"Undefined opcode "+r(this.Ia(th
var ve=[function(){this.tc.call(this,ki)},function(){this.za.call(this,li)},function(){this.kc.call(this,ki)},function(){this.ma.call(this,li)},function(){this.D=this.D&-256|ki.call(this,this.D&255,this.ra());this.A--},function(){this.D=this.D&~this.R|li.call(this,this.D&this.R,this.Fa());this.A--},function(){le(this,this.oa.U,this.V,2);this.A-=this.C.se},function(){this.ta=this.Aa;ne(this,ee(this));this.A-=this.C.nc;this.ta=-1},function(){this.tc.call(this,hj)},function(){this.za.call(this,ij)},
function(){this.kc.call(this,hj)},function(){this.ma.call(this,ij)},function(){this.D=this.D&-256|hj.call(this,this.D&255,this.ra());this.A--},function(){this.D=this.D&~this.R|ij.call(this,this.D&this.R,this.Fa());this.A--},function(){le(this,this.Z.U,this.V,2);this.A-=this.C.se},function(){Yf(this,ee(this));this.A-=this.C.nc},function(){this.tc.call(this,ii)},function(){this.za.call(this,ji)},function(){this.kc.call(this,ii)},function(){this.ma.call(this,ji)},function(){this.D=this.D&-256|ii.call(this,
this.D&255,this.ra());this.A--},function(){this.D=this.D&~this.R|ji.call(this,this.D&this.R,this.Fa());this.A--},function(){le(this,this.Y.U,this.V,2);this.A-=this.C.se},function(){this.ta=this.Aa;fe(this,ee(this));this.A-=this.C.nc;this.ta=-1},function(){this.tc.call(this,jj)},function(){this.za.call(this,kj)},function(){this.kc.call(this,jj)},function(){this.ma.call(this,kj)},function(){this.D=this.D&-256|jj.call(this,this.D&255,this.ra());this.A--},function(){this.D=this.D&~this.R|kj.call(this,
this.D&this.R,this.Fa());this.A--},function(){le(this,this.Ca.U,this.V,2);this.A-=this.C.se},function(){this.ta=this.Aa;me(this,ee(this));this.A-=this.C.nc;this.ta=-1},function(){this.tc.call(this,mi)},function(){this.za.call(this,ni)},function(){this.kc.call(this,mi)},function(){this.ma.call(this,ni)},function(){this.D=this.D&-256|mi.call(this,this.D&255,this.ra());this.A--},function(){this.D=this.D&~this.R|ni.call(this,this.D&this.R,this.Fa());this.A--},function(){this.N|=20;this.Da=this.Rb=this.oa;
this.D&this.R,this.Fa());this.A--},function(){le(this,this.Ca.U,this.V,2);this.A-=this.C.se},function(){this.ta=this.Aa;me(this,ee(this));this.A-=this.C.nc;this.ta=-1},function(){this.tc.call(this,mi)},function(){this.za.call(this,ni)},function(){this.kc.call(this,mi)},function(){this.ma.call(this,ni)},function(){this.D=this.D&-256|mi.call(this,this.D&255,this.ra());this.A--},function(){this.D=this.D&~this.R|ni.call(this,this.D&this.R,this.Fa());this.A--},function(){this.N|=20;this.Ea=this.Rb=this.oa;
this.A-=this.C.bd},function(){var a=this.D&255,b=eg(this),c=cg(this);9<(a&15)||b?(a+=6,b=16):b=0;159<a||c?(a+=96,c=1):c=0;a&=255;this.D=this.D&-256|a;ig(this,a,128);c?jg(this):kg(this);b?rg(this):pg(this);this.A-=this.C.re},function(){this.tc.call(this,Mj)},function(){this.za.call(this,Nj)},function(){this.kc.call(this,Mj)},function(){this.ma.call(this,Nj)},function(){this.D=this.D&-256|Mj.call(this,this.D&255,this.ra());this.A--},function(){this.D=this.D&~this.R|Nj.call(this,this.D&this.R,this.Fa());
this.A--},function(){this.N|=20;this.Da=this.Rb=this.Z;this.A-=this.C.bd},function(){var a=this.D&255,b=eg(this),c=cg(this);9<(a&15)||b?(a-=6,b=16):b=0;159<a||c?(a-=96,c=1):c=0;a&=255;this.D=this.D&-256|a;ig(this,a,128);c?jg(this):kg(this);b?rg(this):pg(this);this.A-=this.C.re},function(){this.tc.call(this,Uj)},function(){this.za.call(this,Vj)},function(){this.kc.call(this,Uj)},function(){this.ma.call(this,Vj)},function(){this.D=this.D&-256|Uj.call(this,this.D&255,this.ra());this.A--},function(){this.D=
this.D&~this.R|Vj.call(this,this.D&this.R,this.Fa());this.A--},function(){this.N|=20;this.Da=this.Rb=this.Y;this.A-=this.C.bd},function(){var a,b,c=this.D&255,d=this.D>>8&255;9<(c&15)||eg(this)?(c+=6,80286<=this.ca&&255<c&&d++,d++,a=b=1):a=b=0;this.D=this.D&-65536|(d<<8|c)&65295;a?jg(this):kg(this);b?rg(this):pg(this);this.A-=this.C.re},function(){this.tc.call(this,Ai)},function(){this.za.call(this,Bi)},function(){this.kc.call(this,Ai)},function(){this.ma.call(this,Bi)},function(){Ai.call(this,this.D&
255,this.ra());this.A--},function(){Bi.call(this,this.D&this.R,this.Fa());this.A--},function(){this.N|=20;this.Da=this.Rb=this.Ca;this.A-=this.C.bd},function(){var a,b,c=this.D&255,d=this.D>>8&255;9<(c&15)||eg(this)?(c=c-6&15,d=d-1&255,a=b=1):a=b=0;this.D=this.D&-65536|d<<8|c;a?jg(this):kg(this);b?rg(this):pg(this);this.A-=this.C.re},function(){this.D=Zj.call(this,this.D)},function(){this.I=Zj.call(this,this.I)},function(){this.L=Zj.call(this,this.L)},function(){this.G=Zj.call(this,this.G)},function(){ge(this,
this.A--},function(){this.N|=20;this.Ea=this.Rb=this.Z;this.A-=this.C.bd},function(){var a=this.D&255,b=eg(this),c=cg(this);9<(a&15)||b?(a-=6,b=16):b=0;159<a||c?(a-=96,c=1):c=0;a&=255;this.D=this.D&-256|a;ig(this,a,128);c?jg(this):kg(this);b?rg(this):pg(this);this.A-=this.C.re},function(){this.tc.call(this,Uj)},function(){this.za.call(this,Vj)},function(){this.kc.call(this,Uj)},function(){this.ma.call(this,Vj)},function(){this.D=this.D&-256|Uj.call(this,this.D&255,this.ra());this.A--},function(){this.D=
this.D&~this.R|Vj.call(this,this.D&this.R,this.Fa());this.A--},function(){this.N|=20;this.Ea=this.Rb=this.Y;this.A-=this.C.bd},function(){var a,b,c=this.D&255,d=this.D>>8&255;9<(c&15)||eg(this)?(c+=6,80286<=this.ca&&255<c&&d++,d++,a=b=1):a=b=0;this.D=this.D&-65536|(d<<8|c)&65295;a?jg(this):kg(this);b?rg(this):pg(this);this.A-=this.C.re},function(){this.tc.call(this,Ai)},function(){this.za.call(this,Bi)},function(){this.kc.call(this,Ai)},function(){this.ma.call(this,Bi)},function(){Ai.call(this,this.D&
255,this.ra());this.A--},function(){Bi.call(this,this.D&this.R,this.Fa());this.A--},function(){this.N|=20;this.Ea=this.Rb=this.Ca;this.A-=this.C.bd},function(){var a,b,c=this.D&255,d=this.D>>8&255;9<(c&15)||eg(this)?(c=c-6&15,d=d-1&255,a=b=1):a=b=0;this.D=this.D&-65536|d<<8|c;a?jg(this):kg(this);b?rg(this):pg(this);this.A-=this.C.re},function(){this.D=Zj.call(this,this.D)},function(){this.I=Zj.call(this,this.I)},function(){this.L=Zj.call(this,this.L)},function(){this.G=Zj.call(this,this.G)},function(){ge(this,
Zj.call(this,z(this)))},function(){this.M=Zj.call(this,this.M)},function(){this.K=Zj.call(this,this.K)},function(){this.J=Zj.call(this,this.J)},function(){this.D=Xj.call(this,this.D)},function(){this.I=Xj.call(this,this.I)},function(){this.L=Xj.call(this,this.L)},function(){this.G=Xj.call(this,this.G)},function(){ge(this,Xj.call(this,z(this)))},function(){this.M=Xj.call(this,this.M)},function(){this.K=Xj.call(this,this.K)},function(){this.J=Xj.call(this,this.J)},function(){oe(this,this.D&this.R);
this.A-=this.C.Ic},function(){oe(this,this.I&this.R);this.A-=this.C.Ic},function(){oe(this,this.L&this.R);this.A-=this.C.Ic},function(){oe(this,this.G&this.R);this.A-=this.C.Ic},function(){oe(this,z(this)-2&65535);this.A-=this.C.Ic},function(){oe(this,this.M&this.R);this.A-=this.C.Ic},function(){oe(this,this.K&this.R);this.A-=this.C.Ic},function(){oe(this,this.J&this.R);this.A-=this.C.Ic},function(){this.D=this.D&~this.R|ee(this);this.A-=this.C.nc},function(){this.I=this.I&~this.R|ee(this);this.A-=
this.C.nc},function(){this.L=this.L&~this.R|ee(this);this.A-=this.C.nc},function(){this.G=this.G&~this.R|ee(this);this.A-=this.C.nc},function(){ge(this,z(this)&~this.R|ee(this));this.A-=this.C.nc},function(){this.M=this.M&~this.R|ee(this);this.A-=this.C.nc},function(){this.K=this.K&~this.R|ee(this);this.A-=this.C.nc},function(){this.J=this.J&~this.R|ee(this);this.A-=this.C.nc},nk,ok,pk,qk,rk,sk,tk,uk,vk,wk,xk,yk,zk,Ak,Bk,Ck,nk,ok,pk,qk,rk,sk,tk,uk,vk,wk,xk,yk,zk,Ak,Bk,Ck,Dk,function(){this.ib.call(this,
Sk,this.Fa);this.A-=-1===this.F?1:this.C.zg},Dk,function(){this.ib.call(this,Sk,this.S);this.A-=-1===this.F?1:this.C.zg},function(){this.tc.call(this,Oj)},function(){this.za.call(this,Pj)},function(){this.kc.call(this,Sj)},function(){this.ma.call(this,Tj)},Fk,Gk,Hk,Ik,function(){this.N|=1;this.za.call(this,gj)},function(){this.N|=1;this.Da=this.Rb=this.Rg;this.ma.call(this,Ni)},function(){var a;this.ma.call(this,fj);switch(this.ga>>3&7){case 0:a=this.D;this.D=this.xa;ne(this,a);break;case 1:a=this.I;
Sk,this.Fa);this.A-=-1===this.F?1:this.C.zg},Dk,function(){this.ib.call(this,Sk,this.S);this.A-=-1===this.F?1:this.C.zg},function(){this.tc.call(this,Oj)},function(){this.za.call(this,Pj)},function(){this.kc.call(this,Sj)},function(){this.ma.call(this,Tj)},Fk,Gk,Hk,Ik,function(){this.N|=1;this.za.call(this,gj)},function(){this.N|=1;this.Ea=this.Rb=this.Rg;this.ma.call(this,Ni)},function(){var a;this.ma.call(this,fj);switch(this.ga>>3&7){case 0:a=this.D;this.D=this.xa;ne(this,a);break;case 1:a=this.I;
this.I=this.xa;Yf(this,a);break;case 2:a=this.L;this.L=this.xa;fe(this,a);break;case 3:a=this.G;this.G=this.xa;me(this,a);break;case 4:a=z(this);ge(this,this.xa);80386<=this.ca?this.Ga.load(a):ne(this,a);break;case 5:a=this.M;this.M=this.xa;80386<=this.ca?this.Ha.load(a):Yf(this,a);break;case 6:a=this.K;this.K=this.xa;fe(this,a);break;case 7:a=this.J,this.J=this.xa,me(this,a)}},function(){this.N|=1;this.ta=this.Aa;this.xa=ee(this);this.ib.call(this,Tk,gk);this.ta=-1},function(){this.A-=3},function(){var a=
this.D;this.D=this.D&~this.R|this.I&this.R;this.I=this.I&~this.R|a&this.R;this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.L&this.R;this.L=this.L&~this.R|a&this.R;this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.G&this.R;this.G=this.G&~this.R|a&this.R;this.A-=3},function(){var a=this.D,b=z(this);this.D=this.D&~this.R|b&this.R;ge(this,b&~this.R|a&this.R);this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.M&this.R;this.M=this.M&~this.R|a&this.R;this.A-=3},function(){var a=
this.D;this.D=this.D&~this.R|this.K&this.R;this.K=this.K&~this.R|a&this.R;this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.J&this.R;this.J=this.J&~this.R|a&this.R;this.A-=3},function(){this.D=2==this.V?this.D&-65536|this.D<<24>>24&65535:this.D<<16>>16;this.A-=2},function(){this.L=2==this.V?this.L&-65536|(this.D&32768?65535:0):this.D&-2147483648?-1:0;this.A-=this.C.Mj},function(){hk.call(this,this.Fa(),Gg(this));this.A-=this.C.Pj},function(){this.A-=3},function(){var a=qe(this);a&131072&&
3>this.lc?y.call(this,13,0):(oe(this,a&-196609),this.A-=this.C.Ic)},function(){if(this.O&131072&&3>this.lc)y.call(this,13,0);else{var a=ee(this),a=a&65535|this.O&-65536;re(this,a);this.A-=this.C.nc}},function(){var a=this.D>>8&255;a&1?jg(this):kg(this);a&4?(this.resultType&=-3,this.O|=4):(this.resultType&=-3,this.O&=-5);a&16?rg(this):pg(this);a&64?sg(this):qg(this);a&128?(this.resultType&=-17,this.O|=128):(this.resultType&=-17,this.O&=-129);this.A-=this.C.Vb},function(){this.D=this.D&-65281|(qe(this)&
213)<<8;this.A-=this.C.Vb},function(){var a=this.D&-256,b;b=K(this);b=this.Ia(this.Da.bc(b,1));this.D=a|b;this.A-=this.C.Lh},function(){this.D=this.D&~this.R|ke(this,this.Da,K(this));this.A-=this.C.Lh},function(){var a=K(this),b=this.D;this.fc(this.Da.cc(a,1),b);this.A-=this.C.Mh},function(){var a=K(this),b=this.D;this.yb(this.Da.cc(a,this.V),b);this.A-=this.C.Mh},function(){var a=1,b=0,c=this.wa,d=this.C.Nh;this.ha&192&&(a=this.I&c,b=1,d=this.C.Ph,this.ha&256||(this.A-=this.C.Oh));if(a--){var e=
this.Ia(this.Da.bc(this.K&c,1));this.fc(this.oa.cc(this.J&c,1),e);e=this.O&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d;this.I=this.I&~c|this.I-b&c;a&&(ag(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.C.Nh;this.ha&192&&(a=this.I&c,b=1,d=this.C.Ph,this.ha&256||(this.A-=this.C.Oh));if(a--){var e=ke(this,this.Da,this.K&c);this.yb(this.oa.cc(this.J&c,this.V),e);e=this.O&1024?-this.V:this.V;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d;
this.I=this.I&~c|this.I-b&c;a&&(ag(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.C.yh;this.ha&192&&(a=this.I&c,b=1,d=this.C.Ah,this.ha&256||(this.A-=this.C.zh));if(a--){var e=yg(this,this.Da,this.K),f=yg(this,this.oa,this.J);this.F=this.B;Ai.call(this,e,f);e=this.O&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.C.Ib;a&&fg(this)==(this.ha&64)&&(ag(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.C.yh;this.ha&192&&
(a=this.I&c,b=1,d=this.C.Ah,this.ha&256||(this.A-=this.C.zh));if(a--){var e=Ag(this,this.Da,this.K&c),f=Ag(this,this.oa,this.J&c);this.F=this.B;Bi.call(this,e,f);e=this.O&1024?-this.V:this.V;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.C.Ib;a&&fg(this)==(this.ha&64)&&(ag(this),this.N|=256)}},function(){ig(this,this.D&this.ra(),128);this.A-=this.C.re},function(){ig(this,this.D&this.Fa(),this.Fb);this.A-=this.C.re},function(){var a=1,b=0,c=this.wa,
213)<<8;this.A-=this.C.Vb},function(){var a=this.D&-256,b;b=K(this);b=this.Ia(this.Ea.bc(b,1));this.D=a|b;this.A-=this.C.Lh},function(){this.D=this.D&~this.R|ke(this,this.Ea,K(this));this.A-=this.C.Lh},function(){var a=K(this),b=this.D;this.fc(this.Ea.cc(a,1),b);this.A-=this.C.Mh},function(){var a=K(this),b=this.D;this.yb(this.Ea.cc(a,this.V),b);this.A-=this.C.Mh},function(){var a=1,b=0,c=this.wa,d=this.C.Nh;this.ha&192&&(a=this.I&c,b=1,d=this.C.Ph,this.ha&256||(this.A-=this.C.Oh));if(a--){var e=
this.Ia(this.Ea.bc(this.K&c,1));this.fc(this.oa.cc(this.J&c,1),e);e=this.O&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d;this.I=this.I&~c|this.I-b&c;a&&(ag(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.C.Nh;this.ha&192&&(a=this.I&c,b=1,d=this.C.Ph,this.ha&256||(this.A-=this.C.Oh));if(a--){var e=ke(this,this.Ea,this.K&c);this.yb(this.oa.cc(this.J&c,this.V),e);e=this.O&1024?-this.V:this.V;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d;
this.I=this.I&~c|this.I-b&c;a&&(ag(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.C.yh;this.ha&192&&(a=this.I&c,b=1,d=this.C.Ah,this.ha&256||(this.A-=this.C.zh));if(a--){var e=yg(this,this.Ea,this.K),f=yg(this,this.oa,this.J);this.F=this.B;Ai.call(this,e,f);e=this.O&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.C.Ib;a&&fg(this)==(this.ha&64)&&(ag(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.C.yh;this.ha&192&&
(a=this.I&c,b=1,d=this.C.Ah,this.ha&256||(this.A-=this.C.zh));if(a--){var e=Ag(this,this.Ea,this.K&c),f=Ag(this,this.oa,this.J&c);this.F=this.B;Bi.call(this,e,f);e=this.O&1024?-this.V:this.V;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.C.Ib;a&&fg(this)==(this.ha&64)&&(ag(this),this.N|=256)}},function(){ig(this,this.D&this.ra(),128);this.A-=this.C.re},function(){ig(this,this.D&this.Fa(),this.Fb);this.A-=this.C.re},function(){var a=1,b=0,c=this.wa,
d=this.C.Yh;this.ha&192&&(a=this.I&c,b=1,d=this.C.$h,this.ha&256||(this.A-=this.C.Zh));if(a--){var e=this.D;this.fc(this.oa.cc(this.J&c,1),e);this.I=this.I&~c|this.I-b&c;80546<=this.xe&&80564>=this.xe&&!(this.ha&2048)!=(103!=this.Ia(this.da))&&(c^=-65536);this.J=this.J&~c|this.J+(this.O&1024?-1:1)&c;this.A-=d;a&&(ag(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.C.Yh;this.ha&192&&(a=this.I&c,b=1,d=this.C.$h,this.ha&256||(this.A-=this.C.Zh));if(a--){var e=this.D;this.yb(this.oa.cc(this.J&
c,this.V),e);this.J=this.J&~c|this.J+(this.O&1024?-this.V:this.V)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(ag(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.C.Fh;this.ha&192&&(a=this.I&c,b=1,d=this.C.Hh,this.ha&256||(this.A-=this.C.Gh));if(a--){var e=this.Ia(this.Da.bc(this.K&c,1));this.D=this.D&-256|e;this.K=this.K&~c|this.K+(this.O&1024?-1:1)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(ag(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.C.Fh;this.ha&192&&(a=this.I&c,
b=1,d=this.C.Hh,this.ha&256||(this.A-=this.C.Gh));if(a--){var e=ke(this,this.Da,this.K&c);this.D=this.D&~this.R|e;this.K=this.K&~c|this.K+(this.O&1024?-this.V:this.V)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(ag(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.C.Sh;this.ha&192&&(a=this.I&c,b=1,d=this.C.Uh,this.ha&256||(this.A-=this.C.Th));if(a--){var e=this.D&255,f=yg(this,this.oa,this.J);this.F=this.B;Ai.call(this,e,f);this.J=this.J&~c|this.J+(this.O&1024?-1:1)&c;this.I=this.I&~c|this.I-
c,this.V),e);this.J=this.J&~c|this.J+(this.O&1024?-this.V:this.V)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(ag(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.C.Fh;this.ha&192&&(a=this.I&c,b=1,d=this.C.Hh,this.ha&256||(this.A-=this.C.Gh));if(a--){var e=this.Ia(this.Ea.bc(this.K&c,1));this.D=this.D&-256|e;this.K=this.K&~c|this.K+(this.O&1024?-1:1)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(ag(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.C.Fh;this.ha&192&&(a=this.I&c,
b=1,d=this.C.Hh,this.ha&256||(this.A-=this.C.Gh));if(a--){var e=ke(this,this.Ea,this.K&c);this.D=this.D&~this.R|e;this.K=this.K&~c|this.K+(this.O&1024?-this.V:this.V)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(ag(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.C.Sh;this.ha&192&&(a=this.I&c,b=1,d=this.C.Uh,this.ha&256||(this.A-=this.C.Th));if(a--){var e=this.D&255,f=yg(this,this.oa,this.J);this.F=this.B;Ai.call(this,e,f);this.J=this.J&~c|this.J+(this.O&1024?-1:1)&c;this.I=this.I&~c|this.I-
b&c;this.A-=d-this.C.Ib;a&&fg(this)==(this.ha&64)&&(ag(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.C.Sh;this.ha&192&&(a=this.I&c,b=1,d=this.C.Uh,this.ha&256||(this.A-=this.C.Th));if(a--){var e=this.D&this.R,f=Ag(this,this.oa,this.J&c);this.F=this.B;Bi.call(this,e,f);this.J=this.J&~c|this.J+(this.O&1024?-this.V:this.V)&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.C.Ib;a&&fg(this)==(this.ha&64)&&(ag(this),this.N|=256)}},function(){this.D=this.D&-256|this.ra();this.A-=this.C.Vb},function(){this.I=
this.I&-256|this.ra();this.A-=this.C.Vb},function(){this.L=this.L&-256|this.ra();this.A-=this.C.Vb},function(){this.G=this.G&-256|this.ra();this.A-=this.C.Vb},function(){this.D=this.D&-65281|this.ra()<<8;this.A-=this.C.Vb},function(){this.I=this.I&-65281|this.ra()<<8;this.A-=this.C.Vb},function(){this.L=this.L&-65281|this.ra()<<8;this.A-=this.C.Vb},function(){this.G=this.G&-65281|this.ra()<<8;this.A-=this.C.Vb},function(){this.D=this.D&~this.R|this.Fa();this.A-=this.C.Vb},function(){this.I=this.I&
~this.R|this.Fa();this.A-=this.C.Vb},function(){this.L=this.L&~this.R|this.Fa();this.A-=this.C.Vb},function(){this.G=this.G&~this.R|this.Fa();this.A-=this.C.Vb},function(){ge(this,z(this)&~this.R|this.Fa());this.A-=this.C.Vb},function(){this.M=this.M&~this.R|this.Fa();this.A-=this.C.Vb},function(){this.K=this.K&~this.R|this.Fa();this.A-=this.C.Vb},function(){this.J=this.J&~this.R|this.Fa();this.A-=this.C.Vb},Mk,Nk,Mk,Nk,function(){this.ma.call(this,Oi)},function(){this.ma.call(this,Mi)},function(){this.N|=
1;this.ld.call(this,Uk,this.ra)},function(){this.N|=1;this.ib.call(this,Uk,this.Fa)},Ok,Pk,Ok,Pk,function(){if(this.O&131072&&3>this.lc)y.call(this,13,0);else{var a=this.C.fk;this.Uc=-1;ik.call(this,3,null,a)}},function(){var a=this.ra();if(this.O&131072&&3>this.lc)y.call(this,13,0);else{var b;a:{b=this.Zf[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c](this.da)){b=!1;break a}this.ea.lj&&t(this,16)&&Vk(this.ba,a,this.da);b=!0}b?(this.Uc=-1,ik.call(this,a,null,0)):this.A--}},function(){if(hg(this))if(this.O&
131072&&3>this.lc)y.call(this,13,0);else{var a=this.C.gk;this.Uc=-1;ik.call(this,4,null,a)}else this.A-=this.C.hk},function(){if(this.O&131072&&3>this.lc)y.call(this,13,0);else{this.Vc=this.Y.U;this.ta=this.Aa;this.A-=this.C.dk;if(this.qa&1&&this.O&16384){var a=this.ja(this.la.ua+0);he(this.Z,a,!1)}else{var a=this.Ma,b=ee(this),c=ee(this),d=ee(this);if(this.O&131072)d=d&131071|this.O&-131072;else if(d&131072){var e=ee(this),f=ee(this),g=ee(this),h=ee(this),k=ee(this),m=ee(this);ie(this,!0,!0);fe(this,
f);ge(this,e);ne(this,g);me(this,h);this.Ga.load(k);this.Ha.load(m)}null!=se(this,b,c,!1)&&(re(this,d,a),this.bg&&Tf(this,this.da))}this.Vc=this.ta=-1}},function(){this.ld.call(this,Jk,ck)},function(){this.ib.call(this,2==this.V?Kk:Lk,ck)},function(){this.ld.call(this,Jk,dk)},function(){this.ib.call(this,2==this.V?Kk:Lk,dk)},function(){var a=this.ra();if(a){var b=this.D&255;this.D=this.D&-65536|b/a<<8|b%a;ig(this,this.D,128);this.A-=this.C.Jj}else lk.call(this)},function(){var a=this.D&255,b=(this.D>>
8&255)*this.ra()|0,c=a+b|0;this.D=this.D&-65536|c&255;bg(this,a,b,c,191);this.A-=this.C.Ij},function(){this.D=this.D&-256|(cg(this)?255:0);this.A-=2},function(){this.D=this.D&-256|yg(this,this.Da,this.G+(this.D&255));this.A-=this.C.Ik},function(){Qk.call(this,216)},function(){Qk.call(this,217)},function(){Qk.call(this,218)},function(){Qk.call(this,219)},function(){Qk.call(this,220)},function(){Qk.call(this,221)},function(){Qk.call(this,222)},function(){Qk.call(this,223)},function(){var a=this.S(),
8&255)*this.ra()|0,c=a+b|0;this.D=this.D&-65536|c&255;bg(this,a,b,c,191);this.A-=this.C.Ij},function(){this.D=this.D&-256|(cg(this)?255:0);this.A-=2},function(){this.D=this.D&-256|yg(this,this.Ea,this.G+(this.D&255));this.A-=this.C.Ik},function(){Qk.call(this,216)},function(){Qk.call(this,217)},function(){Qk.call(this,218)},function(){Qk.call(this,219)},function(){Qk.call(this,220)},function(){Qk.call(this,221)},function(){Qk.call(this,222)},function(){Qk.call(this,223)},function(){var a=this.S(),
b=this.I-1&this.wa;this.I=this.I&~this.wa|b;b&&!fg(this)?(C(this,A(this)+a),this.A-=this.C.pk):this.A-=this.C.Ih},function(){var a=this.S(),b=this.I-1&this.wa;this.I=this.I&~this.wa|b;b&&fg(this)?(C(this,A(this)+a),this.A-=this.C.Jh):this.A-=this.C.Kh},function(){var a=this.S(),b=this.I-1&this.wa;this.I=this.I&~this.wa|b;b?(C(this,A(this)+a),this.A-=this.C.nk):this.A-=this.C.Ih},function(){var a=this.S();this.I&this.wa?this.A-=this.C.Kh:(C(this,A(this)+a),this.A-=this.C.Jh)},function(){var a=this.ra();
ug(this,a,1,!0)&&(this.D=this.D&-256|Oc(this.ka,a,1,this.da-2)&255,this.A-=this.C.Dh)},function(){var a=this.ra();ug(this,a,this.V,!0)&&(this.D=this.D&~this.R|Oc(this.ka,a,this.V,this.da-2)&this.R,this.A-=this.C.Dh)},function(){var a=this.ra();ug(this,a,1,!1)&&(Sc(this.ka,a,1,this.D&255,this.da-2),this.A-=this.C.Rh)},function(){var a=this.ra();ug(this,a,this.V,!1)&&(Sc(this.ka,a,this.V,this.D&this.R,this.da-2),this.A-=this.C.Rh)},function(){var a=this.Fa(),b=A(this),a=b+a;oe(this,b);C(this,a);this.A-=
this.C.Nj},function(){var a=this.Fa();C(this,A(this)+a);this.A-=this.C.Eh},function(){se(this,this.Fa(),Gg(this));this.A-=this.C.jk},function(){var a=this.S();C(this,A(this)+a);this.A-=this.C.Eh},function(){var a=this.L&65535;ug(this,a,1,!0)&&(this.D=this.D&-256|Oc(this.ka,a,1,this.da-1)&255,this.A-=this.C.Ch)},function(){var a=this.L&65535;ug(this,a,this.V,!0)&&(this.D=this.D&~this.R|Oc(this.ka,a,this.V,this.da-1)&this.R,this.A-=this.C.Ch)},function(){var a=this.L&65535;ug(this,a,1,!1)&&(Sc(this.ka,
@ -419,8 +419,8 @@ var Vf=[function(){this.A-=2+(-1===this.B?0:1);return this.Eb.U},function(){this
a;qg(this);return a},function(a){this.N|=2;this.A-=14+(-1===this.B?0:2);if(-1!==this.xb.load(a)&&512==(this.xb.lb&2560)&&this.xb.qc>=this.Ma&&this.xb.qc>=(a&3))return sg(this),a;qg(this);return a},Ei,Ei],Ce=[Ue,Ue,Ue,Ue,Ue,Ue,Ei,Ei],Yk=[function(a){if(-1===this.B)y.call(this,6);else{a=this.Pc-this.Kb;var b=this.Kb;80286==this.ca?b|=-16777216:80386<=this.ca&&2!=this.V&&(a|=b<<16);this.ab(this.B+2,b);this.A-=11}return a},function(a){if(-1===this.B)y.call(this,6);else{a=this.cd-this.Pb;var b=this.Pb;
80286==this.ca?b|=-16777216:80386<=this.ca&&2!=this.V&&(a|=b<<16);this.ab(this.B+2,b);this.A-=12}return a},function(a){-1===this.B||this.O&131072?y.call(this,6):(this.Kb=this.ia(this.B+2)&(this.R|this.R<<8),a&=65535,this.Pc=this.Kb+a,this.N|=2,this.A-=11);return a},function(a){-1===this.B||this.O&131072?y.call(this,6):(this.Pb=this.ia(this.B+2)&(this.R|this.R<<8),a&=65535,this.cd=this.Pb+a,this.N|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.B?0:1);return this.qa},Ei,function(a){this.O&
131072?y.call(this,6):(tg(this,a),this.A-=-1===this.B?3:6,this.N|=2);return a},Ei],Zk=[Ei,Ei,Ei,Ei,si,vi,ui,ti];
function $k(a){mb.call(this,"ChipSet",a,32768);var b=a.model;b&&!al[b]&&gb("Unrecognized ChipSet model: "+b);this.ca=al[b]||bl;this.B=[];b=cl(a[dl]);this.B[0]=[b,b];null==b&&(this.N=[360,360],(b=a.floppies)&&b.length&&(this.N=b),el(this,fl,this.N.length),el(this,gl,a.monitor||(this.ca<dh?"mono":"ega")));b=cl(a[hl]);this.B[1]=[b,b];this.za=this.ha=1;this.ca>=dh&&(this.za=this.ha=2);this.O=a.scaleTimers||!1;this.Ma=a.rtcDate;this.Ga=!1;a.sound&&(this.Da=this.la=null,window&&(this.Da=window.AudioContext||
window.webkitAudioContext),this.Da&&(this.la=new this.Da));this.reset(!0);Ib(this)}ba($k,mb);l=$k.prototype;l.Cb=function(a,b,c){switch(b){case dl:return this.na[b]=c,il(this,0,b),!0;case hl:if((this.ca|0)==jl||this.ca==kl)return this.na[b]=c,il(this,1,b),!0;break;case ll:return this.na[b]=c,!0}return!1};
function $k(a){mb.call(this,"ChipSet",a,32768);var b=a.model;b&&!al[b]&&gb("Unrecognized ChipSet model: "+b);this.ca=al[b]||bl;this.B=[];b=cl(a[dl]);this.B[0]=[b,b];null==b&&(this.N=[360,360],(b=a.floppies)&&b.length&&(this.N=b),el(this,fl,this.N.length),el(this,gl,a.monitor||(this.ca<dh?"mono":"ega")));b=cl(a[hl]);this.B[1]=[b,b];this.za=this.ha=1;this.ca>=dh&&(this.za=this.ha=2);this.O=a.scaleTimers||!1;this.Ma=a.rtcDate;this.Ga=!1;a.sound&&(this.Ea=this.la=null,window&&(this.Ea=window.AudioContext||
window.webkitAudioContext),this.Ea&&(this.la=new this.Ea));this.reset(!0);Ib(this)}ba($k,mb);l=$k.prototype;l.Cb=function(a,b,c){switch(b){case dl:return this.na[b]=c,il(this,0,b),!0;case hl:if((this.ca|0)==jl||this.ca==kl)return this.na[b]=c,il(this,1,b),!0;break;case ll:return this.na[b]=c,!0}return!1};
l.uc=function(a,b,c,d){this.ka=b;this.H=c;this.ba=d;this.pa=a;this.Tc=Wb(a,"FPU");el(this,ml,this.Tc?1:0,!0);this.C=Wb(a,"Keyboard");this.Ba=c.T.td/nl;Nc(b,this,ol);Rc(b,this,pl);this.ca<dh?this.ca!=kl?(Nc(b,this,ql),Rc(b,this,rl)):(Nc(b,this,sl),Rc(b,this,tl)):(Nc(b,this,ul),Rc(b,this,vl),(this.ca|0)==wl&&(Nc(b,this,xl),Rc(b,this,yl)));if(d){var e=this;zl(d,1024,function(){for(var a=0;a<e.hc.length;a++){for(var b=e.hc[a],c="PIC"+a+":",d=0;d<b.Kc.length;d++)c+=" IC"+(d+1)+"="+r(b.Kc[d]);c+=" IMR="+
r(b.pd)+" IRR="+r(b.ac)+" ISR="+r(b.Ec)+" DELAY="+b.Xe;e.ba.P(c)}});zl(d,2048,function(a){a=(a=a[0])?+a:null;for(var b=0;b<e.G.length;b++)if(null==a||b==a){Al(e,b);var c=e.G[b],d="TIMER"+b+":",f=0;if(null!=c.ad)for(var p=0;p<=c.ad;p++)f|=c.pb[p]<<8*p;d+=" mode="+(c.mode>>1)+" bytes="+c.ad+" count="+sa(f);e.ba.P(d)}});zl(d,4096,function(){for(var a="",b=0;b<Bl;b++){var c=b<=Cl?Dl(e,b):e.A[b];a&&(a+="\n");a+="CMOS["+r(b)+"]: "+r(c)}e.ba.P(a)})}Rf(c,26,this.Zm.bind(this))};
l.Xb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};l.Wb=function(a){return a?this.save():!0};
@ -468,7 +468,7 @@ l.Nn=function(a,b,c){w(this,a,b,c,"CMOS.ADDR",null,4096);this.W=b;this.da=b&Tp?h
l.On=function(a,b,c){var d=this.W&Vp;t(this,4352)&&w(this,a,b,c,"CMOS.DATA["+r(d)+"]",null,!0);a=b^this.A[d];if(d<=Cl){if(c=b,d<Mm){var e=!1;this.A[Qd]&Qm||(c=10*(c>>4)+(c&15),e=!0);if(d==om||d==pm)e&&23<c&&(c+=48),this.A[Qd]&Nm||(12>=c?c=12==c?0:c:(c-=116,c=24==c?12:c))}}else c=b;this.A[d]=c;d==Qd&&a&Rd&&b&Rd&&Sm(this)};l.Pk=function(a,b,c){w(this,a,b,c,"NMI");this.da=b};l.Yn=function(a,b,c){w(this,a,b,c,"FPU.CLEAR")};l.Zn=function(a,b,c){w(this,a,b,c,"FPU.RESET");this.Tc&&Ng(this.Tc)};
l.Zm=function(a){if(t(this,16)&&Vk(this.ba,26,a)){var b=this.H.D>>8;Sf(this.H,a,function(a,d){return function(c){d=Dd(a.H)-d;var e,g=a.H.L&255,h=a.H.L>>8,k=a.H.L&255,m=a.H.L>>8;if(2==b||3==b)e=" CH(hour)="+sa(h)+" CL(min)="+r(g)+" DH(sec)="+r(m);else if(4==b||5==b)e=" CX(year)="+sa(a.H.I)+" DH(month)="+r(m)+" DL(day)="+r(k);g=a.ba;h=d;g.message("INT "+r(26)+": C="+(cg(g.H)?1:0)+(e||"")+" (cycles="+h+(c?",level="+(c+1):"")+")")}}(this,Dd(this.H)))}return!0};
function Um(a,b){if(a.la)try{void 0!==b?a.Ga=b:b=!!(a.Ga&&a.H&&a.H.ea.vb);var c=Math.round(nl/uo(a,vo));if(20>c||2E4<c)b=!1;b?a.I?(a.I.frequency.value=c,t(a,33554432)&&Lb(a,"speaker set to "+c+"hz",!0)):(a.I=a.la.createOscillator(),a.I&&(a.I.type="number"==typeof a.I.type?1:"square",a.I.connect(a.la.destination),a.I.frequency.value=c,"start"in a.I?a.I.start(0):a.I.noteOn(0),t(a,33554432)&&Lb(a,"speaker on at "+c+"hz",!0))):a.I&&("stop"in a.I?a.I.stop(0):a.I.noteOff(0),a.I.disconnect(),delete a.I,
t(a,33554432)&&Lb(a,"speaker off at "+c+"hz",!0))}catch(d){a.Ea("AudioContext exception: "+d.message),a.la=null}else b&&Lb(a,"BEEP",33554432)}var jl=5150,bl=5150.9,dh=5170,kl=5160.101,wl=5180,al={5150:jl,5160:5160,5170:dh,att6300:kl,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:bl};al.deskpro386=wl;
t(a,33554432)&&Lb(a,"speaker off at "+c+"hz",!0))}catch(d){a.Da("AudioContext exception: "+d.message),a.la=null}else b&&Lb(a,"BEEP",33554432)}var jl=5150,bl=5150.9,dh=5170,kl=5160.101,wl=5180,al={5150:jl,5160:5160,5170:dh,att6300:kl,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:bl};al.deskpro386=wl;
var dl="sw1",hl="sw2",ll="swdesc",Tl=3,tn=1,un=15,xn=3,yn=4,Bn=3,Kn=12,On=0,Ln=4,Nn=8,Qn=16,Pn=32,on=0,Hl=0,Il=32,Jl=1,Kl=160,Wn=16,ko=1,jo=2,co=7,$n=224,ao=32,bo=96,fo=128,go=192,Xn=8,Tn=2,Un=3,Sn=3,Yn=4,Zn=96,to=0,Qp=1,lo=2,Uo=8,fh=13,ro=0,so=0,vo=2,Ho=1,Io=14,po=0,Ro=4,Pd=6,qo=8,Jo=48,Ko=0,Po=32,Qo=48,yo=192,zo=192,Go=6,Bo=2,Ao=16,Eo=32,Co=64,Do=128,nl=1193181,Lo=1,dp=2,Mo=4,No=8,gp=8,Oo=64,ap=128,fp=15,ip=16,hp=32,$o=16,fm={ql:1,ONE:0,cq:64,aq:128,Sp:192,yc:192,Ng:6},em=2,dm={bq:16,qp:32,Tp:48,
yc:48,Ng:4},fl=1,ml=3,gl=4,jn=5,kn=6,cn={};cn[jl]=[{},{}];cn[jl][0][fl]={yc:192,Zc:{1:0,2:64,3:128,4:192},Fd:"Number of Floppy Drives"};cn[jl][0][ml]={yc:2,Zc:{0:0,1:2},Fd:"FPU"};cn[jl][0][gl]={yc:48,Zc:{0:0,1:16,2:32,3:48,none:0,tv:16,color:32,cga:32,mda:48,mono:48,ega:0,vga:0},Fd:"Monitor Type"};cn[jl][0][jn]={yc:12,Zc:{16:0,32:4,48:8,64:12},Fd:"Base Memory (16Kb Increments)"};
cn[jl][1][kn]={yc:31,Zc:{0:0,32:1,64:2,96:3,128:4,160:5,192:6,224:7,256:8,288:9,320:10,352:11,384:12,416:13,448:14,480:15,512:16,544:17,576:18},Fd:"Expansion Memory (32Kb Increments)"};cn[5160]=[{},{}];cn[5160][0][fl]=cn[jl][0][fl];cn[5160][0][ml]=cn[jl][0][ml];cn[5160][0][gl]=cn[jl][0][gl];cn[5160][0][jn]={yc:12,Zc:{64:0,128:4,192:8,256:12},Fd:"Base Memory (64Kb Increments)"};cn[5160][1][kn]=cn[jl][1][kn];cn[kl]=[{},{}];cn[kl][0][jn]={yc:143,Zc:{128:1,256:130,512:8,640:141},Fd:"Base Memory (128Kb Increments)"};
@ -487,10 +487,10 @@ b,c){vn(this,1,a,b,c)},212:function(a,b,c){wn(this,1,a,b,c)},214:function(a,b,c)
$a(function(){for(var a=zb(document,"pcx86","chipset"),b=0;b<a.length;b++){var c=a[b],d=vb(c),d=new $k(d);yb(d,c);mn(d)}});
function Xp(a){mb.call(this,"ROM",a);this.A=null;this.F=a.addr;this.B=a.size;this.D=a.alias;this.G=a.file;this.C=a.notify;this.I=null;if(this.C&&(a=this.C.indexOf("["),0<a)){try{this.I=eval(this.C.substr(a))}catch(d){}this.C=this.C.substr(0,a)}if(this.G){a=this.G;var b=va(ta(a));"json"!=b&&"hex"!=b&&(a=La()+"/api/v1/dump?file="+this.G+"&format=bytes&decimal=true");var c=this;Ka(a,null,!0,function(a,b,f){Yp(c,a,b,f)})}}ba(Xp,mb);Xp.prototype.uc=function(a,b,c,d){this.ka=b;this.H=c;this.ba=d;Zp(this)};
Xp.prototype.Xb=function(){this.Gd&&(this.ba&&$p(this.ba,this.id,0,this.F>>>4,0,this.F,this.B,this.Gd),delete this.Gd);return!0};Xp.prototype.Wb=function(){return!0};
function Yp(a,b,c,d){if(d)a.Ea("Unable to load system ROM (error "+d+": "+b+")");else{ob(a.ye,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,g=e.longs||e.data;if(f)a.A=f;else if(g)for(a.A=Array(4*g.length),d=c=0;c<g.length;c++)a.A[d++]=g[c]&255,a.A[d++]=g[c]>>8&255,a.A[d++]=g[c]>>16&255,a.A[d++]=g[c]>>24&255;else a.A=e;a.Gd=e.symbols;if(!a.A.length){gb("Empty ROM: "+b);return}if(1==a.A.length){gb(a.A[0]);return}}catch(h){a.Ea("ROM data error: "+h.message);return}else for(b=
function Yp(a,b,c,d){if(d)a.Da("Unable to load system ROM (error "+d+": "+b+")");else{ob(a.ye,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,g=e.longs||e.data;if(f)a.A=f;else if(g)for(a.A=Array(4*g.length),d=c=0;c<g.length;c++)a.A[d++]=g[c]&255,a.A[d++]=g[c]>>8&255,a.A[d++]=g[c]>>16&255,a.A[d++]=g[c]>>24&255;else a.A=e;a.Gd=e.symbols;if(!a.A.length){gb("Empty ROM: "+b);return}if(1==a.A.length){gb(a.A[0]);return}}catch(h){a.Da("ROM data error: "+h.message);return}else for(b=
c.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.A=Array(b.length),e=0;e<b.length;e++)a.A[e]=oa(b[e],16);Zp(a)}}
function Zp(a){if(!Gb(a))if(!a.G)Ib(a);else if(a.A&&a.ka){a.B||(a.B=a.A.length);if(a.A.length!=a.B)Fb(a,"ROM size ("+q(a.A.length,8,!0)+") does not match specified size ("+q(a.B,8,!0)+")");else{var b;b=a.F;if(oc(a.ka,b,a.B,Dc)){for(var c=0;c<a.A.length;c++){var d=a.ka,e=b+c;d.aa[(e&d.B)>>>d.A].cf(e&d.D,a.A[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.D?b.push(a.D):null!=a.D&&a.D.length&&(b=a.D);for(c=0;c<b.length;c++){var d=a,e=b[c],f=xc(d.ka,d.F,d.B);vc(d.ka,e,d.B,f)}a.C&&((b=tb(a.C,a.id))?
(c=a.A,d=a.I,b.La==aq?bq(b,c,d||[12640,8752],8):b.La==cq&&bq(b,c,d||[14221,16269],8),Ib(b)):a.Ea("Unable to find component: "+a.C));delete a.A}}Ib(a)}}$a(function(){for(var a=zb(document,"pcx86","rom"),b=0;b<a.length;b++){var c=a[b],d=vb(c),d=new Xp(d);yb(d,c)}});function dq(a){mb.call(this,"RAM",a);this.C=a.addr;this.A=a.size;this.F=a.test;this.D=!!this.A;this.B=!1}ba(dq,mb);l=dq.prototype;l.uc=function(a,b,c,d){this.ka=b;this.H=c;this.ba=d;this.W=Wb(a,"ChipSet");Ib(this)};
(c=a.A,d=a.I,b.La==aq?bq(b,c,d||[12640,8752],8):b.La==cq&&bq(b,c,d||[14221,16269],8),Ib(b)):a.Da("Unable to find component: "+a.C));delete a.A}}Ib(a)}}$a(function(){for(var a=zb(document,"pcx86","rom"),b=0;b<a.length;b++){var c=a[b],d=vb(c),d=new Xp(d);yb(d,c)}});function dq(a){mb.call(this,"RAM",a);this.C=a.addr;this.A=a.size;this.F=a.test;this.D=!!this.A;this.B=!1}ba(dq,mb);l=dq.prototype;l.uc=function(a,b,c,d){this.ka=b;this.H=c;this.ba=d;this.W=Wb(a,"ChipSet");Ib(this)};
l.Xb=function(a,b){return!b&&(this.reset(),a&&this.controller&&!this.restore(a))?!1:!0};l.Wb=function(a){return a&&this.controller?this.save():!0};
l.reset=function(){if(!this.C&&!this.D&&this.W){var a=1024*Ql(this.W);this.A&&a!=this.A&&(Bc(this.ka,this.C,this.A),this.B=!1);this.A=a}!this.B&&this.A&&oc(this.ka,this.C,this.A,1)&&(this.B=!0,"ramCPQ"==this.ce&&(this.controller=new eq(this),oc(this.ka,fq,4,4,this.controller)));if(this.B){if(this.F||Jc(this.ka,1138,4660),"ramCPQ"!=this.ce&&this.W&&(a=this.W,a.A)){var b=1048576>this.C?$l:23,c=a.A[b]|a.A[b+1]<<8,c=c+(this.A>>10);a.A[b]=c&255;a.A[b+1]=c>>8;jm(a)}}else gb("No RAM allocated")};
l.save=function(){var a=new Wf(this);this.controller&&a.set(0,this.controller.save());return a.data()};l.restore=function(a){return this.controller?this.controller.restore(a[0]):!0};function eq(a){this.D=a;this.B=gq;this.H=hq;this.C=iq;this.A=null}l=eq.prototype;l.save=function(){return[this.B,this.C]};l.restore=function(a){this.fc(0,a[0]&255);this.fc(2,a[1]&255);return!0};l.Ia=function(a){var b=255;2>a?b=a&1?this.H>>8:this.H&255:4>a&&(b=a&1?this.C>>8:this.C&255);return b};
@ -555,10 +555,10 @@ a.Db=setTimeout(a.Qd,500)):null!=a.Db&&(clearTimeout(a.Db),a.Db=null);void 0===c
l.reset=function(){var a=!0,b=0;this.W&&(b=+Sl(this.W,gl,void 0));this.ca||(this.La=b==Tl?os:ls);this.da=Bs;switch(this.La){case cq:b=7;break;case aq:var c=Cs[this.xb];c&&(b=c[0]);b||(b=4);break;case os:b=Tl;this.da=Ds;break;default:b=2}this.ga!==b&&(this.ga=b,a=!0);this.B=null;this.Y=this.Kb=new jr(this,os);this.K=this.yb=new jr(this,ls);this.La<aq?this.A=new jr:(this.A=new jr(this,this.La,null,this.rd),Es(this));Fs(this);this.oa=null;this.Aa=this.aa=-1;this.xa=0;Gs(this,this.da);if(this.B.bb&&a){a=
this.B.bb+this.Xa;for(b=this.B.bb;b<a;b+=2){var d=65536*Math.random()|0;4==this.ga||7==this.ga?(c=b>>1&255,d=d>>8&~Hs,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?Is|Js:Ks|Ls)|Ms&d>>8);Jc(this.ka,b,c|d<<8)}ys(this,!0)}};function Es(a){a.A.bf&qr?(a.Y=a.Kb,a.K=a.A):(a.Y=a.A,a.K=a.yb)}l.save=function(){var a=new Wf(this);a.set(0,Hr(this.Kb));a.set(1,Hr(this.yb));a.set(2,[this.ga,this.da,this.oa]);a.set(3,Hr(this.A));return a.data()};
l.restore=function(a){var b=a[2];this.ga=b[0];this.da=b[1];this.oa=b[2];this.B=null;this.Y=this.Kb=new jr(this,os,a[0]);this.K=this.yb=new jr(this,ls,a[1]);this.A=new jr(this,this.La,a[3],this.rd);this.A.rc&&Es(this);Fs(this);if(!Ns(this))return!1;Os(this);return!0};
function ks(a,b,c,d){if(d)a.Ea("Unable to load font ROM (error "+d+": "+b+")");else{ob(a.ye,b,c);try{var e=eval("("+c+")"),f=e.bytes||e;if(!f.length){gb("Empty font ROM: "+b);return}if(1==f.length){gb(f[0]);return}if(8192==f.length)bq(a,f,[6144,0]);else if(2048==f.length)bq(a,f,[0]);else{a.Ea("Unrecognized font data length ("+f.length+")");return}}catch(g){a.Ea("Font ROM data error: "+g.message);return}(a.L||a.ba)&&Ib(a)}}
function ks(a,b,c,d){if(d)a.Da("Unable to load font ROM (error "+d+": "+b+")");else{ob(a.ye,b,c);try{var e=eval("("+c+")"),f=e.bytes||e;if(!f.length){gb("Empty font ROM: "+b);return}if(1==f.length){gb(f[0]);return}if(8192==f.length)bq(a,f,[6144,0]);else if(2048==f.length)bq(a,f,[0]);else{a.Da("Unrecognized font data length ("+f.length+")");return}}catch(g){a.Da("Font ROM data error: "+g.message);return}(a.L||a.ba)&&Ib(a)}}
function Ps(a,b){if(1==b)return a.ha[0]=Qs[Ks],a.ha[1]=Qs[Is],a.ha;if(2==b){var c=a.B.$e;if(a.B===a.A){var d=a.A.Cc[0],c=d&7;d&16&&(c|=8);18!=a.A.Cc[1]&&(c|=32)}a.ha[0]=Qs[c&15];c=c&32?Rs:Ss;for(d=0;d<c.length;d++)a.ha[d+1]=Qs[c[d]];return a.ha}if(a.K===a.yb)return Qs;a.Ga&&b&&!a.ha[16]&&(a.Ga=!1);if(!a.Ga){var c=a.A,d=c.af,e,f,g,h;if(8==b)for(e=0;256>e;e++)f=d[e]||0,g=f<<2&252,h=f>>4&252,f=f>>10&252,a.ha[e]=[g,h,f,255];else{var k=d&&d[255];b=null!=c.Cc[15]?c.Cc:Ts;for(e=0;16>e;e++)f=b[e]&63,k?(f|=
(c.Cc[20]&12)<<4,c.Cc[16]&128&&(f&=-49,f|=(c.Cc[20]&3)<<4),f=d[f],g=f<<2&252,h=f>>4&252,f=f>>10&252):(g=(f&4?170:0)|(f&32?85:0),h=(f&2?170:0)|(f&16?85:0),f=(f&1?170:0)|(f&8?85:0)),a.ha[e]=[g,h,f,255]}a.Ga=!0}return a.ha}function bq(a,b,c,d){a.wb=b;a.Ta=c;a.Da=d}
function Fs(a,b){var c=!1;if(window&&a.wb&&(!b||a.I)){b=0;var d=a.Da?a.Da:8,e=Ps(a);null!=a.Ta[0]&&Us(a,Vs,a.Ta[0],b,d,8,a.wb,e)&&(c=!0);b=a.Da?0:2048;d=a.Da?a.Da:9;null!=a.Ta[1]&&(Us(a,Ws,a.Ta[1],b,d,14,a.wb,Xs,Ys)&&(c=!0),a.Da&&Us(a,a.La,a.Ta[1],0,a.Da,14,a.wb,e)&&(c=!0))}return c}function Us(a,b,c,d,e,f,g,h,k){var m=!1;null!=c&&(Zs(a,b,c,d,e,f,g,h,k)&&(m=!0),a.Dd&&Zs(a,b<<1,c,d,e,f,g,h,k)&&(m=!0));return m}
(c.Cc[20]&12)<<4,c.Cc[16]&128&&(f&=-49,f|=(c.Cc[20]&3)<<4),f=d[f],g=f<<2&252,h=f>>4&252,f=f>>10&252):(g=(f&4?170:0)|(f&32?85:0),h=(f&2?170:0)|(f&16?85:0),f=(f&1?170:0)|(f&8?85:0)),a.ha[e]=[g,h,f,255]}a.Ga=!0}return a.ha}function bq(a,b,c,d){a.wb=b;a.Ta=c;a.Ea=d}
function Fs(a,b){var c=!1;if(window&&a.wb&&(!b||a.I)){b=0;var d=a.Ea?a.Ea:8,e=Ps(a);null!=a.Ta[0]&&Us(a,Vs,a.Ta[0],b,d,8,a.wb,e)&&(c=!0);b=a.Ea?0:2048;d=a.Ea?a.Ea:9;null!=a.Ta[1]&&(Us(a,Ws,a.Ta[1],b,d,14,a.wb,Xs,Ys)&&(c=!0),a.Ea&&Us(a,a.La,a.Ta[1],0,a.Ea,14,a.wb,e)&&(c=!0))}return c}function Us(a,b,c,d,e,f,g,h,k){var m=!1;null!=c&&(Zs(a,b,c,d,e,f,g,h,k)&&(m=!0),a.Dd&&Zs(a,b<<1,c,d,e,f,g,h,k)&&(m=!0));return m}
function Zs(a,b,c,d,e,f,g,h,k){var m=!1,p=b&1?0:1,v=a.va[b],u=16>h.length?h.length:16;v||(v={Fc:e<<p,Gc:f<<p,Ce:Array(u),Si:h.slice(0,u),kf:k,Tg:Array(u)});for(k=0;k<u;k++){var E=h[k],G=v.Ce[k]?v.Si[k]:[];if(E[0]!==G[0]||E[1]!==G[1]||E[2]!==G[2]){var m=v,G=k,I=p,J=c,T=d,L=e,ua=f,ca=g,xb=[0,0,0,0],za=document.createElement("canvas");za.width=m.Fc<<4;za.height=m.Gc<<4;var cb=za.getContext("2d"),Sa,rb,db,sc=8>ua||!T?ua:8,ib=cb.createImageData(m.Fc,m.Gc);for(Sa=0;256>Sa;Sa++){for(db=0;db<ua;db++)for(var df=
m.kf&&G&1&&db>=ua-2,Ld=ca[db<sc?J+Sa*sc+db:T+Sa*sc+db-sc],ef=0;ef<=I;ef++)for(rb=0;rb<L;rb++){var vg=rb<<I,ff=(db<<I)+ef,wg=df||Ld&128>>(8<=rb&&192<=Sa&&223>=Sa?7:rb)?E:xb;$s(ib,vg,ff,wg);I&&$s(ib,vg+1,ff,wg)}cb.putImageData(ib,(Sa&15)*m.Fc,(Sa>>4)*m.Gc)}m.Ce[G]="#"+q(E[0],2)+q(E[1],2)+q(E[2],2);m.Si[G]=E;m.Tg[G]=za;m=!0}}a.va[b]=v;return m}function at(a){0<a.xa||0<=a.aa?0>a.Aa&&(a.Aa=0):a.Aa=-1}
function Os(a){if(a.I){for(var b=10;15>=b;b++)if(null==a.B.Wa[b])return;var c=a.B.Wa[10],b=c&31,d=a.B.Wa[11]&31,e=a.B.Wa[9]&31,f=!1;a.B===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)bt(a);else{c=a.B.Wa[15]+((a.B.Wa[14]&63)<<8);a.aa!=c&&(bt(a),a.aa=c);d=d-b+1;if(a.nd!=b||a.Hc!=d)a.nd=b,a.Hc=d;a.za=e+1;at(a)}}}
@ -623,13 +623,13 @@ function Ou(a,b,c){if(void 0!==c){var d;!(d=!1!==a.M)&&(d=a.B.length)&&(d=a.B[0]
l.Wd=function(a,b){if(this.rc&&this.H&&this.H.ea.vb){var c="mouse button"+a+" "+(b?"dn":"up");switch(a){case As:if(this.K!=b){this.K=b;Pu(this,c);return}break;case Qu:if(this.L!=b){this.L=b;Pu(this,c);return}}Lb(this,c+": ignored")}};l.uf=function(a,b,c,d){this.rc&&this.H&&this.H.ea.vb&&(a||b)&&(this.I=a,this.J=b,Pu(this,null,c,d))};
function Pu(a,b,c,d){var e=64|(a.K?32:0)|(a.L?16:0)|(a.J&192)>>4|(a.I&192)>>6,f=a.I&63,g=a.J&63;t(a,8388608)&&Lb(a,(b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+r(e)+","+r(f)+","+r(g)+"]",0,!0);a.D.Pf([e,f,g]);a.I=a.J=0}
l.rl=function(a){var b=1048592==(a&1048592);if(b){if(!this.rc){var c=!1;this.A&16||(this.reset(),Lb(this,"serial mouse reset"),c=!0);this.A&1048576||(Lb(this,"serial mouse ID requested"),c=!0);c&&(this.D.Pf([Ru,Ru]),Lb(this,"serial mouse ID sent"));Ku(this);this.rc=b}}else this.rc&&(Lb(this,"serial mouse inactive"),Lu(this),this.rc=b);this.A=a};var Ru=77,As=0,Qu=2;$a(function(){for(var a=zb(document,"pcx86","mouse"),b=0;b<a.length;b++){var c=a[b],d=vb(c),d=new Ju(d);yb(d,c)}});
function Su(a,b,c){mb.call(this,"Disk",{id:a.ye+".disk"+q(++Tu,4)},2097152);this.controller=a;this.Ea=a.Ea;this.P=a.P;this.pa=a.pa;this.ba=a.ba;this.C=b;this.kd=b.name;this.Pe=b.Pe;this.pg=this.D=!1;Uu(this,c,b.qb,b.kb,b.$a,b.Na);this.I=[];this.L=[];this.F=null;this.N=0;this.M=!1;Ib(this)}ba(Su,mb);l=Su.prototype;l.uc=function(a,b,c,d){this.ba=d};l.Xb=function(a,b){b||!this.pg||this.D||(Ib(this,!1),this.load(this.kd,this.G,null,this.Il,this));return!0};l.Il=function(){Ib(this,!0)};
l.Wb=function(a,b){if(this.D){var c,d=0;if(this.M&&!qb("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=Vu(this,!1);)if(d=c[0]){this.Ea('Unable to save "'+this.kd+'" (error '+d+")");break}b&&this.D&&(b="action=close&volume="+this.G,b+="&machine="+Wu(this.controller),b+="&user="+Xu(this.controller),Ka(La()+"/api/v1/disk?"+b,null,!0),this.D=!1);!d&&a&&this.Ea(this.kd+" saved")}return!0};
function Su(a,b,c){mb.call(this,"Disk",{id:a.ye+".disk"+q(++Tu,4)},2097152);this.controller=a;this.Da=a.Da;this.P=a.P;this.pa=a.pa;this.ba=a.ba;this.C=b;this.kd=b.name;this.Pe=b.Pe;this.pg=this.D=!1;Uu(this,c,b.qb,b.kb,b.$a,b.Na);this.I=[];this.L=[];this.F=null;this.N=0;this.M=!1;Ib(this)}ba(Su,mb);l=Su.prototype;l.uc=function(a,b,c,d){this.ba=d};l.Xb=function(a,b){b||!this.pg||this.D||(Ib(this,!1),this.load(this.kd,this.G,null,this.Il,this));return!0};l.Il=function(){Ib(this,!0)};
l.Wb=function(a,b){if(this.D){var c,d=0;if(this.M&&!qb("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=Vu(this,!1);)if(d=c[0]){this.Da('Unable to save "'+this.kd+'" (error '+d+")");break}b&&this.D&&(b="action=close&volume="+this.G,b+="&machine="+Wu(this.controller),b+="&user="+Xu(this.controller),Ka(La()+"/api/v1/disk?"+b,null,!0),this.D=!1);!d&&a&&this.Da(this.kd+" saved")}return!0};
function Uu(a,b,c,d,e,f){a.mode=b;a.qb=c;a.kb=d;a.$a=e;a.Na=f;a.A=[];if("preload"!=a.mode){b=Array(a.qb);for(c=0;c<b.length;c++){d=Array(a.kb);for(e=0;e<d.length;e++){f=Array(a.$a);for(var g=1;g<=f.length;g++)f[g-1]=Yu(null,c,e,g,a.Na,"local"==a.mode?0:null);d[e]=f}b[c]=d}a.A=b}a.K=null}
l.load=function(a,b,c,d,e){var f=b;if(this.J)return!0;this.kd=a;this.G=b;this.Kg=ta(b);var g=this;this.J=d;this.O=e||this.controller;if(c){var h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=la[c];if(d){g.qb=d[0];g.kb=d[1];g.$a=d[2];g.Na=d[3]||512;b=g.Na>>2;var e=d=0,a=new DataView(a,0,c);g.A=Array(g.qb);for(c=0;c<g.A.length;c++)for(var f=g.A[c]=Array(g.kb),G=0;G<f.length;G++)for(var I=f[G]=Array(g.$a),J=0;J<I.length;J++){for(var T=Yu(null,c,G,J+1,g.Na,0),L=T.data,ua=0;ua<
b;ua++,e+=4)var ca=L[ua]=a.getInt32(e,!0),d=d+ca&-1;T.Lc=b;I[J]=T}g.K=d;b=g}else g.Ea("Unrecognized disk format ("+c+" bytes)");g.J&&(g.J.call(g.controller,g.C,b,g.kd,g.G),g.J=null)};h.readAsArrayBuffer(c);return!0}0>b.indexOf("/api/v1/dump")&&(a=va(b),"json"==a||"gz"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=Zu(this,b),this.pg=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):wa(b,
b;ua++,e+=4)var ca=L[ua]=a.getInt32(e,!0),d=d+ca&-1;T.Lc=b;I[J]=T}g.K=d;b=g}else g.Da("Unrecognized disk format ("+c+" bytes)");g.J&&(g.J.call(g.controller,g.C,b,g.kd,g.G),g.J=null)};h.readAsArrayBuffer(c);return!0}0>b.indexOf("/api/v1/dump")&&(a=va(b),"json"==a||"gz"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=Zu(this,b),this.pg=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):wa(b,
"/")&&(c="dir"),f=La()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.Pe?"":d)+"&format=json"));return!!Ka(f,null,!0,function(a,b,c){$u(g,a,b,c)})};
function $u(a,b,c,d){var e=null;a.Se=!1;var f=!(!(0>d&&a.pa)||a.pa.ea.Yb);if(a.pg)d?a.Ea('Unable to connect to disk "'+a.G+'" (error '+d+": "+c+")",f):(a.D=!0,av(a),e=a);else if(d)a.Ea('Unable to load disk "'+a.kd+'" (error '+d+": "+b+")",f);else{ob(a.controller.ye,b,c);try{if(0<ta(a.Kg,!0).toLowerCase().indexOf("-readonly"))a.Se=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.Se=!0)}var h;"<"==c.substr(0,1)?h=["Missing disk image: "+a.kd]:h=0>c.indexOf("0x")&&
function $u(a,b,c,d){var e=null;a.Se=!1;var f=!(!(0>d&&a.pa)||a.pa.ea.Yb);if(a.pg)d?a.Da('Unable to connect to disk "'+a.G+'" (error '+d+": "+c+")",f):(a.D=!0,av(a),e=a);else if(d)a.Da('Unable to load disk "'+a.kd+'" (error '+d+": "+b+")",f);else{ob(a.controller.ye,b,c);try{if(0<ta(a.Kg,!0).toLowerCase().indexOf("-readonly"))a.Se=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.Se=!0)}var h;"<"==c.substr(0,1)?h=["Missing disk image: "+a.kd]:h=0>c.indexOf("0x")&&
'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+c+")");if(h.length)if(1==h.length)gb(h[0]);else{a.qb=h.length;a.kb=h[0].length;a.$a=h[0][0].length;var k=h[0][0][0];a.Na=k&&k.length||512;for(d=c=0;d<a.qb;d++)for(f=0;f<a.kb;f++)for(g=0;g<a.$a;g++)if(k=h[d][f][g]){var m=k.length;void 0===m&&(m=k.length=512);var m=m>>2,p=k.pattern;void 0===p&&(p=k.pattern=0);var v=k.data;if(void 0===v){var u=k.bytes;if(void 0!==u&&u.length){for(var E=m<<2,G=u.length;G<
E;G++)u[G]=p;bv(k,u,0)}else k.data=v=[],u&&(k.pattern=p|p<<8|p<<16|p<<24);delete k.bytes}Yu(k,d,f);for(E=0;E<v.length;E++)c=c+v[E]&-1}a.A=h;a.K=c;av(a);e=a}else gb("Empty disk image: "+a.kd)}catch(I){gb("Disk image error ("+b+"): "+I.message)}}a.J&&(a.J.call(a.O,a.C,e,a.kd,a.G),a.J=null)}
function av(a){var b,c,d={},e;if(a.B&&a.B.length)for(b=a.A,c=0;c<b.length;c++)for(var f=0;f<b[c].length;f++)for(e=0;e<b[c][f].length;e++){var g=b[c][f][e];g&&(delete g.file,delete g.un)}a.B=[];d.Lf=d.tf=0;b=a.qb*a.kb*a.$a*a.Na;a.D&&a.log("ignore any synchronous XMLHttpRequest warnings here (for now)");if(e=cv(a,0)){d.Na=dv(a,e,11,2);if(d.Na!=a.Na){f=!1;d.sf=1;d.wg=12;d.mh=d.sf+2;d.wf=1;d.Na=a.Na;if(163840==b&&254==ev(a,d,0,0))d.tf=320,d.wh=64,f=!0;else if(327680==b&&255==ev(a,d,0,0))d.tf=640,d.wh=
@ -649,7 +649,7 @@ function bv(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]
l.write=function(a,b,c){if(this.Se)return!1;if(b<a.length){if(c!=this.read(a,b,!0)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Lc?f<a.hd?(a.Lc+=a.hd-f,a.hd=f):f>=a.hd+a.Lc&&(a.Lc+=f-(a.hd+a.Lc)+1):(a.hd=f,a.Lc=1);d[f]=d[f]&~(255<<b)|c<<b;this.D&&Cv(this,a,!0)}return!0}return null};function Fv(a){for(var b="",c=0,d;d=cv(a,c++);)for(var e=0,f=d.length;e<f;e++)b+=String.fromCharCode(dv(a,d,e,1));return btoa(b)}
l.save=function(){var a=0,b=[];b[a++]=[this.G,this.K,this.qb,this.kb,this.$a,this.Na];if(!this.D&&!this.Se)for(var c=this.A,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var g=c[d][e][f];if(g&&g.Lc){for(var h=[],k=0,m=g.hd,p=g.hd+g.Lc;m<p;)h[k++]=g.data[m++];b[a++]=[d,e,f,g.hd,h]}}return b};
l.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.A.length&&6<=e.length?Uu(this,"local",e[2],e[3],e[4],e[5]):null!=e[0]&&null!=e[1]&&null!=this.K&&e[1]!=this.K&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.K+")",b=-2));for(this.A.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],k=g[f++],m=g[f++];if(h>=this.A.length||k>=this.A[h].length||m>=this.A[h][k].length){c="sector (CHS="+h+":"+k+":"+m+") out of range ("+
b+" changes applied)";b=-1;break}if(this.Se){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.A[h][k][m]){for(k=h.data.length;k<e;)h.data[k++]=h.pattern;k=0;h.hd=e;for(h.Lc=f.length;e<g;)h.data[e++]=f[k++];b++}}}0>b?-2!=b&&this.Ea("Unable to restore disk '"+this.kd+": "+c):av(this);return b};
b+" changes applied)";b=-1;break}if(this.Se){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.A[h][k][m]){for(k=h.data.length;k<e;)h.data[k++]=h.pattern;k=0;h.hd=e;for(h.Lc=f.length;e<g;)h.data[e++]=f[k++];b++}}}0>b?-2!=b&&this.Da("Unable to restore disk '"+this.kd+": "+c):av(this);return b};
l.toJSON=function(){var a;a=0;for(var b;b=cv(this,a++);)Gv(b);a=JSON.stringify(this.A,function(a,b){if("file"!=a)return b});a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");a=a.replace(/(sector|length|data|pattern):/gm,'"$1":');return a=a.replace(/([\]}]),/gm,"$1,\n")};
function Gv(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}var Tu=0;function zv(a,b,c,d,e,f){this.sa=a;this.$b=c;this.Xg=d;this.cj=e;this.ge=f}function rv(a,b,c){var d;c=c||2;var e=b&511,f=cv(a.sa,a.ge[b>>9]);if(f){if(e+c<=f.length)return dv(a.sa,f,e,c);for(e=d=0;c--;)d|=rv(a,b++,1)<<e,e+=8}return d}function gv(a,b,c){return rv(a,b[0]+(c||0),b[1])}
function vv(a,b,c){for(var d=0;!c||b<c;){var e=rv(a,b,1);if(!e)break;var f;f=a;var g=b+1,h=e,k="";for(h||(h=-1);h--;){var m=rv(f,g++,1);if(!m)break;k+=String.fromCharCode(m)}f=k;if(!f)break;b+=1+e;if(d){if(e=rv(a,b),g=a.A[e])g=g[0],a.od[g]&&a.od[g].fe[e].push(f)}else c||(a.Sf=f);b+=2;d++}}
@ -657,7 +657,7 @@ zv.prototype.yj=function(a,b){var c=null;if(this.od)for(var d in this.od){var e=
function Hv(a){mb.call(this,"FDC",a,524288);this.dmaRead=Hv.prototype.ll;this.dmaWrite=Hv.prototype.ml;this.dmaFormat=Hv.prototype.El;this.L=Iv(a.autoMount);this.J=a.sortBy||"name";"none"==this.J&&(this.J=null);this.C=[];this.M=!Ta("Mobi")&&window&&"FileReader"in window}ba(Hv,mb);l=Hv.prototype;
l.Cb=function(a,b,c){var d=this;switch(b){case "listDisks":this.na[b]=c;if(this.J){b=[];for(a=0;a<c.options.length;a++)b.push(c.options[a]);b.sort(function(a,b){return"path"!=d.J?a.text.localeCompare(b.text):a.value.localeCompare(b.value)});for(a=0;a<b.length;a++)try{c.options[a]=b[a]}catch(e){break}}c.onchange=function(){var a=d.na.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("("+b+")")}catch(h){gb("FDC option error: "+h.message)}b=g.desc;void 0===
b&&(b="");g=g.href;void 0!==g&&(b='<a href="'+g+'" target="_blank">'+b+"</a>");a.innerHTML=b}};return!0;case "descDisk":case "listDrives":return this.na[b]=c,c.onchange=function(){var a=oa(c.value,10);null!=a&&Jv(d,a)},!0;case "loadDisk":return this.na[b]=c,c.onclick=function(){var a=d.na.listDisks;a&&Kv(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDisk":if(!this.M){c.parentNode.removeChild(c);break}this.na[b]=c;c.onclick=function(){var a=d.na.listDrives;a&&a.options&&d.A&&((a=d.A[oa(a.value,
10)||0])?(a=a.sa)?(a=Wa(Fv(a),"octet-stream",!0,a.Kg.replace(".json",".img")),gb(a)):d.Ea("No diskette loaded in drive."):d.Ea("No diskette drive selected."))};return!0;case "mountDisk":if(this.M)return this.na[b]=c,c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Kv(d,ta(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1};
10)||0])?(a=a.sa)?(a=Wa(Fv(a),"octet-stream",!0,a.Kg.replace(".json",".img")),gb(a)):d.Da("No diskette loaded in drive."):d.Da("No diskette drive selected."))};return!0;case "mountDisk":if(this.M)return this.na[b]=c,c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Kv(d,ta(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1};
l.uc=function(a,b,c,d){this.ka=b;this.H=c;this.ba=d;this.pa=a;this.W=Wb(a,"ChipSet");Iv(yd(this.pa,"autoMount"),this.L);Lv(this);Nc(b,this,Mv);Rc(b,this,Nv);Ov(this,"None","",!0);this.M&&Ov(this,"Local Disk","?");Ov(this,"Remote Disk","??");Pv(this)||Ib(this)};function Iv(a,b){if(a){if("string"==typeof a)try{a=eval("("+a+")")}catch(d){gb("FDC auto-mount error: "+d.message+" ("+a+")"),a={}}}else a={};for(var c in a)b&&(b[c]=a[c]);return a}
l.Xb=function(a,b){if(!b){if(!a){if(this.reset(),this.pa.O){this.C=[];for(a=0;a<this.A.length;a++)Qv(this,a,!0);Pv(this,!0)}}else if(!this.restore(a))return!1;if(a=this.na.listDrives){for(;a.firstChild;)a.removeChild(a.firstChild);a.value="";for(b=0;b<this.N;b++){var c=document.createElement("option");c.value=b;c.text=String.fromCharCode(65+b)+":";a.appendChild(c)}0<this.N&&(a.value="0",Jv(this,0))}}return!0};l.Wb=function(a){return a?this.save():!0};l.reset=function(){Lv(this)};
l.save=function(){var a=new Wf(this);a.set(0,Rv(this));return a.data()};l.restore=function(a){return Lv(this,a[0])};
@ -666,12 +666,12 @@ function Lv(a,b){var c=0,d,e=!0;b||(b=[0,0,Sv,Array(9),0,0,0,[]]);a.Ua=b[c++];c+
p[v++];g.cb=null;g.sa||(g.ue="");var E=p[v++];102==E&&(E=!1);"boolean"==typeof E?(u=p[v++],p=p[v],E?(v=k.A[m],Qv(k,m,!0,!0),v.Oe=!0,m=new Su(k,v,"preload"),k.nj(v,m,u,p,!0)):Vv(k,m,u,p,!0)?g.sa&&p&&Wv(k,u,p,g.sa):Ib(k,!1)):void 0!==E&&g.sa&&0>g.sa.restore(E)&&(h=!1);h&&g.sa&&void 0!==g.Sa&&(g.cb=g.sa.seek(g.Gb,g.Za,g.mb));h||(e=!1)}a.G=b[c++]||0;a.Zb=b[c]||Xv;return e}
function Rv(a){var b=0,c=[];c[b++]=a.Ua;c[b++]=0;c[b++]=a.fa;c[b++]=a.F;c[b++]=a.D;c[b++]=a.B;c[b++]=a.I;for(var d=b++,e=0,f=[],g=0;g<a.A.length;g++){var h=e++,k=a.A[g],m=0,p=[];p[m++]=k.rb;p[m++]=[k.name,k.qb,k.kb,k.$a,k.Na,k.Pe,k.vg,k.Bf,k.Cf];p[m++]=k.Za;p[m++]=k.Td+100;p[m++]=k.Gb;p[m++]=k.mb;p[m++]=k.Ud;p[m++]=k.ub;p[m++]=k.Sa;p[m++]=k.Oe;p[m++]=k.al;p[m]=k.ue;f[h]=p}c[d]=f;d=b++;for(e=0;e<a.A.length;e++)f=a.A[e],f.sa&&Yv(a,f.ue,f.sa);c[d]=a.C;c[b++]=a.G;c[b]=a.Zb;return c}
l.jj=function(a){var b;a=this.A[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};l.bl=function(a,b,c){if(a.sa){var d=a.sa.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.Gb=Math.floor(b/f),b%=f,a.Za=Math.floor(b/e),a.mb=b%e+1,a.ub=c*d[3],a.rb=Zv,!0}return!1};
function Pv(a,b){b||(a.K=0);for(var c in a.L){var d=a.L[c],e=d.path||"";if(e){var f=c.charCodeAt(0)-65;if(0<=f&&f<a.A.length){if(!(d=d.name))a:{if((d=a.na.listDisks)&&d.options)for(var g=0;g<d.options.length;g++){var h=d.options[g];if(h.value==e){d=h.text;break a}}d=ta(e,!0)}!Vv(a,f,d||"Unknown",e,!0)&&b&&Ib(a,!1)}else a.Ea("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")")}}return!!a.K}
function Kv(a,b,c,d){var e,f=a.na.listDrives;if(f&&!isNaN(e=oa(f.value,10))&&0<=e&&e<a.A.length)if(c)if("?"==c)a.Ea('Use "Choose File" and "Mount" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=ta(c)}for(;0>Vv(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){var f=a,g=c,h;for(h=0;h<f.C.length;h++)if(f.C[h][1]==g){f.C.splice(h,1);break}Qv(a,e,!1,
!0)}}else Qv(a,e);else a.Ea("Unable to load the selected drive")}function Vv(a,b,c,d,e,f){var g=a.A[b];if(d&&(d=d.replace("/disks/pc/","/disks/pcx86/"),g.ue.toLowerCase()!=d.toLowerCase())){Qv(a,b,e,!0);if(g.Me)return a.Ea("Drive "+b+" busy"),0;g.Me=!0;e&&(g.le=!0,a.K++,t(a)&&Lb(a,"loading diskette '"+c+"'"));g.Oe=!!f;return(new Su(a,g,"preload")).load(c,d,f,a.nj)?1:0}return-1}
l.nj=function(a,b,c,d,e){var f;a.Me=!1;b&&(f=b.info(),b&&f[0]>a.qb||f[1]>a.kb)&&(this.Ea('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Ua)),b=null);b?(a.sa=b,a.al=c,a.ue=d,Wv(this,c,d,b),f=b.info(),this.G|=$v,this.Ea('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Ua),a.le||e),a.vg=f[0],a.Bf=f[1],a.Cf=f[2],this.pa&&this.pa.md()):a.Oe=!1;a.le&&(a.le=!1,--this.K||Ib(this));Jv(this,a.Ua)};
function Pv(a,b){b||(a.K=0);for(var c in a.L){var d=a.L[c],e=d.path||"";if(e){var f=c.charCodeAt(0)-65;if(0<=f&&f<a.A.length){if(!(d=d.name))a:{if((d=a.na.listDisks)&&d.options)for(var g=0;g<d.options.length;g++){var h=d.options[g];if(h.value==e){d=h.text;break a}}d=ta(e,!0)}!Vv(a,f,d||"Unknown",e,!0)&&b&&Ib(a,!1)}else a.Da("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")")}}return!!a.K}
function Kv(a,b,c,d){var e,f=a.na.listDrives;if(f&&!isNaN(e=oa(f.value,10))&&0<=e&&e<a.A.length)if(c)if("?"==c)a.Da('Use "Choose File" and "Mount" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=ta(c)}for(;0>Vv(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){var f=a,g=c,h;for(h=0;h<f.C.length;h++)if(f.C[h][1]==g){f.C.splice(h,1);break}Qv(a,e,!1,
!0)}}else Qv(a,e);else a.Da("Unable to load the selected drive")}function Vv(a,b,c,d,e,f){var g=a.A[b];if(d&&(d=d.replace("/disks/pc/","/disks/pcx86/"),g.ue.toLowerCase()!=d.toLowerCase())){Qv(a,b,e,!0);if(g.Me)return a.Da("Drive "+b+" busy"),0;g.Me=!0;e&&(g.le=!0,a.K++,t(a)&&Lb(a,"loading diskette '"+c+"'"));g.Oe=!!f;return(new Su(a,g,"preload")).load(c,d,f,a.nj)?1:0}return-1}
l.nj=function(a,b,c,d,e){var f;a.Me=!1;b&&(f=b.info(),b&&f[0]>a.qb||f[1]>a.kb)&&(this.Da('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Ua)),b=null);b?(a.sa=b,a.al=c,a.ue=d,Wv(this,c,d,b),f=b.info(),this.G|=$v,this.Da('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Ua),a.le||e),a.vg=f[0],a.Bf=f[1],a.Cf=f[2],this.pa&&this.pa.md()):a.Oe=!1;a.le&&(a.le=!1,--this.K||Ib(this));Jv(this,a.Ua)};
function Ov(a,b,c,d){if((a=a.na.listDisks)&&a.options){for(var e=0;e<a.options.length;e++)if(a.options[e].value==c)return;e=document.createElement("option");e.text=b;e.value=c;d&&a.childNodes[0]?a.insertBefore(e,a.childNodes[0]):a.appendChild(e)}}
function Jv(a,b){if(0<=b&&b<a.A.length){var c=a.A[b],d=a.na.listDisks;a=a.na.listDrives;if(d&&a&&d.options&&a.options&&(a=oa(a.value,10),c=c.Oe?"?":c.ue,!isNaN(a)&&a==b)){for(b=0;b<d.options.length;b++)if(d.options[b].value==c){d.selectedIndex!=b&&(d.selectedIndex=b);break}b==d.options.length&&(d.selectedIndex=0)}}}function Qv(a,b,c,d){var e=a.A[b];e.sa&&(Yv(a,e.ue,e.sa),e.al="",e.ue="",e.sa=null,e.Oe=!1,a.G|=$v,d||a.Ea("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||Jv(a,b))}
function Jv(a,b){if(0<=b&&b<a.A.length){var c=a.A[b],d=a.na.listDisks;a=a.na.listDrives;if(d&&a&&d.options&&a.options&&(a=oa(a.value,10),c=c.Oe?"?":c.ue,!isNaN(a)&&a==b)){for(b=0;b<d.options.length;b++)if(d.options[b].value==c){d.selectedIndex!=b&&(d.selectedIndex=b);break}b==d.options.length&&(d.selectedIndex=0)}}}function Qv(a,b,c,d){var e=a.A[b];e.sa&&(Yv(a,e.ue,e.sa),e.al="",e.ue="",e.sa=null,e.Oe=!1,a.G|=$v,d||a.Da("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||Jv(a,b))}
function Wv(a,b,c,d){var e;for(e=0;e<a.C.length;e++)if(a.C[e][1]==c){d.restore(a.C[e][2]);return}a.C[e]=[b,c,[]]}function Yv(a,b,c){var d;for(d=0;d<a.C.length;d++)if(a.C[d][1]==b){a.C[d][2]=c.save();break}}l.Xn=function(a,b,c){w(this,a,b,c,"OUTPUT");b&aw?this.I&aw||this.I&bw&&this.W&&gh(this.W,6):Lv(this);this.I=b};l.tm=function(a,b){w(this,a,null,b,"DIAG",80);return 80};l.vm=function(a,b){w(this,a,null,b,"STATUS",this.fa);return this.fa};
l.sm=function(a,b){var c=0;this.D<this.B&&(c=this.F[this.D]);this.I&bw&&this.W&&eh(this.W,6);t(this)&&w(this,a,null,b,"DATA["+this.D+"]",c);++this.D>=this.B&&(this.fa&=~(cw|dw),this.D=this.B=0);return c};
l.Wn=function(a,b,c){t(this)&&w(this,a,b,c,"DATA["+this.B+"]");this.B<this.F.length&&(this.F[this.B++]=b);a=this.F[0]&ew;if(void 0!==fw[a]&&this.B>=fw[a].Jd){b=!1;this.D=0;a=gw(this);var d,e,f,g,h=a&ew;switch(h){case hw:gw(this);gw(this);iw(this);break;case jw:c=gw(this);this.Ua=c&3;d=this.A[this.Ua];iw(this);kw(this,(d.rb&lw)>>>24);break;case mw:case nw:c=gw(this);b=c>>2&1;this.Ua=c&3;d=this.A[this.Ua];d.Za=b;c=d.Gb=gw(this);e=gw(this);f=d.mb=gw(this);g=gw(this);d.ub=128<<g;d.Ud=gw(this);gw(this);
@ -683,18 +683,18 @@ l.El=function(a,b){if(void 0!==b&&0<=b)a:if(a.rb)a=-1;else{a.$c[a.He++]=b;if(a.H
function Dw(a,b){if(a.rb||!a.sa)return-1;do{if(a.cb&&a.sa.write(a.cb,a.Sa++,b))break;a.cb=a.sa.seek(a.Gb,a.Za,a.mb);if(!a.cb){a.rb=Gw|pw;b=-1;break}a.Sa=0;Fw(a)}while(1);return b}function Fw(a){a.mb++;a.mb>=a.Cf+1&&(a.mb=1,a.Za++,a.Za>=a.Bf&&(a.Za=0,a.Gb++))}var Uv="Floppy Drive",aw=4,bw=8,dw=16,cw=64,Sv=128,hw=3,jw=4,mw=5,nw=6,sw=7,vw=8,xw=10,yw=13,zw=15,ew=31,Cw=128,Zv=0,ow=8,tw=32,pw=64,Tv=192,ww=255,qw=512,Ew=1024,Gw=8192,Aw=65280,Bw=16711680,uw=268435456,lw=-16777216,$v=128,Xv=0;aa={};
var fw={3:{Jd:3,Vd:0,name:aa.$p},4:{Jd:2,Vd:1,name:aa.Yp},5:{Jd:9,Vd:7,name:aa.eq},6:{Jd:9,Vd:7,name:aa.Up},7:{Jd:2,Vd:0,name:aa.Wp},8:{Jd:1,Vd:2,name:aa.Zp},10:{Jd:2,Vd:7,name:aa.Vp},13:{Jd:6,Vd:7,name:aa.Rp},15:{Jd:3,Vd:0,name:aa.Xp}},Mv={1009:Hv.prototype.tm,1012:Hv.prototype.vm,1013:Hv.prototype.sm,1015:Hv.prototype.um},Nv={1010:Hv.prototype.Xn,1013:Hv.prototype.Wn,1015:Hv.prototype.Vn};
$a(function(){for(var a=zb(document,"pcx86","fdc"),b=0;b<a.length;b++){var c=a[b],d=vb(c),d=new Hv(d);yb(d,c)}});function Hw(a){mb.call(this,"HDC",a,1048576);this.dmaRead=Hw.prototype.nl;this.dmaWrite=Hw.prototype.ol;this.dmaWriteBuffer=Hw.prototype.Fl;this.dmaWriteFormat=Hw.prototype.Gl;this.Z=[];this.la=a.drives;this.M="at"==a.type}ba(Hw,mb);l=Hw.prototype;
l.Cb=function(a,b,c){var d=this;switch(b){case "saveHD0":case "saveHD1":return this.na[b]=c,c.onclick=function(a){return function(){var b=d.A&&d.A[a];if(b&&b.sa){var b=b.sa,c=b.Kg||b.kd,e=c.lastIndexOf(".");0<=e&&(c=c.substr(0,e));c+=".img";b=Wa(Fv(b),"octet-stream",!0,c);gb(b)}else d.Ea("Hard drive "+a+" is not available.")}}(+b.slice(-1)),!0}return!1};
l.Cb=function(a,b,c){var d=this;switch(b){case "saveHD0":case "saveHD1":return this.na[b]=c,c.onclick=function(a){return function(){var b=d.A&&d.A[a];if(b&&b.sa){var b=b.sa,c=b.Kg||b.kd,e=c.lastIndexOf(".");0<=e&&(c=c.substr(0,e));c+=".img";b=Wa(Fv(b),"octet-stream",!0,c);gb(b)}else d.Da("Hard drive "+a+" is not available.")}}(+b.slice(-1)),!0}return!1};
l.uc=function(a,b,c,d){this.ka=b;this.H=c;this.ba=d;this.pa=a;if(d=yd(a,"drives"))this.Z=d;else if(this.la)try{this.Z=eval("("+this.la+")")}catch(e){gb("HDC drive configuration error: "+e.message+" ("+this.la+")")}this.W=Wb(a,"ChipSet");this.G=0;this.ma=3;Nc(b,this,this.M?Iw:Jw);Rc(b,this,this.M?Kw:Lw);this.M&&(this.G++,this.W&&this.W.ca==wl&&this.G++,this.ma=2,b.Y[Mw]=2,b.Z[Mw]=2);Rf(c,19,this.Xm.bind(this));Rf(c,64,this.Ym.bind(this));this.reset();Nw(this)||Ib(this)};
l.Xb=function(a,b){if(!b)if(!a)Ow(this),this.pa.O&&Nw(this,!0);else if(!this.restore(a))return!1;return!0};l.Wb=function(a){return a?this.save():!0};function Wu(a){return a.pa?a.pa.ha:""}function Xu(a){return a.pa?a.pa.C||"":""}l.reset=function(){Ow(this,null,!0)};l.save=function(){var a=new Wf(this);a.set(0,Pw(this));return a.data()};l.restore=function(a){return Ow(this,a[0])};
function Ow(a,b,c){var d=0,e=!0;a.Ua=-1;if(a.M){if(b||(b=[0,0,0,0,0,0,0,Qw,0,[0,-1]]),a.I=b[d++],a.va=b[d++],a.J=b[d++],a.ga=b[d++],a.da=b[d++],a.aa=b[d++],a.Y=b[d++],a.fa=b[d++],a.ha=b[d++],a.L=b[d++],"object"==typeof a.L){var f=a.L;a.L=f[0];a.Ua=f[1]}}else b||(b=[0,Rw,Array(14),0,0]),a.O=b[d++],a.fa=b[d++],a.F=b[d++],a.D=b[d++],a.B=b[d++],a.ta=b[d++],a.qa=b[d++],a.oa=b[d++],f=b[d++],void 0!==f?a.N=f:void 0===a.N&&(a.N=-1);void 0===a.A&&(a.A=Array(a.Z.length));b=b[d];void 0===b&&(b=[]);for(d=0;d<
a.A.length;d++){void 0===a.A[d]&&(a.A[d]={});var f=a.A[d],g=a,h=d,k=f,m=a.Z[d],p=b[d],v=c,u=0,E=!0;p||(p=[Sw,0,!1,Array(8)]);k.Ua=h;k.errorCode=p[u++];k.cl=p[u++];k.Pe=p[u++];k.Ee=p[u++];k.Fe=p[u++];k.Za=p[u++];k.kb=p[u++];k.Pd=p[u++];k.mb=p[u++];k.Ud=p[u++];k.ub=p[u++];k.jg=g.M?0:1;k.name=m.name;void 0===k.name&&(k.name=Tw);k.path=m.path;k.mode=m.mode||(k.path?"preload":"local");"demandro"!=k.mode&&"demandrw"!=k.mode||Xu(g)||(k.mode="local");k.type=m.type;if(void 0===k.type||void 0===Uw[g.G][k.type])k.type=
g.ma;m=Uw[g.G][k.type];k.$a=m[2]||17;k.Na=m[3]||512;if(v&&g.W){var m=g.W,G=k.type;if(m.A){var v=null,I=m.A[18];15<G&&(v=G,G=15);h?(I=I&240|G,G=26):(I=I&15|G<<4,G=25);var J=m;J.A&&(J.A[18]=I,jm(J));null!=v&&m.A&&(m.A[G]=v,jm(m))}}void 0===k.sa&&(k.sa=null,g.Ea("Type "+k.type+' "'+k.name+'" is fixed disk '+h,!0));Vw(g,k);k.Sa=p[u++];k.cb=null;k.sa&&(g=p[u],void 0!==g&&0>k.sa.restore(g)&&(E=!1),E&&void 0!==k.Sa&&(k.cb=k.sa.seek(k.Pd,k.Za,k.mb+k.jg)));E||(e=!1);null!=a.O&&1>=d&&(a.O|=(f.type&3)<<(1-d<<
g.ma;m=Uw[g.G][k.type];k.$a=m[2]||17;k.Na=m[3]||512;if(v&&g.W){var m=g.W,G=k.type;if(m.A){var v=null,I=m.A[18];15<G&&(v=G,G=15);h?(I=I&240|G,G=26):(I=I&15|G<<4,G=25);var J=m;J.A&&(J.A[18]=I,jm(J));null!=v&&m.A&&(m.A[G]=v,jm(m))}}void 0===k.sa&&(k.sa=null,g.Da("Type "+k.type+' "'+k.name+'" is fixed disk '+h,!0));Vw(g,k);k.Sa=p[u++];k.cb=null;k.sa&&(g=p[u],void 0!==g&&0>k.sa.restore(g)&&(E=!1),E&&void 0!==k.Sa&&(k.cb=k.sa.seek(k.Pd,k.Za,k.mb+k.jg)));E||(e=!1);null!=a.O&&1>=d&&(a.O|=(f.type&3)<<(1-d<<
1))}0<=a.Ua&&(a.C=a.A[a.Ua]);return e}
function Pw(a){var b=0,c=[];a.M?(c[b++]=a.I,c[b++]=a.va,c[b++]=a.J,c[b++]=a.ga,c[b++]=a.da,c[b++]=a.aa,c[b++]=a.Y,c[b++]=a.fa,c[b++]=a.ha,c[b++]=[a.L,a.Ua]):(c[b++]=a.O,c[b++]=a.fa,c[b++]=a.F,c[b++]=a.D,c[b++]=a.B,c[b++]=a.ta,c[b++]=a.qa,c[b++]=a.oa,c[b++]=a.N);for(var d=0,e=[],f=0;f<a.A.length;f++){var g=d++,h=a.A[f],k=0,m=[];m[k++]=h.errorCode;m[k++]=h.cl;m[k++]=h.Pe;m[k++]=h.Ee;m[k++]=h.Fe;m[k++]=h.Za;m[k++]=h.kb;m[k++]=h.Pd;m[k++]=h.mb;m[k++]=h.Ud;m[k++]=h.ub;m[k++]=h.Sa;m[k]=h.sa?h.sa.save():
null;e[g]=m}c[b]=e;return c}l.jj=function(a){var b;a=this.A[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};function Vw(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.Ee[2])?e=b.Ee[0]<<8|b.Ee[1]:c=b.type);null==c||d||(d=Uw[a.G][c][1],e=Uw[a.G][c][0]);d&&((c=Uw[a.G][b.type])&&e!=c[0]&&d!=c[1]&&a.Ea("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.qb=e,b.kb=d,null==b.sa&&(b.sa=new Su(a,b,b.mode)))}}
null;e[g]=m}c[b]=e;return c}l.jj=function(a){var b;a=this.A[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};function Vw(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.Ee[2])?e=b.Ee[0]<<8|b.Ee[1]:c=b.type);null==c||d||(d=Uw[a.G][c][1],e=Uw[a.G][c][0]);d&&((c=Uw[a.G][b.type])&&e!=c[0]&&d!=c[1]&&a.Da("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.qb=e,b.kb=d,null==b.sa&&(b.sa=new Su(a,b,b.mode)))}}
l.bl=function(a,b,c){if(a.sa){var d=a.sa.info(),e=d[0];if(e){var f=d[2],g=d[1]*f;if(b+c<=e*g)return a.Pd=Math.floor(b/g),b%=g,a.Za=Math.floor(b/f),a.mb=b%f,a.ub=c*d[3],a.errorCode=Sw,!0}}return!1};
function Nw(a,b){b||(a.K=0);for(var c=0;c<a.A.length;c++){var d=a.A[c];if(d.name&&d.path){if(!(b&&d.sa&&d.sa.pg)){var e;e=a;var f=d.name,d=d.path,g=e.A[c];g.Me?(e.Ea("Drive "+c+" busy"),e=!0):(g.Me=!0,g.le=!0,e.K++,t(e)&&Lb(e,"loading "+f),(g.sa||new Su(e,g,g.mode)).load(f,d,null,e.Hl),e=!1);!e&&b&&Ib(a,!1)}}else b&&void 0!==d.type&&(d.sa=null,Vw(a,d,d.type))}return!!a.K}
l.Hl=function(a,b,c){a.Me=!1;if(a.sa=b)this.Ea('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.Ua),a.le),b=b.info(),b[0]==a.qb&&b[1]==a.kb&&b[2]==a.$a&&b[3]==a.Na||this.Ea("Warning: disk geometry ("+b[0]+":"+b[1]+":"+b[2]+") does not match "+Ww[this.G]+" drive type "+a.type+" ("+a.qb+":"+a.kb+":"+a.$a+")");a.le&&(a.le=!1,--this.K||Ib(this))};
function Nw(a,b){b||(a.K=0);for(var c=0;c<a.A.length;c++){var d=a.A[c];if(d.name&&d.path){if(!(b&&d.sa&&d.sa.pg)){var e;e=a;var f=d.name,d=d.path,g=e.A[c];g.Me?(e.Da("Drive "+c+" busy"),e=!0):(g.Me=!0,g.le=!0,e.K++,t(e)&&Lb(e,"loading "+f),(g.sa||new Su(e,g,g.mode)).load(f,d,null,e.Hl),e=!1);!e&&b&&Ib(a,!1)}}else b&&void 0!==d.type&&(d.sa=null,Vw(a,d,d.type))}return!!a.K}
l.Hl=function(a,b,c){a.Me=!1;if(a.sa=b)this.Da('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.Ua),a.le),b=b.info(),b[0]==a.qb&&b[1]==a.kb&&b[2]==a.$a&&b[3]==a.Na||this.Da("Warning: disk geometry ("+b[0]+":"+b[1]+":"+b[2]+") does not match "+Ww[this.G]+" drive type "+a.type+" ("+a.qb+":"+a.kb+":"+a.$a+")");a.le&&(a.le=!1,--this.K||Ib(this))};
l.Vm=function(a,b){var c=0;this.D<this.B&&(c=this.F[this.D]);this.W&&eh(this.W,5);this.fa&=~Xw;w(this,a,null,b,"DATA["+this.D+"]",c);++this.D>=this.B&&(this.D=this.B=0,this.fa&=~(Yw|Zw|$w));return c};l.uo=function(a,b,c){w(this,a,b,c,"DATA["+this.B+"]");this.B<this.F.length&&(this.F[this.B++]=b);a=this.F[0]!=ax?6:this.F.length;6==this.B&&(this.fa&=~bx);this.B>=a&&(this.fa|=Yw,this.fa&=~bx,cx(this))};l.Wm=function(a,b){var c=this.fa;w(this,a,null,b,"STATUS",c);this.D<this.B&&(this.fa|=bx);return c};
l.xo=function(a,b,c){w(this,a,b,c,"RESET");this.ta=b;this.W&&eh(this.W,5);Ow(this)};l.Um=function(a,b){w(this,a,null,b,"CONFIG",this.O);return this.O};l.wo=function(a,b,c){w(this,a,b,c,"PULSE");this.qa=b;this.fa=bx|Zw|$w};l.vo=function(a,b,c){w(this,a,b,c,"PATTERN");this.oa=b};l.ii=function(a,b,c){w(this,a,b,c,"NOISE")};
function dx(a,b,c){var d=-1;a.C&&(d=a.te(a.C,function(){}),1==a.C.Sa||a.C.Sa==a.C.Na)&&(t(a,1048832)&&w(a,b,null,c,"DATA["+a.C.Sa+"]",d),1<a.C.Sa&&(a.C.ub-=a.C.Na,a.J=a.J-1&255,a.C.ub>=a.C.Na?(a.fa=ex,a.te(a.C,function(b){0<=b?(fx(a),a.W&&a.W.ca==wl&&(a.fa=0),a.fa=a.fa|Qw|gx|hx):(a.fa=ix,a.I=jx)},!1)):a.fa=Qw|gx));return d}l.pl=function(a,b){return dx(this,a,b)|dx(this,a,b)<<8};
@ -743,7 +743,7 @@ l.cn=function(a){var b=this.H,c=b.D&255,d=b.D>>8&255,e=b.G&65535,f=b.I&65535,g=b
(b.J=a[0],ne(b,a[1]));break;case 72:Gy(this,null,e);break;case 80:32==c?By(this,ky(this,h,k),0,f,!0,!!this.Y):128>c?By(this,ky(this,h,k),e+1,c&64?g:f,!(c&1),!!this.Y):Dy(this,ky(this,h,k),!(c&1),!!this.Y),this.Y&&(b.D=b.D&-256|1)}return!this.Y};l.Al=function(){var a=this.H;5==(a.D&255)&&(a.I=a.K=0,a.D=a.D&-256|1);return!1};
l.Cb=function(a,b,c){var d=this;switch(b){case "debugInput":return this.va=this.na[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",oy(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.A<d.B.length-1&&(b=d.B[++d.A])):40==a.keyCode&&(0<d.A?b=d.B[--d.A]:(b="",d.A=-1)),null!=b){var e=b.length;c.value=b;c.setSelectionRange(e,e)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.na[b]=c,Ya(c,function(){if(d.va){var a=d.va.value;
d.va.value="";oy(d,a,!0);return!0}return!1}),!0;case "step":return this.na[b]=c,Ya(c,function(a){var b=!1;Jb(d,!0)||(Kb(d,!0),b=Jy(d,a?1:0),Kb(d,!1));return b}),!0}return!1};l.md=function(){this.va&&this.va.focus()};function Ky(a){return!(!(a.H&&a.H.qa&1)||a.H.O&131072)}
function ty(a,b,c){var d=Ky(a)?uy:Ly;c||(c=d);if(c==d){if(b===a.H.Z.U)return a.H.Z;if(b===a.H.Ca.U)return a.H.Ca;if(b===a.H.oa.U)return a.H.oa;if(b===a.H.Y.U)return a.H.Y;if(80386<=a.H.ca){if(b===a.H.Ga.U)return a.H.Ga;if(b===a.H.Ha.U)return a.H.Ha}if(a.Da&&c==uy||!a.Ya)return null}a=a.Ya;if(c!=uy)a.nh(b),a.Ka=65535,a.Nb=65536;else{var e;c=a.gc;b&=65535;b&4?(d=c.Eb.ua,e=d+c.Eb.Ka|0):(d=c.Kb,e=c.Pc);d=d+(b&65528)|0;if(e-d|0){e=xg(c,d+0,2);var f=xg(c,d+4,2),g=f&7936,h=xg(c,d+2,2)|(f&255)<<16,k=xg(c,
function ty(a,b,c){var d=Ky(a)?uy:Ly;c||(c=d);if(c==d){if(b===a.H.Z.U)return a.H.Z;if(b===a.H.Ca.U)return a.H.Ca;if(b===a.H.oa.U)return a.H.oa;if(b===a.H.Y.U)return a.H.Y;if(80386<=a.H.ca){if(b===a.H.Ga.U)return a.H.Ga;if(b===a.H.Ha.U)return a.H.Ha}if(a.Ea&&c==uy||!a.Ya)return null}a=a.Ya;if(c!=uy)a.nh(b),a.Ka=65535,a.Nb=65536;else{var e;c=a.gc;b&=65535;b&4?(d=c.Eb.ua,e=d+c.Eb.Ka|0):(d=c.Kb,e=c.Pc);d=d+(b&65528)|0;if(e-d|0){e=xg(c,d+0,2);var f=xg(c,d+4,2),g=f&7936,h=xg(c,d+2,2)|(f&255)<<16,k=xg(c,
d+6,2);80386<=c.ca&&(h|=(k&65280)<<16,e|=(k&15)<<16,k&128&&(e=e<<12|4095));a.U=b;a.ua=h;a.Ka=e;a.Nb=(e>>>0)+1;a.lb=f;a.type=g;a.ext=k;a.Lb=d;Vd(a,!0,!0,!1)}}return a}l.Sb=function(a,b,c){var d=a&&a.ya;if(null==d&&(d=-1,a)){var e=ty(this,a.U,a.type);e&&(b=a.Ja||0,c=c||1,d=e=-1===e.Lb||e.Oc&&(b>>>0)+c>e.Nb||!e.Oc&&(b>>>0)+c<=e.Nb?e.ua+b|0:-1,a.ya=d)}return d};l.Ia=function(a,b){var c=255,d=this.Sb(a,!1,1);-1!==d&&(c=xg(this.H,d,1,a.type==My)|0,b&&Ny(this,a,b));return c};
l.jb=function(a,b){return a.Hb?Ey(this,a,b?4:0):this.Yc(a,b?2:0)};l.Yc=function(a,b){var c=65535,d=this.Sb(a,!1,2);-1!==d&&(c=xg(this.H,d,2,a.type==My)|0,b&&Ny(this,a,b));return c};function Ey(a,b,c){var d=-1,e=a.Sb(b,!1,4);-1!==e&&(d=xg(a.H,e,4,b.type==My)|0,c&&Ny(a,b,c));return d}l.fc=function(a,b,c,d){var e=this.Sb(a,!0,1);if(-1!==e){if(a.type!=My)this.H.fc(e,b);else{var f=this.ka;f.aa[(e&f.B)>>>f.A].cf(e&f.D,b&255,e)}c&&Ny(this,a,c);d||Bd(this.H,!0)}};
l.kl=function(a,b,c){var d=this.Sb(a,!0,2);-1!==d&&(a.type!=My?this.H.fb(d,b):Jc(this.ka,d,b),c&&Ny(this,a,c),Bd(this.H,!0))};function ky(a,b,c,d,e,f,g){return Oy(a,{},b,c,d,e,f,g)}function Oy(a,b,c,d,e,f,g,h){b.Ja=c||0;b.U=d;b.ya=e;b.type=f||(Ky(a)?uy:Ly);b.Hb=null!=g?g:!(!a.H||4!=a.H.Z.V);b.dc=null!=h?h:!(!a.H||4!=a.H.Z.Jc);b.Kd=!1;return b}function Py(a){return[a.Ja,a.U,a.ya,a.Kd,a.Hb,a.dc,a.Ge,a.dh]}function Qy(a){return{Ja:a[0],U:a[1],ya:a[2],Kd:a[3],Hb:a[4],dc:a[5],Ge:a[6],dh:a[7]}}
@ -768,11 +768,11 @@ function Rz(a){var b;if(b=a.H&&Gb(a.H))b=a.H,b.ea.Yb?b=!0:(b.P(b.toString()+" no
l.save=function(){var a=new Wf(this);a.set(0,Py(this.M));a.set(1,Py(this.da));a.set(2,[this.B,this.ga,this.ic]);a.set(3,this.F);return a.data()};l.restore=function(a){var b=0;void 0!==a[2]&&(this.M=Qy(a[b++]),this.da=Qy(a[b++]),this.B=a[b][0],"string"==typeof this.B&&(this.B=[this.B]),this.ga=a[b][1],this.ic|=a[b][2]);a[3]&&(this.F=a[3]);return!0};l.start=function(a,b){this.K||this.P("running");this.ea.vb=!0;this.hb=a;this.jd=b};
l.stop=function(a,b){if(this.ea.vb){this.ea.vb=!1;this.N=b-this.jd;if(!this.K){b="stopped";if(this.N){a-=this.hb;var c=0<a?Math.round(1E3*this.N/a):0;b+=" (";Ig(this)&&(b+=this.Z+" opcodes, ",this.la-=this.Z,this.Z=0);b+=this.N+" cycles, "+a+" ms, "+c+" hz)"}else t(this,-2147483648)&&(b+=" (use the 't' command to execute blocked faults)");this.P(b)}Oz(this,!0);this.md();Uz(this,this.H.da)}};function Ig(a){return 1<a.C.length||!!a.xa||t(a,16)}
function Lg(a,b,c){var d=a.H;if(0<c&&(a.xa&&!--a.xa||Vz(a,b,1,a.C)))return!0;0<=c&&a.L.length&&(a.Z++,b=xg(d,b),null!=b&&(a.L[b][1]++,Oy(a,a.W[a.oa],A(d),d.Z.U),++a.oa==a.W.length&&(a.oa=0)));return!1}function pd(a,b,c){return Vz(a,b,c||1,a.aa)?(a.Jb(!0),!0):!1}function rd(a,b,c){return Vz(a,b,c||1,a.O)?(a.Jb(!0),!0):!1}function Pc(a,b,c){a.P("break on input from port "+sa(b)+": "+q(c));a.Jb(!0)}function Tc(a,b,c){a.P("break on output to port "+sa(b)+": "+q(c));a.Jb(!0)}
function ly(a){var b,c;a.C=["bp"];if(a.aa)for(b=1;b<a.aa.length;b++)c=a.aa[b],kf(a.H,a.Sb(c),!1,c.type==My);a.aa=["br"];if(a.O)for(b=1;b<a.O.length;b++)c=a.O[b],kf(a.H,a.Sb(c),!0,c.type==My);a.O=["bw"];a.Da=0}
function ly(a){var b,c;a.C=["bp"];if(a.aa)for(b=1;b<a.aa.length;b++)c=a.aa[b],kf(a.H,a.Sb(c),!1,c.type==My);a.aa=["br"];if(a.O)for(b=1;b<a.O.length;b++)c=a.O[b],kf(a.H,a.Sb(c),!0,c.type==My);a.O=["bw"];a.Ea=0}
l.Hd=function(a,b,c){var d=!0;c||Hy(this,a,b,!1,!0);if(a!=this.C){var e=this.Sb(b);if(-1===e)this.P("invalid address: "+Iy(b)),d=!1;else{var f=this.H,g=b.type==My;(g?f.sc:f.aa)[e>>>f.hb].Hd(e&f.Db,a==this.O);g&&rc(f)}}d&&(a.push(b),c?(null!=b.ya&&(b.U=null),b.Kd=!0):(Wz(this,a,a.length-1,"set"),my(this)));return d};
function Hy(a,b,c,d,e){for(var f=!1,g=Xz(a,a.Sb(c)),h=1;h<b.length;h++){var k=b[h];if(-1!==g&&g==Xz(a,a.Sb(k))||-1===g&&c.U==k.U&&c.Ja==k.Ja)if(!d||k.Kd){f=!0;k.Kd||e||Wz(a,b,h,"cleared");b.splice(h,1);b!=a.C&&kf(a.H,g,b==a.O,k.type==My);k.Kd||my(a);break}}return f}function Yz(a,b){for(var c=1;c<b.length;c++)Wz(a,b,c);return b.length-1}function Wz(a,b,c,d){c=b[c];a.P(b[0]+" "+Iy(c)+(d?" "+d:c.$k?' "'+c.$k+'"':""))}
function Uz(a,b){if(void 0!==b)Vz(a,b,1,a.C,!0),a.K=0;else for(b=1;b<a.C.length;b++){var c=a.C[b];if(c.Kd){if(!Hy(a,a.C,c,!0))break;b=0}}}function Xz(a,b){-1!==b&&(a=a.wa&-65536,(b&a)==a&&(b&=1048575));return b}
function Vz(a,b,c,d,e){var f=!1;if(!a.Da++){b=Xz(a,b);t(a,-2147483632)&&204==xg(a.H,b)&&(f=!0);for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.Kd){null!=h.U&&(h.ya=null);for(var k=Xz(a,a.Sb(h)),m=0;m<c;m++)if(b+m==k){var p,f=!0;h.Kd&&(Hy(a,d,h,!0),e=!0);if(p=h.ul){for(var f=!1,v=0;v<p.length;v++)if(!Zz(a,p[v],!0)){if(p[v].indexOf("if")){f=!0;break}for(var u=v+1;u<p.length&&p[u].indexOf("else");u++)v++;if(u==p.length){f=!0;break}}a.H.ea.vb||(f=!0)}if(f){e||Wz(a,d,g,"hit");break}}}}}a.Da--;return f}
function Vz(a,b,c,d,e){var f=!1;if(!a.Ea++){b=Xz(a,b);t(a,-2147483632)&&204==xg(a.H,b)&&(f=!0);for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.Kd){null!=h.U&&(h.ya=null);for(var k=Xz(a,a.Sb(h)),m=0;m<c;m++)if(b+m==k){var p,f=!0;h.Kd&&(Hy(a,d,h,!0),e=!0);if(p=h.ul){for(var f=!1,v=0;v<p.length;v++)if(!Zz(a,p[v],!0)){if(p[v].indexOf("if")){f=!0;break}for(var u=v+1;u<p.length&&p[u].indexOf("else");u++)v++;if(u==p.length){f=!0;break}}a.H.ea.vb||(f=!0)}if(f){e||Wz(a,d,g,"hit");break}}}}}a.Ea--;return f}
function $z(a,b,c,d){for(var e=ky(a,b.Ja,b.U,b.ya,b.type),f=a.Ia(b,1),g=4,h=0,k=!1,m=!1;(102==f||103==f)&&g--;)102==f?k||(b.Hb=!b.Hb,k=!0):m||(b.dc=!b.dc,m=!0),h++,f=a.Ia(b,1);var g=-1,p=aA,k=a.qa[f],m=k[0];m==bA&&(m=a.Ia(b,1),k=cA[m]||qy,f|=m<<8,m=k[0]);if(m==dA){var g=a.Ia(b,1),v;v=null;var u=g>>3&7,E=(3>(g>>6&3)?0:48)+u;(217==f||219==f)&&52<=E&&(E=u<<4|g&7);(u=eA[f])&&(v=u[E]);v&&(p=fA,k=v,m=k[0])}m>=p.length&&(g=a.Ia(b,1),k=gA[m-p.length][g>>3&7],m=k[0]);p=p[m];u=k.length-1;v="";b.Hb&&(m==hA?
p="CWDE":m==iA?p="CDQ":m>=jA&&m<=kA&&(p+="D"));if(164<=f&&167>=f||170<=f&&175>=f)u=0,b.Hb&&"W"==p.slice(-1)&&(p=p.slice(0,-1)+"D");for(var f=-1,E=!0,G=1;G<=u;G++){var I,J;I="";J=k[G];if(void 0!==J){0>f&&(f=J>>lA);m==mA&&(f==nA?v="[%800]":f==oA&&(v="ES:["+(b.dc?"E":"")+"DI]"));var T=J&pA;if(T!=qA)if(T==rA)E=!1;else{var L=J&sA;if(L>=R)if(0>g&&(g=a.Ia(b,1)),L<tA){L=a;I=J;var ua=u;J=b;var ca="",xb=g>>6,za=g&7;if(3>xb){T=!p.indexOf("FI");if(!xb&&(!J.dc&&6==za||J.dc&&5==za))xb=2;else{if(J.dc)if(4!=za)za+=
8;else{var ca=L,cb=xb,Sa=J,rb=ca.Ia(Sa,1),db=rb>>6,sc=rb>>3&7,rb=rb&7,ib="";if(cb||5!=rb)ib=uA[rb+8];4!=sc&&(ib&&(ib+="+"),ib+=uA[sc+8],db&&(ib+="*"+(1<<db)));cb||5!=rb||(ib&&(ib+="+"),ib+=q(Ey(ca,Sa,4)));ca=ib}ca||(ca=uA[za])}1==xb?(L=L.Ia(J,1),ca=L&128?ca+("-"+q(-(L<<24>>24),2)):ca+("+"+q(L,2))):2==xb&&(ca&&(ca+="+"),J.dc?(L=Ey(L,J,4),ca+=q(L)):(L=L.Yc(J,2),ca+=q(L,4)));ca="["+ca+"]";if(1==ua){L="";I&=pA;I==S&&(I=J.Hb?vA:U);switch(I){case wA:L="FAR";break;case V:L="BYTE";break;case U:if(T){L="INT16";
@ -854,23 +854,23 @@ qy,[119,R|S|X,oB|4096]],[[155,R|V|4096,W|V|4096],qy,[98,R|V|X],[96,R|V|X],[95,R|
CPL0_SS:4,CPL1_SP:6,CPL1_SS:8,CPL2_SP:10,CPL2_SS:12,TASK_IP:14,TASK_PS:16,TASK_AX:18,TASK_CX:20,TASK_DX:22,TASK_BX:24,TASK_SP:26,TASK_BP:28,TASK_SI:30,TASK_DI:32,TASK_ES:34,TASK_CS:36,TASK_SS:38,TASK_DS:40,TASK_LDT:42},Ay={PREV_TSS:0,CPL0_ESP:4,CPL0_SS:8,CPL1_ESP:12,CPL1_SS:16,CPL2_ESP:20,CPL2_SS:24,TASK_CR3:28,TASK_EIP:32,TASK_PS:36,TASK_EAX:40,TASK_ECX:44,TASK_EDX:48,TASK_EBX:52,TASK_ESP:56,TASK_EBP:60,TASK_ESI:64,TASK_EDI:68,TASK_ES:72,TASK_CS:76,TASK_SS:80,TASK_DS:84,TASK_FS:88,TASK_GS:92,TASK_LDT:96,
TASK_IOPM:100};$a(function(){for(var a=zb(document,"pcx86","debugger"),b=0;b<a.length;b++){var c=a[b],d=vb(c),d=new jy(d);yb(d,c)}});
function EB(a,b,c){mb.call(this,"Computer",a,67108864);this.ea.Yb=!1;FB(this,b);this.N=yd(this,"autoPower",a);this.B=0;this.aa=a.busWidth||a.buswidth;this.A=GB;this.L=null;this.I=this.Z=!1;this.da=yd(this,"url")||"";this.ha=(Math.random()+.1).toString(36).substr(2,12);this.C=HB(this);if(this.H=ub("CPU",this.id)){this.ba=ub("Debugger",this.id);this.G=[];for(b=null;b=Wb(this,"Video",b);)this.G.push(b);this.ka=new lc({id:this.ye+".bus",busWidth:this.aa},this.H,this.ba);var d,e=sb(this.id);if((this.D=
ub("Panel",this.id))&&this.D.Je)for(b=0;b<e.length;b++)d=e[b],d.Ea=this.D.Ea,d.P=this.D.P,d.Je=this.D.Je;this.P("PCx86 v1.35.1\nCopyright \u00a9 2012-2017 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.uc&&d.uc(this,this.ka,this.H,this.ba);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.K=d:this.A=parseInt(d,10));var f;if(a=yd(this,"state")||(f=!0,a.state))b=this.W=a,f||(this.I=!0,this.A=GB),this.A&&(this.M=new Wf(this,
"1.35.1"),this.M.load()?b=null:delete this.M);!b&&this.A&&(b=IB(this))&&(this.I=!0);if(b){var g=this;Ka(b,null,!0,function(a,b,c){c?(g.K=null,g.I=!1,g.Ea("Unable to load machine state from server (error "+c+(b?": "+Ba(b):"")+")")):(g.L=b,g.Z=!0);Ib(g)})}else Ib(this);this.na.power||(this.N=!0);!c&&this.N&&JB(this,this.Mf)}else gb("Unable to find CPU component")}ba(EB,mb);
ub("Panel",this.id))&&this.D.Je)for(b=0;b<e.length;b++)d=e[b],d.Da=this.D.Da,d.P=this.D.P,d.Je=this.D.Je;this.P("PCx86 v1.35.1\nCopyright \u00a9 2012-2017 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.uc&&d.uc(this,this.ka,this.H,this.ba);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.K=d:this.A=parseInt(d,10));var f;if(a=yd(this,"state")||(f=!0,a.state))b=this.W=a,f||(this.I=!0,this.A=GB),this.A&&(this.M=new Wf(this,
"1.35.1"),this.M.load()?b=null:delete this.M);!b&&this.A&&(b=IB(this))&&(this.I=!0);if(b){var g=this;Ka(b,null,!0,function(a,b,c){c?(g.K=null,g.I=!1,g.Da("Unable to load machine state from server (error "+c+(b?": "+Ba(b):"")+")")):(g.L=b,g.Z=!0);Ib(g)})}else Ib(this);this.na.power||(this.N=!0);!c&&this.N&&JB(this,this.Mf)}else gb("Unable to find CPU component")}ba(EB,mb);
function FB(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){gb(d.message+" ("+c+")")}}a.J=b}function yd(a,b,c){var d=b.toLowerCase(),d=Ua(b)||Ua(d);void 0===d&&a.J&&(d=a.J[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}function JB(a,b,c){for(var d=sb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Gb(f)){Gb(f,function(){JB(a,b,c)});return}}b.call(a,c)}
function KB(a,b){var c=new Wf(a,"1.35.1",LB);if(c.load()&&MB(c)){var d=c.get(NB),e=b?b.get(NB):"unknown";d!=e&&(a.Ea("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}l=EB.prototype;
function KB(a,b){var c=new Wf(a,"1.35.1",LB);if(c.load()&&MB(c)){var d=c.get(NB),e=b?b.get(NB):"unknown";d!=e&&(a.Da("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}l=EB.prototype;
l.Mf=function(a){void 0===a&&(a=this.A||(this.L?OB:GB));if(!this.B){this.B++;var b=!1,c=!1;this.Y=!1;var d=this.M||new Wf(this,"1.35.1");if(a==PB)b=!0;else if(a>GB){if(d.load(this.L)){this.F=new Wf(this,"1.35.1",QB);this.F.load()&&(RB(this,d),a=SB,TB(this.F));this.F.set(NB,Ea());UB(this.F);var e=this.A&&!this.I;if(a==OB||qb("Click OK to restore the previous PCx86 machine state, or CANCEL to reset the machine.")){if(c=MB(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=
g?(this.Ea("Error: "+g),"unable to verify user"==g&&(Ra(VB,""),this.C=null)):this.P(f+": "+g),TB(d),d.load()?(c=MB(d),e=!0):c=!1))}e&&KB(this,c?d:null)}else a==SB&&d.clear()}else KB(this);delete this.L;delete this.M}e=sb(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.H&&(c=WB(this,g,d,b,c));b=[d,a,c];a!=PB?JB(this,this.oj,b):this.oj(b)}};
function WB(a,b,c,d,e){if(!b.ea.Yb){b.ea.Yb=!0;if(b.Xb){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.Xb(f,d)&&f&&(gb("Unable to restore state for "+b.type),a.W&&!a.Z?(c.clear(),a.A=GB,window&&window.location.reload()):a.Y=!0,b.Xb(null),e=!1)}if(!d&&b.zj)for(a=b.zj.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
g?(this.Da("Error: "+g),"unable to verify user"==g&&(Ra(VB,""),this.C=null)):this.P(f+": "+g),TB(d),d.load()?(c=MB(d),e=!0):c=!1))}e&&KB(this,c?d:null)}else a==SB&&d.clear()}else KB(this);delete this.L;delete this.M}e=sb(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.H&&(c=WB(this,g,d,b,c));b=[d,a,c];a!=PB?JB(this,this.oj,b):this.oj(b)}};
function WB(a,b,c,d,e){if(!b.ea.Yb){b.ea.Yb=!0;if(b.Xb){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.Xb(f,d)&&f&&(b.Da("Unable to restore hardware state"),a.W&&!a.Z?(c.clear(),a.A=GB,window&&window.location.reload()):a.Y=!0,b.Xb(null),e=!1)}if(!d&&b.zj)for(a=b.zj.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
l.oj=function(a){var b=a[0],c=0>a[1];a=a[2];this.ga=!0;this.ea.Yb=!0;var d=this.na.power;d&&(d.textContent="Shutdown");this.H&&(WB(this,this.H,b,c,a),this.H.mf());this.Y&&(RB(this,b),b.clear());!c&&this.F&&(this.F.clear(),delete this.F);this.B=0};
function RB(a,b){if(qb("There may be a problem with your PCx86 machine.\n\nTo help us diagnose it, click OK to send this PCx86 machine state to http://www.pcjs.org.")){var c=a.C||"";b=b.toString();var d={app:"PCx86",ver:"1.35.1"};d.url=a.da;d.user=c;d.type="bug";d.data=b;Ka("http://www.pcjs.org/api/v1/report",d,!0)}}
function lB(a,b,c){var d,e="none";if(a.B)return null;a.B--;var f=new Wf(a,"1.35.1"),g=new Wf(a,"1.35.1",LB),h=Ea();g.set(NB,h);f.set(NB,h);f.set(XB,"1.35.1");f.set(YB,window?window.location.href:null);f.set(ZB,Ma());a.H&&a.H.Wb&&(c&&a.H.Jb(),d=a.H.Wb(b,c),"object"===typeof d&&f.set(a.H.id,d),c&&(a.H.ea.Yb=!1,!1===d&&(e=null)));for(var h=sb(a.id),k=0;k<h.length;k++){var m=h[k];m.ea.Yb&&(m.Wb&&(d=m.Wb(b,c),"object"===typeof d&&f.set(m.id,d)),c&&(m.ea.Yb=!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.C&&$B(a,
a.C,f.toString()),UB(g)&&UB(f)||(e=null,d=h=!0)):a.A&&(d=!0,h=a.A==aC),d&&f.clear(h)):e=f.toString());c&&(a.ea.Yb=!1,b=a.na.power)&&(b.textContent="Power");a.B=0;return e}l.reset=function(){this.ka&&this.ka.reset&&(Lb(this,"Resetting "+this.ka.type),this.ka.reset());for(var a=sb(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ka&&c.reset&&(Lb(this,"Resetting "+c.type),c.reset())}};
l.start=function(a,b){for(var c=sb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};l.stop=function(a,b){for(var c=sb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
l.Cb=function(a,b,c){var d=this;switch(b){case "power":return this.na[b]=c,c.onclick=function(){d.B||(d.ea.Yb?lB(d,!1,!0):JB(d,d.Mf))},!0;case "reset":return this.na[b]=c,c.onclick=function(){if(d.ea.Yb&&!d.B)if(d.A&&!d.K){var a=qb("Click OK to save changes to this PCx86 machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");lB(d,a,!0);!a&&d.W?window&&window.location.reload():(a||(d.O=!0),d.Mf(GB),d.O=!1)}else d.reset(),d.H&&d.H.mf()},!0;case "save":if(wa(La(),"pcjs.org"))c.parentNode.removeChild(c);
else return this.na[b]=c,c.onclick=function(){var a=HB(d,!0);if(a){var b=!!(d.A&&!d.K||d.W),c=lB(d,b);b?$B(d,a,c):d.Ea("Resume disabled, machine state not saved")}},!0}return!1};
function HB(a,b){var c=a.C;c||((c=Pa(VB),void 0!==c)?!c&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c=b)&&((c=mC(a,c))||a.Ea("The user ID is invalid.")):b&&a.Ea("Browser local storage is not available"));return c}
else return this.na[b]=c,c.onclick=function(){var a=HB(d,!0);if(a){var b=!!(d.A&&!d.K||d.W),c=lB(d,b);b?$B(d,a,c):d.Da("Resume disabled, machine state not saved")}},!0}return!1};
function HB(a,b){var c=a.C;c||((c=Pa(VB),void 0!==c)?!c&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c=b)&&((c=mC(a,c))||a.Da("The user ID is invalid.")):b&&a.Da("Browser local storage is not available"));return c}
function mC(a,b){a.C=null;b=Ka(La()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(Ra(VB,b.data),a.C=b.data)}catch(d){gb(d.message+" ("+c+")")}return a.C}function IB(a){var b=null;a.C&&(b=La()+"/api/v1/user?req=load&user="+a.C+"&state="+nC(a,"1.35.1"));return b}
function $B(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=nC(a,"1.35.1");d.data=c;b=Ka(La()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.Ea("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.Ea(c),Ra(VB,""),a.C=null)}}
function $B(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=nC(a,"1.35.1");d.data=c;b=Ka(La()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.Da("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.Da(c),Ra(VB,""),a.C=null)}}
function Wb(a,b,c){a=sb(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}l.md=function(a){if(this.G.length){var b=0,c=0;!a&&window&&(b=window.scrollX,c=window.scrollY);var d=this.G[0];d.D&&d.D.focus();!a&&window&&window.scrollTo(b,c)}};
function Md(a,b){a.H&&(a=a.H,a.vj&&(b||!a.ea.vb||a.ea.mj)&&(Hg(a,"EAX",a.D),Hg(a,"EBX",a.G),Hg(a,"ECX",a.I),Hg(a,"EDX",a.L),Hg(a,"ESP",z(a)),Hg(a,"EBP",a.M),Hg(a,"ESI",a.K),Hg(a,"EDI",a.J),Hg(a,"CS",a.Z.U),Hg(a,"DS",a.Ca.U),Hg(a,"SS",a.Y.U),Hg(a,"ES",a.oa.U),Hg(a,"EIP",A(a)),b=qe(a),Hg(a,"PS",b),Hg(a,"V",b&2048),Hg(a,"D",b&1024),Hg(a,"I",b&512),Hg(a,"T",b&256),Hg(a,"S",b&128),Hg(a,"Z",b&64),Hg(a,"A",b&16),Hg(a,"P",b&4),Hg(a,"C",b&1),80386==a.ca&&(Hg(a,"FS",a.Ga.U),Hg(a,"GS",a.Ha.U),Hg(a,"CR0",a.qa),
Hg(a,"CR2",a.Dd),Hg(a,"CR3",a.Wc))),b=a.na.speed)&&(b.textContent=a.ea.vb&&a.T.Xd?a.T.Xd.toFixed(2)+"Mhz":"Stopped")}