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")}

View file

@ -71,8 +71,8 @@ function db(a,b){b=eb(b.parentNode,"pcx86-control");for(var c=0;c<b.length;c++)f
function eb(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 fb(a){for(var b=!0,c=gb[a];c&&c.length;){var d=c.splice(0,1)[0],e=d[0],f=null;0<=hb.indexOf(e)&&(f=function(){return function(){fb(a)}}());var g=ib[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=ab(d[1],a);if(h)if(g=jb[e])b=g(h,d[2],d[3]);else{var l=h.exports;if(l&&(g=l[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){r("Script error: "+e+(g?" failed":" unrecognized"));break}}c&&!c.length&&delete gb[a];return b}k=t.prototype;
k.toString=function(){return this.name?this.name:this.id||this.type};
k.wb=function(a,b,c){switch(b){case "clear":return this.ia[b]||(this.ia[b]=c,c.onclick=function(a){return function(){a.ia.print&&(a.ia.print.value="")}}(this)),!0;case "print":return this.ia[b]||(this.Df=this.ia[b]=c,c.value="",this.Zb=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.xa=function(a){this.Zb(a,this.Ud)}),!0;default:return!1}};k.log=function(){};k.Zb=function(){};
k.status=function(a){this.Zb(this.Ud+": "+a)};k.xa=function(a,b,c){if(!b){var d=ab("Computer",this.id);if(d&&d.ca.sh){console.log("ignoring notice during unload: "+a);return}}c=c||this.type;b||r((c?c+": ":"")+a)};function kb(a,b){a.ca.error=!0;a.xa(b)}function lb(a,b){b&&(a.ca.ready?b():a.Gf=b);return a.ca.ready}function mb(a,b){a.ca.error||(a.ca.ready=!1!==b,a.ca.ready&&(b=a.Gf,a.Gf=null,b&&b()))}
k.wb=function(a,b,c){switch(b){case "clear":return this.ia[b]||(this.ia[b]=c,c.onclick=function(a){return function(){a.ia.print&&(a.ia.print.value="")}}(this)),!0;case "print":return this.ia[b]||(this.Df=this.ia[b]=c,c.value="",this.Zb=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.wa=function(a){this.Zb(a,this.Ud)}),!0;default:return!1}};k.log=function(){};k.Zb=function(){};
k.status=function(a){this.Zb(this.Ud+": "+a)};k.wa=function(a,b,c){if(!b){var d=ab("Computer",this.id);if(d&&d.ca.sh){console.log("ignoring notice during unload: "+a);return}}c=c||this.type;b||r((c?c+": ":"")+a)};function kb(a,b){a.ca.error=!0;a.wa(b)}function lb(a,b){b&&(a.ca.ready?b():a.Gf=b);return a.ca.ready}function mb(a,b){a.ca.error||(a.ca.ready=!1!==b,a.ca.ready&&(b=a.Gf,a.Gf=null,b&&b()))}
function nb(a,b){if(a.ca.mg)return a.ca.xf=!1,a.ca.mg=!1;if(a.ca.error)return a.Zb(a.toString()+" error"),!1;a.ca.xf=b;return a.ca.xf}k.Ob=function(){return this.ca.Pb=!0};k.Nb=function(a,b){b&&(this.ca.Pb=!1);return!0};window&&(window.PCjs||(window.PCjs={}),window.PCjs.Machines||(window.PCjs.Machines={}),window.PCjs.Components||(window.PCjs.Components=[]),window.PCjs.Commands||(window.PCjs.Commands={}));
var Wa=window?window.PCjs.Machines:{},Ua=window?window.PCjs.Components:[],gb=window?window.PCjs.Commands:{},hb=["hold","sleep","wait"],ib={alert:function(a){r(a);return!0},sleep:function(a,b){setTimeout(a,+b);return!1}},jb={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}};
Array.prototype.indexOf||(Array.prototype.indexOf=function(a,b){b=b||0;for(var c=this.length;b<c;b++)if(this[b]===a)return b;return-1});Array.isArray||(Array.isArray=function(a){return"[object Array]"===Object.prototype.toString.call(a)});
@ -83,7 +83,7 @@ Wi:25,Ti:20,Vi:28,sj:13,uj:21,rj:16,tj:24,Yi:13,$i:21,Xi:16,Zi:24,We:2,Ve:7,Vg:5
rb.prototype.toString=function(){this.B||(this.B="#"+oa(this.A[0],2)+oa(this.A[1],2)+oa(this.A[2],2));return this.B};function sb(a,b,c,d){this.x=a;this.y=b;this.wc=c;this.A=d}sb.prototype.contains=function(a,b){return a>=this.x&&a<this.x+this.wc&&b>=this.y&&b<this.y+this.A};function tb(a,b,c,d){void 0===d&&(d=b>=c>>2);d?(b=new sb(a.x,a.y,a.wc,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new sb(a.x,a.y,a.wc*b/c|0,a.A),a.x+=b.wc,a.wc-=b.wc);return b}
function ub(a){t.call(this,"Panel",a);this.F=this.G=this.K=-1}ba(ub,t);k=ub.prototype;k.wb=function(a,b,c,d){return this.oa&&this.oa.wb(a,b,c,d)||this.U&&this.U.wb(a,b,c,d)||this.B&&this.B.wb(a,b,c,d)?!0:t.prototype.wb.call(this,a,b,c,d)};k.ic=function(a,b,c,d){this.oa=a;this.ma=b;this.U=c;this.Ea=d;this.B=vb(a,"Keyboard")};k.Ob=function(a,b){b||wb();return!0};k.Nb=function(){return!0};k.ie=function(a,b){a.button||(this.K=b?0:-1,xb(this,a,b))};k.sg=function(a){xb(this,a)};
function xb(a,b,c){var d=yb/null.offsetWidth,e=Ab/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.K||(a.K=Math.abs(a.F-d)>Math.abs(a.G-b)?1:2),1==a.K?b=a.G:2==a.K&&(d=a.F));a.F=d;a.G=b;if(0<=d&&d<yb&&0<=b&&b<Ab){a:{c=d;if(c<Bb&&a.A&&a.A.be)for(f=0;f<a.A.be.length;f++)if(e=a.A.be[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.A.Ee[f],g=ya(Cb.Fj,a.A.gg[d.Bk]),f=g*a.ma.A,d=(g+d.dd)*a.ma.A-1;0<b&&(f+=e.wc*(b-1)*a.ba);f+=c*a.ba;f|=0;f>d&&(f=d);c=
f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ea)){b=c;if(a.context&&a.M&&a.O){e=Db-Eb;f=a.M.width;a.O.fillStyle=Fb;a.O.fillRect(0,e,f,Eb);Gb(a,e+Hb,a.M,a.O);a.V=a.ga.width/24|0;if(null==b)Ib(a,"Mouse over memory to dump");else for(Ib(a,oa(b,8,!0),null,0,1),d=1;16>=d;d++){for(var g="",h=1;8>=h;h++){var l;l=a.ma;var m=b++;l=l.X[(m&l.D)>>>l.B].Ad(m&l.C,m);Ib(a,oa(l,2),null,1);g+=32<=l&&128>l?String.fromCharCode(l):"."}Ib(a,g,null,0,1)}a.context.drawImage(a.M,0,e,f,Eb,a.Ca,a.Ha,a.ta,a.wa)}a.ea=c}}}
f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ea)){b=c;if(a.context&&a.M&&a.O){e=Db-Eb;f=a.M.width;a.O.fillStyle=Fb;a.O.fillRect(0,e,f,Eb);Gb(a,e+Hb,a.M,a.O);a.V=a.ga.width/24|0;if(null==b)Ib(a,"Mouse over memory to dump");else for(Ib(a,oa(b,8,!0),null,0,1),d=1;16>=d;d++){for(var g="",h=1;8>=h;h++){var l;l=a.ma;var m=b++;l=l.X[(m&l.D)>>>l.B].Ad(m&l.C,m);Ib(a,oa(l,2),null,1);g+=32<=l&&128>l?String.fromCharCode(l):"."}Ib(a,g,null,0,1)}a.context.drawImage(a.M,0,e,f,Eb,a.Ca,a.Ha,a.ta,a.xa)}a.ea=c}}}
function Jb(a,b,c,d){a.A.Ee[a.A.di++]={Bk:b,dd:c,type:d};return xa(Cb,b,c,0,d)}function Gb(a,b,c,d){var e,f=null.style.color,g=a.qa=10;a.C=g;a.H=b;a.I=a.Z=Hb;e||(e=a.X||a.Z+"px "+Lb);a.L=a.X=e;c&&(a.ga=c);d&&(a.D=d,a.ja=f||"white")}function Ib(a,b,c,d,e){a.D.font=a.L;a.D.fillStyle=a.ja;a.D.fillText(b,a.C,a.H);a.C+=a.V;null!=c&&(16!=a.Ba?b=c.toString():(b=8>a.pa?"0x":"",b+=oa(c,a.pa)),a.D.fillText(b,a.C,a.H),a.C+=a.V);d&&(a.C+=a.V*d);e&&(a.C=a.qa,a.H+=(a.I+2)*(e||1))}
function wb(){for(var a=!1,b=eb(document,"pcx86","panel"),c=0;c<b.length;c++){var d=b[c],e=bb(d),f=Za(e.id);f||(a=!0,f=new ub(e));db(f,d);a&&mb(f)}}var yb=1280,Ab=720,Hb=18,Lb="Monaco, Lucida Console, Courier New",Bb=3*yb>>2,Mb=Ab,Db=Ab,Fb="black",Eb=Ab>>1;Ma(wb);
function Nb(a,b,c){t.call(this,"Bus",a);this.U=b;this.Ea=c;this.F=a.busWidth||20;this.K=Math.pow(2,this.F);this.W=this.D=this.K-1|0;this.B=32==this.F||20>=this.F?12:24>=this.F?14:15;this.A=1<<this.B;this.V=this.A>>2;this.C=this.A-1;this.H=this.K/this.A|0;this.L=this.H-1;this.I=[];this.J=[];this.M=[];this.O=[];a=new u;Ob(a,this.Ea);this.X=Array(this.H);for(b=0;b<this.H;b++)this.X[b]=a;a=this.U;b=this.X;c=this.B;a.Nc=a.X=b;a.yb=c;a.xh=1<<a.yb;a.xb=a.xh-1;a.mf=b.length;a.ye=a.mf-1;a=this.U;a.ze=a.Ic=
@ -146,7 +146,7 @@ e>>2;b.B=g;b.D=h>>2;ob&&dc&&c.T&&!c.controller&&!c.fe&&!c.ge?(b.Fa=c.Fa,b.rd=c.r
function pe(a,b){var c;switch(b){case 0:c=a.F;break;case 1:c=a.H;break;case 2:c=a.K;break;case 3:c=a.G;break;case 4:c=C(a);break;case 5:c=a.L;break;case 6:c=a.J;break;case 7:c=a.I}return c}function qe(a,b,c){switch(b){case 0:a.F=c;break;case 1:a.H=c;break;case 2:a.K=c;break;case 3:a.G=c;break;case 4:A(a,c);break;case 5:a.L=c;break;case 6:a.J=c;break;case 7:a.I=c}}
function le(a){a.F=0;a.G=0;a.H=0;a.K=0;a.jc=0;a.L=0;a.J=0;a.I=0;a.dc=!1;a.Aa=a.Va=0;a.Pl=[0,0];a.Tl=[0,0];a.ta=0;a.ri=0;a.Z=0;a.pa=65520;a.Tb=0;a.Pc=1023;a.O=a.Wb=0;a.Zd=a.Ce=a.Yd=a.$d=0;a.xc=-1;a.Tc=a.yc=-1;a.bd=a.na=-1;a.ga=new gd(a,od,"CS");a.Ca=new gd(a,zd,"DS");a.ua=new gd(a,zd,"ES");a.W=new gd(a,kd,"SS");A(a,0);rd(a,0);if(80386<=a.aa){switch(a.pd){case 80562:case 80563:a.K=771;break;case 80578:a.K=772;break;case 80594:a.K=773;break;case 80595:case 80596:a.K=776}a.pa=16;a.zi=0;a.Xd=0;a.nd=0;
a.Bb=[0,0,0,0,null,null,0,0];a.sf=[null,null,null,null,null,null,0,0];a.qb=new gd(a,zd,"FS");a.rb=new gd(a,zd,"GS");oe(a)}a.fg=new gd(a,0,"NULL");a.Ba=a.Ca;a.Db=a.W;a.M=a.ba=0;a.C=a.D=-1;a.Xa=a.fg;a.Ka=0;if(80286>a.aa)Cd(a,0,65535);else{a.Kb=0;a.Oc=65535;a.kc=new gd(a,5,"LDT",!0);a.la=new gd(a,md,"TSS",!0);a.bb=new gd(a,jd,"VER",!0);Cd(a,65520,61440);var b,c=E(a);b=a.ga;var d=-65536;80386>b.B.aa&&(d&=16777215);b=b.va=d;a.ea=b+c|0;a.dg=(b>>>0)+(a.ga.Ta>>>0)+1}Bd(a,0);td(a)}
function re(a){2==a.Jc?(a.xi=a.fa,a.Vb=se,a.cc=te,a.Rc=ue,2==a.S?(a.ja=ve,a.wa=we,a.$a=xe):(a.ja=ye,a.wa=ze,a.$a=Ae)):(a.xi=a.da,a.Vb=Be,a.cc=Ce,a.Rc=De,2==a.S?(a.ja=Ee,a.wa=Fe,a.$a=Ge):(a.ja=He,a.wa=Ie,a.$a=Je))}function ud(a,b){a.S!=b&&(a.ba|=1024,a.S=b,a.N=2==b?65535:-1,Ke(a))}function Ke(a){2==a.S?(a.sb=32768,a.ib=a.fa,a.nb=a.Wa,2==a.Jc?(a.ja=ve,a.wa=we,a.$a=xe):(a.ja=Ee,a.wa=Fe,a.$a=Ge)):(a.sb=-2147483648,a.ib=a.da,a.nb=a.Pa,2==a.Jc?(a.ja=ye,a.wa=ze,a.$a=Ae):(a.ja=He,a.wa=Ie,a.$a=Je))}
function re(a){2==a.Jc?(a.xi=a.fa,a.Vb=se,a.cc=te,a.Rc=ue,2==a.S?(a.ja=ve,a.xa=we,a.$a=xe):(a.ja=ye,a.xa=ze,a.$a=Ae)):(a.xi=a.da,a.Vb=Be,a.cc=Ce,a.Rc=De,2==a.S?(a.ja=Ee,a.xa=Fe,a.$a=Ge):(a.ja=He,a.xa=Ie,a.$a=Je))}function ud(a,b){a.S!=b&&(a.ba|=1024,a.S=b,a.N=2==b?65535:-1,Ke(a))}function Ke(a){2==a.S?(a.sb=32768,a.ib=a.fa,a.nb=a.Wa,2==a.Jc?(a.ja=ve,a.xa=we,a.$a=xe):(a.ja=Ee,a.xa=Fe,a.$a=Ge)):(a.sb=-2147483648,a.ib=a.da,a.nb=a.Pa,2==a.Jc?(a.ja=ye,a.xa=ze,a.$a=Ae):(a.ja=He,a.xa=Ie,a.$a=Je))}
function Le(a){a.Jc=a.ga.Jc;a.ra=a.ga.ra;re(a);a.S=a.ga.S;a.N=a.ga.N;Ke(a);a.ba&=-3073}k.ti=function(){var a=this.F+this.G+this.H+this.K+C(this)+this.L+this.J+this.I|0;return a=a+E(this)+this.ga.ha+this.Ca.ha+this.W.ha+this.ua.ha+Ad(this)|0};function Me(a,b,c){void 0===a.pf[b]&&(a.pf[b]=[]);a.pf[b].push(c)}function Ne(a,b){var c=a.ci[b];null!=c&&(c(--a.cg),delete a.ci[b])}
function Oe(a,b){for(var c=a.Bb[7],d=c>>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.Bb[e],g=g&~(d>>2&3);if(b){var g=a.X[g>>>a.yb],h=a;f?g.ge++||(h&&(g.F=h),Dc(g,Ec,!1)):g.fe++||(h&&(g.F=h),Cc(g,Ec,!1))}else g=a.X[g>>>a.yb],f?--g.ge||(f=g,f.nc=f.H?f.uh:f.hf,f.kf=f.H?f.vh:f.wh,f.jf=f.H?f.th:f.U):--g.fe||(f=g,f.mc=f.Ad,f.bf=f.cf,f.Nd=f.nh)}c>>=2;d>>=4}}
function Fc(a,b,c,d){if(!(a.M&8192)&&a.Bb[7]&255){c--;var e=a.Bb[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.Bb[g]&&b<=a.Bb[g]+h){a.Bb[6]|=1<<g;a.Ka|=2;break}}e>>=2;f>>=4}}}function td(a,b,c){void 0===b&&(b=!!(a.pa&1));void 0===c&&(c=!!(a.O&131072));a.ni=b&&!c?Pe:Id;hd(a.ga,!1,b,c);hd(a.Ca,!1,b,c);hd(a.W,!1,b,c);hd(a.ua,!1,b,c);80386<=a.aa&&(hd(a.qb,!1,b,c),hd(a.rb,!1,b,c));Le(a)}
@ -228,7 +228,7 @@ function ci(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;H(this,a,-2147483648,d&1)
function zi(a,b){this.Tc=this.ga.ha;this.yc=this.W.ha;this.na=this.ya;var c=E(this),d=this.S;null!=Cd(this,a,b,!0)&&(wd(this,this.Tc,d,2),wd(this,c,d,d));this.Tc=this.yc=this.na=-1}function Ai(a,b,c){this.A-=this.B.bj+(c||0);c=Ad(this);var d=this.ga.ha,e=E(this);a=this.ga.Ai(a);-1!==a&&(D(this,c),D(this,d),D(this,e),null!=b&&D(this,b),this.xc=-1,Te(this,a))}
function Bi(a){this.yc=this.W.ha;this.na=this.ya;var b=x(this),c=x(this);a&&A(this,C(this)+a);Cd(this,b,c,!1)&&(a&&A(this,C(this)+a),Ci.call(this,this.Ca),Ci.call(this,this.ua),80386<=this.aa&&(Ci.call(this,this.qb),Ci.call(this,this.rb)));2==a&&this.cg&&Ne(this,this.ea);this.yc=this.na=-1}function Di(){8086==this.aa?(this.xc=-1,Ai.call(this,0,null,2)):v.call(this,0,null,2)}function yf(a,b){this.xc=a;void 0===b&&(b=11);Ai.call(this,a,null,b)}
function v(a,b,c,d){var e=!1;this.ca.complete?80186<=this.aa&&(e=!0,0>this.xc?(-1!=this.Tc&&(this.Tc!==this.ga.ha&&(this.ga.ob=this.Tc&3,Se(this,this.Tc)),this.Tc=-1),this.bd!==this.ea&&Te(this,this.bd),-1!=this.yc&&(this.yc!==this.W.ha&&rd(this,this.yc),this.yc=-1),-1!==this.na&&(this.na!==this.ya&&A(this,this.jc&~this.W.ra|this.na-this.W.va),this.na=-1)):8!=this.xc?(b=0,a=8):(b=0,a=-1,le(this),e=d=!1)):Te(this,this.bd);var f=a,g=b,h=pf(this,this.ea);204!=h||this.Pc||(d=!1);this.O&131072&&(6==f&&
99==h||13==f&&205==h)&&(d=!1);983040<=this.ea&&1048575>=this.ea&&(d=!1);if(d){var l=this.ca.Ib,f="Fault "+oa(f,2,!0)+(null!=g?" ("+oa(g,4,!0)+")":"")+" on opcode "+oa(h,2,!0);d&&l&&(f+=" (blocked)");this.xa(f);Qc(this)}if(d&&e)throw-1;if(e)throw this.xc=a,Ai.call(this,a,b,c),this.bd=this.ea,this.M=1==a?this.M|8192:this.M|4096,a;}function ne(a,b,c){this.Xd=a;a=0;b&&(a|=1);c&&(a|=2);3==this.Ga&&(a|=4);v.call(this,14,a)}
99==h||13==f&&205==h)&&(d=!1);983040<=this.ea&&1048575>=this.ea&&(d=!1);if(d){var l=this.ca.Ib,f="Fault "+oa(f,2,!0)+(null!=g?" ("+oa(g,4,!0)+")":"")+" on opcode "+oa(h,2,!0);d&&l&&(f+=" (blocked)");this.wa(f);Qc(this)}if(d&&e)throw-1;if(e)throw this.xc=a,Ai.call(this,a,b,c),this.bd=this.ea,this.M=1==a?this.M|8192:this.M|4096,a;}function ne(a,b,c){this.Xd=a;a=0;b&&(a|=1);c&&(a|=2);3==this.Ga&&(a|=4);v.call(this,14,a)}
function Ci(a){var b=a.jb&7680;a.ha&65528&&(6144==b||7168==b||7168>b&&a.hc<this.Ga&&a.hc<(a.ha&3))&&a.load(0)}
function se(a){var b,c;switch((this.Z=this.ka())&199){case 0:c=I(this,this.G+this.J);this.A-=this.B.Ac;break;case 1:c=I(this,this.G+this.I);this.A-=this.B.Bc;break;case 2:c=J(this,this.L+this.J);this.A-=this.B.Bc;break;case 3:c=J(this,this.L+this.I);this.A-=this.B.Ac;break;case 4:c=I(this,this.J);this.A-=this.B.ec;break;case 5:c=I(this,this.I);this.A-=this.B.ec;break;case 6:c=I(this,O(this));this.A-=this.B.Yc;break;case 7:c=I(this,this.G);this.A-=this.B.ec;break;case 64:c=I(this,this.G+this.J+this.P());
this.A-=this.B.Fb;break;case 65:c=I(this,this.G+this.I+this.P());this.A-=this.B.Gb;break;case 66:c=J(this,this.L+this.J+this.P());this.A-=this.B.Gb;break;case 67:c=J(this,this.L+this.I+this.P());this.A-=this.B.Fb;break;case 68:c=I(this,this.J+this.P());this.A-=this.B.Na;break;case 69:c=I(this,this.I+this.P());this.A-=this.B.Na;break;case 70:c=J(this,this.L+this.P());this.A-=this.B.Na;break;case 71:c=I(this,this.G+this.P());this.A-=this.B.Na;break;case 128:c=I(this,this.G+this.J+O(this));this.A-=this.B.Fb;
@ -317,7 +317,7 @@ this.C;break;case 131:c=M(this,this.G+O(this));this.D=this.C;break;case 132:c=M(
3&7].call(this,c,b.call(this));switch(d){case 192:this.F=a;break;case 193:this.H=a;break;case 194:this.K=a;break;case 195:this.G=a;break;case 196:A(this,a);break;case 197:this.L=a;break;case 198:this.J=a;break;case 199:this.I=a;break;default:uf(this,a)}}
function Ei(a){var b=this.ka(),c=b>>6,d,e;switch(b>>3&7){case 0:d=this.F;break;case 1:d=this.H;break;case 2:d=this.K;break;case 3:d=this.G;break;case 4:d=0;break;case 5:d=this.L;break;case 6:d=this.J;break;case 7:d=this.I}switch(b&7){case 0:e=this.F;break;case 1:e=this.H;break;case 2:e=this.K;break;case 3:e=this.G;break;case 4:e=C(this);this.Ba=this.Db;break;case 5:a?(e=this.L,this.Ba=this.Db):e=O(this);break;case 6:e=this.J;break;case 7:e=this.I}return(d<<c)+e|0}
function ae(){this.ld[this.ka()].call(this)}function de(){D(this,C(this)&this.N);this.A-=this.B.qc}function Kd(){this.na=this.ya;var a=C(this)&this.N;D(this,this.F&this.N);D(this,this.H&this.N);D(this,this.K&this.N);D(this,this.G&this.N);D(this,a);D(this,this.L&this.N);D(this,this.J&this.N);D(this,this.I&this.N);this.A-=this.B.xj;this.na=-1}
function Ld(){this.na=this.ya;this.I=this.I&~this.N|x(this);this.J=this.J&~this.N|x(this);this.L=this.L&~this.N|x(this);A(this,C(this)+this.S);this.G=this.G&~this.N|x(this);this.K=this.K&~this.N|x(this);this.H=this.H&~this.N|x(this);this.F=this.F&~this.N|x(this);this.A-=this.B.vj;this.na=-1}function Md(){this.ja.call(this,Rg)}function ee(){!(this.pa&1)||this.O&131072?v.call(this,6):this.wa.call(this,Qg)}function fe(){this.M|=20;this.Ba=this.Db=this.qb;this.A-=this.B.Gc}
function Ld(){this.na=this.ya;this.I=this.I&~this.N|x(this);this.J=this.J&~this.N|x(this);this.L=this.L&~this.N|x(this);A(this,C(this)+this.S);this.G=this.G&~this.N|x(this);this.K=this.K&~this.N|x(this);this.H=this.H&~this.N|x(this);this.F=this.F&~this.N|x(this);this.A-=this.B.vj;this.na=-1}function Md(){this.ja.call(this,Rg)}function ee(){!(this.pa&1)||this.O&131072?v.call(this,6):this.xa.call(this,Qg)}function fe(){this.M|=20;this.Ba=this.Db=this.qb;this.A-=this.B.Gc}
function ge(){this.M|=20;this.Ba=this.Db=this.rb;this.A-=this.B.Gc}function he(){this.M|=1024;this.ba&1024||(this.S^=6,this.N^=-65536,Ke(this));this.A-=this.B.Gc}function ie(){this.M|=2048;this.ba&2048||(this.Jc^=6,this.ra^=-65536,re(this));this.A-=this.B.Gc}function Nd(){D(this,this.za());this.A-=this.B.qc}function Od(){this.ja.call(this,hh)}function Pd(){D(this,this.P());this.A-=this.B.qc}function Qd(){this.ja.call(this,fh)}
function Rd(){var a=1,b=0,c=this.ra,d=5;this.ba&192&&(a=this.H&c,b=1,this.ba&256&&(d=4));if(a--){var e=this.K&65535;of(this,e,1)&&(e=lc(this.ma,e,1,this.ea-b-1),this.Dc(this.ua.Mb(this.I&c,1),e),this.I=this.I&~c|this.I+(this.O&1024?-1:1)&c,this.H=this.H&~c|this.H-b&c,this.A-=d,a&&(Ve(this),this.M|=256))}}
function Sd(){var a=1,b=0,c=this.ra,d=5;this.ba&192&&(a=this.H&c,b=1,this.ba&256&&(d=4));if(a--){var e=this.K&65535;of(this,e,this.S)&&(e=lc(this.ma,e,this.S,this.ea-b-1),this.nb(this.ua.Mb(this.I&c,this.S),e),this.I=this.I&~c|this.I+(this.O&1024?-this.S:this.S)&c,this.H=this.H&~c|this.H-b&c,this.A-=d,a&&(Ve(this),this.M|=256))}}
@ -326,22 +326,22 @@ function Ud(){var a=1,b=0,c=this.ra,d=5;this.ba&192&&(a=this.H&c,b=1,this.ba&256
function Gi(){var a=this.P();bf(this)?this.A-=this.B.Ja:(G(this,E(this)+a),this.A-=this.B.Ia)}function Hi(){var a=this.P();Xe(this)?(G(this,E(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja}function Ii(){var a=this.P();Xe(this)?this.A-=this.B.Ja:(G(this,E(this)+a),this.A-=this.B.Ia)}function Ji(){var a=this.P();$e(this)?(G(this,E(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja}function Ki(){var a=this.P();$e(this)?this.A-=this.B.Ja:(G(this,E(this)+a),this.A-=this.B.Ia)}
function Li(){var a=this.P();Xe(this)||$e(this)?(G(this,E(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja}function Mi(){var a=this.P();Xe(this)||$e(this)?this.A-=this.B.Ja:(G(this,E(this)+a),this.A-=this.B.Ia)}function Ni(){var a=this.P();af(this)?(G(this,E(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja}function Oi(){var a=this.P();af(this)?this.A-=this.B.Ja:(G(this,E(this)+a),this.A-=this.B.Ia)}function Pi(){var a=this.P();Ye(this)?(G(this,E(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja}
function Qi(){var a=this.P();Ye(this)?this.A-=this.B.Ja:(G(this,E(this)+a),this.A-=this.B.Ia)}function Ri(){var a=this.P();!af(this)!=!bf(this)?(G(this,E(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja}function Si(){var a=this.P();!af(this)==!bf(this)?(G(this,E(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja}function Ti(){var a=this.P();$e(this)||!af(this)!=!bf(this)?(G(this,E(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja}
function Ui(){var a=this.P();$e(this)||!af(this)!=!bf(this)?this.A-=this.B.Ja:(G(this,E(this)+a),this.A-=this.B.Ia)}function Vi(){this.Rc.call(this,Wi,this.ka);this.A-=-1===this.D?1:this.B.Pf}function Xi(){this.M|=1;this.cc.call(this,th)}function Yi(){this.M|=1;this.wa.call(this,th)}function Zi(){this.Vb.call(this,th)}function $i(){this.ja.call(this,th)}function Vd(){this.Rc.call(this,aj,wi)}function Wd(){this.$a.call(this,2==this.S?bj:cj,wi)}
function Ui(){var a=this.P();$e(this)||!af(this)!=!bf(this)?this.A-=this.B.Ja:(G(this,E(this)+a),this.A-=this.B.Ia)}function Vi(){this.Rc.call(this,Wi,this.ka);this.A-=-1===this.D?1:this.B.Pf}function Xi(){this.M|=1;this.cc.call(this,th)}function Yi(){this.M|=1;this.xa.call(this,th)}function Zi(){this.Vb.call(this,th)}function $i(){this.ja.call(this,th)}function Vd(){this.Rc.call(this,aj,wi)}function Wd(){this.$a.call(this,2==this.S?bj:cj,wi)}
function dj(){var a=vf(this),b=x(this);G(this,b);a&&A(this,C(this)+a);this.A-=this.B.Cj}function ej(){var a=x(this);G(this,a);this.A-=this.B.zj}function Xd(){this.na=this.ya;var a=vf(this),b=this.ka()&31;this.A-=11;D(this,this.L);var c=C(this)&this.N;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.L=this.L&~this.N|this.L-this.S&this.N,D(this,vd(this,this.W,this.L&this.N));D(this,c)}this.L=this.L&~this.N|c;A(this,C(this)&~this.W.ra|C(this)-a&this.W.ra);this.na=-1}
function Yd(){this.na=this.ya;A(this,C(this)&~this.W.ra|this.L&this.W.ra);this.L=this.L&~this.N|x(this)&this.N;this.A-=5;this.na=-1}function fj(){Bi.call(this,vf(this));this.A-=this.B.Bj}function gj(){Bi.call(this,0);this.A-=this.B.Aj}function hj(a){this.ri=a;this.ja.call(this,dh)}function ij(){this.M|=36;this.A-=this.B.Gc}function Zd(){ce.call(this)}function Jd(){v.call(this,6)}
function ce(){G(this,this.bd-this.ga.va);kb(this,"Undefined opcode "+oa(this.Eb(this.ea),2,!0)+" at "+oa(this.ea,8,!0));Qc(this)}
var Fd=[function(){this.cc.call(this,Mg)},function(){this.wa.call(this,Ng)},function(){this.Vb.call(this,Mg)},function(){this.ja.call(this,Ng)},function(){this.F=this.F&-256|Mg.call(this,this.F&255,this.ka());this.A--},function(){this.F=this.F&~this.N|Ng.call(this,this.F&this.N,this.za());this.A--},function(){wd(this,this.ua.ha,this.S,2);this.A-=this.B.Md},function(){this.na=this.ya;yd(this,x(this));this.A-=this.B.Yb;this.na=-1},function(){this.cc.call(this,yh)},function(){this.wa.call(this,zh)},
function(){this.Vb.call(this,yh)},function(){this.ja.call(this,zh)},function(){this.F=this.F&-256|yh.call(this,this.F&255,this.ka());this.A--},function(){this.F=this.F&~this.N|zh.call(this,this.F&this.N,this.za());this.A--},function(){wd(this,this.ga.ha,this.S,2);this.A-=this.B.Md},function(){Se(this,x(this));this.A-=this.B.Yb},function(){this.cc.call(this,Kg)},function(){this.wa.call(this,Lg)},function(){this.Vb.call(this,Kg)},function(){this.ja.call(this,Lg)},function(){this.F=this.F&-256|Kg.call(this,
this.F&255,this.ka());this.A--},function(){this.F=this.F&~this.N|Lg.call(this,this.F&this.N,this.za());this.A--},function(){wd(this,this.W.ha,this.S,2);this.A-=this.B.Md},function(){this.na=this.ya;rd(this,x(this));this.A-=this.B.Yb;this.na=-1},function(){this.cc.call(this,Ah)},function(){this.wa.call(this,Bh)},function(){this.Vb.call(this,Ah)},function(){this.ja.call(this,Bh)},function(){this.F=this.F&-256|Ah.call(this,this.F&255,this.ka());this.A--},function(){this.F=this.F&~this.N|Bh.call(this,
this.F&this.N,this.za());this.A--},function(){wd(this,this.Ca.ha,this.S,2);this.A-=this.B.Md},function(){this.na=this.ya;xd(this,x(this));this.A-=this.B.Yb;this.na=-1},function(){this.cc.call(this,Og)},function(){this.wa.call(this,Pg)},function(){this.Vb.call(this,Og)},function(){this.ja.call(this,Pg)},function(){this.F=this.F&-256|Og.call(this,this.F&255,this.ka());this.A--},function(){this.F=this.F&~this.N|Pg.call(this,this.F&this.N,this.za());this.A--},function(){this.M|=20;this.Ba=this.Db=this.ua;
this.A-=this.B.Gc},function(){var a=this.F&255,b=Ze(this),c=Xe(this);9<(a&15)||b?(a+=6,b=16):b=0;159<a||c?(a+=96,c=1):c=0;a&=255;this.F=this.F&-256|a;H(this,a,128);c?cf(this):df(this);b?lf(this):jf(this);this.A-=this.B.Ld},function(){this.cc.call(this,fi)},function(){this.wa.call(this,gi)},function(){this.Vb.call(this,fi)},function(){this.ja.call(this,gi)},function(){this.F=this.F&-256|fi.call(this,this.F&255,this.ka());this.A--},function(){this.F=this.F&~this.N|gi.call(this,this.F&this.N,this.za());
this.A--},function(){this.M|=20;this.Ba=this.Db=this.ga;this.A-=this.B.Gc},function(){var a=this.F&255,b=Ze(this),c=Xe(this);9<(a&15)||b?(a-=6,b=16):b=0;159<a||c?(a-=96,c=1):c=0;a&=255;this.F=this.F&-256|a;H(this,a,128);c?cf(this):df(this);b?lf(this):jf(this);this.A-=this.B.Ld},function(){this.cc.call(this,ni)},function(){this.wa.call(this,oi)},function(){this.Vb.call(this,ni)},function(){this.ja.call(this,oi)},function(){this.F=this.F&-256|ni.call(this,this.F&255,this.ka());this.A--},function(){this.F=
this.F&~this.N|oi.call(this,this.F&this.N,this.za());this.A--},function(){this.M|=20;this.Ba=this.Db=this.W;this.A-=this.B.Gc},function(){var a,b,c=this.F&255,d=this.F>>8&255;9<(c&15)||Ze(this)?(c+=6,80286<=this.aa&&255<c&&d++,d++,a=b=1):a=b=0;this.F=this.F&-65536|(d<<8|c)&65295;a?cf(this):df(this);b?lf(this):jf(this);this.A-=this.B.Ld},function(){this.cc.call(this,bh)},function(){this.wa.call(this,ch)},function(){this.Vb.call(this,bh)},function(){this.ja.call(this,ch)},function(){bh.call(this,this.F&
var Fd=[function(){this.cc.call(this,Mg)},function(){this.xa.call(this,Ng)},function(){this.Vb.call(this,Mg)},function(){this.ja.call(this,Ng)},function(){this.F=this.F&-256|Mg.call(this,this.F&255,this.ka());this.A--},function(){this.F=this.F&~this.N|Ng.call(this,this.F&this.N,this.za());this.A--},function(){wd(this,this.ua.ha,this.S,2);this.A-=this.B.Md},function(){this.na=this.ya;yd(this,x(this));this.A-=this.B.Yb;this.na=-1},function(){this.cc.call(this,yh)},function(){this.xa.call(this,zh)},
function(){this.Vb.call(this,yh)},function(){this.ja.call(this,zh)},function(){this.F=this.F&-256|yh.call(this,this.F&255,this.ka());this.A--},function(){this.F=this.F&~this.N|zh.call(this,this.F&this.N,this.za());this.A--},function(){wd(this,this.ga.ha,this.S,2);this.A-=this.B.Md},function(){Se(this,x(this));this.A-=this.B.Yb},function(){this.cc.call(this,Kg)},function(){this.xa.call(this,Lg)},function(){this.Vb.call(this,Kg)},function(){this.ja.call(this,Lg)},function(){this.F=this.F&-256|Kg.call(this,
this.F&255,this.ka());this.A--},function(){this.F=this.F&~this.N|Lg.call(this,this.F&this.N,this.za());this.A--},function(){wd(this,this.W.ha,this.S,2);this.A-=this.B.Md},function(){this.na=this.ya;rd(this,x(this));this.A-=this.B.Yb;this.na=-1},function(){this.cc.call(this,Ah)},function(){this.xa.call(this,Bh)},function(){this.Vb.call(this,Ah)},function(){this.ja.call(this,Bh)},function(){this.F=this.F&-256|Ah.call(this,this.F&255,this.ka());this.A--},function(){this.F=this.F&~this.N|Bh.call(this,
this.F&this.N,this.za());this.A--},function(){wd(this,this.Ca.ha,this.S,2);this.A-=this.B.Md},function(){this.na=this.ya;xd(this,x(this));this.A-=this.B.Yb;this.na=-1},function(){this.cc.call(this,Og)},function(){this.xa.call(this,Pg)},function(){this.Vb.call(this,Og)},function(){this.ja.call(this,Pg)},function(){this.F=this.F&-256|Og.call(this,this.F&255,this.ka());this.A--},function(){this.F=this.F&~this.N|Pg.call(this,this.F&this.N,this.za());this.A--},function(){this.M|=20;this.Ba=this.Db=this.ua;
this.A-=this.B.Gc},function(){var a=this.F&255,b=Ze(this),c=Xe(this);9<(a&15)||b?(a+=6,b=16):b=0;159<a||c?(a+=96,c=1):c=0;a&=255;this.F=this.F&-256|a;H(this,a,128);c?cf(this):df(this);b?lf(this):jf(this);this.A-=this.B.Ld},function(){this.cc.call(this,fi)},function(){this.xa.call(this,gi)},function(){this.Vb.call(this,fi)},function(){this.ja.call(this,gi)},function(){this.F=this.F&-256|fi.call(this,this.F&255,this.ka());this.A--},function(){this.F=this.F&~this.N|gi.call(this,this.F&this.N,this.za());
this.A--},function(){this.M|=20;this.Ba=this.Db=this.ga;this.A-=this.B.Gc},function(){var a=this.F&255,b=Ze(this),c=Xe(this);9<(a&15)||b?(a-=6,b=16):b=0;159<a||c?(a-=96,c=1):c=0;a&=255;this.F=this.F&-256|a;H(this,a,128);c?cf(this):df(this);b?lf(this):jf(this);this.A-=this.B.Ld},function(){this.cc.call(this,ni)},function(){this.xa.call(this,oi)},function(){this.Vb.call(this,ni)},function(){this.ja.call(this,oi)},function(){this.F=this.F&-256|ni.call(this,this.F&255,this.ka());this.A--},function(){this.F=
this.F&~this.N|oi.call(this,this.F&this.N,this.za());this.A--},function(){this.M|=20;this.Ba=this.Db=this.W;this.A-=this.B.Gc},function(){var a,b,c=this.F&255,d=this.F>>8&255;9<(c&15)||Ze(this)?(c+=6,80286<=this.aa&&255<c&&d++,d++,a=b=1):a=b=0;this.F=this.F&-65536|(d<<8|c)&65295;a?cf(this):df(this);b?lf(this):jf(this);this.A-=this.B.Ld},function(){this.cc.call(this,bh)},function(){this.xa.call(this,ch)},function(){this.Vb.call(this,bh)},function(){this.ja.call(this,ch)},function(){bh.call(this,this.F&
255,this.ka());this.A--},function(){ch.call(this,this.F&this.N,this.za());this.A--},function(){this.M|=20;this.Ba=this.Db=this.Ca;this.A-=this.B.Gc},function(){var a,b,c=this.F&255,d=this.F>>8&255;9<(c&15)||Ze(this)?(c=c-6&15,d=d-1&255,a=b=1):a=b=0;this.F=this.F&-65536|d<<8|c;a?cf(this):df(this);b?lf(this):jf(this);this.A-=this.B.Ld},function(){this.F=si.call(this,this.F)},function(){this.H=si.call(this,this.H)},function(){this.K=si.call(this,this.K)},function(){this.G=si.call(this,this.G)},function(){A(this,
si.call(this,C(this)))},function(){this.L=si.call(this,this.L)},function(){this.J=si.call(this,this.J)},function(){this.I=si.call(this,this.I)},function(){this.F=qi.call(this,this.F)},function(){this.H=qi.call(this,this.H)},function(){this.K=qi.call(this,this.K)},function(){this.G=qi.call(this,this.G)},function(){A(this,qi.call(this,C(this)))},function(){this.L=qi.call(this,this.L)},function(){this.J=qi.call(this,this.J)},function(){this.I=qi.call(this,this.I)},function(){D(this,this.F&this.N);this.A-=
this.B.qc},function(){D(this,this.H&this.N);this.A-=this.B.qc},function(){D(this,this.K&this.N);this.A-=this.B.qc},function(){D(this,this.G&this.N);this.A-=this.B.qc},function(){D(this,C(this)-2&65535);this.A-=this.B.qc},function(){D(this,this.L&this.N);this.A-=this.B.qc},function(){D(this,this.J&this.N);this.A-=this.B.qc},function(){D(this,this.I&this.N);this.A-=this.B.qc},function(){this.F=this.F&~this.N|x(this);this.A-=this.B.Yb},function(){this.H=this.H&~this.N|x(this);this.A-=this.B.Yb},function(){this.K=
this.K&~this.N|x(this);this.A-=this.B.Yb},function(){this.G=this.G&~this.N|x(this);this.A-=this.B.Yb},function(){A(this,C(this)&~this.N|x(this));this.A-=this.B.Yb},function(){this.L=this.L&~this.N|x(this);this.A-=this.B.Yb},function(){this.J=this.J&~this.N|x(this);this.A-=this.B.Yb},function(){this.I=this.I&~this.N|x(this);this.A-=this.B.Yb},Fi,Gi,Hi,Ii,Ji,Ki,Li,Mi,Ni,Oi,Pi,Qi,Ri,Si,Ti,Ui,Fi,Gi,Hi,Ii,Ji,Ki,Li,Mi,Ni,Oi,Pi,Qi,Ri,Si,Ti,Ui,Vi,function(){this.$a.call(this,jj,this.za);this.A-=-1===this.D?
1:this.B.Pf},Vi,function(){this.$a.call(this,jj,this.P);this.A-=-1===this.D?1:this.B.Pf},function(){this.cc.call(this,hi)},function(){this.wa.call(this,ii)},function(){this.Vb.call(this,li)},function(){this.ja.call(this,mi)},Xi,Yi,Zi,$i,function(){this.M|=1;this.wa.call(this,xh)},function(){this.M|=1;this.Ba=this.Db=this.fg;this.ja.call(this,nh)},function(){var a;this.ja.call(this,wh);switch(this.Z>>3&7){case 0:a=this.F;this.F=this.ta;yd(this,a);break;case 1:a=this.H;this.H=this.ta;Se(this,a);break;
1:this.B.Pf},Vi,function(){this.$a.call(this,jj,this.P);this.A-=-1===this.D?1:this.B.Pf},function(){this.cc.call(this,hi)},function(){this.xa.call(this,ii)},function(){this.Vb.call(this,li)},function(){this.ja.call(this,mi)},Xi,Yi,Zi,$i,function(){this.M|=1;this.xa.call(this,xh)},function(){this.M|=1;this.Ba=this.Db=this.fg;this.ja.call(this,nh)},function(){var a;this.ja.call(this,wh);switch(this.Z>>3&7){case 0:a=this.F;this.F=this.ta;yd(this,a);break;case 1:a=this.H;this.H=this.ta;Se(this,a);break;
case 2:a=this.K;this.K=this.ta;rd(this,a);break;case 3:a=this.G;this.G=this.ta;xd(this,a);break;case 4:a=C(this);A(this,this.ta);80386<=this.aa?this.qb.load(a):yd(this,a);break;case 5:a=this.L;this.L=this.ta;80386<=this.aa?this.rb.load(a):Se(this,a);break;case 6:a=this.J;this.J=this.ta;rd(this,a);break;case 7:a=this.I,this.I=this.ta,xd(this,a)}},function(){this.M|=1;this.na=this.ya;this.ta=x(this);this.$a.call(this,kj,yi);this.na=-1},function(){this.A-=3},function(){var a=this.F;this.F=this.F&~this.N|
this.H&this.N;this.H=this.H&~this.N|a&this.N;this.A-=3},function(){var a=this.F;this.F=this.F&~this.N|this.K&this.N;this.K=this.K&~this.N|a&this.N;this.A-=3},function(){var a=this.F;this.F=this.F&~this.N|this.G&this.N;this.G=this.G&~this.N|a&this.N;this.A-=3},function(){var a=this.F,b=C(this);this.F=this.F&~this.N|b&this.N;A(this,b&~this.N|a&this.N);this.A-=3},function(){var a=this.F;this.F=this.F&~this.N|this.L&this.N;this.L=this.L&~this.N|a&this.N;this.A-=3},function(){var a=this.F;this.F=this.F&
~this.N|this.J&this.N;this.J=this.J&~this.N|a&this.N;this.A-=3},function(){var a=this.F;this.F=this.F&~this.N|this.I&this.N;this.I=this.I&~this.N|a&this.N;this.A-=3},function(){this.F=2==this.S?this.F&-65536|this.F<<24>>24&65535:this.F<<16>>16;this.A-=2},function(){this.K=2==this.S?this.K&-65536|(this.F&32768?65535:0):this.F&-2147483648?-1:0;this.A-=this.B.Ji},function(){zi.call(this,this.za(),vf(this));this.A-=this.B.Mi},function(){this.A-=3},function(){var a=Ad(this);a&131072&&3>this.Wb?v.call(this,
@ -377,7 +377,7 @@ this.B.uj:this.B.tj;this.M|=2;return a},function(a,b){2==this.S?(b=this.F&65535,
this.F,this.K,a))return Di.call(this),a;this.Aa|=0;this.Va|=0}this.dc=!0;this.A-=-1===this.C?this.B.Si:this.B.Ri;this.M|=2;return a},function(a,b){if(2==this.S){if(!a)return Di.call(this),a;var c=a<<16>>16,d=(b=this.K<<16|this.F&65535)/c|0;if(d!=d<<16>>16||8086==this.aa&&-32768==d)return Di.call(this),a;this.Aa=d&65535;this.Va=b%c&65535}else{b=this.F;var c=this.K,d=a,e=0,f=0;0>d&&(d=-d|0,e=1-e);0>c&&(b=-b|0,c=~c+(b?0:1)|0,f=1,e=1-e);!ri.call(this,b,c,d)||this.Aa>2147483647+e||this.Va>2147483647+f?
b=!1:(e&&(this.Aa=-this.Aa),f&&(this.Va=-this.Va),b=!0);if(!b)return Di.call(this),a;this.Aa|=0;this.Va|=0}this.dc=!0;this.A-=-1===this.C?this.B.Wi:this.B.Vi;this.M|=2;return a}],Gd=[function(a){var b=a+1|0;We(this,a,1,b,190);this.A-=-1===this.C?this.B.Ue:this.B.Te;return b&255},function(a){var b=a-1|0;We(this,a,1,b,190,!0);this.A-=-1===this.C?this.B.Ue:this.B.Te;return b&255},R,R,R,R,R,R],Hd=[function(a){var b=a+1|0;We(this,a,1,b,this.sb|62);this.A-=-1===this.C?this.B.Ue:this.B.Te;return b&this.N},
function(a){var b=a-1|0;We(this,a,1,b,this.sb|62,!0);this.A-=-1===this.C?this.B.Ue:this.B.Te;return b&this.N},function(a){D(this,E(this));G(this,a);this.A-=-1===this.C?this.B.Oi:this.B.Ni;this.M|=2;return a},function(a){if(-1===this.C)return R.call(this,a);this.na=this.ya;zi.call(this,a,this.fa(this.C+this.S));this.A-=this.B.Li;this.M|=2;this.na=-1;return a},function(a){G(this,a);this.A-=-1===this.C?this.B.ij:this.B.hj;this.M|=2;return a},function(a){if(-1===this.C)return R.call(this,a);Cd(this,a,
this.fa(this.C+this.S));this.A-=this.B.fj;this.M|=2;return a},function(a){var b=a;this.M&512&&(a=a-2&65535,80286>this.aa&&(b=a));D(this,b);this.A-=-1===this.C?this.B.qc:this.B.yj;this.M|=2;return a},R];function je(){this.ja.call(this,ki);this.A-=-1===this.C?6:13}function ke(){this.wa.call(this,ji);this.A-=-1===this.C?12:19}var be=Array(256);be[0]=function(){16>(this.Eb(this.ea)&56)&&(this.M|=1);this.$a.call(this,this.ni,xi)};be[1]=function(){this.Eb(this.ea)&16||(this.M|=1);this.$a.call(this,oj,xi)};
this.fa(this.C+this.S));this.A-=this.B.fj;this.M|=2;return a},function(a){var b=a;this.M&512&&(a=a-2&65535,80286>this.aa&&(b=a));D(this,b);this.A-=-1===this.C?this.B.qc:this.B.yj;this.M|=2;return a},R];function je(){this.ja.call(this,ki);this.A-=-1===this.C?6:13}function ke(){this.xa.call(this,ji);this.A-=-1===this.C?12:19}var be=Array(256);be[0]=function(){16>(this.Eb(this.ea)&56)&&(this.M|=1);this.$a.call(this,this.ni,xi)};be[1]=function(){this.Eb(this.ea)&16||(this.M|=1);this.$a.call(this,oj,xi)};
be[2]=function(){!(this.pa&1)||this.O&131072?v.call(this,6):this.ja.call(this,lh)};be[3]=function(){!(this.pa&1)||this.O&131072?v.call(this,6):this.ja.call(this,rh)};
be[5]=function(){this.Ga?v.call(this,13,0,0,!0):(nf(this,this.fa(2054)),this.I=this.fa(2086),this.J=this.fa(2088),this.L=this.fa(2090),this.G=this.fa(2094),this.K=this.fa(2096),this.H=this.fa(2098),this.F=this.fa(2100),nd(this.ua,2102,this.fa(2084)),nd(this.ga,2108,this.fa(2082)),nd(this.W,2114,this.fa(2080)),nd(this.Ca,2120,this.fa(2078)),Bd(this,this.fa(2072)),G(this,this.fa(2074)),A(this,this.fa(2092)),this.Kb=this.fa(2126)|this.Eb(2128)<<16,this.Oc=this.Kb+this.fa(2130),this.Tb=this.fa(2138)|
this.Eb(2140)<<16,this.Pc=this.Tb+this.fa(2142),nd(this.kc,2132,this.fa(2076)),nd(this.la,2144,this.fa(2070)),this.A-=195)};be[6]=function(){this.Ga?v.call(this,13,0):(this.pa&=-9,this.A-=2)};be[11]=Jd;be[166]=Jd;be[255]=Jd;var F=[];F[5]=Jd;
@ -390,11 +390,11 @@ F[130]=function(){var a=this.za();Xe(this)?(G(this,E(this)+a),this.A-=this.B.Ia)
F[135]=function(){var a=this.za();Xe(this)||$e(this)?this.A-=this.B.Ja:(G(this,E(this)+a),this.A-=this.B.Ia)};F[136]=function(){var a=this.za();af(this)?(G(this,E(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[137]=function(){var a=this.za();af(this)?this.A-=this.B.Ja:(G(this,E(this)+a),this.A-=this.B.Ia)};F[138]=function(){var a=this.za();Ye(this)?(G(this,E(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[139]=function(){var a=this.za();Ye(this)?this.A-=this.B.Ja:(G(this,E(this)+a),this.A-=this.B.Ia)};
F[140]=function(){var a=this.za();!af(this)!=!bf(this)?(G(this,E(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[141]=function(){var a=this.za();!af(this)==!bf(this)?(G(this,E(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[142]=function(){var a=this.za();$e(this)||!af(this)!=!bf(this)?(G(this,E(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[143]=function(){var a=this.za();$e(this)||!af(this)!=!bf(this)?this.A-=this.B.Ja:(G(this,E(this)+a),this.A-=this.B.Ia)};F[144]=function(){ti.call(this,Ch)};
F[145]=function(){ti.call(this,Ch)};F[146]=function(){ti.call(this,Dh)};F[147]=function(){ti.call(this,Eh)};F[148]=function(){ti.call(this,Fh)};F[149]=function(){ti.call(this,Gh)};F[150]=function(){ti.call(this,Hh)};F[151]=function(){ti.call(this,Ih)};F[152]=function(){ti.call(this,Jh)};F[153]=function(){ti.call(this,Kh)};F[154]=function(){ti.call(this,Lh)};F[155]=function(){ti.call(this,Mh)};F[156]=function(){ti.call(this,Nh)};F[157]=function(){ti.call(this,Oh)};F[158]=function(){ti.call(this,Ph)};
F[159]=function(){ti.call(this,Qh)};F[160]=function(){wd(this,this.qb.ha,this.S,2);this.A-=this.B.Md};F[161]=function(){this.na=this.ya;var a=x(this);this.qb.load(a);this.A-=this.B.Yb;this.na=-1};F[163]=function(){this.wa.call(this,Yg);-1!==this.C&&(this.A-=6)};F[164]=function(){this.wa.call(this,2==this.S?Rh:Wh);this.A-=-1===this.C?3:7};F[165]=function(){this.wa.call(this,2==this.S?Yh:Zh);this.A-=-1===this.C?3:7};F[168]=function(){wd(this,this.rb.ha,this.S,2);this.A-=this.B.Md};
F[169]=function(){this.na=this.ya;var a=x(this);this.rb.load(a);this.A-=this.B.Yb;this.na=-1};F[171]=function(){this.wa.call(this,ah);-1!==this.C&&(this.A-=5)};F[172]=function(){this.wa.call(this,2==this.S?$h:bi);this.A-=-1===this.C?3:7};F[173]=function(){this.wa.call(this,2==this.S?di:ei);this.A-=-1===this.C?3:7};F[175]=function(){this.ja.call(this,2==this.S?gh:ih)};F[178]=function(){this.ja.call(this,sh)};F[179]=function(){this.wa.call(this,$g);-1!==this.C&&(this.A-=5)};
F[159]=function(){ti.call(this,Qh)};F[160]=function(){wd(this,this.qb.ha,this.S,2);this.A-=this.B.Md};F[161]=function(){this.na=this.ya;var a=x(this);this.qb.load(a);this.A-=this.B.Yb;this.na=-1};F[163]=function(){this.xa.call(this,Yg);-1!==this.C&&(this.A-=6)};F[164]=function(){this.xa.call(this,2==this.S?Rh:Wh);this.A-=-1===this.C?3:7};F[165]=function(){this.xa.call(this,2==this.S?Yh:Zh);this.A-=-1===this.C?3:7};F[168]=function(){wd(this,this.rb.ha,this.S,2);this.A-=this.B.Md};
F[169]=function(){this.na=this.ya;var a=x(this);this.rb.load(a);this.A-=this.B.Yb;this.na=-1};F[171]=function(){this.xa.call(this,ah);-1!==this.C&&(this.A-=5)};F[172]=function(){this.xa.call(this,2==this.S?$h:bi);this.A-=-1===this.C?3:7};F[173]=function(){this.xa.call(this,2==this.S?di:ei);this.A-=-1===this.C?3:7};F[175]=function(){this.ja.call(this,2==this.S?gh:ih)};F[178]=function(){this.ja.call(this,sh)};F[179]=function(){this.xa.call(this,$g);-1!==this.C&&(this.A-=5)};
F[180]=function(){this.ja.call(this,ph)};F[181]=function(){this.ja.call(this,qh)};
F[182]=function(){this.Vb.call(this,uh);switch(this.Z>>3&7){case 0:this.F=this.F&~this.N|this.F&255;break;case 1:this.H=this.H&~this.N|this.H&255;break;case 2:this.K=this.K&~this.N|this.K&255;break;case 3:this.G=this.G&~this.N|this.G&255;break;case 4:this.jc=this.jc&~this.N|this.F>>8&255;this.F=this.ta;break;case 5:this.L=this.L&~this.N|this.H>>8&255;this.H=this.ta;break;case 6:this.J=this.J&~this.N|this.K>>8&255;this.K=this.ta;break;case 7:this.I=this.I&~this.N|this.G>>8&255,this.G=this.ta}this.A-=
-1===this.C?3:6};F[183]=function(){ud(this,2);this.ja.call(this,vh);switch(this.Z>>3&7){case 0:this.F=this.F&65535;break;case 1:this.H=this.H&65535;break;case 2:this.K=this.K&65535;break;case 3:this.G=this.G&65535;break;case 4:this.jc=this.jc&65535;break;case 5:this.L=this.L&65535;break;case 6:this.J=this.J&65535;break;case 7:this.I=this.I&65535}this.A-=-1===this.C?3:6};F[186]=function(){this.$a.call(this,pj,this.ka)};F[187]=function(){this.wa.call(this,Zg);-1!==this.C&&(this.A-=5)};
-1===this.C?3:6};F[183]=function(){ud(this,2);this.ja.call(this,vh);switch(this.Z>>3&7){case 0:this.F=this.F&65535;break;case 1:this.H=this.H&65535;break;case 2:this.K=this.K&65535;break;case 3:this.G=this.G&65535;break;case 4:this.jc=this.jc&65535;break;case 5:this.L=this.L&65535;break;case 6:this.J=this.J&65535;break;case 7:this.I=this.I&65535}this.A-=-1===this.C?3:6};F[186]=function(){this.$a.call(this,pj,this.ka)};F[187]=function(){this.xa.call(this,Zg);-1!==this.C&&(this.A-=5)};
F[188]=function(){this.ja.call(this,Sg)};F[189]=function(){this.ja.call(this,Tg)};
F[190]=function(){this.Vb.call(this,uh);switch(this.Z>>3&7){case 0:this.F=this.F&~this.N|(this.F&255)<<24>>24&this.N;break;case 1:this.H=this.H&~this.N|(this.H&255)<<24>>24&this.N;break;case 2:this.K=this.K&~this.N|(this.K&255)<<24>>24&this.N;break;case 3:this.G=this.G&~this.N|(this.G&255)<<24>>24&this.N;break;case 4:this.jc=this.jc&~this.N|this.F<<16>>24&this.N;this.F=this.ta;break;case 5:this.L=this.L&~this.N|this.H<<16>>24&this.N;this.H=this.ta;break;case 6:this.J=this.J&~this.N|this.K<<16>>24&
this.N;this.K=this.ta;break;case 7:this.I=this.I&~this.N|this.G<<16>>24&this.N,this.G=this.ta}this.A-=-1===this.C?3:6};F[191]=function(){ud(this,2);this.ja.call(this,vh);switch(this.Z>>3&7){case 0:this.F=this.F<<16>>16;break;case 1:this.H=this.H<<16>>16;break;case 2:this.K=this.K<<16>>16;break;case 3:this.G=this.G<<16>>16;break;case 4:this.jc=this.jc<<16>>16;break;case 5:this.L=this.L<<16>>16;break;case 6:this.J=this.J<<16>>16;break;case 7:this.I=this.I<<16>>16}this.A-=-1===this.C?3:6};
@ -402,16 +402,16 @@ var Pe=[function(){this.A-=2+(-1===this.C?0:1);return this.kc.ha},function(){thi
7168)))return mf(this),a;kf(this);return a},function(a){this.M|=2;this.A-=14+(-1===this.C?0:2);if(-1!==this.bb.load(a)&&512==(this.bb.jb&2560)&&this.bb.hc>=this.Ga&&this.bb.hc>=(a&3))return mf(this),a;kf(this);return a},R,R],Id=[$d,$d,$d,$d,$d,$d,R,R],oj=[function(a){if(-1===this.C)v.call(this,6);else{a=this.Oc-this.Kb;var b=this.Kb;80286==this.aa?b|=-16777216:80386<=this.aa&&2!=this.S&&(a|=b<<16);this.Pa(this.C+2,b);this.A-=11}return a},function(a){if(-1===this.C)v.call(this,6);else{a=this.Pc-this.Tb;
var b=this.Tb;80286==this.aa?b|=-16777216:80386<=this.aa&&2!=this.S&&(a|=b<<16);this.Pa(this.C+2,b);this.A-=12}return a},function(a){-1===this.C||this.O&131072?v.call(this,6):(this.Kb=this.da(this.C+2)&(this.N|this.N<<8),a&=65535,this.Oc=this.Kb+a,this.M|=2,this.A-=11);return a},function(a){-1===this.C||this.O&131072?v.call(this,6):(this.Tb=this.da(this.C+2)&(this.N|this.N<<8),a&=65535,this.Pc=this.Tb+a,this.M|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.C?0:1);return this.pa},R,function(a){this.O&
131072?v.call(this,6):(nf(this,a),this.A-=-1===this.C?3:6,this.M|=2);return a},R],pj=[R,R,R,R,Ug,Xg,Wg,Vg];
function T(a){t.call(this,"ChipSet",a);var b=a.model;b&&!qj[b]&&r("Unrecognized ChipSet model: "+b);this.aa=qj[b]||rj;this.C=[];b=sj(a[tj]);this.C[0]=[b,b];null==b&&(this.O=[360,360],(b=a.floppies)&&b.length&&(this.O=b),uj(this,vj,this.O.length),uj(this,wj,a.monitor||(this.aa<Ef?"mono":"ega")));b=sj(a[xj]);this.C[1]=[b,b];this.wa=this.ja=1;this.aa>=Ef&&(this.wa=this.ja=2);this.V=a.scaleTimers||!1;this.Ka=a.rtcDate;this.Ga=!1;a.sound&&(this.Ca=this.la=null,window&&(this.Ca=window.AudioContext||window.webkitAudioContext),
function T(a){t.call(this,"ChipSet",a);var b=a.model;b&&!qj[b]&&r("Unrecognized ChipSet model: "+b);this.aa=qj[b]||rj;this.C=[];b=sj(a[tj]);this.C[0]=[b,b];null==b&&(this.O=[360,360],(b=a.floppies)&&b.length&&(this.O=b),uj(this,vj,this.O.length),uj(this,wj,a.monitor||(this.aa<Ef?"mono":"ega")));b=sj(a[xj]);this.C[1]=[b,b];this.xa=this.ja=1;this.aa>=Ef&&(this.xa=this.ja=2);this.V=a.scaleTimers||!1;this.Ka=a.rtcDate;this.Ga=!1;a.sound&&(this.Ca=this.la=null,window&&(this.Ca=window.AudioContext||window.webkitAudioContext),
this.Ca&&(this.la=new this.Ca));this.reset(!0);mb(this)}ba(T,t);k=T.prototype;k.wb=function(a,b,c){switch(b){case tj:return this.ia[b]=c,yj(this,0,b),!0;case xj:if((this.aa|0)==zj||this.aa==Aj)return this.ia[b]=c,yj(this,1,b),!0;break;case Bj:return this.ia[b]=c,!0}return!1};
k.ic=function(a,b,c,d){this.ma=b;this.U=c;this.Ea=d;this.oa=a;this.Vd=vb(a,"FPU");uj(this,Cj,this.Vd?1:0,!0);this.B=vb(a,"Keyboard");this.Aa=c.R.Xc/Dj;kc(b,this,Ej);mc(b,this,Fj);this.aa<Ef?this.aa!=Aj?(kc(b,this,Gj),mc(b,this,Hj)):(kc(b,this,Ij),mc(b,this,Jj)):(kc(b,this,Kj),mc(b,this,Lj),(this.aa|0)==Mj&&(kc(b,this,Nj),mc(b,this,Oj)))};k.Ob=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Nb=function(a){return a?this.save():!0};
k.reset=function(a){var b;Pj(this);this.D=Array(this.wa);for(b=0;b<this.wa;b++)Qj(this,b);this.$b=Array(this.ja);Rj(this,Sj,Tj);1<this.ja&&Rj(this,Uj,Vj);this.ea=this.ta=null;this.H=Array((this.aa|0)==Mj?6:3);for(b=0;b<this.H.length;b++)Wj(this,b);this.ga=this.Ba=this.J=this.ua=null;this.ba=If;this.aa==Aj&&(this.Z=0);if(this.aa>=Ef){this.F=Xj;this.L=0;this.K=Yj;this.pa=0;this.M=Zj|ak;512<=bk(this)&&(this.M|=ck);+dk(this,wj,void 0)==ek&&(this.M|=fk);(this.aa|0)==Mj&&(this.M=this.M|gk|hk);this.qa=ik|
k.reset=function(a){var b;Pj(this);this.D=Array(this.xa);for(b=0;b<this.xa;b++)Qj(this,b);this.$b=Array(this.ja);Rj(this,Sj,Tj);1<this.ja&&Rj(this,Uj,Vj);this.ea=this.ta=null;this.H=Array((this.aa|0)==Mj?6:3);for(b=0;b<this.H.length;b++)Wj(this,b);this.ga=this.Ba=this.J=this.ua=null;this.ba=If;this.aa==Aj&&(this.Z=0);if(this.aa>=Ef){this.F=Xj;this.L=0;this.K=Yj;this.pa=0;this.M=Zj|ak;512<=bk(this)&&(this.M|=ck);+dk(this,wj,void 0)==ek&&(this.M|=fk);(this.aa|0)==Mj&&(this.M=this.M|gk|hk);this.qa=ik|
jk;this.G=Array(8);this.W=0;a&&(this.A=Array(kk));lk(this,this.Ka);for(a=mk;a<=nk;a++)this.A[a]=0;for(a=ok;a<pk;a++)void 0===this.A[a]&&(this.A[a]=0);a=0|+dk(this,wj,void 0)<<qk.bg&qk.gc;a|=+dk(this,Cj,void 0)?rk:0;b=+dk(this,vj,void 0);a|=b?b-1<<sk.bg&sk.gc|sk.gk:0;this.A[tk]=a;this.A[uk]=vk(this,0)<<4|vk(this,1);wk(this)}};
function lk(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.Zb("CMOS date invalid ("+b+"), using "+c)):b&&a.Zb("CMOS date: "+c);a.A[xk]=c.getSeconds();a.A[yk]=0;a.A[zk]=c.getMinutes();a.A[Ak]=0;a.A[Bk]=c.getHours();a.A[Ck]=0;a.A[Dk]=c.getDay()+1;a.A[Ek]=c.getDate();a.A[Fk]=c.getMonth()+1;b=c.getFullYear();a.A[Gk]=b%100;b/=100;a.A[Hk]=b%10|b/10<<4;a.A[Ik]=38;a.A[dd]=Jk;a.A[Kk]=0;a.A[Lk]=Mk;a.na=a.X=0;a.Ha=a.ya=null}
function Nk(a){var b;void 0===b&&(b=a.ya);a.X=Yc(a.U,a.V)+b;a.A[dd]&ed&&Sc(a.U,b)}function wk(a){for(var b=0,c=uk;c<pk;c++)b+=a.A[c];a.A[Ok]=b&255;a.A[pk]=b>>8}
k.save=function(){var a=new Qe(this);a.set(0,[this.C]);for(var b=[],c=0;c<this.D;c++){for(var d=this.D[c],e=d,f=[],g=0;g<e.Qb.length;g++){var h=e.Qb[g];f[g]=[h.Jd,h.uf,h.bc,h.cb,h.eb,h.mode,h.vf,h.tn,h.un]}b[c]=[d.zb,d.ig,d.bi,d.Cb,f,d.kg]}a.set(1,[b]);b=[];for(c=0;c<this.$b.length;c++)d=this.$b[c],b[c]=[d.Qe,d.Kc,d.hd,d.Uc,d.Rb,d.tc,d.Ed,d.He];a.set(2,[b]);b=[];for(c=0;c<this.H.length;c++)d=this.H[c],b[c]=[d.bc,d.vc,d.eb,d.Fd,d.lg,d.mode,d.gf,d.Wc,d.fd,d.Lc,d.le,d.Hd,d.gd,d.zb,d.pe];a.set(3,[this.ta,
b,this.ea]);a.set(4,[this.ua,this.J,this.Ba,this.ga,this.ba]);this.aa>=Ef&&(a.set(5,[this.F,this.L,this.K,this.pa,this.M,this.qa]),a.set(6,[this.G[7],this.G,this.W,this.A,this.na,this.X]));return a.data()};
k.restore=function(a){var b,c;b=a[0];Array.isArray(b[0])?this.C=b[0]:(this.C[0][0]=b[0],this.C[1][0]=b[1]&15,this.C[0][1]=b[2],this.C[1][1]=b[3]&15);Pj(this);b=a[1];for(c=0;c<this.wa;c++)Qj(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.ja;c++)Rj(this,c,c?Vj:Tj,b[0][c]);b=a[3];this.ta=b[0];this.ea=b[2];for(c=0;c<this.H.length;c++)Wj(this,c,b[1][c]);b=a[4];this.ua=b[0];this.J=b[1];this.Ba=b[2];this.ga=b[3];this.ba=b[4];if(b=a[5])this.F=b[0],this.L=b[1],this.K=b[2],this.pa=b[3],this.M=b[4],this.qa=
k.restore=function(a){var b,c;b=a[0];Array.isArray(b[0])?this.C=b[0]:(this.C[0][0]=b[0],this.C[1][0]=b[1]&15,this.C[0][1]=b[2],this.C[1][1]=b[3]&15);Pj(this);b=a[1];for(c=0;c<this.xa;c++)Qj(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.ja;c++)Rj(this,c,c?Vj:Tj,b[0][c]);b=a[3];this.ta=b[0];this.ea=b[2];for(c=0;c<this.H.length;c++)Wj(this,c,b[1][c]);b=a[4];this.ua=b[0];this.J=b[1];this.Ba=b[2];this.ga=b[3];this.ba=b[4];if(b=a[5])this.F=b[0],this.L=b[1],this.K=b[2],this.pa=b[3],this.M=b[4],this.qa=
b[5];if(b=a[6])this.G=b[1],this.G[7]=b[0],this.W=b[2],this.A=b[3],this.na=b[4],this.X=b[5],lk(this);return!0};k.start=function(){Pk(this)};k.stop=function(){Pk(this)};function Qj(a,b,c){var d=a.D[b];d||(d={Qb:Array(4)});c=c&&5<=c.length?c:Qk;d.zb=c[0];d.ig=c[1];d.bi=c[2];d.Cb=c[3];d.Ul=b<<2;for(var e=0;e<d.Qb.length;e++)Rk(d,e,c[4][e]);d.kg=c[5]||0;a.D[b]=d}
function Rk(a,b,c){var d=a.Qb[b];d||(d={uf:[0,0],bc:[0,0],cb:[0,0],eb:[0,0]});c=c&&8==c.length?c:Sk;d.Jd=c[0];d.uf[0]=c[1][0];d.uf[1]=c[1][1];d.bc[0]=c[2][0];d.bc[1]=c[2][1];d.cb[0]=c[3][0];d.cb[1]=c[3][1];d.eb[0]=c[4][0];d.eb[1]=c[4][1];d.mode=c[5];d.vf=c[6];d.controller=a;d.wi=b;Tk(d,c[8],c[9]);a.Qb[b]=d}function Tk(a,b,c,d){"string"==typeof b&&(b=Za(b));b&&(a.done=null,a.tn=b.id,a.un=c,a.Cf=b,a.pg=b[c],a.Rf=d)}
function Rj(a,b,c,d){var e=a.$b[b];e||(e={Kc:[null,null,null,null]});d=d&&8==d.length?d:Uk;e.port=c;e.Io=b<<3;e.Qe=d[0];e.Kc[0]=d[1][0];e.Kc[1]=d[1][1];e.Kc[2]=d[1][2];e.Kc[3]=d[1][3];e.hd=d[2];e.Uc=d[3];e.Rb=d[4];e.tc=d[5];e.Ed=d[6];e.He=d[7];a.$b[b]=e}
@ -441,7 +441,7 @@ k.am=function(a,b){this.L=b;this.F|=$m;a=0;this.L>=on&&(a=this.L^15,this.L=on);s
function bn(a,b){a.K=b;a.F=a.F&~An|b&Bn;a.B&&Sm(a.B,!!(b&Cn),!(b&Yj))}function ln(a,b,c){0<=b&&(a.pa=b,c?a.F|=Xm:(a.F&=~Xm,a.F|=Ym))}function dn(a,b){a.qa=b;Pb(a.ma,!!(b&jk));b&ik||le(a.U)}function Dn(a,b){a.aa<Ef?(Hf(a,En,4),a.Z|=Xm):a.K&Yj||a.F&(Xm|Ym)||(ln(a,b,!0),Fn(a.B),Hf(a,En,120))}k.Xk=function(){return this.W};k.qm=function(a,b){this.W=b;this.ba=b&Gn?If:Hn};
k.Yk=function(a,b){a=this.W&In;var c;if(a<=Lk)if(c=this.A[a],a<Ik){var d=!1;a!=Bk&&a!=Ck||this.A[dd]&Jk||(12>c?c=c?c:12:c=(c-=12)?c+128:140,d=!0);this.A[dd]&Jn||(d&&128<c&&(c-=48),c=c%10|c/10<<4)}else a==Ik&&(this.A[a]^=Kn);else c=this.A[a];null!=b&&a==Kk&&(this.A[a]&=Ln,c&Cm&&Ff(this,Dm),c&Bm&&this.A[dd]&ed&&Nk(this));return c};
k.rm=function(a,b){a=this.W&In;var c=b^this.A[a],d;if(a<=Lk){if(d=b,a<Ik){var e=!1;this.A[dd]&Jn||(d=10*(d>>4)+(d&15),e=!0);if(a==Bk||a==Ck)e&&23<d&&(d+=48),this.A[dd]&Jk||(12>=d?d=12==d?0:d:(d-=116,d=24==d?12:d))}}else d=b;this.A[a]=d;a==dd&&c&ed&&b&ed&&Nk(this)};k.Ij=function(a,b){this.ba=b};k.Bm=function(){};k.Cm=function(){this.Vd&&Af(this.Vd)};
function Pk(a,b){if(a.la)try{void 0!==b?a.Ga=b:b=!!(a.Ga&&a.U&&a.U.ca.Ib);var c=Math.round(Dj/em(a,fm));if(20>c||2E4<c)b=!1;b?a.I?a.I.frequency.value=c:(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))):a.I&&("stop"in a.I?a.I.stop(0):a.I.noteOff(0),a.I.disconnect(),delete a.I)}catch(d){a.xa("AudioContext exception: "+d.message),a.la=null}}
function Pk(a,b){if(a.la)try{void 0!==b?a.Ga=b:b=!!(a.Ga&&a.U&&a.U.ca.Ib);var c=Math.round(Dj/em(a,fm));if(20>c||2E4<c)b=!1;b?a.I?a.I.frequency.value=c:(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))):a.I&&("stop"in a.I?a.I.stop(0):a.I.noteOff(0),a.I.disconnect(),delete a.I)}catch(d){a.wa("AudioContext exception: "+d.message),a.la=null}}
var zj=5150,rj=5150.9,Ef=5170,Aj=5160.101,Mj=5180,qj={5150:zj,5160:5160,5170:Ef,att6300:Aj,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:rj};qj.deskpro386=Mj;
var tj="sw1",xj="sw2",Bj="swdesc",ek=3,ml=1,nl=15,ql=3,rl=4,yl=12,Cl=0,zl=4,Bl=8,El=16,Dl=32,hl=0,Sj=0,Tj=32,Uj=1,Vj=160,Kl=16,Ul=1,Tl=2,Pl=7,Ml=224,Nl=32,Ol=96,Rl=192,Ll=8,Hl=2,Il=3,Gl=3,dm=0,En=1,Vl=2,Dm=8,Gf=13,bm=0,cm=0,fm=2,qm=1,rm=14,$l=0,Am=4,cd=6,am=8,sm=48,tm=0,ym=32,zm=48,hm=192,im=192,pm=6,km=2,jm=16,nm=32,lm=64,mm=128,Dj=1193181,um=1,Rm=2,vm=4,wm=8,Um=8,xm=64,Om=128,Tm=15,Wm=16,Vm=32,Nm=16,sk={gk:1,ONE:0,Fo:64,Do:128,uo:192,gc:192,bg:6},rk=2,qk={Eo:16,Rn:32,vo:48,gc:48,bg:4},vj=1,Cj=3,
wj=4,cl=5,dl=6,U={};U[zj]=[{},{}];U[zj][0][vj]={gc:192,Ec:{1:0,2:64,3:128,4:192},cd:"Number of Floppy Drives"};U[zj][0][Cj]={gc:2,Ec:{0:0,1:2},cd:"FPU"};U[zj][0][wj]={gc:48,Ec:{0:0,1:16,2:32,3:48,none:0,tv:16,color:32,cga:32,mda:48,mono:48,ega:0,vga:0},cd:"Monitor Type"};U[zj][0][cl]={gc:12,Ec:{16:0,32:4,48:8,64:12},cd:"Base Memory (16Kb Increments)"};U[zj][1][dl]={gc:31,Ec:{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},cd:"Expansion Memory (32Kb Increments)"};
@ -458,10 +458,10 @@ b){il(this,1,1,b)},198:function(a,b){kl(this,1,1,b)},200:function(a,b){il(this,1
b){Zl(this,1,0,b)},73:function(a,b){Zl(this,1,1,b)},74:function(a,b){Zl(this,1,2,b)},75:function(a,b){gm(this,1,b)}};Ma(function(){for(var a=eb(document,"pcx86","chipset"),b=0;b<a.length;b++){var c=a[b],d=bb(c),d=new T(d);db(d,c);fl(d)}});
function Mn(a){t.call(this,"ROM",a);this.A=null;this.F=a.addr;this.C=a.size;this.D=a.alias;this.G=a.file;this.B=a.notify;this.I=null;if(this.B&&(a=this.B.indexOf("["),0<a)){try{this.I=eval(this.B.substr(a))}catch(d){}this.B=this.B.substr(0,a)}if(this.G){a=this.G;var b=qa(pa(a));"json"!=b&&"hex"!=b&&(a=Ca()+"/api/v1/dump?file="+this.G+"&format=bytes&decimal=true");var c=this;Ba(a,null,!0,function(a,b,f){Nn(c,a,b,f)})}}ba(Mn,t);Mn.prototype.ic=function(a,b,c,d){this.ma=b;this.U=c;this.Ea=d;On(this)};
Mn.prototype.Ob=function(){this.H&&(this.Ea&&this.Ea.A(this.id,0,this.F>>>4,0,this.F,this.C,this.H),delete this.H);return!0};Mn.prototype.Nb=function(){return!0};
function Nn(a,b,c,d){if(d)a.xa("Unable to load system ROM (error "+d+": "+b+")");else{Va(a.Wd,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.H=e.symbols;if(!a.A.length){r("Empty ROM: "+b);return}if(1==a.A.length){r(a.A[0]);return}}catch(h){a.xa("ROM data error: "+h.message);return}else for(b=
function Nn(a,b,c,d){if(d)a.wa("Unable to load system ROM (error "+d+": "+b+")");else{Va(a.Wd,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.H=e.symbols;if(!a.A.length){r("Empty ROM: "+b);return}if(1==a.A.length){r(a.A[0]);return}}catch(h){a.wa("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]=na(b[e],16);On(a)}}
function On(a){if(!lb(a))if(!a.G)mb(a);else if(a.A&&a.ma){a.C||(a.C=a.A.length);if(a.A.length!=a.C)kb(a,"ROM size ("+oa(a.A.length,8,!0)+") does not match specified size ("+oa(a.C,8,!0)+")");else{var b;b=a.F;if(Qb(a.ma,b,a.C,cc)){for(var c=0;c<a.A.length;c++){var d=a.ma,e=b+c;d.X[(e&d.D)>>>d.B].hf(e&d.C,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=Xb(d.ma,d.F,d.C);Wb(d.ma,e,d.C,f)}a.B&&((b=Za(a.B,a.id))?
(c=a.A,d=a.I,b.Ma==Pn?Qn(b,c,d||[12640,8752],8):b.Ma==Rn&&Qn(b,c,d||[14221,16269],8),mb(b)):a.xa("Unable to find component: "+a.B));delete a.A}}mb(a)}}Ma(function(){for(var a=eb(document,"pcx86","rom"),b=0;b<a.length;b++){var c=a[b],d=bb(c),d=new Mn(d);db(d,c)}});function Sn(a){t.call(this,"RAM",a);this.B=a.addr;this.A=a.size;this.F=a.test;this.D=!!this.A;this.C=!1}ba(Sn,t);k=Sn.prototype;k.ic=function(a,b,c,d){this.ma=b;this.U=c;this.Ea=d;this.V=vb(a,"ChipSet");mb(this)};
(c=a.A,d=a.I,b.Ma==Pn?Qn(b,c,d||[12640,8752],8):b.Ma==Rn&&Qn(b,c,d||[14221,16269],8),mb(b)):a.wa("Unable to find component: "+a.B));delete a.A}}mb(a)}}Ma(function(){for(var a=eb(document,"pcx86","rom"),b=0;b<a.length;b++){var c=a[b],d=bb(c),d=new Mn(d);db(d,c)}});function Sn(a){t.call(this,"RAM",a);this.B=a.addr;this.A=a.size;this.F=a.test;this.D=!!this.A;this.C=!1}ba(Sn,t);k=Sn.prototype;k.ic=function(a,b,c,d){this.ma=b;this.U=c;this.Ea=d;this.V=vb(a,"ChipSet");mb(this)};
k.Ob=function(a,b){return!b&&(this.reset(),a&&this.controller&&!this.restore(a))?!1:!0};k.Nb=function(a){return a&&this.controller?this.save():!0};
k.reset=function(){if(!this.B&&!this.D&&this.V){var a=1024*bk(this.V);this.A&&a!=this.A&&(ac(this.ma,this.B,this.A),this.C=!1);this.A=a}!this.C&&this.A&&Qb(this.ma,this.B,this.A,1)&&(this.C=!0,"ramCPQ"==this.Ud&&(this.controller=new Tn(this),Qb(this.ma,Un,4,4,this.controller)));if(this.C){if(this.F||ic(this.ma,1138,4660),"ramCPQ"!=this.Ud&&this.V&&(a=this.V,a.A)){var b=1048576>this.B?mk: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;wk(a)}}else r("No RAM allocated")};
k.save=function(){var a=new Qe(this);this.controller&&a.set(0,this.controller.save());return a.data()};k.restore=function(a){return this.controller?this.controller.restore(a[0]):!0};function Tn(a){this.F=a;this.C=Vn;this.D=Wn;this.B=Xn;this.A=null}k=Tn.prototype;k.save=function(){return[this.C,this.B]};k.restore=function(a){this.Dc(0,a[0]&255);this.Dc(2,a[1]&255);return!0};k.Eb=function(a){var b=255;2>a?b=a&1?this.D>>8:this.D&255:4>a&&(b=a&1?this.B>>8:this.B&255);return b};
@ -520,13 +520,13 @@ a.sb=setTimeout(a.nd,500)):null!=a.sb&&(clearTimeout(a.sb),a.sb=null);void 0===c
k.reset=function(){var a=!0,b=0;this.V&&(b=+dk(this.V,wj,void 0));this.aa||(this.Ma=b==ek?Xp:Up);this.ba=jq;switch(this.Ma){case Rn:b=7;break;case Pn:var c=kq[this.qb];c&&(b=c[0]);b||(b=4);break;case Xp:b=ek;this.ba=lq;break;default:b=2}this.ea!==b&&(this.ea=b,a=!0);this.C=null;this.W=this.Bb=new Yo(this,Xp);this.I=this.rb=new Yo(this,Up);this.Ma<Pn?this.A=new Yo:(this.A=new Yo(this,this.Ma,null,this.Vc),mq(this));nq(this);this.qa=null;this.ya=this.Z=-1;this.ua=0;oq(this,this.ba);if(this.C.Ya&&a){a=
this.C.Ya+this.Xa;for(b=this.C.Ya;b<a;b+=2){var d=65536*Math.random()|0;4==this.ea||7==this.ea?(c=b>>1&255,d=d>>8&~pq,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?qq|rq:sq|tq)|uq&d>>8);ic(this.ma,b,c|d<<8)}gq(this,!0)}};function mq(a){a.A.ff&cp?(a.W=a.Bb,a.I=a.A):(a.W=a.A,a.I=a.rb)}k.save=function(){var a=new Qe(this);a.set(0,qp(this.Bb));a.set(1,qp(this.rb));a.set(2,[this.ea,this.ba,this.qa]);a.set(3,qp(this.A));return a.data()};
k.restore=function(a){var b=a[2];this.ea=b[0];this.ba=b[1];this.qa=b[2];this.C=null;this.W=this.Bb=new Yo(this,Xp,a[0]);this.I=this.rb=new Yo(this,Up,a[1]);this.A=new Yo(this,this.Ma,a[3],this.Vc);this.A.Ub&&mq(this);nq(this);if(!vq(this))return!1;wq(this);return!0};
function Tp(a,b,c,d){if(d)a.xa("Unable to load font ROM (error "+d+": "+b+")");else{Va(a.Wd,b,c);try{var e=eval("("+c+")"),f=e.bytes||e;if(!f.length){r("Empty font ROM: "+b);return}if(1==f.length){r(f[0]);return}if(8192==f.length)Qn(a,f,[6144,0]);else if(2048==f.length)Qn(a,f,[0]);else{a.xa("Unrecognized font data length ("+f.length+")");return}}catch(g){a.xa("Font ROM data error: "+g.message);return}(a.J||a.Ea)&&mb(a)}}
function Tp(a,b,c,d){if(d)a.wa("Unable to load font ROM (error "+d+": "+b+")");else{Va(a.Wd,b,c);try{var e=eval("("+c+")"),f=e.bytes||e;if(!f.length){r("Empty font ROM: "+b);return}if(1==f.length){r(f[0]);return}if(8192==f.length)Qn(a,f,[6144,0]);else if(2048==f.length)Qn(a,f,[0]);else{a.wa("Unrecognized font data length ("+f.length+")");return}}catch(g){a.wa("Font ROM data error: "+g.message);return}(a.J||a.Ea)&&mb(a)}}
function xq(a,b){if(1==b)return a.ga[0]=yq[sq],a.ga[1]=yq[qq],a.ga;if(2==b){var c=a.C.ef;if(a.C===a.A){var d=a.A.rc[0],c=d&7;d&16&&(c|=8);18!=a.A.rc[1]&&(c|=32)}a.ga[0]=yq[c&15];c=c&32?zq:Aq;for(d=0;d<c.length;d++)a.ga[d+1]=yq[c[d]];return a.ga}if(a.I===a.rb)return yq;a.Ga&&b&&!a.ga[16]&&(a.Ga=!1);if(!a.Ga){var c=a.A,d=c.we,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.ga[e]=[g,h,f,255];else{var l=d&&d[255];b=null!=c.rc[15]?c.rc:Bq;for(e=0;16>e;e++)f=b[e]&63,l?(f|=
(c.rc[20]&12)<<4,c.rc[16]&128&&(f&=-49,f|=(c.rc[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.ga[e]=[g,h,f,255]}a.Ga=!0}return a.ga}function Qn(a,b,c,d){a.nb=b;a.Va=c;a.Ca=d}
function nq(a,b){var c=!1;if(window&&a.nb&&(!b||a.G)){b=0;var d=a.Ca?a.Ca:8,e=xq(a);null!=a.Va[0]&&Cq(a,Dq,a.Va[0],b,d,8,a.nb,e)&&(c=!0);b=a.Ca?0:2048;d=a.Ca?a.Ca:9;null!=a.Va[1]&&(Cq(a,Eq,a.Va[1],b,d,14,a.nb,Fq,Gq)&&(c=!0),a.Ca&&Cq(a,a.Ma,a.Va[1],0,a.Ca,14,a.nb,e)&&(c=!0))}return c}function Cq(a,b,c,d,e,f,g,h,l){var m=!1;null!=c&&(Hq(a,b,c,d,e,f,g,h,l)&&(m=!0),a.md&&Hq(a,b<<1,c,d,e,f,g,h,l)&&(m=!0));return m}
function Hq(a,b,c,d,e,f,g,h,l){var m=!1,q=b&1?0:1,y=a.ta[b],w=16>h.length?h.length:16;y||(y={oc:e<<q,pc:f<<q,ae:Array(w),Xh:h.slice(0,w),De:l,hg:Array(w)});for(l=0;l<w;l++){var z=h[l],B=y.ae[l]?y.Xh[l]:[];if(z[0]!==B[0]||z[1]!==B[1]||z[2]!==B[2]){var m=y,B=l,S=q,X=c,ca=d,$a=e,zb=f,Th=g,Jt=[0,0,0,0],Mf=document.createElement("canvas");Mf.width=m.oc<<4;Mf.height=m.pc<<4;var Im=Mf.getContext("2d"),Kb,pd,pc,Nf=8>zb||!ca?zb:8,Uh=Im.createImageData(m.oc,m.pc);for(Kb=0;256>Kb;Kb++){for(pc=0;pc<zb;pc++)for(var Kt=
m.De&&B&1&&pc>=zb-2,Lt=Th[pc<Nf?X+Kb*Nf+pc:ca+Kb*Nf+pc-Nf],Vh=0;Vh<=S;Vh++)for(pd=0;pd<$a;pd++){var Jm=pd<<S,Km=(pc<<S)+Vh,Lm=Kt||Lt&128>>(8<=pd&&192<=Kb&&223>=Kb?7:pd)?z:Jt;Iq(Uh,Jm,Km,Lm);S&&Iq(Uh,Jm+1,Km,Lm)}Im.putImageData(Uh,(Kb&15)*m.oc,(Kb>>4)*m.pc)}m.ae[B]="#"+oa(z[0],2)+oa(z[1],2)+oa(z[2],2);m.Xh[B]=z;m.hg[B]=Mf;m=!0}}a.ta[b]=y;return m}function Jq(a){0<a.ua||0<=a.Z?0>a.ya&&(a.ya=0):a.ya=-1}
function wq(a){if(a.G){for(var b=10;15>=b;b++)if(null==a.C.Qa[b])return;var c=a.C.Qa[10],b=c&31,d=a.C.Qa[11]&31,e=a.C.Qa[9]&31,f=!1;a.C===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Kq(a);else{c=a.C.Qa[15]+((a.C.Qa[14]&63)<<8);a.Z!=c&&(Kq(a),a.Z=c);d=d-b+1;if(a.Tc!=b||a.xc!=d)a.Tc=b,a.xc=d;a.wa=e+1;Jq(a)}}}function Kq(a){if(0<=a.Z){if(void 0!==a.L){var b=Lq<<8,c=a.L[a.Z];if(c&b){var c=c&~b,b=a.Z%a.F,d=a.Z/a.F|0;a.G&&a.ta[a.G]&&(a.Ba&&Mq(a,b,d,c,a.Ba),Mq(a,b,d,c));a.L[a.Z]=c}}a.Z=-1}}
function wq(a){if(a.G){for(var b=10;15>=b;b++)if(null==a.C.Qa[b])return;var c=a.C.Qa[10],b=c&31,d=a.C.Qa[11]&31,e=a.C.Qa[9]&31,f=!1;a.C===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Kq(a);else{c=a.C.Qa[15]+((a.C.Qa[14]&63)<<8);a.Z!=c&&(Kq(a),a.Z=c);d=d-b+1;if(a.Tc!=b||a.xc!=d)a.Tc=b,a.xc=d;a.xa=e+1;Jq(a)}}}function Kq(a){if(0<=a.Z){if(void 0!==a.L){var b=Lq<<8,c=a.L[a.Z];if(c&b){var c=c&~b,b=a.Z%a.F,d=a.Z/a.F|0;a.G&&a.ta[a.G]&&(a.Ba&&Mq(a,b,d,c,a.Ba),Mq(a,b,d,c));a.L[a.Z]=c}}a.Z=-1}}
function Nq(a){var b,c=a.C;a.yc=!1;var d=c.kd[5];if(null!=d){b=fp;var e=hp,f=c.kd[3]&31;switch(d&3){case 0:if(f){e=hp|32;switch(f&24){case 8:e=hp|96;break;case 16:e=hp|160;break;case 24:e=hp|224}c.zc=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.Ma==Rn&&(e=3,c.zc=f&7)}d&8&&(b=1280);c=c.Qd[4];null!=c&&(c&4||(b|=gp,e|=ip),d&64&&(c&8&&(b|=16384,e|=4),a.yc=!0));b|=e}return b}
function Oq(a,b){var c=a.C;return c&&null!=b&&b!=c.tg?(c.$f(b),a.ma.$f(c.Ya,c.Ab,c.qg(),!0),!0):!1}
function vq(a,b){var c,d=a.qa,e=a.C;if(e)if(e.Ma==Xp)d=lq;else if(e.Ma>=Pn){var d=null,f=e.Vc>>2,g=32768<f?32768:f,h=e.kd[6];if(null!=h){switch(h&12){case 0:e.Ya=655360;e.Ab=f;d=Pq;break;case 4:e.Ya=655360;e.Ab=f;d=a.ea==ek?Qq:Rq;break;case 8:e.Ya=720896;e.Ab=g;d=lq;break;case 12:e.Ya=753664,e.Ab=g,d=a.ea==ek?Sq:jq}c=80==(e.kd[5]&80);!c||e.Ya==a.Ya&&e.Ab==a.Ab||(b=!0);var f=up(e,vp),g=e.Qa[Np],l=e.Qa[23],m=e.Qd[1]&8;d!=Pq&&(h&1?655360==e.Ya||c||l&1?e.kd[5]&64?d=g&31?143>=e.Qa[Dp]?Tq:Uq:Vq:g&128||
@ -534,8 +534,8 @@ function vq(a,b){var c,d=a.qa,e=a.C;if(e)if(e.Ma==Xp)d=lq;else if(e.Ma>=Pn){var
function oq(a,b,c){if(null!=b&&(b!=a.qa||c)){a.bd=0;a.qa=b;a.Ga=!1;b=a.C||(b==lq?a.W:a.I);if(b!=a.C||b.Ya!=a.Ya||b.Ab!=a.Ab){Kq(a);if(a.Ya){if(!ac(a.ma,a.Ya,a.Ab))return!1;a.C&&(a.C.Ub=!1)}a.C=b;b.Ub=!0;a.Ya=b.Ya;a.Ab=b.Ab;if(!Qb(a.ma,b.Ya,b.Ab,3,b===a.A?b:null))return!1}a:{a.G=0;a.F=a.yb;a.H=a.cc;a.Ka=a.F;a.xb=Qp[lq][2];b=0;if(c=Qp[a.qa])a.F=c[0],a.H=c[1],a.xb=c[2],b=c[3],a.G=c[4],4!=a.ea&&7!=a.ea||a.C!==a.A||a.G!=Dq||(7==(a.A.Qa[Np]&31)?a.H=350>up(a.A,Dp)?43:50:a.G=a.Ma);a.Oc=a.F*a.H|0;a.Nc=a.Oc/
a.xb|0;a.Xa=a.Nc;a.Db=0;void 0!==b&&(a.Xa=(a.Xa<<1)+b|0,a.Db=a.Xa+b>>1);if(a.ta.length){a.na=a.X/a.F|0;a.pa=a.ja/a.H|0;if(a.G){b=a.ta[a.G];if(!b)break a;c=a.ta[a.G<<1];a.Ic&&80==a.F?c&&a.na>=3*c.oc>>2&&(a.G<<=1,b=c):(c&&a.na>=c.oc&&(a.G<<=1,b=c),a.Ic||(a.na=b.oc,a.pa=b.pc));a.$a=a.ab=0;b&&(a.$a=a.F*b.oc,a.ab=a.H*b.pc)}else a.na=a.pa=1,a.$a=a.F,a.ab=a.H;a.Ha=a.J.createImageData(a.$a,a.ab);a.Aa=document.createElement("canvas");a.Aa.width=a.$a;a.Aa.height=a.ab;a.Ba=a.Aa.getContext("2d");a.jc=a.kc=0;
a.Kb=a.X;a.Tb=a.ja;b=a.X-a.F*a.na;c=a.ja-a.H*a.pa;0<b&&(a.jc=b>>1,a.Kb-=b);0<c&&(a.kc=c>>1,a.Tb-=c);if(b||c)a.J.fillStyle=a.O.style.backgroundColor,a.J.fillRect(0,0,a.X,a.ja)}}cr(a,!0);gq(a)}return!0}function Iq(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function dr(a){a.ua=-1;a.la=!1;var b=a.Nc;if(void 0===a.L||a.L.length!=b)a.L=Array(b)}function cr(a,b){b||(a.Ga=!1);dr(a)}
function Mq(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.ta[a.G];h.De&&(d=h.De[d]);var l=g>>4&15;h.De&&(l=h.De[l]);e?(b*=h.oc,c*=h.pc,e.fillStyle=h.ae[l],e.fillRect(b,c,h.oc,h.pc)):(b=b*a.na+a.jc,c=c*a.pa+a.kc,a.J.fillStyle=h.ae[l],a.J.fillRect(b,c,a.na,a.pa));g&er&&(l=(f&15)*h.oc,f=(f>>4)*h.pc,e?e.drawImage(h.hg[d],l,f,h.oc,h.pc,b,c,h.oc,h.pc):a.J.drawImage(h.hg[d],l,f,h.oc,h.pc,b,c,a.na,a.pa));g&Lq&&(f=a.Tc,g=a.xc,e?(a.wa&&a.wa!==h.pc&&(f=f*h.pc/a.wa|0,g=g*h.pc/a.wa|0),e.fillStyle=h.ae[d],e.fillRect(b,
c+f,h.oc,g)):(a.wa&&a.wa!==a.pa&&(f=f*a.pa/a.wa|0,g=g*a.pa/a.wa|0),a.J.fillStyle=h.ae[d],a.J.fillRect(b,c+f,a.na,g)))}
function Mq(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.ta[a.G];h.De&&(d=h.De[d]);var l=g>>4&15;h.De&&(l=h.De[l]);e?(b*=h.oc,c*=h.pc,e.fillStyle=h.ae[l],e.fillRect(b,c,h.oc,h.pc)):(b=b*a.na+a.jc,c=c*a.pa+a.kc,a.J.fillStyle=h.ae[l],a.J.fillRect(b,c,a.na,a.pa));g&er&&(l=(f&15)*h.oc,f=(f>>4)*h.pc,e?e.drawImage(h.hg[d],l,f,h.oc,h.pc,b,c,h.oc,h.pc):a.J.drawImage(h.hg[d],l,f,h.oc,h.pc,b,c,a.na,a.pa));g&Lq&&(f=a.Tc,g=a.xc,e?(a.xa&&a.xa!==h.pc&&(f=f*h.pc/a.xa|0,g=g*h.pc/a.xa|0),e.fillStyle=h.ae[d],e.fillRect(b,
c+f,h.oc,g)):(a.xa&&a.xa!==a.pa&&(f=f*a.pa/a.xa|0,g=g*a.pa/a.xa|0),a.J.fillStyle=h.ae[d],a.J.fillRect(b,c+f,a.na,g)))}
function gq(a,b){if(a.ca.Pb){var c=!1,d=a.C;d&&(d!==a.A?d.Cc&8&&(c=!0):d.Od&32&&(c=!0));if(c||b){if(b)dr(a);else if(void 0===a.L)return;var e=!1;!(b||++a.bd&15)&&0<=a.ya&&(a.ya++,e=!0);var f=0,g=a.Oc,h=a.Ya,c=h,l=c+a.Ab;a.qa>=Tq&&(h=c=655360,l=c+65536);if(fr(a,d)&8||d.ue&&d.ue<d.lh){var m=(d.Qa[12]<<8)+d.Qa[13]|0;d.$c!==m&&(d.$c=m,cr(a));d.ue=0}m=d.$c;a.G&&(m<<=1);c+=m;m=a.Xa;a.Ma>=Pn&&d.Qa[19]&&d.Qa[19]<<1!=d.Qa[1]+1&&(a.Ka=d.Qa[19]<<(a.G?1:d.Qa[20]&64?3:4),m=(a.Ka*(a.H-1)+a.F)/a.xb|0,a.qa<=lq&&
(m<<=1));c+m>l&&(m=l-c,0>m&&(m=0));l=c+m;if(b=!b&&a.la){b=a.ma;for(var q=!0,y=c>>>b.B;0<m&&y<b.X.length;)b.X[y].Da&&(b.X[y].Da=q=!1,b.X[y].oi=!0),m-=b.A,y++;b=q}if(b){if(!e)return;if(!a.ua){f=a.Z-d.$c;if(0>f)return;g=f+1}}if(a.G){if(a.ta[a.G]){d=f;f=0;e=a.ua=0;h=er<<8;b=1048575;q=a.C.Cc&32;a.Ma>=Pn&&(q=a.C.rc[16]&8);m=a.Z-a.C.$c;q&&(e=pq<<8,b&=~e,a.ya&2||(b&=~h));for(c+=d<<1;c<l&&d<g;)q=hc(a.ma,c),q|=h,q&e&&(a.ua++,q&=b),d==m&&(q|=a.ya&1?Lq<<8:0),a.la&&q===a.L[d]||(Mq(a,d%a.F,d/a.F|0,q,a.Ba),a.L[d]=
q,f++),c+=2,d++;a.la=!0;f&&a.Ba&&a.J.drawImage(a.Aa,0,0,a.$a,a.ab,a.jc,a.kc,a.Kb,a.Tb);Jq(a)}}else if(a.Db){var g=l,w,l=c,d=a.ua=0,f=a.xb,e=16==f?65536:196608,h=16==f?1:2;b=xq(a,h);for(var q=m=0,y=a.F,z=0,B=a.H,S=0;l<g;){w=hc(a.ma,l);if(a.la&&w===a.L[d])m+=f;else{a.L[d]=w;w=w>>8|(w&255)<<8;var X=e,ca=16;m<y&&(y=m);for(var $a=0;$a<f;$a++){var zb=(w&(X>>=h))>>(ca-=h);Iq(a.Ha,m++,q,b[zb])}m>z&&(z=m);q<B&&(B=q);q>=S&&(S=q+1)}l+=2;d++;if(m>=a.F){m=0;q+=2;if(q>a.H)break;q==a.H&&(q=1,l=c+a.Db)}}a.la=!0;
@ -580,13 +580,13 @@ function Sr(a){if(!a.M)for(var b=0;b<a.B.length;b++)Vr(a,a.B[b])&&(a.M=!0)}funct
function Wr(a,b,c){if(void 0!==c){var d;!(d=!1!==a.L)&&(d=a.C.length)&&(d=a.C[0],d=d.ld?d.Id(!0):!1);d||(a.L=null);a.ie(b.button,c)}else{if(0>a.F||0>a.G)a.F=b.clientX,a.G=b.clientY;a.L?(c=b.movementX||b.mozMovementX||b.webkitMovementX||0,d=b.movementY||b.mozMovementY||b.webkitMovementY||0):(c=b.clientX-a.F,d=b.clientY-a.G);a.F=b.clientX;a.G=b.clientY;a.sg(c,d,a.F,a.G)}}
k.ie=function(a,b){if(this.Ub&&this.U&&this.U.ca.Ib)switch(a){case iq:this.J!=b&&(this.J=b,Xr(this));break;case Yr:this.K!=b&&(this.K=b,Xr(this))}};k.sg=function(a,b){this.Ub&&this.U&&this.U.ca.Ib&&(a||b)&&(this.H=a,this.I=b,Xr(this))};function Xr(a){a.D.df([64|(a.J?32:0)|(a.K?16:0)|(a.I&192)>>4|(a.H&192)>>6,a.H&63,a.I&63]);a.H=a.I=0}
k.hk=function(a){var b=1048592==(a&1048592);if(b){if(!this.Ub){var c=!1;this.A&16||(this.reset(),c=!0);this.A&1048576||(c=!0);c&&this.D.df([Zr,Zr]);Sr(this);this.Ub=b}}else this.Ub&&(Tr(this),this.Ub=b);this.A=a};var Zr=77,iq=0,Yr=2;Ma(function(){for(var a=eb(document,"pcx86","mouse"),b=0;b<a.length;b++){var c=a[b],d=bb(c),d=new Rr(d);db(d,c)}});
function $r(a,b,c){t.call(this,"Disk",{id:a.Wd+".disk"+oa(++as,4)});this.controller=a;this.xa=a.xa;this.Zb=a.Zb;this.oa=a.oa;this.Ea=a.Ea;this.B=b;this.Qc=b.name;this.ne=b.ne;this.Ff=this.C=!1;bs(this,c,b.fb,b.gb,b.Za,b.lb);this.G=[];this.J=[];this.D=null;this.L=0;this.K=!1;mb(this)}ba($r,t);k=$r.prototype;k.ic=function(a,b,c,d){this.Ea=d};k.Ob=function(a,b){b||!this.Ff||this.C||(mb(this,!1),this.load(this.Qc,this.F,null,this.wk,this));return!0};k.wk=function(){mb(this,!0)};
k.Nb=function(a,b){if(this.C){var c,d=0;if(this.K&&!Xa("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=cs(this,!1);)if(d=c[0]){this.xa('Unable to save "'+this.Qc+'" (error '+d+")");break}b&&this.C&&(b="action=close&volume="+this.F,b+="&machine="+ds(this.controller),b+="&user="+es(this.controller),Ba(Ca()+"/api/v1/disk?"+b,null,!0),this.C=!1);!d&&a&&this.xa(this.Qc+" saved")}return!0};
function $r(a,b,c){t.call(this,"Disk",{id:a.Wd+".disk"+oa(++as,4)});this.controller=a;this.wa=a.wa;this.Zb=a.Zb;this.oa=a.oa;this.Ea=a.Ea;this.B=b;this.Qc=b.name;this.ne=b.ne;this.Ff=this.C=!1;bs(this,c,b.fb,b.gb,b.Za,b.lb);this.G=[];this.J=[];this.D=null;this.L=0;this.K=!1;mb(this)}ba($r,t);k=$r.prototype;k.ic=function(a,b,c,d){this.Ea=d};k.Ob=function(a,b){b||!this.Ff||this.C||(mb(this,!1),this.load(this.Qc,this.F,null,this.wk,this));return!0};k.wk=function(){mb(this,!0)};
k.Nb=function(a,b){if(this.C){var c,d=0;if(this.K&&!Xa("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=cs(this,!1);)if(d=c[0]){this.wa('Unable to save "'+this.Qc+'" (error '+d+")");break}b&&this.C&&(b="action=close&volume="+this.F,b+="&machine="+ds(this.controller),b+="&user="+es(this.controller),Ba(Ca()+"/api/v1/disk?"+b,null,!0),this.C=!1);!d&&a&&this.wa(this.Qc+" saved")}return!0};
function bs(a,b,c,d,e,f){a.mode=b;a.fb=c;a.gb=d;a.Za=e;a.lb=f;a.A=[];if("preload"!=a.mode){b=Array(a.fb);for(c=0;c<b.length;c++){d=Array(a.gb);for(e=0;e<d.length;e++){f=Array(a.Za);for(var g=1;g<=f.length;g++)f[g-1]=fs(null,c,e,g,a.lb,"local"==a.mode?0:null);d[e]=f}b[c]=d}a.A=b}a.I=null}
k.load=function(a,b,c,d,e){var f=b;if(this.H)return!0;this.Qc=a;this.F=b;this.qh=pa(b);var g=this;this.H=d;this.M=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.fb=d[0];g.gb=d[1];g.Za=d[2];g.lb=d[3]||512;b=g.lb>>2;var e=d=0,a=new DataView(a,0,c);g.A=Array(g.fb);for(c=0;c<g.A.length;c++)for(var f=g.A[c]=Array(g.gb),B=0;B<f.length;B++)for(var S=f[B]=Array(g.Za),X=0;X<S.length;X++){for(var ca=fs(null,c,B,X+1,g.lb,0),$a=ca.data,zb=
0;zb<b;zb++,e+=4)var Th=$a[zb]=a.getInt32(e,!0),d=d+Th&-1;ca.uc=b;S[X]=ca}g.I=d;b=g}else g.xa("Unrecognized disk format ("+c+" bytes)");g.H&&(g.H.call(g.controller,g.B,b,g.Qc,g.F),g.H=null)};h.readAsArrayBuffer(c);return!0}0>b.indexOf("/api/v1/dump")&&(a=qa(b),"json"==a||"gz"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=gs(this,b),this.Ff=!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"):
0;zb<b;zb++,e+=4)var Th=$a[zb]=a.getInt32(e,!0),d=d+Th&-1;ca.uc=b;S[X]=ca}g.I=d;b=g}else g.wa("Unrecognized disk format ("+c+" bytes)");g.H&&(g.H.call(g.controller,g.B,b,g.Qc,g.F),g.H=null)};h.readAsArrayBuffer(c);return!0}0>b.indexOf("/api/v1/dump")&&(a=qa(b),"json"==a||"gz"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=gs(this,b),this.Ff=!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"):
ra(b,"/")&&(c="dir"),f=Ca()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.ne?"":d)+"&format=json"));return!!Ba(f,null,!0,function(a,b,c){hs(g,a,b,c)})};
function hs(a,b,c,d){var e=null;a.qe=!1;var f=!(!(0>d&&a.oa)||a.oa.ca.Pb);if(a.Ff)d?a.xa('Unable to connect to disk "'+a.F+'" (error '+d+": "+c+")",f):(a.C=!0,e=a);else if(d)a.xa('Unable to load disk "'+a.Qc+'" (error '+d+": "+b+")",f);else{Va(a.controller.Wd,b,c);try{if(0<pa(a.qh,!0).toLowerCase().indexOf("-readonly"))a.qe=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.qe=!0)}var h;"<"==c.substr(0,1)?h=["Missing disk image: "+a.Qc]:h=0>c.indexOf("0x")&&
function hs(a,b,c,d){var e=null;a.qe=!1;var f=!(!(0>d&&a.oa)||a.oa.ca.Pb);if(a.Ff)d?a.wa('Unable to connect to disk "'+a.F+'" (error '+d+": "+c+")",f):(a.C=!0,e=a);else if(d)a.wa('Unable to load disk "'+a.Qc+'" (error '+d+": "+b+")",f);else{Va(a.controller.Wd,b,c);try{if(0<pa(a.qh,!0).toLowerCase().indexOf("-readonly"))a.qe=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.qe=!0)}var h;"<"==c.substr(0,1)?h=["Missing disk image: "+a.Qc]: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)r(h[0]);else{a.fb=h.length;a.gb=h[0].length;a.Za=h[0][0].length;var l=h[0][0][0];a.lb=l&&l.length||512;for(d=c=0;d<a.fb;d++)for(f=0;f<a.gb;f++)for(g=0;g<a.Za;g++)if(l=h[d][f][g]){var m=l.length;void 0===m&&(m=l.length=512);var m=m>>2,q=l.pattern;void 0===q&&(q=l.pattern=0);var y=l.data;if(void 0===y){var w=l.bytes;if(void 0!==w&&w.length){for(var z=m<<2,B=w.length;B<
z;B++)w[B]=q;is(l,w,0)}else l.data=y=[],w&&(l.pattern=q|q<<8|q<<16|q<<24);delete l.bytes}fs(l,d,f);for(z=0;z<y.length;z++)c=c+y[z]&-1}a.A=h;a.I=c;e=a}else r("Empty disk image: "+a.Qc)}catch(S){r("Disk image error ("+b+"): "+S.message)}}a.H&&(a.H.call(a.M,a.B,e,a.Qc,a.F),a.H=null)}function js(a,b){var c=a.gb*a.Za,d=b/c|0;return d<a.fb?(b%=c,a.seek(d,b/a.Za|0,b%a.Za+1)):null}function ks(a,b,c){for(var d=1,e=0,f=0;d--;){var g=a.read(b,c++);if(0>g)break;e|=g<<f;f+=8}return e}
function fs(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Ck=b;a.Dk=c;a.Mc=a.uc=0;a.Da=!1;return a}function gs(a,b){b="action=open&volume="+b+("&mode="+a.mode);b+="&chs="+a.fb+":"+a.gb+":"+a.Za+":"+a.lb;b+="&machine="+ds(a.controller);b+="&user="+es(a.controller);return Ca()+"/api/v1/disk?"+b}
@ -599,12 +599,12 @@ function is(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]
k.write=function(a,b,c){if(this.qe)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.uc?f<a.Mc?(a.uc+=a.Mc-f,a.Mc=f):f>=a.Mc+a.uc&&(a.uc+=f-(a.Mc+a.uc)+1):(a.Mc=f,a.uc=1);d[f]=d[f]&~(255<<b)|c<<b;this.C&&ns(this,a,!0)}return!0}return null};function qs(a){for(var b="",c=0,d;d=js(a,c++);)for(var e=0,f=d.length;e<f;e++)b+=String.fromCharCode(ks(a,d,e));return btoa(b)}
k.save=function(){var a=0,b=[];b[a++]=[this.F,this.I,this.fb,this.gb,this.Za,this.lb];if(!this.C&&!this.qe)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.uc){for(var h=[],l=0,m=g.Mc,q=g.Mc+g.uc;m<q;)h[l++]=g.data[m++];b[a++]=[d,e,f,g.Mc,h]}}return b};
k.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?bs(this,"local",e[2],e[3],e[4],e[5]):null!=e[0]&&null!=e[1]&&null!=this.I&&e[1]!=this.I&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.I+")",b=-2));for(this.A.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],l=g[f++],m=g[f++];if(h>=this.A.length||l>=this.A[h].length||m>=this.A[h][l].length){c="sector (CHS="+h+":"+l+":"+m+") out of range ("+
b+" changes applied)";b=-1;break}if(this.qe){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][l][m]){for(l=h.data.length;l<e;)h.data[l++]=h.pattern;l=0;h.Mc=e;for(h.uc=f.length;e<g;)h.data[e++]=f[l++];b++}}}0>b&&-2!=b&&this.xa("Unable to restore disk '"+this.Qc+": "+c);return b};
b+" changes applied)";b=-1;break}if(this.qe){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][l][m]){for(l=h.data.length;l<e;)h.data[l++]=h.pattern;l=0;h.Mc=e;for(h.uc=f.length;e<g;)h.data[e++]=f[l++];b++}}}0>b&&-2!=b&&this.wa("Unable to restore disk '"+this.Qc+": "+c);return b};
k.toJSON=function(){var a;a=0;for(var b;b=js(this,a++);)rs(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 rs(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 as=0;function ss(a){t.call(this,"FDC",a);this.dmaRead=ss.prototype.bk;this.dmaWrite=ss.prototype.ck;this.dmaFormat=ss.prototype.sk;this.L=ts(a.autoMount);this.K=a.sortBy||"name";"none"==this.K&&(this.K=null);this.B=[];this.M=!Ha("Mobi")&&window&&"FileReader"in window}ba(ss,t);k=ss.prototype;
k.wb=function(a,b,c){var d=this;switch(b){case "listDisks":this.ia[b]=c;if(this.K){b=[];for(a=0;a<c.options.length;a++)b.push(c.options[a]);b.sort(function(a,b){return"path"!=d.K?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.ia.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("("+b+")")}catch(h){r("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.ia[b]=c,c.onchange=function(){var a=na(c.value,10);null!=a&&us(d,a)},!0;case "loadDisk":return this.ia[b]=c,c.onclick=function(){var a=d.ia.listDisks;a&&vs(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDisk":if(!this.M){c.parentNode.removeChild(c);break}this.ia[b]=c;c.onclick=function(){var a=d.ia.listDrives;a&&a.options&&d.A&&((a=d.A[na(a.value,
10)||0])?(a=a.sa)?(a=Ka(qs(a),"octet-stream",!0,a.qh.replace(".json",".img")),r(a)):d.xa("No diskette loaded in drive."):d.xa("No diskette drive selected."))};return!0;case "mountDisk":if(this.M)return this.ia[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;vs(d,pa(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1};
10)||0])?(a=a.sa)?(a=Ka(qs(a),"octet-stream",!0,a.qh.replace(".json",".img")),r(a)):d.wa("No diskette loaded in drive."):d.wa("No diskette drive selected."))};return!0;case "mountDisk":if(this.M)return this.ia[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;vs(d,pa(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1};
k.ic=function(a,b,c,d){this.ma=b;this.U=c;this.Ea=d;this.oa=a;this.V=vb(a,"ChipSet");ts(Mc(this.oa,"autoMount"),this.L);ws(this);kc(b,this,xs);mc(b,this,ys);zs(this,"None","",!0);this.M&&zs(this,"Local Disk","?");zs(this,"Remote Disk","??");As(this)||mb(this)};function ts(a,b){if(a){if("string"==typeof a)try{a=eval("("+a+")")}catch(d){r("FDC auto-mount error: "+d.message+" ("+a+")"),a={}}}else a={};for(var c in a)b&&(b[c]=a[c]);return a}
k.Ob=function(a,b){if(!b){if(!a){if(this.reset(),this.oa.O){this.B=[];for(a=0;a<this.A.length;a++)Bs(this,a,!0);As(this,!0)}}else if(!this.restore(a))return!1;if(a=this.ia.listDrives){for(;a.firstChild;)a.removeChild(a.firstChild);a.value="";for(b=0;b<this.O;b++){var c=document.createElement("option");c.value=b;c.text=String.fromCharCode(65+b)+":";a.appendChild(c)}0<this.O&&(a.value="0",us(this,0))}}return!0};k.Nb=function(a){return a?this.save():!0};k.reset=function(){ws(this)};
k.save=function(){var a=new Qe(this);a.set(0,Cs(this));return a.data()};k.restore=function(a){return ws(this,a[0])};
@ -612,12 +612,12 @@ function ws(a,b){var c=0,d,e=!0;b||(b=[0,0,Ds,Array(9),0,0,0,[]]);a.La=b[c++];c+
80;g.Za=9;break;case 1200:g.fb=80;g.Za=15;break;case 1440:g.fb=80,g.Za=18}}var l=a,m=d,q=f[d],y=0;h=!0;g.La=m;g.ke=g.me=!1;q||(q=[Es,!0,0,2,0]);"boolean"==typeof q[1]&&(q[1]=[Fs,g.fb||40,g.gb||q[3],g.Za||9,g.lb||512,q[1],g.Mf,g.Re,g.Se]);g.hb=q[y++];var w=q[y++];g.name=w[0];g.fb=w[1];g.gb=w[2];g.Za=w[3];g.lb=w[4];g.ne=w[5];(g.Mf=w[6])?(g.Re=w[7],g.Se=w[8]):(g.Mf=g.fb,g.Re=g.gb,g.Se=g.Za);g.Sa=q[y++];g.sd=q[y++];g.ub=q[y++];g.sd=100<=g.sd?g.sd-100:g.sd-g.ub;g.kb=q[y++];g.td=q[y++];g.tb=q[y++];g.Oa=
q[y++];g.Ra=null;g.sa||(g.Sd="");var z=q[y++];102==z&&(z=!1);"boolean"==typeof z?(w=q[y++],q=q[y],z?(y=l.A[m],Bs(l,m,!0,!0),y.me=!0,m=new $r(l,y,"preload"),l.li(y,m,w,q,!0)):Gs(l,m,w,q,!0)?g.sa&&q&&Hs(l,w,q,g.sa):mb(l,!1)):void 0!==z&&g.sa&&0>g.sa.restore(z)&&(h=!1);h&&g.sa&&void 0!==g.Oa&&(g.Ra=g.sa.seek(g.ub,g.Sa,g.kb));h||(e=!1)}a.H=b[c++]||0;a.F=b[c]||Is;return e}
function Cs(a){var b=0,c=[];c[b++]=a.La;c[b++]=0;c[b++]=a.Y;c[b++]=a.G;c[b++]=a.D;c[b++]=a.C;c[b++]=a.I;for(var d=b++,e=0,f=[],g=0;g<a.A.length;g++){var h=e++,l=a.A[g],m=0,q=[];q[m++]=l.hb;q[m++]=[l.name,l.fb,l.gb,l.Za,l.lb,l.ne,l.Mf,l.Re,l.Se];q[m++]=l.Sa;q[m++]=l.sd+100;q[m++]=l.ub;q[m++]=l.kb;q[m++]=l.td;q[m++]=l.tb;q[m++]=l.Oa;q[m++]=l.me;q[m++]=l.Sj;q[m]=l.Sd;f[h]=q}c[d]=f;d=b++;for(e=0;e<a.A.length;e++)f=a.A[e],f.sa&&Js(a,f.Sd,f.sa);c[d]=a.B;c[b++]=a.H;c[b]=a.F;return c}
function As(a,b){b||(a.J=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.ia.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=pa(e,!0)}!Gs(a,f,d||"Unknown",e,!0)&&b&&mb(a,!1)}else a.xa("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")")}}return!!a.J}
function vs(a,b,c,d){var e,f=a.ia.listDrives;if(f&&!isNaN(e=na(f.value,10))&&0<=e&&e<a.A.length)if(c)if("?"==c)a.xa('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=pa(c)}for(;0>Gs(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.B.length;h++)if(f.B[h][1]==g){f.B.splice(h,1);break}Bs(a,e,!1,
!0)}}else Bs(a,e);else a.xa("Unable to load the selected drive")}function Gs(a,b,c,d,e,f){var g=a.A[b];if(d&&(d=d.replace("/disks/pc/","/disks/pcx86/"),g.Sd.toLowerCase()!=d.toLowerCase())){Bs(a,b,e,!0);if(g.ke)return a.xa("Drive "+b+" busy"),0;g.ke=!0;e&&(g.Gd=!0,a.J++);g.me=!!f;return(new $r(a,g,"preload")).load(c,d,f,a.li)?1:0}return-1}
k.li=function(a,b,c,d,e){var f;a.ke=!1;b&&(f=b.info(),b&&f[0]>a.fb||f[1]>a.gb)&&(this.xa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.La)),b=null);b?(a.sa=b,a.Sj=c,a.Sd=d,Hs(this,c,d,b),f=b.info(),this.H|=Ks,this.xa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.La),a.Gd||e),a.Mf=f[0],a.Re=f[1],a.Se=f[2],this.oa&&Zc(this.oa)):a.me=!1;a.Gd&&(a.Gd=!1,--this.J||mb(this));us(this,a.La)};
function As(a,b){b||(a.J=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.ia.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=pa(e,!0)}!Gs(a,f,d||"Unknown",e,!0)&&b&&mb(a,!1)}else a.wa("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")")}}return!!a.J}
function vs(a,b,c,d){var e,f=a.ia.listDrives;if(f&&!isNaN(e=na(f.value,10))&&0<=e&&e<a.A.length)if(c)if("?"==c)a.wa('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=pa(c)}for(;0>Gs(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.B.length;h++)if(f.B[h][1]==g){f.B.splice(h,1);break}Bs(a,e,!1,
!0)}}else Bs(a,e);else a.wa("Unable to load the selected drive")}function Gs(a,b,c,d,e,f){var g=a.A[b];if(d&&(d=d.replace("/disks/pc/","/disks/pcx86/"),g.Sd.toLowerCase()!=d.toLowerCase())){Bs(a,b,e,!0);if(g.ke)return a.wa("Drive "+b+" busy"),0;g.ke=!0;e&&(g.Gd=!0,a.J++);g.me=!!f;return(new $r(a,g,"preload")).load(c,d,f,a.li)?1:0}return-1}
k.li=function(a,b,c,d,e){var f;a.ke=!1;b&&(f=b.info(),b&&f[0]>a.fb||f[1]>a.gb)&&(this.wa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.La)),b=null);b?(a.sa=b,a.Sj=c,a.Sd=d,Hs(this,c,d,b),f=b.info(),this.H|=Ks,this.wa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.La),a.Gd||e),a.Mf=f[0],a.Re=f[1],a.Se=f[2],this.oa&&Zc(this.oa)):a.me=!1;a.Gd&&(a.Gd=!1,--this.J||mb(this));us(this,a.La)};
function zs(a,b,c,d){if((a=a.ia.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 us(a,b){if(0<=b&&b<a.A.length){var c=a.A[b],d=a.ia.listDisks;a=a.ia.listDrives;if(d&&a&&d.options&&a.options&&(a=na(a.value,10),c=c.me?"?":c.Sd,!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 Bs(a,b,c,d){var e=a.A[b];e.sa&&(Js(a,e.Sd,e.sa),e.Sj="",e.Sd="",e.sa=null,e.me=!1,a.H|=Ks,d||a.xa("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||us(a,b))}
function us(a,b){if(0<=b&&b<a.A.length){var c=a.A[b],d=a.ia.listDisks;a=a.ia.listDrives;if(d&&a&&d.options&&a.options&&(a=na(a.value,10),c=c.me?"?":c.Sd,!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 Bs(a,b,c,d){var e=a.A[b];e.sa&&(Js(a,e.Sd,e.sa),e.Sj="",e.Sd="",e.sa=null,e.me=!1,a.H|=Ks,d||a.wa("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||us(a,b))}
function Hs(a,b,c,d){var e;for(e=0;e<a.B.length;e++)if(a.B[e][1]==c){d.restore(a.B[e][2]);return}a.B[e]=[b,c,[]]}function Js(a,b,c){var d;for(d=0;d<a.B.length;d++)if(a.B[d][1]==b){a.B[d][2]=c.save();break}}k.Am=function(a,b){b&Ls?this.I&Ls||this.I&Ms&&this.V&&Hf(this.V,6):ws(this);this.I=b};k.el=function(){return 80};k.gl=function(){return this.Y};k.dl=function(){var a=0;this.D<this.C&&(a=this.G[this.D]);this.I&Ms&&this.V&&Ff(this.V,6);++this.D>=this.C&&(this.Y&=~(Ns|Os),this.D=this.C=0);return a};
k.zm=function(a,b){this.C<this.G.length&&(this.G[this.C++]=b);a=this.G[0]&Ps;if(void 0!==Qs[a]&&this.C>=Qs[a].ed){b=!1;this.D=0;a=Rs(this);var c,d,e,f,g,h=a&Ps;switch(h){case Ss:Rs(this);Rs(this);Ts(this);break;case Us:d=Rs(this);this.La=d&3;c=this.A[this.La];Ts(this);Vs(this,(c.hb&Ws)>>>24);break;case Xs:case Ys:d=Rs(this);b=d>>2&1;this.La=d&3;c=this.A[this.La];c.Sa=b;d=c.ub=Rs(this);e=Rs(this);f=c.kb=Rs(this);g=Rs(this);c.tb=128<<g;c.td=Rs(this);Rs(this);Rs(this);h==Ys?(h=c,h.hb=Zs|$s,h.sa&&(h.Ra=
null,h.hb=at,this.V&&(wl(this.V,2,this,"dmaRead",h),sl(this.V,2)))):(h=c,h.hb=Zs|$s,h.sa&&(h.sa.qe?h.hb=bt|$s:(h.Ra=null,h.hb=at,this.V&&(wl(this.V,2,this,"dmaWrite",h),sl(this.V,2)))));ct(this,c,a,b,d,e,f,g);b=!0;break;case dt:d=Rs(this);this.La=d&3;c=this.A[this.La];c.ub=c.sd=0;c.hb=et|ft;Ts(this);b=!0;break;case gt:c=this.A[this.La];c.Sa=0;Ts(this);Vs(this,c.La|c.Sa<<2|c.hb&ht);Vs(this,c.ub);this.La=this.La+1&3;break;case it:d=Rs(this);b=d>>2&1;this.La=d&3;c=this.A[this.La];d=c.ub;e=c.Sa=b;f=c.kb=
@ -628,17 +628,17 @@ k.ve=function(a,b){var c=-1,d=null,e=0;if(!a.hb&&a.sa){do{if(a.Ra&&(e=a.Oa,0<=(c
var Fs="Floppy Drive",Ls=4,Ms=8,Os=16,Ns=64,Ds=128,Ss=3,Us=4,Xs=5,Ys=6,dt=7,gt=8,it=10,jt=13,kt=15,Ps=31,nt=128,at=0,Zs=8,et=32,$s=64,Es=192,ht=255,bt=512,pt=1024,rt=8192,lt=65280,mt=16711680,ft=268435456,Ws=-16777216,Ks=128,Is=0;aa={};
var Qs={3:{ed:3,ud:0,name:aa.Co},4:{ed:2,ud:1,name:aa.Ao},5:{ed:9,ud:7,name:aa.Go},6:{ed:9,ud:7,name:aa.wo},7:{ed:2,ud:0,name:aa.yo},8:{ed:1,ud:2,name:aa.Bo},10:{ed:2,ud:7,name:aa.xo},13:{ed:6,ud:7,name:aa.to},15:{ed:3,ud:0,name:aa.zo}},xs={1009:ss.prototype.el,1012:ss.prototype.gl,1013:ss.prototype.dl,1015:ss.prototype.fl},ys={1010:ss.prototype.Am,1013:ss.prototype.zm,1015:ss.prototype.ym};
Ma(function(){for(var a=eb(document,"pcx86","fdc"),b=0;b<a.length;b++){var c=a[b],d=bb(c),d=new ss(d);db(d,c)}});function Z(a){t.call(this,"HDC",a);this.dmaRead=Z.prototype.dk;this.dmaWrite=Z.prototype.ek;this.dmaWriteBuffer=Z.prototype.tk;this.dmaWriteFormat=Z.prototype.uk;this.X=[];this.ja=a.drives;this.L="at"==a.type}ba(Z,t);k=Z.prototype;
k.wb=function(a,b,c){var d=this;switch(b){case "saveHD0":case "saveHD1":return this.ia[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.qh||b.Qc,e=c.lastIndexOf(".");0<=e&&(c=c.substr(0,e));c+=".img";b=Ka(qs(b),"octet-stream",!0,c);r(b)}else d.xa("Hard drive "+a+" is not available.")}}(+b.slice(-1)),!0}return!1};
k.wb=function(a,b,c){var d=this;switch(b){case "saveHD0":case "saveHD1":return this.ia[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.qh||b.Qc,e=c.lastIndexOf(".");0<=e&&(c=c.substr(0,e));c+=".img";b=Ka(qs(b),"octet-stream",!0,c);r(b)}else d.wa("Hard drive "+a+" is not available.")}}(+b.slice(-1)),!0}return!1};
k.ic=function(a,b,c,d){this.ma=b;this.U=c;this.Ea=d;this.oa=a;if(d=Mc(a,"drives"))this.X=d;else if(this.ja)try{this.X=eval("("+this.ja+")")}catch(e){r("HDC drive configuration error: "+e.message+" ("+this.ja+")")}this.V=vb(a,"ChipSet");this.F=0;this.la=3;kc(b,this,this.L?st:tt);mc(b,this,this.L?ut:vt);this.L&&(this.F++,this.V&&this.V.aa==Mj&&this.F++,this.la=2,b.M[wt]=2,b.O[wt]=2);Me(c,19,this.Jl.bind(this));Me(c,64,this.Kl.bind(this));this.reset();xt(this)||mb(this)};
k.Ob=function(a,b){if(!b)if(!a)yt(this),this.oa.O&&xt(this,!0);else if(!this.restore(a))return!1;return!0};k.Nb=function(a){return a?this.save():!0};function ds(a){return a.oa?a.oa.ga:""}function es(a){return a.oa?a.oa.B||"":""}k.reset=function(){yt(this,null,!0)};k.save=function(){var a=new Qe(this);a.set(0,zt(this));return a.data()};k.restore=function(a){return yt(this,a[0])};
function yt(a,b,c){var d=0,e=!0;a.La=-1;if(a.L){if(b||(b=[0,0,0,0,0,0,0,At,0,[0,-1]]),a.H=b[d++],a.ta=b[d++],a.I=b[d++],a.ea=b[d++],a.ba=b[d++],a.Z=b[d++],a.O=b[d++],a.Y=b[d++],a.ga=b[d++],a.K=b[d++],"object"==typeof a.K){var f=a.K;a.K=f[0];a.La=f[1]}}else b||(b=[0,Bt,Array(14),0,0]),a.W=b[d++],a.Y=b[d++],a.G=b[d++],a.D=b[d++],a.C=b[d++],a.qa=b[d++],a.pa=b[d++],a.na=b[d++],f=b[d++],void 0!==f?a.M=f:void 0===a.M&&(a.M=-1);void 0===a.A&&(a.A=Array(a.X.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,l=f,m=a.X[d],q=b[d],y=c,w=0,z=!0;q||(q=[Ct,0,!1,Array(8)]);l.La=h;l.errorCode=q[w++];l.Tj=q[w++];l.ne=q[w++];l.ce=q[w++];l.de=q[w++];l.Sa=q[w++];l.gb=q[w++];l.Bd=q[w++];l.kb=q[w++];l.td=q[w++];l.tb=q[w++];l.wf=g.L?0:1;l.name=m.name;void 0===l.name&&(l.name=Dt);l.path=m.path;l.mode=m.mode||(l.path?"preload":"local");"demandro"!=l.mode&&"demandrw"!=l.mode||es(g)||(l.mode="local");l.type=m.type;if(void 0===l.type||void 0===Et[g.F][l.type])l.type=g.la;m=Et[g.F][l.type];
l.Za=m[2]||17;l.lb=m[3]||512;if(y&&g.V){var m=g.V,B=l.type;if(m.A){var y=null,S=m.A[18];15<B&&(y=B,B=15);h?(S=S&240|B,B=26):(S=S&15|B<<4,B=25);var X=m;X.A&&(X.A[18]=S,wk(X));null!=y&&m.A&&(m.A[B]=y,wk(m))}}void 0===l.sa&&(l.sa=null,g.xa("Type "+l.type+' "'+l.name+'" is fixed disk '+h,!0));Ft(g,l);l.Oa=q[w++];l.Ra=null;l.sa&&(g=q[w],void 0!==g&&0>l.sa.restore(g)&&(z=!1),z&&void 0!==l.Oa&&(l.Ra=l.sa.seek(l.Bd,l.Sa,l.kb+l.wf)));z||(e=!1);null!=a.W&&1>=d&&(a.W|=(f.type&3)<<(1-d<<1))}0<=a.La&&(a.B=a.A[a.La]);
l.Za=m[2]||17;l.lb=m[3]||512;if(y&&g.V){var m=g.V,B=l.type;if(m.A){var y=null,S=m.A[18];15<B&&(y=B,B=15);h?(S=S&240|B,B=26):(S=S&15|B<<4,B=25);var X=m;X.A&&(X.A[18]=S,wk(X));null!=y&&m.A&&(m.A[B]=y,wk(m))}}void 0===l.sa&&(l.sa=null,g.wa("Type "+l.type+' "'+l.name+'" is fixed disk '+h,!0));Ft(g,l);l.Oa=q[w++];l.Ra=null;l.sa&&(g=q[w],void 0!==g&&0>l.sa.restore(g)&&(z=!1),z&&void 0!==l.Oa&&(l.Ra=l.sa.seek(l.Bd,l.Sa,l.kb+l.wf)));z||(e=!1);null!=a.W&&1>=d&&(a.W|=(f.type&3)<<(1-d<<1))}0<=a.La&&(a.B=a.A[a.La]);
return e}
function zt(a){var b=0,c=[];a.L?(c[b++]=a.H,c[b++]=a.ta,c[b++]=a.I,c[b++]=a.ea,c[b++]=a.ba,c[b++]=a.Z,c[b++]=a.O,c[b++]=a.Y,c[b++]=a.ga,c[b++]=[a.K,a.La]):(c[b++]=a.W,c[b++]=a.Y,c[b++]=a.G,c[b++]=a.D,c[b++]=a.C,c[b++]=a.qa,c[b++]=a.pa,c[b++]=a.na,c[b++]=a.M);for(var d=0,e=[],f=0;f<a.A.length;f++){var g=d++,h=a.A[f],l=0,m=[];m[l++]=h.errorCode;m[l++]=h.Tj;m[l++]=h.ne;m[l++]=h.ce;m[l++]=h.de;m[l++]=h.Sa;m[l++]=h.gb;m[l++]=h.Bd;m[l++]=h.kb;m[l++]=h.td;m[l++]=h.tb;m[l++]=h.Oa;m[l]=h.sa?h.sa.save():null;
e[g]=m}c[b]=e;return c}function Ft(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.ce[2])?e=b.ce[0]<<8|b.ce[1]:c=b.type);null==c||d||(d=Et[a.F][c][1],e=Et[a.F][c][0]);d&&((c=Et[a.F][b.type])&&e!=c[0]&&d!=c[1]&&a.xa("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.fb=e,b.gb=d,null==b.sa&&(b.sa=new $r(a,b,b.mode)))}}
function xt(a,b){b||(a.J=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.Ff)){var e;e=a;var f=d.name,d=d.path,g=e.A[c];g.ke?(e.xa("Drive "+c+" busy"),e=!0):(g.ke=!0,g.Gd=!0,e.J++,(g.sa||new $r(e,g,g.mode)).load(f,d,null,e.vk),e=!1);!e&&b&&mb(a,!1)}}else b&&void 0!==d.type&&(d.sa=null,Ft(a,d,d.type))}return!!a.J}
k.vk=function(a,b,c){a.ke=!1;if(a.sa=b)this.xa('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.La),a.Gd),b=b.info(),b[0]==a.fb&&b[1]==a.gb&&b[2]==a.Za&&b[3]==a.lb||this.xa("Warning: disk geometry ("+b[0]+":"+b[1]+":"+b[2]+") does not match "+Gt[this.F]+" drive type "+a.type+" ("+a.fb+":"+a.gb+":"+a.Za+")");a.Gd&&(a.Gd=!1,--this.J||mb(this))};
e[g]=m}c[b]=e;return c}function Ft(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.ce[2])?e=b.ce[0]<<8|b.ce[1]:c=b.type);null==c||d||(d=Et[a.F][c][1],e=Et[a.F][c][0]);d&&((c=Et[a.F][b.type])&&e!=c[0]&&d!=c[1]&&a.wa("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.fb=e,b.gb=d,null==b.sa&&(b.sa=new $r(a,b,b.mode)))}}
function xt(a,b){b||(a.J=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.Ff)){var e;e=a;var f=d.name,d=d.path,g=e.A[c];g.ke?(e.wa("Drive "+c+" busy"),e=!0):(g.ke=!0,g.Gd=!0,e.J++,(g.sa||new $r(e,g,g.mode)).load(f,d,null,e.vk),e=!1);!e&&b&&mb(a,!1)}}else b&&void 0!==d.type&&(d.sa=null,Ft(a,d,d.type))}return!!a.J}
k.vk=function(a,b,c){a.ke=!1;if(a.sa=b)this.wa('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.La),a.Gd),b=b.info(),b[0]==a.fb&&b[1]==a.gb&&b[2]==a.Za&&b[3]==a.lb||this.wa("Warning: disk geometry ("+b[0]+":"+b[1]+":"+b[2]+") does not match "+Gt[this.F]+" drive type "+a.type+" ("+a.fb+":"+a.gb+":"+a.Za+")");a.Gd&&(a.Gd=!1,--this.J||mb(this))};
k.Gl=function(){var a=0;this.D<this.C&&(a=this.G[this.D]);this.V&&Ff(this.V,5);this.Y&=~Ht;++this.D>=this.C&&(this.D=this.C=0,this.Y&=~(It|Mt|Nt));return a};k.Wm=function(a,b){this.C<this.G.length&&(this.G[this.C++]=b);a=this.G[0]!=Ot?6:this.G.length;6==this.C&&(this.Y&=~Pt);this.C>=a&&(this.Y|=It,this.Y&=~Pt,Qt(this))};k.Hl=function(){var a=this.Y;this.D<this.C&&(this.Y|=Pt);return a};k.Zm=function(a,b){this.qa=b;this.V&&Ff(this.V,5);yt(this)};k.Fl=function(){return this.W};
k.Ym=function(a,b){this.pa=b;this.Y=Pt|Mt|Nt};k.Xm=function(a,b){this.na=b};k.mh=function(){};function Rt(a){var b=-1;a.B&&(b=a.ve(a.B,function(){}),(1==a.B.Oa||a.B.Oa==a.B.lb)&&1<a.B.Oa&&(a.B.tb-=a.B.lb,a.I=a.I-1&255,a.B.tb>=a.B.lb?(a.Y=St,a.ve(a.B,function(b){0<=b?(Tt(a),a.V&&a.V.aa==Mj&&(a.Y=0),a.Y=a.Y|At|Ut|Vt):(a.Y=Wt,a.H=Xt)},!1)):a.Y=At|Ut));return b}k.fk=function(){return Rt(this)|Rt(this)<<8};
function Yt(a,b){a.B&&a.B.tb>=a.B.lb&&(0>Zt(a.B,b)?(a.Y=Wt,a.H=Xt):(1==a.B.Oa||a.B.Oa==a.B.lb)&&1<a.B.Oa&&(a.B.tb-=a.B.lb,a.I=a.I-1&255,Tt(a),a.Y=At|Ut,a.B.tb>=a.B.lb&&(a.Y|=Vt)))}k.gm=function(a,b){Yt(this,b&255);Yt(this,b>>8&255)};k.Nk=function(){return this.H};k.lm=function(a,b){this.ta=b};k.Pk=function(){return this.I};k.jm=function(a,b){this.I=b};k.Qk=function(){return this.ea};k.km=function(a,b){this.ea=b};k.Lk=function(){return this.ba};k.fm=function(a,b){this.ba=b};k.Kk=function(){return this.Z};
@ -657,23 +657,23 @@ var Dt="Hard Drive",Gt=["XTC","ATC","COMPAQ"],Et=[{0:[306,2],1:[375,8],2:[306,6]
112,gu=144,nu=145,hu=240,ou=2,bu=4,uu=0,vu=2,yu=0,zu=1,qu=3,Au=5,Bu=8,Du=10,Ot=12,Fu=15,wu=224,xu=228,Ct=0,su=4,Hu=20,Bt=0,Pt=1,It=2,Mt=4,Nt=8,Ht=32,tt={800:Z.prototype.Gl,801:Z.prototype.Hl,802:Z.prototype.Fl},st={496:Z.prototype.fk,497:Z.prototype.Nk,498:Z.prototype.Pk,499:Z.prototype.Qk,500:Z.prototype.Lk,501:Z.prototype.Kk,502:Z.prototype.Mk,503:Z.prototype.Rk},vt={800:Z.prototype.Wm,801:Z.prototype.Zm,802:Z.prototype.Ym,803:Z.prototype.Xm,807:Z.prototype.mh,811:Z.prototype.mh,815:Z.prototype.mh},
ut={496:Z.prototype.gm,497:Z.prototype.lm,498:Z.prototype.jm,499:Z.prototype.km,500:Z.prototype.fm,501:Z.prototype.em,502:Z.prototype.hm,503:Z.prototype.dm,1014:Z.prototype.im};Ma(function(){for(var a=eb(document,"pcx86","hdc"),b=0;b<a.length;b++){var c=a[b],d=bb(c),d=new Z(d);db(d,c)}});
function Ju(a,b,c){t.call(this,"Computer",a);this.ca.Pb=!1;Ku(this,b);this.M=Mc(this,"autoPower",a);this.C=0;this.Z=a.busWidth||a.buswidth;this.A=Lu;this.K=null;this.H=this.X=!1;this.ba=Mc(this,"url")||"";this.ga=(Math.random()+.1).toString(36).substr(2,12);this.B=Mu(this);if(this.U=ab("CPU",this.id)){this.Ea=ab("Debugger",this.id);this.G=[];for(b=null;b=vb(this,"Video",b);)this.G.push(b);this.ma=new Nb({id:this.Wd+".bus",busWidth:this.Z},this.U,this.Ea);var d,e=Ya(this.id);if((this.D=ab("Panel",
this.id))&&this.D.Df)for(b=0;b<e.length;b++)d=e[b],d.xa=this.D.xa,d.Zb=this.D.Zb,d.Df=this.D.Df;this.Zb("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.ic&&d.ic(this,this.ma,this.U,this.Ea);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.J=d:this.A=parseInt(d,10));var f;if(a=Mc(this,"state")||(f=!0,a.state))b=this.V=a,f||(this.H=!0,this.A=Lu),this.A&&(this.L=new Qe(this,"1.35.1"),
this.L.load()?b=null:delete this.L);!b&&this.A&&(b=Nu(this))&&(this.H=!0);if(b){var g=this;Ba(b,null,!0,function(a,b,c){c?(g.J=null,g.H=!1,g.xa("Unable to load machine state from server (error "+c+(b?": "+ua(b):"")+")")):(g.K=b,g.X=!0);mb(g)})}else mb(this);this.ia.power||(this.M=!0);!c&&this.M&&Ou(this,this.af)}else r("Unable to find CPU component")}ba(Ju,t);
this.id))&&this.D.Df)for(b=0;b<e.length;b++)d=e[b],d.wa=this.D.wa,d.Zb=this.D.Zb,d.Df=this.D.Df;this.Zb("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.ic&&d.ic(this,this.ma,this.U,this.Ea);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.J=d:this.A=parseInt(d,10));var f;if(a=Mc(this,"state")||(f=!0,a.state))b=this.V=a,f||(this.H=!0,this.A=Lu),this.A&&(this.L=new Qe(this,"1.35.1"),
this.L.load()?b=null:delete this.L);!b&&this.A&&(b=Nu(this))&&(this.H=!0);if(b){var g=this;Ba(b,null,!0,function(a,b,c){c?(g.J=null,g.H=!1,g.wa("Unable to load machine state from server (error "+c+(b?": "+ua(b):"")+")")):(g.K=b,g.X=!0);mb(g)})}else mb(this);this.ia.power||(this.M=!0);!c&&this.M&&Ou(this,this.af)}else r("Unable to find CPU component")}ba(Ju,t);
function Ku(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){r(d.message+" ("+c+")")}}a.I=b}function Mc(a,b,c){var d=b.toLowerCase(),d=Ia(b)||Ia(d);void 0===d&&a.I&&(d=a.I[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}function Ou(a,b,c){for(var d=Ya(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!lb(f)){lb(f,function(){Ou(a,b,c)});return}}b.call(a,c)}
function Pu(a,b){var c=new Qe(a,"1.35.1",Qu);if(c.load()&&Ru(c)){var d=c.get(Su),e=b?b.get(Su):"unknown";d!=e&&(a.xa("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}k=Ju.prototype;
function Pu(a,b){var c=new Qe(a,"1.35.1",Qu);if(c.load()&&Ru(c)){var d=c.get(Su),e=b?b.get(Su):"unknown";d!=e&&(a.wa("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}k=Ju.prototype;
k.af=function(a){void 0===a&&(a=this.A||(this.K?Tu:Lu));if(!this.C){this.C++;var b=!1,c=!1;this.W=!1;var d=this.L||new Qe(this,"1.35.1");if(a==Uu)b=!0;else if(a>Lu){if(d.load(this.K)){this.F=new Qe(this,"1.35.1",Vu);this.F.load()&&(Wu(this,d),a=Xu,Yu(this.F));this.F.set(Su,wa());Zu(this.F);var e=this.A&&!this.H;if(a==Tu||Xa("Click OK to restore the previous PCx86 machine state, or CANCEL to reset the machine.")){if(c=Ru(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=
g?(this.xa("Error: "+g),"unable to verify user"==g&&(Ga($u,""),this.B=null)):this.Zb(f+": "+g),Yu(d),d.load()?(c=Ru(d),e=!0):c=!1))}e&&Pu(this,c?d:null)}else a==Xu&&d.clear()}else Pu(this);delete this.K;delete this.L}e=Ya(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.U&&(c=av(this,g,d,b,c));b=[d,a,c];a!=Uu?Ou(this,this.mi,b):this.mi(b)}};
function av(a,b,c,d,e){if(!b.ca.Pb){b.ca.Pb=!0;if(b.Ob){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.Ob(f,d)&&f&&(r("Unable to restore state for "+b.type),a.V&&!a.X?(c.clear(),a.A=Lu,window&&window.location.reload()):a.W=!0,b.Ob(null),e=!1)}if(!d&&b.vi)for(a=b.vi.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
g?(this.wa("Error: "+g),"unable to verify user"==g&&(Ga($u,""),this.B=null)):this.Zb(f+": "+g),Yu(d),d.load()?(c=Ru(d),e=!0):c=!1))}e&&Pu(this,c?d:null)}else a==Xu&&d.clear()}else Pu(this);delete this.K;delete this.L}e=Ya(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.U&&(c=av(this,g,d,b,c));b=[d,a,c];a!=Uu?Ou(this,this.mi,b):this.mi(b)}};
function av(a,b,c,d,e){if(!b.ca.Pb){b.ca.Pb=!0;if(b.Ob){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.Ob(f,d)&&f&&(b.wa("Unable to restore hardware state"),a.V&&!a.X?(c.clear(),a.A=Lu,window&&window.location.reload()):a.W=!0,b.Ob(null),e=!1)}if(!d&&b.vi)for(a=b.vi.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
k.mi=function(a){var b=a[0],c=0>a[1];a=a[2];this.ea=!0;this.ca.Pb=!0;var d=this.ia.power;d&&(d.textContent="Shutdown");this.U&&(av(this,this.U,b,c,a),this.U.Fe());this.W&&(Wu(this,b),b.clear());!c&&this.F&&(this.F.clear(),delete this.F);this.C=0};
function Wu(a,b){if(Xa("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.B||"";b=b.toString();var d={app:"PCx86",ver:"1.35.1"};d.url=a.ba;d.user=c;d.type="bug";d.data=b;Ba("http://www.pcjs.org/api/v1/report",d,!0)}}
function bv(a,b,c){var d,e="none";if(a.C)return null;a.C--;var f=new Qe(a,"1.35.1"),g=new Qe(a,"1.35.1",Qu),h=wa();g.set(Su,h);f.set(Su,h);f.set(cv,"1.35.1");f.set(dv,window?window.location.href:null);f.set(ev,window?window.navigator.userAgent:"");a.U&&a.U.Nb&&(c&&Qc(a.U),d=a.U.Nb(b,c),"object"===typeof d&&f.set(a.U.id,d),c&&(a.U.ca.Pb=!1,!1===d&&(e=null)));for(var h=Ya(a.id),l=0;l<h.length;l++){var m=h[l];m.ca.Pb&&(m.Nb&&(d=m.Nb(b,c),"object"===typeof d&&f.set(m.id,d)),c&&(m.ca.Pb=!1,!1===d&&(e=
null)))}e&&(c?(h=d=!1,b?(a.B&&fv(a,a.B,f.toString()),Zu(g)&&Zu(f)||(e=null,d=h=!0)):a.A&&(d=!0,h=a.A==gv),d&&f.clear(h)):e=f.toString());c&&(a.ca.Pb=!1,b=a.ia.power)&&(b.textContent="Power");a.C=0;return e}k.reset=function(){this.ma&&this.ma.reset&&this.ma.reset();for(var a=Ya(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ma&&c.reset&&c.reset()}};k.start=function(a,b){for(var c=Ya(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};
k.stop=function(a,b){for(var c=Ya(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
k.wb=function(a,b,c){var d=this;switch(b){case "power":return this.ia[b]=c,c.onclick=function(){d.C||(d.ca.Pb?bv(d,!1,!0):Ou(d,d.af))},!0;case "reset":return this.ia[b]=c,c.onclick=function(){if(d.ca.Pb&&!d.C)if(d.A&&!d.J){var a=Xa("Click OK to save changes to this PCx86 machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");bv(d,a,!0);!a&&d.V?window&&window.location.reload():(a||(d.O=!0),d.af(Lu),d.O=!1)}else d.reset(),d.U&&d.U.Fe()},!0;case "save":if(ra(Ca(),"pcjs.org"))c.parentNode.removeChild(c);
else return this.ia[b]=c,c.onclick=function(){var a=Mu(d,!0);if(a){var b=!!(d.A&&!d.J||d.V),c=bv(d,b);b?fv(d,a,c):d.xa("Resume disabled, machine state not saved")}},!0}return!1};
function Mu(a,b){var c=a.B;c||((c=Fa($u),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=hv(a,c))||a.xa("The user ID is invalid.")):b&&a.xa("Browser local storage is not available"));return c}
else return this.ia[b]=c,c.onclick=function(){var a=Mu(d,!0);if(a){var b=!!(d.A&&!d.J||d.V),c=bv(d,b);b?fv(d,a,c):d.wa("Resume disabled, machine state not saved")}},!0}return!1};
function Mu(a,b){var c=a.B;c||((c=Fa($u),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=hv(a,c))||a.wa("The user ID is invalid.")):b&&a.wa("Browser local storage is not available"));return c}
function hv(a,b){a.B=null;b=Ba(Ca()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(Ga($u,b.data),a.B=b.data)}catch(d){r(d.message+" ("+c+")")}return a.B}function Nu(a){var b=null;a.B&&(b=Ca()+"/api/v1/user?req=load&user="+a.B+"&state="+iv(a,"1.35.1"));return b}
function fv(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=iv(a,"1.35.1");d.data=c;b=Ba(Ca()+"/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.xa("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.xa(c),Ga($u,""),a.B=null)}}
function fv(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=iv(a,"1.35.1");d.data=c;b=Ba(Ca()+"/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.wa("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.wa(c),Ga($u,""),a.B=null)}}
function vb(a,b,c){a=Ya(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}function Zc(a,b){if(a.G.length){var c=0,d=0;!b&&window&&(c=window.scrollX,d=window.scrollY);a=a.G[0];a.D&&a.D.focus();!b&&window&&window.scrollTo(c,d)}}
function $c(a,b){a.U&&(a=a.U,a.si&&(b||!a.ca.Ib||a.ca.ki)&&(wf(a,"EAX",a.F),wf(a,"EBX",a.G),wf(a,"ECX",a.H),wf(a,"EDX",a.K),wf(a,"ESP",C(a)),wf(a,"EBP",a.L),wf(a,"ESI",a.J),wf(a,"EDI",a.I),wf(a,"CS",a.ga.ha),wf(a,"DS",a.Ca.ha),wf(a,"SS",a.W.ha),wf(a,"ES",a.ua.ha),wf(a,"EIP",E(a)),b=Ad(a),wf(a,"PS",b),wf(a,"V",b&2048),wf(a,"D",b&1024),wf(a,"I",b&512),wf(a,"T",b&256),wf(a,"S",b&128),wf(a,"Z",b&64),wf(a,"A",b&16),wf(a,"P",b&4),wf(a,"C",b&1),80386==a.aa&&(wf(a,"FS",a.qb.ha),wf(a,"GS",a.rb.ha),wf(a,"CR0",
a.pa),wf(a,"CR2",a.Xd),wf(a,"CR3",a.nd))),b=a.ia.speed)&&(b.textContent=a.ca.Ib&&a.R.wd?a.R.wd.toFixed(2)+"Mhz":"Stopped")}