Enable TypedArray support at runtime (IE9 is still the outlier)

This commit is contained in:
Jeff Parsons 2014-10-12 13:09:20 -07:00 committed by jeffpar
commit ade000d0a5
9 changed files with 428 additions and 428 deletions

View file

@ -7,7 +7,7 @@ n.send(q)}else n.open("GET",a,b),n.send();a=[];b||(h=n.responseText,200!=n.statu
function ta(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function ua(a,b,c){function d(){a-=1;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}
function va(a,b){function c(){b(100===d)&&(e=setTimeout(c,d),d=100)}var d=0,e=null,f=!1;a.onmousedown=function(){f||e||(d=500,c())};a.ontouchstart=function(){e||(d=500,c())};a.onmouseup=a.onmouseout=function(){e&&(clearTimeout(e),e=null)};a.ontouchend=a.ontouchcancel=function(){e&&(clearTimeout(e),e=null);f=!0}}var wa={init:[],show:[],exit:[]},xa=!0;function ya(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function za(a){wa.init.push(a)}
function Aa(a){if(xa)for(var b=0;b<a.length;b++)a[b]()}ya("onload",function(){Aa(wa.init)});ya("onpageshow",function(){Aa(wa.show)});ya(ta("Opera")||ta("iOS")?"onunload":"onbeforeunload",function(){Aa(wa.exit)});
function w(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.lk=b.comment;this.Vo=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.nh=this.id.substr(0,b),this.mh=this.id.substr(b+1)):this.mh=this.id;this[a]=c;this.wi=null;this.kd=this.Nb=this.Kc=this.mi=this.hh=!1;this.ta={};this.Z=null;this.nh&&this.nh.match(/\d+/);Ba[Ba.length]=this}var Ca=void 0,Da={};
function w(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.lk=b.comment;this.Uo=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.nh=this.id.substr(0,b),this.mh=this.id.substr(b+1)):this.mh=this.id;this[a]=c;this.wi=null;this.kd=this.Nb=this.Kc=this.mi=this.hh=!1;this.ta={};this.Z=null;this.nh&&this.nh.match(/\d+/);Ba[Ba.length]=this}var Ca=void 0,Da={};
if(window){Ca||(Ca=window.location.search.substr(1));for(var Ea,Ga=/\+/g,Ha=/([^&=]+)=?([^&]*)/g;Ea=Ha.exec(Ca);)Da[decodeURIComponent(Ea[1].replace(Ga," "))]=decodeURIComponent(Ea[2].replace(Ga," "))}function Ia(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function x(a,b){b.prototype=Ia(a.prototype)}var Ba=[];
function Ja(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<Ba.length;b++){var d=Ba[b];a&&d.id.indexOf(a)||c.push(d)}return c}function Ka(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<Ba.length;c++)if(Ba[c].id===a)return Ba[c]}return null}
function La(a,b){var c;if(void 0!==a){var d;b&&(b=0<(d=b.indexOf("."))?b.substr(0,d+1):"");for(d=0;d<Ba.length;d++)if(c)c==Ba[d]&&(c=null);else if(!(a!=Ba[d].type||b&&Ba[d].id.indexOf(b)))return Ba[d]}return null}function y(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){v(c.message+" ("+a+")")}return b}
@ -15,7 +15,7 @@ function Ma(a,b){var c,d;d=A(b.parentNode,"pcjs-control");for(c=0;c<d.length;c++
function A(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var e=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)e.test(a[b].className)&&c.push(a[b]);return c}
w.prototype={toString:function(){return this.name?this.name:this.id||this.type},wb:function(a,b,c,d){switch(c){case "clear":return this.ta[c]||(this.ta[c]=d,d.onclick=function(a){return function(){a.ta.print&&(a.ta.print.value="")}}(this)),!0;case "print":return this.ta[c]||(this.Qf=this.ta[c]=d,d.value="",this.ca=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),this.Ha=
function(a,b,c){this.ca(a,"notice",c)}),!0;default:return!1}},log:function(){},ca:function(){},status:function(a){this.ca(this.mh+": "+a)},Ha:function(a,b){b||v(a)},Sa:function(a){!this.kd&&(this.hh=!1!==a)&&(this.name&&this.log("ready"),a=this.wi,this.wi=null,a&&a())},bc:function(){return this.Nb=!0},Yb:function(a,b){b&&(this.Nb=!1);return!0}};function Na(a,b){if(a.mi)return a.Kc&&(a.Kc=!1),a.mi=!1;if(a.kd)return a.ca(a.toString()+" error"),!1;a.Kc=b;return a.Kc}
function Oa(a,b){a.Kc&&(b?a.mi=!0:void 0===b&&a.ca(a.toString()+" busy"));return a.Kc}function Pa(a,b){b&&(a.hh?b():a.wi=b);return a.hh}function Qa(a,b){a.kd=!0;a.Ha("Fatal error: "+b)}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);var Ra="undefined"!==typeof window.gm;function Sa(a){w.call(this,"Panel",a,Sa)}x(w,Sa);
function Oa(a,b){a.Kc&&(b?a.mi=!0:void 0===b&&a.ca(a.toString()+" busy"));return a.Kc}function Pa(a,b){b&&(a.hh?b():a.wi=b);return a.hh}function Qa(a,b){a.kd=!0;a.Ha("Fatal error: "+b)}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);var Ra="undefined"!==typeof ArrayBuffer;function Sa(a){w.call(this,"Panel",a,Sa)}x(w,Sa);
Sa.prototype.wb=function(a,b,c,d){return this.Da&&this.Da.wb(a,b,c,d)||this.S&&this.S.wb(a,b,c,d)||this.pb&&this.pb.wb(a,b,c,d)||this.Z&&this.Z.wb(a,b,c,d)?!0:w.prototype.wb.call(this,a,b,c,d)};Sa.prototype.pc=function(a,b,c,d){this.Da=a;this.S=c;this.Z=d;this.pb=B(a,"Keyboard")};Sa.prototype.bc=function(a,b){b||Ta();return!0};Sa.prototype.Yb=function(){return!0};
function Ta(){for(var a=!1,b=A(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=y(d),f=Ka(e.id);f||(a=!0,f=new Sa(e));Ma(f,d);a&&f.Sa()}}za(Ta);function Ua(a,b,c){w.call(this,"Bus",a,Ua);this.S=b;this.Z=c;this.Zf=a.buswidth||20;this.te=this.Jb=(1<<this.Zf)-1;this.ob=20>=this.Zf?12:14;this.hc=1<<this.ob;this.gk=this.hc>>2;this.fb=this.hc-1;this.Ug=(this.te+this.hc)/this.hc|0;this.xe=this.Ug-1;this.sd=[];this.td=[];this.Vf=this.Wf=!1;this.Ci();this.Sa()}x(w,Ua);
Ua.prototype.Ci=function(){this.Aa=Array(this.Ug);for(var a=0;a<this.Ug;a++){var b=a*this.hc;Va(this.Aa[a]=new D(b),this.S,this.Z,b,this.hc)}this.S.Ci(this.Aa,this.te,this.ob,this.fb,this.xe);this.S.Jb=this.Jb};Ua.prototype.reset=function(){Wa(this,!0)};function Xa(a,b,c,d,e){if(!(b&a.fb||!c||c&a.fb)){for(var f=b>>a.ob;0<c&&f<a.Aa.length;){var g=a.Aa[f];if(void 0!==g&&g.size)return Ya(1,b,c);b=f*a.hc;g=a.Aa[f++]=new D(b,a.hc,d,e);Va(g,a.S,a.Z,b,a.hc);c-=a.hc}return!0}return Ya(2,b,c)}
@ -25,20 +25,20 @@ function eb(a){for(var b=0,c=[],d=0;d<a.Ug;d++){var e=a.Aa[d];if(e.bb||e.pk){c[b
function gb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=g;n++)void 0!==f.sd[n]?v("Input port "+r(n)+" registered by "+f.sd[n][0].id+", ignoring "+h.id):f.sd[n]=[h,m,!1,!1]}}function hb(a,b,c){var d=255,e=a.sd[b];void 0!==e?(e[1]&&(d=e[1].call(e[0],b,c)),a.Z&&a.Vf!=e[2]&&ib(a.Z,b,d)):a.Z&&(a.Z.ba(a,b,null,c),a.Vf&&ib(a.Z,b,d));return d}
function jb(a,b){if(void 0===b)return a.Wf=!a.Wf,a.Wf;void 0===a.td[b]&&(a.td[b]=[null,null,!1]);a.td[b][2]=!a.td[b][2];return a.td[b][2]}function kb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=g;n++)void 0!==f.td[n]?v("Output port "+r(n)+" registered by "+f.td[n][0].id+", ignoring "+h.id):f.td[n]=[h,m,!1,!1]}}
function lb(a,b,c,d){var e=a.td[b];void 0!==e?(e[1]&&e[1].call(e[0],b,c,d),a.Z&&a.Wf!=e[2]&&mb(a.Z,b,c)):a.Z&&(a.Z.ba(a,b,c,d),a.Wf&&mb(a.Z,b,c))}function Ya(a,b,c){v("Memory block error ("+a+","+l(b)+","+l(c)+")");return!1}
function D(a,b,c,d){this.jk=b;this.qa=null;this.offset=0;this.gh=c;this.ia=null;this.bb=this.pk=!1;if(b)if(d)this.ia=d,a=[d.fd,a-d.eb],this.qa=a[0],this.offset=a[1],this.ne(d.Ff);else if(Ra)this.buffer=new window.gm(b),this.ah=new window.pp(this.buffer,0,b),this.Xj=new window.vp(this.buffer,0,b),this.ne(nb);else{this.qa=Array(b>>2);for(d=0;d<this.qa.length;d++)this.qa[d]=0;this.ne(ob)}else this.ne()}
D.prototype={Dh:function(){return 0},vf:function(){},Yo:function(a){return this.Xj[a]},ap:function(a){return this.ah.getUint16(a,!0)},jp:function(a,b){this.Xj[a]=b;this.bb=!0},mp:function(a,b){this.ah.setUint16(a,b,!0);this.bb=!0},Xo:function(a){return this.qa[a>>2]>>>((a&3)<<3)&255},$o:function(a){var b=a>>2;a=(a&3)<<3;var c=this.qa[b]>>>a;return 24>a?c&65535:c&255|(this.qa[b+1]&255)<<8},ip:function(a,b){var c=a>>2,d=(a&3)<<3;this.qa[c]=this.qa[c]&~(255<<d)|b<<d;this.bb=!0},lp:function(a,b){var c=
a>>2,d=(a&3)<<3;24>d?this.qa[c]=this.qa[c]&~(65535<<d)|b<<d:(this.qa[c]=this.qa[c]&16777215|b<<24,c++,this.qa[c]=this.qa[c]&4294967040|b>>8);this.bb=!0},Zo:function(a){pb(this.Z,this.Ve+a);return this.pg(a)},bp:function(a){pb(this.Z,this.Ve+a)||pb(this.Z,this.Ve+a+1);return this.Ej(a)},kp:function(a,b){qb(this.Z,this.Ve+a);this.yg(a,b)},np:function(a,b){qb(this.Z,this.Ve+a)||qb(this.Z,this.Ve+a+1);this.Nj(a,b)},save:function(){var a,b;if(this.ia)a=null;else if(Ra)for(a=Array(this.jk>>2),b=0;b<a.length;b++)a[b]=
function D(a,b,c,d){this.jk=b;this.qa=null;this.offset=0;this.gh=c;this.ia=null;this.bb=this.pk=!1;if(b)if(d)this.ia=d,a=[d.fd,a-d.eb],this.qa=a[0],this.offset=a[1],this.ne(d.Ff);else if(Ra)this.buffer=new ArrayBuffer(b),this.ah=new DataView(this.buffer,0,b),this.Xj=new Uint8Array(this.buffer,0,b),this.ne(nb);else{this.qa=Array(b>>2);for(d=0;d<this.qa.length;d++)this.qa[d]=0;this.ne(ob)}else this.ne()}
D.prototype={Dh:function(){return 0},vf:function(){},Xo:function(a){return this.Xj[a]},$o:function(a){return this.ah.getUint16(a,!0)},ip:function(a,b){this.Xj[a]=b;this.bb=!0},lp:function(a,b){this.ah.setUint16(a,b,!0);this.bb=!0},Wo:function(a){return this.qa[a>>2]>>>((a&3)<<3)&255},Zo:function(a){var b=a>>2;a=(a&3)<<3;var c=this.qa[b]>>>a;return 24>a?c&65535:c&255|(this.qa[b+1]&255)<<8},hp:function(a,b){var c=a>>2,d=(a&3)<<3;this.qa[c]=this.qa[c]&~(255<<d)|b<<d;this.bb=!0},kp:function(a,b){var c=
a>>2,d=(a&3)<<3;24>d?this.qa[c]=this.qa[c]&~(65535<<d)|b<<d:(this.qa[c]=this.qa[c]&16777215|b<<24,c++,this.qa[c]=this.qa[c]&4294967040|b>>8);this.bb=!0},Yo:function(a){pb(this.Z,this.Ve+a);return this.pg(a)},ap:function(a){pb(this.Z,this.Ve+a)||pb(this.Z,this.Ve+a+1);return this.Ej(a)},jp:function(a,b){qb(this.Z,this.Ve+a);this.yg(a,b)},mp:function(a,b){qb(this.Z,this.Ve+a)||qb(this.Z,this.Ve+a+1);this.Nj(a,b)},save:function(){var a,b;if(this.ia)a=null;else if(Ra)for(a=Array(this.jk>>2),b=0;b<a.length;b++)a[b]=
this.ah.getInt32(b<<2,!0);else a=this.qa;return a},restore:function(a){if(this.ia)return null===a;if(this.jk==a.length<<2){var b;if(Ra)for(b=0;b<a.length;b++)this.ah.setInt32(b<<2,a[b],!0);else this.qa=a;return this.bb=!0}return!1},ne:function(a,b){a||(a=[]);void 0===b&&(b=!0);sb(this,a,b);tb(this,a,b)},Vd:function(a,b){b?0===this.ik++&&tb(this,ub):0===this.hk++&&sb(this,ub)}};function vb(a,b){b?0===--a.ik&&(a.Cc=a.gh?a.vf:a.yg,a.dm=a.gh?a.vf:a.Nj):0===--a.hk&&(a.tc=a.pg,a.Rl=a.Ej)}
function Va(a,b,c,d,e){a.S=b;a.Z=c;a.Ve=d;a.hk=a.ik=0;a.Z&&wb(a.Z,d,e)}function tb(a,b,c){a.Cc=b[2]&&!a.gh?b[2]:a.vf;a.dm=b[3]&&!a.gh?b[3]:a.vf;c&&(a.yg=b[2]?b[2]:a.vf,a.Nj=b[3]?b[3]:a.vf)}function sb(a,b,c){a.tc=b[0]?b[0]:a.Dh;a.Rl=b[1]?b[1]:a.Dh;c&&(a.pg=b[0]?b[0]:a.Dh,a.Ej=b[1]?b[1]:a.Dh)}var ob=[D.prototype.Xo,D.prototype.$o,D.prototype.ip,D.prototype.lp],ub=[D.prototype.Zo,D.prototype.bp,D.prototype.kp,D.prototype.np];if(Ra)var nb=[D.prototype.Yo,D.prototype.ap,D.prototype.jp,D.prototype.mp];
function xb(a,b){w.call(this,"CPU",a,xb);var c=a.multiplier||1;this.Hd=a.cycles||b;this.Gd=c;this.qh=Math.round(this.Hd/1E4)/100;this.hf=this.qh*this.Gd;this.Ob=this.Nb=!1;this.li=a.autoStart;c=Da.autostart;void 0!==c&&(this.li="true"==c?!0:"false"==c?!1:null);this.af=!1;this.$f=this.lf=0;this.bg=a.csStart;this.kf=a.csInterval;this.mf=a.csStop;var d=this;this.Zn=function(){d.Me()};this.Sa()}x(w,xb);k=xb.prototype;
k.pc=function(a,b,c,d){this.na=b;this.Z=d;this.Da=a;var e=B(a,"Video");e&&(this.gi=function(){yb(e)},this.Md=function(){e.Md()});this.ka=B(a,"ChipSet");this.Sa()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.bc=function(a,b){if(!b){if(a&&this.restore){zb(this);if(!this.restore(a))return!1;Ab(this)}else this.reset();this.Z?this.Z.Cn():this.ca("No debugger detected")}this.Nb=!0;!Bb(this)&&this.Z&&Cb(this.Z);Db(this);return!0};
function Va(a,b,c,d,e){a.S=b;a.Z=c;a.Ve=d;a.hk=a.ik=0;a.Z&&wb(a.Z,d,e)}function tb(a,b,c){a.Cc=b[2]&&!a.gh?b[2]:a.vf;a.dm=b[3]&&!a.gh?b[3]:a.vf;c&&(a.yg=b[2]?b[2]:a.vf,a.Nj=b[3]?b[3]:a.vf)}function sb(a,b,c){a.tc=b[0]?b[0]:a.Dh;a.Rl=b[1]?b[1]:a.Dh;c&&(a.pg=b[0]?b[0]:a.Dh,a.Ej=b[1]?b[1]:a.Dh)}var ob=[D.prototype.Wo,D.prototype.Zo,D.prototype.hp,D.prototype.kp],ub=[D.prototype.Yo,D.prototype.ap,D.prototype.jp,D.prototype.mp];if(Ra)var nb=[D.prototype.Xo,D.prototype.$o,D.prototype.ip,D.prototype.lp];
function xb(a,b){w.call(this,"CPU",a,xb);var c=a.multiplier||1;this.Hd=a.cycles||b;this.Gd=c;this.qh=Math.round(this.Hd/1E4)/100;this.hf=this.qh*this.Gd;this.Ob=this.Nb=!1;this.li=a.autoStart;c=Da.autostart;void 0!==c&&(this.li="true"==c?!0:"false"==c?!1:null);this.af=!1;this.$f=this.lf=0;this.bg=a.csStart;this.kf=a.csInterval;this.mf=a.csStop;var d=this;this.Yn=function(){d.Me()};this.Sa()}x(w,xb);k=xb.prototype;
k.pc=function(a,b,c,d){this.na=b;this.Z=d;this.Da=a;var e=B(a,"Video");e&&(this.gi=function(){yb(e)},this.Md=function(){e.Md()});this.ka=B(a,"ChipSet");this.Sa()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.bc=function(a,b){if(!b){if(a&&this.restore){zb(this);if(!this.restore(a))return!1;Ab(this)}else this.reset();this.Z?this.Z.Bn():this.ca("No debugger detected")}this.Nb=!0;!Bb(this)&&this.Z&&Cb(this.Z);Db(this);return!0};
k.Yb=function(a){this.Nb=!1;return a&&this.save?this.save():!0};function Bb(a){return!0===a.li||null===a.li&&!a.Z&&void 0===a.ta.run?(a.Me(),!0):!1}k.Md=function(){};k.yk=function(){return 0};function Ab(a){void 0===a.bg&&(a.bg=0);void 0===a.kf&&(a.kf=-1);void 0===a.mf&&(a.mf=-1);a.af=0<=a.bg&&0<a.kf;a.af&&(a.$f=0,a.lf=a.bg-a.Je)}
function Eb(a,b){if(a.af){var c=!1;a.$f=a.$f+a.yk()|0;a.lf-=b;0>=a.lf&&(a.lf+=a.kf,c=!0);0<=a.mf&&a.mf<=E(a)&&(a.kf=a.mf=-1,Ab(a),a.zb(),c=!0);c&&a.ca(E(a)+" cycles: checksum="+l(a.$f))}}function F(a,b,c,d){void 0!==a.ta[b]&&(void 0===d&&(d=4),void 0===c&&(Qa(a,"Register "+b+" is invalid"),a.zb()),c=l(c,d),a.ta[b].innerHTML!=c&&(a.ta[b].innerHTML=c))}k.Zg=function(){};k.gi=function(){};
k.wb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.ta[c]=d;d.onclick=function(){e.Ob?e.zb(!0):e.Me(!0)};a=!0;break;case "reset":this.ta[c]=d;d.onclick=function(){e.Da&&Fb(e.Da)};a=!0;break;case "speed":this.ta[c]=d;a=!0;break;case "setSpeed":this.ta[c]=d,d.onclick=function(){Gb(e,e.Gd<<1,!0)},d.innerHTML=this.hf.toFixed(2)+"Mhz",a=!0}return a};function Ib(a,b,c){a.Je+=b;c&&(a.Yc=a.A=0)}
function Jb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Gd&&a.md&&(d=a.md/a.qh);a.Fk=Math.round(1E3/30);a.Rn=Math.floor(a.Hd/c*d);a.Ji=Math.floor(a.Hd/30*d);a.Jk=Math.floor(a.Hd/60*d);a.Ik=Math.floor(a.Hd/2*d);b||(a.nf=a.Ji,a.dg=a.Jk,a.cg=a.Ik);a.xj=0}function E(a,b){var c=a.Je+a.ie+a.Yc-a.A;b&&1<a.Gd&&a.md>a.qh&&(c=Math.round(c/a.Gd));return c}function zb(a){a.md=0;a.th=1;a.Je=a.ie=a.Yc=a.A=0;Ab(a);Gb(a,1)}
function Jb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Gd&&a.md&&(d=a.md/a.qh);a.Fk=Math.round(1E3/30);a.Qn=Math.floor(a.Hd/c*d);a.Ji=Math.floor(a.Hd/30*d);a.Jk=Math.floor(a.Hd/60*d);a.Ik=Math.floor(a.Hd/2*d);b||(a.nf=a.Ji,a.dg=a.Jk,a.cg=a.Ik);a.xj=0}function E(a,b){var c=a.Je+a.ie+a.Yc-a.A;b&&1<a.Gd&&a.md>a.qh&&(c=Math.round(c/a.Gd));return c}function zb(a){a.md=0;a.th=1;a.Je=a.ie=a.Yc=a.A=0;Ab(a);Gb(a,1)}
function Gb(a,b,c){void 0!==b&&(0.8>a.md/a.hf&&(b=1),a.Gd=b,a.hf=a.qh*a.Gd,b=a.hf.toFixed(2)+"Mhz",a.ta.setSpeed&&(a.ta.setSpeed.innerHTML=b),a.ca("target speed: "+b),c&&a.Md());Ib(a,a.ie);a.ie=0;a.jf=ma();a.Ge=0;Jb(a)}
k.Me=function(a){if(Na(this,!0)){this.Ob||(Gb(this),this.Da&&this.Da.start(this.jf,E(this)),this.Ob=!0,this.ka&&Kb(this.ka),this.ta.run&&(this.ta.run.innerHTML="Halt"),a&&this.Md());this.xj>=this.Hd&&Jb(this,!0);this.eg=0;this.rh=ma();this.Ge&&(a=this.rh-this.Ge,a>this.Fk&&(this.jf+=a,this.jf>this.rh&&(this.jf=this.rh)));try{do{this.uf(this.af?1:Math.round(this.Rn/this.th));var b=this.Yc-this.A;this.ie+=b;this.eg+=b;Ib(this,0,!0);Eb(this,b);this.dg-=b;0>=this.dg&&(this.dg+=this.Jk,this.gi());this.cg-=
b;0>=this.cg&&(this.cg+=this.Ik,this.Zg());this.nf-=b;if(0>=this.nf){this.nf+=this.Ji;break}}while(this.Ob)}catch(c){this.zb();Db(this);this.Da&&this.Da.stop(ma(),E(this));Na(this,!1);Qa(this,c.message);return}b=setTimeout;a=this.Zn;this.Ge=ma();var d=this.Fk;this.eg&&(d=Math.round(d*this.eg/this.Ji));var d=d-(this.Ge-this.rh),e=this.Ge-this.jf;e&&(this.md=Math.round(this.ie/(10*e))/100,864E5<=e&&(this.Je=0,this.ka&&Lb(this.ka,!0),Gb(this)));if(0>d||this.md<this.hf)d=0;this.xj+=this.eg;this.Ge+=d;
k.Me=function(a){if(Na(this,!0)){this.Ob||(Gb(this),this.Da&&this.Da.start(this.jf,E(this)),this.Ob=!0,this.ka&&Kb(this.ka),this.ta.run&&(this.ta.run.innerHTML="Halt"),a&&this.Md());this.xj>=this.Hd&&Jb(this,!0);this.eg=0;this.rh=ma();this.Ge&&(a=this.rh-this.Ge,a>this.Fk&&(this.jf+=a,this.jf>this.rh&&(this.jf=this.rh)));try{do{this.uf(this.af?1:Math.round(this.Qn/this.th));var b=this.Yc-this.A;this.ie+=b;this.eg+=b;Ib(this,0,!0);Eb(this,b);this.dg-=b;0>=this.dg&&(this.dg+=this.Jk,this.gi());this.cg-=
b;0>=this.cg&&(this.cg+=this.Ik,this.Zg());this.nf-=b;if(0>=this.nf){this.nf+=this.Ji;break}}while(this.Ob)}catch(c){this.zb();Db(this);this.Da&&this.Da.stop(ma(),E(this));Na(this,!1);Qa(this,c.message);return}b=setTimeout;a=this.Yn;this.Ge=ma();var d=this.Fk;this.eg&&(d=Math.round(d*this.eg/this.Ji));var d=d-(this.Ge-this.rh),e=this.Ge-this.jf;e&&(this.md=Math.round(this.ie/(10*e))/100,864E5<=e&&(this.Je=0,this.ka&&Lb(this.ka,!0),Gb(this)));if(0>d||this.md<this.hf)d=0;this.xj+=this.eg;this.Ge+=d;
b(a,d)}else Db(this),this.Da&&this.Da.stop(ma(),E(this))};k.zb=function(a){Oa(this,!0);this.Yc-=this.A;this.A=0;Ib(this,this.ie);this.ie=0;this.Ob&&(this.Ob=!1,this.ka&&Kb(this.ka),this.ta.run&&(this.ta.run.innerHTML="Run"));this.pi=a};k.uf=function(){return 0};function Db(a){a.gi();a.Zg()}
var Mb=[1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,
0,0,1,1,0,1,0,0,1];function Nb(a,b,c){this.S=a;this.La=this.oa=0;this.Nc=65535;this.Mc=this.ab=0;this.ug=b;Ob(this,c)}function Pb(a){this.oa=a;this.Nc=65535;return this.La=a<<4}
@ -51,7 +51,7 @@ function Yb(a){this.Ga=a.model||8088;var b=0;switch(this.Ga){default:case 8088:b
$b,this.Pa[97]=ac,this.Pa[98]=bc,this.Pa[99]=G,this.Pa[100]=G,this.Pa[101]=G,this.Pa[102]=G,this.Pa[103]=G,this.Pa[104]=cc,this.Pa[105]=dc,this.Pa[106]=ec,this.Pa[107]=fc,this.Pa[108]=gc,this.Pa[109]=hc,this.Pa[110]=ic,this.Pa[111]=jc,this.Pa[192]=kc,this.Pa[193]=lc,this.Pa[200]=mc,this.Pa[200]=nc,this.Pa[241]=oc,pc[7]=qc,rc[7]=qc,80286<=this.Ga&&(this.Uj=2,this.Eg=0,this.Pa[15]=sc,this.Pa[99]=tc,this.Pa[84]=uc,this.P=this.ga=this.fa=this.ua=this.aa=this.yj=0,this.W=this.V=1,this.He=3,this.Lk=14,
this.Mk=16,this.Vb=2,this.ic=this.qb=7,this.xh=0,this.Qk=7,this.Sk=13,this.Uk=7,this.Tk=11,this.Rk=16,this.Ok=3,this.Ri=6,this.Pk=2,this.Nk=13,this.Si=this.Ti=5,this.ig=2,this.hg=7,this.hl=23,this.il=0,this.jl=1,this.kl=3,this.gl=17,this.Ui=7,this.ml=11,this.Wb=7,this.Xb=3,this.ol=7,this.nl=11,this.ll=15,this.Cb=2,this.pl=3,this.Vi=7,this.rl=this.$i=this.ql=8,this.aj=this.Zi=4,this.wl=2,this.vl=3,this.tl=5,this.ul=2,this.sl=3,this.bj=5,this.cj=3,this.Wk=14,this.Yk=22,this.Vk=17,this.Xk=25,this.$k=
17,this.bl=25,this.Zk=20,this.al=28,this.yl=13,this.Al=21,this.xl=16,this.zl=24,this.dl=13,this.fl=21,this.cl=16,this.el=24,this.kg=2,this.jg=7,this.gj=this.hj=5,this.Bl=19,this.Cl=this.jc=5,this.Dl=17,this.rc=3,this.El=5,this.lg=3,this.Pb=0,this.Oi=8,this.Pi=5,this.Qi=9,this.Xi=this.Wi=5,this.Yi=4,this.ej=this.dj=5,this.fj=4,this.ij=7,this.jj=5,this.kj=8,this.oj=3,this.pj=4,this.qj=3,this.Il=this.Fl=11,this.Hl=this.Gl=15,this.Jl=7,this.mj=5,this.lj=8,this.nj=0,this.tj=2,this.mg=6,this.sj=3,this.rj=
6,this.vj=3,this.Kl=this.uj=5));this.Gg=[];this.Hg=[];this.Wg=0;this.Aa=[];this.te=this.Jb=this.ob=this.fb=this.xe=0;this.T=this.Am;this.U=this.Bm;this.N=this.In;this.O=this.Jn;this.Q=this.gp;this.R=this.hp;vc(this)}x(xb,Yb);k=Yb.prototype;k.Ci=function(a,b,c,d,e){this.Aa=a;this.te=this.Jb=b;this.ob=c;this.fb=d;this.xe=e};k.reset=function(){this.Ob&&this.zb();vc(this);zb(this);this.kd=!1};
6,this.vj=3,this.Kl=this.uj=5));this.Gg=[];this.Hg=[];this.Wg=0;this.Aa=[];this.te=this.Jb=this.ob=this.fb=this.xe=0;this.T=this.zm;this.U=this.Am;this.N=this.Hn;this.O=this.In;this.Q=this.fp;this.R=this.gp;vc(this)}x(xb,Yb);k=Yb.prototype;k.Ci=function(a,b,c,d,e){this.Aa=a;this.te=this.Jb=b;this.ob=c;this.fb=d;this.xe=e};k.reset=function(){this.Ob&&this.zb();vc(this);zb(this);this.kd=!1};
function vc(a){a.G=0;a.B=0;a.I=0;a.J=0;a.X=0;a.H=0;a.F=0;a.D=0;a.ad=65520;a.ed=0;a.se=1023;a.Jc={zj:0,oa:0,ab:0,ph:-1};a.ra=new Nb(a,"CS");a.Qb=new Nb(a,"DS");a.Eb=new Nb(a,"SS");a.cb=new Nb(a,"ES");a.am=new Nb(a,"ZERO");wc(a,0,65535);80286<=a.Ga&&(a.Qc=a.We=0,a.Ld=new Nb(a,"LDT",!0),a.xg=new Nb(a,"TSS",!0),a.Rb=new Nb(a,"VER",!0),wc(a,65520,61440),a.ra.La=16711680);xc(a,0);yc(a);a.kb=0;a.Db=a.rg=-1;a.Pg=0;a.ha=a.Ka=-1;a.C=a.Qb;a.M=a.Eb;a.$=a.wa=0}
k.yk=function(){var a=this.G+this.B+this.I+this.J+this.X+this.H+this.F+this.D|0;return a=a+this.sa+this.ra.oa+this.Qb.oa+this.Eb.oa+this.cb.oa+zc(this)|0};function Ac(a,b,c,d){void 0!==d&&(void 0===a.Gg[b]&&(a.Gg[b]=[]),a.Gg[b].push([c,d]))}function Bc(a,b,c){void 0!==c&&(null==a.Hg[b]&&a.Wg++,a.Hg[b]=c)}function Cc(a,b){var c=a.Hg[b];null!=c&&(c(--a.Wg),delete a.Hg[b])}function yc(a,b){void 0===b&&(b=!!(a.ad&1));Dc=b?Ec:Fc;Ob(a.ra,b);Ob(a.Qb,b);Ob(a.Eb,b);Ob(a.cb,b)}
k.save=function(){var a=new H(this);a.set(0,[this.G,this.B,this.I,this.J,this.X,this.H,this.F,this.D]);a.set(1,[this.sa,this.ra.save(),this.Qb.save(),this.Eb.save(),this.cb.save(),zc(this),null!=this.Qc?[this.ad,this.Qc,this.We,this.ed,this.se,this.Ld.save(),this.xg.save()]:null]);a.set(2,[this.C.ug,this.M.ug,this.$,this.wa,this.kb,this.ha,this.Ka]);a.set(3,[this.th,this.Je,this.Gd]);a.set(4,eb(this.na));return a.data()};
@ -62,13 +62,13 @@ function Ic(a,b){a.Ca=a.ra.load(b)+a.sa;a.$|=a.Eg}function Mc(a,b){a.Qb.load(b);
function Uc(a){return(a.ja^a.ma^a.ja>>1)&a.da>>1?2048:0}function Vc(a){a.Y&=~a.da}function Wc(a){a.ma=a.ja&16|a.ma&-17}function Xc(a){a.Y|=a.da-1}function Yc(a){Tc(a)&&(a.ja^=a.da>>1|a.da>>2,a.ma^=32896)}function Zc(a){a.ja&=~a.da;a.ma=a.ja&32896|a.ma&-32897}function $c(a){a.Y|=a.da}function ad(a){a.ma=~(a.ja&16)&16|a.ma&-17}function bd(a){a.Y&=~(a.da-1)}function cd(a){Tc(a)||(a.ja^=a.da>>1|a.da>>2,a.ma^=32896)}function dd(a){a.ja|=a.da;a.ma=a.ja&32896|a.ma&-32897}
function zc(a){return a.xa&-2262|Pc(a)|Qc(a)|Rc(a)|Sc(a)|Tc(a)|Uc(a)}function xc(a,b){a.da=256;a.Y=a.ja=a.ma=0;b&1&&$c(a);b&4||(a.ja|=1);b&16&&(a.ma|=16);b&64||Xc(a);b&128&&cd(a);b&2048&&dd(a);a.xa=a.xa&-1793|b&1792|a.Uj;a.xa&256&&(a.kb|=2,a.$|=4)}
k.wb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.ta[c]=d;e=!0;break;default:e=xb.prototype.wb.call(this,a,b,c,d)}return e};k.ub=function(a){return this.Aa[(a&this.Jb)>>this.ob].tc(a&this.fb)};
k.Ia=function(a){var b=a&this.fb;a=(a&this.Jb)>>this.ob;this.A-=this.yj;return b!=this.fb?this.Aa[a].Rl(b):this.Aa[a++].tc(b)|this.Aa[a&this.xe].tc(0)<<8};k.bd=function(a,b){this.Aa[(a&this.Jb)>>this.ob].Cc(a&this.fb,b&255)};k.Nd=function(a,b){var c=a&this.fb,d=(a&this.Jb)>>this.ob;this.A-=this.yj;c!=this.fb?this.Aa[d].dm(c,b&65535):(this.Aa[d++].Cc(c,b&255),this.Aa[d&this.xe].Cc(0,b>>8&255))};k.Am=function(a,b){this.wg=a;this.ha=a.Uc(this.ng=b,0);return this.$&1?0:this.ub(this.ha)};
k.Bm=function(a,b){this.wg=a;this.ha=a.Uc(this.ng=b,1);return this.$&1?0:this.Ia(this.ha)};k.In=function(a,b){this.wg=a;this.Ka=this.ha=a.Uc(this.ng=b,0);return this.$&1?0:this.ub(this.ha)};k.Jn=function(a,b){this.wg=a;this.Ka=this.ha=a.Uc(this.ng=b,1);return this.$&1?0:this.Ia(this.ha)};k.gp=function(a){this.$&2||this.bd(this.wg.$b(this.ng,1),a)};k.hp=function(a){this.$&2||this.Nd(this.wg.$b(this.ng,2),a)};k.ea=function(){var a=this.ub(this.Ca);this.Ca=this.ra.La+(this.sa=this.sa+1&65535);return a};
k.Ia=function(a){var b=a&this.fb;a=(a&this.Jb)>>this.ob;this.A-=this.yj;return b!=this.fb?this.Aa[a].Rl(b):this.Aa[a++].tc(b)|this.Aa[a&this.xe].tc(0)<<8};k.bd=function(a,b){this.Aa[(a&this.Jb)>>this.ob].Cc(a&this.fb,b&255)};k.Nd=function(a,b){var c=a&this.fb,d=(a&this.Jb)>>this.ob;this.A-=this.yj;c!=this.fb?this.Aa[d].dm(c,b&65535):(this.Aa[d++].Cc(c,b&255),this.Aa[d&this.xe].Cc(0,b>>8&255))};k.zm=function(a,b){this.wg=a;this.ha=a.Uc(this.ng=b,0);return this.$&1?0:this.ub(this.ha)};
k.Am=function(a,b){this.wg=a;this.ha=a.Uc(this.ng=b,1);return this.$&1?0:this.Ia(this.ha)};k.Hn=function(a,b){this.wg=a;this.Ka=this.ha=a.Uc(this.ng=b,0);return this.$&1?0:this.ub(this.ha)};k.In=function(a,b){this.wg=a;this.Ka=this.ha=a.Uc(this.ng=b,1);return this.$&1?0:this.Ia(this.ha)};k.fp=function(a){this.$&2||this.bd(this.wg.$b(this.ng,1),a)};k.gp=function(a){this.$&2||this.Nd(this.wg.$b(this.ng,2),a)};k.ea=function(){var a=this.ub(this.Ca);this.Ca=this.ra.La+(this.sa=this.sa+1&65535);return a};
k.L=function(){var a=this.ub(this.Ca)<<24>>24;this.Ca=this.ra.La+(this.sa=this.sa+1&65535);return a&65535};k.K=function(){var a=this.Ia(this.Ca);this.Ca=this.ra.La+(this.sa=this.sa+2&65535);return a};k.Ja=function(){var a=this.X;this.X=this.X+2&65535;return this.Ia(this.Eb.Uc(a,1))};function K(a,b){var c=a.X=a.X-2&65535;a.Nd(a.Eb.$b(c,1),b)}
k.Zg=function(){F(this,"AX",this.G);F(this,"BX",this.B);F(this,"CX",this.I);F(this,"DX",this.J);F(this,"SP",this.X);F(this,"BP",this.H);F(this,"SI",this.F);F(this,"DI",this.D);F(this,"CS",this.ra.oa);F(this,"DS",this.Qb.oa);F(this,"SS",this.Eb.oa);F(this,"ES",this.cb.oa);F(this,"IP",this.sa);var a=zc(this);F(this,"PS",a);F(this,"C",a&1?1:0,1);F(this,"P",a&4?1:0,1);F(this,"A",a&16?1:0,1);F(this,"Z",a&64?1:0,1);F(this,"S",a&128?1:0,1);F(this,"T",a&256?1:0,1);F(this,"I",a&512?1:0,1);F(this,"D",a&1024?
1:0,1);F(this,"O",a&2048?1:0,1);this.ta.speed&&(this.ta.speed.innerHTML=this.Ob&&this.md?this.md.toFixed(2)+"Mhz":"Stopped")};
k.uf=function(a){this.pi=!0;this.tm=a&&this.Z&&1<this.Z.Gb.length;this.Yc=this.A=a;this.ka&&Lb(this.ka);a||!this.Z||L(this.Z,this.Z.Qe)||(this.$|=4);do{var b=this.$&240;if(b)this.wa|=b;else if(this.Ah=this.Ca,this.ha=this.Ka=-1,this.C=this.Qb,this.M=this.Eb,this.wa=this.$&256,this.kb){a:{if(!(this.$&4))if(this.kb&1&&this.xa&512){if(b=ed(this.ka),-1<=b&&(this.kb&=-2,0<=b)){this.kb&=-5;fd.call(this,b,null,11);b=!0;break a}}else if(this.kb&2){this.kb&=-3;fd.call(this,1,null,11);b=!0;break a}if(b=this.kb&
8){for(var b=this.ka,c=!1,d=0;d<b.$a;d++)for(var e=b.$a[d],f=0;f<e.Hb.length;f++){var g=e.Hb[f];g.Fd||(gd(b,g),g.Fd||(c=!0))}b=!c}b&&(this.kb&=-9);b=!1}if(b&&!a){this.$=0;break}if(this.kb&4){this.$=this.A=0;break}}if(this.tm&&hd(this.Z,this.Ca)){this.zb();break}this.$=0;this.Pa[this.ea()].call(this)}while(0<this.A);return this.pi?this.Yc-this.A:void 0===this.pi?0:-1};k.Fa=function(a){this.Z&&L(this.Z,this.Z.Rj)&&this.Z.message(a)};
k.uf=function(a){this.pi=!0;this.sm=a&&this.Z&&1<this.Z.Gb.length;this.Yc=this.A=a;this.ka&&Lb(this.ka);a||!this.Z||L(this.Z,this.Z.Qe)||(this.$|=4);do{var b=this.$&240;if(b)this.wa|=b;else if(this.Ah=this.Ca,this.ha=this.Ka=-1,this.C=this.Qb,this.M=this.Eb,this.wa=this.$&256,this.kb){a:{if(!(this.$&4))if(this.kb&1&&this.xa&512){if(b=ed(this.ka),-1<=b&&(this.kb&=-2,0<=b)){this.kb&=-5;fd.call(this,b,null,11);b=!0;break a}}else if(this.kb&2){this.kb&=-3;fd.call(this,1,null,11);b=!0;break a}if(b=this.kb&
8){for(var b=this.ka,c=!1,d=0;d<b.$a;d++)for(var e=b.$a[d],f=0;f<e.Hb.length;f++){var g=e.Hb[f];g.Fd||(gd(b,g),g.Fd||(c=!0))}b=!c}b&&(this.kb&=-9);b=!1}if(b&&!a){this.$=0;break}if(this.kb&4){this.$=this.A=0;break}}if(this.sm&&hd(this.Z,this.Ca)){this.zb();break}this.$=0;this.Pa[this.ea()].call(this)}while(0<this.A);return this.pi?this.Yc-this.A:void 0===this.pi?0:-1};k.Fa=function(a){this.Z&&L(this.Z,this.Z.Rj)&&this.Z.message(a)};
za(function(){for(var a=A(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Yb(d);Ma(d,c)}});function id(a,b){this.ma=a^b;this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=a+b)&255}function jd(a,b){this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=this.ma=a|b)&255}
function kd(a,b){this.ma=a^b;this.Y=this.ja=a+b+(this.Y&this.da?1:0);this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return this.Y&255}function ld(a,b){this.ma=a^b;this.Y=this.ja=a-b-(this.Y&this.da?1:0);this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return this.Y&255}function md(a,b){this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=this.ma=a&b)&255}
function nd(a,b){this.ma=a^b;this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=a-b)&255}function od(a,b){this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=this.ma=a^b)&255}function pd(a,b){this.ma=a^b;this.da=256;this.Y=this.ja=a-b;this.A-=0>this.Ka?0>this.ha?this.Vb:this.Ri:this.qb;this.$|=2;return a}
@ -418,25 +418,25 @@ this.ea();this.G=this.G&-256|hb(this.na,a,this.Ca-2);this.A-=this.Ti},function()
this.A-=this.Ui},function(){wc(this,this.K(),this.K());this.A-=this.ml},function(){var a=this.L();I(this,this.sa+a);this.A-=this.Ui},function(){this.G=this.G&-256|hb(this.na,this.J,this.Ca-1);this.A-=this.Si},function(){this.G=hb(this.na,this.J,this.Ca-1)|hb(this.na,this.J+1&65535,this.Ca-1)<<8;this.A-=this.Si},function(){lb(this.na,this.J,this.G&255,this.Ca-1);this.A-=this.gj},function(){lb(this.na,this.J,this.G&255,this.Ca-1);lb(this.na,this.J+1&65535,this.G>>8,this.Ca-1);this.A-=this.gj},uh,uh,
function(){this.$|=132;this.A-=this.Pb},function(){this.$|=68;this.A-=this.Pb},function(){this.kb|=4;this.A-=2;this.Z&&1<this.Z.Gb.length?(J(this,-1),this.zb()):this.xa&512||(this.Z&&J(this,-1),this.zb())},function(){Pc(this)?Vc(this):$c(this);this.A-=2},function(){this.Db=-1;Vg[this.ea()].call(this,be,Td);0<=this.Db&&(this.G=this.Db)},function(){this.Db=-1;Wg[this.ea()].call(this,ce,Td);0<=this.Db&&(this.G=this.Db,this.J=this.rg)},function(){this.Y&=~this.da;this.A-=2},function(){this.Y|=this.da;
this.A-=2},function(){this.xa&=-513;this.A-=this.Ok},function(){this.xa|=512;this.$|=4;this.A-=2},function(){this.xa&=-1025;this.A-=2},function(){this.xa|=1024;this.A-=2},function(){Vg[this.ea()].call(this,pc,Td)},function(){Wg[this.ea()].call(this,rc,Td)}];
function P(a){w.call(this,"ChipSet",a,P);this.Ga=a.model;this.Ga=void 0!==this.Ga?parseInt(this.Ga,10):vh;this.Zb=0;var b=a.sw1;if(b)this.Zb=wh(b,xh|yh.nm);else if(b=a.fdrives||2,this.Zb|=zh.Nh,b--,this.Zb|=(b&3)<<zh.zf,b=a.monitor||(this.Ga<Ah?"mono":"ega"),void 0!==Bh[b])this.Zb|=Bh[b]<<yh.zf;this.oe=wh(a.sw2||"11110000",0);this.Hn=this.Ga==vh?16:64;this.Lf=this.Mf=1;this.Ga>=Ah&&(this.Lf=this.Mf=2);this.ih=a.scaleTimers||!1;this.fp=a.rtcDate;this.uk=!1;a.sound&&window&&"webkitAudioContext"in window&&
(this.di=new webkitAudioContext);this.reset();this.Sa()}x(w,P);var vh=5150,Ah=5170,Bh={none:0,tv:1,color:2,mono:3,ega:0},zh={Nh:1},xh=12,yh={tp:16,op:32,nm:48,yf:48,zf:4};zh.ONE=0;zh.up=64;zh.sp=128;zh.qp=192;zh.yf=192;zh.zf=6;k=P.prototype;
function P(a){w.call(this,"ChipSet",a,P);this.Ga=a.model;this.Ga=void 0!==this.Ga?parseInt(this.Ga,10):vh;this.Zb=0;var b=a.sw1;if(b)this.Zb=wh(b,xh|yh.mm);else if(b=a.fdrives||2,this.Zb|=zh.Nh,b--,this.Zb|=(b&3)<<zh.zf,b=a.monitor||(this.Ga<Ah?"mono":"ega"),void 0!==Bh[b])this.Zb|=Bh[b]<<yh.zf;this.oe=wh(a.sw2||"11110000",0);this.Gn=this.Ga==vh?16:64;this.Lf=this.Mf=1;this.Ga>=Ah&&(this.Lf=this.Mf=2);this.ih=a.scaleTimers||!1;this.ep=a.rtcDate;this.uk=!1;a.sound&&window&&"webkitAudioContext"in window&&
(this.di=new webkitAudioContext);this.reset();this.Sa()}x(w,P);var vh=5150,Ah=5170,Bh={none:0,tv:1,color:2,mono:3,ega:0},zh={Nh:1},xh=12,yh={rp:16,np:32,mm:48,yf:48,zf:4};zh.ONE=0;zh.sp=64;zh.qp=128;zh.op=192;zh.yf=192;zh.zf=6;k=P.prototype;
k.wb=function(a,b,c,d){switch(c){case "sw1":return this.ta[c]=d,Ch(this,c,d,this.Zb,{0:this.Ga==vh?"Bootable Floppy Drive":"Loop on POST",1:this.Ga==vh?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ga==vh)return this.ta[c]=d,Ch(this,c,d,this.oe,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.ta[c]=d,!0}return!1};
k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;this.Da=a;this.pb=B(a,"Keyboard");this.Ll=Math.round(c.Hd/1193181);gb(b,this,Dh);kb(b,this,Eh);this.Ga<Ah?(gb(b,this,Fh),kb(b,this,Gh)):(gb(b,this,Hh),kb(b,this,Ih));if(d){var e=this;Jh(d,P);Kh(d,P.Qe,function(){for(var a=0;a<e.sb.length;a++){for(var b=e.sb[a],c="PIC"+a+":",d=0;d<b.qd.length;d++)c+=" IC"+(d+1)+"="+p(b.qd[d]);c+=" IMR="+p(b.wd)+" IRR="+p(b.Kb)+" ISR="+p(b.Fc);e.Z.message(c)}});Kh(d,P.Re,function(){for(var a=0;a<e.Ib.length;a++){Lh(e,
a);var b=e.Ib[a],c="TIMER"+a+":",d=0;if(void 0!==b.hd)for(var n=0;n<=b.hd;n++)d|=b.ac[n]<<8*n;c+=" MODE"+b.mode+" BYTES="+b.hd+" COUNT="+r(d);e.Z.message(c)}});Kh(d,P.Ta,function(){for(var a="",b=0;64>b;b++){var c=13>=b?Mh(e,b):e.pa[b];a&&(a+="\n");a+="CMOS[0x"+p(b)+"]: 0x"+p(c)}e.Z.message(a)})}Ac(c,26,this,this.En)};k.bc=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};
a);var b=e.Ib[a],c="TIMER"+a+":",d=0;if(void 0!==b.hd)for(var n=0;n<=b.hd;n++)d|=b.ac[n]<<8*n;c+=" MODE"+b.mode+" BYTES="+b.hd+" COUNT="+r(d);e.Z.message(c)}});Kh(d,P.Ta,function(){for(var a="",b=0;64>b;b++){var c=13>=b?Mh(e,b):e.pa[b];a&&(a+="\n");a+="CMOS[0x"+p(b)+"]: 0x"+p(c)}e.Z.message(a)})}Ac(c,26,this,this.Dn)};k.bc=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};
k.reset=function(){var a;this.cd=this.Zb;this.Oe=this.oe;Nh(this);this.$a=Array(this.Lf);for(a=0;a<this.Lf;a++)Oh(this,a);this.sb=Array(this.Mf);Ph(this,0,32);1<this.Mf&&Ph(this,1,160);this.ai=void 0;this.Ib=Array(3);for(a=0;a<this.Ib.length;a++)Qh(this,a);this.Kf=this.Zh=this.fc=this.Rg=void 0;this.Qg=0;if(this.Ga>=Ah){this.jb=16;this.vd=0;this.Ec=16;this.Mg=0;this.ue=160;512<=Rh(this)&&(this.ue|=16);3==Sh(this)&&(this.ue|=64);this.Xh=3;this.If=0;this.Ig=Array(7);this.ve=0;this.pa||(this.pa=Array(64),
Th(this,this.fp));for(a=14;46>a;a++)void 0===this.pa[a]&&(this.pa[a]=0);this.pa[20]=this.cd&(yh.yf|2|zh.Nh|zh.yf);this.pa[16]=Uh(this,0)<<4|Uh(this,1);Vh(this)}};
Th(this,this.ep));for(a=14;46>a;a++)void 0===this.pa[a]&&(this.pa[a]=0);this.pa[20]=this.cd&(yh.yf|2|zh.Nh|zh.yf);this.pa[16]=Uh(this,0)<<4|Uh(this,1);Vh(this)}};
function Th(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.ca("CMOS date invalid ("+b+"), using "+c)):b&&a.ca("CMOS date: "+c);a.pa[0]=c.getSeconds();a.pa[1]=0;a.pa[2]=c.getMinutes();a.pa[3]=0;a.pa[4]=c.getHours();a.pa[5]=0;a.pa[6]=c.getDay()+1;a.pa[7]=c.getDate();a.pa[8]=c.getMonth()+1;c=c.getFullYear();a.pa[9]=c%100;c/=100;a.pa[50]=c%10|c/10<<4;a.ag=-1;a.pa[10]=38;a.pa[11]=2;a.pa[12]=0;a.pa[13]=128}
function Mh(a,b){var c=a.pa[b];if(10>b){var d=!1;4!=b&&5!=b||a.pa[11]&2||(c=12>c?c?c:12:(c-=12)?c+128:140,d=!0);a.pa[11]&4||(d&&128<c&&(c-=48),c=c%10|c/10<<4)}else 10==b&&(a.pa[b]^=128);return c}function Vh(a){for(var b=0,c=16;46>c;c++)b+=a.pa[c];a.pa[47]=b&255;a.pa[46]=b>>8}
k.save=function(){var a=new H(this);a.set(0,[this.Zb,this.oe,this.cd,this.Oe]);for(var b=[],c=0;c<this.$a;c++){var d=[],e=this.$a[c];d[0]=e.Zd;d[1]=e.Yh;d[2]=e.ck;d[3]=e.nb;for(var f=[],g=0;g<e.Hb.length;g++){var h=[],m=e.Hb[g];h[0]=m.Fd;h[1]=m.Yj;h[2]=m.Ic;h[3]=m.Sb;h[4]=m.ac;h[5]=m.mode;h[6]=m.Sg;h[8]=m.cp;h[9]=m.dp;f[g]=h}d[4]=f;b[c]=d}a.set(1,[b]);b=[];for(c=0;c<this.sb.length;c++)d=[],e=this.sb[c],d[0]=e.fg,d[1]=e.qd,d[2]=e.Id,d[3]=e.wd,d[4]=e.Kb,d[5]=e.Fc,d[6]=e.we,d[7]=e.Jf,b[c]=d;a.set(2,
k.save=function(){var a=new H(this);a.set(0,[this.Zb,this.oe,this.cd,this.Oe]);for(var b=[],c=0;c<this.$a;c++){var d=[],e=this.$a[c];d[0]=e.Zd;d[1]=e.Yh;d[2]=e.ck;d[3]=e.nb;for(var f=[],g=0;g<e.Hb.length;g++){var h=[],m=e.Hb[g];h[0]=m.Fd;h[1]=m.Yj;h[2]=m.Ic;h[3]=m.Sb;h[4]=m.ac;h[5]=m.mode;h[6]=m.Sg;h[8]=m.bp;h[9]=m.cp;f[g]=h}d[4]=f;b[c]=d}a.set(1,[b]);b=[];for(c=0;c<this.sb.length;c++)d=[],e=this.sb[c],d[0]=e.fg,d[1]=e.qd,d[2]=e.Id,d[3]=e.wd,d[4]=e.Kb,d[5]=e.Fc,d[6]=e.we,d[7]=e.Jf,b[c]=d;a.set(2,
[b]);b=[];for(c=0;c<this.Ib.length;c++)d=[],e=this.Ib[c],d[0]=e.Ic,d[1]=e.Wc,d[2]=e.ac,d[3]=e.Rf,d[4]=e.fk,d[5]=e.mode,d[6]=e.sg,d[7]=e.be,d[8]=e.hd,d[9]=e.ld,d[10]=e.Uf,d[11]=e.bf,d[12]=e.ke,b[c]=d;a.set(3,[this.ai,b]);a.set(4,[this.Rg,this.fc,this.Zh,this.Kf,this.Qg]);this.Ga>=Ah&&(a.set(5,[this.jb,this.vd,this.Ec,this.Mg,this.ue,this.Xh]),a.set(6,[this.If,this.Ig,this.ve,this.pa,this.ag]));return a.data()};
k.restore=function(a){var b,c;b=a[0];this.Zb=b[0];this.oe=b[1];this.cd=b[2];this.Oe=b[3];b=a[1];this.$a=Array(this.Lf);for(c=0;c<this.Lf;c++)Oh(this,c,1==b.length?b[0][c]:b);b=a[2];this.sb=Array(this.Mf);for(c=0;c<this.Mf;c++)Ph(this,c,0===c?32:160,b[0][c]);b=a[3];this.ai=b[0];this.Ib=Array(3);for(c=0;c<this.Ib.length;c++)Qh(this,c,b[1][c]);b=a[4];this.Rg=b[0];this.fc=b[1];this.Zh=b[2];this.Kf=b[3];this.Qg=b[4];if(b=a[5])this.jb=b[0],this.vd=b[1],this.Ec=b[2],this.Mg=b[3],this.ue=b[4],this.Xh=b[5];
if(b=a[6])this.If=b[0],this.Ig=b[1],this.ve=b[2],this.pa=b[3],this.ag=b[4],Th(this);return!0};function Oh(a,b,c){a=a.$a[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.Zd=c[0];a.Yh=c[1];a.ck=c[2];a.nb=c[3];a.Pn=b<<2;a.Hb=Array(4);for(b=0;b<a.Hb.length;b++)Wh(a,b,c[4][b])}function Wh(a,b,c){var d=a.Hb[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ia=a;d.Bk=b;d.Fd=c[0];d.Yj=c[1];d.Ic=c[2];d.Sb=c[3];d.ac=c[4];d.mode=c[5];d.Sg=c[6];Xh(d,c[8],c[9])}
function Xh(a,b,c,d){"string"==typeof b&&(b=Ka(b));b&&(a.$g=null,a.cp=b.id,a.dp=c,a.Yg=b,a.xi=b[c],a.zh=d)}function Ph(a,b,c,d){a=a.sb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.xp=b<<3;a.fg=d[0];a.qd=d[1];a.Id=d[2];a.wd=d[3];a.Kb=d[4];a.Fc=d[5];a.we=d[6];a.Jf=d[7]}
function Qh(a,b,c){a=a.Ib[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.Ic=c[0];a.Wc=c[1];a.ac=c[2];a.Rf=c[3];a.fk=c[4];a.mode=c[5];a.sg=c[6];a.be=c[7];a.hd=c[8];a.ld=c[9];a.Uf=c[10];a.bf=c[11];a.ke=c[12]}function Rh(a,b){return((((b?a.Zb:a.cd)&12)>>2)+1)*a.Hn+32*((b?a.oe:a.Oe)&15)}function Yh(a,b){var c=b?a.Zb:a.cd;return a.Ga!=vh||c&zh.Nh?((c&zh.yf)>>zh.zf)+1:0}function Uh(a,b){return b<Yh(a)?a.Ga<Ah?1:2:0}function Sh(a,b){return((b?a.Zb:a.cd)&yh.yf)>>yh.zf}
if(b=a[6])this.If=b[0],this.Ig=b[1],this.ve=b[2],this.pa=b[3],this.ag=b[4],Th(this);return!0};function Oh(a,b,c){a=a.$a[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.Zd=c[0];a.Yh=c[1];a.ck=c[2];a.nb=c[3];a.On=b<<2;a.Hb=Array(4);for(b=0;b<a.Hb.length;b++)Wh(a,b,c[4][b])}function Wh(a,b,c){var d=a.Hb[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ia=a;d.Bk=b;d.Fd=c[0];d.Yj=c[1];d.Ic=c[2];d.Sb=c[3];d.ac=c[4];d.mode=c[5];d.Sg=c[6];Xh(d,c[8],c[9])}
function Xh(a,b,c,d){"string"==typeof b&&(b=Ka(b));b&&(a.$g=null,a.bp=b.id,a.cp=c,a.Yg=b,a.xi=b[c],a.zh=d)}function Ph(a,b,c,d){a=a.sb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.up=b<<3;a.fg=d[0];a.qd=d[1];a.Id=d[2];a.wd=d[3];a.Kb=d[4];a.Fc=d[5];a.we=d[6];a.Jf=d[7]}
function Qh(a,b,c){a=a.Ib[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.Ic=c[0];a.Wc=c[1];a.ac=c[2];a.Rf=c[3];a.fk=c[4];a.mode=c[5];a.sg=c[6];a.be=c[7];a.hd=c[8];a.ld=c[9];a.Uf=c[10];a.bf=c[11];a.ke=c[12]}function Rh(a,b){return((((b?a.Zb:a.cd)&12)>>2)+1)*a.Gn+32*((b?a.oe:a.Oe)&15)}function Yh(a,b){var c=b?a.Zb:a.cd;return a.Ga!=vh||c&zh.Nh?((c&zh.yf)>>zh.zf)+1:0}function Uh(a,b){return b<Yh(a)?a.Ga<Ah?1:2:0}function Sh(a,b){return((b?a.Zb:a.cd)&yh.yf)>>yh.zf}
function Ch(a,b,c,d,e){for(var f="",g=1;8>=g;g++){var h="pcjs-bitCell";g||(h+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+g)+'" class="'+h+'" data-value="0">'+g+"</div>\n"}c.innerHTML=f;b=A(c,"pcjs-bitCell");c=null;for(g=0;g<b.length;g++)void 0!==e&&void 0!==e[g]&&(c=e[g]),c&&b[g].setAttribute("title",c),Zh(b[g],d&1<<g?!1:!0),b[g].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");Zh(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Zb=
a.Zb&~e|(c?0:e);break;case "sw2":a.oe=a.oe&~e|(c?0:e)}Nh(a)}}(a,b[g])}function Zh(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function Nh(a){var b=a.ta.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(void 0!==b){var d;d=""+(Rh(a,!0)+"Kb");d+=", "+c[Sh(a,!0)]+" Monitor";d+=", "+Yh(a,!0)+" Floppy Drives";if(void 0!==a.cd&&a.cd!=a.Zb||void 0!==a.Oe&&a.Oe!=a.oe)d+=" (Reset required)";b.innerHTML=d}}
function $h(a,b,c,d,e){var f=a.$a[b],g=f.Hb[c].Sb[f.nb];f.nb^=1;a.ba(d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.nb+"]",P.Fb,g);return g}function ai(a,b,c,d,e,f){var g=a.$a[b];a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+g.nb+"]",P.Fb);a=g.Hb[c];a.Sb[g.nb]=a.Yj[g.nb]=e;g.nb^=1}function bi(a,b,c,d,e){var f=a.$a[b],g=f.Hb[c].ac[f.nb];f.nb^=1;a.ba(d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.nb+"]",P.Fb,g);return g}
function ci(a,b,c,d,e,f){var g=a.$a[b];a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.nb+"]",P.Fb);a=g.Hb[c];a.ac[g.nb]=a.Ic[g.nb]=e;g.nb^=1}function di(a,b,c,d){var e=a.$a[b],f=e.Zd|1;e.Zd&=-16;a.ba(c,null,d,"DMA"+b+".STATUS",P.Fb,f);return f}function ei(a,b,c,d,e){var f=a.$a[b];a.ba(c,d,e,"DMA"+b+".REQ",P.Fb);a=d&3;f.Zd=f.Zd&~(16<<a)|(d&4)<<a+2;f.ck=d}function fi(a,b,c,d,e){var f=a.$a[b];a.ba(c,d,e,"DMA"+b+".MASK",P.Fb);b=d&3;c=f.Hb[b];c.Fd=d&4?!0:!1;c.Fd||gi(a,f.Pn+b)}
function ci(a,b,c,d,e,f){var g=a.$a[b];a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.nb+"]",P.Fb);a=g.Hb[c];a.ac[g.nb]=a.Ic[g.nb]=e;g.nb^=1}function di(a,b,c,d){var e=a.$a[b],f=e.Zd|1;e.Zd&=-16;a.ba(c,null,d,"DMA"+b+".STATUS",P.Fb,f);return f}function ei(a,b,c,d,e){var f=a.$a[b];a.ba(c,d,e,"DMA"+b+".REQ",P.Fb);a=d&3;f.Zd=f.Zd&~(16<<a)|(d&4)<<a+2;f.ck=d}function fi(a,b,c,d,e){var f=a.$a[b];a.ba(c,d,e,"DMA"+b+".MASK",P.Fb);b=d&3;c=f.Hb[b];c.Fd=d&4?!0:!1;c.Fd||gi(a,f.On+b)}
function hi(a,b,c,d,e){a.ba(c,d,e,"DMA"+b+".CLEAR",P.Fb);a=a.$a[b];for(b=0;b<a.Hb.length;b++)Wh(a,b)}function ii(a,b,c,d,e){var f=a.$a[b].Hb[c].Sg;a.ba(d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",P.Fb,f);return f}function ji(a,b,c,d,e,f){a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",P.Fb);a.$a[b].Hb[c].Sg=e}function ki(a,b,c,d){var e=a.Ig[b];a.ba(c,null,d,"DMA.SPARE"+b+".PAGE",P.Fb,e);return e}function li(a,b,c,d,e){a.ba(c,d,e,"DMA.SPARE"+b+".PAGE",P.Fb);a.Ig[b]=d}
function mi(a,b,c,d,e){Xh(a.$a[b>>2].Hb[b&3],c,d,e)}function gi(a,b,c){b=a.$a[b>>2].Hb[b&3];b.Yg&&b.xi&&b.zh?(c&&(b.$g=c),b.Fd||gd(a,b,!0)):c&&c(!0)}
function gd(a,b,c){c&&(b.count=b.ac[1]<<8|b.ac[0],b.em=b.mode&12,b.vk=b.kd=!1);for(var d=!1;0<=b.count&&(c=b.Sg<<16|b.Sb[1]<<8|b.Sb[0],4==b.em?(d=!0,function(c){b.xi.call(b.Yg,b.zh,-1,function(f,g){0>f&&(b.vk||(b.vk=!0),f=255);b.Fd||bb(a.na,c,f);(d=g)&&setTimeout(function(){ni(b)||gd(a,b)},0)})}(c)):8==b.em?(c=$a(a.na,c),0>b.xi.call(b.Yg,b.zh,c)&&(b.kd=!0)):b.kd=!0),!d&&!ni(b););}
@ -444,61 +444,61 @@ function ni(a){if(!a.kd&&0<=--a.count&&(a.mode&32?(a.Sb[0]--,0>a.Sb[0]&&(a.Sb[0]
function pi(a,b,c,d){var e=a.sb[b];a.ba(e.port,c,d,"PIC"+b,P.Qe);if(c&16)e.Id=0,e.qd[e.Id++]=c,e.wd=0,e.we=7,e.Kb=e.Fc=0,e.Jf=10;else if(c&8)e.Jf=c;else{var f=c&224;if(f&32){d=0;if(96==(f&96))d=1<<(c&7);else for(c=e.we+1;;){c&=7;f=1<<c;if(e.Fc&f){d=f;break}if(c++==e.we)break}e.Fc&d&&(e.Fc&=~d,qi(a,b))}else 192==f&&(e.we=c&7)}}function ri(a,b,c){var d=a.sb[b],e=d.wd;a.ba(d.port+1,null,c,"PIC"+b,P.Qe,e);return e}
function si(a,b,c,d){var e=a.sb[b];a.ba(e.port+1,c,d,"PIC"+b,P.Qe);e.Id<e.qd.length?(e.qd[e.Id++]=c,2==e.Id&&e.qd[0]&2&&e.Id++,3!=e.Id||e.qd[0]&1||e.Id++):(e.wd=c,d=a.S,d.$|=4,qi(a,b,b||253!=c?0:6))}function qi(a,b,c){b=a.sb[b];var d=((b.Fc|b.wd)^255)&b.Kb;a=a.S;a.ka&&(a.kb=d?a.kb|1:a.kb&-2);d&&c&&(b.fg=c)}function Q(a,b,c){var d=b>>3,e=a.sb[d];e.Kb|=1<<(b&7);e.fg=c||0;1==d&&(a.sb[0].Kb|=4);qi(a,d)}
function ti(a,b){var c=b>>3,d=a.sb[c],e=1<<(b&7);d.Kb&e&&(d.Kb&=~e,1!=c||d.Kb||(a.sb[0].Kb&=-5),qi(a,c))}function ed(a,b){void 0===b&&(b=0);var c=-1,d=a.sb[b];if(d.fg)c=-2,d.fg--;else for(var e=d.Kb&((d.Fc|d.wd)^255),f=d.we+1;;){var f=f&7,g=1<<f;if(e&g){c=b||2!=f?d.qd[1]+f:ed(a,1);0<=c&&(d.Fc|=g,d.Kb&=~g);break}if(f++==d.we)break}return c}function ui(a,b,c){var d;d=a.Ib[b];d.be==d.hd&&vi(a,b);if(d.Uf)return d.Rf[d.be++];Lh(a,b);d=d.ac[d.be++];a.ba(64+b,null,c,"TIMER"+b,P.Re,d);return d}
function wi(a,b,c,d){a.ba(64+b,c,d,"TIMER"+b,P.Re);d=a.Ib[b];d.be==d.hd&&vi(a,b);d.Ic[d.be++]=c;if(d.be==d.hd){d.bf&&0!=d.mode&&8!=d.mode||(d.Uf=!1,d.ac[0]=d.Wc[0]=d.Ic[0],d.ac[1]=d.Wc[1]=d.Ic[1],d.ke=E(a.S,a.ih),d.bf=!0,d.ld=0!=d.mode,0==b&&ti(a,0));2==b&&Kb(a);if(0==b){var e=xi(a,0);2048<=e&&(a.S.th=Math.round(65536/e))}0==b&&0==d.mode&&16==d.sg&&(b=a.S,b.Ob&&(a=b.A-c*a.Ll,b.A-=a,b.Yc-=a))}}k.yn=function(a,b){this.ba(a,null,b,"TIMER_CTRL",P.Re);return null};
k.Qo=function(a,b,c){this.ba(a,b,c,"TIMER_CTRL",P.Re);this.ai=b;a=(b&192)>>6;if(3!=a){c=b&1;var d=b&14;if(b&=48){var e=this.Ib[a];e.sg=b;e.mode=d;e.fk=c;e.Ic=[0,0];e.ac=[0,0];e.Rf=[0,0];e.ld=!1;e.Uf=!1;e.bf=!1;vi(this,a);0==a&&ti(this,0);2==a&&255==this.sb[0].wd&&77==this.fc&&(a=this.Ib[0],a.Wc[0]=a.Ic[0],a.Wc[1]=a.Ic[1],a.ke=E(this.S,this.ih))}else Lh(this,a),b=this.Ib[a],b.Rf[0]=b.ac[0],b.Rf[1]=b.ac[1],b.Uf=!0,vi(this,a)}};
function wi(a,b,c,d){a.ba(64+b,c,d,"TIMER"+b,P.Re);d=a.Ib[b];d.be==d.hd&&vi(a,b);d.Ic[d.be++]=c;if(d.be==d.hd){d.bf&&0!=d.mode&&8!=d.mode||(d.Uf=!1,d.ac[0]=d.Wc[0]=d.Ic[0],d.ac[1]=d.Wc[1]=d.Ic[1],d.ke=E(a.S,a.ih),d.bf=!0,d.ld=0!=d.mode,0==b&&ti(a,0));2==b&&Kb(a);if(0==b){var e=xi(a,0);2048<=e&&(a.S.th=Math.round(65536/e))}0==b&&0==d.mode&&16==d.sg&&(b=a.S,b.Ob&&(a=b.A-c*a.Ll,b.A-=a,b.Yc-=a))}}k.xn=function(a,b){this.ba(a,null,b,"TIMER_CTRL",P.Re);return null};
k.Po=function(a,b,c){this.ba(a,b,c,"TIMER_CTRL",P.Re);this.ai=b;a=(b&192)>>6;if(3!=a){c=b&1;var d=b&14;if(b&=48){var e=this.Ib[a];e.sg=b;e.mode=d;e.fk=c;e.Ic=[0,0];e.ac=[0,0];e.Rf=[0,0];e.ld=!1;e.Uf=!1;e.bf=!1;vi(this,a);0==a&&ti(this,0);2==a&&255==this.sb[0].wd&&77==this.fc&&(a=this.Ib[0],a.Wc[0]=a.Ic[0],a.Wc[1]=a.Ic[1],a.ke=E(this.S,this.ih))}else Lh(this,a),b=this.Ib[a],b.Rf[0]=b.ac[0],b.Rf[1]=b.ac[1],b.Uf=!0,vi(this,a)}};
function xi(a,b){var c=a.Ib[b],d=c.Ic[1]<<8|c.Ic[0];d||(d=1==c.hd?256:65536);return d}function vi(a,b){var c=a.Ib[b];c.be=32==c.sg?1:0;c.hd=48==c.sg?2:1}
function Lh(a,b,c){var d=a.Ib[b];if(d.bf&&(2!=b||a.fc&1)){var e=E(a.S,a.ih),f=(e-d.ke)/a.Ll|0;0>f&&(d.ke=e,f=0);var g=xi(a,b),h=a.Ib[b],m=h.Wc[1]<<8|h.Wc[0];m||(m=1==h.hd?256:65536);h=m-f;0==d.mode?(0>=h&&(h=0),h||(d.ld=!0,d.bf=!1,b||Q(a,0))):4==d.mode?(d.ld=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Wc[0]=h&255,d.Wc[1]=h>>8,d.ke=e,!b&&d.ld&&Q(a,0))):6==d.mode&&(h-=f,0>=h&&(d.ld=!d.ld,h=g+h,0>=h&&(h=g),d.Wc[0]=h&255,d.Wc[1]=h>>8,d.ke=e,!b&&d.ld&&Q(a,0)));d.ac[0]=h&255;d.ac[1]=h>>8;c&&(a.ke=0)}return d}
function Lb(a,b){for(var c=0;c<a.Ib.length;c++)Lh(a,c,b);if(a.Ga>=Ah){var c=0,d=a.S.Hd,e=E(a.S,a.ih);if(0<=a.ag&&(c=e-a.ag,Math.floor(c/d)&&60<=++a.pa[0]&&(a.pa[0]=0,60<=++a.pa[2]&&(a.pa[2]=0,24<=++a.pa[4])))){a.pa[4]=0;a.pa[6]=a.pa[6]%7+1;var f=a.pa[9],g=oa[a.pa[8]-1];28==g&&0===f%4&&(f%100||0===f%400)&&g++;++a.pa[7]>g&&(a.pa[7]=1,12<++a.pa[8]&&(a.pa[8]=1,a.pa[9]=(a.pa[9]+1)%100))}a.ag=e-c%d}}
k.qn=function(a,b){var c=this.Rg;this.Kf&16&&(this.fc&128?c=this.cd:this.pb&&(c=yi(this.pb)));this.ba(a,null,b,"PPI_A",P.Ta,c);return c};k.Jo=function(a,b,c){this.ba(a,b,c,"PPI_A",P.Ta);this.Rg=b};k.rn=function(a,b){var c=this.fc;this.ba(a,null,b,"PPI_B",P.Ta,c);return c};k.Ko=function(a,b,c){this.ba(a,b,c,"PPI_B",P.Ta);zi(this,b);this.pb&&(a=this.pb,c=b&128?!1:!0,b=b&64?!0:!1,a.oi!==b&&(a.oi=a.sk=b),a.qi!==c&&(a.qi=c))&&(a.sk?(Ai(a),a.sk=!1):Bi(a))};
function zi(a,b){var c=!!(b&2),d=!!(a.fc&2);a.fc=b;c!=d&&Kb(a,c)}k.sn=function(a,b){var c=0,c=this.Ga==vh?this.fc&4?c|this.Oe&15:c|this.Oe>>4&1:this.fc&8?c|this.cd>>4:c|this.cd&15;this.fc&1&&Lh(this,2).ld&&(c=this.fc&2?c|32:c|16);this.ba(a,null,b,"PPI_C",P.Rj|P.Ta,c);return c};k.Lo=function(a,b,c){this.ba(a,b,c,"PPI_C",P.Ta);this.Zh=b};k.tn=function(a,b){var c=this.Kf;this.ba(a,null,b,"PPI_CTRL",P.Ta,c);return c};k.Mo=function(a,b,c){this.ba(a,b,c,"PPI_CTRL",P.Ta);this.Kf=b};
k.Gm=function(a,b){var c=this.Mg;this.ba(a,null,b,"8042_OUTBUFF",P.Ta,c);this.jb&=-258;var d=this.pb&&yi(this.pb,!0);d&&Ci(this,d);return c};k.bo=function(a,b,c){this.ba(a,b,c,"8042_INBUF.DATA",P.Ta);if(this.jb&8)switch(this.vd){case 96:this.Ec=b;this.jb=this.jb&-5|b&4;break;case 209:Di(this,b);break;default:if(this.Ec&=-17,this.pb){a=-1;switch(b){case 255:a=250,Ai(this.pb)}Ci(this,a)}}this.vd=b;this.jb&=-9};k.Hm=function(a,b){var c=this.fc&-193;this.ba(a,null,b,"8042_RWREG",P.Ta,c);this.fc^=16;return c};
k.co=function(a,b,c){this.ba(a,b,c,"8042_RWREG",P.Ta);zi(this,b)};k.Im=function(a,b){this.ba(a,null,b,"8042_STATUS",P.Ta,this.jb);var c=this.jb&255;this.jb&256&&(this.jb|=1,this.jb&=-257);return c};
k.ao=function(a,b,c){this.ba(a,b,c,"8042_INBUFF.CMD",P.Ta);this.vd=b;this.jb|=8;a=0;240<=this.vd&&(a=this.vd^15,this.vd=240);switch(this.vd){case 192:Ci(this,this.ue);break;case 173:this.Ec|=16;break;case 174:this.Ec&=-17;break;case 170:this.pb&&Bi(this.pb,!0);this.Ec|=16;Ci(this,85);Di(this,3);break;case 224:Ci(this,this.Ec&16?0:1);break;case 240:a&1&&vc(this.S)}};function Ci(a,b){0<=b&&(a.Mg=b,a.jb&=-2,a.jb|=256)}function Di(a,b){a.Xh=b;Wa(a.na,!!(b&2));b&1||vc(a.S)}
k.Wm=function(a,b){this.ba(a,null,b,"CMOS_ADDR",P.Ta,this.ve);return this.ve};k.ro=function(a,b,c){this.ba(a,b,c,"CMOS_ADDR",P.Ta);this.ve=b;this.Qg=b&128?0:128};k.Xm=function(a,b){var c=this.ve&63,d=13>=c?Mh(this,c):this.pa[c];this.ba(a,null,b,"CMOS_DATA["+p(c)+"]",P.Ta,d);return d};
k.so=function(a,b,c){var d=this.ve&63;this.ba(a,b,c,"CMOS_DATA["+p(d)+"]",P.Ta);a=this.pa;13>=d&&10>d&&(c=!1,this.pa[11]&4||(b=10*(b>>4)+(b&15),c=!0),4==d||5==d)&&(c&&12<b&&(b+=48),this.pa[11]&2||(12>=b?b=12==b?0:b:(b-=116,b=24==b?12:b)));a[d]=b};k.on=function(a,b){this.ba(a,null,b,"MFG_DATA",P.Ta,this.If);return this.If};k.Go=function(a,b,c){this.ba(a,b,c,"MFG_DATA",P.Ta);this.If=b};k.Io=function(a,b,c){this.ba(a,b,c,"NMI",P.Ta);this.Qg=b};
k.En=function(a){var b=this.S.G>>8;this.Z&&L(this.Z,this.Z.Ta)&&(this.Z.message("ChipSet.intBIOSRTC(AH="+p(b)+") at "+ca(a-this.S.ra.La,this.S.ra.oa)),Bc(this.S,a,function(a,d){return function(e){d=E(a.S)-d;var f="C="+(Pc(a.S)?1:0),g=a.S.J&255,h=a.S.J>>8,m=a.S.J&255,n=a.S.J>>8;if(2==b||3==b)f+=" CH(hour)="+r(h)+" CL(min)="+p(g)+" DH(sec)="+p(n);else if(4==b||5==b)f+=" CX(year)="+r(a.S.I)+" DH(month)="+p(n)+" DL(day)="+p(m);a.Fa("ChipSet.intBIOSRTC("+e+"): "+f+" (cycles="+d+")")}}(this,E(this.S))));
k.pn=function(a,b){var c=this.Rg;this.Kf&16&&(this.fc&128?c=this.cd:this.pb&&(c=yi(this.pb)));this.ba(a,null,b,"PPI_A",P.Ta,c);return c};k.Io=function(a,b,c){this.ba(a,b,c,"PPI_A",P.Ta);this.Rg=b};k.qn=function(a,b){var c=this.fc;this.ba(a,null,b,"PPI_B",P.Ta,c);return c};k.Jo=function(a,b,c){this.ba(a,b,c,"PPI_B",P.Ta);zi(this,b);this.pb&&(a=this.pb,c=b&128?!1:!0,b=b&64?!0:!1,a.oi!==b&&(a.oi=a.sk=b),a.qi!==c&&(a.qi=c))&&(a.sk?(Ai(a),a.sk=!1):Bi(a))};
function zi(a,b){var c=!!(b&2),d=!!(a.fc&2);a.fc=b;c!=d&&Kb(a,c)}k.rn=function(a,b){var c=0,c=this.Ga==vh?this.fc&4?c|this.Oe&15:c|this.Oe>>4&1:this.fc&8?c|this.cd>>4:c|this.cd&15;this.fc&1&&Lh(this,2).ld&&(c=this.fc&2?c|32:c|16);this.ba(a,null,b,"PPI_C",P.Rj|P.Ta,c);return c};k.Ko=function(a,b,c){this.ba(a,b,c,"PPI_C",P.Ta);this.Zh=b};k.sn=function(a,b){var c=this.Kf;this.ba(a,null,b,"PPI_CTRL",P.Ta,c);return c};k.Lo=function(a,b,c){this.ba(a,b,c,"PPI_CTRL",P.Ta);this.Kf=b};
k.Fm=function(a,b){var c=this.Mg;this.ba(a,null,b,"8042_OUTBUFF",P.Ta,c);this.jb&=-258;var d=this.pb&&yi(this.pb,!0);d&&Ci(this,d);return c};k.ao=function(a,b,c){this.ba(a,b,c,"8042_INBUF.DATA",P.Ta);if(this.jb&8)switch(this.vd){case 96:this.Ec=b;this.jb=this.jb&-5|b&4;break;case 209:Di(this,b);break;default:if(this.Ec&=-17,this.pb){a=-1;switch(b){case 255:a=250,Ai(this.pb)}Ci(this,a)}}this.vd=b;this.jb&=-9};k.Gm=function(a,b){var c=this.fc&-193;this.ba(a,null,b,"8042_RWREG",P.Ta,c);this.fc^=16;return c};
k.bo=function(a,b,c){this.ba(a,b,c,"8042_RWREG",P.Ta);zi(this,b)};k.Hm=function(a,b){this.ba(a,null,b,"8042_STATUS",P.Ta,this.jb);var c=this.jb&255;this.jb&256&&(this.jb|=1,this.jb&=-257);return c};
k.$n=function(a,b,c){this.ba(a,b,c,"8042_INBUFF.CMD",P.Ta);this.vd=b;this.jb|=8;a=0;240<=this.vd&&(a=this.vd^15,this.vd=240);switch(this.vd){case 192:Ci(this,this.ue);break;case 173:this.Ec|=16;break;case 174:this.Ec&=-17;break;case 170:this.pb&&Bi(this.pb,!0);this.Ec|=16;Ci(this,85);Di(this,3);break;case 224:Ci(this,this.Ec&16?0:1);break;case 240:a&1&&vc(this.S)}};function Ci(a,b){0<=b&&(a.Mg=b,a.jb&=-2,a.jb|=256)}function Di(a,b){a.Xh=b;Wa(a.na,!!(b&2));b&1||vc(a.S)}
k.Vm=function(a,b){this.ba(a,null,b,"CMOS_ADDR",P.Ta,this.ve);return this.ve};k.qo=function(a,b,c){this.ba(a,b,c,"CMOS_ADDR",P.Ta);this.ve=b;this.Qg=b&128?0:128};k.Wm=function(a,b){var c=this.ve&63,d=13>=c?Mh(this,c):this.pa[c];this.ba(a,null,b,"CMOS_DATA["+p(c)+"]",P.Ta,d);return d};
k.ro=function(a,b,c){var d=this.ve&63;this.ba(a,b,c,"CMOS_DATA["+p(d)+"]",P.Ta);a=this.pa;13>=d&&10>d&&(c=!1,this.pa[11]&4||(b=10*(b>>4)+(b&15),c=!0),4==d||5==d)&&(c&&12<b&&(b+=48),this.pa[11]&2||(12>=b?b=12==b?0:b:(b-=116,b=24==b?12:b)));a[d]=b};k.nn=function(a,b){this.ba(a,null,b,"MFG_DATA",P.Ta,this.If);return this.If};k.Fo=function(a,b,c){this.ba(a,b,c,"MFG_DATA",P.Ta);this.If=b};k.Ho=function(a,b,c){this.ba(a,b,c,"NMI",P.Ta);this.Qg=b};
k.Dn=function(a){var b=this.S.G>>8;this.Z&&L(this.Z,this.Z.Ta)&&(this.Z.message("ChipSet.intBIOSRTC(AH="+p(b)+") at "+ca(a-this.S.ra.La,this.S.ra.oa)),Bc(this.S,a,function(a,d){return function(e){d=E(a.S)-d;var f="C="+(Pc(a.S)?1:0),g=a.S.J&255,h=a.S.J>>8,m=a.S.J&255,n=a.S.J>>8;if(2==b||3==b)f+=" CH(hour)="+r(h)+" CL(min)="+p(g)+" DH(sec)="+p(n);else if(4==b||5==b)f+=" CX(year)="+r(a.S.I)+" DH(month)="+p(n)+" DL(day)="+p(m);a.Fa("ChipSet.intBIOSRTC("+e+"): "+f+" (cycles="+d+")")}}(this,E(this.S))));
return!0};function wh(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c}
function Kb(a,b){if(a.di){void 0!==b?a.uk=b:b=a.uk&&a.S&&a.S.Ob;var c=Math.round(1193181/xi(a,2));if(20>c||2E4<c)b=!1;b?a.pd?(a.pd.frequency.value=c,a.Fa("speaker set to "+c+"hz",P.Cg)):(a.pd=a.di.createOscillator(),a.pd.type=1,a.pd.connect(a.di.destination),a.pd.frequency.value=c,a.Fa("speaker on at "+c+"hz",P.Cg),a.pd.noteOn(0)):a.pd&&(a.pd.noteOff(0),a.pd.disconnect(),delete a.pd,a.Fa("speaker off at "+c+"hz",P.Cg))}else b&&a.Fa("BEEP",P.Cg)}
k.Fa=function(a,b,c){this.Z&&(null==b&&(b=P.Ta),void 0!==c&&(b|=0==c?P.Re:1==c?P.Qj:6==c?P.Bg:0),L(this.Z,b)&&this.Z.message(a))};k.ba=function(a,b,c,d,e,f){this.Z&&(null==e&&(e=P.Ta),this.Z.ba(this,a,b,c,d,e,f))};
var Dh={0:function(a,b){return $h(this,0,0,a,b)},1:function(a,b){return bi(this,0,0,a,b)},2:function(a,b){return $h(this,0,1,a,b)},3:function(a,b){return bi(this,0,1,a,b)},4:function(a,b){return $h(this,0,2,a,b)},5:function(a,b){return bi(this,0,2,a,b)},6:function(a,b){return $h(this,0,3,a,b)},7:function(a,b){return bi(this,0,3,a,b)},8:function(a,b){return di(this,0,a,b)},32:function(a,b){return oi(this,0,b)},33:function(a,b){return ri(this,0,b)},64:function(a,b){return ui(this,0,b)},65:function(a,
b){return ui(this,1,b)},66:function(a,b){return ui(this,2,b)},67:P.prototype.yn,129:function(a,b){return ii(this,0,2,a,b)},130:function(a,b){return ii(this,0,3,a,b)},131:function(a,b){return ii(this,0,1,a,b)},135:function(a,b){return ii(this,0,0,a,b)}},Fh={96:P.prototype.qn,97:P.prototype.rn,98:P.prototype.sn,99:P.prototype.tn},Hh={96:P.prototype.Gm,97:P.prototype.Hm,100:P.prototype.Im,112:P.prototype.Wm,113:P.prototype.Xm,128:P.prototype.on,132:function(a,b){return ki(this,0,a,b)},133:function(a,
b){return ui(this,1,b)},66:function(a,b){return ui(this,2,b)},67:P.prototype.xn,129:function(a,b){return ii(this,0,2,a,b)},130:function(a,b){return ii(this,0,3,a,b)},131:function(a,b){return ii(this,0,1,a,b)},135:function(a,b){return ii(this,0,0,a,b)}},Fh={96:P.prototype.pn,97:P.prototype.qn,98:P.prototype.rn,99:P.prototype.sn},Hh={96:P.prototype.Fm,97:P.prototype.Gm,100:P.prototype.Hm,112:P.prototype.Vm,113:P.prototype.Wm,128:P.prototype.nn,132:function(a,b){return ki(this,0,a,b)},133:function(a,
b){return ki(this,1,a,b)},134:function(a,b){return ki(this,2,a,b)},136:function(a,b){return ki(this,3,a,b)},137:function(a,b){return ii(this,1,2,a,b)},138:function(a,b){return ii(this,1,3,a,b)},139:function(a,b){return ii(this,1,1,a,b)},140:function(a,b){return ki(this,4,a,b)},141:function(a,b){return ki(this,5,a,b)},142:function(a,b){return ki(this,6,a,b)},143:function(a,b){return ii(this,1,0,a,b)},160:function(a,b){return oi(this,1,b)},161:function(a,b){return ri(this,1,b)},192:function(a,b){return $h(this,
1,0,a,b)},194:function(a,b){return bi(this,1,0,a,b)},196:function(a,b){return $h(this,1,1,a,b)},198:function(a,b){return bi(this,1,1,a,b)},200:function(a,b){return $h(this,1,2,a,b)},202:function(a,b){return bi(this,1,2,a,b)},204:function(a,b){return $h(this,1,3,a,b)},206:function(a,b){return bi(this,1,3,a,b)},208:function(a,b){return di(this,1,a,b)}},Eh={0:function(a,b,c){ai(this,0,0,a,b,c)},1:function(a,b,c){ci(this,0,0,a,b,c)},2:function(a,b,c){ai(this,0,1,a,b,c)},3:function(a,b,c){ci(this,0,1,
a,b,c)},4:function(a,b,c){ai(this,0,2,a,b,c)},5:function(a,b,c){ci(this,0,2,a,b,c)},6:function(a,b,c){ai(this,0,3,a,b,c)},7:function(a,b,c){ci(this,0,3,a,b,c)},8:function(a,b,c){this.ba(a,b,c,"DMA0.CMD",P.Fb);this.$a[0].Yh=b},9:function(a,b,c){ei(this,0,a,b,c)},10:function(a,b,c){fi(this,0,a,b,c)},11:function(a,b,c){this.ba(a,b,c,"DMA0.MODE",P.Fb);this.$a[0].Hb[b&3].mode=b},12:function(a,b,c){this.ba(a,b,c,"DMA0.INDEX",P.Fb);this.$a[0].nb=0},13:function(a,b,c){hi(this,0,a,b,c)},32:function(a,b,c){pi(this,
0,b,c)},33:function(a,b,c){si(this,0,b,c)},64:function(a,b,c){wi(this,0,b,c)},65:function(a,b,c){wi(this,1,b,c)},66:function(a,b,c){wi(this,2,b,c)},67:P.prototype.Qo,129:function(a,b,c){ji(this,0,2,a,b,c)},130:function(a,b,c){ji(this,0,3,a,b,c)},131:function(a,b,c){ji(this,0,1,a,b,c)},135:function(a,b,c){ji(this,0,0,a,b,c)}},Gh={96:P.prototype.Jo,97:P.prototype.Ko,98:P.prototype.Lo,99:P.prototype.Mo,160:P.prototype.Io},Ih={96:P.prototype.bo,97:P.prototype.co,100:P.prototype.ao,112:P.prototype.ro,
113:P.prototype.so,128:P.prototype.Go,132:function(a,b,c){li(this,0,a,b,c)},133:function(a,b,c){li(this,1,a,b,c)},134:function(a,b,c){li(this,2,a,b,c)},136:function(a,b,c){li(this,3,a,b,c)},137:function(a,b,c){ji(this,1,2,a,b,c)},138:function(a,b,c){ji(this,1,3,a,b,c)},139:function(a,b,c){ji(this,1,1,a,b,c)},140:function(a,b,c){li(this,4,a,b,c)},141:function(a,b,c){li(this,5,a,b,c)},142:function(a,b,c){li(this,6,a,b,c)},143:function(a,b,c){ji(this,1,0,a,b,c)},160:function(a,b,c){pi(this,1,b,c)},161:function(a,
0,b,c)},33:function(a,b,c){si(this,0,b,c)},64:function(a,b,c){wi(this,0,b,c)},65:function(a,b,c){wi(this,1,b,c)},66:function(a,b,c){wi(this,2,b,c)},67:P.prototype.Po,129:function(a,b,c){ji(this,0,2,a,b,c)},130:function(a,b,c){ji(this,0,3,a,b,c)},131:function(a,b,c){ji(this,0,1,a,b,c)},135:function(a,b,c){ji(this,0,0,a,b,c)}},Gh={96:P.prototype.Io,97:P.prototype.Jo,98:P.prototype.Ko,99:P.prototype.Lo,160:P.prototype.Ho},Ih={96:P.prototype.ao,97:P.prototype.bo,100:P.prototype.$n,112:P.prototype.qo,
113:P.prototype.ro,128:P.prototype.Fo,132:function(a,b,c){li(this,0,a,b,c)},133:function(a,b,c){li(this,1,a,b,c)},134:function(a,b,c){li(this,2,a,b,c)},136:function(a,b,c){li(this,3,a,b,c)},137:function(a,b,c){ji(this,1,2,a,b,c)},138:function(a,b,c){ji(this,1,3,a,b,c)},139:function(a,b,c){ji(this,1,1,a,b,c)},140:function(a,b,c){li(this,4,a,b,c)},141:function(a,b,c){li(this,5,a,b,c)},142:function(a,b,c){li(this,6,a,b,c)},143:function(a,b,c){ji(this,1,0,a,b,c)},160:function(a,b,c){pi(this,1,b,c)},161:function(a,
b,c){si(this,1,b,c)},192:function(a,b,c){ai(this,1,0,a,b,c)},194:function(a,b,c){ci(this,1,0,a,b,c)},196:function(a,b,c){ai(this,1,1,a,b,c)},198:function(a,b,c){ci(this,1,1,a,b,c)},200:function(a,b,c){ai(this,1,2,a,b,c)},202:function(a,b,c){ci(this,1,2,a,b,c)},204:function(a,b,c){ai(this,1,3,a,b,c)},206:function(a,b,c){ci(this,1,3,a,b,c)},208:function(a,b,c){this.ba(a,b,c,"DMA1.CMD",P.Fb);this.$a[1].Yh=b},210:function(a,b,c){ei(this,1,a,b,c)},212:function(a,b,c){fi(this,1,a,b,c)},214:function(a,b,
c){this.ba(a,b,c,"DMA1.MODE",P.Fb);this.$a[1].Hb[b&3].mode=b},216:function(a,b,c){this.ba(a,b,c,"DMA1.INDEX",P.Fb);this.$a[1].nb=0},218:function(a,b,c){hi(this,1,a,b,c)}};za(function(){for(var a=A(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new P(d);Ma(d,c);Nh(d)}});
function Ei(a){w.call(this,"ROM",a,Ei);this.xb=null;this.Zj=a.addr;this.Kh=a.size;this.om=a.alias;this.tg=a.file;this.Ck=a.notify;if(this.tg){a=this.tg;var b=ea(this.tg);"json"!=b&&"hex"!=b&&(a=qa()+"/api/v1/dump?file="+this.tg+"&format=bytes&decimal=true");pa(a,!0,null,this,Ei.prototype.Wn)}}x(w,Ei);Ei.prototype.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;Fi(this)};Ei.prototype.bc=function(){this.Th&&(this.Z&&Gi(this.Z,this.Zj,this.Kh,this.Th),delete this.Th);return!0};Ei.prototype.Yb=function(){return!0};
Ei.prototype.Wn=function(a,b,c){if(c)this.Ha("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.xb=e;else if(f)for(this.xb=Array(4*f.length),c=b=0;b<f.length;b++)this.xb[c++]=f[b]&255,this.xb[c++]=f[b]>>8&255,this.xb[c++]=f[b]>>16&255,this.xb[c++]=f[b]>>24&255;else this.xb=d;this.Th=d.symbols;if(!this.xb.length){v("Empty ROM: "+a);return}if(1==this.xb.length){v(this.xb[0]);return}}catch(g){this.Ha("ROM data error: "+
g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.xb=Array(a.length),d=0;d<a.length;d++)this.xb[d]=parseInt(a[d],16);Fi(this)}};function Fi(a){if(!Pa(a))if(!a.tg)a.Sa();else if(a.xb&&a.na){if(a.xb.length!=a.Kh)Qa(a,"ROM size (0x"+l(a.xb.length)+") does not match specified size (0x"+l(a.Kh)+")");else if(Hi(a,a.Zj)&&Hi(a,a.om)){if(a.Ck){var b=Ka(a.Ck,a.id);b&&("ega"==b.Ga&&Ii(b,a.xb,[8752,12640],8),b.Sa())}delete a.xb}a.Sa()}}
function Hi(a,b){if(null==b)return!0;if(Xa(a.na,b,a.Kh,!0)){for(var c=0;c<a.xb.length;c++)bb(a.na,b+c,a.xb[c]);return!0}return!1}za(function(){for(var a=A(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Ei(d);Ma(d,c)}});function Ni(a){w.call(this,"RAM",a,Ni);this.Kg=a.addr;this.Od=a.size;this.xm=a.test;this.vm=!!this.Od;this.dh=!1}x(w,Ni);Ni.prototype.pc=function(a,b,c){this.na=b;this.S=c;this.Da=a;this.ka=B(a,"ChipSet");this.Sa()};
function Ei(a){w.call(this,"ROM",a,Ei);this.xb=null;this.Zj=a.addr;this.Kh=a.size;this.nm=a.alias;this.tg=a.file;this.Ck=a.notify;if(this.tg){a=this.tg;var b=ea(this.tg);"json"!=b&&"hex"!=b&&(a=qa()+"/api/v1/dump?file="+this.tg+"&format=bytes&decimal=true");pa(a,!0,null,this,Ei.prototype.Vn)}}x(w,Ei);Ei.prototype.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;Fi(this)};Ei.prototype.bc=function(){this.Th&&(this.Z&&Gi(this.Z,this.Zj,this.Kh,this.Th),delete this.Th);return!0};Ei.prototype.Yb=function(){return!0};
Ei.prototype.Vn=function(a,b,c){if(c)this.Ha("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.xb=e;else if(f)for(this.xb=Array(4*f.length),c=b=0;b<f.length;b++)this.xb[c++]=f[b]&255,this.xb[c++]=f[b]>>8&255,this.xb[c++]=f[b]>>16&255,this.xb[c++]=f[b]>>24&255;else this.xb=d;this.Th=d.symbols;if(!this.xb.length){v("Empty ROM: "+a);return}if(1==this.xb.length){v(this.xb[0]);return}}catch(g){this.Ha("ROM data error: "+
g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.xb=Array(a.length),d=0;d<a.length;d++)this.xb[d]=parseInt(a[d],16);Fi(this)}};function Fi(a){if(!Pa(a))if(!a.tg)a.Sa();else if(a.xb&&a.na){if(a.xb.length!=a.Kh)Qa(a,"ROM size (0x"+l(a.xb.length)+") does not match specified size (0x"+l(a.Kh)+")");else if(Hi(a,a.Zj)&&Hi(a,a.nm)){if(a.Ck){var b=Ka(a.Ck,a.id);b&&("ega"==b.Ga&&Ii(b,a.xb,[8752,12640],8),b.Sa())}delete a.xb}a.Sa()}}
function Hi(a,b){if(null==b)return!0;if(Xa(a.na,b,a.Kh,!0)){for(var c=0;c<a.xb.length;c++)bb(a.na,b+c,a.xb[c]);return!0}return!1}za(function(){for(var a=A(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Ei(d);Ma(d,c)}});function Ni(a){w.call(this,"RAM",a,Ni);this.Kg=a.addr;this.Od=a.size;this.wm=a.test;this.um=!!this.Od;this.dh=!1}x(w,Ni);Ni.prototype.pc=function(a,b,c){this.na=b;this.S=c;this.Da=a;this.ka=B(a,"ChipSet");this.Sa()};
Ni.prototype.bc=function(a,b){b||this.reset();return!0};Ni.prototype.Yb=function(){return!0};
Ni.prototype.reset=function(){if(!this.Kg&&!this.vm&&this.ka){var a=1024*Rh(this.ka);this.Od&&a!=this.Od&&(Za(this.na,this.Kg,this.Od),this.dh=!1);this.Od=a}!this.dh&&this.Od&&Xa(this.na,this.Kg,this.Od)&&(this.dh=!0,this.status(Math.floor(this.Od/1024)+"Kb"));if(this.dh){if(this.xm||cb(this.na,1138,4660),this.ka&&(a=this.ka,a.pa)){var b=1048576>this.Kg?21:23,c=a.pa[b]|a.pa[b+1]<<8,c=c+(this.Od>>10);a.pa[b]=c&255;a.pa[b+1]=c>>8;Vh(a)}}else v("No RAM allocated")};
za(function(){for(var a=A(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Ni(d);Ma(d,c)}});function Oi(a){w.call(this,"Keyboard",a,Oi);this.Sh={};this.Mn=250;this.Nn=100;this.Sa()}x(w,Oi);
Ni.prototype.reset=function(){if(!this.Kg&&!this.um&&this.ka){var a=1024*Rh(this.ka);this.Od&&a!=this.Od&&(Za(this.na,this.Kg,this.Od),this.dh=!1);this.Od=a}!this.dh&&this.Od&&Xa(this.na,this.Kg,this.Od)&&(this.dh=!0,this.status(Math.floor(this.Od/1024)+"Kb"));if(this.dh){if(this.wm||cb(this.na,1138,4660),this.ka&&(a=this.ka,a.pa)){var b=1048576>this.Kg?21:23,c=a.pa[b]|a.pa[b+1]<<8,c=c+(this.Od>>10);a.pa[b]=c&255;a.pa[b+1]=c>>8;Vh(a)}}else v("No RAM allocated")};
za(function(){for(var a=A(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Ni(d);Ma(d,c)}});function Oi(a){w.call(this,"Keyboard",a,Oi);this.Sh={};this.Ln=250;this.Mn=100;this.Sa()}x(w,Oi);
var Pi={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,backspace:14,tab:15,q:16,w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,squote:40,bquote:41,lshift:42,bslash:43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,rshift:54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,home:71,"up-arrow":72,"page-up":73,"num-minus":74,
"left-arrow":75,center:76,"right-arrow":77,"num-plus":78,end:79,"down-arrow":80,"page-down":81,ins:82,del:83},Qi={tab:9,esc:27,rshift:224,lshift:240,ctrl:241,alt:242,"caps-lock":244,f1:336,f2:337,f3:338,f4:339,f5:340,f6:341,f7:342,f8:343,f9:344,f10:345,"left-arrow":261,"up-arrow":262,"right-arrow":263,"down-arrow":264,"ctrl-c":3,"ctrl-break":254,"ctrl-alt-del":255},R=[];R[32]=57;R[49]=2;R[33]=61442;R[50]=3;R[64]=61443;R[51]=4;R[35]=61444;R[52]=5;R[36]=61445;R[53]=6;R[37]=61446;R[54]=7;R[94]=61447;
R[55]=8;R[38]=61448;R[56]=9;R[42]=61449;R[57]=10;R[40]=61450;R[48]=11;R[41]=61451;R[45]=12;R[95]=61452;R[61]=13;R[43]=61453;R[113]=16;R[81]=61456;R[119]=17;R[87]=61457;R[101]=18;R[69]=61458;R[114]=19;R[82]=61459;R[116]=20;R[84]=61460;R[121]=21;R[89]=61461;R[117]=22;R[85]=61462;R[105]=23;R[73]=61463;R[111]=24;R[79]=61464;R[112]=25;R[80]=61465;R[91]=26;R[123]=61466;R[93]=27;R[125]=61467;R[97]=30;R[65]=61470;R[115]=31;R[83]=61471;R[100]=32;R[68]=61472;R[102]=33;R[70]=61473;R[103]=34;R[71]=61474;
R[104]=35;R[72]=61475;R[106]=36;R[74]=61476;R[107]=37;R[75]=61477;R[108]=38;R[76]=61478;R[59]=39;R[58]=61479;R[39]=40;R[34]=61480;R[96]=41;R[126]=61481;R[92]=43;R[124]=61483;R[122]=44;R[90]=61484;R[120]=45;R[88]=61485;R[99]=46;R[67]=61486;R[118]=47;R[86]=61487;R[98]=48;R[66]=61488;R[110]=49;R[78]=61489;R[109]=50;R[77]=61490;R[44]=51;R[60]=61491;R[46]=52;R[62]=61492;R[47]=53;R[63]=61493;R[8]=14;R[9]=15;R[13]=28;R[27]=1;R[240]=42;R[224]=54;R[241]=29;R[242]=56;R[244]=58;R[336]=59;R[337]=60;R[338]=61;
R[339]=62;R[340]=63;R[341]=64;R[342]=65;R[343]=66;R[344]=67;R[345]=68;R[261]=75;R[262]=72;R[263]=77;R[264]=80;R[254]=61766;R[255]=15921491;k=Oi.prototype;
k.wb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.ta[a])switch(c){case "kbd":return this.ta[a]=d,d.onkeydown=function(a){return Ri(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.Ea&32?e.Ea&=-33:b=e.Ea&12?!1:!Si(e,a);return b},d.onkeyup=function(a){return Ri(e,a,!1)},!0;default:if(void 0!==Qi[c]&&"button"==b)return this.ta[a]=d,d.onclick=function(a,b,c){return function(){a.S&&a.S.Md();return!Si(a,c)}}(this,c,Qi[c]),!0;if(void 0!==Pi[c])return this.ta[a]=
d,b=function(a,b,c){return function(){Ti(a,c)}}(this,c,Pi[c]),c=function(a,b,c){return function(){Ti(a,c)}}(this,c,Pi[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;this.Da=a;this.ka=B(a,"ChipSet")};k.Sa=function(){this.rk=(this.Fm=ta("iOS"))||ta("Android");this.Fa("mobile keyboard support: "+(this.rk?"true":"false"));return w.prototype.Sa.call(this)};
d,b=function(a,b,c){return function(){Ti(a,c)}}(this,c,Pi[c]),c=function(a,b,c){return function(){Ti(a,c)}}(this,c,Pi[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;this.Da=a;this.ka=B(a,"ChipSet")};k.Sa=function(){this.rk=(this.Em=ta("iOS"))||ta("Android");this.Fa("mobile keyboard support: "+(this.rk?"true":"false"));return w.prototype.Sa.call(this)};
function Ai(a){a.Fa("keyboard reset",!0);a.yc=[170];a.ka&&Q(a.ka,1,4)}function yi(a,b){var c=0;a.yc.length&&(c=a.yc[0],a.Fa("scan code "+p(c)+" delivered"),b&&Bi(a));return c}function Bi(a,b){0<a.yc.length&&(b?a.yc=[]:(a.yc.shift(),0<a.yc.length&&a.ka&&Q(a.ka,1)))}k.bc=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};k.Yb=function(a){return a&&this.save?this.save():!0};
k.reset=function(){this.ge();this.Ea=0;this.yc=[];if(this.rd)for(var a in this.rd)aa(a)||this.rd[a]&&clearTimeout(this.rd[a]);this.rd=[];this.Ql=this.Le=0};k.save=function(){var a=new H(this);a.set(0,this.Lj());return a.data()};k.restore=function(a){return this.ge(a[0])};k.ge=function(a){var b=0;void 0===a&&(a=[]);this.oi=a[b++];this.qi=a[b];return!0};k.Lj=function(){var a=0,b=[];b[a++]=this.oi;b[a]=this.qi;return b};
function Ti(a,b){var c=b&127,d=c==b;if(a.yc)if(20>a.yc.length){if(!(!d&&!a.Sh[c]||d&&a.Sh[c])){a.Sh[c]=d;a.Fa("scan code "+p(b)+" buffered");a.yc.push(b);1==a.yc.length&&a.ka&&Q(a.ka,1);for(var e in Pi)if(Pi[e]==c){(c=a.ta["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.yc.length&&a.yc.push(255),a.Fa("scan code buffer overflow")}function Ui(a,b){var c=b?a.Nn:a.Mn;a.S&&a.S.md&&(c/=a.S.md);return c}
function Ti(a,b){var c=b&127,d=c==b;if(a.yc)if(20>a.yc.length){if(!(!d&&!a.Sh[c]||d&&a.Sh[c])){a.Sh[c]=d;a.Fa("scan code "+p(b)+" buffered");a.yc.push(b);1==a.yc.length&&a.ka&&Q(a.ka,1);for(var e in Pi)if(Pi[e]==c){(c=a.ta["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.yc.length&&a.yc.push(255),a.Fa("scan code buffer overflow")}function Ui(a,b){var c=b?a.Mn:a.Ln;a.S&&a.S.md&&(c/=a.S.md);return c}
function Vi(a,b){!a.Le||void 0!==b&&b==a.Le||(clearTimeout(a.rd[a.Le]),Wi(a,a.Le,!1))}
function Ri(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Ql=f);240==f+224?(a.Ea&=-2,c&&(a.Ea|=1),f+=224,e=!1):241==f+224?(a.Ea&=-5,c&&(a.Ea|=4),f+=224,e=!1):242==f+224?(a.Ea&=-9,c&&(a.Ea|=8),f+=224,e=!1):244==f+224?(a.Ea&=-17,c&&(a.Ea|=16),f+=224,d=Si(a,f)):91==f?(a.Ea&=-33,c&&(a.Ea|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.Ea&12)&&(f=254),d=c?!Si(a,f):!1):void 0!==R[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.Ea&=-33,a.rk||f!=a.Ql||Vi(a));void 0===d&&(d=!Wi(a,f,c));return d}
function Si(a,b,c){var d=!1;Vi(a,b);Wi(a,b,!0)&&(c?Wi(a,b,!1):(c=!1,a.rd[b]&&(clearTimeout(a.rd[b]),c=!0),c=Ui(a,c),a.rd[a.Le=b]=setTimeout(function(a){return function(){Wi(a,b,!1)}}(a),c)),d=!0);return d}
function Wi(a,b,c){var d=!1;c||(a.rd[b]=null,a.Le==b&&(a.Le=0));var e=R[b];void 0===e&&1<=b&&26>=b&&(e=R[b+64]&255|61696);if(void 0!==e){14==e&&12==(a.Ea&12)&&(e=83);b=[];for(b.push(e&255|(c?0:128));e>>=8;){var d=0,f=e&255;240==f?a.Ea&17||(d=42):224==f?a.Ea&18||(d=54):241==f?a.Ea&4||(d=29):242==f&&(a.Ea&8||(d=56));d&&(c?b.unshift(d):b.push(d|128))}for(c=0;c<b.length;c++)Ti(a,b[c]);d=!0}return d}k.Fa=function(a,b){this.Z&&L(this.Z,this.Z.Qj|(b?this.Z.Sj:0))&&this.Z.message(a)};
za(function(){for(var a=A(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Oi(d);Ma(d,c)}});
function S(a,b,c,d){w.call(this,"Video",a,S);this.Ga=a.model;this.Tc=0;"ega"==this.Ga&&(this.Yl=a.switches,this.Tc=a.memory||0);this.od=a.mode;if(void 0===this.od||void 0===T[this.od])this.od=Xi;this.vh=a.charCols;this.Ki=a.charRows;if(void 0===this.vh||void 0===this.Ki)this.vh=T[this.od][0],this.Ki=T[this.od][1];this.xd=a.screenWidth;this.de=a.screenHeight;this.wm=a.scale;this.um=12<=Math.round(this.xd/this.vh);this.ym=a.touchScreen;this.Mb=b;this.Vc=c;this.cm=d;this.eb=this.uc=0;this.Td=[];this.ud=
Array(16);this.ri=!1;var e=this;this.Mb&&(this.Mb.onfocus=function(){e.ri=!0},this.Mb.onblur=function(){e.ri=!1});if(a=a.fontROM)"json"!=ea(a)&&(a=qa()+"/api/v1/dump?file="+a+"&format=bytes"),pa(a,!0,null,this,this.Xn)}x(w,S);
function S(a,b,c,d){w.call(this,"Video",a,S);this.Ga=a.model;this.Tc=0;"ega"==this.Ga&&(this.Yl=a.switches,this.Tc=a.memory||0);this.od=a.mode;if(void 0===this.od||void 0===T[this.od])this.od=Xi;this.vh=a.charCols;this.Ki=a.charRows;if(void 0===this.vh||void 0===this.Ki)this.vh=T[this.od][0],this.Ki=T[this.od][1];this.xd=a.screenWidth;this.de=a.screenHeight;this.vm=a.scale;this.tm=12<=Math.round(this.xd/this.vh);this.xm=a.touchScreen;this.Mb=b;this.Vc=c;this.cm=d;this.eb=this.uc=0;this.Td=[];this.ud=
Array(16);this.ri=!1;var e=this;this.Mb&&(this.Mb.onfocus=function(){e.ri=!0},this.Mb.onblur=function(){e.ri=!1});if(a=a.fontROM)"json"!=ea(a)&&(a=qa()+"/api/v1/dump?file="+a+"&format=bytes"),pa(a,!0,null,this,this.Wn)}x(w,S);
var Yi={2:{Mi:15700,Li:208,Bj:85,Cj:96},3:{Mi:18432,Li:364,Bj:85,Cj:96},4:{Mi:21850,Li:364,Bj:85,Cj:96}},Zi={6:[1,3,!0],7:[2,3,!0],8:[5,3,!0],9:[4,3,!0],10:[3,1,!0],11:[3,2,!0],0:[1,3,!1],1:[2,3,!1],2:[5,3,!1],3:[4,3,!1],4:[3,1,!1],5:[3,2,!1]},Xi=7,T=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];T[Xi]=[80,25,1,0,1];T[13]=[320,200,16];T[14]=[640,200,16];T[15]=[640,350,16];T[16]=[640,350,16];T[0]=T[1];T[2]=T[3];T[5]=T[4];var $i=Array(5);$i[0]=[0,0,0,255];$i[1]=[127,192,127,255];
$i[2]=[127,192,127,255];$i[3]=[127,255,127,255];$i[4]=[127,255,127,255];var aj=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],U=Array(16);U[0]=[0,0,0,255];U[1]=[0,0,170,255];U[2]=[0,170,0,255];U[3]=[0,170,170,255];U[4]=[170,0,0,255];U[5]=[170,0,170,255];U[6]=[170,85,0,255];U[7]=[170,170,170,255];U[8]=[85,85,85,255];U[9]=[85,85,255,255];U[10]=[85,255,85,255];U[11]=[85,255,255,255];U[12]=[255,85,85,255];U[13]=[255,85,255,255];U[14]=[255,255,85,255];U[15]=[255,255,255,255];
var bj=[2,4,6],cj=[3,5,7],dj=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],ej=[0,255,65280,65535,16711680,16711935,16776960,16777215,4278190080,4278190335,4278255360,4278255615,4294901760,4294902015,4294967040,4294967295],V=[0];V[128]=1;V[32768]=2;V[32896]=3;V[8388608]=4;V[8388736]=5;V[8421376]=6;V[8421504]=7;V[2147483648]=8;V[2147483776]=9;V[2147516416]=10;V[2147516544]=11;V[2155872256]=12;V[2155872384]=13;V[2155905024]=14;V[2155905152]=15;
function fj(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=gj[b],f=a.he||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(hj)];this.Z=a.Z;this.type=e[0];this.port=e[1];this.fe=b;this.eb=e[2];this.uc=e[3];this.Tc=d||e[4];65536<=this.Tc&&720896<=this.eb&&(this.uc=Math.min(this.Tc>>2,32768));this.mc=c[0];this.zc=c[1];this.Ye=c[2];this.tf=c[3];this.oc=c[4]&255;this.lh=c[4]>>8&255;this.dc=c[5];this.Ei=hj;this.Lg=ij;if(5==b){this.Ei=jj;this.Lg=kj;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.Tc,Array(this.Tc>>2),771,0,4294967295,0,4294967295,0,4294967295,0]);this.jd=b[0];this.Bd=b[1];this.Rd=b[2];this.Uh=lj;this.Mh=b[3];this.Yf=b[4];this.kh=b[5];this.Dd=b[6];this.Bf=b[7];this.Wh=mj;this.yi=b[8];this.zi=b[9];this.Cd=b[10];this.re=b[11];this.Vh=nj;this.vb=b[12];d=this.Tc>>2;if((this.fd=b[14])&&this.fd.length<d){for(var e=this.fd,g=0,h=Array(d),m=0;m<e.length-1;){for(var n=e[m++],q=e[m++];n--;)h[g]=q,g+=2;g==d&&(g=1)}this.fd=h}this.Jh(b[15]);this.wj=b[16];this.hb=b[17];
this.nd=b[18];this.lb=b[19];this.yh=b[20];this.je=b[21];this.Ie=b[22];this.Gi=b[23];this.Hi=b[24]}f=Yi[f]||Yi[3];this.Ii=a.S.Hd/f.Mi|0;this.Qn=this.Ii*f.Bj/100|0;this.Kk=this.Ii*f.Li;this.Tn=this.Kk*f.Cj/100|0;this.Ni=null==c[7]?0:c[7]}}
this.nd=b[18];this.lb=b[19];this.yh=b[20];this.je=b[21];this.Ie=b[22];this.Gi=b[23];this.Hi=b[24]}f=Yi[f]||Yi[3];this.Ii=a.S.Hd/f.Mi|0;this.Pn=this.Ii*f.Bj/100|0;this.Kk=this.Ii*f.Li;this.Sn=this.Kk*f.Cj/100|0;this.Ni=null==c[7]?0:c[7]}}
var hj=18,jj=25,ij="HORZ_TOTAL HORZ_DISP HORZ_SYNC_POS HORZ_SYNC_WIDTH VERT_TOTAL VERT_TOTAL_ADJ VERT_DISP VERT_SYNC_POS INTERLACE_POS MAX_SCAN_LINE CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO".split(" "),kj="HORZ_TOTAL HORZ_DISP_END HORZ_BLANK_START HORZ_BLANK_END HORZ_RETRACE_START HORZ_RETRACE_END VERT_TOTAL CRTC_OVERFLOW PRESET_ROW_SCAN MAX_SCAN_LINE CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO VERT_DISP_END OFFSET UNDERLINE VERT_BLANK_START VERT_BLANK_END MODE_CTRL LONE_COMPARE".split(" "),
lj="PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVRSCAN PLANES HORZPAN".split(" "),mj=["RESET","CLK","MAPMASK","CHARMAP","MODE"],nj="SRESET ESRESET COLRCMP DATAROT READMAP MODE MISC COLRDC BITMASK".split(" ");function oj(a){return this.tc(a)|this.tc(a+1)<<8}function pj(a,b){this.Cc(a,b&255);this.Cc(a+1,b>>8&255)}
var W=[,,function(a){a+=this.offset;return(this.ia.vb=this.qa[a])>>this.ia.wj&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.qa[b]>>8:this.qa[b])&255}];W[16]=function(a){a+=this.offset;a=this.qa[a];for(var b=this.ia.Gi&this.ia.Hi,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};W[512]=function(a,b){var c=a+this.offset,d;d=this.qa[c]&~this.ia.hb|(b|b<<8|b<<16|b<<24)&this.ia.hb;d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)};
@ -511,18 +511,18 @@ W[40960]=function(a,b){var c=a+this.offset,d=ej[b&15],d=d|this.ia.vb,d=d&this.ia
function qj(a){var b=[];if(void 0!==a.fe){b[0]=a.mc;b[1]=a.zc;b[2]=a.Ye;b[3]=a.tf;b[4]=a.oc|a.lh<<8;b[5]=a.dc;if(5==a.fe){var c=[];c[0]=a.jd;c[1]=a.Bd;c[2]=a.Rd;c[3]=a.Mh;c[4]=a.Yf;c[5]=a.kh;c[6]=a.Dd;c[7]=a.Bf;c[8]=a.yi;c[9]=a.zi;c[10]=a.Cd;c[11]=a.re;c[12]=a.vb;c[13]=a.Tc;var d;a:if(d=a.fd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h<d.length;){for(var m=d[h],n=h+2;n<d.length&&d[n]===m;)n+=2;f[e++]=n-h>>1;f[e++]=m;h=n}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=a.sh;c[16]=
a.wj;c[17]=a.hb;c[18]=a.nd;c[19]=a.lb;c[20]=a.yh;c[21]=a.je;c[22]=a.Ie;c[23]=a.Gi;c[24]=a.Hi;b[6]=c}b[7]=a.Ni}return b}function rj(a,b,c,d,e){if(d){var f="",g,h=0;for(g=0;g<e.length;g++)h<e[g].length&&(h=e[g].length);h++;for(g=0;g<e.length;g++){f&&(f+="\n");var m=e[g],f=f+(b+"["+p(g)+"]: "+(m+" ".substr(0,h-m.length))+p(d[g])+(g===c?"*":""))}a.Z.message(f)}else a.Z.message(b+": "+p(c))}
fj.prototype.Jh=function(a){if(null!=a&&a!=this.sh){var b=a&255,c=W[b];c||b&1&&(c=W[1]);var b=a&65280,d=W[b];d||b&256&&(d=W[256]);this.Ff||(this.Ff=[null,oj,null,pj]);this.Ff[0]=c;this.Ff[2]=d;this.sh=a}};var gj=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];k=S.prototype;
k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;gb(b,this,sj);kb(b,this,tj);"ega"==this.Ga&&(gb(b,this,uj),kb(b,this,vj));if(d){var e=this;Ac(this.S,16,this,this.Fn);Kh(d,d.Dg,function(a){if(e.Ba)if(a){var b=e.Ba;if(b.fd){a=ba(a);a=void 0!==a?a-b.eb:b.Wo||0;0>a&&(a=0);for(var c="",d=0;8>d;d++){for(var n=l(b.eb+a)+":",q=0;8>q&&a<b.fd.length;q++)var t=b.fd[a++],n=n+(" "+l(t));c&&(c+="\n");c+=n}c&&b.Z.message(c);b.Wo=a}else b.Z.message("no buffer")}else{e.Z.message("BIOSMODE: "+p(e.Jd));b=e.Ba;rj(b,
k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;gb(b,this,sj);kb(b,this,tj);"ega"==this.Ga&&(gb(b,this,uj),kb(b,this,vj));if(d){var e=this;Ac(this.S,16,this,this.En);Kh(d,d.Dg,function(a){if(e.Ba)if(a){var b=e.Ba;if(b.fd){a=ba(a);a=void 0!==a?a-b.eb:b.Vo||0;0>a&&(a=0);for(var c="",d=0;8>d;d++){for(var n=l(b.eb+a)+":",q=0;8>q&&a<b.fd.length;q++)var t=b.fd[a++],n=n+(" "+l(t));c&&(c+="\n");c+=n}c&&b.Z.message(c);b.Vo=a}else b.Z.message("no buffer")}else{e.Z.message("BIOSMODE: "+p(e.Jd));b=e.Ba;rj(b,
"CRTC",b.oc,b.dc,b.Lg);if(1==b.fe||3==b.fe)rj(b," MODEREG",b.zc),rj(b," STATUS1",b.tf);3==b.fe&&rj(b," COLOR",b.Ye);5==b.fe&&(b.Z.message(" ATCDATA: "+b.jd),rj(b," ATC",b.Bd,b.Rd,b.Uh),rj(b," GRC",b.Cd,b.re,b.Vh),rj(b," SEQ",b.Dd,b.Bf,b.Wh),rj(b," FEAT",b.kh),rj(b," MISC",b.Yf),rj(b," STATUS0",b.Mh),rj(b," LATCHES",b.vb),b.Z.message(" ACCESS: "+r(b.sh)),b.Z.message("Use 'dump video buffer' to dump video memory"))}else e.Z.message("no active video card")})}(this.pb=B(a,"Keyboard"))&&this.Mb&&
this.pb.wb("input",this.cm?"textarea":"canvas","kbd",this.cm||this.Mb);this.Ng=9;(this.ka=B(a,"ChipSet"))&&this.Yl&&(this.Ng=wh(this.Yl,this.Ng));this.pb&&this.ym&&wj(this)};k.Fn=function(a){this.Z&&L(this.Z,this.Z.Dg)&&(this.Z.message("Video.intBIOS(AX="+r(this.S.G)+") at "+ca(a-this.S.ra.La,this.S.ra.oa)),Bc(this.S,a,function(a,c){return function(d){var e=c,e=E(a.S)-e;a.Fa("Video.intBIOSReturn("+d+") (cycles="+e+")")}}(this,E(this.S))));return!0};
this.pb.wb("input",this.cm?"textarea":"canvas","kbd",this.cm||this.Mb);this.Ng=9;(this.ka=B(a,"ChipSet"))&&this.Yl&&(this.Ng=wh(this.Yl,this.Ng));this.pb&&this.xm&&wj(this)};k.En=function(a){this.Z&&L(this.Z,this.Z.Dg)&&(this.Z.message("Video.intBIOS(AX="+r(this.S.G)+") at "+ca(a-this.S.ra.La,this.S.ra.oa)),Bc(this.S,a,function(a,c){return function(d){var e=c,e=E(a.S)-e;a.Fa("Video.intBIOSReturn("+d+") (cycles="+e+")")}}(this,E(this.S))));return!0};
k.wb=function(a,b,c,d){var e=this;switch(c){case "refresh":return this.ta[c]=d,d.onclick=function(){yb(e,!0)},!0}return!1};k.Md=function(){this.Mb&&this.Mb.focus()};function wj(a){var b=a.Mb;b&&!a.ni&&(b.addEventListener("touchstart",function(b){xj(a,b)},!1),b.addEventListener("touchmove",function(b){xj(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.ni=!0)}
function xj(a,b){a.ri&&b.preventDefault();var c=0,d=0,e=a.Mb;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.xd/a.Mb.offsetWidth*(b.targetTouches[0].pageX-c)/(a.xd/3)|0;d=a.de/a.Mb.offsetHeight*(b.targetTouches[0].pageY-d)/(a.de/3)|0;1!=d?d?Si(a.pb,264,!0):Si(a.pb,262,!0):1!=c&&(c?Si(a.pb,263,!0):Si(a.pb,261,!0))}k.bc=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};
k.Yb=function(a){return a&&this.save?this.save():!0};
k.reset=function(){var a=!0,b=0;this.ka&&(b=Sh(this.ka));var c=!1;if(this.Ga)switch(this.Ga){case "ega":var c=!0,d=Zi[this.Ng];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.he!==b&&(this.he=b,a=!0);this.Ba=null;this.Sc=this.bi=new fj(this,1);this.yb=this.Xg=new fj(this,3);c?(this.la=new fj(this,5,null,this.Tc),yj(this)):this.la=new fj;zj(this);this.Jd=null;this.od=3==b?Xi:3;this.Ae=this.Lc=-1;this.ze=0;Aj(this,this.od);if(this.Ba.eb&&a){a=this.Ba.eb+this.ci;for(b=this.Ba.eb;b<a;b+=
2)d=Math.floor(65536*Math.random()),4==this.he?(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),cb(this.na,b,c|d<<8);yb(this,!0)}};function yj(a){a.la.Yf&1?(a.Sc=a.bi,a.yb=a.la):(a.Sc=a.la,a.yb=a.Xg)}k.save=function(){var a=new H(this);a.set(0,qj(this.bi));a.set(1,qj(this.Xg));a.set(2,[this.he,this.od,this.Jd]);a.set(3,qj(this.la));return a.data()};
k.restore=function(a){var b=a[2];this.he=b[0];this.od=b[1];this.Jd=b[2];this.Ba=null;this.Sc=this.bi=new fj(this,1,a[0]);this.yb=this.Xg=new fj(this,3,a[1]);this.la=new fj(this,5,a[3],this.Tc);this.la.mc&&yj(this);zj(this);if(!Bj(this))return!1;Cj(this);return!0};
k.Xn=function(a,b,c){if(c)this.Ha("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){v("Empty font ROM image: "+a);return}if(1==d.length){v(d[0]);return}if(8192==d.length)Ii(this,d,[0,6144]);else{this.Ha("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Ha("Font ROM data error: "+e.message);return}this.Sa()}};
k.Wn=function(a,b,c){if(c)this.Ha("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){v("Empty font ROM image: "+a);return}if(1==d.length){v(d[0]);return}if(8192==d.length)Ii(this,d,[0,6144]);else{this.Ha("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Ha("Font ROM data error: "+e.message);return}this.Sa()}};
function Dj(a,b){if(1==b)return a.ud[0]=U[0],a.ud[1]=U[7],a.ud;if(2==b){var c=a.Ba.Ye;if(a.Ba===a.la){var d=a.la.Rd[0],c=d&7;d&16&&(c|=8);18!=a.la.Rd[1]&&(c|=32)}a.ud[0]=U[c&15];c=c&32?cj:bj;for(d=0;d<c.length;d++)a.ud[d+1]=U[c[d]];return a.ud}if(a.yb===a.Xg)return U;c=null!=a.la.Rd[15]?a.la.Rd:dj;for(d=0;d<a.ud.length;d++){var e=c[d]||0;a.ud[d]=[(e&4?170:0)|(e&32?85:0),(e&2?170:0)|(e&16?85:0),(e&1?170:0)|(e&8?85:0),255]}return a.ud}function Ii(a,b,c,d){a.Jg=b;a.Rh=c;a.De=d}
function zj(a){var b=!1;if(window&&a.Jg){var c=a.De?0:2048,d=a.De?a.De:9;Ej(a,1,a.Rh[0],c,d,14,a.Jg,$i,aj)&&(b=!0);c=Dj(a);d=a.De?a.De:8;Ej(a,3,a.Rh[1],0,d,8,a.Jg,c)&&(b=!0);a.De&&Ej(a,5,a.Rh[0],0,a.De,14,a.Jg,c)&&(b=!0)}return b}function Ej(a,b,c,d,e,f,g,h,m){var n=!1;Fj(a,b,c,d,e,f,g,h,m)&&(n=!0);a.um&&Fj(a,b<<1,c,d,e,f,g,h,m)&&(n=!0);return n}
function zj(a){var b=!1;if(window&&a.Jg){var c=a.De?0:2048,d=a.De?a.De:9;Ej(a,1,a.Rh[0],c,d,14,a.Jg,$i,aj)&&(b=!0);c=Dj(a);d=a.De?a.De:8;Ej(a,3,a.Rh[1],0,d,8,a.Jg,c)&&(b=!0);a.De&&Ej(a,5,a.Rh[0],0,a.De,14,a.Jg,c)&&(b=!0)}return b}function Ej(a,b,c,d,e,f,g,h,m){var n=!1;Fj(a,b,c,d,e,f,g,h,m)&&(n=!0);a.tm&&Fj(a,b<<1,c,d,e,f,g,h,m)&&(n=!0);return n}
function Fj(a,b,c,d,e,f,g,h,m){var n=!1,q=b&1?0:1,t=a.Td[b];t||(t={kc:e<<q,lc:f<<q,Se:Array(h.length),Wj:h.slice(),Af:m,Ph:Array(h.length)});for(m=0;m<h.length;m++){var s=h[m],u=t.Se[m]?t.Wj[m]:[];if(s[0]!==u[0]||s[1]!==u[1]||s[2]!==u[2]){var n=t,u=m,z=q,C=c,ia=d,ja=e,rb=f,Jc=g,Pd=[0,0,0,0],Kc=window.document.createElement("canvas");Kc.width=n.kc<<4;Kc.height=n.lc<<4;for(var Ji=Kc.getContext("2d"),Fa=void 0,Hb=void 0,db=void 0,Lc=8>rb||!ia?rb:8,Qd=Ji.createImageData(n.kc,n.lc),Fa=0;256>Fa;Fa++){for(db=
0;db<rb;db++)for(var fl=n.Af&&u&1&&db>=rb-2,gl=Jc[db<Lc?C+Fa*Lc+db:ia+Fa*Lc+db-Lc],Rd=0;Rd<=z;Rd++)for(Hb=0;Hb<ja;Hb++){var Ki=Hb<<z,Li=(db<<z)+Rd,Mi=fl||gl&128>>(8<=Hb&&176<=Fa&&223>=Fa?7:Hb)?s:Pd;Gj(Qd,Ki,Li,Mi);z&&Gj(Qd,Ki+1,Li,Mi)}Ji.putImageData(Qd,(Fa&15)*n.kc,(Fa>>4)*n.lc)}n.Se[u]="#"+p(s[0])+p(s[1])+p(s[2]);n.Wj[u]=s;n.Ph[u]=Kc;n=!0}}a.Td[b]=t;return n}function Hj(a){0<a.ze||0<=a.Lc?0>a.Ae&&(a.Ae=0):a.Ae=-1}
function Cj(a){if(a.Ub){for(var b=10;15>=b;b++)if(null==a.Ba.dc[b])return;var c=a.Ba.dc[10],b=c&31,d=a.Ba.dc[11]&31,e=a.Ba.dc[9]&31,f=!1;a.Ba===a.la&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Ij(a);else{c=a.Ba.dc[15]+((a.Ba.dc[14]&63)<<8);a.Lc!=c&&(Ij(a),a.Lc=c);d=d-b+1;if(a.fm!=b||a.nk!=d)a.fm=b,a.nk=d;a.ce=e+1;Hj(a)}}}
@ -530,60 +530,60 @@ function Ij(a){if(0<=a.Lc){if(void 0!==a.ec){var b=a.ec[a.Lc];if(b&131072){var b
function Kj(a){var b;a=a.Ba;var c=a.re[5];if(null!=c){b=2;var d=512,e=a.re[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.nd=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}k.ne=function(a){var b=this.Ba;null!=a&&b&&a!=b.sh&&(b.Jh(a),this.na.Jh(b.eb,b.uc,b.Ff))};
function Bj(a,b){var c,d=a.Jd,e=a.Ba;if(e)if(1==e.fe)d=Xi;else if(5==e.fe){var d=null,f=e.Tc>>2,g=32768<f?32768:f,h=e.re[6];if(null!=h){switch(h&12){case 0:e.eb=655360;e.uc=f;d=255;break;case 4:e.eb=655360;e.uc=f;d=3==a.he?15:16;break;case 8:e.eb=720896;e.uc=g;d=Xi;break;case 12:e.eb=753664,e.uc=g,d=3==a.he?2:3}c=e.Bf[1]&8;f=e.dc[6]|(e.dc[7]&1)<<8;255!=d&&(h&1?753664==e.eb?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=Kj(a)}}else e.zc&8&&(e.zc&2?(d=e.zc&16?6:5,e.zc&4||(d-=1)):(d=e.zc&1?3:1,e.zc&4&&(d-=
1)));else a.Jd=null,null==d&&(d=a.od);if(!Aj(a,d,b))return!1;a.ne(c);return!0}
function Aj(a,b,c){if(null!=b&&(b!=a.Jd||c)){a.pm=0;a.Jd=b;b=a.Ba||(b==Xi?a.Sc:a.yb);if(b!=a.Ba||b.eb!=a.eb||b.uc!=a.uc){Ij(a);if(a.eb){if(!Za(a.na,a.eb,a.uc))return!1;a.Ba&&(a.Ba.mc=!1)}a.Ba=b;b.mc=!0;a.eb=b.eb;a.uc=b.uc;if(!Xa(a.na,b.eb,b.uc,!1,b===a.la?b:null))return!1}a.Ub=0;a.Bb=a.vh;a.sc=a.Ki;a.Fi=T[Xi][2];b=0;var d=T[a.Jd];d&&(a.Bb=d[0],a.sc=d[1],a.Fi=d[2],b=d[3]||0,a.Ub=d[4],4==a.he&&a.Ba===a.la&&3==a.Ub&&(7==a.la.dc[9]?a.sc=43:a.Ub=5));a.Hk=a.Bb*a.sc;a.uh=a.Hk/a.Fi;a.ci=(a.uh<<1)+b;a.kk=
b?a.ci+b>>1:0;13<=a.Jd&&(a.uh<<=1);a.Td.length&&(a.yd=Math.floor(a.xd/a.Bb),a.zd=Math.floor(a.de/a.sc),a.Ub?(b=a.Td[a.Ub],d=a.Td[a.Ub<<1],a.wm&&80==a.Bb?d&&a.yd>=3*d.kc>>2&&(a.Ub<<=1,b=d):(d&&a.yd>=d.kc&&(a.Ub<<=1,b=d),b&&(a.yd=b.kc,a.zd=b.lc)),a.Sf=a.Tf=0,b&&(a.Sf=a.Bb*b.kc,a.Tf=a.sc*b.lc)):(a.yd=a.zd=1,a.Sf=a.Bb,a.Tf=a.sc),a.oh=a.Vc.createImageData(a.Sf,a.Tf),a.Xe=window.document.createElement("canvas"),a.Xe.width=a.Sf,a.Xe.height=a.Tf,a.Ze=a.Xe.getContext("2d"),a.Oj=a.Pj=0,a.ei=a.xd,a.fi=a.de,
function Aj(a,b,c){if(null!=b&&(b!=a.Jd||c)){a.om=0;a.Jd=b;b=a.Ba||(b==Xi?a.Sc:a.yb);if(b!=a.Ba||b.eb!=a.eb||b.uc!=a.uc){Ij(a);if(a.eb){if(!Za(a.na,a.eb,a.uc))return!1;a.Ba&&(a.Ba.mc=!1)}a.Ba=b;b.mc=!0;a.eb=b.eb;a.uc=b.uc;if(!Xa(a.na,b.eb,b.uc,!1,b===a.la?b:null))return!1}a.Ub=0;a.Bb=a.vh;a.sc=a.Ki;a.Fi=T[Xi][2];b=0;var d=T[a.Jd];d&&(a.Bb=d[0],a.sc=d[1],a.Fi=d[2],b=d[3]||0,a.Ub=d[4],4==a.he&&a.Ba===a.la&&3==a.Ub&&(7==a.la.dc[9]?a.sc=43:a.Ub=5));a.Hk=a.Bb*a.sc;a.uh=a.Hk/a.Fi;a.ci=(a.uh<<1)+b;a.kk=
b?a.ci+b>>1:0;13<=a.Jd&&(a.uh<<=1);a.Td.length&&(a.yd=Math.floor(a.xd/a.Bb),a.zd=Math.floor(a.de/a.sc),a.Ub?(b=a.Td[a.Ub],d=a.Td[a.Ub<<1],a.vm&&80==a.Bb?d&&a.yd>=3*d.kc>>2&&(a.Ub<<=1,b=d):(d&&a.yd>=d.kc&&(a.Ub<<=1,b=d),b&&(a.yd=b.kc,a.zd=b.lc)),a.Sf=a.Tf=0,b&&(a.Sf=a.Bb*b.kc,a.Tf=a.sc*b.lc)):(a.yd=a.zd=1,a.Sf=a.Bb,a.Tf=a.sc),a.oh=a.Vc.createImageData(a.Sf,a.Tf),a.Xe=window.document.createElement("canvas"),a.Xe.width=a.Sf,a.Xe.height=a.Tf,a.Ze=a.Xe.getContext("2d"),a.Oj=a.Pj=0,a.ei=a.xd,a.fi=a.de,
b=a.xd-a.Bb*a.yd,d=a.de-a.sc*a.zd,0<b&&(a.Oj=b>>1,a.ei-=b),0<d&&(a.Pj=d>>1,a.fi-=d),b||d)&&(a.Vc.fillStyle=a.Mb.style.backgroundColor,a.Vc.fillRect(0,0,a.xd,a.de));!1!==c?yb(a,!0):Lj(a,!0)}return!0}function Gj(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Lj(a,b){var c;if(b){if(c=a.uh,void 0===a.ec||a.ec.length!=c)a.ec=Array(c)}else{if(void 0===a.ec)return;c=a.ec.length}for(var d=0;d<c;d++)a.ec[d]=-1;a.ze=-1}
function Jj(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Td[a.Ub];h.Af&&(d=h.Af[d]);var m=g>>4&15;h.Af&&(m=h.Af[m]);e?(b*=h.kc,c*=h.lc,e.fillStyle=h.Se[m],e.fillRect(b,c,h.kc,h.lc)):(b=b*a.yd+a.Oj,c=c*a.zd+a.Pj,a.Vc.fillStyle=h.Se[m],a.Vc.fillRect(b,c,a.yd,a.zd));g&256&&(m=(f&15)*h.kc,f=(f>>4)*h.lc,e?e.drawImage(h.Ph[d],m,f,h.kc,h.lc,b,c,h.kc,h.lc):a.Vc.drawImage(h.Ph[d],m,f,h.kc,h.lc,b,c,a.yd,a.zd));g&512&&(f=a.fm,g=a.nk,e?(a.ce&&a.ce!==h.lc&&(f=Math.floor(f*h.lc/a.ce),g=Math.floor(g*h.lc/a.ce)),
e.fillStyle=h.Se[d],e.fillRect(b,c+f,h.kc,g)):(a.ce&&a.ce!==a.zd&&(f=Math.floor(f*a.zd/a.ce),g=Math.floor(g*a.zd/a.ce)),a.Vc.fillStyle=h.Se[d],a.Vc.fillRect(b,c+f,a.yd,g)))}
function yb(a,b){if(a.Nb){var c=!1;a.Ba&&(a.Ba===a.la?a.la.Bd&32&&(c=!0):a.Ba.zc&8&&(c=!0));if(c||b){if(b)Lj(a,!0);else if(void 0===a.ec)return;var d=!1;!(b||++a.pm&15)&&0<=a.Ae&&(a.Ae++,d=!0);var e=0,f=a.Hk,c=a.Ba.eb,g=c+a.Ba.uc,h=(a.Ba.dc[12]<<8)+a.Ba.dc[13];a.Ub&&(h<<=1);var c=c+h,m=a.ci;c+m>g&&(m=g-c,0>m&&(m=0));g=c+m;if(h=!b){for(var h=a.na,n=!0,q=c>>h.ob;0<m&&q<h.Aa.length;)h.Aa[q].bb&&(h.Aa[q].bb=n=!1,h.Aa[q].pk=!0),m-=h.hc,q++;h=n}if(h){if(!d)return;if(!a.ze){if(0>a.Lc)return;e=a.Lc;f=e+1}}if(a.Ub){if(a.Td[a.Ub]){d=
function yb(a,b){if(a.Nb){var c=!1;a.Ba&&(a.Ba===a.la?a.la.Bd&32&&(c=!0):a.Ba.zc&8&&(c=!0));if(c||b){if(b)Lj(a,!0);else if(void 0===a.ec)return;var d=!1;!(b||++a.om&15)&&0<=a.Ae&&(a.Ae++,d=!0);var e=0,f=a.Hk,c=a.Ba.eb,g=c+a.Ba.uc,h=(a.Ba.dc[12]<<8)+a.Ba.dc[13];a.Ub&&(h<<=1);var c=c+h,m=a.ci;c+m>g&&(m=g-c,0>m&&(m=0));g=c+m;if(h=!b){for(var h=a.na,n=!0,q=c>>h.ob;0<m&&q<h.Aa.length;)h.Aa[q].bb&&(h.Aa[q].bb=n=!1,h.Aa[q].pk=!0),m-=h.hc,q++;h=n}if(h){if(!d)return;if(!a.ze){if(0>a.Lc)return;e=a.Lc;f=e+1}}if(a.Ub){if(a.Td[a.Ub]){d=
0;h=a.ze=0;m=1048575;a.Ba.zc&32&&(h=32768,m&=~h,a.Ae&2||(m&=-65537));for(c+=e<<1;c<g&&e<f;)n=ab(a.na,c),n|=65536,n&h&&(a.ze++,n&=m),e==a.Lc&&(n|=a.Ae&1?131072:0),q=a.ec[e],q!=n&&(Jj(a,e%a.Bb,Math.floor(e/a.Bb),n,a.Ze),a.ec[e]=n,d++),c+=2,e++;d&&a.Ze&&a.Vc.drawImage(a.Xe,0,0,a.Sf,a.Tf,a.Oj,a.Pj,a.ei,a.fi);Hj(a)}}else if(a.kk){for(var f=g,t,s,e=c,g=a.ze=0,d=a.Fi,h=16==d?65536:196608,m=16==d?1:2,n=Dj(a,m),u=q=0,z=a.Bb,C=0,ia=a.sc,ja=0;e<f;){t=ab(a.na,e);s=a.ec[g];if(s===t)q+=d;else{a.ec[g]=t;t=t>>8|
(t&255)<<8;s=h;var rb=16;q<z&&(z=q);for(var Jc=0;Jc<d;Jc++){var Pd=(t&(s>>=m))>>(rb-=m);Gj(a.oh,q++,u,n[Pd])}q>C&&(C=q);u<ia&&(ia=u);u>=ja&&(ja=u+1)}e+=2;g++;if(q>=a.Bb){q=0;u+=2;if(u>a.sc)break;u==a.sc&&(u=1,e=c+a.kk)}}z<a.Bb&&(a.Ze.putImageData(a.oh,0,0,z,ia,C-z,ja-ia),a.Vc.drawImage(a.Xe,0,0,a.Bb,a.sc,0,0,a.xd,a.de))}else{f=g;e=a.ze=0;g=Dj(a);d=a.Ba.fd;m=h=0;n=a.Bb;q=0;u=a.sc;for(z=0;c<f;){C=c++-a.eb;C=d[C];ia=a.ec[e];if(ia===C)h+=8;else{a.ec[e]=C;h<n&&(n=h);for(ia=0;8>ia;ia++)ja=C&2155905152,
0>ja&&(ja=-ja),ja=V[ja]||0,Gj(a.oh,h++,m,g[ja]),C<<=1;h>q&&(q=h);m<u&&(u=m);m>=z&&(z=m+1)}e++;if(h>=a.Bb&&(h=0,++m>a.sc))break}n<a.Bb&&(a.Ze.putImageData(a.oh,0,0,n,u,q-n,z-u),a.Vc.drawImage(a.Xe,0,0,a.Bb,a.sc,0,0,a.xd,a.de))}}}}k.ln=function(a,b){return Mj(this,this.Sc,b)};k.Eo=function(a,b,c){a=this.Sc;a.lh=a.oc;a.oc=b&31;this.ba(a.port,b,c,"CRTC.INDX")};k.kn=function(a,b){return Nj(this,this.Sc,b)};k.Do=function(a,b,c){Oj(this,this.Sc,b,c)};k.mn=function(a,b){return Pj(this,this.Sc,b)};
k.Fo=function(a,b,c){a=this.Sc;this.ba(a.port+4,b,c,"MODE");a.zc=b;Bj(this,!1)};k.nn=function(a,b){return Qj(this,this.Sc,b)};k.Ol=function(a,b,c){this.la.kh=this.la.kh&-4|b&3;this.ba(a,b,c,"FEAT")};k.Dk=function(a,b){var c=this.la.jd?this.la.Rd[this.la.Bd&31]:this.la.Bd;this.ba(960,null,b,"ATC."+(this.la.jd?this.la.Uh[this.la.Bd&31]:"INDX"),c);this.la.jd=!this.la.jd;return c};
k.Nl=function(a,b,c){var d=this.la.Bd&32;if(this.la.jd){var e=this.la.Bd&31;if(16<=e||!d)this.ba(a,b,c,"ATC."+this.la.Uh[e]),this.la.Rd[e]=b;this.la.jd=!1}else this.la.Bd=b,this.ba(a,b,c,"ATC.INDX"),this.la.jd=!0,b&32&&!d&&zj(this)&&yb(this,!0)};k.xn=function(a,b){var c=3-((this.la.Yf&12)>>2),c=this.la.Mh&-17|(this.Ng&1<<c)<<4-c;this.la.Mh=c;this.ba(962,null,b,"STATUS0",c);return c};k.Ho=function(a,b,c){this.la.Yf=b;yj(this);this.ba(962,b,c,"MISC")};
k.wn=function(a,b){var c=this.la.Dd;this.ba(964,null,b,"SEQ.INDX",c);return c};k.Oo=function(a,b,c){this.la.Dd=b;this.ba(964,b,c,"SEQ.INDX")};k.vn=function(a,b){var c=this.la.Bf[this.la.Dd];this.ba(965,null,b,"SEQ"+this.la.Wh[this.la.Dd],c);return c};k.No=function(a,b,c){this.ba(965,b,c,"SEQ."+this.la.Wh[this.la.Dd]);this.la.Bf[this.la.Dd]=b;2==this.la.Dd&&(this.la.hb=ej[b&15])};k.cn=function(a,b){var c=this.la.yi;this.ba(972,null,b,"GRC1",c);return c};
k.yo=function(a,b,c){this.la.yi=b;this.ba(972,b,c,"GRC1")};k.dn=function(a,b){var c=this.la.zi;this.ba(970,null,b,"GRC2",c);return c};k.zo=function(a,b,c){this.la.zi=b;this.ba(970,b,c,"GRC2")};k.bn=function(a,b){var c=this.la.Cd;this.ba(974,null,b,"GRC.INDX",c);return c};k.xo=function(a,b,c){this.la.Cd=b;this.ba(974,b,c,"GRC.INDX")};k.an=function(a,b){var c=this.la.re[this.la.Cd];this.ba(975,null,b,"GRC."+this.la.Vh[this.la.Cd],c);return c};
k.wo=function(a,b,c){this.ba(975,b,c,"GRC."+this.la.Vh[this.la.Cd]);this.la.re[this.la.Cd]=b;switch(this.la.Cd){case 0:this.la.yh=ej[b&15];this.la.Ie=this.la.yh&~this.la.je;break;case 1:this.la.je=~ej[b&15];this.la.Ie=this.la.yh&~this.la.je;break;case 2:this.la.Gi=ej[b&15]&2155905152;break;case 3:case 5:this.ne(Kj(this));break;case 4:this.la.wj=(b&3)<<3;break;case 6:Bj(this,!1);break;case 7:this.la.Hi=ej[b&15^15]&2155905152;break;case 8:this.la.lb=b|b<<8|b<<16|b<<24}};
k.Tm=function(a,b){return Mj(this,this.yb,b)};k.po=function(a,b,c){a=this.yb;a.lh=a.oc;a.oc=b&31;this.ba(a.port,b,c,"CRTC.INDX")};k.Sm=function(a,b){return Nj(this,this.yb,b)};k.oo=function(a,b,c){Oj(this,this.yb,b,c)};k.Um=function(a,b){return Pj(this,this.yb,b)};k.qo=function(a,b,c){a=this.yb;this.ba(a.port+4,b,c,"MODE");a.zc=b;Bj(this,!1)};k.Rm=function(a,b){var c=this.yb.Ye;this.ba(this.yb.port+5,null,b,this.yb.type+".COLOR",c);return c};
k.no=function(a,b,c){this.ba(this.yb.port+5,b,c,this.yb.type+".COLOR");this.yb.Ye!==b&&(this.yb.Ye=b,Lj(this,!1))};k.Vm=function(a,b){return Qj(this,this.yb,b)};function Mj(a,b,c){var d=b.oc;a.ba(b.port,null,c,"CRTC.INDX",d);return d}function Nj(a,b,c){var d;b.oc<b.Ei&&(d=b.dc[b.oc]);a.ba(b.port+1,null,c,"CRTC."+b.Lg[b.oc],d);return d}function Oj(a,b,c,d){b.oc<b.Ei&&(a.ba(b.port+1,c,d,"CRTC."+b.Lg[b.oc]),b.dc[b.oc]=c,9==b.oc&&8!=b.lh&&Bj(a,!0),Cj(a))}
function Pj(a,b,c){var d=b.zc;a.ba(b.port+4,null,c,"MODE",d);return d}function Qj(a,b,c){var d=0,e=E(a.S),f=e-b.Ni;0>f&&(f=0);f%b.Ii>b.Qn&&(d|=1);f%=b.Kk;f>b.Tn&&(d|=8);b.Ni=e-f;b===a.la?(d|=b.tf&48^48,b.jd=!1):d=(b.tf^=9)|240;b.tf=d;a.ba(b.port+6,null,c,b===a.la?"STATUS1":"STATUS",d);return d}k.Fa=function(a,b){this.Z&&(b||L(this.Z,this.Z.Dg))&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Dg,e)};
var sj={948:S.prototype.ln,949:S.prototype.kn,952:S.prototype.mn,954:S.prototype.nn,980:S.prototype.Tm,981:S.prototype.Sm,984:S.prototype.Um,985:S.prototype.Rm,986:S.prototype.Vm},tj={948:S.prototype.Eo,949:S.prototype.Do,952:S.prototype.Fo,980:S.prototype.po,981:S.prototype.oo,984:S.prototype.qo,985:S.prototype.no},uj={960:S.prototype.Dk,961:S.prototype.Dk,962:S.prototype.xn,964:S.prototype.wn,965:S.prototype.vn,970:S.prototype.dn,972:S.prototype.cn,974:S.prototype.bn,975:S.prototype.an},vj={954:S.prototype.Ol,
960:S.prototype.Nl,961:S.prototype.Nl,962:S.prototype.Ho,964:S.prototype.Oo,965:S.prototype.No,970:S.prototype.zo,972:S.prototype.yo,974:S.prototype.xo,975:S.prototype.wo,986:S.prototype.Ol};
0>ja&&(ja=-ja),ja=V[ja]||0,Gj(a.oh,h++,m,g[ja]),C<<=1;h>q&&(q=h);m<u&&(u=m);m>=z&&(z=m+1)}e++;if(h>=a.Bb&&(h=0,++m>a.sc))break}n<a.Bb&&(a.Ze.putImageData(a.oh,0,0,n,u,q-n,z-u),a.Vc.drawImage(a.Xe,0,0,a.Bb,a.sc,0,0,a.xd,a.de))}}}}k.kn=function(a,b){return Mj(this,this.Sc,b)};k.Do=function(a,b,c){a=this.Sc;a.lh=a.oc;a.oc=b&31;this.ba(a.port,b,c,"CRTC.INDX")};k.jn=function(a,b){return Nj(this,this.Sc,b)};k.Co=function(a,b,c){Oj(this,this.Sc,b,c)};k.ln=function(a,b){return Pj(this,this.Sc,b)};
k.Eo=function(a,b,c){a=this.Sc;this.ba(a.port+4,b,c,"MODE");a.zc=b;Bj(this,!1)};k.mn=function(a,b){return Qj(this,this.Sc,b)};k.Ol=function(a,b,c){this.la.kh=this.la.kh&-4|b&3;this.ba(a,b,c,"FEAT")};k.Dk=function(a,b){var c=this.la.jd?this.la.Rd[this.la.Bd&31]:this.la.Bd;this.ba(960,null,b,"ATC."+(this.la.jd?this.la.Uh[this.la.Bd&31]:"INDX"),c);this.la.jd=!this.la.jd;return c};
k.Nl=function(a,b,c){var d=this.la.Bd&32;if(this.la.jd){var e=this.la.Bd&31;if(16<=e||!d)this.ba(a,b,c,"ATC."+this.la.Uh[e]),this.la.Rd[e]=b;this.la.jd=!1}else this.la.Bd=b,this.ba(a,b,c,"ATC.INDX"),this.la.jd=!0,b&32&&!d&&zj(this)&&yb(this,!0)};k.wn=function(a,b){var c=3-((this.la.Yf&12)>>2),c=this.la.Mh&-17|(this.Ng&1<<c)<<4-c;this.la.Mh=c;this.ba(962,null,b,"STATUS0",c);return c};k.Go=function(a,b,c){this.la.Yf=b;yj(this);this.ba(962,b,c,"MISC")};
k.vn=function(a,b){var c=this.la.Dd;this.ba(964,null,b,"SEQ.INDX",c);return c};k.No=function(a,b,c){this.la.Dd=b;this.ba(964,b,c,"SEQ.INDX")};k.un=function(a,b){var c=this.la.Bf[this.la.Dd];this.ba(965,null,b,"SEQ"+this.la.Wh[this.la.Dd],c);return c};k.Mo=function(a,b,c){this.ba(965,b,c,"SEQ."+this.la.Wh[this.la.Dd]);this.la.Bf[this.la.Dd]=b;2==this.la.Dd&&(this.la.hb=ej[b&15])};k.bn=function(a,b){var c=this.la.yi;this.ba(972,null,b,"GRC1",c);return c};
k.xo=function(a,b,c){this.la.yi=b;this.ba(972,b,c,"GRC1")};k.cn=function(a,b){var c=this.la.zi;this.ba(970,null,b,"GRC2",c);return c};k.yo=function(a,b,c){this.la.zi=b;this.ba(970,b,c,"GRC2")};k.an=function(a,b){var c=this.la.Cd;this.ba(974,null,b,"GRC.INDX",c);return c};k.wo=function(a,b,c){this.la.Cd=b;this.ba(974,b,c,"GRC.INDX")};k.$m=function(a,b){var c=this.la.re[this.la.Cd];this.ba(975,null,b,"GRC."+this.la.Vh[this.la.Cd],c);return c};
k.vo=function(a,b,c){this.ba(975,b,c,"GRC."+this.la.Vh[this.la.Cd]);this.la.re[this.la.Cd]=b;switch(this.la.Cd){case 0:this.la.yh=ej[b&15];this.la.Ie=this.la.yh&~this.la.je;break;case 1:this.la.je=~ej[b&15];this.la.Ie=this.la.yh&~this.la.je;break;case 2:this.la.Gi=ej[b&15]&2155905152;break;case 3:case 5:this.ne(Kj(this));break;case 4:this.la.wj=(b&3)<<3;break;case 6:Bj(this,!1);break;case 7:this.la.Hi=ej[b&15^15]&2155905152;break;case 8:this.la.lb=b|b<<8|b<<16|b<<24}};
k.Sm=function(a,b){return Mj(this,this.yb,b)};k.oo=function(a,b,c){a=this.yb;a.lh=a.oc;a.oc=b&31;this.ba(a.port,b,c,"CRTC.INDX")};k.Rm=function(a,b){return Nj(this,this.yb,b)};k.no=function(a,b,c){Oj(this,this.yb,b,c)};k.Tm=function(a,b){return Pj(this,this.yb,b)};k.po=function(a,b,c){a=this.yb;this.ba(a.port+4,b,c,"MODE");a.zc=b;Bj(this,!1)};k.Qm=function(a,b){var c=this.yb.Ye;this.ba(this.yb.port+5,null,b,this.yb.type+".COLOR",c);return c};
k.mo=function(a,b,c){this.ba(this.yb.port+5,b,c,this.yb.type+".COLOR");this.yb.Ye!==b&&(this.yb.Ye=b,Lj(this,!1))};k.Um=function(a,b){return Qj(this,this.yb,b)};function Mj(a,b,c){var d=b.oc;a.ba(b.port,null,c,"CRTC.INDX",d);return d}function Nj(a,b,c){var d;b.oc<b.Ei&&(d=b.dc[b.oc]);a.ba(b.port+1,null,c,"CRTC."+b.Lg[b.oc],d);return d}function Oj(a,b,c,d){b.oc<b.Ei&&(a.ba(b.port+1,c,d,"CRTC."+b.Lg[b.oc]),b.dc[b.oc]=c,9==b.oc&&8!=b.lh&&Bj(a,!0),Cj(a))}
function Pj(a,b,c){var d=b.zc;a.ba(b.port+4,null,c,"MODE",d);return d}function Qj(a,b,c){var d=0,e=E(a.S),f=e-b.Ni;0>f&&(f=0);f%b.Ii>b.Pn&&(d|=1);f%=b.Kk;f>b.Sn&&(d|=8);b.Ni=e-f;b===a.la?(d|=b.tf&48^48,b.jd=!1):d=(b.tf^=9)|240;b.tf=d;a.ba(b.port+6,null,c,b===a.la?"STATUS1":"STATUS",d);return d}k.Fa=function(a,b){this.Z&&(b||L(this.Z,this.Z.Dg))&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Dg,e)};
var sj={948:S.prototype.kn,949:S.prototype.jn,952:S.prototype.ln,954:S.prototype.mn,980:S.prototype.Sm,981:S.prototype.Rm,984:S.prototype.Tm,985:S.prototype.Qm,986:S.prototype.Um},tj={948:S.prototype.Do,949:S.prototype.Co,952:S.prototype.Eo,980:S.prototype.oo,981:S.prototype.no,984:S.prototype.po,985:S.prototype.mo},uj={960:S.prototype.Dk,961:S.prototype.Dk,962:S.prototype.wn,964:S.prototype.vn,965:S.prototype.un,970:S.prototype.cn,972:S.prototype.bn,974:S.prototype.an,975:S.prototype.$m},vj={954:S.prototype.Ol,
960:S.prototype.Nl,961:S.prototype.Nl,962:S.prototype.Go,964:S.prototype.No,965:S.prototype.Mo,970:S.prototype.yo,972:S.prototype.xo,974:S.prototype.wo,975:S.prototype.vo,986:S.prototype.Ol};
za(function(){for(var a=A(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=y(c),e=window.document.createElement("canvas");if(void 0===e){c.innerHTML="<br/>Missing &lt;canvas&gt; support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor;
e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",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.appendChild(e);var f=e.getContext("2d"),d=new S(d,e,f);Ma(d,c)}});
function X(a){this.Ak=a.adapter;switch(this.Ak){case 1:this.Dj=1016;this.gg=4;break;case 2:this.Dj=760;this.gg=3;break;default:v("Unrecognized serial adapter #"+this.Ak);return}this.ae=null;w.call(this,"SerialPort",a,X);var b=a.binding,c;a=Rj;b&&(void 0===c&&(c="Panel"),(c=La(c,this.id))&&(b=c.ta[b])&&this.wb(null,null,a,b))}x(w,X);var Rj="buffer";k=X.prototype;k.$j=function(a,b){return a==this.mh?(this.Ek=b,this):null};
k.wb=function(a,b,c,d){var e=this;switch(c){case Rj:return this.ta[c]=this.ae=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),Sj(e,[b]))},d.onkeypress=function(a){a=a||window.event;Sj(e,[a.which||a.keyCode])},!0}return!1};k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;this.ka=B(a,"ChipSet");d&&Jh(d,X);gb(b,this,Tj,this.Dj);kb(b,this,Uj,this.Dj);this.Sa()};
k.bc=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ge()};k.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.$h;c[b++]=this.dk;c[b++]=this.Pe;c[b++]=this.Og;c[b++]=this.Xd;c[b++]=this.Rc;c[b++]=this.gd;c[b++]=this.Gc;c[b++]=this.bk;c[b]=this.Df;a.set(0,c);return a.data()};k.restore=function(a){return this.ge(a[0])};
k.ge=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.$h=a[b++];this.dk=a[b++];this.Pe=a[b++];this.Og=a[b++];this.Xd=a[b++];this.Rc=a[b++];this.gd=a[b++];this.Gc=a[b++];this.bk=a[b++];this.Df=a[b];return!0};function Sj(a,b){a.Df=a.Df.concat(b);Vj(a)}function Vj(a){0<a.Df.length&&!(a.Gc&1)&&(a.$h=a.Df.shift(),a.Gc|=1);var b=-1;a.Gc&1&&a.Og&1&&(b=4);0<=b?(a.Xd&=-8,a.Xd|=b,a.ka&&a.gg&&Q(a.ka,a.gg)):(a.Xd|=1,a.ka&&a.gg&&ti(a.ka,a.gg))}
k.un=function(a,b){var c=this.Rc&128?this.Pe&255:this.$h;this.ba(a,null,b,this.Rc&128?"DLL":"RBR",c);this.Gc&=-2;Vj(this);return c};k.en=function(a,b){var c=this.Rc&128?this.Pe>>8:this.Og;this.ba(a,null,b,this.Rc&128?"DLM":"IER",c);return c};k.fn=function(a,b){var c=this.Xd;this.ba(a,null,b,"IIR",c);return c};k.gn=function(a,b){var c=this.Rc;this.ba(a,null,b,"LCR",c);return c};k.jn=function(a,b){var c=this.gd;this.ba(a,null,b,"MCR",c);return c};
k.hn=function(a,b){var c=this.Gc;this.ba(a,null,b,"LSR",c);return c};k.pn=function(a,b){var c=this.bk;this.ba(a,null,b,"MSR",c);return c};k.Po=function(a,b,c){this.ba(a,b,c,this.Rc&128?"DLL":"THR");this.Rc&128?this.Pe=this.Pe&-256|b:(this.dk=b,this.Gc&=-97,this.ae?(13!=b&&(8==b?this.ae.value=this.ae.value.slice(0,-1):(this.ae.value+=String.fromCharCode(b),this.ae.scrollTop=this.ae.scrollHeight)),a=!0):a=!1,a&&(this.Gc|=96))};
k.Ao=function(a,b,c){this.ba(a,b,c,this.Rc&128?"DLM":"IER");this.Rc&128?this.Pe=this.Pe&255|b<<8:this.Og=b};k.Bo=function(a,b,c){this.ba(a,b,c,"LCR");this.Rc=b};
k.Co=function(a,b,c){var d=this.gd;this.ba(a,b,c,"MCR");this.gd=b;this.Ek&&(d^b)&3&&(a=this.Ek,b=this.gd,(c=3==(b&3))?a.mc||(d=!1,a.gd&2||(a.reset(),a.Fa("serial mouse reset"),d=!0),a.gd&1||(a.Fa("serial mouse ID requested"),d=!0),d&&(Sj(a.Of,[77]),a.Fa("serial mouse ID sent")),Wj(a,a.Mb),a.mc=c):a.mc&&(a.Fa("serial mouse inactive"),Xj(a.Mb),a.mc=c),a.gd=b)};k.Fa=function(a){this.Z&&L(this.Z,this.Z.Tj)&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Tj,e)};
var Tj={0:X.prototype.un,1:X.prototype.en,2:X.prototype.fn,3:X.prototype.gn,4:X.prototype.jn,5:X.prototype.hn,6:X.prototype.pn},Uj={0:X.prototype.Po,1:X.prototype.Ao,3:X.prototype.Bo,4:X.prototype.Co};za(function(){for(var a=A(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new X(d);Ma(d,c)}});function Yj(a){w.call(this,"Mouse",a,Yj);if(this.Ai=a.serial)this.Gj="SerialPort";this.mc=!1;this.Sa()}x(w,Yj);k=Yj.prototype;
k.tn=function(a,b){var c=this.Rc&128?this.Pe&255:this.$h;this.ba(a,null,b,this.Rc&128?"DLL":"RBR",c);this.Gc&=-2;Vj(this);return c};k.dn=function(a,b){var c=this.Rc&128?this.Pe>>8:this.Og;this.ba(a,null,b,this.Rc&128?"DLM":"IER",c);return c};k.en=function(a,b){var c=this.Xd;this.ba(a,null,b,"IIR",c);return c};k.fn=function(a,b){var c=this.Rc;this.ba(a,null,b,"LCR",c);return c};k.hn=function(a,b){var c=this.gd;this.ba(a,null,b,"MCR",c);return c};
k.gn=function(a,b){var c=this.Gc;this.ba(a,null,b,"LSR",c);return c};k.on=function(a,b){var c=this.bk;this.ba(a,null,b,"MSR",c);return c};k.Oo=function(a,b,c){this.ba(a,b,c,this.Rc&128?"DLL":"THR");this.Rc&128?this.Pe=this.Pe&-256|b:(this.dk=b,this.Gc&=-97,this.ae?(13!=b&&(8==b?this.ae.value=this.ae.value.slice(0,-1):(this.ae.value+=String.fromCharCode(b),this.ae.scrollTop=this.ae.scrollHeight)),a=!0):a=!1,a&&(this.Gc|=96))};
k.zo=function(a,b,c){this.ba(a,b,c,this.Rc&128?"DLM":"IER");this.Rc&128?this.Pe=this.Pe&255|b<<8:this.Og=b};k.Ao=function(a,b,c){this.ba(a,b,c,"LCR");this.Rc=b};
k.Bo=function(a,b,c){var d=this.gd;this.ba(a,b,c,"MCR");this.gd=b;this.Ek&&(d^b)&3&&(a=this.Ek,b=this.gd,(c=3==(b&3))?a.mc||(d=!1,a.gd&2||(a.reset(),a.Fa("serial mouse reset"),d=!0),a.gd&1||(a.Fa("serial mouse ID requested"),d=!0),d&&(Sj(a.Of,[77]),a.Fa("serial mouse ID sent")),Wj(a,a.Mb),a.mc=c):a.mc&&(a.Fa("serial mouse inactive"),Xj(a.Mb),a.mc=c),a.gd=b)};k.Fa=function(a){this.Z&&L(this.Z,this.Z.Tj)&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Tj,e)};
var Tj={0:X.prototype.tn,1:X.prototype.dn,2:X.prototype.en,3:X.prototype.fn,4:X.prototype.hn,5:X.prototype.gn,6:X.prototype.on},Uj={0:X.prototype.Oo,1:X.prototype.zo,3:X.prototype.Ao,4:X.prototype.Bo};za(function(){for(var a=A(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new X(d);Ma(d,c)}});function Yj(a){w.call(this,"Mouse",a,Yj);if(this.Ai=a.serial)this.Gj="SerialPort";this.mc=!1;this.Sa()}x(w,Yj);k=Yj.prototype;
k.pc=function(a,b,c,d){this.Da=a;this.na=b;this.S=c;(this.Z=d)&&Jh(d,Yj)};k.bc=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.Gj&&!this.Of){for(var c=null;(c=B(this.Da,this.Gj,c))&&(!c.$j||!(this.Of=c.$j(this.Ai,this))););if(this.Of){if(c=B(this.Da,"Video"))this.Mb=c.Mb}else v(this.id+": "+this.Gj+" "+this.Ai+" unavailable")}this.mc?Wj(this,this.Mb):Xj(this.Mb)}return!0};k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ge()};
k.save=function(){var a=new H(this);a.set(0,this.Lj());return a.data()};k.restore=function(a){return this.ge(a[0])};k.ge=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.mc=a[b++];this.zg=a[b++];this.Ag=a[b++];this.wf=a[b++];this.xf=a[b++];this.eh=a[b++];this.fh=a[b++];this.gd=a[b];return!0};k.Lj=function(){var a=0,b=[];b[a++]=this.mc;b[a++]=this.zg;b[a++]=this.Ag;b[a++]=this.wf;b[a++]=this.xf;b[a++]=this.eh;b[a++]=this.fh;b[a]=this.gd;return b};
function Wj(a,b){b&&(a.ni||(b.addEventListener("mousemove",function(b){if(a.mc&&a.S&&a.S.Ob){if(0>a.zg||0>a.Ag)a.zg=b.clientX,a.Ag=b.clientY;a.wf=b.clientX-a.zg;a.xf=b.clientY-a.Ag;(a.wf||a.xf)&&Zj(a,null,b.clientX,b.clientY);a.zg=b.clientX;a.Ag=b.clientY}},!1),b.addEventListener("mousedown",function(b){ak(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){ak(a,b.button,!1)},!1),a.ni=!0),b.style.cursor="none")}function Xj(a){a&&(a.style.cursor="auto")}
function ak(a,b,c){if(a.mc&&a.S&&a.S.Ob)switch(b){case 0:a.eh!=c&&(a.eh=c,Zj(a,"mouse button1 "+(c?"dn":"up")));break;case 2:a.fh!=c&&(a.fh=c,Zj(a,"mouse button2 "+(c?"dn":"up")))}}function Zj(a,b,c,d){var e=64|(a.eh?32:0)|(a.fh?16:0)|(a.xf&192)>>4|(a.wf&192)>>6,f=a.wf&63,g=a.xf&63;a.Fa((b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+p(e)+","+p(f)+","+p(g)+"]");Sj(a.Of,[e,f,g]);a.wf=a.xf=0}k.Fa=function(a){this.Z&&L(this.Z,this.Z.lm)&&this.Z.message(a)};
function ak(a,b,c){if(a.mc&&a.S&&a.S.Ob)switch(b){case 0:a.eh!=c&&(a.eh=c,Zj(a,"mouse button1 "+(c?"dn":"up")));break;case 2:a.fh!=c&&(a.fh=c,Zj(a,"mouse button2 "+(c?"dn":"up")))}}function Zj(a,b,c,d){var e=64|(a.eh?32:0)|(a.fh?16:0)|(a.xf&192)>>4|(a.wf&192)>>6,f=a.wf&63,g=a.xf&63;a.Fa((b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+p(e)+","+p(f)+","+p(g)+"]");Sj(a.Of,[e,f,g]);a.wf=a.xf=0}k.Fa=function(a){this.Z&&L(this.Z,this.Z.km)&&this.Z.message(a)};
za(function(){for(var a=A(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Yj(d);Ma(d,c)}});function bk(a,b,c){w.call(this,"Disk",{id:a.nh+".disk"+ck++},bk);this.ia=a;this.Da=a.Da;this.Z=a.Z;this.Na=b;this.mode=c;this.Kd=b.name;this.Ac=b.Ac;this.qc=b.qc;this.$c=b.$c;this.Tb=b.Tb;this.cf=b.cf;this.ti=this.Ad=!1;this.create();this.qe=[];this.Fg=[];this.Pd=null;this.Gk=0;this.vi=!1;this.Sa()}var ck=0;x(w,bk);k=bk.prototype;k.pc=function(a,b,c,d){this.Z=d};
k.bc=function(a,b){b||this.ti&&!this.Ad&&this.load(this.Kd,this.rf);return!0};k.Yb=function(a,b){if(this.Ad){var c,d=0;if(this.vi&&!ra("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=dk(this,!1);)if(d=c[0]){this.Ha('Unable to save "'+this.Kd+'" (error '+d+")");break}b&&this.Ad&&(c="action=close&volume="+this.rf,c+="&machine="+this.ia.ef(),c+="&user="+this.ia.ee(),pa(qa()+"/api/v1/disk?"+c,!0),this.Ad=!1);d||this.Ha(this.Kd+" saved")}return!0};
k.create=function(){this.ib=[];if("preload"!=this.mode){for(var a=Array(this.Ac),b=0;b<a.length;b++){for(var c=Array(this.qc),d=0;d<c.length;d++){for(var e=Array(this.$c),f=1;f<=e.length;f++)e[f-1]=ek(null,b,d,f,this.Tb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.ib=a}this.bh=0};
k.load=function(a,b,c){var d=b;this.Kd=a;this.rf=b;this.xk=c;0>b.indexOf("/api/v1/dump")&&(a=ea(b),"json"==a?d=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.Ac+":"+this.qc+":"+this.$c+":"+this.Tb,a+="&machine="+this.ia.ef(),a+="&user="+this.ia.ee(),d=qa()+"/api/v1/disk?"+a,this.ti=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):
-1!==b.indexOf("/",b.length-1)&&(c="dir"),d=qa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.cf?"":d)+"&format=json"));pa(d,!0,null,this,this.Un,b)};
k.Un=function(a,b,c,d){var e=null;this.df=!1;var f=0>c&&this.Da&&!this.Da.Nb;if(this.ti)c?this.Ha('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Ad=!0,e=this);else if(c)this.Ha('Unable to load disk "'+this.Kd+'" (error '+c+")",f);else try{if(0<da(a,!0).toLowerCase().indexOf("-readonly"))this.df=!0;else{var g=b.indexOf("\n");0<g&&1024>g&&0<b.substring(0,g).indexOf("write-protected")&&(this.df=!0)}var h;h="<"==b.substr(0,1)?["Missing disk image: "+this.Kd]:0>b.indexOf("0x")&&'["'!=
-1!==b.indexOf("/",b.length-1)&&(c="dir"),d=qa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.cf?"":d)+"&format=json"));pa(d,!0,null,this,this.Tn,b)};
k.Tn=function(a,b,c,d){var e=null;this.df=!1;var f=0>c&&this.Da&&!this.Da.Nb;if(this.ti)c?this.Ha('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Ad=!0,e=this);else if(c)this.Ha('Unable to load disk "'+this.Kd+'" (error '+c+")",f);else try{if(0<da(a,!0).toLowerCase().indexOf("-readonly"))this.df=!0;else{var g=b.indexOf("\n");0<g&&1024>g&&0<b.substring(0,g).indexOf("write-protected")&&(this.df=!0)}var h;h="<"==b.substr(0,1)?["Missing disk image: "+this.Kd]:0>b.indexOf("0x")&&'["'!=
b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(h.length)if(1==h.length)v(h[0]);else{for(b=a=0;b<h.length;b++)for(c=0;c<h[b].length;c++)for(d=0;d<h[b][c].length;d++){var m=h[b][c][d],n=m.length;void 0===n&&(n=m.length=512);var n=n>>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var t=m.data;if(void 0===t){var s=m.bytes;if(void 0!==s&&s.length){for(var f=n<<2,u=s.length;u<f;u++)s[u]=q;this.fill(m,s,0)}else t=[],q=m.pattern=q|q<<8|q<<16|q<<24,m.data=
t;delete m.bytes}ek(m,b,c);for(f=0;f<t.length;f++)a=a+t[f]&4294967295}this.ib=h;this.bh=a;e=this}else v("Empty disk image: "+this.Kd)}catch(z){v("Disk image error: "+z.message)}this.xk&&this.xk.call(this.ia,this.Na,e,this.Kd,this.rf)};function ek(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Cm=b;a.Em=c;a.Xc=a.Hc=0;a.bb=!1;return a}
k.Vn=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],g=d[2],h=d[3];a=d[4];b=JSON.parse(b);for(var m=0;h--;){var n=this.seek(e,f,g,!0);if(!n)break;this.fill(n,b,m);m+=n.length;g++}}(d=d[5])&&d(c,a)};function fk(a,b,c,d,e,f){if(a.Ad){var g;g="action=read&volume="+a.rf;g+="&chs="+a.Ac+":"+a.qc+":"+a.$c+":"+a.Tb;g=g+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ia.ef());g+="&user="+a.ia.ee();pa(qa()+"/api/v1/disk?"+g,!0,null,a,a.Vn,[b,c,d,e,!0,f])}else f&&f(-1,!1)}
t;delete m.bytes}ek(m,b,c);for(f=0;f<t.length;f++)a=a+t[f]&4294967295}this.ib=h;this.bh=a;e=this}else v("Empty disk image: "+this.Kd)}catch(z){v("Disk image error: "+z.message)}this.xk&&this.xk.call(this.ia,this.Na,e,this.Kd,this.rf)};function ek(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Bm=b;a.Dm=c;a.Xc=a.Hc=0;a.bb=!1;return a}
k.Un=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],g=d[2],h=d[3];a=d[4];b=JSON.parse(b);for(var m=0;h--;){var n=this.seek(e,f,g,!0);if(!n)break;this.fill(n,b,m);m+=n.length;g++}}(d=d[5])&&d(c,a)};function fk(a,b,c,d,e,f){if(a.Ad){var g;g="action=read&volume="+a.rf;g+="&chs="+a.Ac+":"+a.qc+":"+a.$c+":"+a.Tb;g=g+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ia.ef());g+="&user="+a.ia.ee();pa(qa()+"/api/v1/disk?"+g,!0,null,a,a.Un,[b,c,d,e,!0,f])}else f&&f(-1,!1)}
function gk(a,b,c){b.bb=!0;var d=a.qe.indexOf(b);0<=d&&(a.qe.splice(d,1),a.Fg.splice(d,1));a.qe.push(b);a.Fg.push(ma());c&&hk(a)}function hk(a){if(a.qe.length){var b=a.Fg[0]+2E3;a.Pd&&a.Gk<b&&(clearTimeout(a.Pd),a.Pd=null);if(!a.Pd){var c=ma(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.Pd=setTimeout(function(){dk(a,!0)},b);a.Gk=c+b}}else a.Pd&&(clearTimeout(a.Pd),a.Pd=null)}
function dk(a,b){b&&(a.Pd=null);var c=a.qe[0];if(c){for(var d=c.Cm,e=c.Em,c=c.sector,f=0,g=[],h=c-1;h<a.ib[d][e].length;h++){var m=a.ib[d][e][h];if(!m.bb)break;var n=a.qe.indexOf(m);a.qe.splice(n,1);a.Fg.splice(n,1);g=g.concat(ik(m));m.bb=!1;f++}a.Ad?(h={},a.vi=!0,h.action="write",h.volume=a.rf,h.chs=a.Ac+":"+a.qc+":"+a.$c+":"+a.Tb,h.addr=d+":"+e+":"+c+":"+f,h.machine=a.ia.ef(),h.user=a.ia.ee(),h.data=JSON.stringify(g),d=pa(qa()+"/api/v1/disk",b,h,a,a.$n,[d,e,c,f,b])):d=!1;return b||d}return!1}
k.$n=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.vi=!1;if(0<=a&&a<this.ib.length&&0<=b&&b<this.ib[a].length)for(e-=1;0<f--&&0<=e&&e<this.ib[a][b].length;e++){var g=this.ib[a][b][e];c?gk(this,g,!1):g.bb||(g.Xc=g.Hc=0)}d&&hk(this)};k.info=function(){return this.ib.length?[this.ib.length,this.ib[0].length,this.ib[0][0].length,this.ib[0][0][0].length]:[0,0,0,0]};
function dk(a,b){b&&(a.Pd=null);var c=a.qe[0];if(c){for(var d=c.Bm,e=c.Dm,c=c.sector,f=0,g=[],h=c-1;h<a.ib[d][e].length;h++){var m=a.ib[d][e][h];if(!m.bb)break;var n=a.qe.indexOf(m);a.qe.splice(n,1);a.Fg.splice(n,1);g=g.concat(ik(m));m.bb=!1;f++}a.Ad?(h={},a.vi=!0,h.action="write",h.volume=a.rf,h.chs=a.Ac+":"+a.qc+":"+a.$c+":"+a.Tb,h.addr=d+":"+e+":"+c+":"+f,h.machine=a.ia.ef(),h.user=a.ia.ee(),h.data=JSON.stringify(g),d=pa(qa()+"/api/v1/disk",b,h,a,a.Zn,[d,e,c,f,b])):d=!1;return b||d}return!1}
k.Zn=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.vi=!1;if(0<=a&&a<this.ib.length&&0<=b&&b<this.ib[a].length)for(e-=1;0<f--&&0<=e&&e<this.ib[a][b].length;e++){var g=this.ib[a][b][e];c?gk(this,g,!1):g.bb||(g.Xc=g.Hc=0)}d&&hk(this)};k.info=function(){return this.ib.length?[this.ib.length,this.ib[0].length,this.ib[0][0].length,this.ib[0][0][0].length]:[0,0,0,0]};
function jk(a){a=JSON.stringify(a.ib);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,"");return a=a.replace(/(sector|length|data|pattern):/gm,'"$1":')}
k.seek=function(a,b,c,d,e){var f=null,g=this.Na,h=this.ib[a];if(h){var m=h[b];if(!m&&g.Hf&&b<g.qc)for(m=h[b]=Array(g.Yd),h=0;h<m.length;h++)m[h]=ek(null,a,b,h+1,g.Wa,0);if(m){for(h=0;h<m.length;h++)if(m[h].sector==c){f=m[h];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++h<m.length;)null===m[h].pattern&&d++;fk(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&g.Hf&&9==g.Qa&&(f=m[h]=ek(null,a,b,g.Qa,g.Wa,0))}}e&&e(f,!1);return f};
k.fill=function(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e};function ik(a){var b=a.length,c=Array(b),d=0,b=b>>2,e=a.data;a=a.pattern;for(var f=0;f<b;f++){var g=f<e.length?e[f]:a;c[d++]=g&255;c[d++]=g>>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}function kk(a,b){var c=-1;if(b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c}
k.write=function(a,b,c){if(this.df)return!1;if(b<a.length){if(c!=kk(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Hc?f<a.Xc?(a.Hc+=a.Xc-f,a.Xc=f):f>=a.Xc+a.Hc&&(a.Hc+=f-(a.Xc+a.Hc)+1):(a.Xc=f,a.Hc=1);d[f]=d[f]&~(255<<b)|c<<b;this.Ad&&gk(this,a,!0)}return!0}return null};
k.save=function(){var a=0,b=[];b[a++]=[this.rf,this.bh];if(!this.Ad&&!this.df)for(var c=this.ib,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var g=c[d][e][f];if(g.Hc){for(var h=[],m=0,n=g.Xc,q=g.Xc+g.Hc;n<q;)h[m++]=g.data[n++];b[a++]=[d,e,f,g.Xc,h]}}return b};
k.restore=function(a){var b=0,c="unsupported restore format";if(this.ib.length&&a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&e[1]!=this.bh&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.bh+")",b=-1);for(;d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],m=g[f++],n=g[f++];if(h>=this.ib.length||m>=this.ib[h].length||n>=this.ib[h][m].length){c="sector "+h+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.df){c="unable to modify write-protected disk";b=-1;break}e=
g[f++];f=g[f++];g=e+f.length;h=this.ib[h][m][n];for(m=h.data.length;m<e;)h.data[m++]=h.pattern;m=0;h.Xc=e;for(h.Hc=f.length;e<g;)h.data[e++]=f[m++];b++}}0>b&&this.Ha("unable to restore disk '"+this.Kd+": "+c);return b};k.Fa=function(a){this.Z&&L(this.Z,this.Z.im)&&this.Z.message(a)};
function lk(a){w.call(this,"FDC",a,lk);this.dmaRead=this.hi;this.dmaWrite=this.ii;this.dmaFormat=this.qm;this.Ke=null;if(a.autoMount&&(this.Ke=a.autoMount,"string"==typeof this.Ke))try{this.Ke=eval("("+a.autoMount+")")}catch(b){v("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Ke=null}this.vc=[];this.Ed();this.Gf()||this.Sa()}x(w,lk);
g[f++];f=g[f++];g=e+f.length;h=this.ib[h][m][n];for(m=h.data.length;m<e;)h.data[m++]=h.pattern;m=0;h.Xc=e;for(h.Hc=f.length;e<g;)h.data[e++]=f[m++];b++}}0>b&&this.Ha("unable to restore disk '"+this.Kd+": "+c);return b};k.Fa=function(a){this.Z&&L(this.Z,this.Z.hm)&&this.Z.message(a)};
function lk(a){w.call(this,"FDC",a,lk);this.dmaRead=this.hi;this.dmaWrite=this.ii;this.dmaFormat=this.pm;this.Ke=null;if(a.autoMount&&(this.Ke=a.autoMount,"string"==typeof this.Ke))try{this.Ke=eval("("+a.autoMount+")")}catch(b){v("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Ke=null}this.vc=[];this.Ed();this.Gf()||this.Sa()}x(w,lk);
var mk={3:{$d:3,Ce:0,name:"SPECIFY"},4:{$d:2,Ce:1,name:"DRIVE_STATUS"},5:{$d:9,Ce:7,name:"WRITE_DATA"},6:{$d:9,Ce:7,name:"READ_DATA"},7:{$d:2,Ce:0,name:"RECALIBRATE"},8:{$d:1,Ce:2,name:"INT_STATUS"},13:{$d:6,Ce:7,name:"FORMAT"},15:{$d:3,Ce:0,name:"SEEK"}};k=lk.prototype;
k.wb=function(a,b,c,d){switch(c){case "listDisks":return this.ta[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.ta.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var m={};if(d=d.getAttribute("data-value"))try{m=eval("({"+d+"})")}catch(n){v("FDC option error: "+(n.message||n))}d=m.desc;void 0===d&&(d="");m=m.href;void 0!==m&&(d='<a href="'+m+'" target="_blank">'+d+"</a>");c.innerHTML=
d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.ta[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||nk(a,c)}}(this,d),!0;case "loadDrive":return this.ta[c]=d,d.onclick=function(a){return function(){var b,c=a.ta.listDisks,d=a.ta.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&b<a.ya.length)if(d=c.value){c=c.options[c.selectedIndex].text;if("?"==d){d=window.prompt("Enter the URL of a disk image to load.","");if(!d)return;c=da(d);a.ca("Attempting to load "+
@ -595,53 +595,53 @@ k.Ij=function(){var a=0,b=[];b[a++]=this.Ab;b[a++]=0;b[a++]=this.za;b[a++]=this.
k.Bi=function(a,b,c){var d=0,e=!0;a.Ab=b;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.Ac||40,c[3],9,512,c[1]]);a.Za=c[d++];a.name=c[d][0];a.Ac=c[d][1];a.qc=c[d][2];a.$c=c[d][3];a.Tb=c[d][4];a.cf=c[d][5];d++;a.ek=1;a.Ma=c[d++];a.Wd=c[d++];a.tb=c[d++];a.Wd=100<=a.Wd?a.Wd-100:a.Wd-a.tb;a.Qa=c[d++];a.Yd=c[d++];a.Wa=c[d++];a.Va=c[d++];a.Ra=null;a.va||(a.Ne="");var f=c[d++];f===tk?(f=c[d++],c=c[d],ok(this,b,f,c,!0)?a.va&&uk(this,f,c,a.va):this.Sa(!1)):void 0!==f&&a.va&&
0>a.va.restore(f)&&(e=!1);e&&a.va&&void 0!==a.Va&&(a.Ra=a.va.seek(a.tb,a.Ma,a.Qa));return e};k.Kj=function(){for(var a=0,b=[],c=0;c<this.ya.length;c++)b[a++]=this.Jj(this.ya[c]);return b};k.Jj=function(a){var b=0,c=[];c[b++]=a.Za;c[b++]=[a.name,a.Ac,a.qc,a.$c,a.Tb,a.cf];c[b++]=a.Ma;c[b++]=a.Wd+100;c[b++]=a.tb;c[b++]=a.Qa;c[b++]=a.Yd;c[b++]=a.Wa;c[b++]=a.Va;c[b++]=tk;c[b++]=a.Xl;c[b]=a.Ne;return c};k.mk=function(a){var b;a=this.ya[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
k.$l=function(a,b,c){if(a.va){var d=a.va.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.tb=Math.floor(b/f),b%=f,a.Ma=Math.floor(b/e),a.Qa=b%e+1,a.Wa=c*d[3],a.Za=0,!0}return!1};k.Gf=function(a){a||(this.ye=0);if(this.Ke)for(var b in this.Ke){var c=this.Ke[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.ya.length){!ok(this,d,c.name,c.path,!0)&&a&&this.Sa(!1);continue}}this.Ha("Unrecognized auto-mount specification for drive "+b)}return!!this.ye};
function ok(a,b,c,d,e){var f=a.ya[b];if(d&&f.Ne!=d){pk(a,b,e,!0);if(f.Kc)return a.Ha("Drive "+b+" busy"),!0;f.Kc=!0;e&&(f.Fe=!0,a.ye++,a.Fa("loading diskette '"+c+"'"));(new bk(a,f,"preload")).load(c,d,a.Ln);return!1}return!0}
k.Ln=function(a,b,c,d){a.Kc=!1;b&&b.ib.length>a.Ac&&(this.Ha('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Ab)),b=null);b&&(a.va=b,a.Xl=c,a.Ne=d,uk(this,c,d,b),this.me|=128,this.Ha('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Ab),a.Fe));a.Fe&&(a.Fe=!1,--this.ye||this.Sa());nk(this,a.Ab)};
function ok(a,b,c,d,e){var f=a.ya[b];if(d&&f.Ne!=d){pk(a,b,e,!0);if(f.Kc)return a.Ha("Drive "+b+" busy"),!0;f.Kc=!0;e&&(f.Fe=!0,a.ye++,a.Fa("loading diskette '"+c+"'"));(new bk(a,f,"preload")).load(c,d,a.Kn);return!1}return!0}
k.Kn=function(a,b,c,d){a.Kc=!1;b&&b.ib.length>a.Ac&&(this.Ha('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Ab)),b=null);b&&(a.va=b,a.Xl=c,a.Ne=d,uk(this,c,d,b),this.me|=128,this.Ha('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Ab),a.Fe));a.Fe&&(a.Fe=!1,--this.ye||this.Sa());nk(this,a.Ab)};
function nk(a,b){if(0<=b&&b<a.ya.length){var c=a.ya[b],d=a.ta.listDisks,e=a.ta.listDrives;if(d&&e&&(e=parseInt(e.value,10),!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c.Ne){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function pk(a,b,c,d){var e=a.ya[b];e.va&&(sk(a,e.Ne,e.va),e.Xl="",e.Ne="",e.va=null,a.me|=128,d||a.Ha("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||nk(a,b))}
function uk(a,b,c,d){var e;for(e=0;e<a.vc.length;e++)if(a.vc[e][1]==c){d.restore(a.vc[e][2]);return}a.vc[e]=[b,c,[]]}function sk(a,b,c){var d;for(d=0;d<a.vc.length;d++)if(a.vc[d][1]==b){a.vc[d][2]=c.save();break}}k.vo=function(a,b,c){this.ba(a,b,c,"OUTPUT");b&4?this.qf&4||this.qf&8&&this.ka&&Q(this.ka,6):this.Ed();this.qf=b};k.$m=function(a,b){this.ba(a,null,b,"STATUS",this.za);return this.za};
k.Ym=function(a,b){var c=0;this.mb<this.Ya&&(c=this.cc[this.mb]);this.qf&8&&this.ka&&ti(this.ka,6);this.ba(a,null,b,"DATA["+this.mb+"]",c);++this.mb>=this.Ya&&(this.za&=-81,this.mb=this.Ya=0);return c};
k.uo=function(a,b,c){this.ba(a,b,c,"DATA["+this.Ya+"]");this.Ya<this.cc.length&&(this.cc[this.Ya++]=b);a=this.cc[0]&31;if(void 0!==mk[a]&&this.Ya>=mk[a].$d){b=!1;this.mb=0;var d;a=this.Oa()&31;switch(a){case 3:this.Oa("SRT");this.Oa("HLT");this.Lb();break;case 4:c=this.Oa("DS");this.Ab=c&3;d=this.ya[this.Ab];this.Lb();this.rb((d.Za&4278190080)>>>24,"ST3");break;case 5:case 6:c=this.Oa("DS");this.Ab=c&3;d=this.ya[this.Ab];d.Ma=c>>2&1;d.tb=this.Oa("C");this.Oa("H");d.Qa=this.Oa("R");b=this.Oa("N");
function uk(a,b,c,d){var e;for(e=0;e<a.vc.length;e++)if(a.vc[e][1]==c){d.restore(a.vc[e][2]);return}a.vc[e]=[b,c,[]]}function sk(a,b,c){var d;for(d=0;d<a.vc.length;d++)if(a.vc[d][1]==b){a.vc[d][2]=c.save();break}}k.uo=function(a,b,c){this.ba(a,b,c,"OUTPUT");b&4?this.qf&4||this.qf&8&&this.ka&&Q(this.ka,6):this.Ed();this.qf=b};k.Zm=function(a,b){this.ba(a,null,b,"STATUS",this.za);return this.za};
k.Xm=function(a,b){var c=0;this.mb<this.Ya&&(c=this.cc[this.mb]);this.qf&8&&this.ka&&ti(this.ka,6);this.ba(a,null,b,"DATA["+this.mb+"]",c);++this.mb>=this.Ya&&(this.za&=-81,this.mb=this.Ya=0);return c};
k.to=function(a,b,c){this.ba(a,b,c,"DATA["+this.Ya+"]");this.Ya<this.cc.length&&(this.cc[this.Ya++]=b);a=this.cc[0]&31;if(void 0!==mk[a]&&this.Ya>=mk[a].$d){b=!1;this.mb=0;var d;a=this.Oa()&31;switch(a){case 3:this.Oa("SRT");this.Oa("HLT");this.Lb();break;case 4:c=this.Oa("DS");this.Ab=c&3;d=this.ya[this.Ab];this.Lb();this.rb((d.Za&4278190080)>>>24,"ST3");break;case 5:case 6:c=this.Oa("DS");this.Ab=c&3;d=this.ya[this.Ab];d.Ma=c>>2&1;d.tb=this.Oa("C");this.Oa("H");d.Qa=this.Oa("R");b=this.Oa("N");
d.Wa=128<<b;d.Yd=this.Oa("EOT");this.Oa("GPL");this.Oa("DTL");6==a?this.ji(d):this.ki(d);this.Lb();vk(this,d);this.rb((d.Za&65280)>>>8,"ST1");this.rb((d.Za&16711680)>>>16,"ST2");this.rb(d.tb,"C");this.rb(d.Ma,"H");this.rb(d.Qa,"R");this.rb(b,"N");b=!0;break;case 7:c=this.Oa("DS");this.Ab=c&3;d=this.ya[this.Ab];d.tb=d.Wd=0;d.Za=268435488;this.Lb();b=!0;break;case 8:d=this.ya[this.Ab];d.Ma=0;this.Lb();vk(this,d);this.rb(d.tb,"PCN");break;case 13:c=this.Oa("DS");this.Ab=c&3;d=this.ya[this.Ab];d.Ma=c>>
2&1;b=this.Oa("N");d.Wa=128<<b;d.Yd=this.Oa("SC");this.Oa("GPL");d.ak=this.Oa("D");this.ok(d);this.Lb();vk(this,d);this.rb((d.Za&65280)>>>8,"ST1");this.rb((d.Za&16711680)>>>16,"ST2");this.rb(d.tb,"C");this.rb(d.Ma,"H");this.rb(d.Qa,"R");this.rb(b,"N");b=!0;break;case 15:c=this.Oa("DS"),this.Ab=c&3,d=this.ya[this.Ab],d.Ma=c>>2&1,a=this.Oa("NCN"),d.tb+=a-d.Wd,0>d.tb&&(d.tb=0),d.tb>=d.Ac&&(d.tb=d.Ac-1),d.Wd=a,d.Za=32,0==d.tb&&(d.Za|=268435456),this.Lb(),b=!0}0<this.Ya&&(this.za|=80);this.qf&8&&(!d||
d.Za&8||!b||this.ka&&Q(this.ka,6))}};k.Zm=function(a,b){var c=this.me;this.me&=-129;this.ba(a,null,b,"INPUT",c);return c};k.to=function(a,b,c){this.ba(a,b,c,"CONTROL");this.Sl=b};k.Oa=function(){var a=this.cc[this.mb];this.mb++;return a};k.Lb=function(){this.mb=this.Ya=0};k.rb=function(a){this.cc[this.Ya++]=a};function vk(a,b){a.rb(b.Ab|b.Ma<<2|b.Za&255,"ST0")}k.hi=function(a,b,c){void 0===b||0>b?this.tc(a,c):c(-1,!1)};k.ii=function(a,b){return void 0!==b&&0<=b?this.Cc(a,b):-1};
k.qm=function(a,b){return void 0!==b&&0<=b?this.Mj(a,b):-1};k.ji=function(a){a.Za=72;a.va&&(a.Ra=null,a.Za=0,this.ka&&(mi(this.ka,2,this,"dmaRead",a),gi(this.ka,2)))};k.ki=function(a){a.Za=72;a.va&&(a.va.df?a.Za=576:(a.Ra=null,a.Za=0,this.ka&&(mi(this.ka,2,this,"dmaWrite",a),gi(this.ka,2))))};k.ok=function(a){a.Za=72;a.va&&(a.Ra=null,a.Za=0,this.ka&&(a.Be=0,a.xc=Array(4),a.Hf=!0,a.Nf=0,mi(this.ka,2,this,"dmaFormat",a),gi(this.ka,2),a.Hf=!1))};
d.Za&8||!b||this.ka&&Q(this.ka,6))}};k.Ym=function(a,b){var c=this.me;this.me&=-129;this.ba(a,null,b,"INPUT",c);return c};k.so=function(a,b,c){this.ba(a,b,c,"CONTROL");this.Sl=b};k.Oa=function(){var a=this.cc[this.mb];this.mb++;return a};k.Lb=function(){this.mb=this.Ya=0};k.rb=function(a){this.cc[this.Ya++]=a};function vk(a,b){a.rb(b.Ab|b.Ma<<2|b.Za&255,"ST0")}k.hi=function(a,b,c){void 0===b||0>b?this.tc(a,c):c(-1,!1)};k.ii=function(a,b){return void 0!==b&&0<=b?this.Cc(a,b):-1};
k.pm=function(a,b){return void 0!==b&&0<=b?this.Mj(a,b):-1};k.ji=function(a){a.Za=72;a.va&&(a.Ra=null,a.Za=0,this.ka&&(mi(this.ka,2,this,"dmaRead",a),gi(this.ka,2)))};k.ki=function(a){a.Za=72;a.va&&(a.va.df?a.Za=576:(a.Ra=null,a.Za=0,this.ka&&(mi(this.ka,2,this,"dmaWrite",a),gi(this.ka,2))))};k.ok=function(a){a.Za=72;a.va&&(a.Ra=null,a.Za=0,this.ka&&(a.Be=0,a.xc=Array(4),a.Hf=!0,a.Nf=0,mi(this.ka,2,this,"dmaFormat",a),gi(this.ka,2),a.Hf=!1))};
k.tc=function(a,b){var c=-1;if(!a.Za&&a.va){do{if(a.Ra&&0<=(c=kk(a.Ra,a.Va++)))break;a.Ra=a.va.seek(a.tb,a.Ma,a.Qa);if(!a.Ra){a.Za=1088;break}a.Va=0;this.Ef(a)}while(1)}b(c,!1)};k.Cc=function(a,b){if(a.Za||!a.va)return-1;do{if(a.Ra&&a.va.write(a.Ra,a.Va++,b))break;a.Ra=a.va.seek(a.tb,a.Ma,a.Qa);if(!a.Ra){a.Za=8256;b=-1;break}a.Va=0;this.Ef(a)}while(1);return b};k.Ef=function(a){a.Qa++;a.Qa>=a.$c+1&&(a.Qa=1,a.Ma++,a.Ma>=a.qc&&(a.Ma=0,a.tb++))};
k.Mj=function(a,b){if(a.Za)return-1;a.xc[a.Be++]=b;if(a.Be==a.xc.length){a.tb=a.xc[0];a.Ma=a.xc[1];a.Qa=a.xc[2];a.Wa=128<<a.xc[3];for(var c=a.Be=0;c<a.Wa;c++)if(0>this.Cc(a,a.ak))return-1;a.Nf++}a.Nf>=a.Yd&&(b=-1);return b};
k.Di=function(a){var b=this.S.G&255,c=this.S.G>>8,d=this.S.I&255,e=this.S.I>>8,f=this.S.J&255,g=this.S.J>>8;this.Z&&L(this.Z,this.Z.Bg)&&128>f&&(this.Z.message("\nFDC.intBIOS(AH="+p(c)+",D="+p(f)+",C="+p(e)+",H="+p(g)+",S="+p(d)+",N="+p(b)+") at "+ca(a-this.S.ra.La,this.S.ra.oa)),Bc(this.S,a,function(a,b){return function(c){b=E(a.S)-b;a.Fa("FDC.intBIOS("+c+"): C="+(Pc(a.S)?1:0)+" (cycles="+b+")")}}(this,E(this.S))));return!0};k.Fa=function(a){this.Z&&L(this.Z,this.Z.Bg)&&this.Z.message(a)};
k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Bg,e)};var qk={1012:lk.prototype.$m,1013:lk.prototype.Ym,1015:lk.prototype.Zm},rk={1010:lk.prototype.vo,1013:lk.prototype.uo,1015:lk.prototype.to};za(function(){for(var a=A(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new lk(d);Ma(d,c)}});
function Y(a){w.call(this,"HDC",a,Y);this.dmaRead=this.hi;this.dmaWrite=this.ii;this.dmaWriteBuffer=this.rm;this.dmaWriteFormat=this.sm;this.Qh=[];if(a.drives)try{this.Qh=eval("("+a.drives+")")}catch(b){v("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.Xf=(this.Ee="at"==a.type)?1:0;this.Dm=this.Ee?2:3}x(w,Y);
var wk=[{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]}];k=Y.prototype;k.wb=function(){return!1};k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;this.Da=a;this.ka=B(a,"ChipSet");gb(b,this,this.Ee?xk:yk);kb(b,this,this.Ee?zk:Ak);Ac(c,19,this,this.Dn);Ac(c,64,this,this.Di);this.reset();this.Gf()||this.Sa()};
k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Bg,e)};var qk={1012:lk.prototype.Zm,1013:lk.prototype.Xm,1015:lk.prototype.Ym},rk={1010:lk.prototype.uo,1013:lk.prototype.to,1015:lk.prototype.so};za(function(){for(var a=A(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new lk(d);Ma(d,c)}});
function Y(a){w.call(this,"HDC",a,Y);this.dmaRead=this.hi;this.dmaWrite=this.ii;this.dmaWriteBuffer=this.qm;this.dmaWriteFormat=this.rm;this.Qh=[];if(a.drives)try{this.Qh=eval("("+a.drives+")")}catch(b){v("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.Xf=(this.Ee="at"==a.type)?1:0;this.Cm=this.Ee?2:3}x(w,Y);
var wk=[{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]}];k=Y.prototype;k.wb=function(){return!1};k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;this.Da=a;this.ka=B(a,"ChipSet");gb(b,this,this.Ee?xk:yk);kb(b,this,this.Ee?zk:Ak);Ac(c,19,this,this.Cn);Ac(c,64,this,this.Di);this.reset();this.Gf()||this.Sa()};
k.bc=function(a,b){if(!b)if(!a||!this.restore)this.Ed(),this.Da.ui&&this.Gf(!0);else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};k.ef=function(){return this.Da?this.Da.ef():""};k.ee=function(){return this.Da?this.Da.ee():""};k.reset=function(){this.Ed(null,!0)};k.save=function(){var a=new H(this);a.set(0,this.Ij());return a.data()};k.restore=function(a){return this.Ed(a[0])};
k.Ed=function(a,b){var c=0,d=!0;if(this.Ee)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.le=a[c++],this.Wl=a[c++],this.Gh=a[c++],this.Hh=a[c++],this.Fh=a[c++],this.Eh=a[c++],this.qg=a[c++],this.za=a[c++],this.Fj=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.pf=a[c++];this.za=a[c++];this.cc=a[c++];this.mb=a[c++];this.Ya=a[c++];this.Vl=a[c++];this.Ul=a[c++];this.Tl=a[c++];var e=a[c++];void 0!==e?this.ff=e:void 0===this.ff&&(this.ff=-1)}void 0===this.ya&&(this.ya=Array(this.Qh.length));c=a[c];void 0===
c&&(c=[]);for(e=0;e<this.ya.length;e++){void 0===this.ya[e]&&(this.ya[e]={});var f=this.ya[e];this.Bi(e,f,this.Qh[e],c[e],b)||(d=!1);null!=this.pf&&1>=e&&(this.pf|=(f.type&3)<<(1-e<<1))}return d};
k.Ij=function(){var a=0,b=[];this.Ee?(b[a++]=this.le,b[a++]=this.Wl,b[a++]=this.Gh,b[a++]=this.Hh,b[a++]=this.Fh,b[a++]=this.Eh,b[a++]=this.qg,b[a++]=this.za,b[a++]=this.Fj):(b[a++]=this.pf,b[a++]=this.za,b[a++]=this.cc,b[a++]=this.mb,b[a++]=this.Ya,b[a++]=this.Vl,b[a++]=this.Ul,b[a++]=this.Tl,b[a++]=this.ff);b[a]=this.Kj();return b};
k.Bi=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.Ab=a;b.errorCode=d[f++];b.bm=d[f++];b.cf=d[f++];b.Te=d[f++];b.Ue=d[f++];b.Ma=d[f++];b.qc=d[f++];b.Qd=d[f++];b.Qa=d[f++];b.Yd=d[f++];b.Wa=d[f++];b.Tg=this.Ee?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.ee()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===wk[this.Xf][b.type])b.type=this.Dm;c=wk[this.Xf][b.type];
k.Bi=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.Ab=a;b.errorCode=d[f++];b.bm=d[f++];b.cf=d[f++];b.Te=d[f++];b.Ue=d[f++];b.Ma=d[f++];b.qc=d[f++];b.Qd=d[f++];b.Qa=d[f++];b.Yd=d[f++];b.Wa=d[f++];b.Tg=this.Ee?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.ee()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===wk[this.Xf][b.type])b.type=this.Cm;c=wk[this.Xf][b.type];
b.$c=c[2]||17;b.Tb=c[3]||512;if(e&&this.ka&&(e=this.ka,c=b.type,e.pa)){var h=e.pa[18],h=a?h&240|c:h&15|c<<4;e.pa&&(e.pa[18]=h,Vh(e))}void 0===b.va&&(b.va=null,this.Ha("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Bk(this,b);b.Va=d[f++];b.Ra=null;b.va&&(a=d[f],void 0!==a&&0>b.va.restore(a)&&(g=!1),g&&void 0!==b.Va&&(b.Ra=b.va.seek(b.Qd,b.Ma,b.Qa+b.Tg)));return g};k.Kj=function(){for(var a=0,b=[],c=0;c<this.ya.length;c++)b[a++]=this.Jj(this.ya[c]);return b};
k.Jj=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.bm;c[b++]=a.cf;c[b++]=a.Te;c[b++]=a.Ue;c[b++]=a.Ma;c[b++]=a.qc;c[b++]=a.Qd;c[b++]=a.Qa;c[b++]=a.Yd;c[b++]=a.Wa;c[b++]=a.Va;c[b]=a.va?a.va.save():null;return c};k.mk=function(a){var b;a=this.ya[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
function Bk(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.Te[2])?e=b.Te[0]<<8|b.Te[1]:c=b.type);null==c||d||(d=wk[a.Xf][c][1],e=wk[a.Xf][c][0]);d&&((c=wk[a.Xf][b.type])&&e!=c[0]&&d!=c[1]&&a.Ha("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.Ac=e,b.qc=d,null==b.va&&(b.va=new bk(a,b,b.mode)))}}
k.$l=function(a,b,c){if(a.va){var d=a.va.info(),e=d[0];if(e){var f=d[2],g=d[1]*f;if(b+c<=e*g)return a.Qd=Math.floor(b/g),b%=g,a.Ma=Math.floor(b/f),a.Qa=b%f,a.Wa=c*d[3],a.errorCode=0,!0}}return!1};
k.Gf=function(a){a||(this.ye=0);for(var b=0;b<this.ya.length;b++){var c=this.ya[b];if(c.name&&c.path){var d;d=c.name;var c=c.path,e=this.ya[b];e.Kc?(this.Ha("Drive "+b+" busy"),d=!0):(e.Kc=!0,e.Fe=!0,this.ye++,this.Fa("loading "+d),(e.va||new bk(this,e,e.mode)).load(d,c,this.Kn),d=!1);!d&&a&&this.Sa(!1)}else a&&void 0!==c.type&&(c.va=null,Bk(this,c,c.type))}return!!this.ye};
k.Kn=function(a,b,c){a.Kc=!1;(a.va=b)&&this.Ha('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.Ab),a.Fe);a.Fe&&(a.Fe=!1,--this.ye||this.Sa())};k.An=function(a,b){var c=0;this.mb<this.Ya&&(c=this.cc[this.mb]);this.ka&&ti(this.ka,5);this.za&=-33;this.ba(a,null,b,"DATA["+this.mb+"]",c);++this.mb>=this.Ya&&(this.mb=this.Ya=0,this.za&=-15);return c};
k.Ro=function(a,b,c){this.ba(a,b,c,"DATA["+this.Ya+"]");this.Ya<this.cc.length&&(this.cc[this.Ya++]=b);a=12!=this.cc[0]?6:this.cc.length;6==this.Ya&&(this.za&=-2);this.Ya>=a&&(this.za|=2,this.za&=-2,Ck(this))};k.Bn=function(a,b){var c=this.za;this.ba(a,null,b,"STATUS",c);this.mb<this.Ya&&(this.za|=1);return c};k.Uo=function(a,b,c){this.ba(a,b,c,"RESET");this.Vl=b;this.ka&&ti(this.ka,5);this.Ed()};k.zn=function(a,b){this.ba(a,null,b,"CONFIG",this.pf);return this.pf};
k.To=function(a,b,c){this.ba(a,b,c,"PULSE");this.Ul=b;this.za=13};k.So=function(a,b,c){this.ba(a,b,c,"PATTERN");this.Tl=b};k.Aj=function(a,b,c){this.ba(a,b,c,"NOISE")};k.Lm=function(a,b){var c=-1,d=!1;if(this.Na&&(d=0<this.Na.Va,c=this.tc(this.Na),this.Na.Va==this.Na.Tb))if(this.Na.Wa-=this.Na.Tb,this.Na.Wa>=this.Na.Tb){var e=this;this.tc(this.Na,function(a){0<=a?e.ka&&Q(e.ka,14):(e.za=1,e.le=16)},!1)}else this.za=80;d||this.ba(a,null,b,"DATA",c);return c};
k.io=function(a,b,c){this.Na&&0!=this.Na.Va||this.ba(a,b,c,"DATA");this.Na&&this.Na.Wa>=this.Na.Tb&&(0>this.Cc(this.Na,b)?(this.za=1,this.le=16):this.Na.Va==this.Na.Tb&&(this.Na.Wa-=this.Na.Tb,this.ka&&Q(this.ka,14),this.Na.Wa>=this.Na.Tb||(this.za=80)))};k.Nm=function(a,b){var c=this.le;this.ba(a,null,b,"ERROR",c);return c};k.mo=function(a,b,c){this.ba(a,b,c,"WPREC");this.Wl=b};k.Om=function(a,b){var c=this.Gh;this.ba(a,null,b,"SECCNT",c);return c};
k.ko=function(a,b,c){this.ba(a,b,c,"SECCNT");this.Gh=b};k.Pm=function(a,b){var c=this.Hh;this.ba(a,null,b,"SECNUM",c);return c};k.lo=function(a,b,c){this.ba(a,b,c,"SECNUM");this.Hh=b};k.Km=function(a,b){var c=this.Fh;this.ba(a,null,b,"CYLLO",c);return c};k.ho=function(a,b,c){this.ba(a,b,c,"CYLLO");this.Fh=b};k.Jm=function(a,b){var c=this.Eh;this.ba(a,null,b,"CYLHI",c);return c};k.fo=function(a,b,c){this.ba(a,b,c,"CYLHI");this.Eh=b};k.Mm=function(a,b){var c=this.qg;this.ba(a,null,b,"DRVHD",c);return c};
k.jo=function(a,b,c){this.ba(a,b,c,"DRVHD");this.qg=b};k.Qm=function(a,b){var c=this.za;this.ba(a,null,b,"STATUS",c);return c};k.eo=function(a,b,c){this.ba(a,b,c,"COMMAND");this.Fj=b;this.ka&&ti(this.ka,14);Dk(this)};
k.Gf=function(a){a||(this.ye=0);for(var b=0;b<this.ya.length;b++){var c=this.ya[b];if(c.name&&c.path){var d;d=c.name;var c=c.path,e=this.ya[b];e.Kc?(this.Ha("Drive "+b+" busy"),d=!0):(e.Kc=!0,e.Fe=!0,this.ye++,this.Fa("loading "+d),(e.va||new bk(this,e,e.mode)).load(d,c,this.Jn),d=!1);!d&&a&&this.Sa(!1)}else a&&void 0!==c.type&&(c.va=null,Bk(this,c,c.type))}return!!this.ye};
k.Jn=function(a,b,c){a.Kc=!1;(a.va=b)&&this.Ha('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.Ab),a.Fe);a.Fe&&(a.Fe=!1,--this.ye||this.Sa())};k.zn=function(a,b){var c=0;this.mb<this.Ya&&(c=this.cc[this.mb]);this.ka&&ti(this.ka,5);this.za&=-33;this.ba(a,null,b,"DATA["+this.mb+"]",c);++this.mb>=this.Ya&&(this.mb=this.Ya=0,this.za&=-15);return c};
k.Qo=function(a,b,c){this.ba(a,b,c,"DATA["+this.Ya+"]");this.Ya<this.cc.length&&(this.cc[this.Ya++]=b);a=12!=this.cc[0]?6:this.cc.length;6==this.Ya&&(this.za&=-2);this.Ya>=a&&(this.za|=2,this.za&=-2,Ck(this))};k.An=function(a,b){var c=this.za;this.ba(a,null,b,"STATUS",c);this.mb<this.Ya&&(this.za|=1);return c};k.To=function(a,b,c){this.ba(a,b,c,"RESET");this.Vl=b;this.ka&&ti(this.ka,5);this.Ed()};k.yn=function(a,b){this.ba(a,null,b,"CONFIG",this.pf);return this.pf};
k.So=function(a,b,c){this.ba(a,b,c,"PULSE");this.Ul=b;this.za=13};k.Ro=function(a,b,c){this.ba(a,b,c,"PATTERN");this.Tl=b};k.Aj=function(a,b,c){this.ba(a,b,c,"NOISE")};k.Km=function(a,b){var c=-1,d=!1;if(this.Na&&(d=0<this.Na.Va,c=this.tc(this.Na),this.Na.Va==this.Na.Tb))if(this.Na.Wa-=this.Na.Tb,this.Na.Wa>=this.Na.Tb){var e=this;this.tc(this.Na,function(a){0<=a?e.ka&&Q(e.ka,14):(e.za=1,e.le=16)},!1)}else this.za=80;d||this.ba(a,null,b,"DATA",c);return c};
k.ho=function(a,b,c){this.Na&&0!=this.Na.Va||this.ba(a,b,c,"DATA");this.Na&&this.Na.Wa>=this.Na.Tb&&(0>this.Cc(this.Na,b)?(this.za=1,this.le=16):this.Na.Va==this.Na.Tb&&(this.Na.Wa-=this.Na.Tb,this.ka&&Q(this.ka,14),this.Na.Wa>=this.Na.Tb||(this.za=80)))};k.Mm=function(a,b){var c=this.le;this.ba(a,null,b,"ERROR",c);return c};k.lo=function(a,b,c){this.ba(a,b,c,"WPREC");this.Wl=b};k.Nm=function(a,b){var c=this.Gh;this.ba(a,null,b,"SECCNT",c);return c};
k.jo=function(a,b,c){this.ba(a,b,c,"SECCNT");this.Gh=b};k.Om=function(a,b){var c=this.Hh;this.ba(a,null,b,"SECNUM",c);return c};k.ko=function(a,b,c){this.ba(a,b,c,"SECNUM");this.Hh=b};k.Jm=function(a,b){var c=this.Fh;this.ba(a,null,b,"CYLLO",c);return c};k.fo=function(a,b,c){this.ba(a,b,c,"CYLLO");this.Fh=b};k.Im=function(a,b){var c=this.Eh;this.ba(a,null,b,"CYLHI",c);return c};k.eo=function(a,b,c){this.ba(a,b,c,"CYLHI");this.Eh=b};k.Lm=function(a,b){var c=this.qg;this.ba(a,null,b,"DRVHD",c);return c};
k.io=function(a,b,c){this.ba(a,b,c,"DRVHD");this.qg=b};k.Pm=function(a,b){var c=this.za;this.ba(a,null,b,"STATUS",c);return c};k.co=function(a,b,c){this.ba(a,b,c,"COMMAND");this.Fj=b;this.ka&&ti(this.ka,14);Dk(this)};
function Dk(a){var b=!1,c=a.Fj,d=a.qg&16?1:0,e=a.qg&15,f=a.Fh|(a.Eh&3)<<8,g=a.Hh,h=a.Gh;a.Na=null;a.le=0;a.za=80;(d=a.ya[d])?(d.Qd=f,d.Ma=e,d.Qa=g,d.Wa=h*d.Tb,c=144<=c?c:c&240,d.Ra=null,d.errorCode=0,a.Na=d):c=-1;switch(c&240){case 32:a.tc(d,function(b){0<=b&&a.ka?(Q(a.ka,14),a.za=136):(a.za=1,a.le=16)},!1);break;case 48:a.ka?(Q(a.ka,14),a.za=136):(a.za=1,a.le=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.le=1;b=!0;break;case 145:d.qc=e+1,d.$c=h,b=!0}b&&a.ka&&Q(a.ka,14)}
function Ck(a){a.mb=0;var b=a.Oa(),c=a.Oa(),d=c&32,e=d>>5,f=c&31,g=a.Oa(),h=a.Oa(),m=g<<2&768|h,n=g&63,q=a.Oa(),t=a.Oa(),s=a.ya[e];s&&(s.Qd=m,s.Ma=f,s.Qa=n,s.Wa=q*s.Tb);switch(b){case 3:a.Lb(s?s.errorCode:4);a.rb(c);a.rb(g);a.rb(h);a.rb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Oa());)s&&c<s.Te.length&&(s.Te[c++]=b);s&&Bk(a,s);b=0;s||a.ff!=e||(a.ff=-1,b=2);a.Lb(b|d);b=-1;break;case 224:case 228:a.Lb(0|d),b=-1}if(0<=b)switch(void 0===s?b=-1:(s.errorCode=0,s.bm=0),b){case 0:a.Lb(0|d);break;case 1:s.wp=
function Ck(a){a.mb=0;var b=a.Oa(),c=a.Oa(),d=c&32,e=d>>5,f=c&31,g=a.Oa(),h=a.Oa(),m=g<<2&768|h,n=g&63,q=a.Oa(),t=a.Oa(),s=a.ya[e];s&&(s.Qd=m,s.Ma=f,s.Qa=n,s.Wa=q*s.Tb);switch(b){case 3:a.Lb(s?s.errorCode:4);a.rb(c);a.rb(g);a.rb(h);a.rb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Oa());)s&&c<s.Te.length&&(s.Te[c++]=b);s&&Bk(a,s);b=0;s||a.ff!=e||(a.ff=-1,b=2);a.Lb(b|d);b=-1;break;case 224:case 228:a.Lb(0|d),b=-1}if(0<=b)switch(void 0===s?b=-1:(s.errorCode=0,s.bm=0),b){case 0:a.Lb(0|d);break;case 1:s.tp=
t;a.Lb(0|d);break;case 5:a.Lb(0|d);break;case 8:a.ji(s,function(b){a.Lb(b|d)});break;case 10:a.ki(s,function(b){a.Lb(b|d)});break;case 15:Ek(a,s,function(b){a.Lb(b|d)});break;default:a.Lb(2|d)}}k.Oa=function(){var a=-1;this.mb<this.Ya&&(a=this.cc[this.mb++]);return a};k.Lb=function(a){this.mb=this.Ya=0;void 0!==a&&this.rb(a);this.ka&&Q(this.ka,5);this.za|=32};k.rb=function(a){this.cc[this.Ya++]=a};k.hi=function(a,b,c){void 0===b||0>b?this.tc(a,c):c(-1,!1)};
k.ii=function(a,b){return void 0!==b&&0<=b?this.Cc(a,b):-1};k.rm=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Va<a.Ue.length?a.Ue[a.Va++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.sm=function(a,b){return void 0!==b&&0<=b?this.Mj(a,b):-1};k.ji=function(a,b){a.errorCode=4;if(a.va&&(a.Ra=null,this.ka)){a.errorCode=0;mi(this.ka,3,this,"dmaRead",a);gi(this.ka,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.ii=function(a,b){return void 0!==b&&0<=b?this.Cc(a,b):-1};k.qm=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Va<a.Ue.length?a.Ue[a.Va++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.rm=function(a,b){return void 0!==b&&0<=b?this.Mj(a,b):-1};k.ji=function(a,b){a.errorCode=4;if(a.va&&(a.Ra=null,this.ka)){a.errorCode=0;mi(this.ka,3,this,"dmaRead",a);gi(this.ka,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.ki=function(a,b){a.errorCode=4;if(a.va&&(a.Ra=null,this.ka)){a.errorCode=0;mi(this.ka,3,this,"dmaWrite",a);gi(this.ka,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function Ek(a,b,c){b.errorCode=4;b.Ue&&b.Ue.length==b.Wa||(b.Ue=Array(b.Wa));b.Va=0;a.ka?(b.errorCode=0,mi(a.ka,3,a,"dmaWriteBuffer",b),gi(a.ka,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
k.ok=function(a,b){a.errorCode=4;if(a.va&&(a.Ra=null,this.ka)){a.Be=0;a.xc=Array(4);a.Hf=!0;a.Nf=0;a.errorCode=0;mi(this.ka,3,this,"dmaWriteFormat",a);gi(this.ka,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Hf=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.tc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Ra&&(d=kk(a.Ra,a.Va),a.Va+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;a.va.seek(a.Qd,a.Ma,a.Qa+a.Tg,!1,function(c,d){var m=-1;(a.Ra=c)?(a.Va=0,f.Ef(a),m=kk(a.Ra,a.Va),a.Va+=e):a.errorCode=20;b(m,d)})}return d};
k.Cc=function(a,b){if(a.errorCode)return-1;do{if(a.Ra&&a.va.write(a.Ra,a.Va++,b))break;a.va.seek(a.Qd,a.Ma,a.Qa+a.Tg,!0,function(b){a.Ra=b});if(!a.Ra){a.errorCode=20;b=-1;break}a.Va=0;this.Ef(a)}while(1);return b};k.Ef=function(a){a.Qa++;var b=1-a.Tg;a.Qa>=a.$c+b&&(a.Qa=b,a.Ma++,a.Ma>=a.qc&&(a.Ma=0,a.Qd++))};
k.Mj=function(a,b){if(a.errorCode)return-1;a.xc[a.Be++]=b;if(a.Be==a.xc.length){a.Qd=a.xc[0];a.Ma=a.xc[1];a.Qa=a.xc[2];a.Wa=128<<a.xc[3];for(var c=a.Be=0;c<a.Wa;c++)if(0>this.Cc(a,a.ak))return-1;a.Nf++}a.Nf>=a.Yd&&(b=-1);return b};
k.Dn=function(a){var b=this.S.J&255;!(this.S.G>>8)&&128<b&&(this.ff=b-128);this.Z&&L(this.Z,this.Z.Oh)&&128<=b&&(this.Z.message("HDC.intBIOSDisk(AX="+r(this.S.G)+",DL="+p(b)+") at "+ca(a-this.S.ra.La,this.S.ra.oa)),Bc(this.S,a,function(a,b){return function(e){b=E(a.S)-b;a.Fa("HDC.intBIOSDisk("+e+"): C="+(Pc(a.S)?1:0)+" (cycles="+b+")")}}(this,E(this.S))));return!0};k.Di=function(){var a;(a=this.S.G>>8)||(a=!this.ka)||(a=!(this.ka.sb[0].wd&64));return a?!0:!1};
k.Cn=function(a){var b=this.S.J&255;!(this.S.G>>8)&&128<b&&(this.ff=b-128);this.Z&&L(this.Z,this.Z.Oh)&&128<=b&&(this.Z.message("HDC.intBIOSDisk(AX="+r(this.S.G)+",DL="+p(b)+") at "+ca(a-this.S.ra.La,this.S.ra.oa)),Bc(this.S,a,function(a,b){return function(e){b=E(a.S)-b;a.Fa("HDC.intBIOSDisk("+e+"): C="+(Pc(a.S)?1:0)+" (cycles="+b+")")}}(this,E(this.S))));return!0};k.Di=function(){var a;(a=this.S.G>>8)||(a=!this.ka)||(a=!(this.ka.sb[0].wd&64));return a?!0:!1};
k.Fa=function(a){this.Z&&L(this.Z,this.Z.Oh)&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Oh,e)};
var yk={800:Y.prototype.An,801:Y.prototype.Bn,802:Y.prototype.zn},xk={496:Y.prototype.Lm,497:Y.prototype.Nm,498:Y.prototype.Om,499:Y.prototype.Pm,500:Y.prototype.Km,501:Y.prototype.Jm,502:Y.prototype.Mm,503:Y.prototype.Qm},Ak={800:Y.prototype.Ro,801:Y.prototype.Uo,802:Y.prototype.To,803:Y.prototype.So,807:Y.prototype.Aj,811:Y.prototype.Aj,815:Y.prototype.Aj},zk={496:Y.prototype.io,497:Y.prototype.mo,498:Y.prototype.ko,499:Y.prototype.lo,500:Y.prototype.ho,501:Y.prototype.fo,502:Y.prototype.jo,503:Y.prototype.eo};
var yk={800:Y.prototype.zn,801:Y.prototype.An,802:Y.prototype.yn},xk={496:Y.prototype.Km,497:Y.prototype.Mm,498:Y.prototype.Nm,499:Y.prototype.Om,500:Y.prototype.Jm,501:Y.prototype.Im,502:Y.prototype.Lm,503:Y.prototype.Pm},Ak={800:Y.prototype.Qo,801:Y.prototype.To,802:Y.prototype.So,803:Y.prototype.Ro,807:Y.prototype.Aj,811:Y.prototype.Aj,815:Y.prototype.Aj},zk={496:Y.prototype.ho,497:Y.prototype.lo,498:Y.prototype.jo,499:Y.prototype.ko,500:Y.prototype.fo,501:Y.prototype.eo,502:Y.prototype.io,503:Y.prototype.co};
za(function(){for(var a=A(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Y(d);Ma(d,c)}});
function Fk(a){w.call(this,"Debugger",a,Fk);this.Vg=this.Zc=-1;this.Dc=[0,0];this.Vj=[0,0];this.Ch=null;this.$e=!1;this.pe=[0,0];this.wc=[];Gk(this);Hk(this);this.gb={Rj:{Ua:1,Xa:"mem"},Sj:{Ua:2,Xa:"port"},Fb:{Ua:4,Xa:"dma"},Qe:{Ua:8,Xa:"pic"},Re:{Ua:16,Xa:"timer"},Qj:{Ua:32,Xa:"keyboard"},Dg:{Ua:64,Xa:"video"},Bg:{Ua:128,Xa:"fdc"},Oh:{Ua:256,Xa:"hdc"},im:{Ua:512,Xa:"disk"},Tj:{Ua:1024,Xa:"serial"},Cg:{Ua:2048,Xa:"speaker"},Ta:{Ua:4096,Xa:"chipset"},mm:{Ua:8192,Xa:"state"},lm:{Ua:16384,Xa:"mouse"},
hm:{Ua:32768,Xa:"computer"},jm:{Ua:65536,Xa:"dos"},rp:{Ua:131072,Xa:"log"},km:{Ua:262144,Xa:"halt"}};Jh(this,this,a.messages);this.Hj=a.commands}x(w,Fk);
function Fk(a){w.call(this,"Debugger",a,Fk);this.Vg=this.Zc=-1;this.Dc=[0,0];this.Vj=[0,0];this.Ch=null;this.$e=!1;this.pe=[0,0];this.wc=[];Gk(this);Hk(this);this.gb={Rj:{Ua:1,Xa:"mem"},Sj:{Ua:2,Xa:"port"},Fb:{Ua:4,Xa:"dma"},Qe:{Ua:8,Xa:"pic"},Re:{Ua:16,Xa:"timer"},Qj:{Ua:32,Xa:"keyboard"},Dg:{Ua:64,Xa:"video"},Bg:{Ua:128,Xa:"fdc"},Oh:{Ua:256,Xa:"hdc"},hm:{Ua:512,Xa:"disk"},Tj:{Ua:1024,Xa:"serial"},Cg:{Ua:2048,Xa:"speaker"},Ta:{Ua:4096,Xa:"chipset"},lm:{Ua:8192,Xa:"state"},km:{Ua:16384,Xa:"mouse"},
gm:{Ua:32768,Xa:"computer"},im:{Ua:65536,Xa:"dos"},pp:{Ua:131072,Xa:"log"},jm:{Ua:262144,Xa:"halt"}};Jh(this,this,a.messages);this.Hj=a.commands}x(w,Fk);
var Ik={"?":"help","a [#]":"assemble","b [#]":"breakpoint",c:"clear window","d [#]":"dump memory","e [#]":"edit memory",f:"frequencies","g [#]":"go [to #]","h [#]":"halt/history","i [#]":"input port #",l:"load sector(s)",m:"messages","o [#]":"output port #",p:"step over",r:"dump/edit registers","t [#]":"step instruction(s)","u [#]":"unassemble",x:"execution options"},Jk="DB 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 FADD FBLD FBSTP FCOM FCOMP FDIV FDIVR FIADD FICOM FICOMP FIDIV FIDIVR FILD FIMUL FIST FISTP FISUB FISUBR FLD FLDCW FLDENV FMUL FNSAVE FNSTCW FNSTENV FNSTSW FRSTOR FS: FST FSTP FSUB FSUBR GBP GS: HLT IDIV IMUL IN INC INS INT INT3 INTO IRET JBE JC JCXZ JG JGE JL JLE JMP JNBE JNC JNO JNP JNS JNZ JO JP JS JZ LAHF LAR LDS LEA LEAVE LES LFS LGDT LGS LIDT LLDT LMSW 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 PUSH PUSHA PUSHF RCL RCR REPNZ REPZ RET RETF ROL ROR SAHF 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 XCHG XLAT XOR".split(" "),
Kk="AL CL DL BL AH CH DH BH AX CX DX BX SP BP SI DI ES CS SS DS IP".split(" "),Lk="BX+SI BX+DI BP+SI BP+DI SI DI BP BX".split(" "),Z=[0,0],Mk=[204,12291],Nk=[[6,12417,4257],[6,12420,4260],[6,12449,4225],[6,12452,4228],[6,12385,4097],[6,14435,4100],[136,4211],[133,8307],[129,12417,4257],[129,12420,4260],[129,12449,4225],[129,12452,4228],[129,12385,4097],[129,14435,4100],[136,4467],[133,8563],[5,12417,4257],[5,12420,4260],[5,12449,4225],[5,12452,4228],[5,12385,4097],[5,14435,4100],[136,4723],[133,8819],
[149,12417,4257],[149,12420,4260],[149,12449,4225],[149,12452,4228],[149,12385,4097],[149,14435,4100],[136,4979],[133,9075],[7,12417,4257],[7,12420,4260],[7,12449,4225],[7,12452,4228],[7,12385,4097],[7,14435,4100],[35,15],[29],[183,12417,4257],[183,12420,4260],[183,12449,4225],[183,12452,4228],[183,12385,4097],[183,14435,4100],[27,15],[30],[190,12417,4257],[190,12420,4260],[190,12449,4225],[190,12452,4228],[190,12385,4097],[190,14435,4100],[176,15],[1],[24,4225,4257],[24,4228,4260],[24,4257,4225],
@ -661,15 +661,15 @@ Pk=[[[6,12417,4097],[129,12417,4097],[5,12417,4097],[149,12417,4097],[7,12417,40
62:"close file (<BX)",63:"read (<CX) bytes from file (<BX) into buffer (<DS:DX)",64:"write (<CX) bytes to file (<BX) from buffer (<DS:DX)",65:"delete file (<DS:DX)",66:"set position (<CX:DX) of file (<BX) relative to (<AL)",67:"get/set (AL=0/1) attributes (CX) of file (<DS:DX)",68:"get device information (IOCTL)",69:"duplicate file handle (<BX)",70:"force file handle (<CX) to duplicate file handle (<BX)",71:"get current directory (DS:SI>) for drive (<DL)",72:"allocate memory segment with (<BX) paragraphs",
73:"free memory segment (<ES)",74:"resize memory segment (<ES) to (<BX) paragraphs",75:"load program (<DS:DX) using parameter block (<ES:BX)",76:"terminate with return code (<AL)",77:"get return code (AL>)",78:"find first matching file (<DS:DX) with attributes (<CX)",79:"find next matching file",80:"set current PSP (<BX)",81:"get current PSP (BX>)",82:"get system variables (ES:BX>)",83:"translate BPB (<DS:SI) to DPB (ES:BP>)",84:"get verify flag (AL>)",85:"create child PSP at segment (<DX)",86:"rename file (<DS:DX) to name (<ES:DI)",
87:"get/set (AL=0/1) file date (DX>) and time (CX>)",88:"get/set (AL=0/1) memory allocation strategy",89:"get extended error information",90:"create temporary file (<DS:DX) with attributes (<CX)",91:"create file (<DS:DX) with attributes (<CX)",92:"lock/unlock (AL=0/1) file (<BX) region (<CX:DX) length (<SI:DI)"};k=Fk.prototype;
k.pc=function(a,b,c){this.na=b;this.S=c;this.Da=a;this.zm=B(a,"FDC");this.zk=B(a,"HDC");this.Cf=Nk;80186<=this.S.Ga&&(this.Cf=Nk.slice(),this.Cf[15]=Z,80286<=this.S.Ga&&(this.Cf[15]=Mk));Ac(this.S,33,this,this.Gn);this.Sa();if(this.Hj){a=Rk(this,this.Hj);delete this.Hj;for(var d in a)Sk(this,a[d])}};
k.pc=function(a,b,c){this.na=b;this.S=c;this.Da=a;this.ym=B(a,"FDC");this.zk=B(a,"HDC");this.Cf=Nk;80186<=this.S.Ga&&(this.Cf=Nk.slice(),this.Cf[15]=Z,80286<=this.S.Ga&&(this.Cf[15]=Mk));Ac(this.S,33,this,this.Fn);this.Sa();if(this.Hj){a=Rk(this,this.Hj);delete this.Hj;for(var d in a)Sk(this,a[d])}};
k.wb=function(a,b,c,d){var e=this;switch(c){case "debugInput":return this.Pf=this.ta[c]=d,d.onkeypress=function(a){if(13==a.keyCode){var b=d.value;d.value="";var c=Rk(e,b,!0);for(b in c)Sk(e,c[b]);a.preventDefault&&a.preventDefault()}},!0;case "debugEnter":return this.ta[c]=d,va(d,function(){if(e.Pf){var a=e.Pf.value;e.Pf.value="";var b=Rk(e,a,!0);for(a in b)Sk(e,b[a]);return!0}return!1}),!0;case "step":return this.ta[c]=d,va(d,function(a){var b=!1;Oa(e,!0)||(Na(e,!0),b=e.uf(a?1:0),Na(e,!1));return b}),
!0}return!1};k.Md=function(){this.Pf&&this.Pf.focus()};function Jh(a,b,c){var d=0;c=Rk(a,c);for(var e in a.gb)b[e]=a.gb[e].Ua,0<=c.indexOf(a.gb[e].Xa)&&(d|=a.gb[e].Ua,a.ca(a.gb[e].Xa+" messages enabled"));void 0===a.gc&&(a.gc=0);a.gc|=d}function Kh(a,b,c){for(var d in a.gb)if(b==a.gb[d].Ua){a.gb[d].wk=c;break}}function L(a,b){return(a.gc&b)===b}
k.ba=function(a,b,c,d,e,f,g){f||(f=0);f|=this.gb.Sj.Ua;if(null==d||(this.gc&f)==f)f=null,null!=d&&(f=this.S.ra.oa,d-=this.S.ra.La),this.message(a.mh+"."+(null!=c?"outPort":"inPort")+"(0x"+r(b)+","+(e?e:"unknown")+(null!=c?",0x"+p(c):"")+")"+(null!=g?": 0x"+p(g):"")+(null!=d?" at "+ca(d,f):""))};k.message=function(a){this.ca(a);this.S&&(this.gc&this.gb.km.Ua&&this.S.zb(),a=this.S,a.nf=0,a.Yc-=a.A,a.A=0,a.Zg())};
k.Gn=function(a){var b=this.S.G>>8;if(L(this,this.jm)){var c=Qk[b],c=c?": "+c.replace(/\((<|>)/g,"("):"";this.message("INT 0x21: AH="+p(b)+" at "+ca(a-this.S.ra.La,this.S.ra.oa)+c)}return!0};k.Cn=function(){this.ca("Type ? for list of debugger commands")};function Hk(a){var b;if(1<a.Gb.length){if(!a.Ud||!a.Ud.length){a.Ud=Array(1E4);for(b=0;b<a.Ud.length;b++)a.Ud[b]=[0,null,0];a.gf=0}if(!a.dd||!a.dd.length)for(a.dd=Array(256),b=0;b<a.dd.length;b++)a.dd[b]=[b,0]}else a.gf=0,a.Ud=[],a.dd=[]}
k.ba=function(a,b,c,d,e,f,g){f||(f=0);f|=this.gb.Sj.Ua;if(null==d||(this.gc&f)==f)f=null,null!=d&&(f=this.S.ra.oa,d-=this.S.ra.La),this.message(a.mh+"."+(null!=c?"outPort":"inPort")+"(0x"+r(b)+","+(e?e:"unknown")+(null!=c?",0x"+p(c):"")+")"+(null!=g?": 0x"+p(g):"")+(null!=d?" at "+ca(d,f):""))};k.message=function(a){this.ca(a);this.S&&(this.gc&this.gb.jm.Ua&&this.S.zb(),a=this.S,a.nf=0,a.Yc-=a.A,a.A=0,a.Zg())};
k.Fn=function(a){var b=this.S.G>>8;if(L(this,this.im)){var c=Qk[b],c=c?": "+c.replace(/\((<|>)/g,"("):"";this.message("INT 0x21: AH="+p(b)+" at "+ca(a-this.S.ra.La,this.S.ra.oa)+c)}return!0};k.Bn=function(){this.ca("Type ? for list of debugger commands")};function Hk(a){var b;if(1<a.Gb.length){if(!a.Ud||!a.Ud.length){a.Ud=Array(1E4);for(b=0;b<a.Ud.length;b++)a.Ud[b]=[0,null,0];a.gf=0}if(!a.dd||!a.dd.length)for(a.dd=Array(256),b=0;b<a.dd.length;b++)a.dd[b]=[b,0]}else a.gf=0,a.Ud=[],a.dd=[]}
k.Me=function(a){if(!Tk(this))return!1;this.S.Me(a);return!0};k.uf=function(a,b,c){if(!Tk(this))return!1;this.Zc=0;do{a||1<this.Gb.length&&hd(this,this.S.Ca,!0);try{var d=this.S.uf(a);0<d&&(this.Zc+=d,Ib(this.S,d,!0),Eb(this.S,d),this.Vg++)}catch(e){this.Zc=0,Qa(this.S,e.message||e)}}while(this.S.$&240);!1!==c&&Db(this.S);Cb(this,b||!1,!1);return 0<this.Zc};k.zb=function(){this.S.zb()};
function Cb(a,b,c){void 0===b&&(b=!0);void 0===c&&(c=!0);a.Dc=[a.S.sa,a.S.ra.oa,void 0];b&&1!=a.nc?Uk(a,null,c):Vk(a)}function Tk(a){a.S&&Pa(a.S)&&a.S.Nb&&!Oa(a.S)?(a=a.S,a.kd?(a.ca(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}k.bc=function(a,b){return!b&&(this.reset(!0),this.ca(a?"resuming":"powering up"),a&&this.restore&&!this.restore(a))?!1:!0};k.Yb=function(a,b){b&&this.ca(a?"suspending":"shutting down");return a&&this.save?this.save():!0};
k.reset=function(a){Hk(this);this.Zc=this.Vg=0;this.Dc=[this.S.sa,this.S.ra.oa,void 0];void 0===this.Ob||a||this.ca("reset");this.Ob=!1;Wk(this);a||Cb(this)};k.save=function(){var a=new H(this);a.set(0,this.Dc);a.set(1,this.pe);a.set(2,[this.Ch,this.$e,this.gc]);return a.data()};k.restore=function(a){var b=0;void 0!==a[2]&&(this.Dc=a[b++],this.pe=a[b++],this.Ch=a[b][0],this.$e=a[b][1],this.gc||(this.gc=a[b][2]));return!0};
k.start=function(a,b){this.nc||this.ca("running");this.Ob=!0;this.On=a;this.Sn=b};k.stop=function(a,b){if(this.Ob){this.Ob=!1;this.Zc=b-this.Sn;if(!this.nc){var c="stopped";if(this.Zc){var d=a-this.On,e=0<d?Math.round(1E3*this.Zc/d):0,c=c+" (";1<this.Gb.length&&(c+=this.Vg+" ops, ");c+=this.Zc+" cycles, "+d+" ms, "+e+" hz)"}this.ca(c)}Cb(this,!0,2!=this.nc);this.Md();Wk(this,this.S.Ca)}};
k.start=function(a,b){this.nc||this.ca("running");this.Ob=!0;this.Nn=a;this.Rn=b};k.stop=function(a,b){if(this.Ob){this.Ob=!1;this.Zc=b-this.Rn;if(!this.nc){var c="stopped";if(this.Zc){var d=a-this.Nn,e=0<d?Math.round(1E3*this.Zc/d):0,c=c+" (";1<this.Gb.length&&(c+=this.Vg+" ops, ");c+=this.Zc+" cycles, "+d+" ms, "+e+" hz)"}this.ca(c)}Cb(this,!0,2!=this.nc);this.Md();Wk(this,this.S.Ca)}};
function hd(a,b,c){if(!c&&Xk(a,b,a.Gb))return!0;a.Vg++;c=$a(a.na,b);a.dd[c][1]++;c=a.Ud[a.gf];c[0]=a.S.sa;c[1]=a.S.ra.oa;c[2]=b;++a.gf==a.Ud.length&&(a.gf=0);return!1}function pb(a,b){return Xk(a,b,a.Sd)?(a.S.zb(!0),!0):!1}function qb(a,b){return Xk(a,b,a.Pc)?(a.S.zb(!0),!0):!1}function ib(a,b,c){a.ca("break on input from port "+r(b)+": "+p(c));a.S.zb(!0)}function mb(a,b,c){a.ca("break on output to port "+r(b)+": "+p(c));a.S.zb(!0)}
function Yk(a,b){if(b==a.S.ra.oa)return a.S.ra;if(b==a.S.Qb.oa)return a.S.Qb;if(b==a.S.cb.oa)return a.S.cb;if(b==a.S.Eb.oa)return a.S.Eb;var c=new Nb(a.S);c.load(b,!0);return c}function Zk(a,b,c,d){var e=b[2];null==e&&(a=Yk(a,b[1]),e=c?a.$b(b[0],d||0,!0):a.Uc(b[0],d||0,!0));16711680==(e&16711680)&&(e&=1048575);return e}k.ub=function(a,b){var c=255,d=Zk(this,a,!1,0);0<=d&&(c=$a(this.na,d),void 0!==b&&$k(a,b));return c};
k.Ia=function(a,b){var c=65535,d=Zk(this,a,!1,1);0<=d&&(c=ab(this.na,d),void 0!==b&&$k(a,b));return c};k.bd=function(a,b,c){var d=Zk(this,a,!0,0);0<=d&&(bb(this.na,d,b),void 0!==c&&$k(a,c),Db(this.S))};k.Nd=function(a,b,c){var d=Zk(this,a,!0,1);0<=d&&(cb(this.na,d,b),void 0!==c&&$k(a,c),Db(this.S))};function $(a){return null==a[1]?"%"+l(a[2]):ca(a[0],a[1])}function $k(a,b){b=void 0===b?1:b;null!=a[2]&&(a[2]+=b);null!=a[1]&&(a[0]+=b,a[0]!=(a[0]&65535)&&(a[0]&=65535,a[2]=null))}
@ -688,7 +688,7 @@ function Gi(a,b,c,d){function e(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0}var f=[],
function dl(a,b,c){for(var d=[],e=Zk(a,b),f=0;f<a.wc.length;f++){var g=a.wc[f][0],h=a.wc[f][1];if(e>=g&&e<g+h){b=ka(a.wc[f][3],[b[0]],function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0});0<=b?ll(a,f,b,d):c&&(b=~b,ll(a,f,b-1,d),ll(a,f,b,d));break}}return d}function ll(a,b,c,d){var e={},f=a.wc[b][3],g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.wc[b][2][h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}
function ml(a,b){if("?"==b)a.ca("\nfrequency commands:"),a.ca("\tclear\tclear all frequency counts");else{var c,d=0;if(a.dd)if("clear"==b){for(c=0;c<a.dd.length;c++)a.dd[c]=[c,0];a.ca("frequency data cleared");d++}else if(void 0!==b)a.ca("unknown frequency command: "+b),d++;else{var e=a.dd.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.ca((Jk[a.Cf[f][0]]+" ").substr(0,5)+" ("+p(f)+"): "+g+" times"),d++)}}d||a.ca("no frequency data available")}}
function nl(a,b){if("l"==b[0]&&void 0===b[1]||"?"==b[1])a.ca("\nlist/load commands:"),a.ca("\tl [address] [drive #] [sector #] [# sectors]"),a.ca("\tln [address] lists symbol(s) nearest to address");else{var c=[],d,e=0,f=0,g=!1;if("json"==b[1])g=!0;else if(d="ln"==b[0],c=jl(a,b[1],d?1:2),d){c=dl(a,c,!0);c.length?(c[0]&&a.ca(r(c[1])+": "+c[0]),4<c.length&&c[4]&&a.ca(r(c[5])+": "+c[4])):a.ca("no symbols");return}d=kl(a,b[2],"drive #");if(void 0!==d){if(!g){e=kl(a,b[3],"sector #");if(void 0===e)return;
f=kl(a,b[4],"# of sectors");void 0===f&&(f=1)}var h=a.zm;2<=d&&a.zk&&(d-=2,h=a.zk);if(h){var m=h.mk(d);if(m)if(m.va)if(g)a.ca(jk(m.va));else if(h.$l(m,e,f)){for(var n=0,q=!1,e=$(c);!q&&0<m.Wa--;)(function(a,b){h.tc(m,function(c){0>c?(a.ca("out of data at address "+$(b)),q=!0):(a.bd(b,c,1),n++)})})(a,c);a.ca(n+" bytes read at "+e)}else a.ca("sector "+e+" request out of range");else a.ca("drive "+d+" not loaded");else a.ca("invalid drive: "+d)}else a.ca("disk controller not present")}}}
f=kl(a,b[4],"# of sectors");void 0===f&&(f=1)}var h=a.ym;2<=d&&a.zk&&(d-=2,h=a.zk);if(h){var m=h.mk(d);if(m)if(m.va)if(g)a.ca(jk(m.va));else if(h.$l(m,e,f)){for(var n=0,q=!1,e=$(c);!q&&0<m.Wa--;)(function(a,b){h.tc(m,function(c){0>c?(a.ca("out of data at address "+$(b)),q=!0):(a.bd(b,c,1),n++)})})(a,c);a.ca(n+" bytes read at "+e)}else a.ca("sector "+e+" request out of range");else a.ca("drive "+d+" not loaded");else a.ca("invalid drive: "+d)}else a.ca("disk controller not present")}}}
function Uk(a,b,c){if(b&&"?"==b[1])a.ca("\nregister commands:"),a.ca("\tr\t\tdisplay all registers"),a.ca("\tr [target=#]\tmodify target register"),a.ca("supported targets:"),a.ca("\tall registers and flags V,D,I,S,Z,A,P,C");else{var d=!0,e;if(null!=b&&1<b.length){var f=b[1];if("p"==f)e=void 0!==a.S.Qc;else{var d=!1,g=null,h=f.indexOf("=");if(0<h)g=f.substr(h+1),f=f.substr(0,h);else if(2<b.length)g=b[2];else{a.ca("missing value for "+b[1]);return}b=parseInt(g,16);if(isNaN(b)){a.ca("invalid value: "+
g);return}switch(f.toUpperCase()){case "AL":a.S.G=a.S.G&65280|b&255;break;case "AH":a.S.G=a.S.G&255|b<<8&255;break;case "AX":a.S.G=b&65535;break;case "BL":a.S.B=a.S.B&65280|b&255;break;case "BH":a.S.B=a.S.B&255|b<<8&255;break;case "BX":a.S.B=b&65535;break;case "CL":a.S.I=a.S.I&65280|b&255;break;case "CH":a.S.I=a.S.I&255|b<<8&255;break;case "CX":a.S.I=b&65535;break;case "DL":a.S.J=a.S.J&65280|b&255;break;case "DH":a.S.J=a.S.J&255|b<<8&255;break;case "DX":a.S.J=b&65535;break;case "SP":a.S.X=b&65535;
break;case "BP":a.S.H=b&65535;break;case "SI":a.S.F=b&65535;break;case "DI":a.S.D=b&65535;break;case "DS":Mc(a.S,b);break;case "ES":Oc(a.S,b);break;case "SS":Nc(a.S,b);break;case "CS":d=!0;Ic(a.S,b);a.Dc=[a.S.sa,a.S.ra.oa,void 0];break;case "IP":d=!0;I(a.S,b);a.Dc=[a.S.sa,a.S.ra.oa,void 0];break;case "C":b?$c(a.S):Vc(a.S);break;case "P":b?(f=a.S,Qc(f)||(f.ja^=1)):(f=a.S,Qc(f)&&(f.ja^=1));break;case "A":b?ad(a.S):Wc(a.S);break;case "Z":b?bd(a.S):Xc(a.S);break;case "S":b?cd(a.S):Yc(a.S);break;case "I":b?
@ -710,13 +710,13 @@ a.ca((null!==f?f?"messages on: ":"messages off: ":"message categories:\n\t")+(n
1);g=!0;break;case 204:case 206:a.nc=c;$k(n,1);break;case 205:case 224:case 225:case 226:a.nc=c;$k(n,2);break;case 232:a.nc=c;$k(n,3);break;case 154:a.nc=c;$k(n,5);break;case 255:a.nc=0<=cl(a,n).indexOf("CALL")?c:0;break;case 243:case 242:$k(n,1);h=g=!0;break;case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:h&&(a.nc=c,$k(n,1))}while(g);a.nc?(a.Vd(a.Gb,n,!0),a.Me()||(a.S.Md(),a.nc=0)):ol(a,f?"tr":"t")}break;case "r":Uk(a,c);break;case "t":case "tr":ol(a,c[0],
c[1]);break;case "u":Vk(a,c[1],c[2],8);break;case "x":a:if(void 0===c[1]||"?"==c[1])a.ca("\nexecution options:"),a.ca("\tcs int #\tset checksum cycle interval to #"),a.ca("\tcs start #\tset checksum cycle start count to #"),a.ca("\tcs stop #\tset checksum cycle stop count to #"),a.ca("\tsp #\t\tset speed multiplier to #");else switch(c[1]){case "cs":void 0!==c[3]&&(m=parseInt(c[3],10));switch(c[2]){case "int":a.S.kf=m;break;case "start":a.S.bg=m;break;case "stop":a.S.mf=m;break;default:a.ca("unknown cs option");
break a}void 0!==m&&Ab(a.S);a.ca("checksums "+(a.S.af?"enabled":"disabled"));break;case "sp":void 0!==c[2]&&Gb(a.S,parseInt(c[2],10));a.ca("target speed: "+(a.S.hf.toFixed(2)+"Mhz")+" ("+a.S.Gd+"x)");break;default:a.ca("unknown option: "+c[1])}break;case "?":f="commands:";for(h in Ik)f+="\n"+h+" ".substr(0,7-h.length)+Ik[h];1<a.Gb.length||(f+="\nnote: frequency/history disabled if no exec breakpoints");a.ca(f);break;default:a.ca("unknown command: "+b)}}}
za(function(){for(var a=A(window.document,"pcjs","debugger"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Fk(d);Ma(d,c)}});function H(a,b,c){this.id=a.id;this.key=ql(a,b,c);this.Z=a.Z;rl(this,a.Vo)}function ql(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}
za(function(){for(var a=A(window.document,"pcjs","debugger"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Fk(d);Ma(d,c)}});function H(a,b,c){this.id=a.id;this.key=ql(a,b,c);this.Z=a.Z;rl(this,a.Uo)}function ql(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}
H.prototype={set:function(a,b){this[this.id][a]=b},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.si=!0):this.si?!0:window.localStorage&&(a=window.localStorage.getItem(this.key))?(this[this.id]=a,this.si=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){v(b.message||b),a=!1}return a},toString:function(){var a=this[this.id];return"string"==
typeof a?a:JSON.stringify(a)},clear:function(a){rl(this);if(window.localStorage)for(var b=0;b<window.localStorage.length;){var c=window.localStorage.key(b++);c&&(a||c.substr(0,this.key.length)==this.key)&&(window.localStorage.removeItem(c),b=0)}},Fa:function(a){this.Z&&L(this.Z,this.Z.mm)&&this.Z.message(a)}};function rl(a,b){a[a.id]={};b&&a.set("parms",b);a.si=!1}
typeof a?a:JSON.stringify(a)},clear:function(a){rl(this);if(window.localStorage)for(var b=0;b<window.localStorage.length;){var c=window.localStorage.key(b++);c&&(a||c.substr(0,this.key.length)==this.key)&&(window.localStorage.removeItem(c),b=0)}},Fa:function(a){this.Z&&L(this.Z,this.Z.lm)&&this.Z.message(a)}};function rl(a,b){a[a.id]={};b&&a.set("parms",b);a.si=!1}
function sl(a){var b=!0;if(window.localStorage){var c=JSON.stringify(a[a.id]);try{window.localStorage.setItem(a.key,c)}catch(d){v("Unable to store "+c.length+" bytes in browser local storage"),b=!1}}return b}
function tl(a,b,c){w.call(this,"Computer",a,tl);this.Nb=!1;this.Zf=a.buswidth;this.Bc=ul;this.vg=null;this.jh=!1;this.url=b?b.url:null;this.ep=(Math.random()+0.1).toString(36).substr(2,12);this.Oc=vl(this);if(this.S=La("CPU",this.id)){this.Z=La("Debugger",this.id);this.na=new Ua({id:this.nh+".bus",buswidth:this.Zf},this.S,this.Z);var d,e=Ja(this.id);if((this.og=La("Panel",this.id))&&this.og.Qf)for(b=0;b<e.length;b++)d=e[b],d.Ha=this.og.Ha,d.ca=this.og.ca,d.Qf=this.og.Qf;this.ca("PREFETCH: false, TYPEDARRAYS: "+
Ra);for(b=0;b<e.length;b++)d=e[b],d.pc&&d.pc(this,this.na,this.S,this.Z);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Ih=d:this.Bc=parseInt(d,10));var f;if(a=Da&&Da.state||(f=!0,a.state))b=this.Zl=a,f||(this.jh=!0,this.Bc=ul),this.Bc&&(this.Lh=new H(this,"1.15.4"),this.Lh.load()?b=null:delete this.Lh);!b&&this.Bc&&(f=null,this.Oc&&(f=qa()+"/api/v1/user?req=load&user="+this.Oc+"&state="+ql(this,"1.15.4")),b=f)&&(this.jh=!0);b?pa(b,!0,null,this,this.Yn):this.Sa();c||wl(this,this.Bh)}else v("Unable to find CPU component")}
x(w,tl);var tk=102,ul=0;k=tl.prototype;k.ef=function(){return this.ep};k.ee=function(){return this.Oc?this.Oc:""};k.Yn=function(a,b,c){c?(this.Ih=null,this.jh=!1,this.Ha("Unable to load machine state from server (error "+c+(b?": "+ha(b):"")+")")):this.vg=b;this.Sa()};function wl(a,b,c){for(var d=Ja(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Pa(f)){Pa(f,function(){wl(a,b,c)});return}}b.call(a,c)}
function tl(a,b,c){w.call(this,"Computer",a,tl);this.Nb=!1;this.Zf=a.buswidth;this.Bc=ul;this.vg=null;this.jh=!1;this.url=b?b.url:null;this.dp=(Math.random()+0.1).toString(36).substr(2,12);this.Oc=vl(this);if(this.S=La("CPU",this.id)){this.Z=La("Debugger",this.id);this.na=new Ua({id:this.nh+".bus",buswidth:this.Zf},this.S,this.Z);var d,e=Ja(this.id);if((this.og=La("Panel",this.id))&&this.og.Qf)for(b=0;b<e.length;b++)d=e[b],d.Ha=this.og.Ha,d.ca=this.og.ca,d.Qf=this.og.Qf;this.ca("PREFETCH: false, TYPEDARRAYS: "+
Ra);for(b=0;b<e.length;b++)d=e[b],d.pc&&d.pc(this,this.na,this.S,this.Z);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Ih=d:this.Bc=parseInt(d,10));var f;if(a=Da&&Da.state||(f=!0,a.state))b=this.Zl=a,f||(this.jh=!0,this.Bc=ul),this.Bc&&(this.Lh=new H(this,"1.15.4"),this.Lh.load()?b=null:delete this.Lh);!b&&this.Bc&&(f=null,this.Oc&&(f=qa()+"/api/v1/user?req=load&user="+this.Oc+"&state="+ql(this,"1.15.4")),b=f)&&(this.jh=!0);b?pa(b,!0,null,this,this.Xn):this.Sa();c||wl(this,this.Bh)}else v("Unable to find CPU component")}
x(w,tl);var tk=102,ul=0;k=tl.prototype;k.ef=function(){return this.dp};k.ee=function(){return this.Oc?this.Oc:""};k.Xn=function(a,b,c){c?(this.Ih=null,this.jh=!1,this.Ha("Unable to load machine state from server (error "+c+(b?": "+ha(b):"")+")")):this.vg=b;this.Sa()};function wl(a,b,c){for(var d=Ja(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Pa(f)){Pa(f,function(){wl(a,b,c)});return}}b.call(a,c)}
function xl(a,b){var c=new H(a,"1.15.4","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.Ha("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
k.Bh=function(a){void 0===a&&(a=this.vg?1:this.Bc);var b=!1,c=!1;this.tk=!1;var d=this.Lh||new H(this,"1.15.4");if(-1==a)b=!0;else if(a>ul){if(d.load(this.vg)){this.sf=new H(this,"1.15.4","failsafe");this.sf.load()&&(yl(this,d),a=2);this.sf.set("timestamp",na());sl(this.sf);var e=this.Bc&&!this.jh;if(1==a||ra("Click OK to restore previous PCjs machine state.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=g?(this.Ha("Error: "+g),"unable to verify user"==
g&&(sa(""),this.Oc=null)):this.ca(f+": "+g),rl(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&xl(this,c?d:null)}else 2==a&&d.clear()}else xl(this);delete this.vg;delete this.Lh}e=Ja(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.S&&(c=zl(this,g,d,b,c));b=[d,a,c];-1!=a?wl(this,this.Pl,b):this.Pl(b)};
@ -730,7 +730,7 @@ k.wb=function(a,b,c,d){var e=this;switch(c){case "save":return this.ta[c]=d,d.on
function vl(a,b){var c=a.Oc;if(!c){var d;window&&(d=window.localStorage.getItem("user"));c=d;void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email Jeff@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=Bl(a,c))||a.Ha("Your user ID has not been approved."))):b&&a.Ha("Browser local storage is not available")}return c}
function Bl(a,b){a.Oc=null;var c=pa(qa()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(sa(c.data),a.Oc=c.data)}catch(e){v(e.message+" ("+d+")")}return a.Oc}
function Al(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=ql(a,"1.15.4");d.data=c;b=pa(qa()+"/api/v1/user",!1,d);d=b[1];if(b[0]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[0]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.Ha("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.Ha(c),sa(""),a.Oc=null)}}
function Fb(a){if(a.Bc&&!a.Ih){var b=1==a.Bc||!ra("Click OK to reset the PCjs machine state.\n(WARNING: All disk changes will be discarded)");pl(a,b,!0);!b&&a.Zl?window&&window.location.reload():(b||(a.ui=!0),a.Bh(ul),a.ui=!1)}else a.reset(),a.S&&Bb(a.S)}function B(a,b,c){a=Ja(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}k.Fa=function(a,b){this.Z&&(b||L(this.Z,this.Z.hm))&&this.Z.message(a)};
function Fb(a){if(a.Bc&&!a.Ih){var b=1==a.Bc||!ra("Click OK to reset the PCjs machine state.\n(WARNING: All disk changes will be discarded)");pl(a,b,!0);!b&&a.Zl?window&&window.location.reload():(b||(a.ui=!0),a.Bh(ul),a.ui=!1)}else a.reset(),a.S&&Bb(a.S)}function B(a,b,c){a=Ja(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}k.Fa=function(a,b){this.Z&&(b||L(this.Z,this.Z.gm))&&this.Z.message(a)};
za(function(){for(var a=A(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=y(c),c=A(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=y(f),g=new tl(g,d,!0);Ma(g,f);wl(g,g.Bh)}});wa.show.push(function(){for(var a=A(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=y(a[b]);(c=La("Computer",c.id))&&c.qk&&!c.Nb&&c.Bh(-1)}});
wa.exit.push(function(){for(var a=A(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=y(a[b]);(c=La("Computer",c.id))&&c.Nb&&pl(c,!(!c.Bc||c.Ih),!0)}});function Cl(a,b,c,d){var e=pa(a);if(e[0])throw Error(e[1]);return Dl(e[1],a,b,c,d)}
function Dl(a,b,c,d,e){var f=null;if(a){if(e)for(var g=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g;f=g.exec(a);){var h=f[2],m=pa(h),n=m[1];if(m[0]||!n)throw c="unable to resolve XML reference: "+f[0]+" ("+m[0]+")",Error(c);if(m=f[3]){var q=n.match(new RegExp("<"+f[1]+"[^>]*>"));if(q){for(var h=q[0],t,s=/( [a-z]+=)(['"])(.*?)\2/g;t=s.exec(m);)h=0>h.indexOf(t[1])?h.replace(">",t[0]+">"):h.replace(new RegExp(t[1]+"(['\"])(.*?)\\1"),t[0]);q[0]!=h&&(n=n.replace(q[0],h))}else throw c="missing <"+f[1]+"> in "+h,

View file

@ -3,7 +3,7 @@ var ga={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};function ha
function p(a,b,c,d,e,f){b=!!b;var l=0,k=null,m=ea(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(n.onreadystatechange=void 0,k=n.responseText,200!=n.status&&(l=n.status||-1),d&&e&&e.call(d,m,k,l,f))});if(c){var q="",s;for(s in c)c.hasOwnProperty(s)&&(q&&(q+="&"),q+=s+"="+encodeURIComponent(c[s]));q=q.replace(/%20/g,"+");n.open("POST",a,b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded");
n.send(q)}else n.open("GET",a,b),n.send();a=[];b||(k=n.responseText,200!=n.status&&(l=n.status||-1),d&&e&&e.call(d,m,k,l,f),a=[l,k]);return a}function la(){return"http://"+(window?window.location.host:"www.pcjs.org")}function t(a){window?window.alert(a):console.log(a)}function ma(a){var b=!1;window&&(b=window.confirm(a));return b}function na(a){window&&window.localStorage.setItem("user",a)}
function oa(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var pa={init:[],show:[],exit:[]},qa=!0;function ra(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function u(a){pa.init.push(a)}function ta(a){if(qa)for(var b=0;b<a.length;b++)a[b]()}ra("onload",function(){ta(pa.init)});ra("onpageshow",function(){ta(pa.show)});
ra(oa("Opera")||oa("iOS")?"onunload":"onbeforeunload",function(){ta(pa.exit)});function v(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.gj=b.comment;this.vn=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.lg=this.id.substr(0,b),this.Bh=this.id.substr(b+1)):this.Bh=this.id;this[a]=c;this.wh=null;this.Xc=this.zb=this.Ec=this.lh=this.gg=!1;this.oa={};this.Ha=null;this.lg&&this.lg.match(/\d+/);w[w.length]=this}var ua=void 0,va={};
ra(oa("Opera")||oa("iOS")?"onunload":"onbeforeunload",function(){ta(pa.exit)});function v(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.gj=b.comment;this.un=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.lg=this.id.substr(0,b),this.Bh=this.id.substr(b+1)):this.Bh=this.id;this[a]=c;this.wh=null;this.Xc=this.zb=this.Ec=this.lh=this.gg=!1;this.oa={};this.Ha=null;this.lg&&this.lg.match(/\d+/);w[w.length]=this}var ua=void 0,va={};
if(window){ua||(ua=window.location.search.substr(1));for(var wa,xa=/\+/g,ya=/([^&=]+)=?([^&]*)/g;wa=ya.exec(ua);)va[decodeURIComponent(wa[1].replace(xa," "))]=decodeURIComponent(wa[2].replace(xa," "))}function za(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function y(a,b){b.prototype=za(a.prototype)}var w=[];
function Aa(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<w.length;b++){var d=w[b];a&&d.id.indexOf(a)||c.push(d)}return c}function Ba(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<w.length;c++)if(w[c].id===a)return w[c]}return null}
function Ca(a,b){var c;if(void 0!==a){var d;b&&(b=0<(d=b.indexOf("."))?b.substr(0,d+1):"");for(d=0;d<w.length;d++)if(c)c==w[d]&&(c=null);else if(!(a!=w[d].type||b&&w[d].id.indexOf(b)))return w[d]}return null}function z(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){t(c.message+" ("+a+")")}return b}
@ -11,26 +11,26 @@ function A(a,b){var c,d;d=B(b.parentNode,"pcjs-control");for(c=0;c<d.length;c++)
function B(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var e=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)e.test(a[b].className)&&c.push(a[b]);return c}
v.prototype={toString:function(){return this.name?this.name:this.id||this.type},tb:function(a,b,c,d){switch(c){case "clear":return this.oa[c]||(this.oa[c]=d,d.onclick=function(a){return function(){a.oa.print&&(a.oa.print.value="")}}(this)),!0;case "print":return this.oa[c]||(this.dh=this.oa[c]=d,d.value="",this.Tb=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),this.xa=
function(a,b,c){this.Tb(a,"notice",c)}),!0;default:return!1}},log:function(){},Tb:function(){},status:function(a){this.Tb(this.Bh+": "+a)},xa:function(a,b){b||t(a)},Oa:function(a){!this.Xc&&(this.gg=!1!==a)&&(this.name&&this.log("ready"),a=this.wh,this.wh=null,a&&a())},Sb:function(){return this.zb=!0},Jb:function(a,b){b&&(this.zb=!1);return!0}};function Da(a,b){if(a.lh)return a.Ec&&(a.Ec=!1),a.lh=!1;if(a.Xc)return a.Tb(a.toString()+" error"),!1;a.Ec=b;return a.Ec}
function Ea(a,b){b&&(a.gg?b():a.wh=b);return a.gg}function Fa(a,b){a.Xc=!0;a.xa("Fatal error: "+b)}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);var Ga="undefined"!==typeof window.Wk;function Ha(a){v.call(this,"Panel",a,Ha)}y(v,Ha);Ha.prototype.tb=function(a,b,c,d){return this.Fa&&this.Fa.tb(a,b,c,d)||this.ja&&this.ja.tb(a,b,c,d)||this.ab&&this.ab.tb(a,b,c,d)?!0:v.prototype.tb.call(this,a,b,c,d)};
function Ea(a,b){b&&(a.gg?b():a.wh=b);return a.gg}function Fa(a,b){a.Xc=!0;a.xa("Fatal error: "+b)}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);var Ga="undefined"!==typeof ArrayBuffer;function Ha(a){v.call(this,"Panel",a,Ha)}y(v,Ha);Ha.prototype.tb=function(a,b,c,d){return this.Fa&&this.Fa.tb(a,b,c,d)||this.ja&&this.ja.tb(a,b,c,d)||this.ab&&this.ab.tb(a,b,c,d)?!0:v.prototype.tb.call(this,a,b,c,d)};
Ha.prototype.gc=function(a,b,c,d){this.Fa=a;this.ja=c;this.Ha=d;this.ab=C(a,"Keyboard")};Ha.prototype.Sb=function(a,b){b||Ia();return!0};Ha.prototype.Jb=function(){return!0};function Ia(){for(var a=!1,b=B(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=z(d),f=Ba(e.id);f||(a=!0,f=new Ha(e));A(f,d);a&&f.Oa()}}u(Ia);
function Ja(a,b,c){v.call(this,"Bus",a,Ja);this.ja=b;this.Ha=c;this.ff=a.buswidth||20;this.Le=this.vb=(1<<this.ff)-1;this.Ib=20>=this.ff?12:14;this.nc=1<<this.Ib;this.dj=this.nc>>2;this.$a=this.nc-1;this.Xf=(this.Le+this.nc)/this.nc|0;this.Pd=this.Xf-1;this.Kf=[];this.Lf=[];this.Dh();this.Oa()}y(v,Ja);Ja.prototype.Dh=function(){this.ya=Array(this.Xf);for(var a=0;a<this.Xf;a++)this.ya[a]=new D(a*this.nc);this.ja.Dh(this.ya,this.Le,this.Ib,this.$a,this.Pd);this.ja.vb=this.vb};
Ja.prototype.reset=function(){Ka(this,!0)};function La(a,b,c,d,e){if(!(b&a.$a||!c||c&a.$a)){for(var f=b>>a.Ib;0<c&&f<a.ya.length;){var l=a.ya[f];if(void 0!==l&&l.size)return Ma(1,b,c);b=f*a.nc;a.ya[f++]=new D(b,a.nc,d,e);c-=a.nc}return!0}return Ma(2,b,c)}function Ka(a,b){if(void 0!==b&&20<a.ff){var c=a.vb&-1048577|(b?1048576:0);c!=a.vb&&(a.vb=c,a.ja&&(a.ja.vb=c))}}
Ja.prototype.Kg=function(a,b,c){if(!(a&this.$a||!b||b&this.$a)){for(var d=a>>this.Ib;0<b;){var e=this.ya[d];if(!e.ea)return Ma(5,a,b);e.Fd(c);b-=this.nc;d++}return!0}return Ma(3,a,b)};function Na(a,b,c){if(!(b&a.$a||!c||c&a.$a)){for(var d=b>>a.Ib;0<c;)b=d*a.nc,a.ya[d++]=new D(b),c-=a.nc;return!0}return Ma(4,b,c)}function Oa(a,b){return a.ya[(b&a.vb)>>a.Ib].Fi(b&a.$a)}function Pa(a,b){var c=b&a.$a,d=(b&a.vb)>>a.Ib;return c!=a.$a?a.ya[d].zn(c):a.ya[d++].Fi(c)|a.ya[d&a.Pd].Fi(0)<<8}
function Ra(a,b,c){a.ya[(b&a.vb)>>a.Ib].Ni(b&a.$a,c&255)}function Sa(a,b,c){var d=b&a.$a;b=(b&a.vb)>>a.Ib;d!=a.$a?a.ya[b].Ln(d,c&65535):(a.ya[b++].Ni(d,c&255),a.ya[b&a.Pd].Ni(0,c>>8&255))}function Ta(a){for(var b=0,c=[],d=0;d<a.Xf;d++){var e=a.ya[d];if(e.Qa||e.jj){c[b++]=d;var f=c,l=b++;a:if(e=e.save()){for(var k=0,m=0,n=[];k<e.length;){for(var q=e[k],s=k+1;s<e.length&&e[s]===q;)s++;n[m++]=s-k;n[m++]=q;k=s}if(n.length<e.length){e=n;break a}}f[l]=e}}c[b]=a.Le==a.vb;return c}
Ja.prototype.Kg=function(a,b,c){if(!(a&this.$a||!b||b&this.$a)){for(var d=a>>this.Ib;0<b;){var e=this.ya[d];if(!e.ea)return Ma(5,a,b);e.Fd(c);b-=this.nc;d++}return!0}return Ma(3,a,b)};function Na(a,b,c){if(!(b&a.$a||!c||c&a.$a)){for(var d=b>>a.Ib;0<c;)b=d*a.nc,a.ya[d++]=new D(b),c-=a.nc;return!0}return Ma(4,b,c)}function Oa(a,b){return a.ya[(b&a.vb)>>a.Ib].Fi(b&a.$a)}function Pa(a,b){var c=b&a.$a,d=(b&a.vb)>>a.Ib;return c!=a.$a?a.ya[d].yn(c):a.ya[d++].Fi(c)|a.ya[d&a.Pd].Fi(0)<<8}
function Ra(a,b,c){a.ya[(b&a.vb)>>a.Ib].Ni(b&a.$a,c&255)}function Sa(a,b,c){var d=b&a.$a;b=(b&a.vb)>>a.Ib;d!=a.$a?a.ya[b].Kn(d,c&65535):(a.ya[b++].Ni(d,c&255),a.ya[b&a.Pd].Ni(0,c>>8&255))}function Ta(a){for(var b=0,c=[],d=0;d<a.Xf;d++){var e=a.ya[d];if(e.Qa||e.jj){c[b++]=d;var f=c,l=b++;a:if(e=e.save()){for(var k=0,m=0,n=[];k<e.length;){for(var q=e[k],s=k+1;s<e.length&&e[s]===q;)s++;n[m++]=s-k;n[m++]=q;k=s}if(n.length<e.length){e=n;break a}}f[l]=e}}c[b]=a.Le==a.vb;return c}
function Ua(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,l=e+d,k=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=l;n++)void 0!==f.Kf[n]?t("Input port "+h(n,4)+" registered by "+f.Kf[n][0].id+", ignoring "+k.id):f.Kf[n]=[k,m,!1,!1]}}function Va(a,b,c){var d=255;a=a.Kf[b];void 0!==a&&a[1]&&(d=a[1].call(a[0],b,c));return d}
function Wa(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,l=e+d,k=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=l;n++)void 0!==f.Lf[n]?t("Output port "+h(n,4)+" registered by "+f.Lf[n][0].id+", ignoring "+k.id):f.Lf[n]=[k,m,!1,!1]}}function Xa(a,b,c,d){a=a.Lf[b];void 0!==a&&a[1]&&a[1].call(a[0],b,c,d)}function Ma(a,b,c){t("Memory block error ("+a+","+h(b)+","+h(c)+")");return!1}
function D(a,b,c,d){this.ej=b;this.la=null;this.offset=0;this.lj=c;this.ea=null;this.Qa=this.jj=!1;if(b)if(d)this.ea=d,a=[d.Ld,a-d.Ya],this.la=a[0],this.offset=a[1],this.Fd(d.Ne);else if(Ga)this.buffer=new window.Wk(b),this.ag=new window.Pn(this.buffer,0,b),this.Ui=new window.Vn(this.buffer,0,b),this.Fd(Ya);else{this.la=Array(b>>2);for(d=0;d<this.la.length;d++)this.la[d]=0;this.Fd(Za)}else this.Fd()}
D.prototype={Cg:function(){return 0},Ng:function(){},xn:function(a){return this.Ui[a]},Bn:function(a){return this.ag.getUint16(a,!0)},Jn:function(a,b){this.Ui[a]=b;this.Qa=!0},Nn:function(a,b){this.ag.setUint16(a,b,!0);this.Qa=!0},wn:function(a){return this.la[a>>2]>>>((a&3)<<3)&255},An:function(a){var b=a>>2;a=(a&3)<<3;var c=this.la[b]>>>a;return 24>a?c&65535:c&255|(this.la[b+1]&255)<<8},In:function(a,b){var c=a>>2,d=(a&3)<<3;this.la[c]=this.la[c]&~(255<<d)|b<<d;this.Qa=!0},Mn:function(a,b){var c=
function D(a,b,c,d){this.ej=b;this.la=null;this.offset=0;this.lj=c;this.ea=null;this.Qa=this.jj=!1;if(b)if(d)this.ea=d,a=[d.Ld,a-d.Ya],this.la=a[0],this.offset=a[1],this.Fd(d.Ne);else if(Ga)this.buffer=new ArrayBuffer(b),this.ag=new DataView(this.buffer,0,b),this.Ui=new Uint8Array(this.buffer,0,b),this.Fd(Ya);else{this.la=Array(b>>2);for(d=0;d<this.la.length;d++)this.la[d]=0;this.Fd(Za)}else this.Fd()}
D.prototype={Cg:function(){return 0},Ng:function(){},wn:function(a){return this.Ui[a]},An:function(a){return this.ag.getUint16(a,!0)},In:function(a,b){this.Ui[a]=b;this.Qa=!0},Mn:function(a,b){this.ag.setUint16(a,b,!0);this.Qa=!0},vn:function(a){return this.la[a>>2]>>>((a&3)<<3)&255},zn:function(a){var b=a>>2;a=(a&3)<<3;var c=this.la[b]>>>a;return 24>a?c&65535:c&255|(this.la[b+1]&255)<<8},Hn:function(a,b){var c=a>>2,d=(a&3)<<3;this.la[c]=this.la[c]&~(255<<d)|b<<d;this.Qa=!0},Ln:function(a,b){var c=
a>>2,d=(a&3)<<3;24>d?this.la[c]=this.la[c]&~(65535<<d)|b<<d:(this.la[c]=this.la[c]&16777215|b<<24,c++,this.la[c]=this.la[c]&4294967040|b>>8);this.Qa=!0},save:function(){var a,b;if(this.ea)a=null;else if(Ga)for(a=Array(this.ej>>2),b=0;b<a.length;b++)a[b]=this.ag.getInt32(b<<2,!0);else a=this.la;return a},restore:function(a){if(this.ea)return null===a;if(this.ej==a.length<<2){var b;if(Ga)for(b=0;b<a.length;b++)this.ag.setInt32(b<<2,a[b],!0);else this.la=a;return this.Qa=!0}return!1},Fd:function(a,b){a||
(a=[]);void 0===b&&(b=!0);var c=a;this.vc=c[0]?c[0]:this.Cg;this.yn=c[1]?c[1]:this.Cg;b&&(this.Fi=c[0]?c[0]:this.Cg,this.zn=c[1]?c[1]:this.Cg);c=a;this.xc=c[2]&&!this.lj?c[2]:this.Ng;this.Kn=c[3]&&!this.lj?c[3]:this.Ng;b&&(this.Ni=c[2]?c[2]:this.Ng,this.Ln=c[3]?c[3]:this.Ng)}};var Za=[D.prototype.wn,D.prototype.An,D.prototype.In,D.prototype.Mn];if(Ga)var Ya=[D.prototype.xn,D.prototype.Bn,D.prototype.Jn,D.prototype.Nn];
function $a(a,b){v.call(this,"CPU",a,$a);var c=a.multiplier||1;this.cd=a.cycles||b;this.xd=c;this.og=Math.round(this.cd/1E4)/100;this.ef=this.og*this.xd;this.rc=this.zb=!1;this.kh=a.autoStart;c=va.autostart;void 0!==c&&(this.kh="true"==c?!0:"false"==c?!1:null);this.fg=!1;this.tg=this.xe=0;this.ug=a.csStart;this.hf=a.csInterval;this.jf=a.csStop;var d=this;this.Am=function(){ab(d)};this.Oa()}y(v,$a);g=$a.prototype;
g.gc=function(a,b,c,d){this.ma=b;this.Ha=d;this.Fa=a;var e=C(a,"Video");e&&(this.af=function(){bb(e)},this.Ce=function(){e.Ce()});this.ga=C(a,"ChipSet");this.Oa()};g.reset=function(){};g.save=function(){return null};g.restore=function(){return!1};g.Sb=function(a,b){if(!b){if(a&&this.restore){cb(this);if(!this.restore(a))return!1;db(this)}else this.reset();this.Tb("No debugger detected")}this.zb=!0;!fb(this)&&this.Ha&&this.Ha.$n();this.af();this.$e();return!0};
(a=[]);void 0===b&&(b=!0);var c=a;this.vc=c[0]?c[0]:this.Cg;this.xn=c[1]?c[1]:this.Cg;b&&(this.Fi=c[0]?c[0]:this.Cg,this.yn=c[1]?c[1]:this.Cg);c=a;this.xc=c[2]&&!this.lj?c[2]:this.Ng;this.Jn=c[3]&&!this.lj?c[3]:this.Ng;b&&(this.Ni=c[2]?c[2]:this.Ng,this.Kn=c[3]?c[3]:this.Ng)}};var Za=[D.prototype.vn,D.prototype.zn,D.prototype.Hn,D.prototype.Ln];if(Ga)var Ya=[D.prototype.wn,D.prototype.An,D.prototype.In,D.prototype.Mn];
function $a(a,b){v.call(this,"CPU",a,$a);var c=a.multiplier||1;this.cd=a.cycles||b;this.xd=c;this.og=Math.round(this.cd/1E4)/100;this.ef=this.og*this.xd;this.rc=this.zb=!1;this.kh=a.autoStart;c=va.autostart;void 0!==c&&(this.kh="true"==c?!0:"false"==c?!1:null);this.fg=!1;this.tg=this.xe=0;this.ug=a.csStart;this.hf=a.csInterval;this.jf=a.csStop;var d=this;this.zm=function(){ab(d)};this.Oa()}y(v,$a);g=$a.prototype;
g.gc=function(a,b,c,d){this.ma=b;this.Ha=d;this.Fa=a;var e=C(a,"Video");e&&(this.af=function(){bb(e)},this.Ce=function(){e.Ce()});this.ga=C(a,"ChipSet");this.Oa()};g.reset=function(){};g.save=function(){return null};g.restore=function(){return!1};g.Sb=function(a,b){if(!b){if(a&&this.restore){cb(this);if(!this.restore(a))return!1;db(this)}else this.reset();this.Tb("No debugger detected")}this.zb=!0;!fb(this)&&this.Ha&&this.Ha.Xn();this.af();this.$e();return!0};
g.Jb=function(a){this.zb=!1;return a&&this.save?this.save():!0};function fb(a){return!0===a.kh||null===a.kh&&void 0===a.oa.run?(ab(a),!0):!1}g.Ce=function(){};g.rj=function(){return 0};function db(a){void 0===a.ug&&(a.ug=0);void 0===a.hf&&(a.hf=-1);void 0===a.jf&&(a.jf=-1);a.fg=0<=a.ug&&0<a.hf;a.fg&&(a.tg=0,a.xe=a.ug-a.ce)}function E(a,b,c,d){void 0!==a.oa[b]&&(void 0===d&&(d=4),void 0===c&&(Fa(a,"Register "+b+" is invalid"),gb(a)),c=h(c,d),a.oa[b].innerHTML!=c&&(a.oa[b].innerHTML=c))}g.$e=function(){};
g.af=function(){};g.tb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.oa[c]=d;d.onclick=function(){e.rc?gb(e,!0):ab(e,!0)};a=!0;break;case "reset":this.oa[c]=d;d.onclick=function(){e.Fa&&hb(e.Fa)};a=!0;break;case "speed":this.oa[c]=d;a=!0;break;case "setSpeed":this.oa[c]=d,d.onclick=function(){ib(e,e.xd<<1,!0)},d.innerHTML=this.ef.toFixed(2)+"Mhz",a=!0}return a};function jb(a,b,c){a.ce+=b;c&&(a.bd=a.A=0)}
function kb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.xd&&a.Lc&&(d=a.Lc/a.og);a.xj=Math.round(1E3/30);a.tm=Math.floor(a.cd/c*d);a.Kh=Math.floor(a.cd/30*d);a.Bj=Math.floor(a.cd/60*d);a.Aj=Math.floor(a.cd/2*d);b||(a.mf=a.Kh,a.lf=a.Bj,a.kf=a.Aj);a.yi=0}function lb(a,b){var c=a.ce+a.Ad+a.bd-a.A;b&&1<a.xd&&a.Lc>a.og&&(c=Math.round(c/a.xd));return c}function cb(a){a.Lc=0;a.rg=1;a.ce=a.Ad=a.bd=a.A=0;db(a);ib(a,1)}
function kb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.xd&&a.Lc&&(d=a.Lc/a.og);a.xj=Math.round(1E3/30);a.sm=Math.floor(a.cd/c*d);a.Kh=Math.floor(a.cd/30*d);a.Bj=Math.floor(a.cd/60*d);a.Aj=Math.floor(a.cd/2*d);b||(a.mf=a.Kh,a.lf=a.Bj,a.kf=a.Aj);a.yi=0}function lb(a,b){var c=a.ce+a.Ad+a.bd-a.A;b&&1<a.xd&&a.Lc>a.og&&(c=Math.round(c/a.xd));return c}function cb(a){a.Lc=0;a.rg=1;a.ce=a.Ad=a.bd=a.A=0;db(a);ib(a,1)}
function ib(a,b,c){void 0!==b&&(0.8>a.Lc/a.ef&&(b=1),a.xd=b,a.ef=a.og*a.xd,b=a.ef.toFixed(2)+"Mhz",a.oa.setSpeed&&(a.oa.setSpeed.innerHTML=b),a.Tb("target speed: "+b),c&&a.Ce());jb(a,a.Ad);a.Ad=0;a.we=ia();a.$d=0;kb(a)}
function ab(a,b){if(Da(a,!0)){a.rc||(ib(a),a.Fa&&a.Fa.start(a.we,lb(a)),a.rc=!0,a.ga&&mb(a.ga),a.oa.run&&(a.oa.run.innerHTML="Halt"),b&&a.Ce());a.yi>=a.cd&&kb(a,!0);a.nf=0;a.qg=ia();if(a.$d){var c=a.qg-a.$d;c>a.xj&&(a.we+=c,a.we>a.qg&&(a.we=a.qg))}try{do{a.Sk(a.fg?1:Math.round(a.tm/a.rg));var d=a.bd-a.A;a.Ad+=d;a.nf+=d;jb(a,0,!0);var c=a,e=d;if(c.fg){var f=!1;c.tg=c.tg+c.rj()|0;c.xe-=e;0>=c.xe&&(c.xe+=c.hf,f=!0);0<=c.jf&&c.jf<=lb(c)&&(c.hf=c.jf=-1,db(c),gb(c),f=!0);f&&c.Tb(lb(c)+" cycles: checksum="+
h(c.tg))}a.lf-=d;0>=a.lf&&(a.lf+=a.Bj,a.af());a.kf-=d;0>=a.kf&&(a.kf+=a.Aj,a.$e());a.mf-=d;if(0>=a.mf){a.mf+=a.Kh;break}}while(a.rc)}catch(l){gb(a);a.af();a.$e();a.Fa&&a.Fa.stop(ia(),lb(a));Da(a,!1);Fa(a,l.message);return}d=setTimeout;c=a.Am;a.$d=ia();e=a.xj;a.nf&&(e=Math.round(e*a.nf/a.Kh));e-=a.$d-a.qg;if(f=a.$d-a.we)a.Lc=Math.round(a.Ad/(10*f))/100,864E5<=f&&(a.ce=0,a.ga&&nb(a.ga,!0),ib(a));if(0>e||a.Lc<a.ef)e=0;a.yi+=a.nf;a.$d+=e;d(c,e)}else a.af(),a.$e(),a.Fa&&a.Fa.stop(ia(),lb(a))}
function ab(a,b){if(Da(a,!0)){a.rc||(ib(a),a.Fa&&a.Fa.start(a.we,lb(a)),a.rc=!0,a.ga&&mb(a.ga),a.oa.run&&(a.oa.run.innerHTML="Halt"),b&&a.Ce());a.yi>=a.cd&&kb(a,!0);a.nf=0;a.qg=ia();if(a.$d){var c=a.qg-a.$d;c>a.xj&&(a.we+=c,a.we>a.qg&&(a.we=a.qg))}try{do{a.Sk(a.fg?1:Math.round(a.sm/a.rg));var d=a.bd-a.A;a.Ad+=d;a.nf+=d;jb(a,0,!0);var c=a,e=d;if(c.fg){var f=!1;c.tg=c.tg+c.rj()|0;c.xe-=e;0>=c.xe&&(c.xe+=c.hf,f=!0);0<=c.jf&&c.jf<=lb(c)&&(c.hf=c.jf=-1,db(c),gb(c),f=!0);f&&c.Tb(lb(c)+" cycles: checksum="+
h(c.tg))}a.lf-=d;0>=a.lf&&(a.lf+=a.Bj,a.af());a.kf-=d;0>=a.kf&&(a.kf+=a.Aj,a.$e());a.mf-=d;if(0>=a.mf){a.mf+=a.Kh;break}}while(a.rc)}catch(l){gb(a);a.af();a.$e();a.Fa&&a.Fa.stop(ia(),lb(a));Da(a,!1);Fa(a,l.message);return}d=setTimeout;c=a.zm;a.$d=ia();e=a.xj;a.nf&&(e=Math.round(e*a.nf/a.Kh));e-=a.$d-a.qg;if(f=a.$d-a.we)a.Lc=Math.round(a.Ad/(10*f))/100,864E5<=f&&(a.ce=0,a.ga&&nb(a.ga,!0),ib(a));if(0>e||a.Lc<a.ef)e=0;a.yi+=a.nf;a.$d+=e;d(c,e)}else a.af(),a.$e(),a.Fa&&a.Fa.stop(ia(),lb(a))}
function gb(a,b){a.Ec&&(a.lh=!0);a.bd-=a.A;a.A=0;jb(a,a.Ad);a.Ad=0;a.rc&&(a.rc=!1,a.ga&&mb(a.ga),a.oa.run&&(a.oa.run.innerHTML="Run"));a.oh=b}g.Sk=function(){return 0};
var ob=[1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,
0,0,1,1,0,1,0,0,1];function pb(a,b,c){this.ja=a;this.eb=this.ua=0;this.$c=65535;this.uc=this.kc=0;this.Hg=b;rb(this,c)}function sb(a){this.ua=a;this.$c=65535;return this.eb=a<<4}
@ -43,7 +43,7 @@ function Bb(a){this.Da=a.model||8088;var b=0;switch(this.Da){default:case 8088:b
Db,this.Ka[97]=Eb,this.Ka[98]=Fb,this.Ka[99]=G,this.Ka[100]=G,this.Ka[101]=G,this.Ka[102]=G,this.Ka[103]=G,this.Ka[104]=Gb,this.Ka[105]=Hb,this.Ka[106]=Ib,this.Ka[107]=Jb,this.Ka[108]=Kb,this.Ka[109]=Lb,this.Ka[110]=Mb,this.Ka[111]=Nb,this.Ka[192]=Ob,this.Ka[193]=Pb,this.Ka[200]=Qb,this.Ka[200]=Rb,this.Ka[241]=Sb,Tb[7]=Ub,Vb[7]=Ub,80286<=this.Da&&(this.Ri=2,this.If=0,this.Ka[15]=Wb,this.Ka[99]=Xb,this.Ka[84]=Yb,this.P=this.ca=this.ba=this.na=this.Z=this.zi=0,this.V=this.U=1,this.ae=3,this.Dj=14,this.Ej=
16,this.Bb=2,this.Qb=this.bb=7,this.xg=0,this.Ij=7,this.Kj=13,this.Mj=7,this.Lj=11,this.Jj=16,this.Gj=3,this.Sh=6,this.Hj=2,this.Fj=13,this.Th=this.Uh=5,this.rf=2,this.qf=7,this.$j=23,this.ak=0,this.bk=1,this.ck=3,this.Zj=17,this.Vh=7,this.ek=11,this.Cb=7,this.Db=3,this.gk=7,this.fk=11,this.dk=15,this.mb=2,this.hk=3,this.Wh=7,this.jk=this.ai=this.ik=8,this.bi=this.$h=4,this.ok=2,this.nk=3,this.lk=5,this.mk=2,this.kk=3,this.ci=5,this.di=3,this.Oj=14,this.Qj=22,this.Nj=17,this.Pj=25,this.Sj=17,this.Uj=
25,this.Rj=20,this.Tj=28,this.qk=13,this.sk=21,this.pk=16,this.rk=24,this.Wj=13,this.Yj=21,this.Vj=16,this.Xj=24,this.tf=2,this.sf=7,this.hi=this.ii=5,this.tk=19,this.uk=this.Rb=5,this.vk=17,this.$b=3,this.wk=5,this.uf=3,this.rb=0,this.Ph=8,this.Qh=5,this.Rh=9,this.Yh=this.Xh=5,this.Zh=4,this.fi=this.ei=5,this.gi=4,this.ji=7,this.ki=5,this.li=8,this.pi=3,this.qi=4,this.ri=3,this.Ak=this.xk=11,this.zk=this.yk=15,this.Bk=7,this.ni=5,this.mi=8,this.oi=0,this.ui=2,this.vf=6,this.ti=3,this.si=6,this.wi=
3,this.Ck=this.vi=5));this.Yk=[];this.Si=[];this.Zg=0;this.ya=[];this.Le=this.vb=this.Ib=this.$a=this.Pd=0;this.S=this.jl;this.T=this.kl;this.N=this.lm;this.O=this.mm;this.Q=this.Gn;this.R=this.Hn;Zb(this)}y($a,Bb);g=Bb.prototype;g.Dh=function(a,b,c,d,e){this.ya=a;this.Le=this.vb=b;this.Ib=c;this.$a=d;this.Pd=e};g.reset=function(){this.rc&&gb(this);Zb(this);cb(this);this.Xc=!1};
3,this.Ck=this.vi=5));this.Xk=[];this.Si=[];this.Zg=0;this.ya=[];this.Le=this.vb=this.Ib=this.$a=this.Pd=0;this.S=this.il;this.T=this.jl;this.N=this.km;this.O=this.lm;this.Q=this.Fn;this.R=this.Gn;Zb(this)}y($a,Bb);g=Bb.prototype;g.Dh=function(a,b,c,d,e){this.ya=a;this.Le=this.vb=b;this.Ib=c;this.$a=d;this.Pd=e};g.reset=function(){this.rc&&gb(this);Zb(this);cb(this);this.Xc=!1};
function Zb(a){a.G=0;a.B=0;a.I=0;a.J=0;a.X=0;a.H=0;a.F=0;a.D=0;a.ed=65520;a.Sc=0;a.me=1023;a.qc={Ai:0,ua:0,kc:0,ng:-1};a.Ea=new pb(a,"CS");a.bc=new pb(a,"DS");a.Ub=new pb(a,"SS");a.gb=new pb(a,"ES");a.Qk=new pb(a,"ZERO");$b(a,0,65535);80286<=a.Da&&(a.Rc=a.Ke=0,a.Be=new pb(a,"LDT",!0),a.Jg=new pb(a,"TSS",!0),a.sb=new pb(a,"VER",!0),$b(a,65520,61440),a.Ea.eb=16711680);ac(a,0);bc(a);a.Va=0;a.nb=a.Af=-1;a.Tf=0;a.da=a.Ba=-1;a.C=a.bc;a.M=a.Ub;a.Y=a.pa=0}
g.rj=function(){var a=this.G+this.B+this.I+this.J+this.X+this.H+this.F+this.D|0;return a=a+this.qa+this.Ea.ua+this.bc.ua+this.Ub.ua+this.gb.ua+cc(this)|0};function dc(a,b){var c=a.Si[b];null!=c&&(c(--a.Zg),delete a.Si[b])}function bc(a,b){void 0===b&&(b=!!(a.ed&1));ec=b?fc:gc;rb(a.Ea,b);rb(a.bc,b);rb(a.Ub,b);rb(a.gb,b)}
g.save=function(){var a=new H(this);a.set(0,[this.G,this.B,this.I,this.J,this.X,this.H,this.F,this.D]);a.set(1,[this.qa,this.Ea.save(),this.bc.save(),this.Ub.save(),this.gb.save(),cc(this),null!=this.Rc?[this.ed,this.Rc,this.Ke,this.Sc,this.me,this.Be.save(),this.Jg.save()]:null]);a.set(2,[this.C.Hg,this.M.Hg,this.Y,this.pa,this.Va,this.da,this.Ba]);a.set(3,[this.rg,this.ce,this.xd]);a.set(4,Ta(this.ma));return a.data()};
@ -54,12 +54,12 @@ function jc(a,b){a.Ca=a.Ea.load(b)+a.qa;a.Y|=a.If}function nc(a,b){a.bc.load(b);
function vc(a){return(a.fa^a.ha^a.fa>>1)&a.$>>1?2048:0}function wc(a){a.W&=~a.$}function xc(a){a.ha=a.fa&16|a.ha&-17}function yc(a){a.W|=a.$-1}function zc(a){a.fa&=~a.$;a.ha=a.fa&32896|a.ha&-32897}function Ac(a){a.W|=a.$}function Bc(a){a.ha=~(a.fa&16)&16|a.ha&-17}function Cc(a){a.W&=~(a.$-1)}function Dc(a){uc(a)||(a.fa^=a.$>>1|a.$>>2,a.ha^=32896)}function Ec(a){a.fa|=a.$;a.ha=a.fa&32896|a.ha&-32897}function cc(a){return a.Ga&-2262|qc(a)|rc(a)|sc(a)|tc(a)|uc(a)|vc(a)}
function ac(a,b){a.$=256;a.W=a.fa=a.ha=0;b&1&&Ac(a);b&4||(a.fa|=1);b&16&&(a.ha|=16);b&64||yc(a);b&128&&Dc(a);b&2048&&Ec(a);a.Ga=a.Ga&-1793|b&1792|a.Ri;a.Ga&256&&(a.Va|=2,a.Y|=4)}
g.tb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.oa[c]=d;e=!0;break;default:e=$a.prototype.tb.call(this,a,b,c,d)}return e};function Fc(a,b){return a.ya[(b&a.vb)>>a.Ib].vc(b&a.$a)}
function F(a,b){var c=b&a.$a,d=(b&a.vb)>>a.Ib;a.A-=a.zi;return c!=a.$a?a.ya[d].yn(c):a.ya[d++].vc(c)|a.ya[d&a.Pd].vc(0)<<8}function Gc(a,b,c){a.ya[(b&a.vb)>>a.Ib].xc(b&a.$a,c&255)}function Hc(a,b,c){var d=b&a.$a;b=(b&a.vb)>>a.Ib;a.A-=a.zi;d!=a.$a?a.ya[b].Kn(d,c&65535):(a.ya[b++].xc(d,c&255),a.ya[b&a.Pd].xc(0,c>>8&255))}g.jl=function(a,b){this.Ef=a;this.da=a.Jc(this.wf=b,0);return this.Y&1?0:Fc(this,this.da)};g.kl=function(a,b){this.Ef=a;this.da=a.Jc(this.wf=b,1);return this.Y&1?0:F(this,this.da)};
g.lm=function(a,b){this.Ef=a;this.Ba=this.da=a.Jc(this.wf=b,0);return this.Y&1?0:Fc(this,this.da)};g.mm=function(a,b){this.Ef=a;this.Ba=this.da=a.Jc(this.wf=b,1);return this.Y&1?0:F(this,this.da)};g.Gn=function(a){this.Y&2||Gc(this,this.Ef.Ob(this.wf,1),a)};g.Hn=function(a){this.Y&2||Hc(this,this.Ef.Ob(this.wf,2),a)};g.aa=function(){var a=Fc(this,this.Ca);this.Ca=this.Ea.eb+(this.qa=this.qa+1&65535);return a};
function F(a,b){var c=b&a.$a,d=(b&a.vb)>>a.Ib;a.A-=a.zi;return c!=a.$a?a.ya[d].xn(c):a.ya[d++].vc(c)|a.ya[d&a.Pd].vc(0)<<8}function Gc(a,b,c){a.ya[(b&a.vb)>>a.Ib].xc(b&a.$a,c&255)}function Hc(a,b,c){var d=b&a.$a;b=(b&a.vb)>>a.Ib;a.A-=a.zi;d!=a.$a?a.ya[b].Jn(d,c&65535):(a.ya[b++].xc(d,c&255),a.ya[b&a.Pd].xc(0,c>>8&255))}g.il=function(a,b){this.Ef=a;this.da=a.Jc(this.wf=b,0);return this.Y&1?0:Fc(this,this.da)};g.jl=function(a,b){this.Ef=a;this.da=a.Jc(this.wf=b,1);return this.Y&1?0:F(this,this.da)};
g.km=function(a,b){this.Ef=a;this.Ba=this.da=a.Jc(this.wf=b,0);return this.Y&1?0:Fc(this,this.da)};g.lm=function(a,b){this.Ef=a;this.Ba=this.da=a.Jc(this.wf=b,1);return this.Y&1?0:F(this,this.da)};g.Fn=function(a){this.Y&2||Gc(this,this.Ef.Ob(this.wf,1),a)};g.Gn=function(a){this.Y&2||Hc(this,this.Ef.Ob(this.wf,2),a)};g.aa=function(){var a=Fc(this,this.Ca);this.Ca=this.Ea.eb+(this.qa=this.qa+1&65535);return a};
g.L=function(){var a=Fc(this,this.Ca)<<24>>24;this.Ca=this.Ea.eb+(this.qa=this.qa+1&65535);return a&65535};g.K=function(){var a=F(this,this.Ca);this.Ca=this.Ea.eb+(this.qa=this.qa+2&65535);return a};g.Aa=function(){var a=this.X;this.X=this.X+2&65535;return F(this,this.Ub.Jc(a,1))};function K(a,b){var c=a.X=a.X-2&65535;Hc(a,a.Ub.Ob(c,1),b)}
g.$e=function(){E(this,"AX",this.G);E(this,"BX",this.B);E(this,"CX",this.I);E(this,"DX",this.J);E(this,"SP",this.X);E(this,"BP",this.H);E(this,"SI",this.F);E(this,"DI",this.D);E(this,"CS",this.Ea.ua);E(this,"DS",this.bc.ua);E(this,"SS",this.Ub.ua);E(this,"ES",this.gb.ua);E(this,"IP",this.qa);var a=cc(this);E(this,"PS",a);E(this,"C",a&1?1:0,1);E(this,"P",a&4?1:0,1);E(this,"A",a&16?1:0,1);E(this,"Z",a&64?1:0,1);E(this,"S",a&128?1:0,1);E(this,"T",a&256?1:0,1);E(this,"I",a&512?1:0,1);E(this,"D",a&1024?
1:0,1);E(this,"O",a&2048?1:0,1);this.oa.speed&&(this.oa.speed.innerHTML=this.rc&&this.Lc?this.Lc.toFixed(2)+"Mhz":"Stopped")};
g.Sk=function(a){this.oh=!0;this.bd=this.A=a;this.ga&&nb(this.ga);a||!this.Ha||this.Ha.Yn(this.Ha.Rn)||(this.Y|=4);do{if(a=this.Y&240)this.pa|=a;else if(this.Ag=this.Ca,this.da=this.Ba=-1,this.C=this.bc,this.M=this.Ub,this.pa=this.Y&256,this.Va){a:{if(!(this.Y&4))if(this.Va&1&&this.Ga&512){if(a=Ic(this.ga),-1<=a&&(this.Va&=-2,0<=a)){this.Va&=-5;Jc.call(this,a,null,11);break a}}else if(this.Va&2){this.Va&=-3;Jc.call(this,1,null,11);break a}if(a=this.Va&8){a=this.ga;for(var b=!1,c=0;c<a.va;c++)for(var d=
g.Sk=function(a){this.oh=!0;this.bd=this.A=a;this.ga&&nb(this.ga);a||!this.Ha||this.Ha.Vn(this.Ha.Pn)||(this.Y|=4);do{if(a=this.Y&240)this.pa|=a;else if(this.Ag=this.Ca,this.da=this.Ba=-1,this.C=this.bc,this.M=this.Ub,this.pa=this.Y&256,this.Va){a:{if(!(this.Y&4))if(this.Va&1&&this.Ga&512){if(a=Ic(this.ga),-1<=a&&(this.Va&=-2,0<=a)){this.Va&=-5;Jc.call(this,a,null,11);break a}}else if(this.Va&2){this.Va&=-3;Jc.call(this,1,null,11);break a}if(a=this.Va&8){a=this.ga;for(var b=!1,c=0;c<a.va;c++)for(var d=
a.va[c],e=0;e<d.Ja.length;e++){var f=d.Ja[e];f.ad||(Kc(a,f),f.ad||(b=!0))}a=!b}a&&(this.Va&=-9)}if(this.Va&4){this.Y=this.A=0;break}}this.Y=0;this.Ka[this.aa()].call(this)}while(0<this.A);return this.oh?this.bd-this.A:void 0===this.oh?0:-1};u(function(){for(var a=B(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Bb(d);A(d,c)}});function Lc(a,b){this.ha=a^b;this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=a+b)&255}
function Mc(a,b){this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=this.ha=a|b)&255}function Nc(a,b){this.ha=a^b;this.W=this.fa=a+b+(this.W&this.$?1:0);this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return this.W&255}function Oc(a,b){this.ha=a^b;this.W=this.fa=a-b-(this.W&this.$?1:0);this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return this.W&255}
function Pc(a,b){this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=this.ha=a&b)&255}function Qc(a,b){this.ha=a^b;this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=a-b)&255}function Rc(a,b){this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=this.ha=a^b)&255}function Sc(a,b){this.ha=a^b;this.$=256;this.W=this.fa=a-b;this.A-=0>this.Ba?0>this.da?this.Bb:this.Sh:this.bb;this.Y|=2;return a}
@ -401,84 +401,84 @@ this.G;Hc(this,this.gb.Ob(this.D,1),d);this.D=this.D+(this.Ga&1024?-2:2)&65535;t
this.F),this.F=this.F+(this.Ga&1024?-2:2)&65535,this.A-=c,this.I-=b,a&&(J(this,this.pa&16?-3:-2),this.Y|=256))},function(){var a=1,b=0,c=this.ji;this.pa&192&&(a=this.I,b=1,c=this.li,this.pa&256||(this.A-=this.ki));a--&&(Sc.call(this,this.G&255,this.N(this.gb,this.D)),this.D=this.D+(this.Ga&1024?-1:1)&65535,this.A-=c-this.bb,this.I-=b,a&&tc(this)==(this.pa&64)&&(J(this,-2),this.Y|=256))},function(){var a=1,b=0,c=this.ji;this.pa&192&&(a=this.I,b=1,c=this.li,this.pa&256||(this.A-=this.ki));a--&&($c.call(this,
this.G,this.O(this.gb,this.D)),this.D=this.D+(this.Ga&1024?-2:2)&65535,this.A-=c-this.bb,this.I-=b,a&&tc(this)==(this.pa&64)&&(J(this,-2),this.Y|=256))},function(){this.G=this.G&-256|this.aa();this.A-=this.mb},function(){this.I=this.I&-256|this.aa();this.A-=this.mb},function(){this.J=this.J&-256|this.aa();this.A-=this.mb},function(){this.B=this.B&-256|this.aa();this.A-=this.mb},function(){this.G=this.G&255|this.aa()<<8;this.A-=this.mb},function(){this.I=this.I&255|this.aa()<<8;this.A-=this.mb},function(){this.J=
this.J&255|this.aa()<<8;this.A-=this.mb},function(){this.B=this.B&255|this.aa()<<8;this.A-=this.mb},function(){this.G=this.K();this.A-=this.mb},function(){this.I=this.K();this.A-=this.mb},function(){this.J=this.K();this.A-=this.mb},function(){this.B=this.K();this.A-=this.mb},function(){this.X=this.K();this.A-=this.mb},function(){this.H=this.K();this.A-=this.mb},function(){this.F=this.K();this.A-=this.mb},function(){this.D=this.K();this.A-=this.mb},Sg,Tg,Sg,Tg,function(){O[this.aa()].call(this,Rd)},
function(){O[this.aa()].call(this,Qd)},function(){this.Y|=1;xg[this.aa()].call(this,Ad,this.aa)},function(){this.Y|=1;yg[this.aa()].call(this,Ad,this.K)},Ug,Vg,Ug,Vg,function(){Jc.call(this,3,null,this.ak)},function(){var a=this.aa(),b;a:{b=this.Yk[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c][1].call(b[c][0],this.Ca)){b=!1;break a}b=!0}b?Jc.call(this,a,null,0):this.A--},function(){vc(this)?Jc.call(this,4,null,this.bk):this.A-=this.ck},function(){$b(this,this.Aa(),this.Aa());ac(this,this.Aa());
function(){O[this.aa()].call(this,Qd)},function(){this.Y|=1;xg[this.aa()].call(this,Ad,this.aa)},function(){this.Y|=1;yg[this.aa()].call(this,Ad,this.K)},Ug,Vg,Ug,Vg,function(){Jc.call(this,3,null,this.ak)},function(){var a=this.aa(),b;a:{b=this.Xk[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c][1].call(b[c][0],this.Ca)){b=!1;break a}b=!0}b?Jc.call(this,a,null,0):this.A--},function(){vc(this)?Jc.call(this,4,null,this.bk):this.A-=this.ck},function(){$b(this,this.Aa(),this.Aa());ac(this,this.Aa());
this.Zg&&dc(this,this.Ca);this.A-=this.Zj},function(){xg[this.aa()].call(this,Bd,sd)},function(){yg[this.aa()].call(this,Cd,sd)},function(){xg[this.aa()].call(this,Bd,td)},function(){yg[this.aa()].call(this,Cd,td)},function(){var a=this.aa(),b=this.G&255;this.G=(b/a&255)<<8|b%a;this.$=256;this.W=this.fa=b;this.A-=this.Ej},function(){var a=this.aa();this.W=this.fa=this.G=(this.G>>8)*a+this.G&255;this.$=256;this.A-=this.Dj},function(){this.G=this.G&-256|(qc(this)?255:0);this.A-=2},function(){this.G=
this.G&-256|this.S(this.C,this.B+(this.G&255)&65535);this.A-=this.Ck},Wg,Wg,Wg,Wg,Wg,Wg,Wg,Wg,function(){var a=this.L();(this.I=this.I-1&65535)&&this.W&this.$-1?(I(this,this.qa+a),this.A-=this.jk):this.A-=this.$h},function(){var a=this.L();!(this.I=this.I-1&65535)||this.W&this.$-1?this.A-=this.bi:(I(this,this.qa+a),this.A-=this.ai)},function(){var a=this.L();(this.I=this.I-1&65535)?(I(this,this.qa+a),this.A-=this.ik):this.A-=this.$h},function(){var a=this.L();this.I?this.A-=this.bi:(I(this,this.qa+
a),this.A-=this.ai)},function(){var a=this.aa();this.G=this.G&-256|Va(this.ma,a,this.Ca-2);this.A-=this.Uh},function(){var a=this.aa();this.G=Va(this.ma,a,this.Ca-1)|Va(this.ma,a+1&65535,this.Ca-2)<<8;this.A-=this.Uh},function(){var a=this.aa();Xa(this.ma,a,this.G&255,this.Ca-2);this.A-=this.ii},function(){var a=this.aa();Xa(this.ma,a,this.G&255,this.Ca-2);Xa(this.ma,a+1&65535,this.G>>8,this.Ca-2);this.A-=this.ii},function(){var a=this.K();K(this,this.qa);I(this,this.qa+a);this.A-=this.Ij},function(){var a=
this.K();I(this,this.qa+a);this.A-=this.Vh},function(){$b(this,this.K(),this.K());this.A-=this.ek},function(){var a=this.L();I(this,this.qa+a);this.A-=this.Vh},function(){this.G=this.G&-256|Va(this.ma,this.J,this.Ca-1);this.A-=this.Th},function(){this.G=Va(this.ma,this.J,this.Ca-1)|Va(this.ma,this.J+1&65535,this.Ca-1)<<8;this.A-=this.Th},function(){Xa(this.ma,this.J,this.G&255,this.Ca-1);this.A-=this.hi},function(){Xa(this.ma,this.J,this.G&255,this.Ca-1);Xa(this.ma,this.J+1&65535,this.G>>8,this.Ca-
1);this.A-=this.hi},Xg,Xg,function(){this.Y|=132;this.A-=this.rb},function(){this.Y|=68;this.A-=this.rb},function(){this.Va|=4;this.A-=2;this.Ga&512||gb(this)},function(){qc(this)?wc(this):Ac(this);this.A-=2},function(){this.nb=-1;xg[this.aa()].call(this,Ed,vd);0<=this.nb&&(this.G=this.nb)},function(){this.nb=-1;yg[this.aa()].call(this,Fd,vd);0<=this.nb&&(this.G=this.nb,this.J=this.Af)},function(){this.W&=~this.$;this.A-=2},function(){this.W|=this.$;this.A-=2},function(){this.Ga&=-513;this.A-=this.Gj},
function(){this.Ga|=512;this.Y|=4;this.A-=2},function(){this.Ga&=-1025;this.A-=2},function(){this.Ga|=1024;this.A-=2},function(){xg[this.aa()].call(this,Tb,vd)},function(){yg[this.aa()].call(this,Vb,vd)}];
function P(a){v.call(this,"ChipSet",a,P);this.Da=a.model;this.Da=void 0!==this.Da?parseInt(this.Da,10):Yg;this.Eb=0;var b=a.sw1;if(b)this.Eb=Zg(b,$g|ah.Xk);else if(b=a.fdrives||2,this.Eb|=Q.Og,b--,this.Eb|=(b&3)<<Q.He,b=a.monitor||(this.Da<bh?"mono":"ega"),void 0!==ch[b])this.Eb|=ch[b]<<ah.He;this.Gd=Zg(a.sw2||"11110000",0);this.km=this.Da==Yg?16:64;this.Se=this.Te=1;this.Da>=bh&&(this.Se=this.Te=2);this.hg=a.scaleTimers||!1;this.Fn=a.rtcDate;this.oj=!1;a.sound&&window&&"webkitAudioContext"in window&&
(this.bh=new webkitAudioContext);this.reset();this.Oa()}y(v,P);var Yg=5150,bh=5170,ch={none:0,tv:1,color:2,mono:3,ega:0},Q={Og:1},$g=12,ah={Tn:16,On:32,Xk:48,Ge:48,He:4};Q.ONE=0;Q.Un=64;Q.Sn=128;Q.Qn=192;Q.Ge=192;Q.He=6;g=P.prototype;
function P(a){v.call(this,"ChipSet",a,P);this.Da=a.model;this.Da=void 0!==this.Da?parseInt(this.Da,10):Yg;this.Eb=0;var b=a.sw1;if(b)this.Eb=Zg(b,$g|ah.Wk);else if(b=a.fdrives||2,this.Eb|=Q.Og,b--,this.Eb|=(b&3)<<Q.He,b=a.monitor||(this.Da<bh?"mono":"ega"),void 0!==ch[b])this.Eb|=ch[b]<<ah.He;this.Gd=Zg(a.sw2||"11110000",0);this.jm=this.Da==Yg?16:64;this.Se=this.Te=1;this.Da>=bh&&(this.Se=this.Te=2);this.hg=a.scaleTimers||!1;this.En=a.rtcDate;this.oj=!1;a.sound&&window&&"webkitAudioContext"in window&&
(this.bh=new webkitAudioContext);this.reset();this.Oa()}y(v,P);var Yg=5150,bh=5170,ch={none:0,tv:1,color:2,mono:3,ega:0},Q={Og:1},$g=12,ah={Rn:16,Nn:32,Wk:48,Ge:48,He:4};Q.ONE=0;Q.Sn=64;Q.Qn=128;Q.On=192;Q.Ge=192;Q.He=6;g=P.prototype;
g.tb=function(a,b,c,d){switch(c){case "sw1":return this.oa[c]=d,dh(this,c,d,this.Eb,{0:this.Da==Yg?"Bootable Floppy Drive":"Loop on POST",1:this.Da==Yg?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Da==Yg)return this.oa[c]=d,dh(this,c,d,this.Gd,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.oa[c]=d,!0}return!1};
g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;this.Fa=a;this.ab=C(a,"Keyboard");this.Dk=Math.round(c.cd/1193181);Ua(b,this,eh);Wa(b,this,fh);this.Da<bh?(Ua(b,this,gh),Wa(b,this,hh)):(Ua(b,this,ih),Wa(b,this,jh))};g.Sb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};g.Jb=function(a){return a&&this.save?this.save():!0};
g.reset=function(){var a;this.Hc=this.Eb;this.ge=this.Gd;kh(this);this.va=Array(this.Se);for(a=0;a<this.Se;a++)lh(this,a);this.ob=Array(this.Te);mh(this,0,32);1<this.Te&&mh(this,1,160);this.Yg=void 0;this.Gb=Array(3);for(a=0;a<this.Gb.length;a++)nh(this,a);this.Re=this.Wg=this.Mb=this.Vf=void 0;this.Uf=0;if(this.Da>=bh){this.Za=16;this.Tc=0;this.lc=16;this.Pf=0;this.Md=160;512<=oh(this)&&(this.Md|=16);3==ph(this)&&(this.Md|=64);this.Ug=3;this.Sf=0;this.Hb=Array(7);this.ne=0;this.ka||(this.ka=Array(64),
qh(this,this.Fn));for(a=14;46>a;a++)void 0===this.ka[a]&&(this.ka[a]=0);this.ka[20]=this.Hc&(ah.Ge|2|Q.Og|Q.Ge);this.ka[16]=rh(this,0)<<4|rh(this,1);sh(this)}};
qh(this,this.En));for(a=14;46>a;a++)void 0===this.ka[a]&&(this.ka[a]=0);this.ka[20]=this.Hc&(ah.Ge|2|Q.Og|Q.Ge);this.ka[16]=rh(this,0)<<4|rh(this,1);sh(this)}};
function qh(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.Tb("CMOS date invalid ("+b+"), using "+c)):b&&a.Tb("CMOS date: "+c);a.ka[0]=c.getSeconds();a.ka[1]=0;a.ka[2]=c.getMinutes();a.ka[3]=0;a.ka[4]=c.getHours();a.ka[5]=0;a.ka[6]=c.getDay()+1;a.ka[7]=c.getDate();a.ka[8]=c.getMonth()+1;c=c.getFullYear();a.ka[9]=c%100;c/=100;a.ka[50]=c%10|c/10<<4;a.gf=-1;a.ka[10]=38;a.ka[11]=2;a.ka[12]=0;a.ka[13]=128}
function sh(a){for(var b=0,c=16;46>c;c++)b+=a.ka[c];a.ka[47]=b&255;a.ka[46]=b>>8}
g.save=function(){var a=new H(this);a.set(0,[this.Eb,this.Gd,this.Hc,this.ge]);for(var b=[],c=0;c<this.va;c++){var d=[],e=this.va[c];d[0]=e.od;d[1]=e.Vg;d[2]=e.$i;d[3]=e.xb;for(var f=[],l=0;l<e.Ja.length;l++){var k=[],m=e.Ja[l];k[0]=m.ad;k[1]=m.Vi;k[2]=m.pc;k[3]=m.ub;k[4]=m.Pb;k[5]=m.mode;k[6]=m.zc;k[8]=m.Cn;k[9]=m.Dn;f[l]=k}d[4]=f;b[c]=d}a.set(1,[b]);b=[];for(c=0;c<this.ob.length;c++)d=[],e=this.ob[c],d[0]=e.of,d[1]=e.Kd,d[2]=e.dd,d[3]=e.md,d[4]=e.wb,d[5]=e.yc,d[6]=e.Nd,d[7]=e.Qe,b[c]=d;a.set(2,
g.save=function(){var a=new H(this);a.set(0,[this.Eb,this.Gd,this.Hc,this.ge]);for(var b=[],c=0;c<this.va;c++){var d=[],e=this.va[c];d[0]=e.od;d[1]=e.Vg;d[2]=e.$i;d[3]=e.xb;for(var f=[],l=0;l<e.Ja.length;l++){var k=[],m=e.Ja[l];k[0]=m.ad;k[1]=m.Vi;k[2]=m.pc;k[3]=m.ub;k[4]=m.Pb;k[5]=m.mode;k[6]=m.zc;k[8]=m.Bn;k[9]=m.Cn;f[l]=k}d[4]=f;b[c]=d}a.set(1,[b]);b=[];for(c=0;c<this.ob.length;c++)d=[],e=this.ob[c],d[0]=e.of,d[1]=e.Kd,d[2]=e.dd,d[3]=e.md,d[4]=e.wb,d[5]=e.yc,d[6]=e.Nd,d[7]=e.Qe,b[c]=d;a.set(2,
[b]);b=[];for(c=0;c<this.Gb.length;c++)d=[],e=this.Gb[c],d[0]=e.pc,d[1]=e.Dc,d[2]=e.Pb,d[3]=e.Xe,d[4]=e.cj,d[5]=e.mode,d[6]=e.Bf,d[7]=e.rd,d[8]=e.Vd,d[9]=e.Kc,d[10]=e.bf,d[11]=e.qe,d[12]=e.Cd,b[c]=d;a.set(3,[this.Yg,b]);a.set(4,[this.Vf,this.Mb,this.Wg,this.Re,this.Uf]);this.Da>=bh&&(a.set(5,[this.Za,this.Tc,this.lc,this.Pf,this.Md,this.Ug]),a.set(6,[this.Sf,this.Hb,this.ne,this.ka,this.gf]));return a.data()};
g.restore=function(a){var b,c;b=a[0];this.Eb=b[0];this.Gd=b[1];this.Hc=b[2];this.ge=b[3];b=a[1];this.va=Array(this.Se);for(c=0;c<this.Se;c++)lh(this,c,1==b.length?b[0][c]:b);b=a[2];this.ob=Array(this.Te);for(c=0;c<this.Te;c++)mh(this,c,0===c?32:160,b[0][c]);b=a[3];this.Yg=b[0];this.Gb=Array(3);for(c=0;c<this.Gb.length;c++)nh(this,c,b[1][c]);b=a[4];this.Vf=b[0];this.Mb=b[1];this.Wg=b[2];this.Re=b[3];this.Uf=b[4];if(b=a[5])this.Za=b[0],this.Tc=b[1],this.lc=b[2],this.Pf=b[3],this.Md=b[4],this.Ug=b[5];
if(b=a[6])this.Sf=b[0],this.Hb=b[1],this.ne=b[2],this.ka=b[3],this.gf=b[4],qh(this);return!0};function lh(a,b,c){a=a.va[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.od=c[0];a.Vg=c[1];a.$i=c[2];a.xb=c[3];a.rm=b<<2;a.Ja=Array(4);for(b=0;b<a.Ja.length;b++)th(a,b,c[4][b])}function th(a,b,c){var d=a.Ja[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ea=a;d.tj=b;d.ad=c[0];d.Vi=c[1];d.pc=c[2];d.ub=c[3];d.Pb=c[4];d.mode=c[5];d.zc=c[6];uh(d,c[8],c[9])}
function uh(a,b,c,d){"string"==typeof b&&(b=Ba(b));b&&(a.$f=null,a.Cn=b.id,a.Dn=c,a.Zf=b,a.xh=b[c],a.zg=d)}function mh(a,b,c,d){a=a.ob[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.Zn=b<<3;a.of=d[0];a.Kd=d[1];a.dd=d[2];a.md=d[3];a.wb=d[4];a.yc=d[5];a.Nd=d[6];a.Qe=d[7]}
function nh(a,b,c){a=a.Gb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.pc=c[0];a.Dc=c[1];a.Pb=c[2];a.Xe=c[3];a.cj=c[4];a.mode=c[5];a.Bf=c[6];a.rd=c[7];a.Vd=c[8];a.Kc=c[9];a.bf=c[10];a.qe=c[11];a.Cd=c[12]}function oh(a,b){return((((b?a.Eb:a.Hc)&12)>>2)+1)*a.km+32*((b?a.Gd:a.ge)&15)}function vh(a,b){var c=b?a.Eb:a.Hc;return a.Da!=Yg||c&Q.Og?((c&Q.Ge)>>Q.He)+1:0}function rh(a,b){return b<vh(a)?a.Da<bh?1:2:0}function ph(a,b){return((b?a.Eb:a.Hc)&ah.Ge)>>ah.He}
if(b=a[6])this.Sf=b[0],this.Hb=b[1],this.ne=b[2],this.ka=b[3],this.gf=b[4],qh(this);return!0};function lh(a,b,c){a=a.va[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.od=c[0];a.Vg=c[1];a.$i=c[2];a.xb=c[3];a.qm=b<<2;a.Ja=Array(4);for(b=0;b<a.Ja.length;b++)th(a,b,c[4][b])}function th(a,b,c){var d=a.Ja[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ea=a;d.tj=b;d.ad=c[0];d.Vi=c[1];d.pc=c[2];d.ub=c[3];d.Pb=c[4];d.mode=c[5];d.zc=c[6];uh(d,c[8],c[9])}
function uh(a,b,c,d){"string"==typeof b&&(b=Ba(b));b&&(a.$f=null,a.Bn=b.id,a.Cn=c,a.Zf=b,a.xh=b[c],a.zg=d)}function mh(a,b,c,d){a=a.ob[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.Wn=b<<3;a.of=d[0];a.Kd=d[1];a.dd=d[2];a.md=d[3];a.wb=d[4];a.yc=d[5];a.Nd=d[6];a.Qe=d[7]}
function nh(a,b,c){a=a.Gb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.pc=c[0];a.Dc=c[1];a.Pb=c[2];a.Xe=c[3];a.cj=c[4];a.mode=c[5];a.Bf=c[6];a.rd=c[7];a.Vd=c[8];a.Kc=c[9];a.bf=c[10];a.qe=c[11];a.Cd=c[12]}function oh(a,b){return((((b?a.Eb:a.Hc)&12)>>2)+1)*a.jm+32*((b?a.Gd:a.ge)&15)}function vh(a,b){var c=b?a.Eb:a.Hc;return a.Da!=Yg||c&Q.Og?((c&Q.Ge)>>Q.He)+1:0}function rh(a,b){return b<vh(a)?a.Da<bh?1:2:0}function ph(a,b){return((b?a.Eb:a.Hc)&ah.Ge)>>ah.He}
function dh(a,b,c,d,e){for(var f="",l=1;8>=l;l++){var k="pcjs-bitCell";l||(k+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+l)+'" class="'+k+'" data-value="0">'+l+"</div>\n"}c.innerHTML=f;b=B(c,"pcjs-bitCell");c=null;for(l=0;l<b.length;l++)void 0!==e&&void 0!==e[l]&&(c=e[l]),c&&b[l].setAttribute("title",c),wh(b[l],d&1<<l?!1:!0),b[l].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");wh(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Eb=
a.Eb&~e|(c?0:e);break;case "sw2":a.Gd=a.Gd&~e|(c?0:e)}kh(a)}}(a,b[l])}function wh(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function kh(a){var b=a.oa.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(void 0!==b){var d;d=""+(oh(a,!0)+"Kb");d+=", "+c[ph(a,!0)]+" Monitor";d+=", "+vh(a,!0)+" Floppy Drives";if(void 0!==a.Hc&&a.Hc!=a.Eb||void 0!==a.ge&&a.ge!=a.Gd)d+=" (Reset required)";b.innerHTML=d}}
function xh(a,b,c){a=a.va[b];c=a.Ja[c].ub[a.xb];a.xb^=1;return c}function yh(a,b,c,d){a=a.va[b];c=a.Ja[c];c.ub[a.xb]=c.Vi[a.xb]=d;a.xb^=1}function zh(a,b,c){a=a.va[b];c=a.Ja[c].Pb[a.xb];a.xb^=1;return c}function Ah(a,b,c,d){a=a.va[b];c=a.Ja[c];c.Pb[a.xb]=c.pc[a.xb]=d;a.xb^=1}function Bh(a,b){var c=a.va[b],d=c.od|1;c.od&=-16;return d}function Ch(a,b,c){a=a.va[b];b=c&3;a.od=a.od&~(16<<b)|(c&4)<<b+2;a.$i=c}function Dh(a,b,c){b=a.va[b];var d=c&3,e=b.Ja[d];e.ad=c&4?!0:!1;e.ad||Eh(a,b.rm+d)}
function xh(a,b,c){a=a.va[b];c=a.Ja[c].ub[a.xb];a.xb^=1;return c}function yh(a,b,c,d){a=a.va[b];c=a.Ja[c];c.ub[a.xb]=c.Vi[a.xb]=d;a.xb^=1}function zh(a,b,c){a=a.va[b];c=a.Ja[c].Pb[a.xb];a.xb^=1;return c}function Ah(a,b,c,d){a=a.va[b];c=a.Ja[c];c.Pb[a.xb]=c.pc[a.xb]=d;a.xb^=1}function Bh(a,b){var c=a.va[b],d=c.od|1;c.od&=-16;return d}function Ch(a,b,c){a=a.va[b];b=c&3;a.od=a.od&~(16<<b)|(c&4)<<b+2;a.$i=c}function Dh(a,b,c){b=a.va[b];var d=c&3,e=b.Ja[d];e.ad=c&4?!0:!1;e.ad||Eh(a,b.qm+d)}
function Fh(a,b,c){return a.va[b].Ja[c].zc}function Gh(a,b,c,d,e){uh(a.va[b>>2].Ja[b&3],c,d,e)}function Eh(a,b,c){b=a.va[b>>2].Ja[b&3];b.Zf&&b.xh&&b.zg?(c&&(b.$f=c),b.ad||Kc(a,b,!0)):c&&c(!0)}
function Kc(a,b,c){c&&(b.count=b.Pb[1]<<8|b.Pb[0],b.Uk=b.mode&12,b.pj=b.Xc=!1);for(var d=!1;0<=b.count&&(c=b.zc<<16|b.ub[1]<<8|b.ub[0],4==b.Uk?(d=!0,function(c){b.xh.call(b.Zf,b.zg,-1,function(f,l){0>f&&(b.pj||(b.pj=!0),f=255);b.ad||Ra(a.ma,c,f);(d=l)&&setTimeout(function(){Hh(b)||Kc(a,b)},0)})}(c)):8==b.Uk?(c=Oa(a.ma,c),0>b.xh.call(b.Zf,b.zg,c)&&(b.Xc=!0)):b.Xc=!0),!d&&!Hh(b););}
function Hh(a){if(!a.Xc&&0<=--a.count&&(a.mode&32?(a.ub[0]--,0>a.ub[0]&&(a.ub[0]=255,a.ub[1]--,0>a.ub[1]&&(a.ub[1]=255))):(a.ub[0]++,255<a.ub[0]&&(a.ub[0]=0,a.ub[1]++,255<a.ub[1]&&(a.ub[1]=0))),!a.ad))return!1;var b=a.ea;b.od=b.od&~(16<<a.tj)|1<<a.tj;a.mode&16||(a.ad=!0,a.Zf=a.zg=null);a.$f&&(a.$f(!a.Xc),a.$f=null);return!0}function Ih(a,b){var c=0,d=a.ob[b];if(void 0!==d.Qe)switch(d.Qe&3){case 2:c=d.wb;break;case 3:c=d.yc}return c}
function Jh(a,b,c){var d=a.ob[b];if(c&16)d.dd=0,d.Kd[d.dd++]=c,d.md=0,d.Nd=7,d.wb=d.yc=0,d.Qe=10;else if(c&8)d.Qe=c;else{var e=c&224;if(e&32){var f=0;if(96==(e&96))f=1<<(c&7);else for(c=d.Nd+1;;){c&=7;e=1<<c;if(d.yc&e){f=e;break}if(c++==d.Nd)break}d.yc&f&&(d.yc&=~f,Kh(a,b))}else 192==e&&(d.Nd=c&7)}}function Lh(a,b,c){var d=a.ob[b];d.dd<d.Kd.length?(d.Kd[d.dd++]=c,2==d.dd&&d.Kd[0]&2&&d.dd++,3!=d.dd||d.Kd[0]&1||d.dd++):(d.md=c,d=a.ja,d.Y|=4,Kh(a,b,b||253!=c?0:6))}
function Kh(a,b,c){b=a.ob[b];var d=((b.yc|b.md)^255)&b.wb;a=a.ja;a.ga&&(a.Va=d?a.Va|1:a.Va&-2);d&&c&&(b.of=c)}function R(a,b,c){var d=b>>3,e=a.ob[d];e.wb|=1<<(b&7);e.of=c||0;1==d&&(a.ob[0].wb|=4);Kh(a,d)}function Qh(a,b){var c=b>>3,d=a.ob[c],e=1<<(b&7);d.wb&e&&(d.wb&=~e,1!=c||d.wb||(a.ob[0].wb&=-5),Kh(a,c))}
function Ic(a,b){void 0===b&&(b=0);var c=-1,d=a.ob[b];if(d.of)c=-2,d.of--;else for(var e=d.wb&((d.yc|d.md)^255),f=d.Nd+1;;){var f=f&7,l=1<<f;if(e&l){c=b||2!=f?d.Kd[1]+f:Ic(a,1);0<=c&&(d.yc|=l,d.wb&=~l);break}if(f++==d.Nd)break}return c}function Rh(a,b){var c=a.Gb[b];c.rd==c.Vd&&Sh(a,b);if(c.bf)return c.Xe[c.rd++];Th(a,b);return c.Pb[c.rd++]}
function Uh(a,b,c){var d=a.Gb[b];d.rd==d.Vd&&Sh(a,b);d.pc[d.rd++]=c;if(d.rd==d.Vd){d.qe&&0!=d.mode&&8!=d.mode||(d.bf=!1,d.Pb[0]=d.Dc[0]=d.pc[0],d.Pb[1]=d.Dc[1]=d.pc[1],d.Cd=lb(a.ja,a.hg),d.qe=!0,d.Kc=0!=d.mode,0==b&&Qh(a,0));2==b&&mb(a);if(0==b){var e=Vh(a,0);2048<=e&&(a.ja.rg=Math.round(65536/e))}0==b&&0==d.mode&&16==d.Bf&&(b=a.ja,b.rc&&(a=b.A-c*a.Dk,b.A-=a,b.bd-=a))}}g.gm=function(){return null};
g.qn=function(a,b){this.Yg=b;var c=(b&192)>>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var l=this.Gb[c];l.Bf=f;l.mode=e;l.cj=d;l.pc=[0,0];l.Pb=[0,0];l.Xe=[0,0];l.Kc=!1;l.bf=!1;l.qe=!1;Sh(this,c);0==c&&Qh(this,0);2==c&&255==this.ob[0].md&&77==this.Mb&&(c=this.Gb[0],c.Dc[0]=c.pc[0],c.Dc[1]=c.pc[1],c.Cd=lb(this.ja,this.hg))}else Th(this,c),d=this.Gb[c],d.Xe[0]=d.Pb[0],d.Xe[1]=d.Pb[1],d.bf=!0,Sh(this,c)}};function Vh(a,b){var c=a.Gb[b],d=c.pc[1]<<8|c.pc[0];d||(d=1==c.Vd?256:65536);return d}
function Uh(a,b,c){var d=a.Gb[b];d.rd==d.Vd&&Sh(a,b);d.pc[d.rd++]=c;if(d.rd==d.Vd){d.qe&&0!=d.mode&&8!=d.mode||(d.bf=!1,d.Pb[0]=d.Dc[0]=d.pc[0],d.Pb[1]=d.Dc[1]=d.pc[1],d.Cd=lb(a.ja,a.hg),d.qe=!0,d.Kc=0!=d.mode,0==b&&Qh(a,0));2==b&&mb(a);if(0==b){var e=Vh(a,0);2048<=e&&(a.ja.rg=Math.round(65536/e))}0==b&&0==d.mode&&16==d.Bf&&(b=a.ja,b.rc&&(a=b.A-c*a.Dk,b.A-=a,b.bd-=a))}}g.fm=function(){return null};
g.pn=function(a,b){this.Yg=b;var c=(b&192)>>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var l=this.Gb[c];l.Bf=f;l.mode=e;l.cj=d;l.pc=[0,0];l.Pb=[0,0];l.Xe=[0,0];l.Kc=!1;l.bf=!1;l.qe=!1;Sh(this,c);0==c&&Qh(this,0);2==c&&255==this.ob[0].md&&77==this.Mb&&(c=this.Gb[0],c.Dc[0]=c.pc[0],c.Dc[1]=c.pc[1],c.Cd=lb(this.ja,this.hg))}else Th(this,c),d=this.Gb[c],d.Xe[0]=d.Pb[0],d.Xe[1]=d.Pb[1],d.bf=!0,Sh(this,c)}};function Vh(a,b){var c=a.Gb[b],d=c.pc[1]<<8|c.pc[0];d||(d=1==c.Vd?256:65536);return d}
function Sh(a,b){var c=a.Gb[b];c.rd=32==c.Bf?1:0;c.Vd=48==c.Bf?2:1}
function Th(a,b,c){var d=a.Gb[b];if(d.qe&&(2!=b||a.Mb&1)){var e=lb(a.ja,a.hg),f=(e-d.Cd)/a.Dk|0;0>f&&(d.Cd=e,f=0);var l=Vh(a,b),k=a.Gb[b],m=k.Dc[1]<<8|k.Dc[0];m||(m=1==k.Vd?256:65536);k=m-f;0==d.mode?(0>=k&&(k=0),k||(d.Kc=!0,d.qe=!1,b||R(a,0))):4==d.mode?(d.Kc=1!=k,0>=k&&(k=l+k,0>=k&&(k=l),d.Dc[0]=k&255,d.Dc[1]=k>>8,d.Cd=e,!b&&d.Kc&&R(a,0))):6==d.mode&&(k-=f,0>=k&&(d.Kc=!d.Kc,k=l+k,0>=k&&(k=l),d.Dc[0]=k&255,d.Dc[1]=k>>8,d.Cd=e,!b&&d.Kc&&R(a,0)));d.Pb[0]=k&255;d.Pb[1]=k>>8;c&&(a.Cd=0)}return d}
function nb(a,b){for(var c=0;c<a.Gb.length;c++)Th(a,c,b);if(a.Da>=bh){var c=0,d=a.ja.cd,e=lb(a.ja,a.hg);if(0<=a.gf&&(c=e-a.gf,Math.floor(c/d)&&60<=++a.ka[0]&&(a.ka[0]=0,60<=++a.ka[2]&&(a.ka[2]=0,24<=++a.ka[4])))){a.ka[4]=0;a.ka[6]=a.ka[6]%7+1;var f=a.ka[9],l=ka[a.ka[8]-1];28==l&&0===f%4&&(f%100||0===f%400)&&l++;++a.ka[7]>l&&(a.ka[7]=1,12<++a.ka[8]&&(a.ka[8]=1,a.ka[9]=(a.ka[9]+1)%100))}a.gf=e-c%d}}g.Zl=function(){var a=this.Vf;this.Re&16&&(this.Mb&128?a=this.Hc:this.ab&&(a=Wh(this.ab)));return a};
g.jn=function(a,b){this.Vf=b};g.$l=function(){return this.Mb};g.kn=function(a,b){Xh(this,b);if(this.ab){var c=this.ab,d=b&128?!1:!0,e=b&64?!0:!1;c.nh!==e&&(c.nh=c.mj=e);c.ph!==d&&(c.ph=d)&&(c.mj?(Yh(c),c.mj=!1):Zh(c))}};function Xh(a,b){var c=!!(b&2),d=!!(a.Mb&2);a.Mb=b;c!=d&&mb(a,c)}g.am=function(){var a=0,a=this.Da==Yg?this.Mb&4?a|this.ge&15:a|this.ge>>4&1:this.Mb&8?a|this.Hc>>4:a|this.Hc&15;this.Mb&1&&Th(this,2).Kc&&(a=this.Mb&2?a|32:a|16);return a};g.ln=function(a,b){this.Wg=b};g.bm=function(){return this.Re};
g.mn=function(a,b){this.Re=b};g.pl=function(){var a=this.Pf;this.Za&=-258;var b=this.ab&&Wh(this.ab,!0);b&&$h(this,b);return a};g.Dm=function(a,b){if(this.Za&8)switch(this.Tc){case 96:this.lc=b;this.Za=this.Za&-5|b&4;break;case 209:ai(this,b);break;default:if(this.lc&=-17,this.ab){var c=-1;switch(b){case 255:c=250,Yh(this.ab)}$h(this,c)}}this.Tc=b;this.Za&=-9};g.ql=function(){var a=this.Mb&-193;this.Mb^=16;return a};g.Em=function(a,b){Xh(this,b)};
g.rl=function(){var a=this.Za&255;this.Za&256&&(this.Za|=1,this.Za&=-257);return a};g.Cm=function(a,b){this.Tc=b;this.Za|=8;var c=0;240<=this.Tc&&(c=this.Tc^15,this.Tc=240);switch(this.Tc){case 192:$h(this,this.Md);break;case 173:this.lc|=16;break;case 174:this.lc&=-17;break;case 170:this.ab&&Zh(this.ab,!0);this.lc|=16;$h(this,85);ai(this,3);break;case 224:$h(this,this.lc&16?0:1);break;case 240:c&1&&Zb(this.ja)}};function $h(a,b){0<=b&&(a.Pf=b,a.Za&=-2,a.Za|=256)}
function ai(a,b){a.Ug=b;Ka(a.ma,!!(b&2));b&1||Zb(a.ja)}g.Fl=function(){return this.ne};g.Rm=function(a,b){this.ne=b;this.Uf=b&128?0:128};g.Gl=function(){var a=this.ne&63;if(13>=a){var b=this.ka[a];if(10>a){var c=!1;4!=a&&5!=a||this.ka[11]&2||(b=12>b?b?b:12:(b-=12)?b+128:140,c=!0);this.ka[11]&4||(c&&128<b&&(b-=48),b=b%10|b/10<<4)}else 10==a&&(this.ka[a]^=128);a=b}else a=this.ka[a];return a};
g.Sm=function(a,b){var c=this.ne&63,d=this.ka,e;if(13>=c){if(e=b,10>c){var f=!1;this.ka[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&12<e&&(e+=48),this.ka[11]&2||(12>=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;d[c]=e};g.Xl=function(){return this.Sf};g.fn=function(a,b){this.Sf=b};g.hn=function(a,b){this.Uf=b};function Zg(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c}
function nb(a,b){for(var c=0;c<a.Gb.length;c++)Th(a,c,b);if(a.Da>=bh){var c=0,d=a.ja.cd,e=lb(a.ja,a.hg);if(0<=a.gf&&(c=e-a.gf,Math.floor(c/d)&&60<=++a.ka[0]&&(a.ka[0]=0,60<=++a.ka[2]&&(a.ka[2]=0,24<=++a.ka[4])))){a.ka[4]=0;a.ka[6]=a.ka[6]%7+1;var f=a.ka[9],l=ka[a.ka[8]-1];28==l&&0===f%4&&(f%100||0===f%400)&&l++;++a.ka[7]>l&&(a.ka[7]=1,12<++a.ka[8]&&(a.ka[8]=1,a.ka[9]=(a.ka[9]+1)%100))}a.gf=e-c%d}}g.Yl=function(){var a=this.Vf;this.Re&16&&(this.Mb&128?a=this.Hc:this.ab&&(a=Wh(this.ab)));return a};
g.hn=function(a,b){this.Vf=b};g.Zl=function(){return this.Mb};g.jn=function(a,b){Xh(this,b);if(this.ab){var c=this.ab,d=b&128?!1:!0,e=b&64?!0:!1;c.nh!==e&&(c.nh=c.mj=e);c.ph!==d&&(c.ph=d)&&(c.mj?(Yh(c),c.mj=!1):Zh(c))}};function Xh(a,b){var c=!!(b&2),d=!!(a.Mb&2);a.Mb=b;c!=d&&mb(a,c)}g.$l=function(){var a=0,a=this.Da==Yg?this.Mb&4?a|this.ge&15:a|this.ge>>4&1:this.Mb&8?a|this.Hc>>4:a|this.Hc&15;this.Mb&1&&Th(this,2).Kc&&(a=this.Mb&2?a|32:a|16);return a};g.kn=function(a,b){this.Wg=b};g.am=function(){return this.Re};
g.ln=function(a,b){this.Re=b};g.ol=function(){var a=this.Pf;this.Za&=-258;var b=this.ab&&Wh(this.ab,!0);b&&$h(this,b);return a};g.Cm=function(a,b){if(this.Za&8)switch(this.Tc){case 96:this.lc=b;this.Za=this.Za&-5|b&4;break;case 209:ai(this,b);break;default:if(this.lc&=-17,this.ab){var c=-1;switch(b){case 255:c=250,Yh(this.ab)}$h(this,c)}}this.Tc=b;this.Za&=-9};g.pl=function(){var a=this.Mb&-193;this.Mb^=16;return a};g.Dm=function(a,b){Xh(this,b)};
g.ql=function(){var a=this.Za&255;this.Za&256&&(this.Za|=1,this.Za&=-257);return a};g.Bm=function(a,b){this.Tc=b;this.Za|=8;var c=0;240<=this.Tc&&(c=this.Tc^15,this.Tc=240);switch(this.Tc){case 192:$h(this,this.Md);break;case 173:this.lc|=16;break;case 174:this.lc&=-17;break;case 170:this.ab&&Zh(this.ab,!0);this.lc|=16;$h(this,85);ai(this,3);break;case 224:$h(this,this.lc&16?0:1);break;case 240:c&1&&Zb(this.ja)}};function $h(a,b){0<=b&&(a.Pf=b,a.Za&=-2,a.Za|=256)}
function ai(a,b){a.Ug=b;Ka(a.ma,!!(b&2));b&1||Zb(a.ja)}g.El=function(){return this.ne};g.Qm=function(a,b){this.ne=b;this.Uf=b&128?0:128};g.Fl=function(){var a=this.ne&63;if(13>=a){var b=this.ka[a];if(10>a){var c=!1;4!=a&&5!=a||this.ka[11]&2||(b=12>b?b?b:12:(b-=12)?b+128:140,c=!0);this.ka[11]&4||(c&&128<b&&(b-=48),b=b%10|b/10<<4)}else 10==a&&(this.ka[a]^=128);a=b}else a=this.ka[a];return a};
g.Rm=function(a,b){var c=this.ne&63,d=this.ka,e;if(13>=c){if(e=b,10>c){var f=!1;this.ka[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&12<e&&(e+=48),this.ka[11]&2||(12>=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;d[c]=e};g.Wl=function(){return this.Sf};g.en=function(a,b){this.Sf=b};g.gn=function(a,b){this.Uf=b};function Zg(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c}
function mb(a,b){if(a.bh){void 0!==b?a.oj=b:b=a.oj&&a.ja&&a.ja.rc;var c=Math.round(1193181/Vh(a,2));if(20>c||2E4<c)b=!1;b?a.Oc?a.Oc.frequency.value=c:(a.Oc=a.bh.createOscillator(),a.Oc.type=1,a.Oc.connect(a.bh.destination),a.Oc.frequency.value=c,a.Oc.noteOn(0)):a.Oc&&(a.Oc.noteOff(0),a.Oc.disconnect(),delete a.Oc)}}
var eh={0:function(){return xh(this,0,0)},1:function(){return zh(this,0,0)},2:function(){return xh(this,0,1)},3:function(){return zh(this,0,1)},4:function(){return xh(this,0,2)},5:function(){return zh(this,0,2)},6:function(){return xh(this,0,3)},7:function(){return zh(this,0,3)},8:function(){return Bh(this,0)},32:function(){return Ih(this,0)},33:function(){return this.ob[0].md},64:function(){return Rh(this,0)},65:function(){return Rh(this,1)},66:function(){return Rh(this,2)},67:P.prototype.gm,129:function(){return Fh(this,
0,2)},130:function(){return Fh(this,0,3)},131:function(){return Fh(this,0,1)},135:function(){return Fh(this,0,0)}},gh={96:P.prototype.Zl,97:P.prototype.$l,98:P.prototype.am,99:P.prototype.bm},ih={96:P.prototype.pl,97:P.prototype.ql,100:P.prototype.rl,112:P.prototype.Fl,113:P.prototype.Gl,128:P.prototype.Xl,132:function(){return this.Hb[0]},133:function(){return this.Hb[1]},134:function(){return this.Hb[2]},136:function(){return this.Hb[3]},137:function(){return Fh(this,1,2)},138:function(){return Fh(this,
var eh={0:function(){return xh(this,0,0)},1:function(){return zh(this,0,0)},2:function(){return xh(this,0,1)},3:function(){return zh(this,0,1)},4:function(){return xh(this,0,2)},5:function(){return zh(this,0,2)},6:function(){return xh(this,0,3)},7:function(){return zh(this,0,3)},8:function(){return Bh(this,0)},32:function(){return Ih(this,0)},33:function(){return this.ob[0].md},64:function(){return Rh(this,0)},65:function(){return Rh(this,1)},66:function(){return Rh(this,2)},67:P.prototype.fm,129:function(){return Fh(this,
0,2)},130:function(){return Fh(this,0,3)},131:function(){return Fh(this,0,1)},135:function(){return Fh(this,0,0)}},gh={96:P.prototype.Yl,97:P.prototype.Zl,98:P.prototype.$l,99:P.prototype.am},ih={96:P.prototype.ol,97:P.prototype.pl,100:P.prototype.ql,112:P.prototype.El,113:P.prototype.Fl,128:P.prototype.Wl,132:function(){return this.Hb[0]},133:function(){return this.Hb[1]},134:function(){return this.Hb[2]},136:function(){return this.Hb[3]},137:function(){return Fh(this,1,2)},138:function(){return Fh(this,
1,3)},139:function(){return Fh(this,1,1)},140:function(){return this.Hb[4]},141:function(){return this.Hb[5]},142:function(){return this.Hb[6]},143:function(){return Fh(this,1,0)},160:function(){return Ih(this,1)},161:function(){return this.ob[1].md},192:function(){return xh(this,1,0)},194:function(){return zh(this,1,0)},196:function(){return xh(this,1,1)},198:function(){return zh(this,1,1)},200:function(){return xh(this,1,2)},202:function(){return zh(this,1,2)},204:function(){return xh(this,1,3)},
206:function(){return zh(this,1,3)},208:function(){return Bh(this,1)}},fh={0:function(a,b){yh(this,0,0,b)},1:function(a,b){Ah(this,0,0,b)},2:function(a,b){yh(this,0,1,b)},3:function(a,b){Ah(this,0,1,b)},4:function(a,b){yh(this,0,2,b)},5:function(a,b){Ah(this,0,2,b)},6:function(a,b){yh(this,0,3,b)},7:function(a,b){Ah(this,0,3,b)},8:function(a,b){this.va[0].Vg=b},9:function(a,b){Ch(this,0,b)},10:function(a,b){Dh(this,0,b)},11:function(a,b){this.va[0].Ja[b&3].mode=b},12:function(){this.va[0].xb=0},13:function(){for(var a=
this.va[0],b=0;b<a.Ja.length;b++)th(a,b)},32:function(a,b){Jh(this,0,b)},33:function(a,b){Lh(this,0,b)},64:function(a,b){Uh(this,0,b)},65:function(a,b){Uh(this,1,b)},66:function(a,b){Uh(this,2,b)},67:P.prototype.qn,129:function(a,b){this.va[0].Ja[2].zc=b},130:function(a,b){this.va[0].Ja[3].zc=b},131:function(a,b){this.va[0].Ja[1].zc=b},135:function(a,b){this.va[0].Ja[0].zc=b}},hh={96:P.prototype.jn,97:P.prototype.kn,98:P.prototype.ln,99:P.prototype.mn,160:P.prototype.hn},jh={96:P.prototype.Dm,97:P.prototype.Em,
100:P.prototype.Cm,112:P.prototype.Rm,113:P.prototype.Sm,128:P.prototype.fn,132:function(a,b){this.Hb[0]=b},133:function(a,b){this.Hb[1]=b},134:function(a,b){this.Hb[2]=b},136:function(a,b){this.Hb[3]=b},137:function(a,b){this.va[1].Ja[2].zc=b},138:function(a,b){this.va[1].Ja[3].zc=b},139:function(a,b){this.va[1].Ja[1].zc=b},140:function(a,b){this.Hb[4]=b},141:function(a,b){this.Hb[5]=b},142:function(a,b){this.Hb[6]=b},143:function(a,b){this.va[1].Ja[0].zc=b},160:function(a,b){Jh(this,1,b)},161:function(a,
this.va[0],b=0;b<a.Ja.length;b++)th(a,b)},32:function(a,b){Jh(this,0,b)},33:function(a,b){Lh(this,0,b)},64:function(a,b){Uh(this,0,b)},65:function(a,b){Uh(this,1,b)},66:function(a,b){Uh(this,2,b)},67:P.prototype.pn,129:function(a,b){this.va[0].Ja[2].zc=b},130:function(a,b){this.va[0].Ja[3].zc=b},131:function(a,b){this.va[0].Ja[1].zc=b},135:function(a,b){this.va[0].Ja[0].zc=b}},hh={96:P.prototype.hn,97:P.prototype.jn,98:P.prototype.kn,99:P.prototype.ln,160:P.prototype.gn},jh={96:P.prototype.Cm,97:P.prototype.Dm,
100:P.prototype.Bm,112:P.prototype.Qm,113:P.prototype.Rm,128:P.prototype.en,132:function(a,b){this.Hb[0]=b},133:function(a,b){this.Hb[1]=b},134:function(a,b){this.Hb[2]=b},136:function(a,b){this.Hb[3]=b},137:function(a,b){this.va[1].Ja[2].zc=b},138:function(a,b){this.va[1].Ja[3].zc=b},139:function(a,b){this.va[1].Ja[1].zc=b},140:function(a,b){this.Hb[4]=b},141:function(a,b){this.Hb[5]=b},142:function(a,b){this.Hb[6]=b},143:function(a,b){this.va[1].Ja[0].zc=b},160:function(a,b){Jh(this,1,b)},161:function(a,
b){Lh(this,1,b)},192:function(a,b){yh(this,1,0,b)},194:function(a,b){Ah(this,1,0,b)},196:function(a,b){yh(this,1,1,b)},198:function(a,b){Ah(this,1,1,b)},200:function(a,b){yh(this,1,2,b)},202:function(a,b){Ah(this,1,2,b)},204:function(a,b){yh(this,1,3,b)},206:function(a,b){Ah(this,1,3,b)},208:function(a,b){this.va[1].Vg=b},210:function(a,b){Ch(this,1,b)},212:function(a,b){Dh(this,1,b)},214:function(a,b){this.va[1].Ja[b&3].mode=b},216:function(){this.va[1].xb=0},218:function(){for(var a=this.va[1],
b=0;b<a.Ja.length;b++)th(a,b)}};u(function(){for(var a=B(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new P(d);A(d,c);kh(d)}});function bi(a){v.call(this,"ROM",a,bi);this.hb=null;this.Wi=a.addr;this.Lg=a.size;this.Zk=a.alias;this.Cf=a.file;this.uj=a.notify;if(this.Cf){a=this.Cf;var b=fa(this.Cf);"json"!=b&&"hex"!=b&&(a=la()+"/api/v1/dump?file="+this.Cf+"&format=bytes&decimal=true");p(a,!0,null,this,bi.prototype.xm)}}y(v,bi);
bi.prototype.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;ci(this)};bi.prototype.Sb=function(){this.Tg&&(this.Ha&&this.Ha.Wn(this.Wi,this.Lg,this.Tg),delete this.Tg);return!0};bi.prototype.Jb=function(){return!0};
bi.prototype.xm=function(a,b,c){if(c)this.xa("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.hb=e;else if(f)for(this.hb=Array(4*f.length),c=b=0;b<f.length;b++)this.hb[c++]=f[b]&255,this.hb[c++]=f[b]>>8&255,this.hb[c++]=f[b]>>16&255,this.hb[c++]=f[b]>>24&255;else this.hb=d;this.Tg=d.symbols;if(!this.hb.length){t("Empty ROM: "+a);return}if(1==this.hb.length){t(this.hb[0]);return}}catch(l){this.xa("ROM data error: "+
l.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.hb=Array(a.length),d=0;d<a.length;d++)this.hb[d]=parseInt(a[d],16);ci(this)}};function ci(a){if(!Ea(a))if(!a.Cf)a.Oa();else if(a.hb&&a.ma){if(a.hb.length!=a.Lg)Fa(a,"ROM size (0x"+h(a.hb.length)+") does not match specified size (0x"+h(a.Lg)+")");else if(di(a,a.Wi)&&di(a,a.Zk)){if(a.uj){var b=Ba(a.uj,a.id);b&&("ega"==b.Da&&ei(b,a.hb,[8752,12640],8),b.Oa())}delete a.hb}a.Oa()}}
function di(a,b){if(null==b)return!0;if(La(a.ma,b,a.Lg,!0)){for(var c=0;c<a.hb.length;c++)Ra(a.ma,b+c,a.hb[c]);return!0}return!1}u(function(){for(var a=B(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new bi(d);A(d,c)}});function fi(a){v.call(this,"RAM",a,fi);this.Of=a.addr;this.gd=a.size;this.hl=a.test;this.el=!!this.gd;this.cg=!1}y(v,fi);fi.prototype.gc=function(a,b,c){this.ma=b;this.ja=c;this.Fa=a;this.ga=C(a,"ChipSet");this.Oa()};
b=0;b<a.Ja.length;b++)th(a,b)}};u(function(){for(var a=B(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new P(d);A(d,c);kh(d)}});function bi(a){v.call(this,"ROM",a,bi);this.hb=null;this.Wi=a.addr;this.Lg=a.size;this.Yk=a.alias;this.Cf=a.file;this.uj=a.notify;if(this.Cf){a=this.Cf;var b=fa(this.Cf);"json"!=b&&"hex"!=b&&(a=la()+"/api/v1/dump?file="+this.Cf+"&format=bytes&decimal=true");p(a,!0,null,this,bi.prototype.wm)}}y(v,bi);
bi.prototype.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;ci(this)};bi.prototype.Sb=function(){this.Tg&&(this.Ha&&this.Ha.Tn(this.Wi,this.Lg,this.Tg),delete this.Tg);return!0};bi.prototype.Jb=function(){return!0};
bi.prototype.wm=function(a,b,c){if(c)this.xa("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.hb=e;else if(f)for(this.hb=Array(4*f.length),c=b=0;b<f.length;b++)this.hb[c++]=f[b]&255,this.hb[c++]=f[b]>>8&255,this.hb[c++]=f[b]>>16&255,this.hb[c++]=f[b]>>24&255;else this.hb=d;this.Tg=d.symbols;if(!this.hb.length){t("Empty ROM: "+a);return}if(1==this.hb.length){t(this.hb[0]);return}}catch(l){this.xa("ROM data error: "+
l.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.hb=Array(a.length),d=0;d<a.length;d++)this.hb[d]=parseInt(a[d],16);ci(this)}};function ci(a){if(!Ea(a))if(!a.Cf)a.Oa();else if(a.hb&&a.ma){if(a.hb.length!=a.Lg)Fa(a,"ROM size (0x"+h(a.hb.length)+") does not match specified size (0x"+h(a.Lg)+")");else if(di(a,a.Wi)&&di(a,a.Yk)){if(a.uj){var b=Ba(a.uj,a.id);b&&("ega"==b.Da&&ei(b,a.hb,[8752,12640],8),b.Oa())}delete a.hb}a.Oa()}}
function di(a,b){if(null==b)return!0;if(La(a.ma,b,a.Lg,!0)){for(var c=0;c<a.hb.length;c++)Ra(a.ma,b+c,a.hb[c]);return!0}return!1}u(function(){for(var a=B(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new bi(d);A(d,c)}});function fi(a){v.call(this,"RAM",a,fi);this.Of=a.addr;this.gd=a.size;this.gl=a.test;this.dl=!!this.gd;this.cg=!1}y(v,fi);fi.prototype.gc=function(a,b,c){this.ma=b;this.ja=c;this.Fa=a;this.ga=C(a,"ChipSet");this.Oa()};
fi.prototype.Sb=function(a,b){b||this.reset();return!0};fi.prototype.Jb=function(){return!0};
fi.prototype.reset=function(){if(!this.Of&&!this.el&&this.ga){var a=1024*oh(this.ga);this.gd&&a!=this.gd&&(Na(this.ma,this.Of,this.gd),this.cg=!1);this.gd=a}!this.cg&&this.gd&&La(this.ma,this.Of,this.gd)&&(this.cg=!0,this.status(Math.floor(this.gd/1024)+"Kb"));if(this.cg){if(this.hl||Sa(this.ma,1138,4660),this.ga&&(a=this.ga,a.ka)){var b=1048576>this.Of?21:23,c=a.ka[b]|a.ka[b+1]<<8,c=c+(this.gd>>10);a.ka[b]=c&255;a.ka[b+1]=c>>8;sh(a)}}else t("No RAM allocated")};
u(function(){for(var a=B(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new fi(d);A(d,c)}});function gi(a){v.call(this,"Keyboard",a,gi);this.Sg={};this.pm=250;this.qm=100;this.Oa()}y(v,gi);
fi.prototype.reset=function(){if(!this.Of&&!this.dl&&this.ga){var a=1024*oh(this.ga);this.gd&&a!=this.gd&&(Na(this.ma,this.Of,this.gd),this.cg=!1);this.gd=a}!this.cg&&this.gd&&La(this.ma,this.Of,this.gd)&&(this.cg=!0,this.status(Math.floor(this.gd/1024)+"Kb"));if(this.cg){if(this.gl||Sa(this.ma,1138,4660),this.ga&&(a=this.ga,a.ka)){var b=1048576>this.Of?21:23,c=a.ka[b]|a.ka[b+1]<<8,c=c+(this.gd>>10);a.ka[b]=c&255;a.ka[b+1]=c>>8;sh(a)}}else t("No RAM allocated")};
u(function(){for(var a=B(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new fi(d);A(d,c)}});function gi(a){v.call(this,"Keyboard",a,gi);this.Sg={};this.om=250;this.pm=100;this.Oa()}y(v,gi);
var hi={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,backspace:14,tab:15,q:16,w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,squote:40,bquote:41,lshift:42,bslash:43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,rshift:54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,home:71,"up-arrow":72,"page-up":73,"num-minus":74,
"left-arrow":75,center:76,"right-arrow":77,"num-plus":78,end:79,"down-arrow":80,"page-down":81,ins:82,del:83},ii={tab:9,esc:27,rshift:224,lshift:240,ctrl:241,alt:242,"caps-lock":244,f1:336,f2:337,f3:338,f4:339,f5:340,f6:341,f7:342,f8:343,f9:344,f10:345,"left-arrow":261,"up-arrow":262,"right-arrow":263,"down-arrow":264,"ctrl-c":3,"ctrl-break":254,"ctrl-alt-del":255},S=[];S[32]=57;S[49]=2;S[33]=61442;S[50]=3;S[64]=61443;S[51]=4;S[35]=61444;S[52]=5;S[36]=61445;S[53]=6;S[37]=61446;S[54]=7;S[94]=61447;
S[55]=8;S[38]=61448;S[56]=9;S[42]=61449;S[57]=10;S[40]=61450;S[48]=11;S[41]=61451;S[45]=12;S[95]=61452;S[61]=13;S[43]=61453;S[113]=16;S[81]=61456;S[119]=17;S[87]=61457;S[101]=18;S[69]=61458;S[114]=19;S[82]=61459;S[116]=20;S[84]=61460;S[121]=21;S[89]=61461;S[117]=22;S[85]=61462;S[105]=23;S[73]=61463;S[111]=24;S[79]=61464;S[112]=25;S[80]=61465;S[91]=26;S[123]=61466;S[93]=27;S[125]=61467;S[97]=30;S[65]=61470;S[115]=31;S[83]=61471;S[100]=32;S[68]=61472;S[102]=33;S[70]=61473;S[103]=34;S[71]=61474;
S[104]=35;S[72]=61475;S[106]=36;S[74]=61476;S[107]=37;S[75]=61477;S[108]=38;S[76]=61478;S[59]=39;S[58]=61479;S[39]=40;S[34]=61480;S[96]=41;S[126]=61481;S[92]=43;S[124]=61483;S[122]=44;S[90]=61484;S[120]=45;S[88]=61485;S[99]=46;S[67]=61486;S[118]=47;S[86]=61487;S[98]=48;S[66]=61488;S[110]=49;S[78]=61489;S[109]=50;S[77]=61490;S[44]=51;S[60]=61491;S[46]=52;S[62]=61492;S[47]=53;S[63]=61493;S[8]=14;S[9]=15;S[13]=28;S[27]=1;S[240]=42;S[224]=54;S[241]=29;S[242]=56;S[244]=58;S[336]=59;S[337]=60;S[338]=61;
S[339]=62;S[340]=63;S[341]=64;S[342]=65;S[343]=66;S[344]=67;S[345]=68;S[261]=75;S[262]=72;S[263]=77;S[264]=80;S[254]=61766;S[255]=15921491;g=gi.prototype;
g.tb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.oa[a])switch(c){case "kbd":return this.oa[a]=d,d.onkeydown=function(a){return ji(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.wa&32?e.wa&=-33:b=e.wa&12?!1:!ki(e,a);return b},d.onkeyup=function(a){return ji(e,a,!1)},!0;default:if(void 0!==ii[c]&&"button"==b)return this.oa[a]=d,d.onclick=function(a,b,c){return function(){a.ja&&a.ja.Ce();return!ki(a,c)}}(this,c,ii[c]),!0;if(void 0!==hi[c])return this.oa[a]=
d,b=function(a,b,c){return function(){li(a,c)}}(this,c,hi[c]),c=function(a,b,c){return function(){li(a,c)}}(this,c,hi[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;this.Fa=a;this.ga=C(a,"ChipSet")};g.Oa=function(){this.fl=(this.ol=oa("iOS"))||oa("Android");return v.prototype.Oa.call(this)};function Yh(a){a.fc=[170];a.ga&&R(a.ga,1,4)}
d,b=function(a,b,c){return function(){li(a,c)}}(this,c,hi[c]),c=function(a,b,c){return function(){li(a,c)}}(this,c,hi[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;this.Fa=a;this.ga=C(a,"ChipSet")};g.Oa=function(){this.el=(this.nl=oa("iOS"))||oa("Android");return v.prototype.Oa.call(this)};function Yh(a){a.fc=[170];a.ga&&R(a.ga,1,4)}
function Wh(a,b){var c=0;a.fc.length&&(c=a.fc[0],b&&Zh(a));return c}function Zh(a,b){0<a.fc.length&&(b?a.fc=[]:(a.fc.shift(),0<a.fc.length&&a.ga&&R(a.ga,1)))}g.Sb=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};g.Jb=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.wd();this.wa=0;this.fc=[];if(this.Pc)for(var a in this.Pc)null!==a.match(/^[0-9]+$/)||this.Pc[a]&&clearTimeout(this.Pc[a]);this.Pc=[];this.Hk=this.ee=0};
g.save=function(){var a=new H(this);a.set(0,this.Li());return a.data()};g.restore=function(a){return this.wd(a[0])};g.wd=function(a){var b=0;void 0===a&&(a=[]);this.nh=a[b++];this.ph=a[b];return!0};g.Li=function(){var a=0,b=[];b[a++]=this.nh;b[a]=this.ph;return b};
function li(a,b){var c=b&127,d=c==b;if(a.fc)if(20>a.fc.length){if(!(!d&&!a.Sg[c]||d&&a.Sg[c])){a.Sg[c]=d;a.fc.push(b);1==a.fc.length&&a.ga&&R(a.ga,1);for(var e in hi)if(hi[e]==c){(c=a.oa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.fc.length&&a.fc.push(255)}function mi(a,b){var c=b?a.qm:a.pm;a.ja&&a.ja.Lc&&(c/=a.ja.Lc);return c}function ni(a,b){!a.ee||void 0!==b&&b==a.ee||(clearTimeout(a.Pc[a.ee]),oi(a,a.ee,!1))}
function ji(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Hk=f);240==f+224?(a.wa&=-2,c&&(a.wa|=1),f+=224,e=!1):241==f+224?(a.wa&=-5,c&&(a.wa|=4),f+=224,e=!1):242==f+224?(a.wa&=-9,c&&(a.wa|=8),f+=224,e=!1):244==f+224?(a.wa&=-17,c&&(a.wa|=16),f+=224,d=ki(a,f)):91==f?(a.wa&=-33,c&&(a.wa|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.wa&12)&&(f=254),d=c?!ki(a,f):!1):void 0!==S[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.wa&=-33,a.fl||f!=a.Hk||ni(a));void 0===d&&(d=!oi(a,f,c));return d}
function li(a,b){var c=b&127,d=c==b;if(a.fc)if(20>a.fc.length){if(!(!d&&!a.Sg[c]||d&&a.Sg[c])){a.Sg[c]=d;a.fc.push(b);1==a.fc.length&&a.ga&&R(a.ga,1);for(var e in hi)if(hi[e]==c){(c=a.oa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.fc.length&&a.fc.push(255)}function mi(a,b){var c=b?a.pm:a.om;a.ja&&a.ja.Lc&&(c/=a.ja.Lc);return c}function ni(a,b){!a.ee||void 0!==b&&b==a.ee||(clearTimeout(a.Pc[a.ee]),oi(a,a.ee,!1))}
function ji(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Hk=f);240==f+224?(a.wa&=-2,c&&(a.wa|=1),f+=224,e=!1):241==f+224?(a.wa&=-5,c&&(a.wa|=4),f+=224,e=!1):242==f+224?(a.wa&=-9,c&&(a.wa|=8),f+=224,e=!1):244==f+224?(a.wa&=-17,c&&(a.wa|=16),f+=224,d=ki(a,f)):91==f?(a.wa&=-33,c&&(a.wa|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.wa&12)&&(f=254),d=c?!ki(a,f):!1):void 0!==S[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.wa&=-33,a.el||f!=a.Hk||ni(a));void 0===d&&(d=!oi(a,f,c));return d}
function ki(a,b,c){var d=!1;ni(a,b);oi(a,b,!0)&&(c?oi(a,b,!1):(c=!1,a.Pc[b]&&(clearTimeout(a.Pc[b]),c=!0),c=mi(a,c),a.Pc[a.ee=b]=setTimeout(function(a){return function(){oi(a,b,!1)}}(a),c)),d=!0);return d}
function oi(a,b,c){var d=!1;c||(a.Pc[b]=null,a.ee==b&&(a.ee=0));var e=S[b];void 0===e&&1<=b&&26>=b&&(e=S[b+64]&255|61696);if(void 0!==e){14==e&&12==(a.wa&12)&&(e=83);b=[];for(b.push(e&255|(c?0:128));e>>=8;){var d=0,f=e&255;240==f?a.wa&17||(d=42):224==f?a.wa&18||(d=54):241==f?a.wa&4||(d=29):242==f&&(a.wa&8||(d=56));d&&(c?b.unshift(d):b.push(d|128))}for(c=0;c<b.length;c++)li(a,b[c]);d=!0}return d}
u(function(){for(var a=B(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new gi(d);A(d,c)}});
function T(a,b,c,d){v.call(this,"Video",a,T);this.Da=a.model;this.Bc=0;"ega"==this.Da&&(this.Ok=a.switches,this.Bc=a.memory||0);this.Nc=a.mode;if(void 0===this.Nc||void 0===U[this.Nc])this.Nc=pi;this.vg=a.charCols;this.Lh=a.charRows;if(void 0===this.vg||void 0===this.Lh)this.vg=U[this.Nc][0],this.Lh=U[this.Nc][1];this.Uc=a.screenWidth;this.td=a.screenHeight;this.gl=a.scale;this.dl=12<=Math.round(this.Uc/this.vg);this.il=a.touchScreen;this.qb=b;this.Cc=c;this.Tk=d;this.Ya=this.cc=0;this.jd=[];this.Qc=
Array(16);this.qh=!1;var e=this;this.qb&&(this.qb.onfocus=function(){e.qh=!0},this.qb.onblur=function(){e.qh=!1});if(a=a.fontROM)"json"!=fa(a)&&(a=la()+"/api/v1/dump?file="+a+"&format=bytes"),p(a,!0,null,this,this.ym)}y(v,T);
function T(a,b,c,d){v.call(this,"Video",a,T);this.Da=a.model;this.Bc=0;"ega"==this.Da&&(this.Ok=a.switches,this.Bc=a.memory||0);this.Nc=a.mode;if(void 0===this.Nc||void 0===U[this.Nc])this.Nc=pi;this.vg=a.charCols;this.Lh=a.charRows;if(void 0===this.vg||void 0===this.Lh)this.vg=U[this.Nc][0],this.Lh=U[this.Nc][1];this.Uc=a.screenWidth;this.td=a.screenHeight;this.fl=a.scale;this.cl=12<=Math.round(this.Uc/this.vg);this.hl=a.touchScreen;this.qb=b;this.Cc=c;this.Tk=d;this.Ya=this.cc=0;this.jd=[];this.Qc=
Array(16);this.qh=!1;var e=this;this.qb&&(this.qb.onfocus=function(){e.qh=!0},this.qb.onblur=function(){e.qh=!1});if(a=a.fontROM)"json"!=fa(a)&&(a=la()+"/api/v1/dump?file="+a+"&format=bytes"),p(a,!0,null,this,this.xm)}y(v,T);
var qi={2:{Nh:15700,Mh:208,Ci:85,Di:96},3:{Nh:18432,Mh:364,Ci:85,Di:96},4:{Nh:21850,Mh:364,Ci:85,Di:96}},ri={6:[1,3,!0],7:[2,3,!0],8:[5,3,!0],9:[4,3,!0],10:[3,1,!0],11:[3,2,!0],0:[1,3,!1],1:[2,3,!1],2:[5,3,!1],3:[4,3,!1],4:[3,1,!1],5:[3,2,!1]},pi=7,U=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];U[pi]=[80,25,1,0,1];U[13]=[320,200,16];U[14]=[640,200,16];U[15]=[640,350,16];U[16]=[640,350,16];U[0]=U[1];U[2]=U[3];U[5]=U[4];var si=Array(5);si[0]=[0,0,0,255];si[1]=[127,192,127,255];
si[2]=[127,192,127,255];si[3]=[127,255,127,255];si[4]=[127,255,127,255];var ti=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],W=Array(16);W[0]=[0,0,0,255];W[1]=[0,0,170,255];W[2]=[0,170,0,255];W[3]=[0,170,170,255];W[4]=[170,0,0,255];W[5]=[170,0,170,255];W[6]=[170,85,0,255];W[7]=[170,170,170,255];W[8]=[85,85,85,255];W[9]=[85,85,255,255];W[10]=[85,255,85,255];W[11]=[85,255,255,255];W[12]=[255,85,85,255];W[13]=[255,85,255,255];W[14]=[255,255,85,255];W[15]=[255,255,255,255];
var ui=[2,4,6],vi=[3,5,7],wi=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],xi=[0,255,65280,65535,16711680,16711935,16776960,16777215,4278190080,4278190335,4278255360,4278255615,4294901760,4294902015,4294967040,4294967295],X=[0];X[128]=1;X[32768]=2;X[32896]=3;X[8388608]=4;X[8388736]=5;X[8421376]=6;X[8421504]=7;X[2147483648]=8;X[2147483776]=9;X[2147516416]=10;X[2147516544]=11;X[2155872256]=12;X[2155872384]=13;X[2155905024]=14;X[2155905152]=15;
function yi(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=zi[b],f=a.zd||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(Ai)];this.kg=b;this.Ya=e[2];this.cc=e[3];this.Bc=d||e[4];65536<=this.Bc&&720896<=this.Ya&&(this.cc=Math.min(this.Bc>>2,32768));this.Yb=c[0];this.hc=c[1];this.Ve=c[2];this.Ff=c[3];this.sc=c[4]&255;this.jg=c[4]>>8&255;this.Vb=c[5];this.Fh=Ai;if(5==b){this.Fh=Bi;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.Bc,Array(this.Bc>>2),771,0,4294967295,
0,4294967295,0,4294967295,0]);this.ud=b[0];this.Zd=b[1];this.Id=b[2];this.Mi=b[3];this.pg=b[4];this.vh=b[5];this.ve=b[6];this.Mf=b[7];this.yh=b[8];this.zh=b[9];this.ue=b[10];this.je=b[11];this.kb=b[12];d=this.Bc>>2;if((this.Ld=b[14])&&this.Ld.length<d){for(var e=this.Ld,l=0,k=Array(d),m=0;m<e.length-1;){for(var n=e[m++],q=e[m++];n--;)k[l]=q,l+=2;l==d&&(l=1)}this.Ld=k}this.Kg(b[15]);this.xi=b[16];this.Ta=b[17];this.Mc=b[18];this.Wa=b[19];this.yg=b[20];this.Bd=b[21];this.be=b[22];this.Hh=b[23];this.Ih=
b[24]}f=qi[f]||qi[3];this.Jh=a.ja.cd/f.Nh|0;this.sm=this.Jh*f.Ci/100|0;this.Cj=this.Jh*f.Mh;this.um=this.Cj*f.Di/100|0;this.Oh=null==c[7]?0:c[7]}}var Ai=18,Bi=25;function Ci(a){return this.vc(a)|this.vc(a+1)<<8}function Di(a,b){this.xc(a,b&255);this.xc(a+1,b>>8&255)}var Y=[,,function(a){a+=this.offset;return(this.ea.kb=this.la[a])>>this.ea.xi&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.la[b]>>8:this.la[b])&255}];
b[24]}f=qi[f]||qi[3];this.Jh=a.ja.cd/f.Nh|0;this.rm=this.Jh*f.Ci/100|0;this.Cj=this.Jh*f.Mh;this.tm=this.Cj*f.Di/100|0;this.Oh=null==c[7]?0:c[7]}}var Ai=18,Bi=25;function Ci(a){return this.vc(a)|this.vc(a+1)<<8}function Di(a,b){this.xc(a,b&255);this.xc(a+1,b>>8&255)}var Y=[,,function(a){a+=this.offset;return(this.ea.kb=this.la[a])>>this.ea.xi&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.la[b]>>8:this.la[b])&255}];
Y[16]=function(a){a+=this.offset;a=this.la[a];for(var b=this.ea.Hh&this.ea.Ih,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};Y[512]=function(a,b){var c=a+this.offset,d;d=this.la[c]&~this.ea.Ta|(b|b<<8|b<<16|b<<24)&this.ea.Ta;d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)};
Y[1024]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Bd|this.ea.be;d=d&this.ea.Ta|this.la[c]&~this.ea.Ta;d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)};
Y[1536]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Bd|this.ea.be;d&=this.ea.kb;d=d&this.ea.Ta|this.la[c]&~this.ea.Ta;d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)};
@ -488,16 +488,16 @@ Y[4096]=function(a){a+=this.offset;var b=this.la[a]&~this.ea.Ta|this.ea.kb&this.
Y[40960]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d|this.ea.kb,d=d&this.ea.Ta|this.la[c]&~this.ea.Ta,d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)};Y[57344]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d^this.ea.kb,d=d&this.ea.Ta|this.la[c]&~this.ea.Ta,d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)};
function Ei(a){var b=[];if(void 0!==a.kg){b[0]=a.Yb;b[1]=a.hc;b[2]=a.Ve;b[3]=a.Ff;b[4]=a.sc|a.jg<<8;b[5]=a.Vb;if(5==a.kg){var c=[];c[0]=a.ud;c[1]=a.Zd;c[2]=a.Id;c[3]=a.Mi;c[4]=a.pg;c[5]=a.vh;c[6]=a.ve;c[7]=a.Mf;c[8]=a.yh;c[9]=a.zh;c[10]=a.ue;c[11]=a.je;c[12]=a.kb;c[13]=a.Bc;var d;a:if(d=a.Ld){var e=0,f=[];if(void 0!==d[0])for(var l=0;2>l;l++)for(var k=l;k<d.length;){for(var m=d[k],n=k+2;n<d.length&&d[n]===m;)n+=2;f[e++]=n-k>>1;f[e++]=m;k=n}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=a.Eh;c[16]=
a.xi;c[17]=a.Ta;c[18]=a.Mc;c[19]=a.Wa;c[20]=a.yg;c[21]=a.Bd;c[22]=a.be;c[23]=a.Hh;c[24]=a.Ih;b[6]=c}b[7]=a.Oh}return b}yi.prototype.Kg=function(a){if(null!=a&&a!=this.Eh){var b=a&255,c=Y[b];c||b&1&&(c=Y[1]);var b=a&65280,d=Y[b];d||b&256&&(d=Y[256]);this.Ne||(this.Ne=[null,Ci,null,Di]);this.Ne[0]=c;this.Ne[2]=d;this.Eh=a}};var zi=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];g=T.prototype;
g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;Ua(b,this,Fi);Wa(b,this,Gi);"ega"==this.Da&&(Ua(b,this,Hi),Wa(b,this,Ii));(this.ab=C(a,"Keyboard"))&&this.qb&&this.ab.tb("input",this.Tk?"textarea":"canvas","kbd",this.Tk||this.qb);this.Qf=9;(this.ga=C(a,"ChipSet"))&&this.Ok&&(this.Qf=Zg(this.Ok,this.Qf));this.ab&&this.il&&Ji(this)};g.tb=function(a,b,c,d){var e=this;switch(c){case "refresh":return this.oa[c]=d,d.onclick=function(){bb(e,!0)},!0}return!1};g.Ce=function(){this.qb&&this.qb.focus()};
g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;Ua(b,this,Fi);Wa(b,this,Gi);"ega"==this.Da&&(Ua(b,this,Hi),Wa(b,this,Ii));(this.ab=C(a,"Keyboard"))&&this.qb&&this.ab.tb("input",this.Tk?"textarea":"canvas","kbd",this.Tk||this.qb);this.Qf=9;(this.ga=C(a,"ChipSet"))&&this.Ok&&(this.Qf=Zg(this.Ok,this.Qf));this.ab&&this.hl&&Ji(this)};g.tb=function(a,b,c,d){var e=this;switch(c){case "refresh":return this.oa[c]=d,d.onclick=function(){bb(e,!0)},!0}return!1};g.Ce=function(){this.qb&&this.qb.focus()};
function Ji(a){var b=a.qb;b&&!a.mh&&(b.addEventListener("touchstart",function(b){Ki(a,b)},!1),b.addEventListener("touchmove",function(b){Ki(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.mh=!0)}
function Ki(a,b){a.qh&&b.preventDefault();var c=0,d=0,e=a.qb;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.Uc/a.qb.offsetWidth*(b.targetTouches[0].pageX-c)/(a.Uc/3)|0;d=a.td/a.qb.offsetHeight*(b.targetTouches[0].pageY-d)/(a.td/3)|0;1!=d?d?ki(a.ab,264,!0):ki(a.ab,262,!0):1!=c&&(c?ki(a.ab,263,!0):ki(a.ab,261,!0))}g.Sb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};
g.Jb=function(a){return a&&this.save?this.save():!0};
g.reset=function(){var a=!0,b=0;this.ga&&(b=ph(this.ga));var c=!1;if(this.Da)switch(this.Da){case "ega":var c=!0,d=ri[this.Qf];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.zd!==b&&(this.zd=b,a=!0);this.za=null;this.Ac=this.$g=new yi(this,1);this.Nb=this.Yf=new yi(this,3);c?(this.ia=new yi(this,5,null,this.Bc),Li(this)):this.ia=new yi;Mi(this);this.yd=null;this.Nc=3==b?pi:3;this.Sd=this.tc=-1;this.Rd=0;Ni(this,this.Nc);if(this.za.Ya&&a){a=this.za.Ya+this.ah;for(b=this.za.Ya;b<a;b+=
2)d=Math.floor(65536*Math.random()),4==this.zd?(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),Sa(this.ma,b,c|d<<8);bb(this,!0)}};function Li(a){a.ia.pg&1?(a.Ac=a.$g,a.Nb=a.ia):(a.Ac=a.ia,a.Nb=a.Yf)}g.save=function(){var a=new H(this);a.set(0,Ei(this.$g));a.set(1,Ei(this.Yf));a.set(2,[this.zd,this.Nc,this.yd]);a.set(3,Ei(this.ia));return a.data()};
g.restore=function(a){var b=a[2];this.zd=b[0];this.Nc=b[1];this.yd=b[2];this.za=null;this.Ac=this.$g=new yi(this,1,a[0]);this.Nb=this.Yf=new yi(this,3,a[1]);this.ia=new yi(this,5,a[3],this.Bc);this.ia.Yb&&Li(this);Mi(this);if(!Oi(this))return!1;Pi(this);return!0};
g.ym=function(a,b,c){if(c)this.xa("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){t("Empty font ROM image: "+a);return}if(1==d.length){t(d[0]);return}if(8192==d.length)ei(this,d,[0,6144]);else{this.xa("Unrecognized font data length ("+d.length+")");return}}catch(e){this.xa("Font ROM data error: "+e.message);return}this.Oa()}};
g.xm=function(a,b,c){if(c)this.xa("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){t("Empty font ROM image: "+a);return}if(1==d.length){t(d[0]);return}if(8192==d.length)ei(this,d,[0,6144]);else{this.xa("Unrecognized font data length ("+d.length+")");return}}catch(e){this.xa("Font ROM data error: "+e.message);return}this.Oa()}};
function Qi(a,b){if(1==b)return a.Qc[0]=W[0],a.Qc[1]=W[7],a.Qc;if(2==b){var c=a.za.Ve;if(a.za===a.ia){var d=a.ia.Id[0],c=d&7;d&16&&(c|=8);18!=a.ia.Id[1]&&(c|=32)}a.Qc[0]=W[c&15];c=c&32?vi:ui;for(d=0;d<c.length;d++)a.Qc[d+1]=W[c[d]];return a.Qc}if(a.Nb===a.Yf)return W;c=null!=a.ia.Id[15]?a.ia.Id:wi;for(d=0;d<a.Qc.length;d++){var e=c[d]||0;a.Qc[d]=[(e&4?170:0)|(e&32?85:0),(e&2?170:0)|(e&16?85:0),(e&1?170:0)|(e&8?85:0),255]}return a.Qc}function ei(a,b,c,d){a.Nf=b;a.Rg=c;a.Wd=d}
function Mi(a){var b=!1;if(window&&a.Nf){var c=a.Wd?0:2048,d=a.Wd?a.Wd:9;Ri(a,1,a.Rg[0],c,d,14,a.Nf,si,ti)&&(b=!0);c=Qi(a);d=a.Wd?a.Wd:8;Ri(a,3,a.Rg[1],0,d,8,a.Nf,c)&&(b=!0);a.Wd&&Ri(a,5,a.Rg[0],0,a.Wd,14,a.Nf,c)&&(b=!0)}return b}function Ri(a,b,c,d,e,f,l,k,m){var n=!1;Si(a,b,c,d,e,f,l,k,m)&&(n=!0);a.dl&&Si(a,b<<1,c,d,e,f,l,k,m)&&(n=!0);return n}
function Mi(a){var b=!1;if(window&&a.Nf){var c=a.Wd?0:2048,d=a.Wd?a.Wd:9;Ri(a,1,a.Rg[0],c,d,14,a.Nf,si,ti)&&(b=!0);c=Qi(a);d=a.Wd?a.Wd:8;Ri(a,3,a.Rg[1],0,d,8,a.Nf,c)&&(b=!0);a.Wd&&Ri(a,5,a.Rg[0],0,a.Wd,14,a.Nf,c)&&(b=!0)}return b}function Ri(a,b,c,d,e,f,l,k,m){var n=!1;Si(a,b,c,d,e,f,l,k,m)&&(n=!0);a.cl&&Si(a,b<<1,c,d,e,f,l,k,m)&&(n=!0);return n}
function Si(a,b,c,d,e,f,l,k,m){var n=!1,q=b&1?0:1,s=a.jd[b];s||(s={Wb:e<<q,Xb:f<<q,ie:Array(k.length),Ti:k.slice(),Ie:m,Pg:Array(k.length)});for(m=0;m<k.length;m++){var r=k[m],x=s.ie[m]?s.Ti[m]:[];if(r[0]!==x[0]||r[1]!==x[1]||r[2]!==x[2]){var n=s,x=m,L=q,V=c,ba=d,ca=e,eb=f,kc=l,hd=[0,0,0,0],lc=window.document.createElement("canvas");lc.width=n.Wb<<4;lc.height=n.Xb<<4;for(var Mh=lc.getContext("2d"),sa=void 0,qb=void 0,Qa=void 0,mc=8>eb||!ba?eb:8,id=Mh.createImageData(n.Wb,n.Xb),sa=0;256>sa;sa++){for(Qa=
0;Qa<eb;Qa++)for(var Oj=n.Ie&&x&1&&Qa>=eb-2,Pj=kc[Qa<mc?V+sa*mc+Qa:ba+sa*mc+Qa-mc],jd=0;jd<=L;jd++)for(qb=0;qb<ca;qb++){var Nh=qb<<L,Oh=(Qa<<L)+jd,Ph=Oj||Pj&128>>(8<=qb&&176<=sa&&223>=sa?7:qb)?r:hd;Ti(id,Nh,Oh,Ph);L&&Ti(id,Nh+1,Oh,Ph)}Mh.putImageData(id,(sa&15)*n.Wb,(sa>>4)*n.Xb)}n.ie[x]="#"+aa(r[0])+aa(r[1])+aa(r[2]);n.Ti[x]=r;n.Pg[x]=lc;n=!0}}a.jd[b]=s;return n}function Ui(a){0<a.Rd||0<=a.tc?0>a.Sd&&(a.Sd=0):a.Sd=-1}
function Pi(a){if(a.Ab){for(var b=10;15>=b;b++)if(null==a.za.Vb[b])return;var c=a.za.Vb[10],b=c&31,d=a.za.Vb[11]&31,e=a.za.Vb[9]&31,f=!1;a.za===a.ia&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Vi(a);else{c=a.za.Vb[15]+((a.za.Vb[14]&63)<<8);a.tc!=c&&(Vi(a),a.tc=c);d=d-b+1;if(a.Vk!=b||a.hj!=d)a.Vk=b,a.hj=d;a.sd=e+1;Ui(a)}}}
@ -505,31 +505,31 @@ function Vi(a){if(0<=a.tc){if(void 0!==a.Lb){var b=a.Lb[a.tc];if(b&131072){var b
function Xi(a){var b;a=a.za;var c=a.je[5];if(null!=c){b=2;var d=512,e=a.je[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.Mc=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}g.Fd=function(a){var b=this.za;null!=a&&b&&a!=b.Eh&&(b.Kg(a),this.ma.Kg(b.Ya,b.cc,b.Ne))};
function Oi(a,b){var c,d=a.yd,e=a.za;if(e)if(1==e.kg)d=pi;else if(5==e.kg){var d=null,f=e.Bc>>2,l=32768<f?32768:f,k=e.je[6];if(null!=k){switch(k&12){case 0:e.Ya=655360;e.cc=f;d=255;break;case 4:e.Ya=655360;e.cc=f;d=3==a.zd?15:16;break;case 8:e.Ya=720896;e.cc=l;d=pi;break;case 12:e.Ya=753664,e.cc=l,d=3==a.zd?2:3}c=e.Mf[1]&8;f=e.Vb[6]|(e.Vb[7]&1)<<8;255!=d&&(k&1?753664==e.Ya?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=Xi(a)}}else e.hc&8&&(e.hc&2?(d=e.hc&16?6:5,e.hc&4||(d-=1)):(d=e.hc&1?3:1,e.hc&4&&(d-=
1)));else a.yd=null,null==d&&(d=a.Nc);if(!Ni(a,d,b))return!1;a.Fd(c);return!0}
function Ni(a,b,c){if(null!=b&&(b!=a.yd||c)){a.$k=0;a.yd=b;b=a.za||(b==pi?a.Ac:a.Nb);if(b!=a.za||b.Ya!=a.Ya||b.cc!=a.cc){Vi(a);if(a.Ya){if(!Na(a.ma,a.Ya,a.cc))return!1;a.za&&(a.za.Yb=!1)}a.za=b;b.Yb=!0;a.Ya=b.Ya;a.cc=b.cc;if(!La(a.ma,b.Ya,b.cc,!1,b===a.ia?b:null))return!1}a.Ab=0;a.lb=a.vg;a.ac=a.Lh;a.Gh=U[pi][2];b=0;var d=U[a.yd];d&&(a.lb=d[0],a.ac=d[1],a.Gh=d[2],b=d[3]||0,a.Ab=d[4],4==a.zd&&a.za===a.ia&&3==a.Ab&&(7==a.ia.Vb[9]?a.ac=43:a.Ab=5));a.zj=a.lb*a.ac;a.sg=a.zj/a.Gh;a.ah=(a.sg<<1)+b;a.fj=
b?a.ah+b>>1:0;13<=a.yd&&(a.sg<<=1);a.jd.length&&(a.Vc=Math.floor(a.Uc/a.lb),a.Wc=Math.floor(a.td/a.ac),a.Ab?(b=a.jd[a.Ab],d=a.jd[a.Ab<<1],a.gl&&80==a.lb?d&&a.Vc>=3*d.Wb>>2&&(a.Ab<<=1,b=d):(d&&a.Vc>=d.Wb&&(a.Ab<<=1,b=d),b&&(a.Vc=b.Wb,a.Wc=b.Xb)),a.Ye=a.Ze=0,b&&(a.Ye=a.lb*b.Wb,a.Ze=a.ac*b.Xb)):(a.Vc=a.Wc=1,a.Ye=a.lb,a.Ze=a.ac),a.mg=a.Cc.createImageData(a.Ye,a.Ze),a.oe=window.document.createElement("canvas"),a.oe.width=a.Ye,a.oe.height=a.Ze,a.pe=a.oe.getContext("2d"),a.Pi=a.Qi=0,a.eh=a.Uc,a.fh=a.td,
function Ni(a,b,c){if(null!=b&&(b!=a.yd||c)){a.Zk=0;a.yd=b;b=a.za||(b==pi?a.Ac:a.Nb);if(b!=a.za||b.Ya!=a.Ya||b.cc!=a.cc){Vi(a);if(a.Ya){if(!Na(a.ma,a.Ya,a.cc))return!1;a.za&&(a.za.Yb=!1)}a.za=b;b.Yb=!0;a.Ya=b.Ya;a.cc=b.cc;if(!La(a.ma,b.Ya,b.cc,!1,b===a.ia?b:null))return!1}a.Ab=0;a.lb=a.vg;a.ac=a.Lh;a.Gh=U[pi][2];b=0;var d=U[a.yd];d&&(a.lb=d[0],a.ac=d[1],a.Gh=d[2],b=d[3]||0,a.Ab=d[4],4==a.zd&&a.za===a.ia&&3==a.Ab&&(7==a.ia.Vb[9]?a.ac=43:a.Ab=5));a.zj=a.lb*a.ac;a.sg=a.zj/a.Gh;a.ah=(a.sg<<1)+b;a.fj=
b?a.ah+b>>1:0;13<=a.yd&&(a.sg<<=1);a.jd.length&&(a.Vc=Math.floor(a.Uc/a.lb),a.Wc=Math.floor(a.td/a.ac),a.Ab?(b=a.jd[a.Ab],d=a.jd[a.Ab<<1],a.fl&&80==a.lb?d&&a.Vc>=3*d.Wb>>2&&(a.Ab<<=1,b=d):(d&&a.Vc>=d.Wb&&(a.Ab<<=1,b=d),b&&(a.Vc=b.Wb,a.Wc=b.Xb)),a.Ye=a.Ze=0,b&&(a.Ye=a.lb*b.Wb,a.Ze=a.ac*b.Xb)):(a.Vc=a.Wc=1,a.Ye=a.lb,a.Ze=a.ac),a.mg=a.Cc.createImageData(a.Ye,a.Ze),a.oe=window.document.createElement("canvas"),a.oe.width=a.Ye,a.oe.height=a.Ze,a.pe=a.oe.getContext("2d"),a.Pi=a.Qi=0,a.eh=a.Uc,a.fh=a.td,
b=a.Uc-a.lb*a.Vc,d=a.td-a.ac*a.Wc,0<b&&(a.Pi=b>>1,a.eh-=b),0<d&&(a.Qi=d>>1,a.fh-=d),b||d)&&(a.Cc.fillStyle=a.qb.style.backgroundColor,a.Cc.fillRect(0,0,a.Uc,a.td));!1!==c?bb(a,!0):Yi(a,!0)}return!0}function Ti(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Yi(a,b){var c;if(b){if(c=a.sg,void 0===a.Lb||a.Lb.length!=c)a.Lb=Array(c)}else{if(void 0===a.Lb)return;c=a.Lb.length}for(var d=0;d<c;d++)a.Lb[d]=-1;a.Rd=-1}
function Wi(a,b,c,d,e){var f=d&255,l=d>>8;d=l&15;var k=a.jd[a.Ab];k.Ie&&(d=k.Ie[d]);var m=l>>4&15;k.Ie&&(m=k.Ie[m]);e?(b*=k.Wb,c*=k.Xb,e.fillStyle=k.ie[m],e.fillRect(b,c,k.Wb,k.Xb)):(b=b*a.Vc+a.Pi,c=c*a.Wc+a.Qi,a.Cc.fillStyle=k.ie[m],a.Cc.fillRect(b,c,a.Vc,a.Wc));l&256&&(m=(f&15)*k.Wb,f=(f>>4)*k.Xb,e?e.drawImage(k.Pg[d],m,f,k.Wb,k.Xb,b,c,k.Wb,k.Xb):a.Cc.drawImage(k.Pg[d],m,f,k.Wb,k.Xb,b,c,a.Vc,a.Wc));l&512&&(f=a.Vk,l=a.hj,e?(a.sd&&a.sd!==k.Xb&&(f=Math.floor(f*k.Xb/a.sd),l=Math.floor(l*k.Xb/a.sd)),
e.fillStyle=k.ie[d],e.fillRect(b,c+f,k.Wb,l)):(a.sd&&a.sd!==a.Wc&&(f=Math.floor(f*a.Wc/a.sd),l=Math.floor(l*a.Wc/a.sd)),a.Cc.fillStyle=k.ie[d],a.Cc.fillRect(b,c+f,a.Vc,l)))}
function bb(a,b){if(a.zb){var c=!1;a.za&&(a.za===a.ia?a.ia.Zd&32&&(c=!0):a.za.hc&8&&(c=!0));if(c||b){if(b)Yi(a,!0);else if(void 0===a.Lb)return;var d=!1;!(b||++a.$k&15)&&0<=a.Sd&&(a.Sd++,d=!0);var e=0,f=a.zj,c=a.za.Ya,l=c+a.za.cc,k=(a.za.Vb[12]<<8)+a.za.Vb[13];a.Ab&&(k<<=1);var c=c+k,m=a.ah;c+m>l&&(m=l-c,0>m&&(m=0));l=c+m;if(k=!b){for(var k=a.ma,n=!0,q=c>>k.Ib;0<m&&q<k.ya.length;)k.ya[q].Qa&&(k.ya[q].Qa=n=!1,k.ya[q].jj=!0),m-=k.nc,q++;k=n}if(k){if(!d)return;if(!a.Rd){if(0>a.tc)return;e=a.tc;f=e+1}}if(a.Ab){if(a.jd[a.Ab]){d=
function bb(a,b){if(a.zb){var c=!1;a.za&&(a.za===a.ia?a.ia.Zd&32&&(c=!0):a.za.hc&8&&(c=!0));if(c||b){if(b)Yi(a,!0);else if(void 0===a.Lb)return;var d=!1;!(b||++a.Zk&15)&&0<=a.Sd&&(a.Sd++,d=!0);var e=0,f=a.zj,c=a.za.Ya,l=c+a.za.cc,k=(a.za.Vb[12]<<8)+a.za.Vb[13];a.Ab&&(k<<=1);var c=c+k,m=a.ah;c+m>l&&(m=l-c,0>m&&(m=0));l=c+m;if(k=!b){for(var k=a.ma,n=!0,q=c>>k.Ib;0<m&&q<k.ya.length;)k.ya[q].Qa&&(k.ya[q].Qa=n=!1,k.ya[q].jj=!0),m-=k.nc,q++;k=n}if(k){if(!d)return;if(!a.Rd){if(0>a.tc)return;e=a.tc;f=e+1}}if(a.Ab){if(a.jd[a.Ab]){d=
0;k=a.Rd=0;m=1048575;a.za.hc&32&&(k=32768,m&=~k,a.Sd&2||(m&=-65537));for(c+=e<<1;c<l&&e<f;)n=Pa(a.ma,c),n|=65536,n&k&&(a.Rd++,n&=m),e==a.tc&&(n|=a.Sd&1?131072:0),q=a.Lb[e],q!=n&&(Wi(a,e%a.lb,Math.floor(e/a.lb),n,a.pe),a.Lb[e]=n,d++),c+=2,e++;d&&a.pe&&a.Cc.drawImage(a.oe,0,0,a.Ye,a.Ze,a.Pi,a.Qi,a.eh,a.fh);Ui(a)}}else if(a.fj){for(var f=l,s,r,e=c,l=a.Rd=0,d=a.Gh,k=16==d?65536:196608,m=16==d?1:2,n=Qi(a,m),x=q=0,L=a.lb,V=0,ba=a.ac,ca=0;e<f;){s=Pa(a.ma,e);r=a.Lb[l];if(r===s)q+=d;else{a.Lb[l]=s;s=s>>8|
(s&255)<<8;r=k;var eb=16;q<L&&(L=q);for(var kc=0;kc<d;kc++){var hd=(s&(r>>=m))>>(eb-=m);Ti(a.mg,q++,x,n[hd])}q>V&&(V=q);x<ba&&(ba=x);x>=ca&&(ca=x+1)}e+=2;l++;if(q>=a.lb){q=0;x+=2;if(x>a.ac)break;x==a.ac&&(x=1,e=c+a.fj)}}L<a.lb&&(a.pe.putImageData(a.mg,0,0,L,ba,V-L,ca-ba),a.Cc.drawImage(a.oe,0,0,a.lb,a.ac,0,0,a.Uc,a.td))}else{f=l;e=a.Rd=0;l=Qi(a);d=a.za.Ld;m=k=0;n=a.lb;q=0;x=a.ac;for(L=0;c<f;){V=c++-a.Ya;V=d[V];ba=a.Lb[e];if(ba===V)k+=8;else{a.Lb[e]=V;k<n&&(n=k);for(ba=0;8>ba;ba++)ca=V&2155905152,
0>ca&&(ca=-ca),ca=X[ca]||0,Ti(a.mg,k++,m,l[ca]),V<<=1;k>q&&(q=k);m<x&&(x=m);m>=L&&(L=m+1)}e++;if(k>=a.lb&&(k=0,++m>a.ac))break}n<a.lb&&(a.pe.putImageData(a.mg,0,0,n,x,q-n,L-x),a.Cc.drawImage(a.oe,0,0,a.lb,a.ac,0,0,a.Uc,a.td))}}}}g.Ul=function(){return this.Ac.sc};g.dn=function(a,b){var c=this.Ac;c.jg=c.sc;c.sc=b&31};g.Tl=function(){return Zi(this.Ac)};g.cn=function(a,b){$i(this,this.Ac,b)};g.Vl=function(){return this.Ac.hc};g.en=function(a,b){this.Ac.hc=b;Oi(this,!1)};
g.Wl=function(){return aj(this,this.Ac)};g.Fk=function(a,b){this.ia.vh=this.ia.vh&-4|b&3};g.vj=function(){var a=this.ia.ud?this.ia.Id[this.ia.Zd&31]:this.ia.Zd;this.ia.ud=!this.ia.ud;return a};g.Ek=function(a,b){var c=this.ia.Zd&32;if(this.ia.ud){var d=this.ia.Zd&31;if(16<=d||!c)this.ia.Id[d]=b;this.ia.ud=!1}else this.ia.Zd=b,this.ia.ud=!0,b&32&&!c&&Mi(this)&&bb(this,!0)};g.fm=function(){var a=3-((this.ia.pg&12)>>2),a=this.ia.Mi&-17|(this.Qf&1<<a)<<4-a;return this.ia.Mi=a};
g.gn=function(a,b){this.ia.pg=b;Li(this)};g.em=function(){return this.ia.ve};g.on=function(a,b){this.ia.ve=b};g.dm=function(){return this.ia.Mf[this.ia.ve]};g.nn=function(a,b){this.ia.Mf[this.ia.ve]=b;2==this.ia.ve&&(this.ia.Ta=xi[b&15])};g.Ml=function(){return this.ia.yh};g.Ym=function(a,b){this.ia.yh=b};g.Nl=function(){return this.ia.zh};g.Zm=function(a,b){this.ia.zh=b};g.Ll=function(){return this.ia.ue};g.Xm=function(a,b){this.ia.ue=b};g.Kl=function(){return this.ia.je[this.ia.ue]};
g.Wm=function(a,b){this.ia.je[this.ia.ue]=b;switch(this.ia.ue){case 0:this.ia.yg=xi[b&15];this.ia.be=this.ia.yg&~this.ia.Bd;break;case 1:this.ia.Bd=~xi[b&15];this.ia.be=this.ia.yg&~this.ia.Bd;break;case 2:this.ia.Hh=xi[b&15]&2155905152;break;case 3:case 5:this.Fd(Xi(this));break;case 4:this.ia.xi=(b&3)<<3;break;case 6:Oi(this,!1);break;case 7:this.ia.Ih=xi[b&15^15]&2155905152;break;case 8:this.ia.Wa=b|b<<8|b<<16|b<<24}};g.Cl=function(){return this.Nb.sc};
g.Pm=function(a,b){var c=this.Nb;c.jg=c.sc;c.sc=b&31};g.Bl=function(){return Zi(this.Nb)};g.Om=function(a,b){$i(this,this.Nb,b)};g.Dl=function(){return this.Nb.hc};g.Qm=function(a,b){this.Nb.hc=b;Oi(this,!1)};g.Al=function(){return this.Nb.Ve};g.Nm=function(a,b){this.Nb.Ve!==b&&(this.Nb.Ve=b,Yi(this,!1))};g.El=function(){return aj(this,this.Nb)};function Zi(a){var b;a.sc<a.Fh&&(b=a.Vb[a.sc]);return b}function $i(a,b,c){b.sc<b.Fh&&(b.Vb[b.sc]=c,9==b.sc&&8!=b.jg&&Oi(a,!0),Pi(a))}
function aj(a,b){var c=0,d=lb(a.ja),e=d-b.Oh;0>e&&(e=0);e%b.Jh>b.sm&&(c|=1);e%=b.Cj;e>b.um&&(c|=8);b.Oh=d-e;b===a.ia?(c|=b.Ff&48^48,b.ud=!1):c=(b.Ff^=9)|240;return b.Ff=c}
var Fi={948:T.prototype.Ul,949:T.prototype.Tl,952:T.prototype.Vl,954:T.prototype.Wl,980:T.prototype.Cl,981:T.prototype.Bl,984:T.prototype.Dl,985:T.prototype.Al,986:T.prototype.El},Gi={948:T.prototype.dn,949:T.prototype.cn,952:T.prototype.en,980:T.prototype.Pm,981:T.prototype.Om,984:T.prototype.Qm,985:T.prototype.Nm},Hi={960:T.prototype.vj,961:T.prototype.vj,962:T.prototype.fm,964:T.prototype.em,965:T.prototype.dm,970:T.prototype.Nl,972:T.prototype.Ml,974:T.prototype.Ll,975:T.prototype.Kl},Ii={954:T.prototype.Fk,
960:T.prototype.Ek,961:T.prototype.Ek,962:T.prototype.gn,964:T.prototype.on,965:T.prototype.nn,970:T.prototype.Zm,972:T.prototype.Ym,974:T.prototype.Xm,975:T.prototype.Wm,986:T.prototype.Fk};
0>ca&&(ca=-ca),ca=X[ca]||0,Ti(a.mg,k++,m,l[ca]),V<<=1;k>q&&(q=k);m<x&&(x=m);m>=L&&(L=m+1)}e++;if(k>=a.lb&&(k=0,++m>a.ac))break}n<a.lb&&(a.pe.putImageData(a.mg,0,0,n,x,q-n,L-x),a.Cc.drawImage(a.oe,0,0,a.lb,a.ac,0,0,a.Uc,a.td))}}}}g.Tl=function(){return this.Ac.sc};g.cn=function(a,b){var c=this.Ac;c.jg=c.sc;c.sc=b&31};g.Sl=function(){return Zi(this.Ac)};g.bn=function(a,b){$i(this,this.Ac,b)};g.Ul=function(){return this.Ac.hc};g.dn=function(a,b){this.Ac.hc=b;Oi(this,!1)};
g.Vl=function(){return aj(this,this.Ac)};g.Fk=function(a,b){this.ia.vh=this.ia.vh&-4|b&3};g.vj=function(){var a=this.ia.ud?this.ia.Id[this.ia.Zd&31]:this.ia.Zd;this.ia.ud=!this.ia.ud;return a};g.Ek=function(a,b){var c=this.ia.Zd&32;if(this.ia.ud){var d=this.ia.Zd&31;if(16<=d||!c)this.ia.Id[d]=b;this.ia.ud=!1}else this.ia.Zd=b,this.ia.ud=!0,b&32&&!c&&Mi(this)&&bb(this,!0)};g.em=function(){var a=3-((this.ia.pg&12)>>2),a=this.ia.Mi&-17|(this.Qf&1<<a)<<4-a;return this.ia.Mi=a};
g.fn=function(a,b){this.ia.pg=b;Li(this)};g.dm=function(){return this.ia.ve};g.nn=function(a,b){this.ia.ve=b};g.cm=function(){return this.ia.Mf[this.ia.ve]};g.mn=function(a,b){this.ia.Mf[this.ia.ve]=b;2==this.ia.ve&&(this.ia.Ta=xi[b&15])};g.Ll=function(){return this.ia.yh};g.Xm=function(a,b){this.ia.yh=b};g.Ml=function(){return this.ia.zh};g.Ym=function(a,b){this.ia.zh=b};g.Kl=function(){return this.ia.ue};g.Wm=function(a,b){this.ia.ue=b};g.Jl=function(){return this.ia.je[this.ia.ue]};
g.Vm=function(a,b){this.ia.je[this.ia.ue]=b;switch(this.ia.ue){case 0:this.ia.yg=xi[b&15];this.ia.be=this.ia.yg&~this.ia.Bd;break;case 1:this.ia.Bd=~xi[b&15];this.ia.be=this.ia.yg&~this.ia.Bd;break;case 2:this.ia.Hh=xi[b&15]&2155905152;break;case 3:case 5:this.Fd(Xi(this));break;case 4:this.ia.xi=(b&3)<<3;break;case 6:Oi(this,!1);break;case 7:this.ia.Ih=xi[b&15^15]&2155905152;break;case 8:this.ia.Wa=b|b<<8|b<<16|b<<24}};g.Bl=function(){return this.Nb.sc};
g.Om=function(a,b){var c=this.Nb;c.jg=c.sc;c.sc=b&31};g.Al=function(){return Zi(this.Nb)};g.Nm=function(a,b){$i(this,this.Nb,b)};g.Cl=function(){return this.Nb.hc};g.Pm=function(a,b){this.Nb.hc=b;Oi(this,!1)};g.zl=function(){return this.Nb.Ve};g.Mm=function(a,b){this.Nb.Ve!==b&&(this.Nb.Ve=b,Yi(this,!1))};g.Dl=function(){return aj(this,this.Nb)};function Zi(a){var b;a.sc<a.Fh&&(b=a.Vb[a.sc]);return b}function $i(a,b,c){b.sc<b.Fh&&(b.Vb[b.sc]=c,9==b.sc&&8!=b.jg&&Oi(a,!0),Pi(a))}
function aj(a,b){var c=0,d=lb(a.ja),e=d-b.Oh;0>e&&(e=0);e%b.Jh>b.rm&&(c|=1);e%=b.Cj;e>b.tm&&(c|=8);b.Oh=d-e;b===a.ia?(c|=b.Ff&48^48,b.ud=!1):c=(b.Ff^=9)|240;return b.Ff=c}
var Fi={948:T.prototype.Tl,949:T.prototype.Sl,952:T.prototype.Ul,954:T.prototype.Vl,980:T.prototype.Bl,981:T.prototype.Al,984:T.prototype.Cl,985:T.prototype.zl,986:T.prototype.Dl},Gi={948:T.prototype.cn,949:T.prototype.bn,952:T.prototype.dn,980:T.prototype.Om,981:T.prototype.Nm,984:T.prototype.Pm,985:T.prototype.Mm},Hi={960:T.prototype.vj,961:T.prototype.vj,962:T.prototype.em,964:T.prototype.dm,965:T.prototype.cm,970:T.prototype.Ml,972:T.prototype.Ll,974:T.prototype.Kl,975:T.prototype.Jl},Ii={954:T.prototype.Fk,
960:T.prototype.Ek,961:T.prototype.Ek,962:T.prototype.fn,964:T.prototype.nn,965:T.prototype.mn,970:T.prototype.Ym,972:T.prototype.Xm,974:T.prototype.Wm,975:T.prototype.Vm,986:T.prototype.Fk};
u(function(){for(var a=B(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=z(c),e=window.document.createElement("canvas");if(void 0===e){c.innerHTML="<br/>Missing &lt;canvas&gt; support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor;
e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",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.appendChild(e);var f=e.getContext("2d"),d=new T(d,e,f);A(d,c)}});
function Z(a){this.sj=a.adapter;switch(this.sj){case 1:this.Ei=1016;this.pf=4;break;case 2:this.Ei=760;this.pf=3;break;default:t("Unrecognized serial adapter #"+this.sj);return}this.qd=null;v.call(this,"SerialPort",a,Z);var b=a.binding,c;a=bj;b&&(void 0===c&&(c="Panel"),(c=Ca(c,this.id))&&(b=c.oa[b])&&this.tb(null,null,a,b))}y(v,Z);var bj="buffer";g=Z.prototype;g.Xi=function(a,b){return a==this.Bh?(this.wj=b,this):null};
g.tb=function(a,b,c,d){var e=this;switch(c){case bj:return this.oa[c]=this.qd=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),cj(e,[b]))},d.onkeypress=function(a){a=a||window.event;cj(e,[a.which||a.keyCode])},!0}return!1};g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;this.ga=C(a,"ChipSet");Ua(b,this,dj,this.Ei);Wa(b,this,ej,this.Ei);this.Oa()};
g.Sb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};g.Jb=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.wd()};g.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.Xg;c[b++]=this.aj;c[b++]=this.he;c[b++]=this.Rf;c[b++]=this.ld;c[b++]=this.Od;c[b++]=this.Ic;c[b++]=this.mc;c[b++]=this.Zi;c[b]=this.Je;a.set(0,c);return a.data()};g.restore=function(a){return this.wd(a[0])};
g.wd=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.Xg=a[b++];this.aj=a[b++];this.he=a[b++];this.Rf=a[b++];this.ld=a[b++];this.Od=a[b++];this.Ic=a[b++];this.mc=a[b++];this.Zi=a[b++];this.Je=a[b];return!0};function cj(a,b){a.Je=a.Je.concat(b);fj(a)}function fj(a){0<a.Je.length&&!(a.mc&1)&&(a.Xg=a.Je.shift(),a.mc|=1);var b=-1;a.mc&1&&a.Rf&1&&(b=4);0<=b?(a.ld&=-8,a.ld|=b,a.ga&&a.pf&&R(a.ga,a.pf)):(a.ld|=1,a.ga&&a.pf&&Qh(a.ga,a.pf))}
g.cm=function(){var a=this.Od&128?this.he&255:this.Xg;this.mc&=-2;fj(this);return a};g.Ol=function(){return this.Od&128?this.he>>8:this.Rf};g.Pl=function(){return this.ld};g.Ql=function(){return this.Od};g.Sl=function(){return this.Ic};g.Rl=function(){return this.mc};g.Yl=function(){return this.Zi};
g.pn=function(a,b){if(this.Od&128)this.he=this.he&-256|b;else{this.aj=b;this.mc&=-97;var c;this.qd?(13!=b&&(8==b?this.qd.value=this.qd.value.slice(0,-1):(this.qd.value+=String.fromCharCode(b),this.qd.scrollTop=this.qd.scrollHeight)),c=!0):c=!1;c&&(this.mc|=96)}};g.$m=function(a,b){this.Od&128?this.he=this.he&255|b<<8:this.Rf=b};g.an=function(a,b){this.Od=b};
g.bn=function(a,b){var c=this.Ic;this.Ic=b;if(this.wj&&(c^b)&3){var c=this.wj,d=this.Ic,e=3==(d&3);if(e){if(!c.Yb){var f=!1;c.Ic&2||(c.reset(),f=!0);c.Ic&1||(f=!0);f&&cj(c.We,[77]);gj(c,c.qb);c.Yb=e}}else c.Yb&&(hj(c.qb),c.Yb=e);c.Ic=d}};var dj={0:Z.prototype.cm,1:Z.prototype.Ol,2:Z.prototype.Pl,3:Z.prototype.Ql,4:Z.prototype.Sl,5:Z.prototype.Rl,6:Z.prototype.Yl},ej={0:Z.prototype.pn,1:Z.prototype.$m,3:Z.prototype.an,4:Z.prototype.bn};
g.bm=function(){var a=this.Od&128?this.he&255:this.Xg;this.mc&=-2;fj(this);return a};g.Nl=function(){return this.Od&128?this.he>>8:this.Rf};g.Ol=function(){return this.ld};g.Pl=function(){return this.Od};g.Rl=function(){return this.Ic};g.Ql=function(){return this.mc};g.Xl=function(){return this.Zi};
g.on=function(a,b){if(this.Od&128)this.he=this.he&-256|b;else{this.aj=b;this.mc&=-97;var c;this.qd?(13!=b&&(8==b?this.qd.value=this.qd.value.slice(0,-1):(this.qd.value+=String.fromCharCode(b),this.qd.scrollTop=this.qd.scrollHeight)),c=!0):c=!1;c&&(this.mc|=96)}};g.Zm=function(a,b){this.Od&128?this.he=this.he&255|b<<8:this.Rf=b};g.$m=function(a,b){this.Od=b};
g.an=function(a,b){var c=this.Ic;this.Ic=b;if(this.wj&&(c^b)&3){var c=this.wj,d=this.Ic,e=3==(d&3);if(e){if(!c.Yb){var f=!1;c.Ic&2||(c.reset(),f=!0);c.Ic&1||(f=!0);f&&cj(c.We,[77]);gj(c,c.qb);c.Yb=e}}else c.Yb&&(hj(c.qb),c.Yb=e);c.Ic=d}};var dj={0:Z.prototype.bm,1:Z.prototype.Nl,2:Z.prototype.Ol,3:Z.prototype.Pl,4:Z.prototype.Rl,5:Z.prototype.Ql,6:Z.prototype.Xl},ej={0:Z.prototype.on,1:Z.prototype.Zm,3:Z.prototype.$m,4:Z.prototype.an};
u(function(){for(var a=B(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Z(d);A(d,c)}});function ij(a){v.call(this,"Mouse",a,ij);if(this.Ah=a.serial)this.Hi="SerialPort";this.Yb=!1;this.Oa()}y(v,ij);g=ij.prototype;g.gc=function(a,b,c,d){this.Fa=a;this.ma=b;this.ja=c;this.Ha=d};
g.Sb=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.Hi&&!this.We){for(var c=null;(c=C(this.Fa,this.Hi,c))&&(!c.Xi||!(this.We=c.Xi(this.Ah,this))););if(this.We){if(c=C(this.Fa,"Video"))this.qb=c.qb}else t(this.id+": "+this.Hi+" "+this.Ah+" unavailable")}this.Yb?gj(this,this.qb):hj(this.qb)}return!0};g.Jb=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.wd()};g.save=function(){var a=new H(this);a.set(0,this.Li());return a.data()};
g.restore=function(a){return this.wd(a[0])};g.wd=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.Yb=a[b++];this.Gf=a[b++];this.Hf=a[b++];this.Ee=a[b++];this.Fe=a[b++];this.dg=a[b++];this.eg=a[b++];this.Ic=a[b];return!0};g.Li=function(){var a=0,b=[];b[a++]=this.Yb;b[a++]=this.Gf;b[a++]=this.Hf;b[a++]=this.Ee;b[a++]=this.Fe;b[a++]=this.dg;b[a++]=this.eg;b[a]=this.Ic;return b};
@ -539,21 +539,21 @@ function lj(a,b,c){v.call(this,"Disk",{id:a.lg+".disk"+mj++},lj);this.ea=a;this.
g.Jb=function(a,b){if(this.Yc){var c,d=0;if(this.uh&&!ma("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=nj(this,!1);)if(d=c[0]){this.xa('Unable to save "'+this.fd+'" (error '+d+")");break}b&&this.Yc&&(c="action=close&volume="+this.Ae,c+="&machine="+this.ea.te(),c+="&user="+this.ea.vd(),p(la()+"/api/v1/disk?"+c,!0),this.Yc=!1);d||this.xa(this.fd+" saved")}return!0};
g.create=function(){this.Fb=[];if("preload"!=this.mode){for(var a=Array(this.ic),b=0;b<a.length;b++){for(var c=Array(this.Zb),d=0;d<c.length;d++){for(var e=Array(this.Gc),f=1;f<=e.length;f++)e[f-1]=oj(null,b,d,f,this.yb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.Fb=a}this.bg=0};
g.load=function(a,b,c){var d=b;this.fd=a;this.Ae=b;this.qj=c;0>b.indexOf("/api/v1/dump")&&(a=fa(b),"json"==a?d=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.ic+":"+this.Zb+":"+this.Gc+":"+this.yb,a+="&machine="+this.ea.te(),a+="&user="+this.ea.vd(),d=la()+"/api/v1/disk?"+a,this.sh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):
-1!==b.indexOf("/",b.length-1)&&(c="dir"),d=la()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.re?"":d)+"&format=json"));p(d,!0,null,this,this.vm,b)};
g.vm=function(a,b,c,d){var e=null;this.se=!1;var f=0>c&&this.Fa&&!this.Fa.zb;if(this.sh)c?this.xa('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Yc=!0,e=this);else if(c)this.xa('Unable to load disk "'+this.fd+'" (error '+c+")",f);else try{if(0<ea(a,!0).toLowerCase().indexOf("-readonly"))this.se=!0;else{var l=b.indexOf("\n");0<l&&1024>l&&0<b.substring(0,l).indexOf("write-protected")&&(this.se=!0)}var k;k="<"==b.substr(0,1)?["Missing disk image: "+this.fd]:0>b.indexOf("0x")&&'["'!=
-1!==b.indexOf("/",b.length-1)&&(c="dir"),d=la()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.re?"":d)+"&format=json"));p(d,!0,null,this,this.um,b)};
g.um=function(a,b,c,d){var e=null;this.se=!1;var f=0>c&&this.Fa&&!this.Fa.zb;if(this.sh)c?this.xa('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Yc=!0,e=this);else if(c)this.xa('Unable to load disk "'+this.fd+'" (error '+c+")",f);else try{if(0<ea(a,!0).toLowerCase().indexOf("-readonly"))this.se=!0;else{var l=b.indexOf("\n");0<l&&1024>l&&0<b.substring(0,l).indexOf("write-protected")&&(this.se=!0)}var k;k="<"==b.substr(0,1)?["Missing disk image: "+this.fd]:0>b.indexOf("0x")&&'["'!=
b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(k.length)if(1==k.length)t(k[0]);else{for(b=a=0;b<k.length;b++)for(c=0;c<k[b].length;c++)for(d=0;d<k[b][c].length;d++){var m=k[b][c][d],n=m.length;void 0===n&&(n=m.length=512);var n=n>>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var s=m.data;if(void 0===s){var r=m.bytes;if(void 0!==r&&r.length){for(var f=n<<2,x=r.length;x<f;x++)r[x]=q;this.fill(m,r,0)}else s=[],q=m.pattern=q|q<<8|q<<16|q<<24,m.data=
s;delete m.bytes}oj(m,b,c);for(f=0;f<s.length;f++)a=a+s[f]&4294967295}this.Fb=k;this.bg=a;e=this}else t("Empty disk image: "+this.fd)}catch(L){t("Disk image error: "+L.message)}this.qj&&this.qj.call(this.ea,this.Na,e,this.fd,this.Ae)};function oj(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.ll=b;a.nl=c;a.Fc=a.oc=0;a.Qa=!1;return a}
g.wm=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],l=d[2],k=d[3];a=d[4];b=JSON.parse(b);for(var m=0;k--;){var n=this.seek(e,f,l,!0);if(!n)break;this.fill(n,b,m);m+=n.length;l++}}(d=d[5])&&d(c,a)};function pj(a,b,c,d,e,f){if(a.Yc){var l;l="action=read&volume="+a.Ae;l+="&chs="+a.ic+":"+a.Zb+":"+a.Gc+":"+a.yb;l=l+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ea.te());l+="&user="+a.ea.vd();p(la()+"/api/v1/disk?"+l,!0,null,a,a.wm,[b,c,d,e,!0,f])}else f&&f(-1,!1)}
s;delete m.bytes}oj(m,b,c);for(f=0;f<s.length;f++)a=a+s[f]&4294967295}this.Fb=k;this.bg=a;e=this}else t("Empty disk image: "+this.fd)}catch(L){t("Disk image error: "+L.message)}this.qj&&this.qj.call(this.ea,this.Na,e,this.fd,this.Ae)};function oj(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.kl=b;a.ml=c;a.Fc=a.oc=0;a.Qa=!1;return a}
g.vm=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],l=d[2],k=d[3];a=d[4];b=JSON.parse(b);for(var m=0;k--;){var n=this.seek(e,f,l,!0);if(!n)break;this.fill(n,b,m);m+=n.length;l++}}(d=d[5])&&d(c,a)};function pj(a,b,c,d,e,f){if(a.Yc){var l;l="action=read&volume="+a.Ae;l+="&chs="+a.ic+":"+a.Zb+":"+a.Gc+":"+a.yb;l=l+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ea.te());l+="&user="+a.ea.vd();p(la()+"/api/v1/disk?"+l,!0,null,a,a.vm,[b,c,d,e,!0,f])}else f&&f(-1,!1)}
function qj(a,b,c){b.Qa=!0;var d=a.Jd.indexOf(b);0<=d&&(a.Jd.splice(d,1),a.Jf.splice(d,1));a.Jd.push(b);a.Jf.push(ia());c&&rj(a)}function rj(a){if(a.Jd.length){var b=a.Jf[0]+2E3;a.hd&&a.yj<b&&(clearTimeout(a.hd),a.hd=null);if(!a.hd){var c=ia(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.hd=setTimeout(function(){nj(a,!0)},b);a.yj=c+b}}else a.hd&&(clearTimeout(a.hd),a.hd=null)}
function nj(a,b){b&&(a.hd=null);var c=a.Jd[0];if(c){for(var d=c.ll,e=c.nl,c=c.sector,f=0,l=[],k=c-1;k<a.Fb[d][e].length;k++){var m=a.Fb[d][e][k];if(!m.Qa)break;var n=a.Jd.indexOf(m);a.Jd.splice(n,1);a.Jf.splice(n,1);l=l.concat(sj(m));m.Qa=!1;f++}a.Yc?(k={},a.uh=!0,k.action="write",k.volume=a.Ae,k.chs=a.ic+":"+a.Zb+":"+a.Gc+":"+a.yb,k.addr=d+":"+e+":"+c+":"+f,k.machine=a.ea.te(),k.user=a.ea.vd(),k.data=JSON.stringify(l),d=p(la()+"/api/v1/disk",b,k,a,a.Bm,[d,e,c,f,b])):d=!1;return b||d}return!1}
g.Bm=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.uh=!1;if(0<=a&&a<this.Fb.length&&0<=b&&b<this.Fb[a].length)for(e-=1;0<f--&&0<=e&&e<this.Fb[a][b].length;e++){var l=this.Fb[a][b][e];c?qj(this,l,!1):l.Qa||(l.Fc=l.oc=0)}d&&rj(this)};
function nj(a,b){b&&(a.hd=null);var c=a.Jd[0];if(c){for(var d=c.kl,e=c.ml,c=c.sector,f=0,l=[],k=c-1;k<a.Fb[d][e].length;k++){var m=a.Fb[d][e][k];if(!m.Qa)break;var n=a.Jd.indexOf(m);a.Jd.splice(n,1);a.Jf.splice(n,1);l=l.concat(sj(m));m.Qa=!1;f++}a.Yc?(k={},a.uh=!0,k.action="write",k.volume=a.Ae,k.chs=a.ic+":"+a.Zb+":"+a.Gc+":"+a.yb,k.addr=d+":"+e+":"+c+":"+f,k.machine=a.ea.te(),k.user=a.ea.vd(),k.data=JSON.stringify(l),d=p(la()+"/api/v1/disk",b,k,a,a.Am,[d,e,c,f,b])):d=!1;return b||d}return!1}
g.Am=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.uh=!1;if(0<=a&&a<this.Fb.length&&0<=b&&b<this.Fb[a].length)for(e-=1;0<f--&&0<=e&&e<this.Fb[a][b].length;e++){var l=this.Fb[a][b][e];c?qj(this,l,!1):l.Qa||(l.Fc=l.oc=0)}d&&rj(this)};
g.seek=function(a,b,c,d,e){var f=null,l=this.Na,k=this.Fb[a];if(k){var m=k[b];if(!m&&l.Pe&&b<l.Zb)for(m=k[b]=Array(l.nd),k=0;k<m.length;k++)m[k]=oj(null,a,b,k+1,l.Xa,0);if(m){for(k=0;k<m.length;k++)if(m[k].sector==c){f=m[k];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++k<m.length;)null===m[k].pattern&&d++;pj(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&l.Pe&&9==l.Pa&&(f=m[k]=oj(null,a,b,l.Pa,l.Xa,0))}}e&&e(f,!1);return f};
g.fill=function(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e};function sj(a){var b=a.length,c=Array(b),d=0,b=b>>2,e=a.data;a=a.pattern;for(var f=0;f<b;f++){var l=f<e.length?e[f]:a;c[d++]=l&255;c[d++]=l>>8&255;c[d++]=l>>16&255;c[d++]=l>>24&255}return c}function tj(a,b){var c=-1;if(b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c}
g.write=function(a,b,c){if(this.se)return!1;if(b<a.length){if(c!=tj(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var l=d.length;l<=f;l++)d[l]=e;a.oc?f<a.Fc?(a.oc+=a.Fc-f,a.Fc=f):f>=a.Fc+a.oc&&(a.oc+=f-(a.Fc+a.oc)+1):(a.Fc=f,a.oc=1);d[f]=d[f]&~(255<<b)|c<<b;this.Yc&&qj(this,a,!0)}return!0}return null};
g.save=function(){var a=0,b=[];b[a++]=[this.Ae,this.bg];if(!this.Yc&&!this.se)for(var c=this.Fb,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var l=c[d][e][f];if(l.oc){for(var k=[],m=0,n=l.Fc,q=l.Fc+l.oc;n<q;)k[m++]=l.data[n++];b[a++]=[d,e,f,l.Fc,k]}}return b};
g.restore=function(a){var b=0,c="unsupported restore format";if(this.Fb.length&&a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&e[1]!=this.bg&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.bg+")",b=-1);for(;d<a.length&&0<=b;){var f=0,l=a[d++],k=l[f++],m=l[f++],n=l[f++];if(k>=this.Fb.length||m>=this.Fb[k].length||n>=this.Fb[k][m].length){c="sector "+k+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.se){c="unable to modify write-protected disk";b=-1;break}e=
l[f++];f=l[f++];l=e+f.length;k=this.Fb[k][m][n];for(m=k.data.length;m<e;)k.data[m++]=k.pattern;m=0;k.Fc=e;for(k.oc=f.length;e<l;)k.data[e++]=f[m++];b++}}0>b&&this.xa("unable to restore disk '"+this.fd+": "+c);return b};
function uj(a){v.call(this,"FDC",a,uj);this.dmaRead=this.gh;this.dmaWrite=this.hh;this.dmaFormat=this.al;this.de=null;if(a.autoMount&&(this.de=a.autoMount,"string"==typeof this.de))try{this.de=eval("("+a.autoMount+")")}catch(b){t("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.de=null}this.dc=[];this.Zc();this.Oe()||this.Oa()}y(v,uj);
function uj(a){v.call(this,"FDC",a,uj);this.dmaRead=this.gh;this.dmaWrite=this.hh;this.dmaFormat=this.$k;this.de=null;if(a.autoMount&&(this.de=a.autoMount,"string"==typeof this.de))try{this.de=eval("("+a.autoMount+")")}catch(b){t("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.de=null}this.dc=[];this.Zc();this.Oe()||this.Oa()}y(v,uj);
var vj={3:{pd:3,Ud:0,name:"SPECIFY"},4:{pd:2,Ud:1,name:"DRIVE_STATUS"},5:{pd:9,Ud:7,name:"WRITE_DATA"},6:{pd:9,Ud:7,name:"READ_DATA"},7:{pd:2,Ud:0,name:"RECALIBRATE"},8:{pd:1,Ud:2,name:"INT_STATUS"},13:{pd:6,Ud:7,name:"FORMAT"},15:{pd:3,Ud:0,name:"SEEK"}};g=uj.prototype;
g.tb=function(a,b,c,d){switch(c){case "listDisks":return this.oa[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.oa.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var m={};if(d=d.getAttribute("data-value"))try{m=eval("({"+d+"})")}catch(n){t("FDC option error: "+(n.message||n))}d=m.desc;void 0===d&&(d="");m=m.href;void 0!==m&&(d='<a href="'+m+'" target="_blank">'+d+"</a>");c.innerHTML=
d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.oa[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||wj(a,c)}}(this,d),!0;case "loadDrive":return this.oa[c]=d,d.onclick=function(a){return function(){var b,c=a.oa.listDisks,d=a.oa.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&b<a.sa.length)if(d=c.value){c=c.options[c.selectedIndex].text;if("?"==d){d=window.prompt("Enter the URL of a disk image to load.","");if(!d)return;c=ea(d);a.Tb("Attempting to load "+
@ -564,49 +564,49 @@ g.Zc=function(a){var b=0,c=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.j
g.Ii=function(){var a=0,b=[];b[a++]=this.jb;b[a++]=0;b[a++]=this.ta;b[a++]=this.Kb;b[a++]=this.fb;b[a++]=this.Ua;b[a++]=this.ze;b[a++]=this.Ki();for(var c=a++,d=0;d<this.sa.length;d++){var e=this.sa[d];e.ra&&Bj(this,e.fe,e.ra)}b[c]=this.dc;b[a++]=this.Ed;b[a]=this.Ik;return b};
g.Ch=function(a,b,c){var d=0,e=!0;a.jb=b;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.ic||40,c[3],9,512,c[1]]);a.Ra=c[d++];a.name=c[d][0];a.ic=c[d][1];a.Zb=c[d][2];a.Gc=c[d][3];a.yb=c[d][4];a.re=c[d][5];d++;a.bj=1;a.La=c[d++];a.kd=c[d++];a.ib=c[d++];a.kd=100<=a.kd?a.kd-100:a.kd-a.ib;a.Pa=c[d++];a.nd=c[d++];a.Xa=c[d++];a.Sa=c[d++];a.Ma=null;a.ra||(a.fe="");var f=c[d++];f===Cj?(f=c[d++],c=c[d],xj(this,b,f,c,!0)?a.ra&&Dj(this,f,c,a.ra):this.Oa(!1)):void 0!==f&&a.ra&&
0>a.ra.restore(f)&&(e=!1);e&&a.ra&&void 0!==a.Sa&&(a.Ma=a.ra.seek(a.ib,a.La,a.Pa));return e};g.Ki=function(){for(var a=0,b=[],c=0;c<this.sa.length;c++)b[a++]=this.Ji(this.sa[c]);return b};g.Ji=function(a){var b=0,c=[];c[b++]=a.Ra;c[b++]=[a.name,a.ic,a.Zb,a.Gc,a.yb,a.re];c[b++]=a.La;c[b++]=a.kd+100;c[b++]=a.ib;c[b++]=a.Pa;c[b++]=a.nd;c[b++]=a.Xa;c[b++]=a.Sa;c[b++]=Cj;c[b++]=a.Nk;c[b]=a.fe;return c};
g.Oe=function(a){a||(this.Qd=0);if(this.de)for(var b in this.de){var c=this.de[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.sa.length){!xj(this,d,c.name,c.path,!0)&&a&&this.Oa(!1);continue}}this.xa("Unrecognized auto-mount specification for drive "+b)}return!!this.Qd};function xj(a,b,c,d,e){var f=a.sa[b];if(d&&f.fe!=d){yj(a,b,e,!0);if(f.Ec)return a.xa("Drive "+b+" busy"),!0;f.Ec=!0;e&&(f.Yd=!0,a.Qd++);(new lj(a,f,"preload")).load(c,d,a.om);return!1}return!0}
g.om=function(a,b,c,d){a.Ec=!1;b&&b.Fb.length>a.ic&&(this.xa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.jb)),b=null);b&&(a.ra=b,a.Nk=c,a.fe=d,Dj(this,c,d,b),this.Ed|=128,this.xa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.jb),a.Yd));a.Yd&&(a.Yd=!1,--this.Qd||this.Oa());wj(this,a.jb)};
g.Oe=function(a){a||(this.Qd=0);if(this.de)for(var b in this.de){var c=this.de[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.sa.length){!xj(this,d,c.name,c.path,!0)&&a&&this.Oa(!1);continue}}this.xa("Unrecognized auto-mount specification for drive "+b)}return!!this.Qd};function xj(a,b,c,d,e){var f=a.sa[b];if(d&&f.fe!=d){yj(a,b,e,!0);if(f.Ec)return a.xa("Drive "+b+" busy"),!0;f.Ec=!0;e&&(f.Yd=!0,a.Qd++);(new lj(a,f,"preload")).load(c,d,a.nm);return!1}return!0}
g.nm=function(a,b,c,d){a.Ec=!1;b&&b.Fb.length>a.ic&&(this.xa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.jb)),b=null);b&&(a.ra=b,a.Nk=c,a.fe=d,Dj(this,c,d,b),this.Ed|=128,this.xa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.jb),a.Yd));a.Yd&&(a.Yd=!1,--this.Qd||this.Oa());wj(this,a.jb)};
function wj(a,b){if(0<=b&&b<a.sa.length){var c=a.sa[b],d=a.oa.listDisks,e=a.oa.listDrives;if(d&&e&&(e=parseInt(e.value,10),!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c.fe){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function yj(a,b,c,d){var e=a.sa[b];e.ra&&(Bj(a,e.fe,e.ra),e.Nk="",e.fe="",e.ra=null,a.Ed|=128,d||a.xa("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||wj(a,b))}
function Dj(a,b,c,d){var e;for(e=0;e<a.dc.length;e++)if(a.dc[e][1]==c){d.restore(a.dc[e][2]);return}a.dc[e]=[b,c,[]]}function Bj(a,b,c){var d;for(d=0;d<a.dc.length;d++)if(a.dc[d][1]==b){a.dc[d][2]=c.save();break}}g.Vm=function(a,b){b&4?this.ze&4||this.ze&8&&this.ga&&R(this.ga,6):this.Zc();this.ze=b};g.Jl=function(){return this.ta};g.Hl=function(){var a=0;this.fb<this.Ua&&(a=this.Kb[this.fb]);this.ze&8&&this.ga&&Qh(this.ga,6);++this.fb>=this.Ua&&(this.ta&=-81,this.fb=this.Ua=0);return a};
g.Um=function(a,b){this.Ua<this.Kb.length&&(this.Kb[this.Ua++]=b);var c=this.Kb[0]&31;if(void 0!==vj[c]&&this.Ua>=vj[c].pd){var d=!1;this.fb=0;var e,f,c=this.Ia()&31;switch(c){case 3:this.Ia("SRT");this.Ia("HLT");this.pb();break;case 4:f=this.Ia("DS");this.jb=f&3;e=this.sa[this.jb];this.pb();this.cb((e.Ra&4278190080)>>>24,"ST3");break;case 5:case 6:f=this.Ia("DS");this.jb=f&3;e=this.sa[this.jb];e.La=f>>2&1;e.ib=this.Ia("C");this.Ia("H");e.Pa=this.Ia("R");d=this.Ia("N");e.Xa=128<<d;e.nd=this.Ia("EOT");
function Dj(a,b,c,d){var e;for(e=0;e<a.dc.length;e++)if(a.dc[e][1]==c){d.restore(a.dc[e][2]);return}a.dc[e]=[b,c,[]]}function Bj(a,b,c){var d;for(d=0;d<a.dc.length;d++)if(a.dc[d][1]==b){a.dc[d][2]=c.save();break}}g.Um=function(a,b){b&4?this.ze&4||this.ze&8&&this.ga&&R(this.ga,6):this.Zc();this.ze=b};g.Il=function(){return this.ta};g.Gl=function(){var a=0;this.fb<this.Ua&&(a=this.Kb[this.fb]);this.ze&8&&this.ga&&Qh(this.ga,6);++this.fb>=this.Ua&&(this.ta&=-81,this.fb=this.Ua=0);return a};
g.Tm=function(a,b){this.Ua<this.Kb.length&&(this.Kb[this.Ua++]=b);var c=this.Kb[0]&31;if(void 0!==vj[c]&&this.Ua>=vj[c].pd){var d=!1;this.fb=0;var e,f,c=this.Ia()&31;switch(c){case 3:this.Ia("SRT");this.Ia("HLT");this.pb();break;case 4:f=this.Ia("DS");this.jb=f&3;e=this.sa[this.jb];this.pb();this.cb((e.Ra&4278190080)>>>24,"ST3");break;case 5:case 6:f=this.Ia("DS");this.jb=f&3;e=this.sa[this.jb];e.La=f>>2&1;e.ib=this.Ia("C");this.Ia("H");e.Pa=this.Ia("R");d=this.Ia("N");e.Xa=128<<d;e.nd=this.Ia("EOT");
this.Ia("GPL");this.Ia("DTL");6==c?this.ih(e):this.jh(e);this.pb();Ej(this,e);this.cb((e.Ra&65280)>>>8,"ST1");this.cb((e.Ra&16711680)>>>16,"ST2");this.cb(e.ib,"C");this.cb(e.La,"H");this.cb(e.Pa,"R");this.cb(d,"N");d=!0;break;case 7:f=this.Ia("DS");this.jb=f&3;e=this.sa[this.jb];e.ib=e.kd=0;e.Ra=268435488;this.pb();d=!0;break;case 8:e=this.sa[this.jb];e.La=0;this.pb();Ej(this,e);this.cb(e.ib,"PCN");break;case 13:f=this.Ia("DS");this.jb=f&3;e=this.sa[this.jb];e.La=f>>2&1;d=this.Ia("N");e.Xa=128<<d;
e.nd=this.Ia("SC");this.Ia("GPL");e.Yi=this.Ia("D");this.ij(e);this.pb();Ej(this,e);this.cb((e.Ra&65280)>>>8,"ST1");this.cb((e.Ra&16711680)>>>16,"ST2");this.cb(e.ib,"C");this.cb(e.La,"H");this.cb(e.Pa,"R");this.cb(d,"N");d=!0;break;case 15:f=this.Ia("DS"),this.jb=f&3,e=this.sa[this.jb],e.La=f>>2&1,c=this.Ia("NCN"),e.ib+=c-e.kd,0>e.ib&&(e.ib=0),e.ib>=e.ic&&(e.ib=e.ic-1),e.kd=c,e.Ra=32,0==e.ib&&(e.Ra|=268435456),this.pb(),d=!0}0<this.Ua&&(this.ta|=80);this.ze&8&&(!e||e.Ra&8||!d||this.ga&&R(this.ga,
6))}};g.Il=function(){var a=this.Ed;this.Ed&=-129;return a};g.Tm=function(a,b){this.Ik=b};g.Ia=function(){var a=this.Kb[this.fb];this.fb++;return a};g.pb=function(){this.fb=this.Ua=0};g.cb=function(a){this.Kb[this.Ua++]=a};function Ej(a,b){a.cb(b.jb|b.La<<2|b.Ra&255,"ST0")}g.gh=function(a,b,c){void 0===b||0>b?this.vc(a,c):c(-1,!1)};g.hh=function(a,b){return void 0!==b&&0<=b?this.xc(a,b):-1};g.al=function(a,b){return void 0!==b&&0<=b?this.Oi(a,b):-1};
6))}};g.Hl=function(){var a=this.Ed;this.Ed&=-129;return a};g.Sm=function(a,b){this.Ik=b};g.Ia=function(){var a=this.Kb[this.fb];this.fb++;return a};g.pb=function(){this.fb=this.Ua=0};g.cb=function(a){this.Kb[this.Ua++]=a};function Ej(a,b){a.cb(b.jb|b.La<<2|b.Ra&255,"ST0")}g.gh=function(a,b,c){void 0===b||0>b?this.vc(a,c):c(-1,!1)};g.hh=function(a,b){return void 0!==b&&0<=b?this.xc(a,b):-1};g.$k=function(a,b){return void 0!==b&&0<=b?this.Oi(a,b):-1};
g.ih=function(a){a.Ra=72;a.ra&&(a.Ma=null,a.Ra=0,this.ga&&(Gh(this.ga,2,this,"dmaRead",a),Eh(this.ga,2)))};g.jh=function(a){a.Ra=72;a.ra&&(a.ra.se?a.Ra=576:(a.Ma=null,a.Ra=0,this.ga&&(Gh(this.ga,2,this,"dmaWrite",a),Eh(this.ga,2))))};g.ij=function(a){a.Ra=72;a.ra&&(a.Ma=null,a.Ra=0,this.ga&&(a.Td=0,a.ec=Array(4),a.Pe=!0,a.Ue=0,Gh(this.ga,2,this,"dmaFormat",a),Eh(this.ga,2),a.Pe=!1))};
g.vc=function(a,b){var c=-1;if(!a.Ra&&a.ra){do{if(a.Ma&&0<=(c=tj(a.Ma,a.Sa++)))break;a.Ma=a.ra.seek(a.ib,a.La,a.Pa);if(!a.Ma){a.Ra=1088;break}a.Sa=0;this.Me(a)}while(1)}b(c,!1)};g.xc=function(a,b){if(a.Ra||!a.ra)return-1;do{if(a.Ma&&a.ra.write(a.Ma,a.Sa++,b))break;a.Ma=a.ra.seek(a.ib,a.La,a.Pa);if(!a.Ma){a.Ra=8256;b=-1;break}a.Sa=0;this.Me(a)}while(1);return b};g.Me=function(a){a.Pa++;a.Pa>=a.Gc+1&&(a.Pa=1,a.La++,a.La>=a.Zb&&(a.La=0,a.ib++))};
g.Oi=function(a,b){if(a.Ra)return-1;a.ec[a.Td++]=b;if(a.Td==a.ec.length){a.ib=a.ec[0];a.La=a.ec[1];a.Pa=a.ec[2];a.Xa=128<<a.ec[3];for(var c=a.Td=0;c<a.Xa;c++)if(0>this.xc(a,a.Yi))return-1;a.Ue++}a.Ue>=a.nd&&(b=-1);return b};var zj={1012:uj.prototype.Jl,1013:uj.prototype.Hl,1015:uj.prototype.Il},Aj={1010:uj.prototype.Vm,1013:uj.prototype.Um,1015:uj.prototype.Tm};u(function(){for(var a=B(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new uj(d);A(d,c)}});
function $(a){v.call(this,"HDC",a,$);this.dmaRead=this.gh;this.dmaWrite=this.hh;this.dmaWriteBuffer=this.bl;this.dmaWriteFormat=this.cl;this.Qg=[];if(a.drives)try{this.Qg=eval("("+a.drives+")")}catch(b){t("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.df=(this.Xd="at"==a.type)?1:0;this.ml=this.Xd?2:3}y(v,$);
g.Oi=function(a,b){if(a.Ra)return-1;a.ec[a.Td++]=b;if(a.Td==a.ec.length){a.ib=a.ec[0];a.La=a.ec[1];a.Pa=a.ec[2];a.Xa=128<<a.ec[3];for(var c=a.Td=0;c<a.Xa;c++)if(0>this.xc(a,a.Yi))return-1;a.Ue++}a.Ue>=a.nd&&(b=-1);return b};var zj={1012:uj.prototype.Il,1013:uj.prototype.Gl,1015:uj.prototype.Hl},Aj={1010:uj.prototype.Um,1013:uj.prototype.Tm,1015:uj.prototype.Sm};u(function(){for(var a=B(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new uj(d);A(d,c)}});
function $(a){v.call(this,"HDC",a,$);this.dmaRead=this.gh;this.dmaWrite=this.hh;this.dmaWriteBuffer=this.al;this.dmaWriteFormat=this.bl;this.Qg=[];if(a.drives)try{this.Qg=eval("("+a.drives+")")}catch(b){t("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.df=(this.Xd="at"==a.type)?1:0;this.ll=this.Xd?2:3}y(v,$);
var Fj=[{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]}];g=$.prototype;g.tb=function(){return!1};g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;this.Fa=a;this.ga=C(a,"ChipSet");Ua(b,this,this.Xd?Gj:Hj);Wa(b,this,this.Xd?Ij:Jj);this.reset();this.Oe()||this.Oa()};
g.Sb=function(a,b){if(!b)if(!a||!this.restore)this.Zc(),this.Fa.th&&this.Oe(!0);else if(!this.restore(a))return!1;return!0};g.Jb=function(a){return a&&this.save?this.save():!0};g.te=function(){return this.Fa?this.Fa.te():""};g.vd=function(){return this.Fa?this.Fa.vd():""};g.reset=function(){this.Zc(null,!0)};g.save=function(){var a=new H(this);a.set(0,this.Ii());return a.data()};g.restore=function(a){return this.Zc(a[0])};
g.Zc=function(a,b){var c=0,d=!0;if(this.Xd)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.Dd=a[c++],this.Mk=a[c++],this.Fg=a[c++],this.Gg=a[c++],this.Eg=a[c++],this.Dg=a[c++],this.zf=a[c++],this.ta=a[c++],this.Gi=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.yf=a[c++];this.ta=a[c++];this.Kb=a[c++];this.fb=a[c++];this.Ua=a[c++];this.Lk=a[c++];this.Kk=a[c++];this.Jk=a[c++];var e=a[c++];void 0!==e?this.cf=e:void 0===this.cf&&(this.cf=-1)}void 0===this.sa&&(this.sa=Array(this.Qg.length));c=a[c];void 0===
c&&(c=[]);for(e=0;e<this.sa.length;e++){void 0===this.sa[e]&&(this.sa[e]={});var f=this.sa[e];this.Ch(e,f,this.Qg[e],c[e],b)||(d=!1);null!=this.yf&&1>=e&&(this.yf|=(f.type&3)<<(1-e<<1))}return d};
g.Ii=function(){var a=0,b=[];this.Xd?(b[a++]=this.Dd,b[a++]=this.Mk,b[a++]=this.Fg,b[a++]=this.Gg,b[a++]=this.Eg,b[a++]=this.Dg,b[a++]=this.zf,b[a++]=this.ta,b[a++]=this.Gi):(b[a++]=this.yf,b[a++]=this.ta,b[a++]=this.Kb,b[a++]=this.fb,b[a++]=this.Ua,b[a++]=this.Lk,b[a++]=this.Kk,b[a++]=this.Jk,b[a++]=this.cf);b[a]=this.Ki();return b};
g.Ch=function(a,b,c,d,e){var f=0,l=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.jb=a;b.errorCode=d[f++];b.Rk=d[f++];b.re=d[f++];b.ke=d[f++];b.le=d[f++];b.La=d[f++];b.Zb=d[f++];b.Hd=d[f++];b.Pa=d[f++];b.nd=d[f++];b.Xa=d[f++];b.Wf=this.Xd?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.vd()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Fj[this.df][b.type])b.type=this.ml;c=Fj[this.df][b.type];
g.Ch=function(a,b,c,d,e){var f=0,l=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.jb=a;b.errorCode=d[f++];b.Rk=d[f++];b.re=d[f++];b.ke=d[f++];b.le=d[f++];b.La=d[f++];b.Zb=d[f++];b.Hd=d[f++];b.Pa=d[f++];b.nd=d[f++];b.Xa=d[f++];b.Wf=this.Xd?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.vd()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Fj[this.df][b.type])b.type=this.ll;c=Fj[this.df][b.type];
b.Gc=c[2]||17;b.yb=c[3]||512;if(e&&this.ga&&(e=this.ga,c=b.type,e.ka)){var k=e.ka[18],k=a?k&240|c:k&15|c<<4;e.ka&&(e.ka[18]=k,sh(e))}void 0===b.ra&&(b.ra=null,this.xa("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Kj(this,b);b.Sa=d[f++];b.Ma=null;b.ra&&(a=d[f],void 0!==a&&0>b.ra.restore(a)&&(l=!1),l&&void 0!==b.Sa&&(b.Ma=b.ra.seek(b.Hd,b.La,b.Pa+b.Wf)));return l};g.Ki=function(){for(var a=0,b=[],c=0;c<this.sa.length;c++)b[a++]=this.Ji(this.sa[c]);return b};
g.Ji=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.Rk;c[b++]=a.re;c[b++]=a.ke;c[b++]=a.le;c[b++]=a.La;c[b++]=a.Zb;c[b++]=a.Hd;c[b++]=a.Pa;c[b++]=a.nd;c[b++]=a.Xa;c[b++]=a.Sa;c[b]=a.ra?a.ra.save():null;return c};
function Kj(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.ke[2])?e=b.ke[0]<<8|b.ke[1]:c=b.type);null==c||d||(d=Fj[a.df][c][1],e=Fj[a.df][c][0]);d&&((c=Fj[a.df][b.type])&&e!=c[0]&&d!=c[1]&&a.xa("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.ic=e,b.Zb=d,null==b.ra&&(b.ra=new lj(a,b,b.mode)))}}
g.Oe=function(a){a||(this.Qd=0);for(var b=0;b<this.sa.length;b++){var c=this.sa[b];if(c.name&&c.path){var d;d=c.name;var c=c.path,e=this.sa[b];e.Ec?(this.xa("Drive "+b+" busy"),d=!0):(e.Ec=!0,e.Yd=!0,this.Qd++,(e.ra||new lj(this,e,e.mode)).load(d,c,this.nm),d=!1);!d&&a&&this.Oa(!1)}else a&&void 0!==c.type&&(c.ra=null,Kj(this,c,c.type))}return!!this.Qd};g.nm=function(a,b,c){a.Ec=!1;(a.ra=b)&&this.xa('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.jb),a.Yd);a.Yd&&(a.Yd=!1,--this.Qd||this.Oa())};
g.im=function(){var a=0;this.fb<this.Ua&&(a=this.Kb[this.fb]);this.ga&&Qh(this.ga,5);this.ta&=-33;++this.fb>=this.Ua&&(this.fb=this.Ua=0,this.ta&=-15);return a};g.rn=function(a,b){this.Ua<this.Kb.length&&(this.Kb[this.Ua++]=b);var c=12!=this.Kb[0]?6:this.Kb.length;6==this.Ua&&(this.ta&=-2);this.Ua>=c&&(this.ta|=2,this.ta&=-2,Lj(this))};g.jm=function(){var a=this.ta;this.fb<this.Ua&&(this.ta|=1);return a};g.un=function(a,b){this.Lk=b;this.ga&&Qh(this.ga,5);this.Zc()};g.hm=function(){return this.yf};
g.tn=function(a,b){this.Kk=b;this.ta=13};g.sn=function(a,b){this.Jk=b};g.Bi=function(){};g.ul=function(){var a=-1;if(this.Na&&(a=this.vc(this.Na),this.Na.Sa==this.Na.yb))if(this.Na.Xa-=this.Na.yb,this.Na.Xa>=this.Na.yb){var b=this;this.vc(this.Na,function(a){0<=a?b.ga&&R(b.ga,14):(b.ta=1,b.Dd=16)},!1)}else this.ta=80;return a};
g.Im=function(a,b){this.Na&&this.Na.Xa>=this.Na.yb&&(0>this.xc(this.Na,b)?(this.ta=1,this.Dd=16):this.Na.Sa==this.Na.yb&&(this.Na.Xa-=this.Na.yb,this.ga&&R(this.ga,14),this.Na.Xa>=this.Na.yb||(this.ta=80)))};g.wl=function(){return this.Dd};g.Mm=function(a,b){this.Mk=b};g.xl=function(){return this.Fg};g.Km=function(a,b){this.Fg=b};g.yl=function(){return this.Gg};g.Lm=function(a,b){this.Gg=b};g.tl=function(){return this.Eg};g.Hm=function(a,b){this.Eg=b};g.sl=function(){return this.Dg};
g.Gm=function(a,b){this.Dg=b};g.vl=function(){return this.zf};g.Jm=function(a,b){this.zf=b};g.zl=function(){return this.ta};g.Fm=function(a,b){this.Gi=b;this.ga&&Qh(this.ga,14);Mj(this)};
g.Oe=function(a){a||(this.Qd=0);for(var b=0;b<this.sa.length;b++){var c=this.sa[b];if(c.name&&c.path){var d;d=c.name;var c=c.path,e=this.sa[b];e.Ec?(this.xa("Drive "+b+" busy"),d=!0):(e.Ec=!0,e.Yd=!0,this.Qd++,(e.ra||new lj(this,e,e.mode)).load(d,c,this.mm),d=!1);!d&&a&&this.Oa(!1)}else a&&void 0!==c.type&&(c.ra=null,Kj(this,c,c.type))}return!!this.Qd};g.mm=function(a,b,c){a.Ec=!1;(a.ra=b)&&this.xa('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.jb),a.Yd);a.Yd&&(a.Yd=!1,--this.Qd||this.Oa())};
g.hm=function(){var a=0;this.fb<this.Ua&&(a=this.Kb[this.fb]);this.ga&&Qh(this.ga,5);this.ta&=-33;++this.fb>=this.Ua&&(this.fb=this.Ua=0,this.ta&=-15);return a};g.qn=function(a,b){this.Ua<this.Kb.length&&(this.Kb[this.Ua++]=b);var c=12!=this.Kb[0]?6:this.Kb.length;6==this.Ua&&(this.ta&=-2);this.Ua>=c&&(this.ta|=2,this.ta&=-2,Lj(this))};g.im=function(){var a=this.ta;this.fb<this.Ua&&(this.ta|=1);return a};g.tn=function(a,b){this.Lk=b;this.ga&&Qh(this.ga,5);this.Zc()};g.gm=function(){return this.yf};
g.sn=function(a,b){this.Kk=b;this.ta=13};g.rn=function(a,b){this.Jk=b};g.Bi=function(){};g.tl=function(){var a=-1;if(this.Na&&(a=this.vc(this.Na),this.Na.Sa==this.Na.yb))if(this.Na.Xa-=this.Na.yb,this.Na.Xa>=this.Na.yb){var b=this;this.vc(this.Na,function(a){0<=a?b.ga&&R(b.ga,14):(b.ta=1,b.Dd=16)},!1)}else this.ta=80;return a};
g.Hm=function(a,b){this.Na&&this.Na.Xa>=this.Na.yb&&(0>this.xc(this.Na,b)?(this.ta=1,this.Dd=16):this.Na.Sa==this.Na.yb&&(this.Na.Xa-=this.Na.yb,this.ga&&R(this.ga,14),this.Na.Xa>=this.Na.yb||(this.ta=80)))};g.vl=function(){return this.Dd};g.Lm=function(a,b){this.Mk=b};g.wl=function(){return this.Fg};g.Jm=function(a,b){this.Fg=b};g.xl=function(){return this.Gg};g.Km=function(a,b){this.Gg=b};g.sl=function(){return this.Eg};g.Gm=function(a,b){this.Eg=b};g.rl=function(){return this.Dg};
g.Fm=function(a,b){this.Dg=b};g.ul=function(){return this.zf};g.Im=function(a,b){this.zf=b};g.yl=function(){return this.ta};g.Em=function(a,b){this.Gi=b;this.ga&&Qh(this.ga,14);Mj(this)};
function Mj(a){var b=!1,c=a.Gi,d=a.zf&16?1:0,e=a.zf&15,f=a.Eg|(a.Dg&3)<<8,l=a.Gg,k=a.Fg;a.Na=null;a.Dd=0;a.ta=80;(d=a.sa[d])?(d.Hd=f,d.La=e,d.Pa=l,d.Xa=k*d.yb,c=144<=c?c:c&240,d.Ma=null,d.errorCode=0,a.Na=d):c=-1;switch(c&240){case 32:a.vc(d,function(b){0<=b&&a.ga?(R(a.ga,14),a.ta=136):(a.ta=1,a.Dd=16)},!1);break;case 48:a.ga?(R(a.ga,14),a.ta=136):(a.ta=1,a.Dd=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.Dd=1;b=!0;break;case 145:d.Zb=e+1,d.Gc=k,b=!0}b&&a.ga&&R(a.ga,14)}
function Lj(a){a.fb=0;var b=a.Ia(),c=a.Ia(),d=c&32,e=d>>5,f=c&31,l=a.Ia(),k=a.Ia(),m=l<<2&768|k,n=l&63,q=a.Ia(),s=a.Ia(),r=a.sa[e];r&&(r.Hd=m,r.La=f,r.Pa=n,r.Xa=q*r.yb);switch(b){case 3:a.pb(r?r.errorCode:4);a.cb(c);a.cb(l);a.cb(k);a.cb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ia());)r&&c<r.ke.length&&(r.ke[c++]=b);r&&Kj(a,r);b=0;r||a.cf!=e||(a.cf=-1,b=2);a.pb(b|d);b=-1;break;case 224:case 228:a.pb(0|d),b=-1}if(0<=b)switch(void 0===r?b=-1:(r.errorCode=0,r.Rk=0),b){case 0:a.pb(0|d);break;case 1:r.Xn=
function Lj(a){a.fb=0;var b=a.Ia(),c=a.Ia(),d=c&32,e=d>>5,f=c&31,l=a.Ia(),k=a.Ia(),m=l<<2&768|k,n=l&63,q=a.Ia(),s=a.Ia(),r=a.sa[e];r&&(r.Hd=m,r.La=f,r.Pa=n,r.Xa=q*r.yb);switch(b){case 3:a.pb(r?r.errorCode:4);a.cb(c);a.cb(l);a.cb(k);a.cb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ia());)r&&c<r.ke.length&&(r.ke[c++]=b);r&&Kj(a,r);b=0;r||a.cf!=e||(a.cf=-1,b=2);a.pb(b|d);b=-1;break;case 224:case 228:a.pb(0|d),b=-1}if(0<=b)switch(void 0===r?b=-1:(r.errorCode=0,r.Rk=0),b){case 0:a.pb(0|d);break;case 1:r.Un=
s;a.pb(0|d);break;case 5:a.pb(0|d);break;case 8:a.ih(r,function(b){a.pb(b|d)});break;case 10:a.jh(r,function(b){a.pb(b|d)});break;case 15:Nj(a,r,function(b){a.pb(b|d)});break;default:a.pb(2|d)}}g.Ia=function(){var a=-1;this.fb<this.Ua&&(a=this.Kb[this.fb++]);return a};g.pb=function(a){this.fb=this.Ua=0;void 0!==a&&this.cb(a);this.ga&&R(this.ga,5);this.ta|=32};g.cb=function(a){this.Kb[this.Ua++]=a};g.gh=function(a,b,c){void 0===b||0>b?this.vc(a,c):c(-1,!1)};
g.hh=function(a,b){return void 0!==b&&0<=b?this.xc(a,b):-1};g.bl=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Sa<a.le.length?a.le[a.Sa++]=c:(a.errorCode=20,c=-1)):c=-1;return c};g.cl=function(a,b){return void 0!==b&&0<=b?this.Oi(a,b):-1};g.ih=function(a,b){a.errorCode=4;if(a.ra&&(a.Ma=null,this.ga)){a.errorCode=0;Gh(this.ga,3,this,"dmaRead",a);Eh(this.ga,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
g.hh=function(a,b){return void 0!==b&&0<=b?this.xc(a,b):-1};g.al=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Sa<a.le.length?a.le[a.Sa++]=c:(a.errorCode=20,c=-1)):c=-1;return c};g.bl=function(a,b){return void 0!==b&&0<=b?this.Oi(a,b):-1};g.ih=function(a,b){a.errorCode=4;if(a.ra&&(a.Ma=null,this.ga)){a.errorCode=0;Gh(this.ga,3,this,"dmaRead",a);Eh(this.ga,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
g.jh=function(a,b){a.errorCode=4;if(a.ra&&(a.Ma=null,this.ga)){a.errorCode=0;Gh(this.ga,3,this,"dmaWrite",a);Eh(this.ga,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function Nj(a,b,c){b.errorCode=4;b.le&&b.le.length==b.Xa||(b.le=Array(b.Xa));b.Sa=0;a.ga?(b.errorCode=0,Gh(a.ga,3,a,"dmaWriteBuffer",b),Eh(a.ga,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
g.ij=function(a,b){a.errorCode=4;if(a.ra&&(a.Ma=null,this.ga)){a.Td=0;a.ec=Array(4);a.Pe=!0;a.Ue=0;a.errorCode=0;Gh(this.ga,3,this,"dmaWriteFormat",a);Eh(this.ga,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Pe=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
g.vc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Ma&&(d=tj(a.Ma,a.Sa),a.Sa+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;a.ra.seek(a.Hd,a.La,a.Pa+a.Wf,!1,function(c,d){var m=-1;(a.Ma=c)?(a.Sa=0,f.Me(a),m=tj(a.Ma,a.Sa),a.Sa+=e):a.errorCode=20;b(m,d)})}return d};
g.xc=function(a,b){if(a.errorCode)return-1;do{if(a.Ma&&a.ra.write(a.Ma,a.Sa++,b))break;a.ra.seek(a.Hd,a.La,a.Pa+a.Wf,!0,function(b){a.Ma=b});if(!a.Ma){a.errorCode=20;b=-1;break}a.Sa=0;this.Me(a)}while(1);return b};g.Me=function(a){a.Pa++;var b=1-a.Wf;a.Pa>=a.Gc+b&&(a.Pa=b,a.La++,a.La>=a.Zb&&(a.La=0,a.Hd++))};
g.Oi=function(a,b){if(a.errorCode)return-1;a.ec[a.Td++]=b;if(a.Td==a.ec.length){a.Hd=a.ec[0];a.La=a.ec[1];a.Pa=a.ec[2];a.Xa=128<<a.ec[3];for(var c=a.Td=0;c<a.Xa;c++)if(0>this.xc(a,a.Yi))return-1;a.Ue++}a.Ue>=a.nd&&(b=-1);return b};
var Hj={800:$.prototype.im,801:$.prototype.jm,802:$.prototype.hm},Gj={496:$.prototype.ul,497:$.prototype.wl,498:$.prototype.xl,499:$.prototype.yl,500:$.prototype.tl,501:$.prototype.sl,502:$.prototype.vl,503:$.prototype.zl},Jj={800:$.prototype.rn,801:$.prototype.un,802:$.prototype.tn,803:$.prototype.sn,807:$.prototype.Bi,811:$.prototype.Bi,815:$.prototype.Bi},Ij={496:$.prototype.Im,497:$.prototype.Mm,498:$.prototype.Km,499:$.prototype.Lm,500:$.prototype.Hm,501:$.prototype.Gm,502:$.prototype.Jm,503:$.prototype.Fm};
u(function(){for(var a=B(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new $(d);A(d,c)}});function H(a,b,c){this.id=a.id;this.key=Qj(a,b,c);this.Ha=a.Ha;Rj(this,a.vn)}function Qj(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}
var Hj={800:$.prototype.hm,801:$.prototype.im,802:$.prototype.gm},Gj={496:$.prototype.tl,497:$.prototype.vl,498:$.prototype.wl,499:$.prototype.xl,500:$.prototype.sl,501:$.prototype.rl,502:$.prototype.ul,503:$.prototype.yl},Jj={800:$.prototype.qn,801:$.prototype.tn,802:$.prototype.sn,803:$.prototype.rn,807:$.prototype.Bi,811:$.prototype.Bi,815:$.prototype.Bi},Ij={496:$.prototype.Hm,497:$.prototype.Lm,498:$.prototype.Jm,499:$.prototype.Km,500:$.prototype.Gm,501:$.prototype.Fm,502:$.prototype.Im,503:$.prototype.Em};
u(function(){for(var a=B(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new $(d);A(d,c)}});function H(a,b,c){this.id=a.id;this.key=Qj(a,b,c);this.Ha=a.Ha;Rj(this,a.un)}function Qj(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}
H.prototype={set:function(a,b){this[this.id][a]=b},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.rh=!0):this.rh?!0:window.localStorage&&(a=window.localStorage.getItem(this.key))?(this[this.id]=a,this.rh=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){t(b.message||b),a=!1}return a},toString:function(){var a=this[this.id];return"string"==
typeof a?a:JSON.stringify(a)},clear:function(a){Rj(this);if(window.localStorage)for(var b=0;b<window.localStorage.length;){var c=window.localStorage.key(b++);c&&(a||c.substr(0,this.key.length)==this.key)&&(window.localStorage.removeItem(c),b=0)}}};function Rj(a,b){a[a.id]={};b&&a.set("parms",b);a.rh=!1}
function Sj(a){var b=!0;if(window.localStorage){var c=JSON.stringify(a[a.id]);try{window.localStorage.setItem(a.key,c)}catch(d){t("Unable to store "+c.length+" bytes in browser local storage"),b=!1}}return b}
function Tj(a,b,c){v.call(this,"Computer",a,Tj);this.zb=!1;this.ff=a.buswidth;this.jc=Uj;this.Df=null;this.ig=!1;this.url=b?b.url:null;this.En=(Math.random()+0.1).toString(36).substr(2,12);this.wc=Vj(this);if(this.ja=Ca("CPU",this.id)){this.Ha=Ca("Debugger",this.id);this.ma=new Ja({id:this.lg+".bus",buswidth:this.ff},this.ja,this.Ha);var d,e=Aa(this.id);if((this.xf=Ca("Panel",this.id))&&this.xf.dh)for(b=0;b<e.length;b++)d=e[b],d.xa=this.xf.xa,d.Tb=this.xf.Tb,d.dh=this.xf.dh;this.Tb("PREFETCH: false, TYPEDARRAYS: "+
Ga);for(b=0;b<e.length;b++)d=e[b],d.gc&&d.gc(this,this.ma,this.ja,this.Ha);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Ig=d:this.jc=parseInt(d,10));var f;if(a=va&&va.state||(f=!0,a.state))b=this.Pk=a,f||(this.ig=!0,this.jc=Uj),this.jc&&(this.Mg=new H(this,"1.15.4"),this.Mg.load()?b=null:delete this.Mg);!b&&this.jc&&(f=null,this.wc&&(f=la()+"/api/v1/user?req=load&user="+this.wc+"&state="+Qj(this,"1.15.4")),b=f)&&(this.ig=!0);b?p(b,!0,null,this,this.zm):this.Oa();c||Wj(this,this.Bg)}else t("Unable to find CPU component")}
y(v,Tj);var Cj=102,Uj=0;g=Tj.prototype;g.te=function(){return this.En};g.vd=function(){return this.wc?this.wc:""};g.zm=function(a,b,c){c?(this.Ig=null,this.ig=!1,this.xa("Unable to load machine state from server (error "+c+(b?": "+(String.prototype.trim?b.trim():b.replace(/^\s+|\s+$/g,"")):"")+")")):this.Df=b;this.Oa()};function Wj(a,b,c){for(var d=Aa(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Ea(f)){Ea(f,function(){Wj(a,b,c)});return}}b.call(a,c)}
function Tj(a,b,c){v.call(this,"Computer",a,Tj);this.zb=!1;this.ff=a.buswidth;this.jc=Uj;this.Df=null;this.ig=!1;this.url=b?b.url:null;this.Dn=(Math.random()+0.1).toString(36).substr(2,12);this.wc=Vj(this);if(this.ja=Ca("CPU",this.id)){this.Ha=Ca("Debugger",this.id);this.ma=new Ja({id:this.lg+".bus",buswidth:this.ff},this.ja,this.Ha);var d,e=Aa(this.id);if((this.xf=Ca("Panel",this.id))&&this.xf.dh)for(b=0;b<e.length;b++)d=e[b],d.xa=this.xf.xa,d.Tb=this.xf.Tb,d.dh=this.xf.dh;this.Tb("PREFETCH: false, TYPEDARRAYS: "+
Ga);for(b=0;b<e.length;b++)d=e[b],d.gc&&d.gc(this,this.ma,this.ja,this.Ha);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Ig=d:this.jc=parseInt(d,10));var f;if(a=va&&va.state||(f=!0,a.state))b=this.Pk=a,f||(this.ig=!0,this.jc=Uj),this.jc&&(this.Mg=new H(this,"1.15.4"),this.Mg.load()?b=null:delete this.Mg);!b&&this.jc&&(f=null,this.wc&&(f=la()+"/api/v1/user?req=load&user="+this.wc+"&state="+Qj(this,"1.15.4")),b=f)&&(this.ig=!0);b?p(b,!0,null,this,this.ym):this.Oa();c||Wj(this,this.Bg)}else t("Unable to find CPU component")}
y(v,Tj);var Cj=102,Uj=0;g=Tj.prototype;g.te=function(){return this.Dn};g.vd=function(){return this.wc?this.wc:""};g.ym=function(a,b,c){c?(this.Ig=null,this.ig=!1,this.xa("Unable to load machine state from server (error "+c+(b?": "+(String.prototype.trim?b.trim():b.replace(/^\s+|\s+$/g,"")):"")+")")):this.Df=b;this.Oa()};function Wj(a,b,c){for(var d=Aa(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Ea(f)){Ea(f,function(){Wj(a,b,c)});return}}b.call(a,c)}
function Xj(a,b){var c=new H(a,"1.15.4","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.xa("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
g.Bg=function(a){void 0===a&&(a=this.Df?1:this.jc);var b=!1,c=!1;this.nj=!1;var d=this.Mg||new H(this,"1.15.4");if(-1==a)b=!0;else if(a>Uj){if(d.load(this.Df)){this.De=new H(this,"1.15.4","failsafe");this.De.load()&&(Yj(this,d),a=2);this.De.set("timestamp",ja());Sj(this.De);var e=this.jc&&!this.ig;if(1==a||ma("Click OK to restore previous PCjs machine state.")){if(c=d.parse()){var f=d.get("code"),l=d.get("data");f&&("ok"==f?d.load(l):("error"==f&&"no machine state"!=l?(this.xa("Error: "+l),"unable to verify user"==
l&&(na(""),this.wc=null)):this.Tb(f+": "+l),Rj(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Xj(this,c?d:null)}else 2==a&&d.clear()}else Xj(this);delete this.Df;delete this.Mg}e=Aa(this.id);for(f=0;f<e.length;f++)l=e[f],l!==this&&l!=this.ja&&(c=Zj(this,l,d,b,c));b=[d,a,c];-1!=a?Wj(this,this.Gk,b):this.Gk(b)};

Binary file not shown.