Added MDA and CGA 5170 configurations, and fixed a problem with 5170 REV2/REV3 floppy-only machines

This commit is contained in:
Jeff Parsons 2016-04-01 15:38:26 -07:00
commit 7a51241486
38 changed files with 615 additions and 352 deletions

View file

@ -41,10 +41,10 @@ f>d&&(f=d);c=f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.Ca)){b=c;if(a.context&&a.ja&
c}}}m.qd=function(){};function Kb(a,b,c,d){a.A.Af[a.A.Ai++]={Qk:b,Ud:c,type:d};return sa(Hb,b,c,0,d)}function Ib(a,b,c,d){var e,f=null.style.color,g=a.Na=10;a.C=g;a.U=b;a.X=a.wa=18;e||(e=a.ua||a.wa+"px Monaco, Lucida Console, Courier New");a.ga=a.ua=e;c&&(a.Ea=c);d&&(a.N=d,a.Fa=f||"white")}
function Jb(a,b,c,d,e){a.N.font=a.ga;a.N.fillStyle=a.Fa;a.N.fillText(b,a.C,a.U);a.C+=a.pa;null!=c&&(16!=a.Tb?b=c.toString():(b=8>a.Ka?"0x":"",b+=r(c,a.Ka)),a.N.fillText(b,a.C,a.U),a.C+=a.pa);d&&(a.C+=a.pa*d);e&&(a.C=a.Na,a.U+=(a.X+2)*(e||1))}function Fb(){for(var a=!1,b=nb(document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=jb(d),f=hb(e.id);f||(a=!0,f=new zb(e));mb(f,d);a&&rb(f)}}Qa(Fb);
function Lb(a,b,c){Ua.call(this,"Bus",a,Lb);this.F=b;this.ha=c;this.N=a.buswidth||20;this.X=Math.pow(2,this.N);this.wg=this.Gb=this.X-1|0;this.La=32==this.N||20>=this.N?12:24>=this.N?14:15;this.Nb=1<<this.La;this.ga=this.Nb>>2;this.A=this.Nb-1;this.U=this.X/this.Nb|0;this.ea=this.U-1;this.B=[];this.C=[];this.L=this.W=!1;this.aa=[];this.fa=[];a=new B;Mb(a,this.ha);this.sa=Array(this.U);for(b=0;b<this.U;b++)this.sa[b]=a;a=this.F;b=this.sa;c=this.La;a.ld=a.sa=b;a.La=c;a.Nb=1<<a.La;a.Fa=a.Nb-1;a.Gd=b.length;
a.jd=a.Gd-1;a=this.F;a.Gb=a.Db=this.Gb;rb(this)}db(Lb);var Hb,Nb={$j:20,count:8,no:1,type:3},Ob=0,Pb;for(Pb in Nb){var Qb=Nb[Pb];Nb[Pb]={lh:(1<<Qb)-1<<Ob,shift:Ob};Ob+=Qb}Hb=Nb;m=Lb.prototype;m.reset=function(){Rb(this,!0)};m.ic=function(a,b){b||this.reset();return!0};
function Sb(a,b,c,d,e){for(var f=b>>>a.La;0<c&&f<a.sa.length;){var g=a.sa[f],h=f*a.Nb,k=c>a.Nb?a.Nb:c;if(g&&g.size){if(g.type==d&&g.controller==e){if(b+c<=g.Da)return g.Ne+=g.Da-b,g.Da=b,!0;if(b>=g.Da+g.Ne){k=g.size-(b-h);k>c&&(k=c);g.Ne=b-g.Da+k;c-=k;b=h+a.Nb;continue}}return Tb(a,1,b,c)}g=a.sa[f];b=new B(b,k,a.Nb,d,e);Mb(b,a.ha,g);a.sa[f++]=b;b=h+a.Nb;c-=k}return 0>=c?(Vb(a.F),!0):Tb(a,2,b,c)}
a.jd=a.Gd-1;a=this.F;a.Gb=a.Db=this.Gb;rb(this)}db(Lb);var Hb,Nb={$j:20,count:8,oo:1,type:3},Ob=0,Pb;for(Pb in Nb){var Qb=Nb[Pb];Nb[Pb]={lh:(1<<Qb)-1<<Ob,shift:Ob};Ob+=Qb}Hb=Nb;m=Lb.prototype;m.reset=function(){Rb(this,!0)};m.ic=function(a,b){b||this.reset();return!0};
function Sb(a,b,c,d,e){for(var f=b>>>a.La;0<c&&f<a.sa.length;){var g=a.sa[f],h=f*a.Nb,k=c>a.Nb?a.Nb:c;if(g&&g.size){if(g.type==d&&g.controller==e){if(b+c<=g.Da)return g.Ne+=g.Da-b,g.Da=b,!0;if(b>=g.Da+g.Ne){k=g.size-(b-h);k>c&&(k=c);g.Ne=b-g.Da+k;c-=k;b=h+a.Nb;continue}}return Tb(a,1,b,c)}g=a.sa[f];b=new B(b,k,a.Nb,d,e);Mb(b,a.ha,g);a.sa[f++]=b;b=h+a.Nb;c-=k}return 0>=c?(Ub(a.F),!0):Tb(a,2,b,c)}
function Rb(a,b){if(32==a.N)b?a.V&&(Wb(a,1048576,1048576,a.V),a.V=null):a.V||(a.V=Xb(a,1048576,1048576),Wb(a,1048576,1048576,Xb(a,0,1048576)));else if(20<a.N){var c=a.Gb&-1048577|(b?1048576:0);if(c!=a.Gb&&(a.Gb=c,a.F)){var d=a.F;d.Gb=d.Db=c}}}m.Mg=function(a,b,c,d){if(!(a&this.A||!b||b&this.A)){for(var e=a>>>this.La;0<b;){var f=this.sa[e];if(!f.controller)return Tb(this,3,a,b,d);Yb(f,c,!0);b-=this.Nb;e++}return!0}return Tb(this,4,a,b)};
function Zb(a,b,c){if(!(b&a.A||!c||c&a.A)){for(var d=b>>>a.La;0<c;){var e=a.sa[d];b=new B(b);Mb(b,a.ha,e);a.sa[d++]=b;b=d*a.Nb;c-=a.Nb}Vb(a.F);return!0}return Tb(a,5,b,c)}function Xb(a,b,c){var d=[];for(b>>>=a.La;0<c&&b<a.sa.length;)d.push(a.sa[b++]),c-=a.Nb;return d}
function Zb(a,b,c){if(!(b&a.A||!c||c&a.A)){for(var d=b>>>a.La;0<c;){var e=a.sa[d];b=new B(b);Mb(b,a.ha,e);a.sa[d++]=b;b=d*a.Nb;c-=a.Nb}Ub(a.F);return!0}return Tb(a,5,b,c)}function Xb(a,b,c){var d=[];for(b>>>=a.La;0<c&&b<a.sa.length;)d.push(a.sa[b++]),c-=a.Nb;return d}
function Wb(a,b,c,d,e){for(var f=0,g=b>>>a.La;0<c&&g<a.sa.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new B(b),l=k,n=e,q=a.ha;l.id=h.id|1;l.Ne=h.Ne;l.size=h.size;n&&(l.type=n,l.N=n==$b);vb?(l.V=h.V,l.qa=h.qa,l.Ya=h.Ya,l.fe=h.fe,l.da=h.da,Yb(l,ac?bc:cc)):(l.da=h.da,Yb(l,dc));Mb(l,q,h);h=k}a.sa[g++]=h;c-=a.Nb}}m.Qa=function(a){return this.sa[(a&this.Gb)>>>this.La].jc(a&this.A,a)};
m.na=function(a){var b=a&this.A,c=(a&this.Gb)>>>this.La;return b!=this.A?this.sa[c].rf(b,a):this.sa[c++].jc(b,a)|this.sa[c&this.ea].jc(0,a+1)<<8};function ec(a,b){var c=b&a.A,d=(b&a.Gb)>>>a.La;return c!=a.A?a.sa[d].cg(c,b):a.sa[d++].se(c,b)|a.sa[d&a.ea].se(0,b+1)<<8}m.oa=function(a){var b=a&this.A,c=(a&this.Gb)>>>this.La;if(b<this.A-2)return this.sa[c].Nd(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;)d|=this.sa[c].jc(b++,a++)<<f,--g||(c=c+1&this.ea,b=0),f+=8;return d};
m.qc=function(a,b){this.sa[(a&this.Gb)>>>this.La].sc(a&this.A,b&255,a)};m.jb=function(a,b){var c=a&this.A,d=(a&this.Gb)>>>this.La;c!=this.A?this.sa[d].yf(c,b&65535,a):(this.sa[d++].sc(c,b&255,a),this.sa[d&this.ea].sc(0,b>>8&255,a+1))};function fc(a,b,c){var d=b&a.A,e=(b&a.Gb)>>>a.La;d!=a.A?a.sa[e].oi(d,c&65535,b):(a.sa[e++].wf(d,c&255,b),a.sa[e&a.ea].wf(0,c>>8&255,b+1))}
@ -73,15 +73,15 @@ m.ic=function(a,b){if(!b){if(a&&this.restore){Oc(this);if(!this.restore(a))retur
function Vc(a,b){if(a.la.Ye){var c=!1;a.Y.If=a.Y.If+a.Qi()|0;a.Y.kf-=b;0>=a.Y.kf&&(a.Y.kf+=a.Y.jf,c=!0);0<=a.Y.lf&&a.Y.lf<=Wc(a)&&(a.Y.jf=a.Y.lf=-1,Pc(a),a.Wb(),c=!0);c&&a.O(Wc(a)+" cycles: checksum="+r(a.Y.If))}}
m.Qb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.qa[b]=c;a=!0;break;case "run":this.qa[b]=c;c.onclick=function(){var a;if(a=d.V)if(a=d.V,a.la.cc)a=!0;else{var b=null,c,h=gb(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.la.af);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.la.cc);c++);c==h.length&&(b=a);w("The "+b.type+" component ("+b.id+") is not "+(b.la.af?"powered yet":"ready yet"+(b.rg?" (waiting for notification)":""))+".");a=!1}a&&(d.la.Ib?d.Wb(!0):d.Ke(!0))};
a=!0;break;case "speed":this.qa[b]=c;a=!0;break;case "setSpeed":this.qa[b]=c,c.onclick=function(){Xc(d,d.Y.Yd<<1,!0)},c.textContent=this.Y.Fe.toFixed(2)+"Mhz",a=!0}return a};function Yc(a,b){if(a.la.Ib){var c=a.A-b;a.A-=c;a.fb-=c}}function Zc(a,b,c){a.uc+=b;c&&(a.fb=a.A=0)}
function $c(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Y.Yd&&a.Y.pe&&(d=a.Y.pe/a.Y.tg);a.Y.Xi=Math.round(1E3/30);a.Y.jm=Math.floor(a.Y.Jd/c*d);a.Y.qh=Math.floor(a.Y.Jd/30*d);a.Y.Zi=Math.floor(a.Y.Jd/60*d);a.Y.Yi=Math.floor(a.Y.Jd/2*d);b||(a.Y.mf=a.Y.qh,a.Y.Lf=a.Y.Zi,a.Y.Kf=a.Y.Yi);a.Y.rh=0}function Wc(a,b){var c=a.uc+a.Ub+a.fb-a.A;b&&1<a.Y.Yd&&a.Y.pe>a.Y.tg&&(c=Math.round(c/a.Y.Yd));return c}function Oc(a){a.Y.pe=0;a.uc=a.Ub=a.fb=a.A=0;Pc(a);Xc(a,1)}
function $c(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Y.Yd&&a.Y.pe&&(d=a.Y.pe/a.Y.tg);a.Y.Xi=Math.round(1E3/30);a.Y.km=Math.floor(a.Y.Jd/c*d);a.Y.qh=Math.floor(a.Y.Jd/30*d);a.Y.Zi=Math.floor(a.Y.Jd/60*d);a.Y.Yi=Math.floor(a.Y.Jd/2*d);b||(a.Y.mf=a.Y.qh,a.Y.Lf=a.Y.Zi,a.Y.Kf=a.Y.Yi);a.Y.rh=0}function Wc(a,b){var c=a.uc+a.Ub+a.fb-a.A;b&&1<a.Y.Yd&&a.Y.pe>a.Y.tg&&(c=Math.round(c/a.Y.Yd));return c}function Oc(a){a.Y.pe=0;a.uc=a.Ub=a.fb=a.A=0;Pc(a);Xc(a,1)}
function Xc(a,b,c){var d=!1;if(void 0!==b){.8>a.Y.pe/a.Y.Fe?b=1:d=!0;a.Y.Yd=b;b=a.Y.tg*a.Y.Yd;if(a.Y.Fe!=b){a.Y.Fe=b;b=a.Y.Fe.toFixed(2)+"Mhz";var e=a.qa.setSpeed;e&&(e.textContent=b);a.O("target speed: "+b)}c&&a.V&&a.V.yd()}Zc(a,a.Ub);a.Ub=0;a.Y.hf=pa();a.Y.Ge=0;$c(a);return d}
m.Ke=function(a){if(pb(this,!0)){if(!this.la.Ib){Xc(this);this.V&&this.V.start(this.Y.hf,Wc(this));this.la.Ib=!0;this.la.dh=!0;this.N&&ad(this.N);var b=this.qa.run;b&&(b.textContent="Halt");this.V&&(this.V.qd(),a&&this.V.yd(!0))}this.Y.rh>=this.Y.Jd&&$c(this,!0);this.Y.Mf=0;this.Y.ug=pa();this.Y.Ge&&(a=this.Y.ug-this.Y.Ge,a>this.Y.Xi&&(this.Y.hf+=a,this.Y.hf>this.Y.ug&&(this.Y.hf=this.Y.ug)));try{do{var c=this.la.Ye?1:this.Y.jm;if(this.N){bd(this.N);var d=this.N;a=c;var e=d.W[0];if(e.Be){var f=(Wc(d.F,
m.Ke=function(a){if(pb(this,!0)){if(!this.la.Ib){Xc(this);this.V&&this.V.start(this.Y.hf,Wc(this));this.la.Ib=!0;this.la.dh=!0;this.N&&ad(this.N);var b=this.qa.run;b&&(b.textContent="Halt");this.V&&(this.V.qd(),a&&this.V.yd(!0))}this.Y.rh>=this.Y.Jd&&$c(this,!0);this.Y.Mf=0;this.Y.ug=pa();this.Y.Ge&&(a=this.Y.ug-this.Y.Ge,a>this.Y.Xi&&(this.Y.hf+=a,this.Y.hf>this.Y.ug&&(this.Y.hf=this.Y.ug)));try{do{var c=this.la.Ye?1:this.Y.km;if(this.N){bd(this.N);var d=this.N;a=c;var e=d.W[0];if(e.Be){var f=(Wc(d.F,
d.ka)-e.xd)/d.gb|0,g=cd(d,0)-f;6==e.mode&&(g-=f);var h=g*d.gb|0;6==e.mode&&(h>>=1);a>h&&(a=h)}var c=a,k=this.N;a=c;if(k.A&&k.A[11]&64){var l=k.ua-Wc(k.F,k.ka);0<l&&a>l&&(a=l)}c=a}try{this.vf(c)}catch(q){if("number"!=typeof q)throw q;}var n=this.fb-this.A;this.Ub+=n;this.Y.Mf+=n;Zc(this,0,!0);Vc(this,n);this.Y.Lf-=n;0>=this.Y.Lf&&(this.Y.Lf+=this.Y.Zi,this.V&&dd(this.V));this.Y.Kf-=n;0>=this.Y.Kf&&(this.Y.Kf+=this.Y.Yi,this.V&&this.V.qd());this.Y.mf-=n;if(0>=this.Y.mf){this.Y.mf+=this.Y.qh;break}}while(this.la.Ib)}catch(q){this.Wb();
Qc(this);this.V&&this.V.stop(pa(),Wc(this));pb(this,!1);ub(this,q.stack||q.message);return}c=setTimeout;d=this.pi;this.Y.Ge=pa();e=this.Y.Xi;this.Y.Mf&&(e=Math.round(e*this.Y.Mf/this.Y.qh));e-=this.Y.Ge-this.Y.ug;if(f=this.Y.Ge-this.Y.hf)this.Y.pe=Math.round(this.Ub/(10*f))/100,864E5<=f&&(this.uc=0,this.N&&bd(this.N,!0),Xc(this));if(0>e||this.Y.pe<this.Y.Fe)e=0;this.Y.rh+=this.Y.Mf;this.Y.Ge+=e;c(d,e)}else Qc(this),this.V&&this.V.stop(pa(),Wc(this))};m.vf=function(){return 0};
m.Wb=function(a){qb(this,!0);this.fb-=this.A;this.A=0;Zc(this,this.Ub);this.Ub=0;if(this.la.Ib){this.la.Ib=!1;this.N&&ad(this.N);var b=this.qa.run;b&&(b.textContent="Run")}this.la.Wd=a};function Qc(a,b){a.V&&(dd(a.V,b),a.V.qd())}
function ed(a,b,c,d){this.F=a;this.ha=a.ha;this.id=b;this.lc=c||"";this.Z=0;this.Ta=65535;this.Zb=this.Ta+1;this.Lb=this.Gc=this.ext=this.wb=this.type=this.Aa=0;this.Xb=-1;this.ba=this.Oc=2;this.R=this.Ba=65535;this.V=this.kh;this.ea=this.Di;this.qa=this.Fi;this.A={Z:-1,Aa:0,Ta:0,wb:0,type:0,ext:0,Xb:-1};1==this.id&&(this.Xf=0,this.C=null,this.cf=!1,this.N=Array(32),this.B=[]);fd(this,!0,d)}function gd(a,b){a.B.push(b);return[a.B.length,1]}m=ed.prototype;
m.kh=function(a){this.Z=a&65535;return this.Aa=this.Z<<4};m.sg=function(a,b){var c,d,e=this.F;a&=65535;a&4?(c=e.Bc.Aa,d=c+e.Bc.Ta|0):(c=e.Ec,d=e.Ad);if(c){c=c+(a&65528)|0;if(d-c|0)return e.A-=15,hd(this,c,a,b);6>this.id&&C.call(e,b&&3==this.id?10:13,a&65532)}return-1};m.fm=function(a){var b=this.F;a=b.Mc+(a<<2);var c=b.na(a);b.ca&=-769;return this.load(b.na(a+2))+c|0};
m.em=function(a){var b=this.F;a<<=3;var c=b.Mc+a|0;if(7<=(b.Td-c|0))return this.C=!0,a=hd(this,c,a),-1!==a&&(a+=this.Xf),a;C.call(b,13,a|2);return-1};m.Di=function(a){return this.Aa+a|0};m.Fi=function(a){return this.Aa+a|0};m.Ci=function(a,b){return(a>>>0)+b<=this.Zb?this.Aa+a|0:this.ng()};m.Ik=function(a,b){return(a>>>0)+b>this.Zb?this.Aa+a|0:this.ng()};m.ng=function(){C.call(this.F,13,0);return-1};m.Ei=function(a,b){return(a>>>0)+b<=this.Zb?this.Aa+a|0:this.og()};
m.kh=function(a){this.Z=a&65535;return this.Aa=this.Z<<4};m.sg=function(a,b){var c,d,e=this.F;a&=65535;a&4?(c=e.Bc.Aa,d=c+e.Bc.Ta|0):(c=e.Ec,d=e.Ad);if(c){c=c+(a&65528)|0;if(d-c|0)return e.A-=15,hd(this,c,a,b);6>this.id&&C.call(e,b&&3==this.id?10:13,a&65532)}return-1};m.gm=function(a){var b=this.F;a=b.Mc+(a<<2);var c=b.na(a);b.ca&=-769;return this.load(b.na(a+2))+c|0};
m.fm=function(a){var b=this.F;a<<=3;var c=b.Mc+a|0;if(7<=(b.Td-c|0))return this.C=!0,a=hd(this,c,a),-1!==a&&(a+=this.Xf),a;C.call(b,13,a|2);return-1};m.Di=function(a){return this.Aa+a|0};m.Fi=function(a){return this.Aa+a|0};m.Ci=function(a,b){return(a>>>0)+b<=this.Zb?this.Aa+a|0:this.ng()};m.Ik=function(a,b){return(a>>>0)+b>this.Zb?this.Aa+a|0:this.ng()};m.ng=function(){C.call(this.F,13,0);return-1};m.Ei=function(a,b){return(a>>>0)+b<=this.Zb?this.Aa+a|0:this.og()};
m.Jk=function(a,b){return(a>>>0)+b>this.Zb?this.Aa+a|0:this.og()};m.og=function(){C.call(this.F,13,0);return-1};function id(a,b,c,d,e){a.Z=b;a.Aa=d;a.Ta=e;a.Zb=(e>>>0)+1;a.wb=c;a.type=c&7936;a.ext=c>>16&192;a.Xb=(b&4?a.F.Bc.Aa:a.F.Ec)+(b&65528)|0;4>a.id&&fd(a,!0)}function jd(a,b,c){var d=a.F,e=d.na(b+2),f=d.na(b)|(e&255)<<16,d=d.na(b+4);a.Z=c;a.Aa=f;a.Ta=d;a.Zb=(d>>>0)+1;a.wb=e;a.type=e&7936;a.ext=0;a.Xb=b;4>a.id&&fd(a,!0)}
function hd(a,b,c,d){var e=a.F;if(!d&&c===a.A.Z)return a.Z=c,a.Aa=a.A.Aa,a.Ta=a.A.Ta,a.Zb=(a.A.Ta>>>0)+1,a.wb=a.A.wb,a.type=a.A.type,a.ext=a.A.ext,a.Xb=a.A.Xb,a.A.Z=-1,fd(a,!0,!0,!1),a.Aa;a.A.Z=-1;var f=e.na(b+0),g=e.na(b+4),h=g&7936,k=e.na(b+2)|(g&255)<<16,l=e.na(b+6),n=c&65528;if(80386<=e.ia){var q=f,k=k|(l&65280)<<16,f=f|(l&15)<<16;l&128&&(f=f<<12|4095)}switch(a.id){case 1:var p=a.C;a.cf=!1;if(p&&1==c&&a.B.length){var z=a.B[a.Xf-1];if(z&&!z())return-1}var F=c&3,v=(g&24576)>>13,z=-1,E,H;n||b>=e.Ec&&
b<e.Ad&&(h=0);if(6144<=h)null!=d?z=0:!1!==p?(h&1024?v<=a.Lb&&(z=0):F<=a.Lb&&v==a.Lb&&(z=0),z||(c=c&-4|a.Lb&3)):F>=a.Lb&&(F>a.Lb&&(z=D(e),kd(e,D(e),!0),G(e,z),a.cf=!0),z=0);else{if(256==h||2304==h)return ld(a,c,p)?a.Aa:-1;if(1024==h)z=2,H=0,F<a.Lb&&(F=a.Lb);else if(3072==h)z=4,H=0,F<a.Lb&&(F=a.Lb);else if(1536==h)z=2,H=148224;else if(3584==h)z=4,H=148224;else if(1792==h)z=2,H=147712;else if(3840==h)z=4,H=147712;else if(1280==h)return ld(a,k&65535,p)?a.Aa:-1}0<z&&!(g&32768)&&(z=0);if(0<z&&(n=a.Lb,E=
@ -92,12 +92,12 @@ function ld(a,b,c){var d=a.F,e=a.Lb,f=d.Sa.Z,g=d.Sa.Aa;if(!c){if(!(d.Sa.type&512
34,d.Xa.Z),d.jb(g+36,d.va.Z),d.jb(g+38,d.ta.Z),d.jb(g+40,d.vb.Z),d.Bc.load(d.na(h+42)),yd(d,d.na(h+16)|(c?16384:0)),d.G=d.na(h+18),d.I=d.na(h+20),d.M=d.na(h+22),d.H=d.na(h+24),d.P=d.na(h+28),d.K=d.na(h+30),d.J=d.na(h+32),d.Xa.load(d.na(h+34)),d.vb.load(d.na(h+40)),zd(d,d.na(h+14),d.na(h+36)),b=38,g=26,a.Lb<e&&(g=(a.Lb<<2)+2,b=g+2),kd(d,d.na(h+b),!0),G(d,d.na(h+g))):(d.nb(g+28,d.Pd),d.nb(g+32,K(d)),d.nb(g+36,xd(d)),d.nb(g+40,d.G),d.nb(g+44,d.I),d.nb(g+48,d.M),d.nb(g+52,d.H),d.nb(g+56,I(d)),d.nb(g+
60,d.P),d.nb(g+64,d.K),d.nb(g+68,d.J),d.nb(g+72,d.Xa.Z),d.nb(g+76,d.va.Z),d.nb(g+80,d.ta.Z),d.nb(g+84,d.vb.Z),d.nb(g+88,d.Ob.Z),d.nb(g+92,d.Pb.Z),Ad.call(d,d.oa(h+28)),d.Bc.load(d.na(h+96)),yd(d,d.oa(h+36)|(c?16384:0)),d.G=d.oa(h+40),d.I=d.oa(h+44),d.M=d.oa(h+48),d.H=d.oa(h+52),d.P=d.oa(h+60),d.K=d.oa(h+64),d.J=d.oa(h+68),d.Xa.load(d.na(h+72)),d.vb.load(d.na(h+84)),d.Ob.load(d.na(h+88)),d.Pb.load(d.na(h+92)),zd(d,d.oa(h+32),d.na(h+76)),b=80,g=56,a.Lb<e&&(g=(a.Lb<<3)+4,b=g+4),kd(d,d.na(h+b),!0),G(d,
d.oa(h+g)));c&&d.jb(h+0,f);d.Za|=8;return!0}m.save=function(){return[this.Z,this.Aa,this.Ta,this.wb,this.id,this.lc,this.Lb,this.Gc,this.Xb,this.Oc,this.Ba,this.ba,this.R,this.type,this.Zb]};m.restore=function(a){"number"==typeof a?this.load(a):(this.Z=a[0],this.Aa=a[1],this.Ta=a[2],this.wb=a[3],this.id=a[4],this.lc=a[5],this.Lb=a[6],this.Gc=a[7],this.Xb=a[8],this.Oc=a[9]||2,this.Ba=a[10]||65535,this.ba=a[11]||2,this.R=a[12]||65535,this.type=a[13]||this.wb&7936,this.Zb=a[14]||(this.Ta>>>0)+1)};
function fd(a,b,c,d){void 0===c&&(c=!!(a.F.Za&1));a.cd=!1;if(c)if(a.load=a.sg,a.Wi=a.em,a.nc=a.Ci,a.oc=a.Ei,void 0===d&&(d=!!(a.F.ca&131072)),d)a.load=a.V,a.nc=a.ea,a.oc=a.qa,a.Lb=a.Gc=3,a.ba=a.Oc=2,a.R=a.Ba=65535,a.Ta=65535,a.Zb=a.Ta+1,a.Oc=a.ba,a.Xb=-1,a.cf=!1;else{if(!(a.Z&-4))a.nc=a.ng,a.oc=a.og;else if(a.type&4096){6144==(a.type&6656)&&(a.nc=a.ng);if(a.type&2048||!(a.type&512))a.oc=a.og;1024==(a.type&3072)&&(a.nc==a.Ci&&(a.nc=a.Ik),a.oc==a.Ei&&(a.oc=a.Jk),a.cd=!0);b&&6>a.id&&a.Z&-4&&-1!==a.Xb&&
(c=a.Xb+5,d=a.F.Qa(c),d&1||a.F.qc(c,d|1))}b&&(a.Lb=a.Z&3,a.Gc=(a.wb&24576)>>13,80386>a.F.ia||!(a.ext&64)?(a.ba=2,a.R=65535):(a.ba=4,a.R=-1),a.Oc=a.ba,a.Ba=a.R)}else a.load=a.kh,a.Wi=a.fm,a.nc=a.Di,a.oc=a.Fi,a.Lb=a.Gc=0,a.Xb=-1,a.cf=!1}
function fd(a,b,c,d){void 0===c&&(c=!!(a.F.Za&1));a.cd=!1;if(c)if(a.load=a.sg,a.Wi=a.fm,a.nc=a.Ci,a.oc=a.Ei,void 0===d&&(d=!!(a.F.ca&131072)),d)a.load=a.V,a.nc=a.ea,a.oc=a.qa,a.Lb=a.Gc=3,a.ba=a.Oc=2,a.R=a.Ba=65535,a.Ta=65535,a.Zb=a.Ta+1,a.Oc=a.ba,a.Xb=-1,a.cf=!1;else{if(!(a.Z&-4))a.nc=a.ng,a.oc=a.og;else if(a.type&4096){6144==(a.type&6656)&&(a.nc=a.ng);if(a.type&2048||!(a.type&512))a.oc=a.og;1024==(a.type&3072)&&(a.nc==a.Ci&&(a.nc=a.Ik),a.oc==a.Ei&&(a.oc=a.Jk),a.cd=!0);b&&6>a.id&&a.Z&-4&&-1!==a.Xb&&
(c=a.Xb+5,d=a.F.Qa(c),d&1||a.F.qc(c,d|1))}b&&(a.Lb=a.Z&3,a.Gc=(a.wb&24576)>>13,80386>a.F.ia||!(a.ext&64)?(a.ba=2,a.R=65535):(a.ba=4,a.R=-1),a.Oc=a.ba,a.Ba=a.R)}else a.load=a.kh,a.Wi=a.gm,a.nc=a.Di,a.oc=a.Fi,a.Lb=a.Gc=0,a.Xb=-1,a.cf=!1}
function Bd(a){this.ia=a.model||8088;var b=a.stepping;this.Uc=this.ia+(b?ca(b,16):0);b=0;switch(this.ia){default:b=4772727;break;case 80286:b=6E6;break;case 80386:b=16E6}Lc.call(this,a,b);this.Yf=61442;this.Cc=1792;this.Wf=28672;this.Dd=4;this.ra=255;this.B=80286<=this.ia?xb:wb;this.X=Cd;this.bg=Dd;this.gg=Ed;this.hg=Fd;if(80186<=this.ia&&(this.X=Cd.slice(),this.bg=Dd.slice(),this.gg=Ed.slice(),this.ra=31,this.X[15]=Gd,this.X[96]=Hd,this.X[97]=Id,this.X[98]=Jd,this.X[99]=Gd,this.X[100]=Gd,this.X[101]=
Gd,this.X[102]=Gd,this.X[103]=Gd,this.X[104]=Kd,this.X[105]=Ld,this.X[106]=Md,this.X[107]=Nd,this.X[108]=Od,this.X[109]=Pd,this.X[110]=Qd,this.X[111]=Rd,this.X[192]=Sd,this.X[193]=Td,this.X[200]=Ud,this.X[201]=Yd,this.X[241]=Zd,this.bg[7]=$d,this.gg[7]=$d,80286<=this.ia)){this.Yf=2;this.Cc|=28672;this.Dd=0;this.X[15]=ae;this.tc=ge.slice();for(a=0;a<this.tc.length;a++)this.tc[a]||(this.tc[a]=he);this.X[84]=ie;this.X[99]=je;if(80386<=this.ia){var c;this.Wf=0;this.Cc|=196608;this.X[100]=ke;this.X[101]=
le;this.X[102]=me;this.X[103]=ne;for(c in M)this.tc[+c]=M[c];80546<=this.Uc&&80562>=this.Uc&&(this.tc[166]=oe,this.tc[167]=pe)}}this.Id=[];this.le=[];this.ne=0;Oc(this);this.la.Wd=this.la.Mi=!1;this.Og=0;this.ld=this.sa=[];this.La=this.Nb=this.Fa=this.Gd=this.jd=this.Gb=this.Db=0;qe(this)}db(Bd,Lc);function re(a,b,c,d){Gc((d?a.ld:a.sa)[b>>>a.La],c);d&&Vb(a)}
function se(a){var b;if(a.sa===a.ld){a.sa=Array(a.Gd);a.me=new B(null,0,0,5,null,a);Mb(a.me,a.ha);for(b=0;b<a.Gd;b++)a.sa[b]=a.me;a.kd=new B;a.ag=Array(512);a.oe=0}else for(var c=0;c<a.Hd.length;c++){b=a.Hd[c];var d=a.sa[b];512>a.oe&&(a.ag[a.oe++]=d);a.sa[b]=a.me}a.Hd=[]}function Vb(a){a.Za&-2147483648&&se(a)}
le;this.X[102]=me;this.X[103]=ne;for(c in M)this.tc[+c]=M[c];80546<=this.Uc&&80562>=this.Uc&&(this.tc[166]=oe,this.tc[167]=pe)}}this.Id=[];this.le=[];this.ne=0;Oc(this);this.la.Wd=this.la.Mi=!1;this.Og=0;this.ld=this.sa=[];this.La=this.Nb=this.Fa=this.Gd=this.jd=this.Gb=this.Db=0;qe(this)}db(Bd,Lc);function re(a,b,c,d){Gc((d?a.ld:a.sa)[b>>>a.La],c);d&&Ub(a)}
function se(a){var b;if(a.sa===a.ld){a.sa=Array(a.Gd);a.me=new B(null,0,0,5,null,a);Mb(a.me,a.ha);for(b=0;b<a.Gd;b++)a.sa[b]=a.me;a.kd=new B;a.ag=Array(512);a.oe=0}else for(var c=0;c<a.Hd.length;c++){b=a.Hd[c];var d=a.sa[b];512>a.oe&&(a.ag[a.oe++]=d);a.sa[b]=a.me}a.Hd=[]}function Ub(a){a.Za&-2147483648&&se(a)}
function Fc(a,b,c,d){var e=(b&-4194304)>>>20,f=a.ld[(a.Pd+e&a.Gb)>>>a.La],g=f.Nd(e);if(!(g&1))return d||te.call(a,b,!1,c),a.kd;if(!(g&4)&&3==a.pa)return d||te.call(a,b,!0,c),a.kd;var h=(b&4190208)>>>10,g=a.ld[((g&-4096)+h&a.Gb)>>>a.La],k=g.Nd(h);if(!(k&1))return d||te.call(a,b,!1,c),a.kd;if(!(k&4)&&3==a.pa)return d||te.call(a,b,!0,c),a.kd;c=a.ld[((k&-4096)+(b&4095)&a.Gb)>>>a.La];if(d)return c;d=b>>>a.La;k=a.sa[d];b=b&-4096;var l;0<a.oe?(l=a.ag[--a.oe],l.gh(b)):l=new B(b,0,0,6);b=l;b.Cd=c;b.yb=f;b.A=
e>>2;b.zb=g;b.B=h>>2;vb&&ac&&c.da&&!c.controller&&!c.Te&&!c.Ue?(b.Ya=c.Ya,b.fe=c.fe,b.da=c.da,Yb(b,Kc)):(b.ea=c?yc(32):0,b.W=c?yc(96):0,Yb(b,Ic));Mb(b,a.ha,k);a.sa[d]=b;a.Hd.push(d);return b}function ue(a){a.sa!==a.ld&&(a.sa=a.ld,a.me=null,a.Hd=null,a.kd=null)}m=Bd.prototype;m.reset=function(){this.la.Ib&&this.Wb();qe(this);Oc(this);this.la.ud=!1};
function ve(a,b){var c;switch(b){case 0:c=a.G;break;case 1:c=a.I;break;case 2:c=a.M;break;case 3:c=a.H;break;case 4:c=I(a);break;case 5:c=a.P;break;case 6:c=a.K;break;case 7:c=a.J}return c}function we(a,b,c){switch(b){case 0:a.G=c;break;case 1:a.I=c;break;case 2:a.M=c;break;case 3:a.H=c;break;case 4:G(a,c);break;case 5:a.P=c;break;case 6:a.K=c;break;case 7:a.J=c}}
@ -183,7 +183,7 @@ function gj(a,b){return b>>(this.G&this.R)&(1<<(this.I&31))-1&this.R}function hj
function ij(a,b){if(-1===this.D){switch(this.L&7){case 0:this.G=this.G&~this.R|a;break;case 1:this.I=this.I&~this.R|a;break;case 2:this.M=this.M&~this.R|a;break;case 3:this.H=this.H&~this.R|a;break;case 4:G(this,I(this)&~this.R|a);break;case 5:this.P=this.H&~this.R|a;break;case 6:this.K=this.K&~this.R|a;break;case 7:this.J=this.J&~this.R|a}this.A-=this.B.bi}else this.C=this.D,this.S&2||this.rc(this.$b.oc(this.Ca,this.ba),a),this.A-=this.B.ai;return b}
function jj(a,b){var c=a^b;vf(this,c,128);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Nc;return c}function kj(a,b){this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Nc;return vf(this,a^b,this.Ia)&this.R}function lj(a,b){var c=a[1]-b[1];c||(c=a[0]-b[0]);return c}function mj(a){var b=a-1|0;of(this,a,1,b,this.Ia|62,!0);this.A-=2;return a&~this.R|b&this.R}
function nj(a,b,c){c>>>=0;if(!c||c<=b>>>0)return!1;var d=0,e=1;c=[c>>>0,0];for(a=[a>>>0,b>>>0];0<lj(a,c);){var f=b=c;b[0]+=f[0];b[1]+=f[1];4294967295<b[0]&&(b[0]>>>=0,b[1]++);e+=e}do 0<=lj(a,c)&&(b=a,f=c,b[0]-=f[0],b[1]-=f[1],0>b[0]&&(b[0]>>>=0,b[1]--),d+=e),b=c,b[0]>>>=1,b[1]&1&&(b[0]=(b[0]|2147483648)>>>0),b[1]>>>=1,e/=2;while(1<=e);this.ja=d;this.wa=a[0];return!0}function oj(a){var b=a+1|0;of(this,a,1,b,this.Ia|62);this.A-=2;return a&~this.R|b&this.R}
function pj(a){this.Za=a;md(this);this.Za&-2147483648?se(this):ue(this)}function Ad(a){this.Pd=a;Vb(this)}function qj(a){this.S|=1;this.$a.call(this,a);this.A-=-1===this.D?4:5}function Ri(a,b,c){if(c){16<c&&(a=b,c-=16);var d=a<<c-1;a=(d<<1|b>>>16-c)&65535;vf(this,a,32768,d&32768)}return a}function Ti(a,b,c){if(c){var d=a<<c-1;a=d<<1|b>>>32-c;vf(this,a,-2147483648,d&-2147483648)}return a}
function pj(a){this.Za=a;md(this);this.Za&-2147483648?se(this):ue(this)}function Ad(a){this.Pd=a;Ub(this)}function qj(a){this.S|=1;this.$a.call(this,a);this.A-=-1===this.D?4:5}function Ri(a,b,c){if(c){16<c&&(a=b,c-=16);var d=a<<c-1;a=(d<<1|b>>>16-c)&65535;vf(this,a,32768,d&32768)}return a}function Ti(a,b,c){if(c){var d=a<<c-1;a=d<<1|b>>>32-c;vf(this,a,-2147483648,d&-2147483648)}return a}
function Xi(a,b,c){if(c){16<c&&(a=b,c-=16);var d=a>>>c-1;a=(d>>>1|b<<16-c)&65535;vf(this,a,32768,d&1)}return a}function Zi(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;vf(this,a,-2147483648,d&1)}return a}function rj(){this.A-=-1===this.D?2:this.B.Yj;return 1}function sj(){var a=this.I&255;this.A-=(-1===this.D?this.B.Th:this.B.Sh)+(a<<this.B.Uh);return a}function tj(){var a=this.xa();this.A-=(-1===this.D?this.B.Th:this.B.Sh)+(a<<this.B.Uh);return a}function uj(){return null}
function vj(){return this.aa}function wj(a,b){this.bc=this.va.Z;this.sb=this.ta.Z;this.U=this.ga;var c=K(this),d=this.ba;null!=zd(this,a,b,!0)&&(pd(this,this.bc,d,2),pd(this,c,d,d));this.bc=this.sb=this.U=-1}function xj(a,b,c){this.A-=this.B.wj+(c||0);c=xd(this);var d=this.va.Z,e=K(this);a=this.va.Wi(a);-1!==a&&(J(this,c),J(this,d),J(this,e),null!=b&&J(this,b),this.rb=-1,lf(this,a))}
function yj(a){this.sb=this.ta.Z;this.U=this.ga;var b=D(this),c=D(this);a&&G(this,I(this)+a);zd(this,b,c,!1)&&(a&&G(this,I(this)+a),zj.call(this,this.vb),zj.call(this,this.Xa),80386<=this.ia&&(zj.call(this,this.Ob),zj.call(this,this.Pb)));2==a&&this.ne&&ef(this,this.Ga);this.sb=this.U=-1}function Aj(){8086==this.ia?(this.rb=-1,xj.call(this,0,null,2)):C.call(this,0,null,2)}function Vf(a,b){this.rb=a;void 0===b&&(b=11);xj.call(this,a,null,b)}
@ -363,23 +363,23 @@ a;Df(this);return a},function(a){this.S|=2;this.A-=14+(-1===this.D?0:2);if(-1!==
80286==this.ia?b|=-16777216:80386<=this.ia&&2!=this.ba&&(a|=b<<16);this.nb(this.D+2,b);this.A-=12}return a},function(a){-1===this.D||this.ca&131072?C.call(this,6):(this.Ec=this.oa(this.D+2)&(this.R|this.R<<8),a&=65535,this.Ad=this.Ec+a,this.S|=2,this.A-=11);return a},function(a){-1===this.D||this.ca&131072?C.call(this,6):(this.Mc=this.oa(this.D+2)&(this.R|this.R<<8),a&=65535,this.Td=this.Mc+a,this.S|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.D?0:1);return this.Za},Lh,function(a){this.ca&
131072?C.call(this,6):(Gf(this,a),this.A-=-1===this.D?3:6,this.S|=2);return a},Lh],ok=[Lh,Lh,Lh,Lh,zh,Ch,Bh,Ah];
function pk(a){Ua.call(this,"ChipSet",a,pk,32768);var b=a.model;b&&!qk[b]&&w("Unrecognized ChipSet model: "+b);this.ia=b&&qk[b]||rk;this.C=[];b=sk(a[tk]);this.C[0]=[b,b];null==b&&(this.ja=[360,360],(b=a.floppies)&&b.length&&(this.ja=b),uk(this,vk,this.ja.length),uk(this,wk,a.monitor||(this.ia<cg?"mono":"ega")));b=sk(a[xk]);this.C[1]=[b,b];this.cb=this.Ea=1;this.ia>=cg&&(this.cb=this.Ea=2);this.ka=a.scaleTimers||!1;this.Ub=a.rtcDate;this.Db=!1;a.sound&&(this.sb=this.Fa=null,window&&(this.sb=window.AudioContext||
window.webkitAudioContext),this.sb&&(this.Fa=new this.sb));this.reset(!0);rb(this)}db(pk);var rk=5150.9,cg=5170,qk={5150:5150,5160:5160,5170:cg,att6300:5160.101,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:rk,deskpro386:5180},tk="sw1",xk="sw2",yk={Bk:1,ONE:0,bo:64,$n:128,En:192,Lc:192,Pg:6},zk={ao:16,xn:32,Mn:48,Lc:48,Pg:4},vk=1,wk=4,Ak={5150:[{},{}]};Ak[5150][0][vk]={Lc:192,hd:{1:0,2:64,3:128,4:192},Qd:"Number of Floppy Drives"};Ak[5150][0][3]={Lc:2,hd:{0:0,1:2},Qd:"Coprocessor"};
Ak[5150][0][wk]={Lc:48,hd:{0:0,1:16,2:32,3:48,none:0,tv:16,color:32,mono:48,ega:0,vga:0},Qd:"Monitor Type"};Ak[5150][0][5]={Lc:12,hd:{16:0,32:4,48:8,64:12},Qd:"Base Memory (16Kb Increments)"};Ak[5150][1][6]={Lc:31,hd:{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},Qd:"Expansion Memory (32Kb Increments)"};Ak[5160]=[{},{}];Ak[5160][0][vk]=Ak[5150][0][vk];Ak[5160][0][3]=Ak[5150][0][3];Ak[5160][0][wk]=Ak[5150][0][wk];
window.webkitAudioContext),this.sb&&(this.Fa=new this.sb));this.reset(!0);rb(this)}db(pk);var rk=5150.9,cg=5170,qk={5150:5150,5160:5160,5170:cg,att6300:5160.101,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:rk,deskpro386:5180},tk="sw1",xk="sw2",yk={Bk:1,ONE:0,co:64,ao:128,Fn:192,Lc:192,Pg:6},zk={bo:16,yn:32,Nn:48,Lc:48,Pg:4},vk=1,wk=4,Ak={5150:[{},{}]};Ak[5150][0][vk]={Lc:192,hd:{1:0,2:64,3:128,4:192},Qd:"Number of Floppy Drives"};Ak[5150][0][3]={Lc:2,hd:{0:0,1:2},Qd:"Coprocessor"};
Ak[5150][0][wk]={Lc:48,hd:{0:0,1:16,2:32,3:48,none:0,tv:16,color:32,cga:32,mda:48,mono:48,ega:0,vga:0},Qd:"Monitor Type"};Ak[5150][0][5]={Lc:12,hd:{16:0,32:4,48:8,64:12},Qd:"Base Memory (16Kb Increments)"};Ak[5150][1][6]={Lc:31,hd:{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},Qd:"Expansion Memory (32Kb Increments)"};Ak[5160]=[{},{}];Ak[5160][0][vk]=Ak[5150][0][vk];Ak[5160][0][3]=Ak[5150][0][3];Ak[5160][0][wk]=Ak[5150][0][wk];
Ak[5160][0][5]={Lc:12,hd:{64:0,128:4,192:8,256:12},Qd:"Base Memory (64Kb Increments)"};Ak[5160][1][6]=Ak[5150][1][6];Ak[5160.101]=[{},{}];Ak[5160.101][0][5]={Lc:143,hd:{128:1,256:130,512:8,640:141},Qd:"Base Memory (128Kb Increments)"};Ak[5160.101][0][3]={Lc:16,hd:{0:0,1:16},Qd:"Coprocessor"};Ak[5160.101][1][2]={Lc:1,hd:{0:0,1:1},Qd:"Floppy Type"};Ak[5160.101][1][vk]=Ak[5150][0][vk];Ak[5160.101][1][wk]=Ak[5150][0][wk];m=pk.prototype;
m.Qb=function(a,b,c){switch(b){case tk:return this.qa[b]=c,Bk(this,0,b),!0;case xk:if(5150==(this.ia|0)||5160.101==this.ia)return this.qa[b]=c,Bk(this,1,b),!0;break;case "swdesc":return this.qa[b]=c,!0}return!1};
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.V=a;this.Tb=Eb(a,"FPU");uk(this,3,this.Tb?1:0,!0);this.B=Eb(a,"Keyboard");this.gb=c.Y.Jd/1193181;hc(b,this,Ck);lc(b,this,Dk);this.ia<cg?5160.101!=this.ia?(hc(b,this,Ek),lc(b,this,Fk)):(hc(b,this,Gk),lc(b,this,Hk)):(hc(b,this,Ik),lc(b,this,Jk),5180==(this.ia|0)&&(hc(b,this,Kk),lc(b,this,Lk)));if(d){var e=this;Mk(d,1024,function(){for(var a=0;a<e.vc.length;a++){for(var b=e.vc[a],c="PIC"+a+":",d=0;d<b.Yc.length;d++)c+=" IC"+(d+1)+"="+t(b.Yc[d]);
c+=" IMR="+t(b.Bd)+" IRR="+t(b.mc)+" ISR="+t(b.Pc)+" DELAY="+b.nf;e.ha.O(c)}});Mk(d,2048,function(a){a=(a=a[0])?+a:null;for(var b=0;b<e.W.length;b++)if(null==a||b==a){Nk(e,b);var c=e.W[b],d="TIMER"+b+":",l=0;if(null!=c.nd)for(var n=0;n<=c.nd;n++)l|=c.Ab[n]<<8*n;d+=" mode="+(c.mode>>1)+" bytes="+c.nd+" count="+u(l);e.ha.O(d)}});Mk(d,4096,function(){for(var a="",b=0;64>b;b++){var c=13>=b?Ok(e,b):e.A[b];a&&(a+="\n");a+="CMOS["+t(b)+"]: "+t(c)}e.ha.O(a)})}cf(c,26,this.$l.bind(this))};
c+=" IMR="+t(b.Bd)+" IRR="+t(b.mc)+" ISR="+t(b.Pc)+" DELAY="+b.nf;e.ha.O(c)}});Mk(d,2048,function(a){a=(a=a[0])?+a:null;for(var b=0;b<e.W.length;b++)if(null==a||b==a){Nk(e,b);var c=e.W[b],d="TIMER"+b+":",l=0;if(null!=c.nd)for(var n=0;n<=c.nd;n++)l|=c.Ab[n]<<8*n;d+=" mode="+(c.mode>>1)+" bytes="+c.nd+" count="+u(l);e.ha.O(d)}});Mk(d,4096,function(){for(var a="",b=0;64>b;b++){var c=13>=b?Ok(e,b):e.A[b];a&&(a+="\n");a+="CMOS["+t(b)+"]: "+t(c)}e.ha.O(a)})}cf(c,26,this.am.bind(this))};
m.ic=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};
m.reset=function(a){var b;Pk(this);this.L=Array(this.cb);for(b=0;b<this.cb;b++)Qk(this,b);this.vc=Array(this.Ea);Rk(this,0,32);1<this.Ea&&Rk(this,1,160);this.Pa=this.Na=null;this.W=Array(5180==(this.ia|0)?6:3);for(b=0;b<this.W.length;b++)Sk(this,b);this.Ca=this.rb=this.X=this.$a=null;this.ya=0;5160.101==this.ia&&(this.wa=0);if(this.ia>=cg){this.N=16;this.fa=0;this.aa=16;this.Ja=0;this.ga=160;512<=Tk(this)&&(this.ga|=16);3==+Uk(this,wk,void 0)&&(this.ga|=64);5180==(this.ia|0)&&(this.ga|=12);this.Ka=
3;this.ra=Array(8);this.pa=0;a&&(this.A=Array(64));Vk(this,this.Ub);for(a=21;24>=a;a++)this.A[a]=0;for(a=14;46>a;a++)void 0===this.A[a]&&(this.A[a]=0);a=0|+Uk(this,wk,void 0)<<zk.Pg&zk.Lc;a|=+Uk(this,3,void 0)?2:0;b=+Uk(this,vk,void 0);a|=b?b-1<<yk.Pg&yk.Lc|yk.Bk:0;this.A[20]=a;this.A[16]=Wk(this,0)<<4|Wk(this,1);Xk(this)}};
function Vk(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.O("CMOS date invalid ("+b+"), using "+c)):b&&a.O("CMOS date: "+c);a.A[0]=c.getSeconds();a.A[1]=0;a.A[2]=c.getMinutes();a.A[3]=0;a.A[4]=c.getHours();a.A[5]=0;a.A[6]=c.getDay()+1;a.A[7]=c.getDate();a.A[8]=c.getMonth()+1;c=c.getFullYear();a.A[9]=c%100;c/=100;a.A[50]=c%10|c/10<<4;a.A[10]=38;a.A[11]=2;a.A[12]=0;a.A[13]=128;a.Ia=a.ua=0;a.Jb=a.fb=null}
function Ok(a,b){var c=a.A[b];if(10>b){var d=!1;4!=b&&5!=b||a.A[11]&2||(12>c?c=c?c:12:c=(c-=12)?c+128:140,d=!0);a.A[11]&4||(d&&128<c&&(c-=48),c=c%10|c/10<<4)}else 10==b&&(a.A[b]^=128);return c}function Yk(a){var b;void 0===b&&(b=a.fb);a.ua=Wc(a.F,a.ka)+b;a.A[11]&64&&Yc(a.F,b)}function Xk(a){for(var b=0,c=16;46>c;c++)b+=a.A[c];a.A[47]=b&255;a.A[46]=b>>8}
m.save=function(){var a=new hf(this);N(a,0,[this.C]);for(var b=[],c=0;c<this.L;c++){for(var d=this.L[c],e=d,f=[],g=0;g<e.Dc.length;g++){var h=e.Dc[g];f[g]=[h.Ee,h.ig,h.Fc,h.Eb,h.Ab,h.mode,h.kg,h.qn,h.rn]}b[c]=[d.Yb,d.Wg,d.yi,d.Kb,f,d.zi]}N(a,1,[b]);b=[];for(c=0;c<this.vc.length;c++)d=this.vc[c],b[c]=[d.nf,d.Yc,d.Zd,d.Bd,d.mc,d.Pc,d.ye,d.Cf];N(a,2,[b]);b=[];for(c=0;c<this.W.length;c++)d=this.W[c],b[c]=[d.Fc,d.$c,d.Ab,d.ze,d.Yg,d.mode,d.eg,d.Fd,d.nd,d.vd,d.Ze,d.Be,d.xd,d.Yb,d.df];N(a,3,[this.Na,b,this.Pa]);
m.save=function(){var a=new hf(this);N(a,0,[this.C]);for(var b=[],c=0;c<this.L;c++){for(var d=this.L[c],e=d,f=[],g=0;g<e.Dc.length;g++){var h=e.Dc[g];f[g]=[h.Ee,h.ig,h.Fc,h.Eb,h.Ab,h.mode,h.kg,h.rn,h.sn]}b[c]=[d.Yb,d.Wg,d.yi,d.Kb,f,d.zi]}N(a,1,[b]);b=[];for(c=0;c<this.vc.length;c++)d=this.vc[c],b[c]=[d.nf,d.Yc,d.Zd,d.Bd,d.mc,d.Pc,d.ye,d.Cf];N(a,2,[b]);b=[];for(c=0;c<this.W.length;c++)d=this.W[c],b[c]=[d.Fc,d.$c,d.Ab,d.ze,d.Yg,d.mode,d.eg,d.Fd,d.nd,d.vd,d.Ze,d.Be,d.xd,d.Yb,d.df];N(a,3,[this.Na,b,this.Pa]);
N(a,4,[this.$a,this.X,this.rb,this.Ca,this.ya]);this.ia>=cg&&(N(a,5,[this.N,this.fa,this.aa,this.Ja,this.ga,this.Ka]),N(a,6,[this.ra[7],this.ra,this.pa,this.A,this.Ia,this.ua]));return a.data()};
m.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);Pk(this);b=a[1];for(c=0;c<this.cb;c++)Qk(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.Ea;c++)Rk(this,c,0===c?32:160,b[0][c]);b=a[3];this.Na=b[0];this.Pa=b[2];for(c=0;c<this.W.length;c++)Sk(this,c,b[1][c]);b=a[4];this.$a=b[0];this.X=b[1];this.rb=b[2];this.Ca=b[3];this.ya=b[4];if(b=a[5])this.N=b[0],this.fa=b[1],this.aa=b[2],this.Ja=b[3],this.ga=
b[4],this.Ka=b[5];if(b=a[6])this.ra=b[1],this.ra[7]=b[0],this.pa=b[2],this.A=b[3],this.Ia=b[4],this.ua=b[5],Vk(this);return!0};var Zk=[0,null,null,0,Array(4),0];function Qk(a,b,c){var d=a.L[b];d||(d={Dc:Array(4)});c=c&&5<=c.length?c:Zk;d.Yb=c[0];d.Wg=c[1];d.yi=c[2];d.Kb=c[3];d.gm=b<<2;for(var e=0;e<d.Dc.length;e++)$k(d,e,c[4][e]);d.zi=c[5]||0;a.L[b]=d}var al=[!0,[0,0],[0,0],[0,0],[0,0]];
function $k(a,b,c){var d=a.Dc[b];d||(d={ig:[0,0],Fc:[0,0],Eb:[0,0],Ab:[0,0]});c=c&&8==c.length?c:al;d.Ee=c[0];d.ig[0]=c[1][0];d.ig[1]=c[1][1];d.Fc[0]=c[2][0];d.Fc[1]=c[2][1];d.Eb[0]=c[3][0];d.Eb[1]=c[3][1];d.Ab[0]=c[4][0];d.Ab[1]=c[4][1];d.mode=c[5];d.kg=c[6];d.controller=a;d.Ti=b;bl(d,c[8],c[9]);a.Dc[b]=d}function bl(a,b,c,d){"string"==typeof b&&(b=hb(b));b&&(a.done=null,a.qn=b.id,a.rn=c,a.pg=b,a.eh=b[c],a.Eg=d)}var cl=[0,Array(4)];
function Rk(a,b,c,d){var e=a.vc[b];e||(e={Yc:[null,null,null,null]});d=d&&8==d.length?d:cl;e.port=c;e.wo=b<<3;e.nf=d[0];e.Yc[0]=d[1][0];e.Yc[1]=d[1][1];e.Yc[2]=d[1][2];e.Yc[3]=d[1][3];e.Zd=d[2];e.Bd=d[3];e.mc=d[4];e.Pc=d[5];e.ye=d[6];e.Cf=d[7];a.vc[b]=e}var dl=[[0,0],[0,0],[0,0],[0,0]];
b[4],this.Ka=b[5];if(b=a[6])this.ra=b[1],this.ra[7]=b[0],this.pa=b[2],this.A=b[3],this.Ia=b[4],this.ua=b[5],Vk(this);return!0};var Zk=[0,null,null,0,Array(4),0];function Qk(a,b,c){var d=a.L[b];d||(d={Dc:Array(4)});c=c&&5<=c.length?c:Zk;d.Yb=c[0];d.Wg=c[1];d.yi=c[2];d.Kb=c[3];d.hm=b<<2;for(var e=0;e<d.Dc.length;e++)$k(d,e,c[4][e]);d.zi=c[5]||0;a.L[b]=d}var al=[!0,[0,0],[0,0],[0,0],[0,0]];
function $k(a,b,c){var d=a.Dc[b];d||(d={ig:[0,0],Fc:[0,0],Eb:[0,0],Ab:[0,0]});c=c&&8==c.length?c:al;d.Ee=c[0];d.ig[0]=c[1][0];d.ig[1]=c[1][1];d.Fc[0]=c[2][0];d.Fc[1]=c[2][1];d.Eb[0]=c[3][0];d.Eb[1]=c[3][1];d.Ab[0]=c[4][0];d.Ab[1]=c[4][1];d.mode=c[5];d.kg=c[6];d.controller=a;d.Ti=b;bl(d,c[8],c[9]);a.Dc[b]=d}function bl(a,b,c,d){"string"==typeof b&&(b=hb(b));b&&(a.done=null,a.rn=b.id,a.sn=c,a.pg=b,a.eh=b[c],a.Eg=d)}var cl=[0,Array(4)];
function Rk(a,b,c,d){var e=a.vc[b];e||(e={Yc:[null,null,null,null]});d=d&&8==d.length?d:cl;e.port=c;e.xo=b<<3;e.nf=d[0];e.Yc[0]=d[1][0];e.Yc[1]=d[1][1];e.Yc[2]=d[1][2];e.Yc[3]=d[1][3];e.Zd=d[2];e.Bd=d[3];e.mc=d[4];e.Pc=d[5];e.ye=d[6];e.Cf=d[7];a.vc[b]=e}var dl=[[0,0],[0,0],[0,0],[0,0]];
function Sk(a,b,c){var d=a.W[b];d||(d={Fc:[0,0],$c:[0,0],Ab:[0,0],ze:[0,0]});c=c&&13<=c.length?c:dl;d.Fc[0]=c[0][0];d.Fc[1]=c[0][1];d.$c[0]=c[1][0];d.$c[1]=c[1][1];d.Ab[0]=c[2][0];d.Ab[1]=c[2][1];d.ze[0]=c[3][0];d.ze[1]=c[3][1];d.Yg=c[4];d.mode=c[5];d.eg=c[6];d.Fd=c[7];d.nd=c[8];d.vd=c[9];d.Ze=c[10];d.Be=c[11];d.xd=c[12];d.Yb=c[13]||0;d.df=c[14]||!1;a.W[b]=d}
function Bk(a,b,c){for(var d="",e=a.qa[c],f=1;8>=f;f++){var g="pcjs-bitCell";f||(g+=" pcjs-bitCellLeft");d+='<div id="'+(c+"-"+f)+'" class="'+g+'" data-value="0">'+f+"</div>\n"}e.innerHTML=d;el(a,b,c,!0)}function fl(a,b,c){if(b=(a=Ak[a.ia|0])&&a[b])for(var d in b)if(a=b[d],a.Lc&1<<c)return a;return null}
function Uk(a,b,c){for(var d=null,e=Ak[a.ia]||Ak[a.ia|0]||Ak[5150],f=0;f<e.length;f++){var g=e[f];if(g&&(g=g[b])){a=a.C[f][c?0:1]&g.Lc;for(var h in g.hd)if(g.hd[h]==a&&(d=h,"number"==typeof+d))break;break}}return d}function Wk(a,b){if(b<+Uk(a,vk,void 0)){if(!a.ja)return 1;if(b<a.ja.length)switch(a.ja[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function Tk(a,b){return+Uk(a,5,b)+ +Uk(a,6,b)}
@ -388,7 +388,7 @@ function el(a,b,c,d){if(c=a.qa[c]){d=d?a.C[b][0]:a.C[b][1]=a.C[b][0];c=nb(c,"pcj
function hl(a){var b=a.qa.swdesc;if(null!=b){var c;c=""+(Tk(a,!0)+"Kb");c+=", "+(+ +Uk(a,3,!0)?"":"No ")+"Coprocessor";c+=", "+{0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"}[+Uk(a,wk,!0)]+" Monitor";c+=", "+ +Uk(a,vk,!0)+" Floppy Drives";if(null!=a.C[0][1]&&a.C[0][1]!=a.C[0][0]||null!=a.C[1][1]&&a.C[1][1]!=a.C[1][0])c+=" (Reset required)";b.textContent=c}}
function il(a,b,c,d,e){var f=a.L[b],g=f.Dc[c],h=g.Eb[f.Kb];A(a,768)&&x(a,d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.Kb+"]",h,!0);f.Kb^=1;b||0!=c||f.Kb||(g.Eb[0]++,255<g.Eb[0]&&(g.Eb[0]=0,g.Eb[1]++,255<g.Eb[1]&&(g.Eb[1]=0)));return h}function jl(a,b,c,d,e,f){var g=a.L[b];A(a,768)&&x(a,d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+g.Kb+"]",null,!0);a=g.Dc[c];a.Eb[g.Kb]=a.ig[g.Kb]=e;g.Kb^=1}
function kl(a,b,c,d,e){var f=a.L[b],g=f.Dc[c],h=g.Ab[f.Kb];A(a,768)&&x(a,d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.Kb+"]",h,!0);f.Kb^=1;b||0!=c||f.Kb||(g.Ab[0]--,0>g.Ab[0]&&(g.Ab[0]=255,g.Ab[1]--,0>g.Ab[1]&&(g.Ab[1]=255)));return h}function ll(a,b,c,d,e,f){var g=a.L[b];A(a,768)&&x(a,d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.Kb+"]",null,!0);a=g.Dc[c];a.Ab[g.Kb]=a.Fc[g.Kb]=e;g.Kb^=1}function ml(a,b,c,d){var e=a.L[b],f=e.Yb|1;e.Yb&=-16;A(a,768)&&x(a,c,null,d,"DMA"+b+".STATUS",f,!0);return f}
function nl(a,b,c,d,e){var f=a.L[b];A(a,768)&&x(a,c,d,e,"DMA"+b+".REQ",null,!0);a=d&3;f.Yb=f.Yb&~(16<<a)|(d&4)<<a+2;f.yi=d}function ol(a,b,c,d,e){var f=a.L[b];A(a,768)&&x(a,c,d,e,"DMA"+b+".MASK",null,!0);b=d&3;c=f.Dc[b];c.Ee=!!(d&4);c.Ee||pl(a,f.gm+b)}function ql(a,b,c,d,e){A(a,768)&&x(a,c,d,e,"DMA"+b+".MODE",null,!0);a.L[b].Dc[d&3].mode=d}function rl(a,b,c,d){var e=a.L[b].zi;A(a,768)&&x(a,c,null,d,"DMA"+b+".TEMP",e,!0);return e}
function nl(a,b,c,d,e){var f=a.L[b];A(a,768)&&x(a,c,d,e,"DMA"+b+".REQ",null,!0);a=d&3;f.Yb=f.Yb&~(16<<a)|(d&4)<<a+2;f.yi=d}function ol(a,b,c,d,e){var f=a.L[b];A(a,768)&&x(a,c,d,e,"DMA"+b+".MASK",null,!0);b=d&3;c=f.Dc[b];c.Ee=!!(d&4);c.Ee||pl(a,f.hm+b)}function ql(a,b,c,d,e){A(a,768)&&x(a,c,d,e,"DMA"+b+".MODE",null,!0);a.L[b].Dc[d&3].mode=d}function rl(a,b,c,d){var e=a.L[b].zi;A(a,768)&&x(a,c,null,d,"DMA"+b+".TEMP",e,!0);return e}
function sl(a,b,c,d,e){A(a,768)&&x(a,c,d,e,"DMA"+b+".MASTER_CLEAR",null,!0);a=a.L[b];for(b=0;b<a.Dc.length;b++)$k(a,b)}function tl(a,b,c,d,e){var f=a.L[b].Dc[c].kg;A(a,768)&&x(a,d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",f,!0);return f}function ul(a,b,c,d,e,f){A(a,768)&&x(a,d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",null,!0);a.L[b].Dc[c].kg=e}function vl(a,b,c,d){var e=a.ra[b];A(a,768)&&x(a,c,null,d,"DMA.SPARE"+b+".PAGE",e,!0);return e}
function wl(a,b,c,d,e){A(a,768)&&x(a,c,d,e,"DMA.SPARE"+b+".PAGE",null,!0);a.ra[b]=d}function xl(a,b,c,d,e){bl(a.L[b>>2].Dc[b&3],c,d,e)}function pl(a,b,c){b=a.L[b>>2].Dc[b&3];b.pg&&b.eh&&b.Eg?(c&&(b.done=c),b.Ee||yl(a,b,!0)):c&&c(!0)}
function yl(a,b,c){c&&(b.count=b.Ab[1]<<8|b.Ab[0],b.type=b.mode&12,b.Pi=b.ud=!1);for(var d=!1;0<=b.count&&(c=b.kg<<16|b.Eb[1]<<8|b.Eb[0],4==b.type?(d=!0,function(c){b.eh.call(b.pg,b.Eg,-1,function(f,g){0>f&&(b.Pi||(b.Pi=!0),f=255);b.Ee||a.ea.qc(c,f);(d=g)&&setTimeout(function(){zl(b)||yl(a,b)},0)})}(c)):8==b.type?(c=a.ea.Qa(c),0>b.eh.call(b.pg,b.Eg,c)&&(b.ud=!0)):0!=b.type&&(b.ud=!0)),!d&&!zl(b););}
@ -402,29 +402,29 @@ function Kl(a,b,c,d,e){x(a,c,d,e,"PIT"+b+".CTRL",null,2048);e=0;c=d&192;b?(e=3,a
77==a.X&&(b=a.W[0],b.$c[0]=b.Fc[0],b.$c[1]=b.Fc[1],b.xd=Wc(a.F,a.ka))}}}function Il(a,b){var c=a.W[b],d=c.Fc[1]<<8|c.Fc[0];d||(d=1==c.nd?256:65536);return d}function cd(a,b){var c=a.W[b],d=c.$c[1]<<8|c.$c[0];d||(d=1==c.nd?256:65536);return d}function Ll(a,b){Nk(a,b);var c=a.W[b];c.ze[0]=c.Ab[0];c.ze[1]=c.Ab[1];c.Ze=!0;Gl(a,b)}function Gl(a,b){var c=a.W[b];c.Fd=32==c.eg?1:0;c.nd=48==c.eg?2:1}
function Nk(a,b,c){var d=a.W[b];if(d.Be&&(2!=b||a.X&1)){var e=Wc(a.F,a.ka),f=(e-d.xd)/a.gb|0;0>f&&(d.xd=e,f=0);var g=Il(a,b),h=cd(a,b)-f;0==d.mode?(0>=h&&(h=0),h||(d.vd=!0,d.Be=!1,b||eg(a,0))):4==d.mode?(d.vd=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.$c[0]=h&255,d.$c[1]=h>>8&255,d.xd=e,!b&&d.vd&&eg(a,0))):6==d.mode&&(h-=f,0>=h&&(d.vd=!d.vd,h=g+h,0>=h&&(h=g),d.$c[0]=h&255,d.$c[1]=h>>8&255,d.xd=e,!b&&d.vd&&eg(a,0)));d.Ab[0]=h&255;d.Ab[1]=h>>8&255;c&&(a.xd=0)}return d}
function bd(a,b){for(var c=0;c<a.W.length;c++)Nk(a,c,b);if(a.ia>=cg){var c=a.F.Y.Jd,d=Wc(a.F,a.ka);null==a.fb&&(a.Ia=Wc(a.F,a.ka),a.Jb=1024,a.fb=Math.floor(a.F.Y.Jd/a.Jb),Yk(a));d>=a.ua&&(a.A[12]|=64,a.A[11]&64&&(a.A[12]|=128,eg(a,8)),a.ua=d+a.fb);a.A[0]==a.A[1]&&a.A[2]==a.A[3]&&a.A[4]==a.A[5]&&(a.A[12]|=32,a.A[11]&32&&(a.A[12]|=128,eg(a,8)));var e=d-a.Ia,f=Math.floor(e/c);if(f&&!(a.A[11]&128)){for(;f--;)if(60<=++a.A[0]&&(a.A[0]=0,60<=++a.A[2]&&(a.A[2]=0,24<=++a.A[4]))){a.A[4]=0;a.A[6]=a.A[6]%7+1;
var g;g=a.A[9];var h=ra[a.A[8]-1];28==h&&0===g%4&&(g%100||0===g%400)&&h++;g=h;++a.A[7]>g&&(a.A[7]=1,12<++a.A[8]&&(a.A[8]=1,a.A[9]=(a.A[9]+1)%100))}a.A[12]|=16;a.A[11]&16&&(a.A[12]|=128,eg(a,8))}a.Ia=d-e%c}}m=pk.prototype;m.Jl=function(a,b){var c=this.$a;this.Ca&16&&(this.X&128?c=this.C[0][1]:this.B&&(c=Ml(this.B)));x(this,a,null,b,"PPI_A",c);return c};m.cn=function(a,b,c){x(this,a,b,c,"PPI_A");this.$a=b};m.Kl=function(a,b){var c=this.X;x(this,a,null,b,"PPI_B",c);return c};
m.dn=function(a,b,c){x(this,a,b,c,"PPI_B");Nl(this,b)};function Nl(a,b){var c=!!(b&2),d=!!(a.X&2);a.X=b;a.B&&Ol(a.B,!(b&128),!!(b&64));c!=d&&ad(a,c)}m.Ll=function(a,b){var c=0,c=5150==(this.ia|0)?this.X&4?c|this.C[1][1]&15:c|this.C[1][1]>>4&1:this.X&8?c|this.C[0][1]>>4:c|this.C[0][1]&15;this.X&1&&Nk(this,2).vd&&(c=this.X&2?c|32:c|16);x(this,a,null,b,"PPI_C",c,32896);return c};m.en=function(a,b,c){x(this,a,b,c,"PPI_C");this.rb=b};m.Ml=function(a,b){var c=this.Ca;x(this,a,null,b,"PPI_CTRL",c);return c};
m.fn=function(a,b,c){x(this,a,b,c,"PPI_CTRL");this.Ca=b};m.Wk=function(a,b){var c=this.B?Ml(this.B):0;x(this,a,null,b,"8041_KBD",c);this.wa&=-2;return c};m.om=function(a,b,c){x(this,a,b,c,"8041_KBD")};m.Vk=function(a,b){var c=this.X;x(this,a,null,b,"8041_CTRL",c);return c};m.nm=function(a,b,c){x(this,a,b,c,"8041_CTRL");Nl(this,b)};m.Xk=function(a,b){var c=this.wa;x(this,a,null,b,"8041_STATUS",c);return c};
var g;g=a.A[9];var h=ra[a.A[8]-1];28==h&&0===g%4&&(g%100||0===g%400)&&h++;g=h;++a.A[7]>g&&(a.A[7]=1,12<++a.A[8]&&(a.A[8]=1,a.A[9]=(a.A[9]+1)%100))}a.A[12]|=16;a.A[11]&16&&(a.A[12]|=128,eg(a,8))}a.Ia=d-e%c}}m=pk.prototype;m.Kl=function(a,b){var c=this.$a;this.Ca&16&&(this.X&128?c=this.C[0][1]:this.B&&(c=Ml(this.B)));x(this,a,null,b,"PPI_A",c);return c};m.dn=function(a,b,c){x(this,a,b,c,"PPI_A");this.$a=b};m.Ll=function(a,b){var c=this.X;x(this,a,null,b,"PPI_B",c);return c};
m.en=function(a,b,c){x(this,a,b,c,"PPI_B");Nl(this,b)};function Nl(a,b){var c=!!(b&2),d=!!(a.X&2);a.X=b;a.B&&Ol(a.B,!(b&128),!!(b&64));c!=d&&ad(a,c)}m.Ml=function(a,b){var c=0,c=5150==(this.ia|0)?this.X&4?c|this.C[1][1]&15:c|this.C[1][1]>>4&1:this.X&8?c|this.C[0][1]>>4:c|this.C[0][1]&15;this.X&1&&Nk(this,2).vd&&(c=this.X&2?c|32:c|16);x(this,a,null,b,"PPI_C",c,32896);return c};m.fn=function(a,b,c){x(this,a,b,c,"PPI_C");this.rb=b};m.Nl=function(a,b){var c=this.Ca;x(this,a,null,b,"PPI_CTRL",c);return c};
m.gn=function(a,b,c){x(this,a,b,c,"PPI_CTRL");this.Ca=b};m.Wk=function(a,b){var c=this.B?Ml(this.B):0;x(this,a,null,b,"8041_KBD",c);this.wa&=-2;return c};m.pm=function(a,b,c){x(this,a,b,c,"8041_KBD")};m.Vk=function(a,b){var c=this.X;x(this,a,null,b,"8041_CTRL",c);return c};m.om=function(a,b,c){x(this,a,b,c,"8041_CTRL");Nl(this,b)};m.Xk=function(a,b){var c=this.wa;x(this,a,null,b,"8041_STATUS",c);return c};
m.Yk=function(a,b){var c=this.Ja;x(this,a,null,b,"8042_OUTBUFF",c,16384);this.N&=-258;this.B&&Pl(this.B);return c};
m.qm=function(a,b,c){x(this,a,b,c,"8042_INBUF.DATA",null,16384);if(this.N&8)switch(this.fa){case 96:Ql(this,b);break;case 209:Rl(this,b);break;default:if(Ql(this,this.aa&-17),this.B){a=this.B;c=b;var d=-1;A(a)&&y(a,"sendCmd("+t(c)+")");switch(a.W||c){case 255:d=250;Sl(a);break;case 243:a.W&&(c=0);Tl(a,250);a.W=c;break;case 237:a.W&&(c=0);Tl(a,250);a.W=c;break;default:y(a,"sendCmd(): unrecognized command")}Ul(this,d)}}this.fa=b;this.N&=-9};
m.Zk=function(a,b){var c=this.X&-209|(Wc(this.F)&64?16:0);x(this,a,null,b,"8042_RWREG",c,16384);return c};m.rm=function(a,b,c){x(this,a,b,c,"8042_RWREG",null,16384);Nl(this,b)};m.$k=function(a,b){x(this,a,null,b,"8042_STATUS",this.N,16384);var c=this.N&255;this.N&256&&(this.N|=1,this.N&=-257);return c};
m.pm=function(a,b,c){x(this,a,b,c,"8042_INBUFF.CMD",null,16384);this.fa=b;this.N|=8;a=0;240<=this.fa&&(a=this.fa^15,this.fa=240);switch(this.fa){case 32:Ul(this,this.aa);break;case 173:Ql(this,this.aa|16);break;case 174:Ql(this,this.aa&-17);this.B&&Pl(this.B);break;case 170:this.B&&(a=this.B,a.A=[],A(a)&&y(a,"scan codes flushed"));Ql(this,this.aa|16);Ul(this,85);Rl(this,3);break;case 171:Ul(this,0);break;case 192:Ul(this,this.ga);break;case 208:Ul(this,this.Ka);break;case 224:Ul(this,this.aa&16?0:
m.rm=function(a,b,c){x(this,a,b,c,"8042_INBUF.DATA",null,16384);if(this.N&8)switch(this.fa){case 96:Ql(this,b);break;case 209:Rl(this,b);break;default:if(Ql(this,this.aa&-17),this.B){a=this.B;c=b;var d=-1;A(a)&&y(a,"sendCmd("+t(c)+")");switch(a.W||c){case 255:d=250;Sl(a);break;case 243:a.W&&(c=0);Tl(a,250);a.W=c;break;case 237:a.W&&(c=0);Tl(a,250);a.W=c;break;default:y(a,"sendCmd(): unrecognized command")}Ul(this,d)}}this.fa=b;this.N&=-9};
m.Zk=function(a,b){var c=this.X&-209|(Wc(this.F)&64?16:0);x(this,a,null,b,"8042_RWREG",c,16384);return c};m.sm=function(a,b,c){x(this,a,b,c,"8042_RWREG",null,16384);Nl(this,b)};m.$k=function(a,b){x(this,a,null,b,"8042_STATUS",this.N,16384);var c=this.N&255;this.N&256&&(this.N|=1,this.N&=-257);return c};
m.qm=function(a,b,c){x(this,a,b,c,"8042_INBUFF.CMD",null,16384);this.fa=b;this.N|=8;a=0;240<=this.fa&&(a=this.fa^15,this.fa=240);switch(this.fa){case 32:Ul(this,this.aa);break;case 173:Ql(this,this.aa|16);break;case 174:Ql(this,this.aa&-17);this.B&&Pl(this.B);break;case 170:this.B&&(a=this.B,a.A=[],A(a)&&y(a,"scan codes flushed"));Ql(this,this.aa|16);Ul(this,85);Rl(this,3);break;case 171:Ul(this,0);break;case 192:Ul(this,this.ga);break;case 208:Ul(this,this.Ka);break;case 224:Ul(this,this.aa&16?0:
1);break;case 240:a&1&&qe(this.F)}};function Ql(a,b){a.aa=b;a.N=a.N&-5|b&4;a.B&&Ol(a.B,!!(b&8),!(b&16))}function Ul(a,b,c){0<=b&&(a.Ja=b,c?a.N|=1:(a.N&=-2,a.N|=256))}function Rl(a,b){a.Ka=b;Rb(a.ea,!!(b&2));b&1||qe(a.F)}function Vl(a,b){a.ia<cg?(eg(a,1,4),a.wa|=1):a.aa&16||a.N&257||(Ul(a,b,!0),Wl(a.B),eg(a,1,120))}function Xl(a,b,c,d){var e=a.C[b][1];x(a,c,null,d,"DIPSW-"+b,e,32768);return e}m.nl=function(a,b){x(this,a,null,b,"CMOS.ADDR",this.pa,4096);return this.pa};
m.Fm=function(a,b,c){x(this,a,b,c,"CMOS.ADDR",null,4096);this.pa=b;this.ya=b&128?0:128};m.ol=function(a,b){var c=this.pa&63,d=13>=c?Ok(this,c):this.A[c];A(this,4352)&&x(this,a,null,b,"CMOS.DATA["+t(c)+"]",d,!0);null!=b&&12==c&&(this.A[c]&=15,d&128&&dg(this,8),d&64&&this.A[11]&64&&Yk(this));return d};
m.Gm=function(a,b,c){var d=this.pa&63;A(this,4352)&&x(this,a,b,c,"CMOS.DATA["+t(d)+"]",null,!0);a=b^this.A[d];if(13>=d){if(c=b,10>d){var e=!1;this.A[11]&4||(c=10*(c>>4)+(c&15),e=!0);if(4==d||5==d)e&&23<c&&(c+=48),this.A[11]&2||(12>=c?c=12==c?0:c:(c-=116,c=24==c?12:c))}}else c=b;this.A[d]=c;11==d&&a&64&&b&64&&Yk(this)};m.fk=function(a,b,c){x(this,a,b,c,"NMI");this.ya=b};m.Qm=function(a,b,c){x(this,a,b,c,"FPU.CLEAR")};m.Rm=function(a,b,c){x(this,a,b,c,"FPU.RESET");this.Tb&&Yf(this.Tb)};
m.$l=function(a){if(A(this,16)&&kk(this.ha,26,a)){var b=this.F.G>>8;df(this.F,a,function(a,d){return function(e){d=Wc(a.F)-d;var f,g=a.F.M&255,h=a.F.M>>8,k=a.F.M&255,l=a.F.M>>8;if(2==b||3==b)f=" CH(hour)="+u(h)+" CL(min)="+t(g)+" DH(sec)="+t(l);else if(4==b||5==b)f=" CX(year)="+u(a.F.I)+" DH(month)="+t(l)+" DL(day)="+t(k);g=a.ha;h=d;g.message("INT "+t(26)+": C="+(pf(g.F)?1:0)+(f||"")+" (cycles="+h+(e?",level="+(e+1):"")+")")}}(this,Wc(this.F)))}return!0};
m.Gm=function(a,b,c){x(this,a,b,c,"CMOS.ADDR",null,4096);this.pa=b;this.ya=b&128?0:128};m.ol=function(a,b){var c=this.pa&63,d=13>=c?Ok(this,c):this.A[c];A(this,4352)&&x(this,a,null,b,"CMOS.DATA["+t(c)+"]",d,!0);null!=b&&12==c&&(this.A[c]&=15,d&128&&dg(this,8),d&64&&this.A[11]&64&&Yk(this));return d};
m.Hm=function(a,b,c){var d=this.pa&63;A(this,4352)&&x(this,a,b,c,"CMOS.DATA["+t(d)+"]",null,!0);a=b^this.A[d];if(13>=d){if(c=b,10>d){var e=!1;this.A[11]&4||(c=10*(c>>4)+(c&15),e=!0);if(4==d||5==d)e&&23<c&&(c+=48),this.A[11]&2||(12>=c?c=12==c?0:c:(c-=116,c=24==c?12:c))}}else c=b;this.A[d]=c;11==d&&a&64&&b&64&&Yk(this)};m.fk=function(a,b,c){x(this,a,b,c,"NMI");this.ya=b};m.Rm=function(a,b,c){x(this,a,b,c,"FPU.CLEAR")};m.Sm=function(a,b,c){x(this,a,b,c,"FPU.RESET");this.Tb&&Yf(this.Tb)};
m.am=function(a){if(A(this,16)&&kk(this.ha,26,a)){var b=this.F.G>>8;df(this.F,a,function(a,d){return function(e){d=Wc(a.F)-d;var f,g=a.F.M&255,h=a.F.M>>8,k=a.F.M&255,l=a.F.M>>8;if(2==b||3==b)f=" CH(hour)="+u(h)+" CL(min)="+t(g)+" DH(sec)="+t(l);else if(4==b||5==b)f=" CX(year)="+u(a.F.I)+" DH(month)="+t(l)+" DL(day)="+t(k);g=a.ha;h=d;g.message("INT "+t(26)+": C="+(pf(g.F)?1:0)+(f||"")+" (cycles="+h+(e?",level="+(e+1):"")+")")}}(this,Wc(this.F)))}return!0};
function ad(a,b){if(a.Fa)try{void 0!==b?a.Db=b:b=a.Db&&a.F&&a.F.la.Ib;var c=Math.round(1193181/Il(a,2));if(20>c||2E4<c)b=!1;b?a.U?(a.U.frequency.value=c,A(a,33554432)&&y(a,"speaker set to "+c+"hz",!0)):(a.U=a.Fa.createOscillator(),a.U&&(a.U.type="number"==typeof a.U.type?1:"square",a.U.connect(a.Fa.destination),a.U.frequency.value=c,"start"in a.U?a.U.start(0):a.U.noteOn(0),A(a,33554432)&&y(a,"speaker on at "+c+"hz",!0))):a.U&&("stop"in a.U?a.U.stop(0):a.U.noteOff(0),a.U.disconnect(),delete a.U,A(a,
33554432)&&y(a,"speaker off at "+c+"hz",!0))}catch(d){a.Oa("AudioContext exception: "+d.message),a.Fa=null}else b&&y(a,"BEEP",33554432)}
var Ck={0:function(a,b){return il(this,0,0,a,b)},1:function(a,b){return kl(this,0,0,a,b)},2:function(a,b){return il(this,0,1,a,b)},3:function(a,b){return kl(this,0,1,a,b)},4:function(a,b){return il(this,0,2,a,b)},5:function(a,b){return kl(this,0,2,a,b)},6:function(a,b){return il(this,0,3,a,b)},7:function(a,b){return kl(this,0,3,a,b)},8:function(a,b){return ml(this,0,a,b)},13:function(a,b){return rl(this,0,a,b)},32:function(a,b){return Al(this,0,b)},33:function(a,b){return Dl(this,0,b)},64:function(a,
b){return Fl(this,0,0,a,b)},65:function(a,b){return Fl(this,0,1,a,b)},66:function(a,b){return Fl(this,0,2,a,b)},67:function(a,b){return Jl(this,0,a,b)},129:function(a,b){return tl(this,0,2,a,b)},130:function(a,b){return tl(this,0,3,a,b)},131:function(a,b){return tl(this,0,1,a,b)},135:function(a,b){return tl(this,0,0,a,b)}},Ek={96:pk.prototype.Jl,97:pk.prototype.Kl,98:pk.prototype.Ll,99:pk.prototype.Ml},Ik={96:pk.prototype.Yk,97:pk.prototype.Zk,100:pk.prototype.$k,112:pk.prototype.nl,113:pk.prototype.ol,
b){return Fl(this,0,0,a,b)},65:function(a,b){return Fl(this,0,1,a,b)},66:function(a,b){return Fl(this,0,2,a,b)},67:function(a,b){return Jl(this,0,a,b)},129:function(a,b){return tl(this,0,2,a,b)},130:function(a,b){return tl(this,0,3,a,b)},131:function(a,b){return tl(this,0,1,a,b)},135:function(a,b){return tl(this,0,0,a,b)}},Ek={96:pk.prototype.Kl,97:pk.prototype.Ll,98:pk.prototype.Ml,99:pk.prototype.Nl},Ik={96:pk.prototype.Yk,97:pk.prototype.Zk,100:pk.prototype.$k,112:pk.prototype.nl,113:pk.prototype.ol,
128:function(a,b){return vl(this,7,a,b)},132:function(a,b){return vl(this,0,a,b)},133:function(a,b){return vl(this,1,a,b)},134:function(a,b){return vl(this,2,a,b)},136:function(a,b){return vl(this,3,a,b)},137:function(a,b){return tl(this,1,2,a,b)},138:function(a,b){return tl(this,1,3,a,b)},139:function(a,b){return tl(this,1,1,a,b)},140:function(a,b){return vl(this,4,a,b)},141:function(a,b){return vl(this,5,a,b)},142:function(a,b){return vl(this,6,a,b)},143:function(a,b){return tl(this,1,0,a,b)},160:function(a,
b){return Al(this,1,b)},161:function(a,b){return Dl(this,1,b)},192:function(a,b){return il(this,1,0,a,b)},194:function(a,b){return kl(this,1,0,a,b)},196:function(a,b){return il(this,1,1,a,b)},198:function(a,b){return kl(this,1,1,a,b)},200:function(a,b){return il(this,1,2,a,b)},202:function(a,b){return kl(this,1,2,a,b)},204:function(a,b){return il(this,1,3,a,b)},206:function(a,b){return kl(this,1,3,a,b)},208:function(a,b){return ml(this,1,a,b)},218:function(a,b){return rl(this,1,a,b)}},Gk={96:pk.prototype.Wk,
97:pk.prototype.Vk,100:pk.prototype.Xk,102:function(a,b){return Xl(this,0,a,b)},103:function(a,b){return Xl(this,1,a,b)}},Kk={72:function(a,b){return Fl(this,1,0,a,b)},73:function(a,b){return Fl(this,1,1,a,b)},74:function(a,b){return Fl(this,1,2,a,b)},75:function(a,b){return Jl(this,1,a,b)}},Dk={0:function(a,b,c){jl(this,0,0,a,b,c)},1:function(a,b,c){ll(this,0,0,a,b,c)},2:function(a,b,c){jl(this,0,1,a,b,c)},3:function(a,b,c){ll(this,0,1,a,b,c)},4:function(a,b,c){jl(this,0,2,a,b,c)},5:function(a,b,
c){ll(this,0,2,a,b,c)},6:function(a,b,c){jl(this,0,3,a,b,c)},7:function(a,b,c){ll(this,0,3,a,b,c)},8:function(a,b,c){A(this,768)&&x(this,a,b,c,"DMA0.CMD",null,!0);this.L[0].Wg=b},9:function(a,b,c){nl(this,0,a,b,c)},10:function(a,b,c){ol(this,0,a,b,c)},11:function(a,b,c){ql(this,0,a,b,c)},12:function(a,b,c){A(this,768)&&x(this,a,b,c,"DMA0.RESET_FF",null,!0);this.L[0].Kb=0},13:function(a,b,c){sl(this,0,a,b,c)},32:function(a,b,c){Bl(this,0,b,c)},33:function(a,b,c){El(this,0,b,c)},64:function(a,b,c){Hl(this,
0,0,a,b,c)},65:function(a,b,c){Hl(this,0,1,a,b,c)},66:function(a,b,c){Hl(this,0,2,a,b,c)},67:function(a,b,c){Kl(this,0,a,b,c)},129:function(a,b,c){ul(this,0,2,a,b,c)},130:function(a,b,c){ul(this,0,3,a,b,c)},131:function(a,b,c){ul(this,0,1,a,b,c)},135:function(a,b,c){ul(this,0,0,a,b,c)}},Fk={96:pk.prototype.cn,97:pk.prototype.dn,98:pk.prototype.en,99:pk.prototype.fn,160:pk.prototype.fk},Jk={96:pk.prototype.qm,97:pk.prototype.rm,100:pk.prototype.pm,112:pk.prototype.Fm,113:pk.prototype.Gm,128:function(a,
0,0,a,b,c)},65:function(a,b,c){Hl(this,0,1,a,b,c)},66:function(a,b,c){Hl(this,0,2,a,b,c)},67:function(a,b,c){Kl(this,0,a,b,c)},129:function(a,b,c){ul(this,0,2,a,b,c)},130:function(a,b,c){ul(this,0,3,a,b,c)},131:function(a,b,c){ul(this,0,1,a,b,c)},135:function(a,b,c){ul(this,0,0,a,b,c)}},Fk={96:pk.prototype.dn,97:pk.prototype.en,98:pk.prototype.fn,99:pk.prototype.gn,160:pk.prototype.fk},Jk={96:pk.prototype.rm,97:pk.prototype.sm,100:pk.prototype.qm,112:pk.prototype.Gm,113:pk.prototype.Hm,128:function(a,
b,c){wl(this,7,a,b,c)},132:function(a,b,c){wl(this,0,a,b,c)},133:function(a,b,c){wl(this,1,a,b,c)},134:function(a,b,c){wl(this,2,a,b,c)},136:function(a,b,c){wl(this,3,a,b,c)},137:function(a,b,c){ul(this,1,2,a,b,c)},138:function(a,b,c){ul(this,1,3,a,b,c)},139:function(a,b,c){ul(this,1,1,a,b,c)},140:function(a,b,c){wl(this,4,a,b,c)},141:function(a,b,c){wl(this,5,a,b,c)},142:function(a,b,c){wl(this,6,a,b,c)},143:function(a,b,c){ul(this,1,0,a,b,c)},160:function(a,b,c){Bl(this,1,b,c)},161:function(a,b,
c){El(this,1,b,c)},192:function(a,b,c){jl(this,1,0,a,b,c)},194:function(a,b,c){ll(this,1,0,a,b,c)},196:function(a,b,c){jl(this,1,1,a,b,c)},198:function(a,b,c){ll(this,1,1,a,b,c)},200:function(a,b,c){jl(this,1,2,a,b,c)},202:function(a,b,c){ll(this,1,2,a,b,c)},204:function(a,b,c){jl(this,1,3,a,b,c)},206:function(a,b,c){ll(this,1,3,a,b,c)},208:function(a,b,c){A(this,768)&&x(this,a,b,c,"DMA1.CMD",null,!0);this.L[1].Wg=b},210:function(a,b,c){nl(this,1,a,b,c)},212:function(a,b,c){ol(this,1,a,b,c)},214:function(a,
b,c){ql(this,1,a,b,c)},216:function(a,b,c){A(this,768)&&x(this,a,b,c,"DMA1.RESET_FF",null,!0);this.L[1].Kb=0},218:function(a,b,c){sl(this,1,a,b,c)},240:pk.prototype.Qm,241:pk.prototype.Rm},Hk={96:pk.prototype.om,97:pk.prototype.nm,160:pk.prototype.fk},Lk={72:function(a,b,c){Hl(this,1,0,a,b,c)},73:function(a,b,c){Hl(this,1,1,a,b,c)},74:function(a,b,c){Hl(this,1,2,a,b,c)},75:function(a,b,c){Kl(this,1,a,b,c)}};
b,c){ql(this,1,a,b,c)},216:function(a,b,c){A(this,768)&&x(this,a,b,c,"DMA1.RESET_FF",null,!0);this.L[1].Kb=0},218:function(a,b,c){sl(this,1,a,b,c)},240:pk.prototype.Rm,241:pk.prototype.Sm},Hk={96:pk.prototype.pm,97:pk.prototype.om,160:pk.prototype.fk},Lk={72:function(a,b,c){Hl(this,1,0,a,b,c)},73:function(a,b,c){Hl(this,1,1,a,b,c)},74:function(a,b,c){Hl(this,1,2,a,b,c)},75:function(a,b,c){Kl(this,1,a,b,c)}};
Qa(function(){for(var a=nb(document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new pk(d);mb(d,c);hl(d)}});
function Yl(a){Ua.call(this,"ROM",a,Yl);this.A=null;this.L=a.addr;this.C=a.size;this.N=a.alias;this.V=a.file;this.U=fa(this.V);this.B=a.notify;this.W=null;if(this.B&&(a=this.B.indexOf("["),0<a)){try{this.W=eval(this.B.substr(a))}catch(d){}this.B=this.B.substr(0,a)}if(this.V){a=this.V;var b=ga(this.U);"json"!=b&&"hex"!=b&&(a=xa()+"/api/v1/dump?file="+this.V+"&format=bytes&decimal=true");var c=this;va(a,null,!0,function(a,b,f){Zl(c,a,b,f)})}}db(Yl);
Yl.prototype.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;$l(this)};Yl.prototype.ic=function(){this.Rd&&(this.ha&&am(this.ha,this.id,0,this.L>>>4,0,this.L,this.C,this.Rd),delete this.Rd);return!0};Yl.prototype.hc=function(){return!0};
@ -437,8 +437,8 @@ m.reset=function(){if(!this.B&&!this.V&&this.N){var a=1024*Tk(this.N);this.A&&a!
1]=c>>8;Xk(a)}}else w("No RAM allocated")};m.save=function(){var a=new hf(this);this.controller&&N(a,0,this.controller.save());return a.data()};m.restore=function(a){return this.controller?this.controller.restore(a[0]):!0};function em(a){this.N=a;this.C=gm;this.ha=hm;this.B=im;this.A=null}var fm=-2134900736,gm=65535,hm=2575,im=2,jm=[null,0],km=[function(a){return this.controller.Qa(a)},null,null,function(a,b){this.controller.qc(a,b)},null,null];m=em.prototype;m.save=function(){return[this.C,this.B]};
m.restore=function(a){this.qc(0,a[0]&255);this.qc(2,a[1]&255);return!0};m.Qa=function(a){var b=255;2>a?b=a&1?this.ha>>8:this.ha&255:4>a&&(b=a&1?this.B>>8:this.B&255);return b};m.qc=function(a,b){if(a)2==a&&(this.B=this.B&-256|b);else if(b!=(this.C&255)){var c=this.N.ea;if(b&1)this.A&&(Wb(c,917504,131072,this.A),this.A=null);else{this.A||(this.A=Xb(c,917504,131072));var d=Xb(c,16646144,131072);Wb(c,917504,131072,d,b&2?1:$b)}this.C=this.C&-256|b}};m.Ri=function(){return jm};m.fh=function(){return km};
Qa(function(){for(var a=nb(document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new dm(d);mb(d,c)}});function lm(a){Ua.call(this,"Keyboard",a,lm,65536);mm(this,a.model);this.ja=Ga("Mobi");this.pa=Ga("MSIE");y(this,"mobile keyboard support: "+(this.ja?"true":"false"));this.ga=0;this.ka=this.ah=!1;this.B=[];this.ua=50;rb(this)}db(lm);
var nm=["US83","US84","US101"],X={yn:1,zn:3,An:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,un:65,vn:66,wn:67,Bn:68,E:69,Cn:70,Fn:71,Gn:72,Hn:73,In:74,Jn:75,Kn:76,Ln:77,Nn:78,On:79,Pn:80,Q:81,Qn:82,Un:83,Zn:84,co:85,eo:86,fo:87,io:88,jo:89,ko:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,lo:97,mo:98,oo:99,d:100,e:101,po:102,qo:103,ro:104,
so:105,to:106,k:107,uo:108,vo:109,n:110,xo:111,p:112,q:113,r:114,yo:115,t:116,Ao:117,Bo:118,Co:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},om={};om[186]=X[";"];om[187]=X["="];om[188]=X[","];om[189]=X["-"];om[190]=X["."];om[191]=X["/"];om[192]=X["`"];om[219]=X["["];om[220]=X["\\"];om[221]=X["]"];om[222]=X["'"];om[173]=X["-"];var pm={};pm[X["1"]]=X["!"];pm[X["2"]]=X["@"];pm[X["3"]]=X["#"];pm[X["4"]]=X.$;pm[X["5"]]=X["%"];pm[X["6"]]=X["^"];pm[X["7"]]=X["&"];pm[X["8"]]=X["*"];pm[X["9"]]=X["("];
var nm=["US83","US84","US101"],X={zn:1,An:3,Bn:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,vn:65,wn:66,xn:67,Cn:68,E:69,Dn:70,Gn:71,Hn:72,In:73,Jn:74,Kn:75,Ln:76,Mn:77,On:78,Pn:79,Qn:80,Q:81,Rn:82,Vn:83,$n:84,eo:85,fo:86,ho:87,jo:88,ko:89,lo:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,mo:97,no:98,po:99,d:100,e:101,qo:102,ro:103,so:104,
to:105,uo:106,k:107,vo:108,wo:109,n:110,yo:111,p:112,q:113,r:114,zo:115,t:116,Bo:117,Co:118,Do:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},om={};om[186]=X[";"];om[187]=X["="];om[188]=X[","];om[189]=X["-"];om[190]=X["."];om[191]=X["/"];om[192]=X["`"];om[219]=X["["];om[220]=X["\\"];om[221]=X["]"];om[222]=X["'"];om[173]=X["-"];var pm={};pm[X["1"]]=X["!"];pm[X["2"]]=X["@"];pm[X["3"]]=X["#"];pm[X["4"]]=X.$;pm[X["5"]]=X["%"];pm[X["6"]]=X["^"];pm[X["7"]]=X["&"];pm[X["8"]]=X["*"];pm[X["9"]]=X["("];
pm[X["0"]]=X[")"];pm[186]=X[":"];pm[187]=X["+"];pm[188]=X["<"];pm[189]=X._;pm[190]=X[">"];pm[191]=X["?"];pm[192]=X["~"];pm[219]=X["{"];pm[220]=X["|"];pm[221]=X["}"];pm[222]=X['"'];pm[173]=X._;pm[61]=X["+"];pm[59]=X[":"];
var qm={3016:1,1016:2,1017:8,1018:32,1091:128,1093:64,1224:128,1020:512,1144:1024,1145:2048},rm={TAB:1009,ESC:1027,F1:1112,F2:1113,F3:1114,F4:1115,F5:1116,F6:1117,F7:1118,F8:1119,F9:1120,F10:1121,LEFT:1037,UP:1038,RIGHT:1039,DOWN:1040,SYSREQ:4027,CTRL_C:4003,CTRL_BREAK:4008,CTRL_ALT_DEL:4046,CTRL_ALT_INS:4045,CTRL_ALT_ENTER:4013},sm={esc:1027,1:X["1"],2:X["2"],3:X["3"],4:X["4"],5:X["5"],6:X["6"],7:X["7"],8:X["8"],9:X["9"],0:X["0"],"-":X["-"],"=":X["="],bs:1008,tab:1009,q:81,w:87,e:69,r:82,t:84,y:89,
u:85,i:73,o:79,p:80,"[":X["["],"]":X["]"],enter:13,ctrl:1017,a:65,s:83,d:68,f:70,g:71,h:72,j:74,k:75,l:76,";":X[";"],quote:X["'"],"`":X["`"],shift:1016,"\\":X["\\"],z:90,x:88,c:67,v:86,b:66,n:78,m:77,",":X[","],".":X["."],"/":X["/"],"right-shift":3016,prtsc:1044,alt:1018,space:1032,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,"num-lock":1144,"scroll-lock":1145,"num-home":1036,"num-up":1038,"num-pgup":1033,"num-sub":1109,"num-left":1037,"num-center":1101,
@ -460,7 +460,7 @@ function Dm(a,b,c){var d=b;if(65<=b&&90>=b)!(a.xc&515)==c&&(d=b+32);else if(97<=
function um(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode,h=Dm(a,g,!0);a.ah&&h==X["`"]&&(g=h=27);if(Y[g+1E3])if(h+=1E3,2==b.location&&(h+=2E3),wm(a,h,!1,c)){if(20==g||144==g||145==g)a.pa||(c=e=!0);if(!(c||91!=g&&93!=g))for(var k=0;k<a.B.length;k++){var l=a.B[k];l.Ef=!1;0<l.Ld&&(l.Ld=0)}}else 8==g&&8==(a.xc&40)&&(h=4008),d=!1;else if(Y[h]&&a.xc&60&&(d=!1),d&&c||a.xc&192)f=!0;d||b.preventDefault();f||a.ja&&d||(c?vm(a,h,e):xm(a,h)||(b=Dm(a,g,!1),b!=h&&xm(a,b)));return d}
function Cm(a,b,c){var d=!1;wm(a,b,!0,c);var e=Y[b]||Y[b+1E3];if(void 0!==e){14==e&&40==(a.xc&40)&&(e=83);var d=[],f=e&255;if(83<f&&83==a.ra)return!1;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,h=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==h?a.C&3||a.C&512&&b||(g=h):29==h?a.C&12||(g=h):56==h?a.C&48||(g=h):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)e=a,f=d[c],e.A&&(20>e.A.length?(A(e)&&y(e,"scan code "+t(f)+" buffered"),e.A.push(f),1==
e.A.length&&e.N&&Vl(e.N,f)):(20==e.A.length&&e.A.push(255),y(e,"scan code buffer overflow")));d=!0}return d}Qa(function(){for(var a=nb(document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new lm(d);mb(d,c)}});
function Z(a,b,c,d,e){Ua.call(this,"Video",a,Z,262144);this.ia=a.model;var f=Em[this.ia]||Em.mda;this.Ua=f[0];this.Ed=a.memory||0;this.ag=a.switches;this.wa=a.mode;if(null==this.wa||null==Fm[this.wa])this.wa=f[1];this.kd=a.charCols;this.le=a.charRows;if(void 0===this.kd||void 0===this.le)this.kd=Fm[this.wa][0],this.le=Fm[this.wa][1];this.ra=a.screenWidth;this.Ea=a.screenHeight;this.sn=a.scale;this.pi=12<=Math.round(this.ra/this.kd);this.ka=b;this.ja=c;this.V=(this.vk=d)||b||null;this.bg=a.touchScreen;
function Z(a,b,c,d,e){Ua.call(this,"Video",a,Z,262144);this.ia=a.model;var f=Em[this.ia]||Em.mda;this.Ua=f[0];this.Ed=a.memory||0;this.ag=a.switches;this.wa=a.mode;if(null==this.wa||null==Fm[this.wa])this.wa=f[1];this.kd=a.charCols;this.le=a.charRows;if(void 0===this.kd||void 0===this.le)this.kd=Fm[this.wa][0],this.le=Fm[this.wa][1];this.ra=a.screenWidth;this.Ea=a.screenHeight;this.tn=a.scale;this.pi=12<=Math.round(this.ra/this.kd);this.ka=b;this.ja=c;this.V=(this.vk=d)||b||null;this.bg=a.touchScreen;
this.me=Gm;this.W=null;this.Og=a.autoLock;this.ob=this.ac=0;this.Na=[];this.Ca=Array(this.Ua==cm?256:16);this.rb=!1;var g=this;this.qf=Ga("Gecko/");b=["","moz","webkit","ms"];if(this.ga=e)if(this.ga.We=e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen,this.ga.We){for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenchange","on"+c in document){document.addEventListener(c,function(){Hm(g,document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||
document.msFullscreenElement?!0:!1)},!1);break}for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenerror","on"+c in document){document.addEventListener(c,function(){Hm(g,null)},!1);break}}this.V&&(this.V.onfocus=function(){return g.Fg(!0)},this.V.onblur=function(){return g.Fg(!1)},this.V.De=this.V.requestPointerLock||this.V.mozRequestPointerLock||this.V.webkitRequestPointerLock,this.V.rk=this.V.exitPointerLock||this.V.mozExitPointerLock||this.V.webkitExitPointerLock,this.V.De&&(e=function(){g.Vf(document.pointerLockElement===
g.V||document.mozPointerLockElement===g.V||document.webkitPointerLockElement===g.V)},"onpointerlockchange"in document?document.addEventListener("pointerlockchange",e,!1):"onmozpointerlockchange"in document?document.addEventListener("mozpointerlockchange",e,!1):"onwebkitpointerlockchange"in document&&document.addEventListener("webkitpointerlockchange",e,!1)));if(a=a.fontROM)"json"!=ga(a)&&(a=xa()+"/api/v1/dump?file="+a+"&format=bytes"),va(a,null,!0,function(a,b,c){Im(g,a,b,c)})}db(Z);
@ -470,8 +470,8 @@ var Lm=[[0,0,0,255],[127,192,127,255],[127,192,127,255],[127,255,127,255],[127,2
16777215,-16777216,-16776961,-16711936,-16711681,-65536,-65281,-256,-1],Sm=[0];Sm[128]=1;Sm[32768]=2;Sm[32896]=3;Sm[8388608]=4;Sm[8388736]=5;Sm[8421376]=6;Sm[8421504]=7;Sm[-2147483648]=8;Sm[-2147483520]=9;Sm[-2147450880]=10;Sm[-2147450752]=11;Sm[-2139095040]=12;Sm[-2139094912]=13;Sm[-2139062272]=14;Sm[-2139062144]=15;
function Tm(a,b,c,d){if(void 0!==b&&(!c||c.length)){this.video=a;var e=Um[b],f=a.ya||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(5>b?Vm:Wm)];this.ha=a.ha;this.type=e[0];this.port=e[1];this.Ua=b;this.ob=e[2];this.ac=e[3];this.Ed=d||e[4];65536<=this.Ed&&720896<=this.ob&&(this.ac=Math.min(this.Ed>>2,32768));this.Hc=c[0];this.gd=c[1];this.sf=c[2];this.ma=c[3];this.Ac=c[4]&255;this.Ig=c[4]>>8&255;this.mb=c[5];this.mh=Vm;this.jg=Xm;if(5<=b){this.mh=Wm;this.jg=Ym;b=c[6];void 0===b&&(b=[!1,0,Array(20),
0,3==f?0:1,0,0,Array(5),0,0,0,Array(9),0,[this.ob,this.ac,this.Ed],Array(this.Ed>>2),-2147478512,0,-1,0,-1,0,-1,0,0,0,0,1,255,0,0,0,Array(256)]);this.Xe=b[0];this.Od=b[1];this.Tc=b[2];this.Sg=Zm;this.Lg=b[3];this.uf=b[4];this.dg=b[5];this.ce=b[6];this.Je=b[7];this.Ug=$m;this.gk=b[8];this.hk=b[9];this.be=b[10];this.ae=b[11];this.Tg=an;this.Fb=b[12];d=b[13];"number"==typeof d&&(d=[this.ob,this.ac,d]);this.ob=d[0];this.ac=d[1];d=this.Ed>>2;if((this.sd=b[14])&&this.sd.length<d){for(var e=this.sd,g=0,
h=Array(d),k=0;k<e.length-1;){for(var l=e[k++],n=e[k++];l--;)h[g]=n,g+=2;g==d&&(g=1)}this.sd=h}(d=b[15])&&(d&-2147483648?d&=2147483647:d=bn[d&65280]|bn[d&255]);this.Mg(d);this.ci=b[16];this.qb=b[17];this.dd=b[18];this.Mb=b[19];this.Uf=b[20];this.$d=b[21];this.qe=b[22];this.nh=b[23];this.oh=b[24];this.Md=b[25];this.di=this.pf=0;this.Ua==cm&&(this.ki=b[26],this.ji=b[27],this.pd=b[28],this.Kc=b[29],this.Jg=b[30],this.tf=b[31])}f=Jm[f]||Jm[3];this.ph=a.F.Y.Jd/f.Bg|0;this.im=this.ph*f.Gg/100|0;this.sh=
this.ph*f.Ag|0;this.km=this.sh*f.Hg/100|0;this.uh=c[7]||0}}
h=Array(d),k=0;k<e.length-1;){for(var l=e[k++],n=e[k++];l--;)h[g]=n,g+=2;g==d&&(g=1)}this.sd=h}(d=b[15])&&(d&-2147483648?d&=2147483647:d=bn[d&65280]|bn[d&255]);this.Mg(d);this.ci=b[16];this.qb=b[17];this.dd=b[18];this.Mb=b[19];this.Uf=b[20];this.$d=b[21];this.qe=b[22];this.nh=b[23];this.oh=b[24];this.Md=b[25];this.di=this.pf=0;this.Ua==cm&&(this.ki=b[26],this.ji=b[27],this.pd=b[28],this.Kc=b[29],this.Jg=b[30],this.tf=b[31])}f=Jm[f]||Jm[3];this.ph=a.F.Y.Jd/f.Bg|0;this.jm=this.ph*f.Gg/100|0;this.sh=
this.ph*f.Ag|0;this.lm=this.sh*f.Hg/100|0;this.uh=c[7]||0}}
var Vm=18,Wm=25,Xm="HTOTAL HDISP HSYNC_POS HSYNC_WIDTH VTOTAL VTOTAL_ADJ VDISP VSYNC_POS INTERLACE_POS MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO".split(" "),Ym="HTOTAL HDISP_END HBLANK_START HBLANK_END HRETRACE_START HRETRACE_END VTOTAL OVERFLOW PRESET_SCAN MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO VRETRACE_START VRETRACE_END VDISP_END OFFSET UNDERLINE VBLANK_START VBLANK_END MODE_CTRL LINE_COMPARE".split(" "),Zm=
"PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVERSCAN PLANES HPAN".split(" "),$m=["RESET","CLOCKING","MAPMASK","CHARMAP","MEMMODE"],an="SRESET ESRESET COLORCMP DATAROT READMAP MODE MISC COLORDC BITMASK".split(" "),bn=[,,1024,5120];bn[16]=1280;bn[512]=0;bn[1024]=32;bn[1536]=96;bn[2560]=160;bn[3584]=224;bn[768]=16;bn[4096]=1;bn[8192]=2;bn[24576]=98;bn[40960]=162;bn[57344]=226;var cn=[];
cn[1024]=function(a){a+=this.C;return(this.controller.Fb=this.da[a])>>this.controller.ci&255};cn[17408]=function(a){return(this.controller.Fb=this.da[(a&-4)+this.C])>>((a&3)<<3)&255};cn[5120]=function(a){a+=this.C;var b=this.controller.Fb=this.da[a&-2];return(a&1?b>>8:b)&255};cn[1280]=function(a){a+=this.C;a=this.controller.Fb=this.da[a];for(var b=this.controller.oh,c=this.controller.nh&b,d=0,e=128;e;)(a&b)==c&&(d|=e),c>>>=1,b>>>=1,e>>=1;return d};
@ -496,9 +496,9 @@ b.Od),b.ha.O(" ATCDATA: "+b.Xe),en(b," FEAT",b.dg),en(b," MISC",b.uf),en(b
m.Qb=function(a,b,c){var d=this;if(!this.qa[b])switch(this.qa[b]=c,b){case "fullScreen":return this.ga&&this.ga.We?c.onclick=function(){d.We()}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.uk=c.textContent,this.V&&this.V.De?c.onclick=function(){d.De(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){qn(d,!0)},!0}return!1};
m.We=function(){var a=!1;if(this.ga){if(this.ga.We){a="100%";if(screen&&screen.width&&screen.height){var b=screen.width/screen.height,c=this.ra/this.Ea;b>c&&(a=Math.round(c/b*100)+"%")}this.qf?(this.ka.style.width=a,this.ka.style.width=a,this.ka.style.display="block",this.ka.style.margin="auto"):(this.ga.style.width=a,this.ga.style.height="auto");this.ga.style.backgroundColor="black";this.ga.We();a=!0}this.V&&this.V.focus()}return a};
function Hm(a,b){!b&&a.ga&&(a.qf?a.ka.style.width=a.ka.style.height="":a.ga.style.width=a.ga.style.height="");y(a,"notifyFullScreen("+b+")",!0);a.B&&(a.B.ah=b)}m.De=function(a){var b=!1;this.V&&(a?this.V.De&&(this.V.De(),this.W&&this.W.Vf(!0),b=!0):this.V.rk&&(this.V.rk(),this.W&&this.W.Vf(!1),b=!0),this.V&&this.V.focus());return b};m.Vf=function(a){this.W&&(this.W.Vf(a),this.B&&(this.B.ah=a));var b=this.qa.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.uk)};
function pn(a,b){var c=a.V;c&&!a.me&&(c.addEventListener("touchstart",function(b){rn(a,b,!0)},!1),c.addEventListener("touchmove",function(b){rn(a,b)},!0),c.addEventListener("touchend",function(b){rn(a,b,!1)},!1),a.me=b,a.uc=a.Cc=a.gg=-1,a.Id=!1,a.Xc=null,a.Hd=!1,a.tn=function(){a.Hd=!0;a.W.je(sn,!0)})}m.Fg=function(a){this.B&&this.B.Fg(a)};
function pn(a,b){var c=a.V;c&&!a.me&&(c.addEventListener("touchstart",function(b){rn(a,b,!0)},!1),c.addEventListener("touchmove",function(b){rn(a,b)},!0),c.addEventListener("touchend",function(b){rn(a,b,!1)},!1),a.me=b,a.uc=a.Cc=a.gg=-1,a.Id=!1,a.Xc=null,a.Hd=!1,a.un=function(){a.Hd=!0;a.W.je(sn,!0)})}m.Fg=function(a){this.B&&this.B.Fg(a)};
function rn(a,b,c){var d,e,f=0,g=0;e=a.ka;do isNaN(e.offsetLeft)||(f+=e.offsetLeft,g+=e.offsetTop);while(e=e.offsetParent);var h=a.ra/a.ka.offsetWidth,k=a.Ea/a.ka.offsetHeight;b.targetTouches&&b.targetTouches.length?(d=b.targetTouches[0].pageX,e=b.targetTouches[0].pageY):(d=b.pageX,e=b.pageY);d=(d-f)*h;e=(e-g)*k;if(1==a.me)d=d/(a.ra/3)|0,e=e/(a.Ea/3)|0,1!=e?e?vm(a.B,1040,!0):vm(a.B,1038,!0):1!=d&&(d?vm(a.B,1039,!0):vm(a.B,1037,!0));else if(a.W){g=a.Id;f=b.timeStamp-a.gg;!0===c?(a.Id=500<f,a.gg=b.timeStamp,
a.Xc=setTimeout(a.tn,500)):null!=a.Xc&&(clearTimeout(a.Xc),a.Xc=null);void 0===c&&(a.Id=!1);g||b.preventDefault();if(!1===c){a.Hd?(a.W.je(sn,!1),a.Hd=!1,b=!0):b=!1;if(b)return;if(200>f){a.W.je(sn,!0);a.W.je(sn,!1);return}}if(c||0>a.uc||0>a.Cc)a.uc=d,a.Cc=e;c=Math.round(d-a.uc);b=Math.round(e-a.Cc);a.uc=d;a.Cc=e;a.W.Hf(c,b,a.uc,a.Cc)}}m.ic=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};
a.Xc=setTimeout(a.un,500)):null!=a.Xc&&(clearTimeout(a.Xc),a.Xc=null);void 0===c&&(a.Id=!1);g||b.preventDefault();if(!1===c){a.Hd?(a.W.je(sn,!1),a.Hd=!1,b=!0):b=!1;if(b)return;if(200>f){a.W.je(sn,!0);a.W.je(sn,!1);return}}if(c||0>a.uc||0>a.Cc)a.uc=d,a.Cc=e;c=Math.round(d-a.uc);b=Math.round(e-a.Cc);a.uc=d;a.Cc=e;a.W.Hf(c,b,a.uc,a.Cc)}}m.ic=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};
m.reset=function(){var a=!0,b=0;this.N&&(b=+Uk(this.N,wk,void 0));this.ia||(this.Ua=3==b?1:3);this.wa=3;switch(this.Ua){case cm:b=7;break;case 5:var c=Km[this.Vc];c&&(b=c[0]);b||(b=4);break;case 1:b=3;this.wa=7;break;default:b=2}this.ya!==b&&(this.ya=b,a=!0);this.C=null;this.pa=this.rd=new Tm(this,1);this.aa=this.Wc=new Tm(this,3);5>this.Ua?this.A=new Tm:(this.A=new Tm(this,this.Ua,null,this.Ed),tn(this));un(this);this.Ia=null;this.cb=this.ua=-1;this.Pa=0;vn(this,this.wa);if(this.C.ob&&a){a=this.C.ob+
this.Ub;for(b=this.C.ob;b<a;b+=2){var d=65536*Math.random()|0;4==this.ya||7==this.ya?(c=b>>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8);fc(this.ea,b,c|d<<8)}qn(this,!0)}};function tn(a){a.A.uf&1?(a.pa=a.rd,a.aa=a.A):(a.pa=a.A,a.aa=a.Wc)}m.save=function(){var a=new hf(this);N(a,0,dn(this.rd));N(a,1,dn(this.Wc));N(a,2,[this.ya,this.wa,this.Ia]);N(a,3,dn(this.A));return a.data()};
m.restore=function(a){var b=a[2];this.ya=b[0];this.wa=b[1];this.Ia=b[2];this.C=null;this.pa=this.rd=new Tm(this,1,a[0]);this.aa=this.Wc=new Tm(this,3,a[1]);this.A=new Tm(this,this.Ua,a[3],this.Ed);this.A.Hc&&tn(this);un(this);if(!wn(this))return!1;xn(this);return!0};
@ -506,8 +506,8 @@ function Im(a,b,c,d){if(d)a.Oa("Unable to load font ROM (error "+d+": "+b+")");e
function yn(a,b){if(1==b)return a.Ca[0]=Nm[0],a.Ca[1]=Nm[7],a.Ca;if(2==b){var c=a.C.sf;if(a.C===a.A){var d=a.A.Tc[0],c=d&7;d&16&&(c|=8);18!=a.A.Tc[1]&&(c|=32)}a.Ca[0]=Nm[c&15];c=c&32?Pm:Om;for(d=0;d<c.length;d++)a.Ca[d+1]=Nm[c[d]];return a.Ca}if(a.aa===a.Wc)return Nm;a.rb&&b&&!a.Ca[16]&&(a.rb=!1);if(!a.rb){var c=a.A,d=c.tf,e,f,g,h,k;if(8==b)for(f=0;256>f;f++)g=d[f]||0,h=g<<2&252,k=g>>4&252,g=g>>10&252,a.Ca[f]=[h,k,g,255];else{var l=d&&d[255];e=null!=c.Tc[15]?c.Tc:Qm;for(f=0;16>f;f++)g=e[f]&63,l?(g|=
(c.Tc[20]&12)<<4,c.Tc[16]&128&&(g&=-49,g|=(c.Tc[20]&3)<<4),g=d[g],h=g<<2&252,k=g>>4&252,g=g>>10&252):(h=(g&4?170:0)|(g&32?85:0),k=(g&2?170:0)|(g&16?85:0),g=(g&1?170:0)|(g&8?85:0)),a.Ca[f]=[h,k,g,255]}a.rb=!0}return a.Ca}function bm(a,b,c,d){a.Uc=b;a.Jb=c;a.Tb=d}
function un(a,b){var c=!1;if(window&&a.Uc&&(!b||a.U)){var d=0,e=a.Tb?a.Tb:8,f=yn(a);null!=a.Jb[0]&&zn(a,3,a.Jb[0],d,e,8,a.Uc,f)&&(c=!0);d=a.Tb?0:2048;e=a.Tb?a.Tb:9;null!=a.Jb[1]&&(zn(a,1,a.Jb[1],d,e,14,a.Uc,Lm,Mm)&&(c=!0),a.Tb&&zn(a,a.Ua,a.Jb[1],0,a.Tb,14,a.Uc,f)&&(c=!0))}return c}function zn(a,b,c,d,e,f,g,h,k){var l=!1;null!=c&&(An(a,b,c,d,e,f,g,h,k)&&(l=!0),a.pi&&An(a,b<<1,c,d,e,f,g,h,k)&&(l=!0));return l}
function An(a,b,c,d,e,f,g,h,k){var l=!1,n=b&1?0:1,q=a.Na[b],p=16>h.length?h.length:16;q||(q={Qc:e<<n,Rc:f<<n,Oe:Array(p),si:h.slice(0,p),zf:k,Rg:Array(p)});for(k=0;k<p;k++){var z=h[k],F=q.Oe[k]?q.si[k]:[];if(z[0]!==F[0]||z[1]!==F[1]||z[2]!==F[2]){var l=q,F=k,v=n,E=c,H=d,L=e,V=f,P=g,bb=[0,0,0,0],ia=document.createElement("canvas");ia.width=l.Qc<<4;ia.height=l.Rc<<4;for(var ja=ia.getContext("2d"),Ha=void 0,Xa=void 0,Ba=void 0,Ub=8>V||!H?V:8,wa=ja.createImageData(l.Qc,l.Rc),Ha=0;256>Ha;Ha++){for(Ba=
0;Ba<V;Ba++)for(var Vd=l.zf&&F&1&&Ba>=V-2,Rc=P[Ba<Ub?E+Ha*Ub+Ba:H+Ha*Ub+Ba-Ub],Wd=0;Wd<=v;Wd++)for(Xa=0;Xa<L;Xa++){var Ie=Xa<<v,Xd=(Ba<<v)+Wd,Je=Vd||Rc&128>>(8<=Xa&&192<=Ha&&223>=Ha?7:Xa)?z:bb;Bn(wa,Ie,Xd,Je);v&&Bn(wa,Ie+1,Xd,Je)}ja.putImageData(wa,(Ha&15)*l.Qc,(Ha>>4)*l.Rc)}l.Oe[F]="#"+r(z[0],2)+r(z[1],2)+r(z[2],2);l.si[F]=z;l.Rg[F]=ia;l=!0}}a.Na[b]=q;return l}function Cn(a){0<a.Pa||0<=a.ua?0>a.cb&&(a.cb=0):a.cb=-1}
function An(a,b,c,d,e,f,g,h,k){var l=!1,n=b&1?0:1,q=a.Na[b],p=16>h.length?h.length:16;q||(q={Qc:e<<n,Rc:f<<n,Oe:Array(p),si:h.slice(0,p),zf:k,Rg:Array(p)});for(k=0;k<p;k++){var z=h[k],F=q.Oe[k]?q.si[k]:[];if(z[0]!==F[0]||z[1]!==F[1]||z[2]!==F[2]){var l=q,F=k,v=n,E=c,H=d,L=e,V=f,P=g,bb=[0,0,0,0],ia=document.createElement("canvas");ia.width=l.Qc<<4;ia.height=l.Rc<<4;for(var ja=ia.getContext("2d"),Ha=void 0,Xa=void 0,Ba=void 0,Vb=8>V||!H?V:8,wa=ja.createImageData(l.Qc,l.Rc),Ha=0;256>Ha;Ha++){for(Ba=
0;Ba<V;Ba++)for(var Vd=l.zf&&F&1&&Ba>=V-2,Rc=P[Ba<Vb?E+Ha*Vb+Ba:H+Ha*Vb+Ba-Vb],Wd=0;Wd<=v;Wd++)for(Xa=0;Xa<L;Xa++){var Ie=Xa<<v,Xd=(Ba<<v)+Wd,Je=Vd||Rc&128>>(8<=Xa&&192<=Ha&&223>=Ha?7:Xa)?z:bb;Bn(wa,Ie,Xd,Je);v&&Bn(wa,Ie+1,Xd,Je)}ja.putImageData(wa,(Ha&15)*l.Qc,(Ha>>4)*l.Rc)}l.Oe[F]="#"+r(z[0],2)+r(z[1],2)+r(z[2],2);l.si[F]=z;l.Rg[F]=ia;l=!0}}a.Na[b]=q;return l}function Cn(a){0<a.Pa||0<=a.ua?0>a.cb&&(a.cb=0):a.cb=-1}
function xn(a){if(a.U){for(var b=10;15>=b;b++)if(null==a.C.mb[b])return;var c=a.C.mb[10],b=c&31,d=a.C.mb[11]&31,e=a.C.mb[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)ao(a);else{c=a.C.mb[15]+((a.C.mb[14]&63)<<8);a.ua!=c&&(ao(a),a.ua=c);d=d-b+1;if(a.hg!=b||a.Ce!=d)a.hg=b,a.Ce=d;a.$a=e+1;Cn(a)}}}
function ao(a){if(0<=a.ua){if(void 0!==a.fa){var b=a.fa[a.ua];if(b&131072){var b=b&-131073,c=a.ua%a.L,d=a.ua/a.L|0;a.U&&a.Na[a.U]&&(a.gb&&bo(a,c,d,b,a.gb),bo(a,c,d,b));a.fa[a.ua]=b}}a.ua=-1}}
function co(a){var b,c=a.C;a.gf=!1;var d=c.ae[5];if(null!=d){b=1024;var e=0,f=c.ae[3]&31;switch(d&3){case 0:if(f){e=32;switch(f&24){case 8:e=96;break;case 16:e=160;break;case 24:e=224}c.dd=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.Ua==cm&&(e=3,c.dd=f&7)}d&8&&(b=1280);c=c.Je[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.gf=!0));b|=e}return b}
@ -515,7 +515,7 @@ function eo(a,b){var c=a.C;return c&&null!=b&&b!=c.vg?(c.Mg(b),a.ea.Mg(c.ob,c.ac
function wn(a,b){var c,d=a.Ia,e=a.C;if(e)if(1==e.Ua)d=7;else if(5<=e.Ua){var d=null,f=e.Ed>>2,g=32768<f?32768:f,h=e.ae[6];if(null!=h){switch(h&12){case 0:e.ob=655360;e.ac=f;d=255;break;case 4:e.ob=655360;e.ac=f;d=3==a.ya?15:16;break;case 8:e.ob=720896;e.ac=g;d=7;break;case 12:e.ob=753664,e.ac=g,d=3==a.ya?2:3}c=80==(e.ae[5]&80);!c||e.ob==a.ob&&e.ac==a.ac||(b=!0);var f=fn(e,6),g=e.mb[9],k=e.mb[23],l=e.Je[1]&8;255!=d&&(h&1?655360==e.ob||c||k&1?e.ae[5]&64?d=g&31?143>=e.mb[18]?19:20:21:g&128||350>f?d=
l?13:14:480<=f&&(d=3==a.ya?17:18):d=l?7-d:6:d-=l?2:0);c=co(a)}}else e.gd&8&&(e.gd&2?(d=e.gd&16?6:5,e.gd&4||--d):(d=e.gd&1?3:1,e.gd&4&&--d));else a.Ia=null,null==d&&(d=a.wa);if(!vn(a,d,b))return!1;eo(a,c);return!0}
function vn(a,b,c){if(null!=b&&(b!=a.Ia||c)){a.Ng=0;a.Ia=b;a.rb=!1;b=a.C||(7==b?a.pa:a.aa);if(b!=a.C||b.ob!=a.ob||b.ac!=a.ac){ao(a);if(a.ob){if(!Zb(a.ea,a.ob,a.ac))return!1;a.C&&(a.C.Hc=!1)}a.C=b;b.Hc=!0;a.ob=b.ob;a.ac=b.ac;if(!Sb(a.ea,b.ob,b.ac,3,b===a.A?b:null))return!1}a:{a.U=0;a.L=a.kd;a.X=a.le;a.Db=a.L;a.jd=Fm[7][2];b=0;if(c=Fm[a.Ia])a.L=c[0],a.X=c[1],a.jd=c[2],b=c[3],a.U=c[4],4!=a.ya&&7!=a.ya||a.C!==a.A||3!=a.U||(7==(a.A.mb[9]&31)?a.X=350>fn(a.A,18)?43:50:a.U=a.Ua);a.Yf=a.L*a.X|0;a.Wf=a.Yf/
a.jd|0;a.Ub=a.Wf;a.td=0;void 0!==b&&(a.Ub=(a.Ub<<1)+b|0,a.td=a.Ub+b>>1);if(a.Na.length){a.Ja=a.ra/a.L|0;a.Ka=a.Ea/a.X|0;if(a.U){b=a.Na[a.U];if(!b)break a;c=a.Na[a.U<<1];a.sn&&80==a.L?c&&a.Ja>=3*c.Qc>>2&&(a.U<<=1,b=c):(c&&a.Ja>=c.Qc&&(a.U<<=1,b=c),b&&(a.Ja=b.Qc,a.Ka=b.Rc));a.bc=a.tc=0;b&&(a.bc=a.L*b.Qc,a.tc=a.X*b.Rc)}else a.Ja=a.Ka=1,a.bc=a.L,a.tc=a.X;a.sb=a.ja.createImageData(a.bc,a.tc);a.fb=document.createElement("canvas");a.fb.width=a.bc;a.fb.height=a.tc;a.gb=a.fb.getContext("2d");a.ne=a.oe=0;a.Dd=
a.jd|0;a.Ub=a.Wf;a.td=0;void 0!==b&&(a.Ub=(a.Ub<<1)+b|0,a.td=a.Ub+b>>1);if(a.Na.length){a.Ja=a.ra/a.L|0;a.Ka=a.Ea/a.X|0;if(a.U){b=a.Na[a.U];if(!b)break a;c=a.Na[a.U<<1];a.tn&&80==a.L?c&&a.Ja>=3*c.Qc>>2&&(a.U<<=1,b=c):(c&&a.Ja>=c.Qc&&(a.U<<=1,b=c),b&&(a.Ja=b.Qc,a.Ka=b.Rc));a.bc=a.tc=0;b&&(a.bc=a.L*b.Qc,a.tc=a.X*b.Rc)}else a.Ja=a.Ka=1,a.bc=a.L,a.tc=a.X;a.sb=a.ja.createImageData(a.bc,a.tc);a.fb=document.createElement("canvas");a.fb.width=a.bc;a.fb.height=a.tc;a.gb=a.fb.getContext("2d");a.ne=a.oe=0;a.Dd=
a.ra;a.Gd=a.Ea;b=a.ra-a.L*a.Ja;c=a.Ea-a.X*a.Ka;0<b&&(a.ne=b>>1,a.Dd-=b);0<c&&(a.oe=c>>1,a.Gd-=c);if(b||c)a.ja.fillStyle=a.ka.style.backgroundColor,a.ja.fillRect(0,0,a.ra,a.Ea)}}fo(a,!0);qn(a)}return!0}function Bn(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 go(a){a.Pa=-1;a.Fa=!1;var b=a.Wf;if(void 0===a.fa||a.fa.length!=b)a.fa=Array(b)}function fo(a,b){b||(a.rb=!1);go(a)}
function bo(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Na[a.U];h.zf&&(d=h.zf[d]);var k=g>>4&15;h.zf&&(k=h.zf[k]);e?(b*=h.Qc,c*=h.Rc,e.fillStyle=h.Oe[k],e.fillRect(b,c,h.Qc,h.Rc)):(b=b*a.Ja+a.ne,c=c*a.Ka+a.oe,a.ja.fillStyle=h.Oe[k],a.ja.fillRect(b,c,a.Ja,a.Ka));g&256&&(k=(f&15)*h.Qc,f=(f>>4)*h.Rc,e?e.drawImage(h.Rg[d],k,f,h.Qc,h.Rc,b,c,h.Qc,h.Rc):a.ja.drawImage(h.Rg[d],k,f,h.Qc,h.Rc,b,c,a.Ja,a.Ka));g&512&&(f=a.hg,g=a.Ce,e?(a.$a&&a.$a!==h.Rc&&(f=f*h.Rc/a.$a|0,g=g*h.Rc/a.$a|0),e.fillStyle=h.Oe[d],
e.fillRect(b,c+f,h.Qc,g)):(a.$a&&a.$a!==a.Ka&&(f=f*a.Ka/a.$a|0,g=g*a.Ka/a.$a|0),a.ja.fillStyle=h.Oe[d],a.ja.fillRect(b,c+f,a.Ja,g)))}
@ -524,38 +524,38 @@ function qn(a,b){if(a.la.cc){var c=!1,d=a.C;d&&(d!==a.A?d.gd&8&&(c=!0):d.Od&32&&
a.fa[d]=n,f++),c+=2,d++;a.Fa=!0;f&&a.gb&&a.ja.drawImage(a.fb,0,0,a.bc,a.tc,a.ne,a.oe,a.Dd,a.Gd);Cn(a)}}else if(a.td){for(var g=k,z,k=c,d=a.Pa=0,f=a.jd,e=16==f?65536:196608,h=16==f?1:2,l=yn(a,h),q=n=0,p=a.L,F=0,v=a.X,E=0;k<g;){z=ec(a.ea,k);if(a.Fa&&z===a.fa[d])n+=f;else{a.fa[d]=z;z=z>>8|(z&255)<<8;var H=e,L=16;n<p&&(p=n);for(var V=0;V<f;V++){var P=(z&(H>>=h))>>(L-=h);Bn(a.sb,n++,q,l[P])}n>F&&(F=n);q<v&&(v=q);q>=E&&(E=q+1)}k+=2;d++;if(n>=a.L){n=0;q+=2;if(q>a.X)break;q==a.X&&(q=1,k=c+a.td)}}a.Fa=!0;
p<a.L&&(a.gb.putImageData(a.sb,0,0,p,v,F-p,E-v),a.ja.drawImage(a.fb,0,0,a.L,a.X,0,0,a.ra,a.Ea))}else if(a.gf){g=h;f=a.Pa=0;e=yn(a,8);h=a.C.sd;n=l=0;q=a.L;p=0;F=a.X;v=0;E=a.C.Je[4]&8?4:1;z=a.C.Tc[19]&15;for(H=a.Db>a.L?a.Db-a.L-z>>3:0;c<k;){d=h[c-g];V=4;z||(a.Fa&&d===a.fa[f]?(l+=V,V=0):a.fa[f]=d,f++);if(V){l<q&&(q=l);for(L=0;L<V;L++)Bn(a.sb,l++,n,e[d&255]),d>>=8;l>p&&(p=l);n<F&&(F=n);n>=v&&(v=n+1)}c+=E;if(l>=a.L){l=0;if(++n>a.X)break;c+=H}}z||(a.Fa=!0);q<a.L&&(a.gb.putImageData(a.sb,0,0,q,F,p-q,v-F),
a.ja.drawImage(a.fb,0,0,a.L,a.X,0,0,a.ra,a.Ea))}else{g=h;d=a.Pa=0;f=yn(a);e=a.C.sd;l=h=0;n=a.L;q=0;p=a.X;F=0;v=a.C.Tc[19]&15;for(E=a.Db>a.L?a.Db-a.L-v>>3:0;c<k;){z=c++-g;z=e[z];L=8;v?h?(H=a.L-h,L>H&&(L=H)):(z<<=v,L-=v,a.Fa=!1):(a.Fa&&z===a.fa[d]?(h+=L,L=0):a.fa[d]=z,d++);if(L){h<n&&(n=h);for(H=0;H<L;H++)V=Sm[z&2155905152]||0,Bn(a.sb,h++,l,f[V]),z<<=1;h>q&&(q=h);l<p&&(p=l);l>=F&&(F=l+1)}if(h>=a.L){h=0;if(++l>a.X)break;c+=E}}v||(a.Fa=!0);n<a.L&&(a.gb.putImageData(a.sb,0,0,n,p,q-n,F-p),a.ja.drawImage(a.fb,
0,0,a.L,a.X,0,0,a.ra,a.Ea))}}}}function ho(a,b){var c=0,d=Wc(a.F)-b.uh;0>d&&(b.uh=d,d=-d|0);d%b.ph>b.im&&(c|=1);d%b.sh>b.km&&(c|=9);b.di=d/b.sh|0;return c}m.Fl=function(a,b){return io(this,this.pa,a,b)};m.$m=function(a,b,c){var d=this.pa;d.Ig=d.Ac;d.Ac=b&31;x(this,a,b,c,"CRTC.INDX")};m.El=function(a,b){return jo(this,this.pa,a,b)};m.Zm=function(a,b,c){ko(this,this.pa,a,b,c)};m.Gl=function(a,b){return lo(this,this.pa,b)};m.an=function(a,b,c){a=this.pa;x(this,a.port+4,b,c,"MODE");a.gd=b;wn(this,!1)};
m.Hl=function(a,b){return mo(this,this.pa,b)};m.ek=function(a,b,c){this.A.dg=this.A.dg&-4|b&3;x(this,a,b,c,"FEAT")};m.el=function(a,b){var c=this.A.Od;b&&!A(this)||x(this,960,null,b,"ATC.INDX",c);return c};m.Ck=function(a,b){var c=this.A.Tc[this.A.Od&31];b&&!A(this)||x(this,960,null,b,"ATC."+this.A.Sg[this.A.Od&31],c);return c};
0,0,a.L,a.X,0,0,a.ra,a.Ea))}}}}function ho(a,b){var c=0,d=Wc(a.F)-b.uh;0>d&&(b.uh=d,d=-d|0);d%b.ph>b.jm&&(c|=1);d%b.sh>b.lm&&(c|=9);b.di=d/b.sh|0;return c}m.Gl=function(a,b){return io(this,this.pa,a,b)};m.an=function(a,b,c){var d=this.pa;d.Ig=d.Ac;d.Ac=b&31;x(this,a,b,c,"CRTC.INDX")};m.Fl=function(a,b){return jo(this,this.pa,a,b)};m.$m=function(a,b,c){ko(this,this.pa,a,b,c)};m.Hl=function(a,b){return lo(this,this.pa,b)};m.bn=function(a,b,c){a=this.pa;x(this,a.port+4,b,c,"MODE");a.gd=b;wn(this,!1)};
m.Il=function(a,b){return mo(this,this.pa,b)};m.ek=function(a,b,c){this.A.dg=this.A.dg&-4|b&3;x(this,a,b,c,"FEAT")};m.el=function(a,b){var c=this.A.Od;b&&!A(this)||x(this,960,null,b,"ATC.INDX",c);return c};m.Ck=function(a,b){var c=this.A.Tc[this.A.Od&31];b&&!A(this)||x(this,960,null,b,"ATC."+this.A.Sg[this.A.Od&31],c);return c};
m.dk=function(a,b,c){var d=this.A,e=d.Od&32;if(d.Xe){d.Xe=!1;var f=d.Od&31;if(16<=f||!e)c&&!A(this)||x(this,a,b,c,"ATC."+d.Sg[f]),d.Tc[f]=b,fo(this,!1)}else d.Od=b,x(this,a,b,c,"ATC.INDX"),d.Xe=!0,b&32&&!e&&un(this,!0)&&qn(this,!0),a=(d.mb[12]<<8)+d.mb[13]|0,d.Md!=a&&(d.Md=a,fo(this)),d.pf=0};
m.Rl=function(a,b){var c=0;if(5==this.Ua)c=3-((this.A.uf&12)>>2),c=(this.Vc&1<<c)<<4-c;else{var d=this.A.tf[0];45!=(d&63)&&2880!=(d&4032)&&184320!=(d&258048)&&(c|=16)}c|=this.A.Lg&-17;this.A.Lg=c;x(this,962,null,b,"STATUS0",c);return c};m.bn=function(a,b,c){this.A.uf=b;tn(this);x(this,962,b,c,"MISC")};m.Sl=function(a,b){var c=this.A.ki;x(this,963,null,b,"VGA_ENABLE",c);return c};m.kn=function(a,b,c){this.A.ki=b;x(this,963,b,c,"VGA_ENABLE")};
m.Pl=function(a,b){var c=this.A.ce;x(this,964,null,b,"SEQ.INDX",c);return c};m.hn=function(a,b,c){this.A.ce=b;x(this,964,b,c,"SEQ.INDX")};m.Ol=function(a,b){var c=this.A.Je[this.A.ce];b&&!A(this)||x(this,965,null,b,"SEQ."+this.A.Ug[this.A.ce],c);return c};m.gn=function(a,b,c){c&&!A(this)||x(this,965,b,c,"SEQ."+this.A.Ug[this.A.ce]);this.A.Je[this.A.ce]=b;switch(this.A.ce){case 2:this.A.qb=Rm[b&15];break;case 4:eo(this,co(this))&&qn(this,!0)}};
m.rl=function(a,b){var c=this.A.ji;b&&!A(this)||x(this,966,null,b,"DAC.MASK",c);return c};m.Jm=function(a,b,c){c&&!A(this)||x(this,966,b,c,"DAC.MASK");this.A.ji=b};m.sl=function(a,b){var c=this.A.Jg;b&&!A(this)||x(this,967,null,b,"DAC.STATE",c);return c};m.Km=function(a,b,c){c&&!A(this)||x(this,967,b,c,"DAC.READ");this.A.pd=b;this.A.Jg=3;this.A.Kc=0};m.Lm=function(a,b,c){c&&!A(this)||x(this,968,b,c,"DAC.WRITE");this.A.pd=b;this.A.Jg=0;this.A.Kc=0};
m.ql=function(a,b){var c=this.A.tf[this.A.pd]>>this.A.Kc&63;b&&!A(this)||x(this,969,null,b,"DAC.DATA["+t(this.A.pd)+"]["+t(this.A.Kc)+"]",c);this.A.Kc+=6;12<this.A.Kc&&(this.A.Kc=0,this.A.pd=this.A.pd+1&255);return c};m.Im=function(a,b,c){a=this.A.tf[this.A.pd];c&&!A(this)||x(this,969,b,c,"DAC.DATA["+t(this.A.pd)+"]["+t(this.A.Kc)+"]");b=a&~(63<<this.A.Kc)|(b&63)<<this.A.Kc;a!==b&&(this.A.tf[this.A.pd]=b,fo(this,!1));this.A.Kc+=6;12<this.A.Kc&&(this.A.Kc=0,this.A.pd=this.A.pd+1&255)};
m.Tl=function(a,b){var c=this.A.dg;x(this,970,null,b,"FEAT",c);return c};m.Vm=function(a,b,c){this.A.hk=b;x(this,970,b,c,"GRC2")};m.Ul=function(a,b){var c=this.A.uf;x(this,972,null,b,"MISC",c);return c};m.Um=function(a,b,c){this.A.gk=b;x(this,972,b,c,"GRC1")};m.yl=function(a,b){var c=this.A.be;x(this,974,null,b,"GRC.INDX",c);return c};m.Tm=function(a,b,c){this.A.be=b;x(this,974,b,c,"GRC.INDX")};
m.xl=function(a,b){var c=this.A.ae[this.A.be];b&&!A(this)||x(this,975,null,b,"GRC."+this.A.Tg[this.A.be],c);return c};
m.Sm=function(a,b,c){c&&!A(this)||x(this,975,b,c,"GRC."+this.A.Tg[this.A.be]);this.A.ae[this.A.be]=b;switch(this.A.be){case 0:this.A.Uf=Rm[b&15];this.A.qe=this.A.Uf&~this.A.$d;break;case 1:this.A.$d=~Rm[b&15];this.A.qe=this.A.Uf&~this.A.$d;break;case 2:this.A.nh=Rm[b&15]&-2139062144;break;case 3:case 5:eo(this,co(this));break;case 4:this.A.ci=(b&3)<<3;break;case 6:wn(this,!1);break;case 7:this.A.oh=Rm[b&15]&-2139062144;break;case 8:this.A.Mb=b|b<<8|b<<16|b<<24}};
m.kl=function(a,b){return io(this,this.aa,a,b)};m.Dm=function(a,b,c){var d=this.aa;d.Ig=d.Ac;d.Ac=b&31;x(this,a,b,c,"CRTC.INDX")};m.jl=function(a,b){return jo(this,this.aa,a,b)};m.Cm=function(a,b,c){ko(this,this.aa,a,b,c)};m.ll=function(a,b){return lo(this,this.aa,b)};m.Em=function(a,b,c){a=this.aa;x(this,a.port+4,b,c,"MODE");a.gd=b;wn(this,!1)};m.il=function(a,b){var c=this.aa.sf;b&&!A(this)||x(this,a,null,b,this.aa.type+".COLOR",c);return c};
m.Bm=function(a,b,c){c&&!A(this)||x(this,a,b,c,this.aa.type+".COLOR");this.aa.sf!==b&&(this.aa.sf=b,fo(this,!1))};m.ml=function(a,b){return mo(this,this.aa,b)};function io(a,b,c,d){var e;b.Hc&&(e=b.Ac);x(a,c,null,d,"CRTC.INDX",e);return e}function jo(a,b,c,d){var e;b.Hc&&b.Ac<b.mh&&(e=b.mb[b.Ac]);d&&!A(a)||x(a,c,null,d,"CRTC."+b.jg[b.Ac],e);return e}
m.Sl=function(a,b){var c=0;if(5==this.Ua)c=3-((this.A.uf&12)>>2),c=(this.Vc&1<<c)<<4-c;else{var d=this.A.tf[0];45!=(d&63)&&2880!=(d&4032)&&184320!=(d&258048)&&(c|=16)}c|=this.A.Lg&-17;this.A.Lg=c;x(this,962,null,b,"STATUS0",c);return c};m.cn=function(a,b,c){this.A.uf=b;tn(this);x(this,962,b,c,"MISC")};m.Tl=function(a,b){var c=this.A.ki;x(this,963,null,b,"VGA_ENABLE",c);return c};m.mn=function(a,b,c){this.A.ki=b;x(this,963,b,c,"VGA_ENABLE")};
m.Ql=function(a,b){var c=this.A.ce;x(this,964,null,b,"SEQ.INDX",c);return c};m.jn=function(a,b,c){this.A.ce=b;x(this,964,b,c,"SEQ.INDX")};m.Pl=function(a,b){var c=this.A.Je[this.A.ce];b&&!A(this)||x(this,965,null,b,"SEQ."+this.A.Ug[this.A.ce],c);return c};m.hn=function(a,b,c){c&&!A(this)||x(this,965,b,c,"SEQ."+this.A.Ug[this.A.ce]);this.A.Je[this.A.ce]=b;switch(this.A.ce){case 2:this.A.qb=Rm[b&15];break;case 4:eo(this,co(this))&&qn(this,!0)}};
m.rl=function(a,b){var c=this.A.ji;b&&!A(this)||x(this,966,null,b,"DAC.MASK",c);return c};m.Km=function(a,b,c){c&&!A(this)||x(this,966,b,c,"DAC.MASK");this.A.ji=b};m.sl=function(a,b){var c=this.A.Jg;b&&!A(this)||x(this,967,null,b,"DAC.STATE",c);return c};m.Lm=function(a,b,c){c&&!A(this)||x(this,967,b,c,"DAC.READ");this.A.pd=b;this.A.Jg=3;this.A.Kc=0};m.Mm=function(a,b,c){c&&!A(this)||x(this,968,b,c,"DAC.WRITE");this.A.pd=b;this.A.Jg=0;this.A.Kc=0};
m.ql=function(a,b){var c=this.A.tf[this.A.pd]>>this.A.Kc&63;b&&!A(this)||x(this,969,null,b,"DAC.DATA["+t(this.A.pd)+"]["+t(this.A.Kc)+"]",c);this.A.Kc+=6;12<this.A.Kc&&(this.A.Kc=0,this.A.pd=this.A.pd+1&255);return c};m.Jm=function(a,b,c){a=this.A.tf[this.A.pd];c&&!A(this)||x(this,969,b,c,"DAC.DATA["+t(this.A.pd)+"]["+t(this.A.Kc)+"]");b=a&~(63<<this.A.Kc)|(b&63)<<this.A.Kc;a!==b&&(this.A.tf[this.A.pd]=b,fo(this,!1));this.A.Kc+=6;12<this.A.Kc&&(this.A.Kc=0,this.A.pd=this.A.pd+1&255)};
m.Ul=function(a,b){var c=this.A.dg;x(this,970,null,b,"FEAT",c);return c};m.Wm=function(a,b,c){this.A.hk=b;x(this,970,b,c,"GRC2")};m.Vl=function(a,b){var c=this.A.uf;x(this,972,null,b,"MISC",c);return c};m.Vm=function(a,b,c){this.A.gk=b;x(this,972,b,c,"GRC1")};m.zl=function(a,b){var c=this.A.be;x(this,974,null,b,"GRC.INDX",c);return c};m.Um=function(a,b,c){this.A.be=b;x(this,974,b,c,"GRC.INDX")};
m.yl=function(a,b){var c=this.A.ae[this.A.be];b&&!A(this)||x(this,975,null,b,"GRC."+this.A.Tg[this.A.be],c);return c};
m.Tm=function(a,b,c){c&&!A(this)||x(this,975,b,c,"GRC."+this.A.Tg[this.A.be]);this.A.ae[this.A.be]=b;switch(this.A.be){case 0:this.A.Uf=Rm[b&15];this.A.qe=this.A.Uf&~this.A.$d;break;case 1:this.A.$d=~Rm[b&15];this.A.qe=this.A.Uf&~this.A.$d;break;case 2:this.A.nh=Rm[b&15]&-2139062144;break;case 3:case 5:eo(this,co(this));break;case 4:this.A.ci=(b&3)<<3;break;case 6:wn(this,!1);break;case 7:this.A.oh=Rm[b&15]&-2139062144;break;case 8:this.A.Mb=b|b<<8|b<<16|b<<24}};
m.kl=function(a,b){return io(this,this.aa,a,b)};m.Em=function(a,b,c){var d=this.aa;d.Ig=d.Ac;d.Ac=b&31;x(this,a,b,c,"CRTC.INDX")};m.jl=function(a,b){return jo(this,this.aa,a,b)};m.Dm=function(a,b,c){ko(this,this.aa,a,b,c)};m.ll=function(a,b){return lo(this,this.aa,b)};m.Fm=function(a,b,c){a=this.aa;x(this,a.port+4,b,c,"MODE");a.gd=b;wn(this,!1)};m.il=function(a,b){var c=this.aa.sf;b&&!A(this)||x(this,a,null,b,this.aa.type+".COLOR",c);return c};
m.Cm=function(a,b,c){c&&!A(this)||x(this,a,b,c,this.aa.type+".COLOR");this.aa.sf!==b&&(this.aa.sf=b,fo(this,!1))};m.ml=function(a,b){return mo(this,this.aa,b)};function io(a,b,c,d){var e;b.Hc&&(e=b.Ac);x(a,c,null,d,"CRTC.INDX",e);return e}function jo(a,b,c,d){var e;b.Hc&&b.Ac<b.mh&&(e=b.mb[b.Ac]);d&&!A(a)||x(a,c,null,d,"CRTC."+b.jg[b.Ac],e);return e}
function ko(a,b,c,d,e){if(b.Ac<b.mh){e&&!A(a)||x(a,c,d,e,"CRTC."+b.jg[b.Ac]);b.mb[b.Ac]=d;if(12==b.Ac||13==b.Ac)ho(a,b)&1?(c=(b.mb[12]<<8)+b.mb[13]|0,b.Md!==c&&(b.Md=c,fo(a))):b.pf||(b.pf=b.di);(9==b.Ac&&8!=b.Ig||18==b.Ac&&223==d)&&wn(a,!0);xn(a)}}function lo(a,b,c){var d=b.gd;x(a,b.port+4,null,c,"MODE",d);return d}function mo(a,b,c){var d=ho(a,b);b===a.A?(d|=b.ma&48^48,b.Xe=!1):d=(b.ma^=9)|240;b.ma=d;x(a,b.port+6,null,c,b===a.A?"STATUS1":"STATUS",d);return d}
var gn={948:Z.prototype.Fl,949:Z.prototype.El,952:Z.prototype.Gl,954:Z.prototype.Hl},hn={948:Z.prototype.$m,949:Z.prototype.Zm,952:Z.prototype.an},jn={980:Z.prototype.kl,981:Z.prototype.jl,984:Z.prototype.ll,985:Z.prototype.il,986:Z.prototype.ml},kn={980:Z.prototype.Dm,981:Z.prototype.Cm,984:Z.prototype.Em,985:Z.prototype.Bm},ln={960:Z.prototype.el,961:Z.prototype.Ck,962:Z.prototype.Rl,964:Z.prototype.Pl,965:Z.prototype.Ol,974:Z.prototype.yl,975:Z.prototype.xl},mn={954:Z.prototype.ek,960:Z.prototype.dk,
961:Z.prototype.dk,962:Z.prototype.bn,964:Z.prototype.hn,965:Z.prototype.gn,970:Z.prototype.Vm,972:Z.prototype.Um,974:Z.prototype.Tm,975:Z.prototype.Sm,986:Z.prototype.ek},nn={963:Z.prototype.Sl,966:Z.prototype.rl,967:Z.prototype.sl,969:Z.prototype.ql,970:Z.prototype.Tl,972:Z.prototype.Ul},on={963:Z.prototype.kn,966:Z.prototype.Jm,967:Z.prototype.Km,968:Z.prototype.Lm,969:Z.prototype.Im};
var gn={948:Z.prototype.Gl,949:Z.prototype.Fl,952:Z.prototype.Hl,954:Z.prototype.Il},hn={948:Z.prototype.an,949:Z.prototype.$m,952:Z.prototype.bn},jn={980:Z.prototype.kl,981:Z.prototype.jl,984:Z.prototype.ll,985:Z.prototype.il,986:Z.prototype.ml},kn={980:Z.prototype.Em,981:Z.prototype.Dm,984:Z.prototype.Fm,985:Z.prototype.Cm},ln={960:Z.prototype.el,961:Z.prototype.Ck,962:Z.prototype.Sl,964:Z.prototype.Ql,965:Z.prototype.Pl,974:Z.prototype.zl,975:Z.prototype.yl},mn={954:Z.prototype.ek,960:Z.prototype.dk,
961:Z.prototype.dk,962:Z.prototype.cn,964:Z.prototype.jn,965:Z.prototype.hn,970:Z.prototype.Wm,972:Z.prototype.Vm,974:Z.prototype.Um,975:Z.prototype.Tm,986:Z.prototype.ek},nn={963:Z.prototype.Tl,966:Z.prototype.rl,967:Z.prototype.sl,969:Z.prototype.ql,970:Z.prototype.Ul,972:Z.prototype.Vl},on={963:Z.prototype.mn,966:Z.prototype.Km,967:Z.prototype.Lm,968:Z.prototype.Mm,969:Z.prototype.Jm};
Qa(function(){for(var a=nb(document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=jb(c),e=document.createElement("canvas");if(void 0===e||!e.getContext){c.innerHTML="<br/>Missing &lt;canvas&gt; support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=ya().indexOf("MSIE")&&(c.onresize=function(a,b,c,d){return function(){b.style.height=
(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight),c.onresize());c.appendChild(e);var f=document.createElement("textarea");Ga("iOS")&&(f.setAttribute("autocapitalize","off"),f.setAttribute("autocorrect","off"));c.appendChild(f);var g=e.getContext("2d"),d=new Z(d,e,g,f,c);mb(d,c)}});
function no(a){this.W=a.adapter;switch(this.W){case 1:this.V=956;this.C=7;break;case 2:this.V=888;this.C=7;break;case 3:this.V=632;this.C=5;break;default:w("Unrecognized parallel adapter #"+this.W);return}this.A=this.B=null;Ua.call(this,"ParallelPort",a,no,4194304);a=a.binding;"console"==a?this.B="":kb(this,a,oo)}db(no);var oo="buffer";m=no.prototype;m.Qb=function(a,b,c){switch(b){case oo:return this.qa[b]=this.A=c,!0}return!1};
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.N=Eb(a,"ChipSet");hc(b,this,po,this.V);lc(b,this,qo,this.V);rb(this)};m.ic=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};m.reset=function(){ro(this)};m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.L;c[b++]=this.Yb;c[b]=this.Bf;N(a,0,c);return a.data()};m.restore=function(a){return ro(this,a[0])};
function ro(a,b){var c=0;void 0===b&&(b=[0,0,0]);a.L=b[c++];a.Yb=b[c++];a.Bf=b[c];return!0}m.tl=function(a,b){var c=this.L;x(this,a,null,b,"DATA",c);return c};m.Ql=function(a,b){var c=this.Yb;x(this,a,null,b,"STAT",c);return c};m.pl=function(a,b){var c=this.Bf;x(this,a,null,b,"CTRL",c);return c};
m.Mm=function(a,b,c){x(this,a,b,c,"DATA");this.L=b;this.Yb|=64;if(this.A)8==b?this.A.value=this.A.value.slice(0,-1):(this.A.value+=String.fromCharCode(b),this.A.scrollTop=this.A.scrollHeight),a=!0;else if(null!=this.B){if(10==b||1024<=this.B.length)this.O(this.B),this.B="";10!=b&&(this.B+=String.fromCharCode(b));a=!0}else a=!1;a&&(this.Yb&=-65);so(this)};m.Hm=function(a,b,c){x(this,a,b,c,"CTRL");this.Bf=b;so(this)};function so(a){a.N&&a.C&&(a.Bf&16&&!(a.Yb&64)?eg(a.N,a.C):dg(a.N,a.C))}
var po={0:no.prototype.tl,1:no.prototype.Ql,2:no.prototype.pl},qo={0:no.prototype.Mm,2:no.prototype.Hm};Qa(function(){for(var a=nb(document,"pcjs","parallel"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new no(d);mb(d,c)}});
function ro(a,b){var c=0;void 0===b&&(b=[0,0,0]);a.L=b[c++];a.Yb=b[c++];a.Bf=b[c];return!0}m.tl=function(a,b){var c=this.L;x(this,a,null,b,"DATA",c);return c};m.Rl=function(a,b){var c=this.Yb;x(this,a,null,b,"STAT",c);return c};m.pl=function(a,b){var c=this.Bf;x(this,a,null,b,"CTRL",c);return c};
m.Nm=function(a,b,c){x(this,a,b,c,"DATA");this.L=b;this.Yb|=64;if(this.A)8==b?this.A.value=this.A.value.slice(0,-1):(this.A.value+=String.fromCharCode(b),this.A.scrollTop=this.A.scrollHeight),a=!0;else if(null!=this.B){if(10==b||1024<=this.B.length)this.O(this.B),this.B="";10!=b&&(this.B+=String.fromCharCode(b));a=!0}else a=!1;a&&(this.Yb&=-65);so(this)};m.Im=function(a,b,c){x(this,a,b,c,"CTRL");this.Bf=b;so(this)};function so(a){a.N&&a.C&&(a.Bf&16&&!(a.Yb&64)?eg(a.N,a.C):dg(a.N,a.C))}
var po={0:no.prototype.tl,1:no.prototype.Rl,2:no.prototype.pl},qo={0:no.prototype.Nm,2:no.prototype.Im};Qa(function(){for(var a=nb(document,"pcjs","parallel"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new no(d);mb(d,c)}});
function to(a){this.ra=a.adapter;switch(this.ra){case 1:this.ka=1016;this.fa=4;break;case 2:this.ka=760;this.fa=3;break;default:w("Unrecognized serial adapter #"+this.ra);return}this.V=this.U=null;this.Ca=a.tabSize;this.ya=a.charBOL;this.X=0;Ua.call(this,"SerialPort",a,to,8388608);a=a.binding;"console"==a?this.U="":kb(this,a,uo)}db(to);var uo="buffer";m=to.prototype;m.wi=function(a,b){return a==this.ee?(this.W=b,this):null};
m.Qb=function(a,b,c){var d=this;switch(b){case uo:return this.qa[b]=this.V=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),vo(d,[b]);return!0},c.onkeypress=function(a){a=a||window.event;vo(d,[a.which||a.keyCode]);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.N=Eb(a,"ChipSet");hc(b,this,wo,this.ka);lc(b,this,xo,this.ka);rb(this)};m.ic=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};m.reset=function(){yo(this)};
m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.pa;c[b++]=this.wa;c[b++]=this.aa;c[b++]=this.ja;c[b++]=this.L;c[b++]=this.B;c[b++]=this.C;c[b++]=this.A;c[b++]=this.ua;c[b]=this.ga;N(a,0,c);return a.data()};m.restore=function(a){return yo(this,a[0])};function yo(a,b){var c=0;void 0===b&&(b=[0,0,384,0,1,0,0,96,48,[]]);a.pa=b[c++];a.wa=b[c++];a.aa=b[c++];a.ja=b[c++];a.L=b[c++];a.B=b[c++];a.C=b[c++];a.A=b[c++];a.ua=b[c++];a.ga=b[c];return!0}function vo(a,b){a.ga=a.ga.concat(b);zo(a)}
function zo(a){0<a.ga.length&&!(a.A&1)&&(a.pa=a.ga.shift(),a.A|=1);var b=-1;a.A&1&&a.ja&1&&(b=4);0<=b?(a.L&=-8,a.L|=b,a.N&&a.fa&&eg(a.N,a.fa,100)):(a.L|=1,a.N&&a.fa&&dg(a.N,a.fa))}m.Nl=function(a,b){var c=this.B&128?this.aa&255:this.pa;x(this,a,null,b,this.B&128?"DLL":"RBR",c);this.A&=-2;zo(this);return c};m.zl=function(a,b){var c=this.B&128?this.aa>>8:this.ja;x(this,a,null,b,this.B&128?"DLM":"IER",c);return c};m.Al=function(a,b){var c=this.L;x(this,a,null,b,"IIR",c);return c};
m.Bl=function(a,b){var c=this.B;x(this,a,null,b,"LCR",c);return c};m.Dl=function(a,b){var c=this.C;x(this,a,null,b,"MCR",c);return c};m.Cl=function(a,b){var c=this.A;x(this,a,null,b,"LSR",c);return c};m.Il=function(a,b){var c=this.ua;x(this,a,null,b,"MSR",c);return c};
m.jn=function(a,b,c){x(this,a,b,c,this.B&128?"DLL":"THR");if(this.B&128)this.aa=this.aa&-256|b;else{this.wa=b;this.A&=-97;if(this.V)13==b?this.X=0:8==b?(this.V.value=this.V.value.slice(0,-1),0<this.X&&this.X--):(a=String.fromCharCode(b),c=32<=b?1:0,9==b&&(b=this.Ca||8,c=b-this.X%b,this.Ca&&(a=ma("",c))),this.ya&&!this.X&&c&&(a=String.fromCharCode(this.ya)+a),this.V.value+=a,this.V.scrollTop=this.V.scrollHeight,this.X+=c),b=!0;else if(null!=this.U){if(10==b||1024<=this.U.length)this.O(this.U),this.U=
"";10!=b&&(this.U+=String.fromCharCode(b));b=!0}else b=!1;b&&(this.A|=96)}};m.Wm=function(a,b,c){x(this,a,b,c,this.B&128?"DLM":"IER");this.B&128?this.aa=this.aa&255|b<<8:this.ja=b};m.Xm=function(a,b,c){x(this,a,b,c,"LCR");this.B=b};
m.Ym=function(a,b,c){var d=this.C;x(this,a,b,c,"MCR");this.C=b;this.W&&(d^b)&3&&(a=this.W,b=this.C,(c=3==(b&3))?a.Hc||(d=!1,a.C&2||(a.reset(),y(a,"serial mouse reset"),d=!0),a.C&1||(y(a,"serial mouse ID requested"),d=!0),d&&(vo(a.N,[77,77]),y(a,"serial mouse ID sent")),Ao(a),a.Hc=c):a.Hc&&(y(a,"serial mouse inactive"),Bo(a),a.Hc=c),a.C=b)};
var wo={0:to.prototype.Nl,1:to.prototype.zl,2:to.prototype.Al,3:to.prototype.Bl,4:to.prototype.Dl,5:to.prototype.Cl,6:to.prototype.Il},xo={0:to.prototype.jn,1:to.prototype.Wm,3:to.prototype.Xm,4:to.prototype.Ym};Qa(function(){for(var a=nb(document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new to(d);mb(d,c)}});function Co(a){Ua.call(this,"Mouse",a,Co,16777216);if(this.ka=a.serial)this.pa="SerialPort";this.ja=this.ga=this.Hc=!1;this.B=[];this.A=[];rb(this)}db(Co);var sn=0;m=Co.prototype;
function zo(a){0<a.ga.length&&!(a.A&1)&&(a.pa=a.ga.shift(),a.A|=1);var b=-1;a.A&1&&a.ja&1&&(b=4);0<=b?(a.L&=-8,a.L|=b,a.N&&a.fa&&eg(a.N,a.fa,100)):(a.L|=1,a.N&&a.fa&&dg(a.N,a.fa))}m.Ol=function(a,b){var c=this.B&128?this.aa&255:this.pa;x(this,a,null,b,this.B&128?"DLL":"RBR",c);this.A&=-2;zo(this);return c};m.Al=function(a,b){var c=this.B&128?this.aa>>8:this.ja;x(this,a,null,b,this.B&128?"DLM":"IER",c);return c};m.Bl=function(a,b){var c=this.L;x(this,a,null,b,"IIR",c);return c};
m.Cl=function(a,b){var c=this.B;x(this,a,null,b,"LCR",c);return c};m.El=function(a,b){var c=this.C;x(this,a,null,b,"MCR",c);return c};m.Dl=function(a,b){var c=this.A;x(this,a,null,b,"LSR",c);return c};m.Jl=function(a,b){var c=this.ua;x(this,a,null,b,"MSR",c);return c};
m.kn=function(a,b,c){x(this,a,b,c,this.B&128?"DLL":"THR");if(this.B&128)this.aa=this.aa&-256|b;else{this.wa=b;this.A&=-97;if(this.V)13==b?this.X=0:8==b?(this.V.value=this.V.value.slice(0,-1),0<this.X&&this.X--):(a=String.fromCharCode(b),c=32<=b?1:0,9==b&&(b=this.Ca||8,c=b-this.X%b,this.Ca&&(a=ma("",c))),this.ya&&!this.X&&c&&(a=String.fromCharCode(this.ya)+a),this.V.value+=a,this.V.scrollTop=this.V.scrollHeight,this.X+=c),b=!0;else if(null!=this.U){if(10==b||1024<=this.U.length)this.O(this.U),this.U=
"";10!=b&&(this.U+=String.fromCharCode(b));b=!0}else b=!1;b&&(this.A|=96)}};m.Xm=function(a,b,c){x(this,a,b,c,this.B&128?"DLM":"IER");this.B&128?this.aa=this.aa&255|b<<8:this.ja=b};m.Ym=function(a,b,c){x(this,a,b,c,"LCR");this.B=b};
m.Zm=function(a,b,c){var d=this.C;x(this,a,b,c,"MCR");this.C=b;this.W&&(d^b)&3&&(a=this.W,b=this.C,(c=3==(b&3))?a.Hc||(d=!1,a.C&2||(a.reset(),y(a,"serial mouse reset"),d=!0),a.C&1||(y(a,"serial mouse ID requested"),d=!0),d&&(vo(a.N,[77,77]),y(a,"serial mouse ID sent")),Ao(a),a.Hc=c):a.Hc&&(y(a,"serial mouse inactive"),Bo(a),a.Hc=c),a.C=b)};
var wo={0:to.prototype.Ol,1:to.prototype.Al,2:to.prototype.Bl,3:to.prototype.Cl,4:to.prototype.El,5:to.prototype.Dl,6:to.prototype.Jl},xo={0:to.prototype.kn,1:to.prototype.Xm,3:to.prototype.Ym,4:to.prototype.Zm};Qa(function(){for(var a=nb(document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new to(d);mb(d,c)}});function Co(a){Ua.call(this,"Mouse",a,Co,16777216);if(this.ka=a.serial)this.pa="SerialPort";this.ja=this.ga=this.Hc=!1;this.B=[];this.A=[];rb(this)}db(Co);var sn=0;m=Co.prototype;
m.Ic=function(a,b,c,d){this.V=a;this.ea=b;this.F=c;this.ha=d;for(b=null;b=Eb(a,"Video",b);)this.B.push(b)};m.ic=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.pa&&!this.N){for(var c=null;(c=Eb(this.V,this.pa,c))&&(!c.wi||!(this.N=c.wi(this.ka,this))););if(this.N)for(this.A=[],c=0;c<this.B.length;c++){var d;d=this.B[c];d.W=this;(d=d.V)&&this.A.push(d)}else w(this.id+": "+this.pa+" "+this.ka+" unavailable")}this.Hc?Ao(this):Bo(this)}return!0};
m.hc=function(a){return a?this.save():!0};m.reset=function(){Do(this)};m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.Hc;c[b++]=this.L;c[b++]=this.W;c[b++]=this.U;c[b++]=this.X;c[b++]=this.aa;c[b++]=this.fa;c[b]=this.C;N(a,0,c);return a.data()};m.restore=function(a){return Do(this,a[0])};function Do(a,b){var c=0;void 0===b&&(b=[!1,-1,-1,0,0,!1,!1,0]);var d=b[c++];a.Hc=d;a.L=b[c++];a.W=b[c++];a.U=b[c++];a.X=b[c++];a.aa=b[c++];a.fa=b[c++];a.C=b[c];return!0}m.Vf=function(a){this.ga=a};
function Ao(a){if(!a.ja)for(var b=0;b<a.A.length;b++)Eo(a,a.A[b])&&(a.ja=!0)}function Bo(a){if(a.ja)for(var b=0;b<a.A.length;b++){var c=a.A[b];c&&(c.style.cursor="auto")}}function Eo(a,b){return b?(b.addEventListener("mousemove",function(b){Fo(a,b)},!1),b.addEventListener("mousedown",function(b){Fo(a,b,!0)},!1),b.addEventListener("mouseup",function(b){Fo(a,b,!1)},!1),b.style.cursor="none",!0):!1}
@ -573,11 +573,11 @@ e+=4)var P=L[V]=a.getInt32(e,!0),d=d+P&-1;H.Zc=b;v[E]=H}g.aa=d;b=g}else g.Oa("Un
function ep(a,b,c,d){var e=null;a.ef=!1;var f=0>d&&a.V&&!a.V.la.cc;if(a.qg)d?a.controller.Oa('Unable to connect to disk "'+a.W+'" (error '+d+": "+c+")",f):(a.N=!0,fp(a),e=a);else if(d)a.controller.Oa('Unable to load disk "'+a.ea+'" (error '+d+": "+b+")",f);else{fb(a.controller.ve,b,c);try{if(0<fa(a.li,!0).toLowerCase().indexOf("-readonly"))a.ef=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.ef=!0)}var h;"<"==c.substr(0,1)?h=["Missing disk image: "+a.ea]:
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)w(h[0]);else{a.Bb=h.length;a.ub=h[0].length;a.lb=h[0][0].length;var k=h[0][0][0];a.Va=k&&k.length||512;for(d=c=0;d<a.Bb;d++)for(f=0;f<a.ub;f++)for(g=0;g<a.lb;g++)if(k=h[d][f][g]){var l=k.length;void 0===l&&(l=k.length=512);var l=l>>2,n=k.pattern;void 0===n&&(n=k.pattern=0);var q=k.data;if(void 0===q){var p=k.bytes;if(void 0!==p&&p.length){for(var z=
l<<2,F=p.length;F<z;F++)p[F]=n;gp(k,p,0)}else q=[],n=k.pattern=n|n<<8|n<<16|n<<24,k.data=q;delete k.bytes}cp(k,d,f);for(z=0;z<q.length;z++)c=c+q[z]&-1}a.A=h;a.aa=c;fp(a);e=a}else w("Empty disk image: "+a.ea)}catch(v){w("Disk image error ("+b+"): "+v.message)}}a.X&&(a.X.call(a.ka,a.B,e,a.ea,a.W),a.X=null)}
function fp(a){var b,c,d={},e;if(a.C&&a.C.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.mm)}a.C=[];d.Zf=d.Gf=0;b=a.Bb*a.ub*a.lb*a.Va;a.N&&a.log("ignore any synchronous XMLHttpRequest warnings here (for now)");if(e=Yo(a,0)){d.Va=Zo(a,e,11,2);f=!0;if(d.Va!=a.Va){f=!1;d.Ff=1;d.zg=12;d.jh=d.Ff+2;d.xg=1;d.Va=a.Va;if(163840==b&&254==hp(a,d,0,0))d.Gf=320,d.th=64,f=!0;else if(327680==b&&255==hp(a,d,0,0))d.Gf=640,
d.th=112,f=!0;else for(c=446,b=0;4>b;b++){if(128==Zo(a,e,c+0,1)){d.Zf=Zo(a,e,c+8,4);(e=Yo(a,d.Zf))&&(f=!0);break}c+=16}if(!f)return}d.Gf||(d.Gf=Zo(a,e,19,2)||Zo(a,e,32,4),d.Ff=Zo(a,e,14,2),d.jh=d.Ff+Zo(a,e,22,2)*Zo(a,e,16,1),d.th=Zo(a,e,17,2),d.xg=Zo(a,e,13,1));d.hh=d.jh+((32*d.th+(d.Va-1))/d.Va|0);d.hm=(d.Gf-d.hh)/d.xg|0;d.zg=4084>=d.hm?12:16;d.Sk=12==d.zg?4086:65526;b=[];for(e=d.jh;e<d.hh;e++)b.push(d.Zf+e);ip(a,d,a.li,"",b);for(b=0;b<a.C.length;b++){d=a.C[b];for(e=c=0;e<d.xe.length;e++){var f=
d.xe[e],g=c,h=a.ub*a.lb,k=f%h,l=k/a.lb|0,k=k%a.lb,n=void 0,q=void 0,p=void 0;(n=a.A[f/h|0])&&(q=n[l])&&(p=q[k])&&!p.file&&(p.file=d,p.mm=g);c+=a.Va}e=d;if((ha(e.lc,".EXE")||ha(e.lc,".DLL")||ha(e.lc,".DRV"))&&23117==$o(e,Lo)&&64==$o(e,Mo)&&(c=$o(e,No),17742==$o(e,Oo,c))){l=$o(e,Ro,c);g=$o(e,To,c);h=$o(e,Wo,c);if(g&&l){d=e;f=g+c;g=l;h=h||0;l=1;d.zd=[];for(d.A=[];g--;){if(k=Xo(d,f)<<h)n=Xo(d,f+2)||65536,d.zd[l++]={ei:k,ak:k+n-1,we:[]};f+=8}d.zd[254]={ei:0,ak:0,we:[]}}g=$o(e,Po,c);h=$o(e,Qo,c);if(g&&
function fp(a){var b,c,d={},e;if(a.C&&a.C.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.nm)}a.C=[];d.Zf=d.Gf=0;b=a.Bb*a.ub*a.lb*a.Va;a.N&&a.log("ignore any synchronous XMLHttpRequest warnings here (for now)");if(e=Yo(a,0)){d.Va=Zo(a,e,11,2);f=!0;if(d.Va!=a.Va){f=!1;d.Ff=1;d.zg=12;d.jh=d.Ff+2;d.xg=1;d.Va=a.Va;if(163840==b&&254==hp(a,d,0,0))d.Gf=320,d.th=64,f=!0;else if(327680==b&&255==hp(a,d,0,0))d.Gf=640,
d.th=112,f=!0;else for(c=446,b=0;4>b;b++){if(128==Zo(a,e,c+0,1)){d.Zf=Zo(a,e,c+8,4);(e=Yo(a,d.Zf))&&(f=!0);break}c+=16}if(!f)return}d.Gf||(d.Gf=Zo(a,e,19,2)||Zo(a,e,32,4),d.Ff=Zo(a,e,14,2),d.jh=d.Ff+Zo(a,e,22,2)*Zo(a,e,16,1),d.th=Zo(a,e,17,2),d.xg=Zo(a,e,13,1));d.hh=d.jh+((32*d.th+(d.Va-1))/d.Va|0);d.im=(d.Gf-d.hh)/d.xg|0;d.zg=4084>=d.im?12:16;d.Sk=12==d.zg?4086:65526;b=[];for(e=d.jh;e<d.hh;e++)b.push(d.Zf+e);ip(a,d,a.li,"",b);for(b=0;b<a.C.length;b++){d=a.C[b];for(e=c=0;e<d.xe.length;e++){var f=
d.xe[e],g=c,h=a.ub*a.lb,k=f%h,l=k/a.lb|0,k=k%a.lb,n=void 0,q=void 0,p=void 0;(n=a.A[f/h|0])&&(q=n[l])&&(p=q[k])&&!p.file&&(p.file=d,p.nm=g);c+=a.Va}e=d;if((ha(e.lc,".EXE")||ha(e.lc,".DLL")||ha(e.lc,".DRV"))&&23117==$o(e,Lo)&&64==$o(e,Mo)&&(c=$o(e,No),17742==$o(e,Oo,c))){l=$o(e,Ro,c);g=$o(e,To,c);h=$o(e,Wo,c);if(g&&l){d=e;f=g+c;g=l;h=h||0;l=1;d.zd=[];for(d.A=[];g--;){if(k=Xo(d,f)<<h)n=Xo(d,f+2)||65536,d.zd[l++]={ei:k,ak:k+n-1,we:[]};f+=8}d.zd[254]={ei:0,ak:0,we:[]}}g=$o(e,Po,c);h=$o(e,Qo,c);if(g&&
h)for(d=e,f=g+=c,g=g+h,h=1;f<g;){k=Xo(d,f);l=k&255;if(!l)break;k=k>>8;f+=2;if(k)for(;l--;)Xo(d,f,1),254>=k?(n=k,q=Xo(d,f+1),f+=3):(n=Xo(d,f+3,1),q=Xo(d,f+4),f+=6),d.zd[n]&&(d.zd[n].we[h]=[q]),d.A[h]=[n,q],h++;else h+=l}(g=$o(e,Uo,c))&&ap(e,g+c);g=$o(e,Vo,c);h=$o(e,So,c);g&&h&&ap(e,g,g+h)}}}}
function ip(a,b,c,d,e){var f,g=a.C.length,h=b.Va/32|0;b.zo=d+"\\";for(var k=0;k<e.length;k++)for(var l=e[k],n=0;n<h;n++){var q=a,p=b;f=n;p.ue&&p.gi&&p.gi==l||(p.gi=l,p.ue=Yo(q,p.gi));if(p.ue){f*=32;var z=Zo(q,p.ue,f,1);if(0==z)f=!1;else{if(229==z)p.lc=null;else{p.lc=na(jp(q,p.ue,f+0,8));z=na(jp(q,p.ue,f+8,3));z.length&&(p.lc+="."+z);p.Vg=Zo(q,p.ue,f+11,1);p.Bi=Zo(q,p.ue,f+28,2);p.Rk=Zo(q,p.ue,f+26,2);f=p;var z=[],F=p.Rk;if(F){do{if(2>F)break;for(var v=p.hh+(F-2)*p.xg,E=0;E<p.xg;E++)z.push(p.Zf+v++);
function ip(a,b,c,d,e){var f,g=a.C.length,h=b.Va/32|0;b.Ao=d+"\\";for(var k=0;k<e.length;k++)for(var l=e[k],n=0;n<h;n++){var q=a,p=b;f=n;p.ue&&p.gi&&p.gi==l||(p.gi=l,p.ue=Yo(q,p.gi));if(p.ue){f*=32;var z=Zo(q,p.ue,f,1);if(0==z)f=!1;else{if(229==z)p.lc=null;else{p.lc=na(jp(q,p.ue,f+0,8));z=na(jp(q,p.ue,f+8,3));z.length&&(p.lc+="."+z);p.Vg=Zo(q,p.ue,f+11,1);p.Bi=Zo(q,p.ue,f+28,2);p.Rk=Zo(q,p.ue,f+26,2);f=p;var z=[],F=p.Rk;if(F){do{if(2>F)break;for(var v=p.hh+(F-2)*p.xg,E=0;E<p.xg;E++)z.push(p.Zf+v++);
F=hp(q,p,F,0)|hp(q,p,F,1)}while(F<=p.Sk)}f.xe=z}f=!0}}else f=!1;if(!f){k=e.length;break}null!=b.lc&&"."!=b.lc&&".."!=b.lc&&(f=new Ko(a,0,b.lc,b.Vg,b.Bi,b.xe),a.C.push(f))}for(e=a.C.length;g<e;g++)f=a.C[g],f.Vg&16&&f.xe.length&&ip(a,b,c,d+"\\"+f.lc,f.xe)}function hp(a,b,c,d){var e=0,f=8*b.Va;c=b.zg*c+(d?8:0);var g=c/f|0;b.mi&&b.ih&&b.ih==b.Ff+g||(b.ih=b.Ff+g,b.mi=Yo(a,b.Zf+b.ih));b.mi&&(c=c%f|0,e=Zo(a,b.mi,c>>3,1),d?e=16==b.zg?e<<8:c&7?e<<4:(e&15)<<8:c&7&&(e>>=4));return e}
function Yo(a,b){var c=a.ub*a.lb,d=b/c|0;return d<a.Bb?(c=b%c,a.seek(d,c/a.lb|0,c%a.lb+1)):null}function Zo(a,b,c,d){for(var e=0,f=0;d--;){var g=a.read(b,c++);if(0>g)break;e|=g<<f;f+=8}return e}function jp(a,b,c,d){for(var e="";d--;){var f=a.read(b,c++);if(0>=f)break;e+=String.fromCharCode(f)}return e}function cp(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Tk=b;a.Uk=c;a.wd=a.Zc=0;a.Wa=!1;return a}
function dp(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.Bb+":"+a.ub+":"+a.lb+":"+a.Va;c+="&machine="+a.controller.ff();c+="&user="+a.controller.ke();return xa()+"/api/v1/disk?"+c}
@ -593,7 +593,7 @@ m.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){v
b+" changes applied)";b=-1;break}if(this.ef){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][l]){for(k=h.data.length;k<e;)h.data[k++]=h.pattern;k=0;h.wd=e;for(h.Zc=f.length;e<g;)h.data[e++]=f[k++];b++}}}0>b?-2!=b&&this.controller.Oa("Unable to restore disk '"+this.ea+": "+c):fp(this);return b};
m.toJSON=function(){var a;a=0;for(var b;b=Yo(this,a++);)pp(b);a=JSON.stringify(this.A,function(a,b){return"file"==a?void 0: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 pp(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)}}function qp(a){Ua.call(this,"FDC",a,qp,524288);this.dmaRead=this.wk;this.dmaWrite=this.xk;this.dmaFormat=this.Lk;this.U=a.autoMount||null;this.B=[];this.ga=!Ga("Mobi")&&window&&"FileReader"in window}db(qp);aa={};
var rp={3:{Vd:3,ie:0,name:aa.Yn},4:{Vd:2,ie:1,name:aa.Wn},5:{Vd:9,ie:7,name:aa.ho},6:{Vd:9,ie:7,name:aa.Rn},7:{Vd:2,ie:0,name:aa.Tn},8:{Vd:1,ie:2,name:aa.Xn},10:{Vd:2,ie:7,name:aa.Sn},13:{Vd:6,ie:7,name:aa.Dn},15:{Vd:3,ie:0,name:aa.Vn}};m=qp.prototype;
var rp={3:{Vd:3,ie:0,name:aa.Zn},4:{Vd:2,ie:1,name:aa.Xn},5:{Vd:9,ie:7,name:aa.io},6:{Vd:9,ie:7,name:aa.Sn},7:{Vd:2,ie:0,name:aa.Un},8:{Vd:1,ie:2,name:aa.Yn},10:{Vd:2,ie:7,name:aa.Tn},13:{Vd:6,ie:7,name:aa.En},15:{Vd:3,ie:0,name:aa.Wn}};m=qp.prototype;
m.Qb=function(a,b,c){var d=this;switch(b){case "listDisks":return this.qa[b]=c,c.onchange=function(){var a=d.qa.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("("+b+")")}catch(h){w("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}},!0;case "descDisk":case "listDrives":return this.qa[b]=c,c.onchange=function(){var a=ca(c.value,10);null!=a&&sp(d,a)},!0;
case "loadDrive":return this.qa[b]=c,c.onclick=function(){var a=d.qa.listDisks;a&&tp(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDrive":if(!this.ga){c.parentNode.removeChild(c);break}this.qa[b]=c;c.onclick=function(){var a=d.qa.listDrives;if(a&&a.options&&d.A)if(a=ca(a.value,10),a=d.A[a])if(a.za){for(var b=a.za,c="",h=0,k;k=Yo(b,h++);)for(var l=0,n=k.length;l<n;l++)c+=String.fromCharCode(Zo(b,k,l,1));a=Ia(btoa(c),"octet-stream",!0,a.za.li.replace(".json",".img"));w(a)}else d.Oa("No disk loaded in drive");
else d.Oa("No drive selected")};return!0;case "mountDrive":if(!this.ga){c.parentNode.removeChild(c);break}this.qa[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;tp(d,fa(b,!0),b,a)}return!1};return!0}return!1};
@ -612,20 +612,20 @@ e,!1,!0)}}else zp(a,e);else a.Oa("Unable to load the selected drive")}function B
m.Hi=function(a,b,c,d,e){var f;a.bd=!1;b&&(f=b.info(),b&&f[0]>a.Bb||f[1]>a.ub)&&(this.Oa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.hb)),b=null);b?(a.za=b,a.jk=c,a.Le=d,Cp(this,c,d,b),f=b.info(),this.X|=128,this.Oa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.hb),a.Ae||e),a.yg=f[0],a.Nf=f[1],a.Of=f[2],this.V&&this.V.yd()):a.$e=!1;a.Ae&&(a.Ae=!1,--this.fa||rb(this));sp(this,a.hb)};
function xp(a,b,c){if((a=a.qa.listDisks)&&a.options){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=document.createElement("option");d.value=c;d.textContent=b;a.appendChild(d)}}
function sp(a,b){if(0<=b&&b<a.A.length){var c=a.A[b],d=a.qa.listDisks,e=a.qa.listDrives;if(d&&e&&d.options&&e.options&&(e=ca(e.value,10),c=c.$e?"?":c.Le,!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function zp(a,b,c,d){var e=a.A[b];e.za&&(Ap(a,e.Le,e.za),e.jk="",e.Le="",e.za=null,e.$e=!1,a.X|=128,d||a.Oa("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||sp(a,b))}
function Cp(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 Ap(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}}m.Pm=function(a,b,c){x(this,a,b,c,"OUTPUT");b&4?this.aa&4||this.aa&8&&this.N&&eg(this.N,6):up(this);this.aa=b};m.wl=function(a,b){x(this,a,null,b,"STATUS",this.ma);return this.ma};
function Cp(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 Ap(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}}m.Qm=function(a,b,c){x(this,a,b,c,"OUTPUT");b&4?this.aa&4||this.aa&8&&this.N&&eg(this.N,6):up(this);this.aa=b};m.vl=function(a,b){x(this,a,null,b,"DIAG",80);return 80};m.xl=function(a,b){x(this,a,null,b,"STATUS",this.ma);return this.ma};
m.ul=function(a,b){var c=0;this.L<this.C&&(c=this.W[this.L]);this.aa&8&&this.N&&dg(this.N,6);A(this)&&x(this,a,null,b,"DATA["+this.L+"]",c);++this.L>=this.C&&(this.ma&=-81,this.L=this.C=0);return c};
m.Om=function(a,b,c){A(this)&&x(this,a,b,c,"DATA["+this.C+"]");this.C<this.W.length&&(this.W[this.C++]=b);a=this.W[0]&31;if(void 0!==rp[a]&&this.C>=rp[a].Vd){b=!1;this.L=0;a=Dp(this);var d,e,f,g,h=a&31;switch(h){case 3:Dp(this);Dp(this);Ep(this);break;case 4:c=Dp(this);this.hb=c&3;d=this.A[this.hb];Ep(this);Fp(this,(d.Cb&-16777216)>>>24);break;case 5:case 6:c=Dp(this);b=c>>2&1;this.hb=c&3;d=this.A[this.hb];d.kb=b;c=d.Rb=Dp(this);e=Dp(this);f=d.xb=Dp(this);g=Dp(this);d.Hb=128<<g;d.he=Dp(this);Dp(this);
m.Pm=function(a,b,c){A(this)&&x(this,a,b,c,"DATA["+this.C+"]");this.C<this.W.length&&(this.W[this.C++]=b);a=this.W[0]&31;if(void 0!==rp[a]&&this.C>=rp[a].Vd){b=!1;this.L=0;a=Dp(this);var d,e,f,g,h=a&31;switch(h){case 3:Dp(this);Dp(this);Ep(this);break;case 4:c=Dp(this);this.hb=c&3;d=this.A[this.hb];Ep(this);Fp(this,(d.Cb&-16777216)>>>24);break;case 5:case 6:c=Dp(this);b=c>>2&1;this.hb=c&3;d=this.A[this.hb];d.kb=b;c=d.Rb=Dp(this);e=Dp(this);f=d.xb=Dp(this);g=Dp(this);d.Hb=128<<g;d.he=Dp(this);Dp(this);
Dp(this);6==h?(h=d,h.Cb=72,h.za&&(h.pb=null,h.Cb=0,this.N&&(xl(this.N,2,this,"dmaRead",h),pl(this.N,2)))):(h=d,h.Cb=72,h.za&&(h.za.ef?h.Cb=576:(h.pb=null,h.Cb=0,this.N&&(xl(this.N,2,this,"dmaWrite",h),pl(this.N,2)))));Gp(this,d,a,b,c,e,f,g);b=!0;break;case 7:c=Dp(this);this.hb=c&3;d=this.A[this.hb];d.Rb=d.ge=0;d.Cb=268435488;Ep(this);b=!0;break;case 8:d=this.A[this.hb];d.kb=0;Ep(this);Fp(this,d.hb|d.kb<<2|d.Cb&255);Fp(this,d.Rb);this.hb=this.hb+1&3;break;case 10:c=Dp(this);b=c>>2&1;this.hb=c&3;d=
this.A[this.hb];c=d.Rb;e=d.kb=b;f=d.xb=1;g=0;d.Cb=0;d.za&&(d.pb=d.za.seek(d.Rb,d.kb,d.xb))?g=d.pb.length>>8:d.Cb=72;Gp(this,d,a,b,c,e,f,g);b=!0;break;case 13:c=Dp(this);b=c>>2&1;this.hb=c&3;d=this.A[this.hb];c=d.Rb;e=d.kb=b;f=1;g=Dp(this);d.Hb=128<<g;d.he=Dp(this);Dp(this);d.xi=Dp(this);h=d;h.Cb=72;h.za&&(h.pb=null,h.Cb=0,this.N&&(h.Ve=0,h.md=Array(4),h.Xg=!0,h.mg=0,xl(this.N,2,this,"dmaFormat",h),pl(this.N,2),h.Xg=!1));Gp(this,d,a,b,c,e,f,g);b=!0;break;case 15:c=Dp(this),this.hb=c&3,d=this.A[this.hb],
d.kb=c>>2&1,c=Dp(this),d.Rb+=c-d.ge,0>d.Rb&&(d.Rb=0),d.Rb>=d.Bb&&(d.Rb=d.Bb-1),d.ge=c,d.Cb=32,d.Rb||(d.Cb|=268435456),Ep(this),b=!0}0<this.C&&(this.ma|=80);this.aa&8&&(!d||d.Cb&8||!b||this.N&&eg(this.N,6))}};m.vl=function(a,b){var c=this.X;this.X&=-129;x(this,a,null,b,"INPUT",c);return c};m.Nm=function(a,b,c){x(this,a,b,c,"CONTROL");this.kc=b};
d.kb=c>>2&1,c=Dp(this),d.Rb+=c-d.ge,0>d.Rb&&(d.Rb=0),d.Rb>=d.Bb&&(d.Rb=d.Bb-1),d.ge=c,d.Cb=32,d.Rb||(d.Cb|=268435456),Ep(this),b=!0}0<this.C&&(this.ma|=80);this.aa&8&&(!d||d.Cb&8||!b||this.N&&eg(this.N,6))}};m.wl=function(a,b){var c=this.X;this.X&=-129;x(this,a,null,b,"INPUT",c);return c};m.Om=function(a,b,c){x(this,a,b,c,"CONTROL");this.kc=b};
function Gp(a,b,c,d,e,f,g,h){Ep(a);Fp(a,b.hb|b.kb<<2|b.Cb&255);Fp(a,(b.Cb&65280)>>>8);Fp(a,(b.Cb&16711680)>>>16);var k=0;if(e!=b.Rb||f!=b.kb)k=g=1;c&128&&(f^=k,d||(k=0));Fp(a,e+k);Fp(a,f);Fp(a,g);Fp(a,h)}function Dp(a){var b=a.W[a.L];a.L++;return b}function Ep(a){a.L=a.C=0}function Fp(a,b){a.W[a.C++]=b}
m.wk=function(a,b,c){if(void 0===b||0>b){b=-1;var d=null,e=0;if(!a.Cb&&a.za){do{if(a.pb&&(e=a.eb,0<=(b=a.za.read(a.pb,a.eb++)))){d=a.pb;break}a.pb=a.za.seek(a.Rb,a.kb,a.xb);if(!a.pb){a.Cb=1088;break}a.eb=0;Hp(a)}while(1)}c(b,!1,d,e)}else c(-1,!1)};m.xk=function(a,b){return void 0!==b&&0<=b?Ip(a,b):-1};
m.Lk=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.Cb)c=-1;else{a.md[a.Ve++]=c;if(a.Ve==a.md.length){a.Rb=a.md[0];a.kb=a.md[1];a.xb=a.md[2];a.Hb=128<<a.md[3];for(var d=a.Ve=0;d<a.Hb;d++)if(0>Ip(a,a.xi)){c=-1;break a}a.mg++}a.mg>=a.he&&(c=-1)}else c=-1;return c};function Ip(a,b){if(a.Cb||!a.za)return-1;do{if(a.pb&&a.za.write(a.pb,a.eb++,b))break;a.pb=a.za.seek(a.Rb,a.kb,a.xb);if(!a.pb){a.Cb=8256;b=-1;break}a.eb=0;Hp(a)}while(1);return b}
function Hp(a){a.xb++;a.xb>=a.Of+1&&(a.xb=1,a.kb++,a.kb>=a.Nf&&(a.kb=0,a.Rb++))}var vp={1012:qp.prototype.wl,1013:qp.prototype.ul,1015:qp.prototype.vl},wp={1010:qp.prototype.Pm,1013:qp.prototype.Om,1015:qp.prototype.Nm};Qa(function(){for(var a=nb(document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new qp(d);mb(d,c)}});
function Hp(a){a.xb++;a.xb>=a.Of+1&&(a.xb=1,a.kb++,a.kb>=a.Nf&&(a.kb=0,a.Rb++))}var vp={1009:qp.prototype.vl,1012:qp.prototype.xl,1013:qp.prototype.ul,1015:qp.prototype.wl},wp={1010:qp.prototype.Qm,1013:qp.prototype.Pm,1015:qp.prototype.Om};Qa(function(){for(var a=nb(document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new qp(d);mb(d,c)}});
function Jp(a){Ua.call(this,"HDC",a,Jp,1048576);this.dmaRead=this.yk;this.dmaWrite=this.zk;this.dmaWriteBuffer=this.Mk;this.dmaWriteFormat=this.Nk;this.ua=[];this.Fa=a.drives;this.ja="at"==a.type}db(Jp);
var Kp=["XTC","ATC","COMPAQ"],Lp=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966,6],19:[1023,
8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}];m=Jp.prototype;m.Qb=function(){return!1};
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.V=a;if(d=Nc(a,"drives"))this.ua=d;else if(this.Fa)try{this.ua=eval("("+this.Fa+")")}catch(e){w("HDC drive configuration error: "+e.message+" ("+this.Fa+")")}this.N=Eb(a,"ChipSet");this.U=0;this.Ia=3;hc(b,this,this.ja?Mp:Np);lc(b,this,this.ja?Op:Pp);this.ja&&(this.U++,this.N&&5180==this.N.ia&&this.U++,this.Ia=2,b.aa[496]=2,b.fa[496]=2);cf(c,19,this.Yl.bind(this));cf(c,64,this.Zl.bind(this));this.reset();Qp(this)||rb(this)};
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.V=a;if(d=Nc(a,"drives"))this.ua=d;else if(this.Fa)try{this.ua=eval("("+this.Fa+")")}catch(e){w("HDC drive configuration error: "+e.message+" ("+this.Fa+")")}this.N=Eb(a,"ChipSet");this.U=0;this.Ia=3;hc(b,this,this.ja?Mp:Np);lc(b,this,this.ja?Op:Pp);this.ja&&(this.U++,this.N&&5180==this.N.ia&&this.U++,this.Ia=2,b.aa[496]=2,b.fa[496]=2);cf(c,19,this.Zl.bind(this));cf(c,64,this.$l.bind(this));this.reset();Qp(this)||rb(this)};
m.ic=function(a,b){if(!b)if(!a||!this.restore)Rp(this),this.V.bh&&Qp(this,!0);else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};m.ff=function(){return this.V?this.V.ff():""};m.ke=function(){return this.V?this.V.ke():""};m.reset=function(){Rp(this,null,!0)};
m.save=function(){var a=new hf(this),b=0,c=[];this.ja?(c[b++]=this.X,c[b++]=this.Pa,c[b++]=this.aa,c[b++]=this.Ca,c[b++]=this.ya,c[b++]=this.wa,c[b++]=this.ra,c[b++]=this.ma,c[b++]=this.Ea,c[b++]=[this.ga,this.hb]):(c[b++]=this.pa,c[b++]=this.ma,c[b++]=this.W,c[b++]=this.L,c[b++]=this.C,c[b++]=this.Na,c[b++]=this.Ka,c[b++]=this.Ja,c[b++]=this.ka);for(var d=0,e=[],f=0;f<this.A.length;f++){var g=d++,h=this.A[f],k=0,l=[];l[k++]=h.errorCode;l[k++]=h.lk;l[k++]=h.bf;l[k++]=h.Qe;l[k++]=h.Re;l[k++]=h.kb;
l[k++]=h.ub;l[k++]=h.de;l[k++]=h.xb;l[k++]=h.he;l[k++]=h.Hb;l[k++]=h.eb;l[k]=h.za?h.za.save():null;e[g]=l}c[b]=e;N(a,0,c);return a.data()};m.restore=function(a){return Rp(this,a[0])};
@ -637,12 +637,12 @@ function Sp(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.Qe[2])?e=b.Qe[0]<<8|b.Qe[1]:
m.kk=function(a,b,c){if(a.za){var d=a.za.info(),e=d[0];if(e){var f=d[2],g=d[1]*f;if(b+c<=e*g)return a.de=Math.floor(b/g),b%=g,a.kb=Math.floor(b/f),a.xb=b%f,a.Hb=c*d[3],a.errorCode=0,!0}}return!1};
function Qp(a,b){b||(a.fa=0);for(var c=0;c<a.A.length;c++){var d=a.A[c];if(d.name&&d.path){if(!(b&&d.za&&d.za.qg)){var e;e=a;var f=d.name,d=d.path,g=e.A[c];g.bd?(e.Oa("Drive "+c+" busy"),e=!0):(g.bd=!0,g.Ae=!0,e.fa++,A(e)&&y(e,"loading "+f),(g.za||new Ho(e,g,g.mode)).load(f,d,null,e.Ok),e=!1);!e&&b&&rb(a,!1)}}else b&&void 0!==d.type&&(d.za=null,Sp(a,d,d.type))}return!!a.fa}
m.Ok=function(a,b,c){a.bd=!1;if(a.za=b)this.Oa('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.hb),a.Ae),b=b.info(),b[0]==a.Bb&&b[1]==a.ub&&b[2]==a.lb&&b[3]==a.Va||this.Oa("Warning: disk geometry ("+b[0]+":"+b[1]+":"+b[2]+") does not match "+Kp[this.U]+" drive type "+a.type+" ("+a.Bb+":"+a.ub+":"+a.lb+")");a.Ae&&(a.Ae=!1,--this.fa||rb(this))};
m.Wl=function(a,b){var c=0;this.L<this.C&&(c=this.W[this.L]);this.N&&dg(this.N,5);this.ma&=-33;x(this,a,null,b,"DATA["+this.L+"]",c);++this.L>=this.C&&(this.L=this.C=0,this.ma&=-15);return c};m.mn=function(a,b,c){x(this,a,b,c,"DATA["+this.C+"]");this.C<this.W.length&&(this.W[this.C++]=b);a=12!=this.W[0]?6:this.W.length;6==this.C&&(this.ma&=-2);this.C>=a&&(this.ma|=2,this.ma&=-2,Tp(this))};m.Xl=function(a,b){var c=this.ma;x(this,a,null,b,"STATUS",c);this.L<this.C&&(this.ma|=1);return c};
m.pn=function(a,b,c){x(this,a,b,c,"RESET");this.Na=b;this.N&&dg(this.N,5);Rp(this)};m.Vl=function(a,b){x(this,a,null,b,"CONFIG",this.pa);return this.pa};m.on=function(a,b,c){x(this,a,b,c,"PULSE");this.Ka=b;this.ma=13};m.nn=function(a,b,c){x(this,a,b,c,"PATTERN");this.Ja=b};m.fi=function(a,b,c){x(this,a,b,c,"NOISE")};
m.Xl=function(a,b){var c=0;this.L<this.C&&(c=this.W[this.L]);this.N&&dg(this.N,5);this.ma&=-33;x(this,a,null,b,"DATA["+this.L+"]",c);++this.L>=this.C&&(this.L=this.C=0,this.ma&=-15);return c};m.nn=function(a,b,c){x(this,a,b,c,"DATA["+this.C+"]");this.C<this.W.length&&(this.W[this.C++]=b);a=12!=this.W[0]?6:this.W.length;6==this.C&&(this.ma&=-2);this.C>=a&&(this.ma|=2,this.ma&=-2,Tp(this))};m.Yl=function(a,b){var c=this.ma;x(this,a,null,b,"STATUS",c);this.L<this.C&&(this.ma|=1);return c};
m.qn=function(a,b,c){x(this,a,b,c,"RESET");this.Na=b;this.N&&dg(this.N,5);Rp(this)};m.Wl=function(a,b){x(this,a,null,b,"CONFIG",this.pa);return this.pa};m.pn=function(a,b,c){x(this,a,b,c,"PULSE");this.Ka=b;this.ma=13};m.on=function(a,b,c){x(this,a,b,c,"PATTERN");this.Ja=b};m.fi=function(a,b,c){x(this,a,b,c,"NOISE")};
function Up(a,b,c){var d=-1;a.B&&(d=Vp(a.B,function(){}),1==a.B.eb||a.B.eb==a.B.Va)&&(A(a,1048832)&&x(a,b,null,c,"DATA["+a.B.eb+"]",d),1<a.B.eb&&(a.B.Hb-=a.B.Va,a.aa=a.aa-1&255,a.B.Hb>=a.B.Va?(a.ma=128,Vp(a.B,function(b){0<=b?(Wp(a),a.N&&5180==a.N.ia&&(a.ma=0),a.ma|=88):(a.ma=1,a.X=16)},!1)):a.ma=80));return d}m.Ak=function(a,b){return Up(this,a,b)|Up(this,a,b)<<8};
function Xp(a,b,c,d){if(a.B&&a.B.Hb>=a.B.Va)if(0>Yp(a.B,c))a.ma=1,a.X=16;else if(1==a.B.eb||a.B.eb==a.B.Va)A(a,1048832)&&x(a,b,c,d,"DATA["+a.B.eb+"]"),1<a.B.eb&&(a.B.Hb-=a.B.Va,a.aa=a.aa-1&255,Wp(a),a.ma=80,a.B.Hb>=a.B.Va&&(a.ma|=8))}m.vm=function(a,b,c){Xp(this,a,b&255,c);Xp(this,a,b>>8&255,c)};m.dl=function(a,b){var c=this.X;x(this,a,null,b,"ERROR",c);return c};m.Am=function(a,b,c){x(this,a,b,c,"WPREC");this.Pa=b};m.fl=function(a,b){var c=this.aa;x(this,a,null,b,"SECCNT",c);return c};
m.ym=function(a,b,c){x(this,a,b,c,"SECCNT");this.aa=b};m.gl=function(a,b){var c=this.Ca;x(this,a,null,b,"SECNUM",c);return c};m.zm=function(a,b,c){x(this,a,b,c,"SECNUM");this.Ca=b};m.bl=function(a,b){var c=this.ya;x(this,a,null,b,"CYLLO",c);return c};m.um=function(a,b,c){x(this,a,b,c,"CYLLO");this.ya=b};m.al=function(a,b){var c=this.wa;x(this,a,null,b,"CYLHI",c);return c};m.tm=function(a,b,c){x(this,a,b,c,"CYLHI");this.wa=b};m.cl=function(a,b){var c=this.ra;x(this,a,null,b,"DRVHD",c);return c};
m.wm=function(a,b,c){x(this,a,b,c,"DRVHD");this.ra=b;this.ma=this.A[this.ra&16?1:0]?this.ma|80:this.ma&-65};m.hl=function(a,b){var c=this.ma;x(this,a,null,b,"STATUS",c);this.ma&64&&(this.ma&=-129);return c};m.sm=function(a,b,c){x(this,a,b,c,"COMMAND");this.Ea=b;this.N&&dg(this.N,14);Zp(this)};m.xm=function(a,b,c){x(this,a,b,c,"FDR");this.ga&4&&!(b&4)&&(this.X=1);this.ga=b};
function Xp(a,b,c,d){if(a.B&&a.B.Hb>=a.B.Va)if(0>Yp(a.B,c))a.ma=1,a.X=16;else if(1==a.B.eb||a.B.eb==a.B.Va)A(a,1048832)&&x(a,b,c,d,"DATA["+a.B.eb+"]"),1<a.B.eb&&(a.B.Hb-=a.B.Va,a.aa=a.aa-1&255,Wp(a),a.ma=80,a.B.Hb>=a.B.Va&&(a.ma|=8))}m.wm=function(a,b,c){Xp(this,a,b&255,c);Xp(this,a,b>>8&255,c)};m.dl=function(a,b){var c=this.X;x(this,a,null,b,"ERROR",c);return c};m.Bm=function(a,b,c){x(this,a,b,c,"WPREC");this.Pa=b};m.fl=function(a,b){var c=this.aa;x(this,a,null,b,"SECCNT",c);return c};
m.zm=function(a,b,c){x(this,a,b,c,"SECCNT");this.aa=b};m.gl=function(a,b){var c=this.Ca;x(this,a,null,b,"SECNUM",c);return c};m.Am=function(a,b,c){x(this,a,b,c,"SECNUM");this.Ca=b};m.bl=function(a,b){var c=this.ya;x(this,a,null,b,"CYLLO",c);return c};m.vm=function(a,b,c){x(this,a,b,c,"CYLLO");this.ya=b};m.al=function(a,b){var c=this.wa;x(this,a,null,b,"CYLHI",c);return c};m.um=function(a,b,c){x(this,a,b,c,"CYLHI");this.wa=b};m.cl=function(a,b){var c=this.ra;x(this,a,null,b,"DRVHD",c);return c};
m.xm=function(a,b,c){x(this,a,b,c,"DRVHD");this.ra=b;this.ma=this.A[this.ra&16?1:0]?this.ma|80:this.ma&-65};m.hl=function(a,b){var c=this.ma;x(this,a,null,b,"STATUS",c);this.ma&64&&(this.ma&=-129);return c};m.tm=function(a,b,c){x(this,a,b,c,"COMMAND");this.Ea=b;this.N&&dg(this.N,14);Zp(this)};m.ym=function(a,b,c){x(this,a,b,c,"FDR");this.ga&4&&!(b&4)&&(this.X=1);this.ga=b};
function Zp(a){var b=!1,c=a.Ea,d=a.ra&16?1:0,e=a.ra&15,f=a.ya|(a.wa&3)<<8,g=a.Ca,h=a.aa||256;a.hb=-1;a.B=null;a.X=0;a.ma=80;var k=a.A[d];k?(k.de=f,k.kb=e,k.xb=g,k.Hb=h*k.Va,c=144<=c?c:c&240,k.pb=null,k.eb=0,k.errorCode=0,a.hb=d,a.B=k):c=-1;switch(c&240){case 16:b=!0;break;case 32:a.ma=128;Vp(k,function(b){0<=b&&a.N?(Wp(a),a.ma=88):(a.ma=1,a.X=16)},!1);break;case 48:a.ma=8;break;case 64:b=!0;break;case 112:b=!0;break;case 144:a.X=1;b=!0;break;case 145:k.ub=e+1,k.lb=h,b=!0}b&&Wp(a)}
function Wp(a){!a.N||a.ga&2||eg(a.N,14,120)}
function Tp(a){a.L=0;var b=$p(a),c=$p(a),d=c&32,e=d>>5,f=c&31,g=$p(a),h=$p(a),k=g<<2&768|h,l=g&63,n=$p(a),q=$p(a),p=a.A[e];p&&(p.de=k,p.kb=f,p.xb=l,p.Hb=n*p.Va);switch(b){case 3:aq(a,p?p.errorCode:4);bq(a,c);bq(a,g);bq(a,h);bq(a,0|d);b=-1;break;case 12:for(c=0;0<=(b=$p(a));)p&&c<p.Qe.length&&(p.Qe[c++]=b);p&&Sp(a,p);b=0;p||a.ka!=e||(a.ka=-1,b=2);aq(a,b|d);b=-1;break;case 224:case 228:aq(a,0|d),b=-1}if(0<=b)switch(void 0===p?b=-1:(p.errorCode=0,p.lk=0),b){case 0:aq(a,0|d);break;case 1:p.Bf=q;aq(a,
@ -651,9 +651,9 @@ m.Mk=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.eb<a.Re.length?a.Re[a.eb++]=c:(
function cq(a,b,c){b.errorCode=4;if(b.za&&(b.pb=null,a.N)){b.errorCode=0;xl(a.N,3,a,"dmaRead",b);pl(a.N,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}function dq(a,b,c){b.errorCode=4;if(b.za&&(b.pb=null,a.N)){b.errorCode=0;xl(a.N,3,a,"dmaWrite",b);pl(a.N,3,function(a){a||(0==b.errorCode&&(b.errorCode=4),20==b.errorCode&&(b.errorCode=0));c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}
function eq(a,b,c){b.errorCode=4;b.Re&&b.Re.length==b.Hb||(b.Re=Array(b.Hb));b.eb=0;a.N?(b.errorCode=0,xl(a.N,3,a,"dmaWriteBuffer",b),pl(a.N,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
function Vp(a,b,c){var d=-1,e=null,f=0;if(a.errorCode)return b&&b(d,!1,e,f),d;var g=!1!==c?1:0;if(a.pb&&(f=a.eb,d=a.za.read(a.pb,a.eb),a.eb+=g,0<=d))return e=a.pb,b&&b(d,!1,e,f),d;if(b){if(a.za)return a.za.seek(a.de,a.kb,a.xb+a.lg,!1,function(c,k){(a.pb=c)?(e=c,f=a.eb=0,fq(a),d=a.za.read(a.pb,a.eb),a.eb+=g):a.errorCode=20;b(d,k,e,f)}),d;a.errorCode=20;b(d,!1,e,f)}return d}
function Yp(a,b){if(a.errorCode)return-1;do{if(a.pb&&a.za.write(a.pb,a.eb++,b))break;a.za&&a.za.seek(a.de,a.kb,a.xb+a.lg,!0,function(b){a.pb=b});if(!a.pb){a.errorCode=20;b=-1;break}a.eb=0;fq(a)}while(1);return b}function fq(a){a.xb++;var b=1-a.lg;a.xb>=a.lb+b&&(a.xb=b,a.kb++,a.kb>=a.ub&&(a.kb=0,a.de++))}m.Yl=function(){var a=this.F.M&255;!(this.F.G>>8)&&128<a&&(this.ka=a-128);return!0};m.Zl=function(){var a;(a=this.F.G>>8||!this.N)||(a=!(this.N.vc[0].Bd&64));return a?!0:!1};
var Np={800:Jp.prototype.Wl,801:Jp.prototype.Xl,802:Jp.prototype.Vl},Mp={496:Jp.prototype.Ak,497:Jp.prototype.dl,498:Jp.prototype.fl,499:Jp.prototype.gl,500:Jp.prototype.bl,501:Jp.prototype.al,502:Jp.prototype.cl,503:Jp.prototype.hl},Pp={800:Jp.prototype.mn,801:Jp.prototype.pn,802:Jp.prototype.on,803:Jp.prototype.nn,807:Jp.prototype.fi,811:Jp.prototype.fi,815:Jp.prototype.fi},Op={496:Jp.prototype.vm,497:Jp.prototype.Am,498:Jp.prototype.ym,499:Jp.prototype.zm,500:Jp.prototype.um,501:Jp.prototype.tm,
502:Jp.prototype.wm,503:Jp.prototype.sm,1014:Jp.prototype.xm};Qa(function(){for(var a=nb(document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new Jp(d);mb(d,c)}});
function Yp(a,b){if(a.errorCode)return-1;do{if(a.pb&&a.za.write(a.pb,a.eb++,b))break;a.za&&a.za.seek(a.de,a.kb,a.xb+a.lg,!0,function(b){a.pb=b});if(!a.pb){a.errorCode=20;b=-1;break}a.eb=0;fq(a)}while(1);return b}function fq(a){a.xb++;var b=1-a.lg;a.xb>=a.lb+b&&(a.xb=b,a.kb++,a.kb>=a.ub&&(a.kb=0,a.de++))}m.Zl=function(){var a=this.F.M&255;!(this.F.G>>8)&&128<a&&(this.ka=a-128);return!0};m.$l=function(){var a;(a=this.F.G>>8||!this.N)||(a=!(this.N.vc[0].Bd&64));return a?!0:!1};
var Np={800:Jp.prototype.Xl,801:Jp.prototype.Yl,802:Jp.prototype.Wl},Mp={496:Jp.prototype.Ak,497:Jp.prototype.dl,498:Jp.prototype.fl,499:Jp.prototype.gl,500:Jp.prototype.bl,501:Jp.prototype.al,502:Jp.prototype.cl,503:Jp.prototype.hl},Pp={800:Jp.prototype.nn,801:Jp.prototype.qn,802:Jp.prototype.pn,803:Jp.prototype.on,807:Jp.prototype.fi,811:Jp.prototype.fi,815:Jp.prototype.fi},Op={496:Jp.prototype.wm,497:Jp.prototype.Bm,498:Jp.prototype.zm,499:Jp.prototype.Am,500:Jp.prototype.vm,501:Jp.prototype.um,
502:Jp.prototype.xm,503:Jp.prototype.tm,1014:Jp.prototype.ym};Qa(function(){for(var a=nb(document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new Jp(d);mb(d,c)}});
function gq(a){Ua.call(this,"Debugger",a,gq);this.pa=this.ya=this.fa=0;this.Ja=4;this.Ca=5;this.Ba=1048575;this.aa=hq(this);this.Db=hq(this);this.U=-1;this.L=[];this.Ea=!1;this.ua=hq(this);this.B=[];this.wa={};this.A=this.ra=this.ga=[];iq(this);this.Na=0;jq(this);this.$a=[];kq(this,a.messages);this.gb=a.commands;var b=this;window?void 0===window.$&&(window.$=function(a){return lq(b,a)}):void 0===global.$&&(global.$=function(a){return lq(b,a)})}db(gq);
var mq={16:262144,19:524288,21:32768,22:65536,28:2048,33:134217728,51:16777216},nq=[26,28,40,42,109],oq={"?":"help/print","a [#]":"assemble","b [#]":"breakpoint",c:"clear output","d [#]":"dump memory","e [#]":"edit memory",f:"frequencies","g [#]":"go [to #]",h:"halt","i [#]":"input port #","if":"eval expression",k:"stack trace",l:"load sector(s)",ln:"list nearest symbol(s)",m:"messages",mouse:"mouse action","o [#]":"output port #",p:"step over",print:"print expression",r:"dump/set registers",reset:"reset machine",
"t [#]":"trace","u [#]":"unassemble",x:"execution options",v:"print version","var":"assign variable"},pq="INVALID AAA AAD AAM AAS ADC ADD AND ARPL AS: BOUND BSF BSR BT BTC BTR BTS CALL CBW CLC CLD CLI CLTS CMC CMP CMPSB CMPSW CS: CWD DAA DAS DEC DIV DS: ENTER ES: ESC FS: GS: HLT IBTS IDIV IMUL IN INC INS INT INT3 INTO IRET JBE JC JCXZ JG JGE JL JLE JMP JA JNC JNO JNP JNS JNZ JO JP JS JZ LAHF LAR LDS LEA LEAVE LES LFS LGDT LGS LIDT LLDT LMSW LOADALL LOCK LODSB LODSW LOOP LOOPNZ LOOPZ LSL LSS LTR MOV MOVSB MOVSW MOVSX MOVZX MUL NEG NOP NOT OR OS: OUT OUTS POP POPA POPF PUSHF PUSHA PUSH RCL RCR REPNZ REPZ RET RETF ROL ROR SAHF SALC SAR SBB SCASB SCASW SETBE SETC SETG SETGE SETL SETLE SETNBE SETNC SETNO SETNP SETNS SETNZ SETO SETP SETS SETZ SGDT SHL SHLD SHR SHRD SIDT SLDT SMSW SS: STC STD STI STOSB STOSW STR SUB TEST VERR VERW WAIT XBTS XCHG XLAT XOR".split(" "),
@ -679,13 +679,13 @@ m=gq.prototype;
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.V=a;this.tc=Eb(a,"FDC");this.Jb=Eb(a,"HDC");this.Tb=Eb(a,"FPU");this.W=Eb(a,"Mouse");(a=Nc(a,"messages"))&&kq(this,a);this.Ca=b.N>>2;this.Ba=b.wg;this.bc=new ed(this.F,7,"DBG");this.Ia=yq;80186<=this.F.ia&&(this.Ia=yq.slice(),this.Ia[15]=wq,80286<=this.F.ia&&(this.Ia[15]=xq,80386<=this.F.ia&&(this.Ja=8)));Mk(this,64,function(a){Cq(d,d.F.ld,a[0])});Mk(this,4,function(a){if(a=a[0]){var b=Dq(d,a);if(void 0===b)d.O("invalid selector: "+a);else if(a=Eq(d,
b,2),d.O("dumpSel("+u(a?a.Z:b)+"): %"+r(a?a.Xb:null,d.Ca)),a){var c,b=!1;if(a.type&4096)a.type&2048?(c="code"+(a.type&512?",readable":",execonly"),a.type&1024&&(c+=",conforming")):(c="data"+(a.type&512?",writable":",readonly"),a.type&1024&&(c+=",expdown")),a.type&256&&(c+=",accessed");else{var h=Fq[a.type];h&&(c=h[0],b=h[1])}!c||a.wb&32768||(c+=",not present");d.O((b?"seg="+u(a.Aa&65535)+" off="+u(a.Ta):"base="+r(a.Aa,d.Ca)+" limit="+Gq(a.Ta))+" type="+t(a.type>>8)+" ("+c+") ext="+u(a.ext&-65296)+
" dpl="+t(a.Gc))}}else d.O("no selector")});Mk(this,134217728,function(a){var b;(a=a[0])&&(b=Dq(d,a));if(void 0===b)d.O("invalid MCB");else for(d.O("dumpMCB("+u(b)+")");b;){a=hq(d,0,b);var c=d.Qa(a,1),h=d.na(a,2),k=d.na(a,5);if(77!=c&&90!=c)break;d.O(Hq(0,b)+": '"+String.fromCharCode(c)+"' PID="+u(h)+" LEN="+u(k)+' "'+Iq(d,a,8)+'"');b+=1+k}});Mk(this,128,function(a){Cq(d,d.F.sa,a[0],d.F.sa!==d.F.ld)});Mk(this,8,function(a){a:{if(a=a[0]){var b=Dq(d,a);if(void 0===b){d.O("invalid task selector: "+a);
break a}a=Eq(d,b,2)}else a=d.F.Sa;d.O("dumpTSS("+u(a?a.Z:b)+"): %"+r(a?a.Aa:null,d.Ca));if(a){var b="",c=a.type&-513,h=256==c?4:8,k=256==c?Jq:Kq,l,n,q,p;for(p in k)l=k[p],n=a.Aa+l,q=If(d.F,n,2),2304==c&&(q|=If(d.F,n+2,2)<<16),b&&(b+="\n"),b+=u(l)+" "+ma(p+":",11)+r(q,h);if(2304==c)for(p=0,l=q>>>16;l<a.Zb&&1023>p;)n=a.Aa+l,q=If(d.F,n,2),b+="\n"+u(l)+" ports "+u(p)+"-"+u(p+15)+": "+ea(q,2),p+=16,l+=2;d.O(b)}}});this.C=null;this.rb=0;this.cb=!1;cf(this.F,48,this.am.bind(this));cf(this.F,65,this.bm.bind(this));
this.ka=null;cf(this.F,104,this.cm.bind(this));rb(this)};function Lq(a,b,c,d,e,f){b=Iq(a,b);var g=Eq(a,d),g=g?g.Ta+1:0,h=(e?"_CODE":"_DATA")+r(c,2);f&&A(a,128)&&a.message(b+" "+(e?"code":"data")+"("+r(c,4)+")=#"+r(d,4)+" len "+r(g));e=Mq(a,b,c);e[b+h]=0;am(a,b,c,d,0,null,g,e)}
break a}a=Eq(d,b,2)}else a=d.F.Sa;d.O("dumpTSS("+u(a?a.Z:b)+"): %"+r(a?a.Aa:null,d.Ca));if(a){var b="",c=a.type&-513,h=256==c?4:8,k=256==c?Jq:Kq,l,n,q,p;for(p in k)l=k[p],n=a.Aa+l,q=If(d.F,n,2),2304==c&&(q|=If(d.F,n+2,2)<<16),b&&(b+="\n"),b+=u(l)+" "+ma(p+":",11)+r(q,h);if(2304==c)for(p=0,l=q>>>16;l<a.Zb&&1023>p;)n=a.Aa+l,q=If(d.F,n,2),b+="\n"+u(l)+" ports "+u(p)+"-"+u(p+15)+": "+ea(q,2),p+=16,l+=2;d.O(b)}}});this.C=null;this.rb=0;this.cb=!1;cf(this.F,48,this.bm.bind(this));cf(this.F,65,this.cm.bind(this));
this.ka=null;cf(this.F,104,this.dm.bind(this));rb(this)};function Lq(a,b,c,d,e,f){b=Iq(a,b);var g=Eq(a,d),g=g?g.Ta+1:0,h=(e?"_CODE":"_DATA")+r(c,2);f&&A(a,128)&&a.message(b+" "+(e?"code":"data")+"("+r(c,4)+")=#"+r(d,4)+" len "+r(g));e=Mq(a,b,c);e[b+h]=0;am(a,b,c,d,0,null,g,e)}
function Nq(a,b,c,d){var e=a.na(b,2),f=a.na(b,2),g=a.oa(b,4),h=a.oa(b,4),k=hq(a,a.oa(b,4),a.na(b,2));b=hq(a,a.oa(b,4),a.na(b,2));b=Iq(a,b).toUpperCase();var k=Iq(a,k).toUpperCase(),l=(c?"_CODE":"_DATA")+r(e,2);d&&A(a,128)&&a.message((b==k?"":b+"!")+k+" "+(c?"code":"data")+"("+r(e,4)+")="+r(f,4)+":"+r(g)+" len "+r(h));c=Mq(a,k,e);c[k+l]=g;am(a,k,e,f,g,null,h,c)}function Oq(a,b,c){c=Iq(a,c).toUpperCase();Pq(a,c,b)}
m.am=function(){var a=this.F;if(null!=this.C&&2752554==a.G){var b=a.M&65535,c=a.K&65535,d=hq(this,I(a)+12,a.ta.Z);switch(this.oa(d)){case 336:Nq(this,hq(this,a.H,b),!c,!!this.C)}}return!0};
m.bm=function(a){var b=this.F,c=b.G&65535,d=b.H&65535,e=b.I&65535,f=b.M&65535,g=b.K&65535,h=b.J&65535,k=b.Xa.Z;if(null==this.C)return 79==c&&df(b,a,function(a){return function(){62342!=(b.G&65535)?(b.G=b.G&-65536|62342,y(a,"INT 0x41 handling enabled",128),a.C=!0):(y(a,"INT 0x41 monitoring enabled",128),a.C=!1)}}(this)),!0;switch(c){case 79:this.C&&(b.G=b.G&-65536|62342,y(this,"INT 0x41 handling enabled",128));break;case 80:Lq(this,hq(this,h,k),d+1,e,!(g&1),!!this.C);break;case 82:Pq(this,null,d);
m.bm=function(){var a=this.F;if(null!=this.C&&2752554==a.G){var b=a.M&65535,c=a.K&65535,d=hq(this,I(a)+12,a.ta.Z);switch(this.oa(d)){case 336:Nq(this,hq(this,a.H,b),!c,!!this.C)}}return!0};
m.cm=function(a){var b=this.F,c=b.G&65535,d=b.H&65535,e=b.I&65535,f=b.M&65535,g=b.K&65535,h=b.J&65535,k=b.Xa.Z;if(null==this.C)return 79==c&&df(b,a,function(a){return function(){62342!=(b.G&65535)?(b.G=b.G&-65536|62342,y(a,"INT 0x41 handling enabled",128),a.C=!0):(y(a,"INT 0x41 monitoring enabled",128),a.C=!1)}}(this)),!0;switch(c){case 79:this.C&&(b.G=b.G&-65536|62342,y(this,"INT 0x41 handling enabled",128));break;case 80:Lq(this,hq(this,h,k),d+1,e,!(g&1),!!this.C);break;case 82:Pq(this,null,d);
break;case 127:this.C&&(b.G=b.G&-65536|(this.cb?0:1));break;case 131:this.C&&(a=hq(this,b.M,e),this.rb++?(this.O("TRAPFAULT failed"),Qq(this,this.A,a,!0,!0),this.rb=0,this.Wb()):(this.O("INT 0x41 TRAPFAULT: fault="+u(d)+" error="+("0x"+r(b.K))+" addr="+Rq(a)),this.Sd(this.A,a,!0),jq(this,!0)));break;case 141:this.C&&(b.G=b.G&-65536|1);break;case 336:Nq(this,hq(this,b.H,f),!g,!!this.C);break;case 338:Oq(this,d,hq(this,b.J,f))}this.cb=!1;return!this.C};
m.cm=function(a){var b=this.F,c=b.G&255,d=b.G>>8&255,e=b.H&65535,f=b.I&65535,g=b.M&65535,h=b.J&65535,k=b.Xa.Z;if(null==this.ka){if(67==d){if(609437257==b.oa((b.va.Z<<4)+10)||1111835735==b.oa((b.va.Z<<4)+95))return!0;df(b,a,function(a){return function(){62342!=(b.G&65535)?(b.G=b.G&-65536|62342,y(a,"INT 0x68 handling enabled",128),a.C=a.ka=!0):(y(a,"INT 0x68 monitoring enabled",128),a.ka=!1)}}(this))}return!0}switch(d){case 67:this.ka&&(b.G=b.G&-65536|62342);break;case 68:this.ka&&(a=gd(b.va,this.Hk.bind(this)))&&
m.dm=function(a){var b=this.F,c=b.G&255,d=b.G>>8&255,e=b.H&65535,f=b.I&65535,g=b.M&65535,h=b.J&65535,k=b.Xa.Z;if(null==this.ka){if(67==d){if(609437257==b.oa((b.va.Z<<4)+10)||1111835735==b.oa((b.va.Z<<4)+95))return!0;df(b,a,function(a){return function(){62342!=(b.G&65535)?(b.G=b.G&-65536|62342,y(a,"INT 0x68 handling enabled",128),a.C=a.ka=!0):(y(a,"INT 0x68 monitoring enabled",128),a.ka=!1)}}(this))}return!0}switch(d){case 67:this.ka&&(b.G=b.G&-65536|62342);break;case 68:this.ka&&(a=gd(b.va,this.Hk.bind(this)))&&
(b.J=a[0],wd(b,a[1]));break;case 72:Pq(this,null,e);break;case 80:32==c?Lq(this,hq(this,h,k),0,f,!0,!!this.ka):128>c?Lq(this,hq(this,h,k),e+1,c&64?g:f,!(c&1),!!this.ka):Nq(this,hq(this,h,k),!(c&1),!!this.ka),this.ka&&(b.G=b.G&-256|1)}return!this.ka};m.Hk=function(){var a=this.F;5==(a.G&255)&&(a.I=a.K=0,a.G=a.G&-256|1);return!1};
m.Qb=function(a,b,c){var d=this;switch(b){case "debugInput":return this.Ka=this.qa[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",lq(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?d.U<d.L.length-1&&(b=d.L[++d.U]):40==a.keyCode&&(0<d.U?b=d.L[--d.U]:(b="",d.U=-1)),null!=b){var g=b.length;c.value=b;c.setSelectionRange(g,g)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.qa[b]=c,Ka(c,function(){if(d.Ka){var a=d.Ka.value;d.Ka.value=
"";lq(d,a,!0);return!0}return!1}),!0;case "step":return this.qa[b]=c,Ka(c,function(a){var b=!1;qb(d,!0)||(pb(d,!0),b=d.vf(a?1:0),pb(d,!1));return b}),!0}return!1};m.yd=function(){this.Ka&&this.Ka.focus()};function Sq(a){return a.F&&!!(a.F.Za&1)&&!(a.F.ca&131072)}
@ -717,13 +717,13 @@ m.save=function(){var a=new hf(this);N(a,0,Vq(this.aa));N(a,1,Vq(this.ua));N(a,2
m.stop=function(a,b){if(this.la.Ib){this.la.Ib=!1;this.fa=b-this.xd;if(!this.N){var c="stopped";if(this.fa){var d=a-this.uc,e=0<d?Math.round(1E3*this.fa/d):0,c=c+" (";Tf(this)&&(c+=this.pa+" opcodes, ",this.ya-=this.pa,this.pa=0);c+=this.fa+" cycles, "+d+" ms, "+e+" hz)"}else A(this,-2147483648)&&(c+=" (use the 't' command to execute blocked faults)");this.O(c)}this.qd(!0);this.yd();kr(this,this.F.Ga)}};function Tf(a){return 1<a.A.length||!!a.Na||A(a,16)}
function Wf(a,b,c){var d=a.F;if(0<c&&(a.Na&&!--a.Na||lr(a,b,1,a.A)))return!0;0<=c&&a.X.length&&(a.pa++,b=If(d,b),null!=b&&(a.X[b][1]++,Uq(a,a.ja[a.Fa],K(d),d.va.Z),++a.Fa==a.ja.length&&(a.Fa=0)));return!1}function Cc(a,b,c){return lr(a,b,c||1,a.ra)?(a.Wb(!0),!0):!1}function Ec(a,b,c){return lr(a,b,c||1,a.ga)?(a.Wb(!0),!0):!1}function jc(a,b,c){a.O("break on input from port "+u(b)+": "+r(c));a.Wb(!0)}function nc(a,b,c){a.O("break on output to port "+u(b)+": "+r(c));a.Wb(!0)}
function iq(a){var b,c;a.A=["bp"];if(void 0!==a.ra)for(b=1;b<a.ra.length;b++)c=a.ra[b],re(a.F,a.dc(c),!1,5==c.type);a.ra=["br"];if(void 0!==a.ga)for(b=1;b<a.ga.length;b++)c=a.ga[b],re(a.F,a.dc(c),!0,5==c.type);a.ga=["bw"];a.fb=0}
m.Sd=function(a,b,c){var d=!0;c||Qq(this,a,b,!1,!0);if(a!=this.A){var e=this.dc(b);if(-1===e)this.O("invalid address: "+Rq(b)),d=!1;else{var f=this.F,g=5==b.type;(g?f.ld:f.sa)[e>>>f.La].Sd(e&f.Fa,a==this.ga);g&&Vb(f)}}d&&(a.push(b),c?(null!=b.Da&&(b.Z=null),b.Xd=!0):(mr(this,a,a.length-1,"set"),jq(this)));return d};
m.Sd=function(a,b,c){var d=!0;c||Qq(this,a,b,!1,!0);if(a!=this.A){var e=this.dc(b);if(-1===e)this.O("invalid address: "+Rq(b)),d=!1;else{var f=this.F,g=5==b.type;(g?f.ld:f.sa)[e>>>f.La].Sd(e&f.Fa,a==this.ga);g&&Ub(f)}}d&&(a.push(b),c?(null!=b.Da&&(b.Z=null),b.Xd=!0):(mr(this,a,a.length-1,"set"),jq(this)));return d};
function Qq(a,b,c,d,e){for(var f=!1,g=nr(a,a.dc(c)),h=1;h<b.length;h++){var k=b[h];if(-1!==g&&g==nr(a,a.dc(k))||-1===g&&c.Z==k.Z&&c.Ra==k.Ra)if(!d||k.Xd){f=!0;k.Xd||e||mr(a,b,h,"cleared");b.splice(h,1);b!=a.A&&re(a.F,g,b==a.ga,5==k.type);k.Xd||jq(a);break}}return f}function or(a,b){for(var c=1;c<b.length;c++)mr(a,b,c);return b.length-1}function mr(a,b,c,d){c=b[c];a.O(b[0]+" "+Rq(c)+(d?" "+d:c.ik?' "'+c.ik+'"':""))}
function kr(a,b){if(void 0!==b)lr(a,b,1,a.A,!0),a.N=0;else for(var c=1;c<a.A.length;c++){var d=a.A[c];if(d.Xd){if(!Qq(a,a.A,d,!0))break;c=0}}}function nr(a,b){if(-1!==b){var c=a.Ba&-65536;(b&c)==c&&(b&=1048575)}return b}
function lr(a,b,c,d,e){var f=!1;if(!a.fb++){b=nr(a,b);A(a,-2147483632)&&204==If(a.F,b)&&(f=!0);for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.Xd){null!=h.Z&&(h.Da=null);for(var k=nr(a,a.dc(h)),l=0;l<c;l++)if(b+l==k){var n,f=!0;h.Xd&&(Qq(a,d,h,!0),e=!0);if(n=h.Dk){for(var f=!1,q=0;q<n.length;q++)if(!pr(a,n[q],!0)){if(n[q].indexOf("if")){f=!0;break}for(var p=q+1;p<n.length&&n[p].indexOf("else");p++)q++;if(p==n.length){f=!0;break}}a.F.la.Ib||(f=!0)}if(f){e||mr(a,d,g,"hit");break}}}}}a.fb--;return f}
function qr(a,b,c,d){for(var e=hq(a,b.Ra,b.Z,b.Da,b.type),f=a.Qa(b,1),g=4,h=0,k=!1,l=!1;(102==f||103==f)&&g--;)102==f?k||(b.Sb=!b.Sb,k=!0):l||(b.pc=!b.pc,l=!0),h++,f=a.Qa(b,1);var g=-1,n=pq,k=a.Ia[f],l=k[0];176==l&&(l=a.Qa(b,1),k=zq[l]||wq,f|=l<<8,l=k[0]);if(36==l){var g=a.Qa(b,1),q;q=null;var p=g>>3&7,z=(3>(g>>6&3)?0:48)+p;(217==f||219==f)&&52<=z&&(z=p<<4|g&7);(p=Aq[f])&&(q=p[z]);q&&(n=qq,k=q,l=k[0])}l>=n.length&&(g=a.Qa(b,1),k=Bq[l-n.length][g>>3&7],l=k[0]);n=n[l];p=k.length-1;q="";b.Sb&&(18==l?
n="CWDE":28==l?n="CDQ":104<=l&&107>=l&&(n+="D"));if(164<=f&&167>=f||170<=f&&175>=f)p=0,b.Sb&&"W"==n.slice(-1)&&(n=n.slice(0,-1)+"D");for(var f=null,z=!0,F=1;F<=p;F++){var v,E;v="";E=k[F];if(void 0!==E){null==f&&(f=E>>14);80==l&&(2==f?q="[%800]":3==f&&(q="ES:["+(b.pc?"E":"")+"DI]"));var H=E&15;if(0!=H)if(8==H)z=!1;else{var L=E&240;if(128<=L)if(0>g&&(g=a.Qa(b,1)),160>L){v=a;var V=p,H=b,P="",bb=g>>6,ia=g&7;if(3>bb){var ja=void 0,L=0==n.indexOf("FI");if(!bb&&(!H.pc&&6==ia||H.pc&&5==ia))bb=2;else{if(H.pc)if(4!=
ia)ia+=8;else{var P=v,ja=bb,Ha=H,Xa=P.Qa(Ha,1),Ba=Xa>>6,Ub=Xa>>3&7,Xa=Xa&7,wa="";if(ja||5!=Xa)wa=uq[Xa+8];4!=Ub&&(wa&&(wa+="+"),wa+=uq[Ub+8],Ba&&(wa+="*"+(1<<Ba)));ja||5!=Xa||(wa&&(wa+="+"),wa+=r(P.oa(Ha,4)));P=wa}P||(P=uq[ia])}1==bb?(ja=v.Qa(H,1),ja&128?(ja=ja<<24>>24,P+="-"+r(-ja,2)):P+="+"+r(ja,2)):2==bb&&(P&&(P+="+"),H.pc?(ja=v.oa(H,4),P+=r(ja)):(ja=v.na(H,2),P+=r(ja,4)));P="["+P+"]";if(1==V){v="";E&=15;4==E&&(E=H.Sb?5:3);switch(E){case 7:v="FAR";break;case 1:v="BYTE";break;case 3:if(L){v="INT16";
ia)ia+=8;else{var P=v,ja=bb,Ha=H,Xa=P.Qa(Ha,1),Ba=Xa>>6,Vb=Xa>>3&7,Xa=Xa&7,wa="";if(ja||5!=Xa)wa=uq[Xa+8];4!=Vb&&(wa&&(wa+="+"),wa+=uq[Vb+8],Ba&&(wa+="*"+(1<<Ba)));ja||5!=Xa||(wa&&(wa+="+"),wa+=r(P.oa(Ha,4)));P=wa}P||(P=uq[ia])}1==bb?(ja=v.Qa(H,1),ja&128?(ja=ja<<24>>24,P+="-"+r(-ja,2)):P+="+"+r(ja,2)):2==bb&&(P&&(P+="+"),H.pc?(ja=v.oa(H,4),P+=r(ja)):(ja=v.na(H,2),P+=r(ja,4)));P="["+P+"]";if(1==V){v="";E&=15;4==E&&(E=H.Sb?5:3);switch(E){case 7:v="FAR";break;case 1:v="BYTE";break;case 3:if(L){v="INT16";
break}v="WORD";break;case 5:v="DWORD";break;case 11:if(L){v="INT32";break}case 11:v="REAL32";break;case 12:if(L){v="INT64";break}case 12:v="REAL64";break;case 13:v="REAL80";break;case 14:v="BCD80"}v&&(P=v+" "+P)}}else P=rr(v,ia,E,H);v=P}else v=160==L?rr(a,g&7,E,b):rr(a,g>>3&7,E,b);else if(16==L)v="1";else if(0==L){v=a;H=E;L=b;E=" ";switch(H&15){case 1:H&12288&&(E=r(v.Qa(L,1),2));break;case 2:E=r(v.Qa(L,1)<<24>>24,L.Sb?8:4);break;case 4:if(L.Sb){E=r(v.oa(L,4));break}case 3:E=r(v.na(L,2),4);break;case 7:L=
hq(v,v.tb(L,!0),v.na(L,2),null,L.type,L.Sb,L.pc);E=Rq(L);v=sr(v,L);v[0]&&(E+=" ("+v[0]+")");break;default:E="imm("+u(H)+")"}v=E}else 32==L?(b.pc?(v=8,E=a.oa(b,4)):(v=4,E=a.na(b,2)),v="["+r(E,v)+"]"):48==L?(v=1==H?a.Qa(b,1)<<24>>24:a.tb(b,!0),E=b.Ra+v&(b.Sb?-1:65535),v=r(E,b.Sb?8:4),E=sr(a,hq(a,E,b.Z)),E[0]&&(v+=" ("+E[0]+")")):96==L?v=9==H?"ST":10==H?"ST("+(g&7)+")":rr(a,(E&3840)>>8,E,b):112==L?v=rr(a,(E&3840)>>8,192,b):64==L?v="DS:[SI]":80==L&&(v="ES:[DI]");if(!v||!v.length){q="INVALID";break}0<
q.length&&(q+=",");q+=v||"???"}}}g="";k=Rq(e)+" ";if(-1!==e.Da&&-1!==b.Da){do if(g+=r(a.Qa(e,1),2),null==e.Da)break;while(e.Da!=b.Da)}k+=ma(g,e.pc?24:16);k+=ma(n,8);q&&(k+=" "+q);a.F.ia<sq[f]&&(c=sq[f]+" CPU only");c&&z&&(k=ma(k,e.pc?74:56)+";"+c,k=a.F.la.Ye?k+("cycles="+Wc(a.F).toString()+" cs="+r(a.F.Y.If)):k+(null!=d?"="+d.toString():""));tr(b,z,h);return k}
@ -737,8 +737,8 @@ case "^":d=f^e;break;case "|":d=f|e;break;case "&&":d=f&&e?1:0;break;case "||":d
function $q(a,b,c){var d;if(b){b=Zq(a,b);for(var e=0,f=!1,g=b,h=[],k=[],l=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);e<l.length;){var n=l[e++],q=n.length,n=na(n);if(!n){f=!0;break}n=Dq(a,n,null,!1===c);if(void 0===n){f=!0;c=!1;break}h.push(n);if(e==l.length)break;var n=l[e++],p=n.length;k.length&&zr[n]<zr[k[k.length-1]]&&Ar(h,k,1);k.push(n);b=b.substr(q+p)}Ar(h,k)&&1==h.length||(f=!0);f?c&&a.O("error parsing '"+g+"' at character "+(g.length-b.length)):(d=h.pop(),c&&Br(a,null,
d))}return d}function Zq(a,b){for(var c;(c=b.match(/\{(.*?)}/))&&!(0<=c[1].indexOf("{"));){var d=$q(a,c[1]);b=b.replace("{"+c[1]+"}",null!=d?r(d):"undefined")}for(;(c=b.match(/\[(.*?)]/))&&!(0<=c[1].indexOf("["));)d=Yq(a,c[1]),b=b.replace("["+c[1]+"]",d?r(a.tb(d),d.Sb?8:4):"undefined");for(c=b;d=c.match(/\$([a-z]+)/i);){var e=null;switch(d[1].toLowerCase()){case "ops":e=a.pa-a.ya}if(null==e)break;c=c.replace(d[0],e.toString())}return c}
function Dq(a,b,c,d){var e;void 0!==b?(e=dr(b),0<=e?e=fr(a,e):(e=a.wa[b],void 0===e&&(e=ca(b))),void 0!==e||d||a.O("invalid "+(c?c:"value")+": "+b)):d||a.O("missing "+(c||"value"));return e}function Br(a,b,c){var d,e=!1;void 0!==c&&(e=!0,d="0x"+r(c)+" "+c+". ("+ea(c)+")");a.O((null!=b?b+": ":"")+d);return e}function Cr(a,b){if(b)return Br(a,b,a.wa[b]);var c=0;for(b in a.wa)Br(a,b,a.wa[b]),c++;return 0<c}gq.prototype.sb=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0};
function am(a,b,c,d,e,f,g,h){var k={},l=[],n;for(n in h){var q=h[n];"number"==typeof q&&(h[n]=q={o:q});var p=q.o,z=q.s,F=q.a;if(void 0!==p){void 0!==z&&(k.Ra=p,k.Z=z,k.Da=null,a.dc(k),(k.Da&-65536)==(a.ea.wg&-65536)&&(k.Da&=1048575),q.p=k.Da);var z=l,p=[p>>>0,n],v=oa(z,p,a.sb);0>v&&z.splice(-(v+1),0,p)}F&&(q.a=F.replace(/''/g,'"'))}a.B.push({fg:b,lm:c,Z:d,Ra:e,Da:f,dm:g,Rd:h,ri:l})}
function Pq(a,b,c){for(var d=0;d<a.B.length;d++){var e=a.B[d];if(!b||e.fg==b)if(b&&c==e.lm||!b&&c==e.Z){a.B.splice(d,1);break}}}function sr(a,b,c){for(var d=[],e=b.Ra>>>0,f=a.dc(b)>>>0,g=0;g<a.B.length;g++){var h=a.B[g],k=h.Z,l=h.Ra>>>0,n=h.Da;null!=n&&(n>>>=0);var q=h.dm;48==k&&(k=40);if(k==b.Z&&e>=l&&e<l+q||null!=n&&f>=n&&f<n+q){b=oa(h.ri,[e],a.sb);0<=b?Dr(a,g,b,d):c&&(b=~b,Dr(a,g,b-1,d),Dr(a,g,b,d));break}}!d.length&&(a=a.ea.Si(f,!0))&&(d.push(a),d.push(f));return d}
function am(a,b,c,d,e,f,g,h){var k={},l=[],n;for(n in h){var q=h[n];"number"==typeof q&&(h[n]=q={o:q});var p=q.o,z=q.s,F=q.a;if(void 0!==p){void 0!==z&&(k.Ra=p,k.Z=z,k.Da=null,a.dc(k),(k.Da&-65536)==(a.ea.wg&-65536)&&(k.Da&=1048575),q.p=k.Da);var z=l,p=[p>>>0,n],v=oa(z,p,a.sb);0>v&&z.splice(-(v+1),0,p)}F&&(q.a=F.replace(/''/g,'"'))}a.B.push({fg:b,mm:c,Z:d,Ra:e,Da:f,em:g,Rd:h,ri:l})}
function Pq(a,b,c){for(var d=0;d<a.B.length;d++){var e=a.B[d];if(!b||e.fg==b)if(b&&c==e.mm||!b&&c==e.Z){a.B.splice(d,1);break}}}function sr(a,b,c){for(var d=[],e=b.Ra>>>0,f=a.dc(b)>>>0,g=0;g<a.B.length;g++){var h=a.B[g],k=h.Z,l=h.Ra>>>0,n=h.Da;null!=n&&(n>>>=0);var q=h.em;48==k&&(k=40);if(k==b.Z&&e>=l&&e<l+q||null!=n&&f>=n&&f<n+q){b=oa(h.ri,[e],a.sb);0<=b?Dr(a,g,b,d):c&&(b=~b,Dr(a,g,b-1,d),Dr(a,g,b,d));break}}!d.length&&(a=a.ea.Si(f,!0))&&(d.push(a),d.push(f));return d}
function Dr(a,b,c,d){var e={},f=a.B[b].ri,g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.B[b].Rd[h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}function Er(a){a.Df&&(a.Df.value="")}
function Fr(a,b){if("?"==b)a.O("frequency commands:"),a.O("\tclear\tclear all frequency counts");else{var c,d=0;if(a.X)if("clear"==b){for(c=0;c<a.X.length;c++)a.X[c]=[c,0];a.O("frequency data cleared");d++}else if(void 0!==b)a.O("unknown frequency command: "+b),d++;else{var e=a.X.slice();e.sort(function(a,b){return b[1]-a[1]});for(c=0;c<e.length;c++){var f=e[c][0],g=e[c][1];g&&(a.O((pq[a.Ia[f][0]]+" ").substr(0,5)+" ("+t(f)+"): "+g+" times"),d++)}}d||a.O("no frequency data available")}}
function Gr(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return Cr(a)||a.O("no variables"),!0;if(!c[2])return Cr(a,c[1]);if(!c[3])return delete a.wa[c[1]],!0;var d=$q(a,c[3]);return void 0!==d?(a.wa[c[1]]=d,!0):!1}a.O("invalid assignment:"+b);return!1}
@ -759,8 +759,8 @@ function pr(a,b,c){var d=!0;try{if(!b.length||"end"==b)a.Ea&&(a.O("ended assembl
Yq(a,g[1],!0);if(q)if(a.ua=q,void 0===g[2])a.O("begin assemble at "+Rq(q)),a.Ea=!0,Qc(a.F);else{var p;a.O("not supported yet");p=[];if(p.length){for(var z=0;z<p.length;z++)a.qc(q,p[z],1);a.O(qr(a,a.ua))}}break;case "b":a:{var F=g[0],v=g[1],E=b;if("?"==v)a.O("breakpoint commands:"),a.O("\tbi [p]\ttoggle break on input port [p]"),a.O("\tbo [p]\ttoggle break on output port [p]"),a.O("\tbp [a]\tset exec breakpoint at addr [a]"),a.O("\tbr [a]\tset read breakpoint at addr [a]"),a.O("\tbw [a]\tset write breakpoint at addr [a]"),
a.O("\tbc [a]\tclear breakpoint at addr [a]"),a.O("\tbl\tlist all breakpoints"),a.O("\tbn [n]\tbreak after [n] instruction(s)");else{var H=F.charAt(1);if("l"==H){var L=0,L=L+or(a,a.A),L=L+or(a,a.ra);(L+=or(a,a.ga))||a.O("no breakpoints")}else if("n"==H)a.Na=Dq(a,v),a.O("break after "+a.Na+" instruction(s)");else if(void 0===v)a.O("missing breakpoint address");else{var V={};if("*"!=v&&(V=Yq(a,v,!0,!0),!V))break a;v=null==V.Ra?v:u(V.Ra);"c"==H?null==V.Ra?(iq(a),a.O("all breakpoints cleared")):Qq(a,
a.A,V)||Qq(a,a.ra,V)||Qq(a,a.ga,V)||a.O("breakpoint missing: "+Rq(V)):"i"==H?a.O("breakpoint "+(gc(a.ea,V.Ra)?"enabled":"cleared")+": port "+v+" (input)"):"o"==H?a.O("breakpoint "+(kc(a.ea,V.Ra)?"enabled":"cleared")+": port "+v+" (output)"):null!=V.Ra&&(ar(a,V,E),"p"==H?a.Sd(a.A,V):"r"==H?a.Sd(a.ra,V):"w"==H?a.Sd(a.ga,V):a.O("unknown breakpoint command: "+H))}}}break;case "c":Er(a);break;case "d":a:{var P=g,bb,ia=P[0],ja=P[1],Ha=P[2],Xa=P[3];if("?"==ja){var Ba="";for(bb in vq)a.$a[bb]&&(Ba&&(Ba+=
","),Ba+=bb);Ba+=",state,symbols";a.O("dump memory commands:");a.O("\tdb [a] [#] dump # bytes at address a");a.O("\tdw [a] [#] dump # words at address a");a.O("\tdd [a] [#] dump # dwords at address a");a.O("\tdh [#] [#] dump # instructions from history");a.O("\tdi [#] dump descriptor info for IDT #");a.O("\tds [#] dump descriptor info for selector #");Ba.length&&a.O("dump extension commands:\n\t"+Ba)}else if("state"==ja){var Ub=Mr(a.V,!0);"console"==Ha?console.log(Ub):(Er(a),
a.O(Ub))}else if("symbols"==ja)for(var wa=0;wa<a.B.length;wa++){var Vd=a.B[wa],Rc;for(Rc in Vd.Rd)if("."!=Rc.charAt(0)){var Wd=Vd.Rd[Rc],Ie=Wd.o;if(void 0!==Ie){var Xd=Wd.s;void 0===Xd&&(Xd=Vd.Z);var Je=Vd.Rd[Rc].l;Je&&(Rc=Je);a.O(Hq(Ie,Xd)+" "+Rc)}}}else{if("ds"==ia||"dg"==ia||"dl"==ia)ia="d",P=[ia,"desc",ja];"d"==ia&&"page"==ja&&(ia="dp",P.shift());if("dp"==ia){P.shift();var hi=P[0];if(hi){var Te=a.dc(Yq(a,hi));if(-1===Te)a.O("invalid address: "+hi);else{var be,Da=null;if(80386<=a.F.ia){var ce=
","),Ba+=bb);Ba+=",state,symbols";a.O("dump memory commands:");a.O("\tdb [a] [#] dump # bytes at address a");a.O("\tdw [a] [#] dump # words at address a");a.O("\tdd [a] [#] dump # dwords at address a");a.O("\tdh [#] [#] dump # instructions from history");a.O("\tdi [#] dump descriptor info for IDT #");a.O("\tds [#] dump descriptor info for selector #");Ba.length&&a.O("dump extension commands:\n\t"+Ba)}else if("state"==ja){var Vb=Mr(a.V,!0);"console"==Ha?console.log(Vb):(Er(a),
a.O(Vb))}else if("symbols"==ja)for(var wa=0;wa<a.B.length;wa++){var Vd=a.B[wa],Rc;for(Rc in Vd.Rd)if("."!=Rc.charAt(0)){var Wd=Vd.Rd[Rc],Ie=Wd.o;if(void 0!==Ie){var Xd=Wd.s;void 0===Xd&&(Xd=Vd.Z);var Je=Vd.Rd[Rc].l;Je&&(Rc=Je);a.O(Hq(Ie,Xd)+" "+Rc)}}}else{if("ds"==ia||"dg"==ia||"dl"==ia)ia="d",P=[ia,"desc",ja];"d"==ia&&"page"==ja&&(ia="dp",P.shift());if("dp"==ia){P.shift();var hi=P[0];if(hi){var Te=a.dc(Yq(a,hi));if(-1===Te)a.O("invalid address: "+hi);else{var be,Da=null;if(80386<=a.F.ia){var ce=
a.ea,Da={};Da.bk=(Te&-4194304)>>>20;Da.ui=a.F.Pd+Da.bk;Da.yb=ce.sa[(Da.ui&ce.Gb)>>>ce.La];Da.Ui=Da.yb.Nd(Da.bk);Da.ck=(Te&4190208)>>>10;Da.vi=(Da.Ui&-4096)+Da.ck;Da.zb=ce.sa[(Da.vi&ce.Gb)>>>ce.La];Da.Vi=Da.zb.Nd(Da.ck);Da.Fk=(Da.Vi&-4096)+(Te&4095)}if(be=Da){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var qd="%"+r(Te),qd=qd+(" %%"+cr(be.ui,be.Ui)),qd=qd+(" %%"+cr(be.vi,be.Vi,!0)),
qd=qd+(" %%"+r(be.Fk));a.O(qd)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==ia){if("disk"==ja){P[0]="l";P[1]="json";Ir(a,P);break a}for(bb in vq)if(P[1]==bb){var Dn=a.$a[bb];Dn?(P.shift(),P.shift(),Dn(P)):a.O("no dump registered for "+ja);break a}ja||(ia=a.Cc||"db")}else a.Cc=ia;if("dh"==ia){var En=ja,Fn=Ha,Gn="",Hn=0,tb=a.Fa,tc=a.ja;if(tc.length){var Db=+En||a.Ub,de=+Fn||10;isNaN(Db)?Db=de:Gn="more ";Db>tc.length&&(a.O("note: only "+tc.length+" available"),Db=tc.length);
tb-=Db;0>tb&&(null==tc[tc.length-1].Z?(Db=tb+Db,tb=0):tb+=tc.length);var ii=[];"call"==Fn&&(de=1E5,ii=["CALL"]);for(void 0!==En&&a.O(Db+" instructions earlier:");0<de&&tb!=a.Fa;){var rd=tc[tb++];if(null==rd.Z)break;var Ue=hq(a,rd.Ra,rd.Z,rd.Da,rd.type,rd.Sb,rd.pc),fs=Db--,In=qr(a,Ue,"history",fs);(!ii.length||0<=In.indexOf(ii[0]))&&a.O(In);Ue.Se&&(tb+=Ue.Se,de-=Ue.Se,Db-=Ue.Se);tb>=tc.length&&(tb=0);a.Ub=Db;Hn++;de--}}Hn||(a.O("no "+Gn+"history available"),a.Ub=void 0)}else if("di"==ia){P.shift();