Updated aspect ratio for CGA configs and added experimental 'aspect' URL parameter

This commit is contained in:
Jeff Parsons 2016-04-01 21:34:47 -07:00
commit d50f0ebb1a
44 changed files with 6634 additions and 318 deletions

View file

@ -3,13 +3,13 @@ function ca(a,b){var c;if(a){b||(b=16);if("$"==a.charAt(0))b=16,a=a.substr(1);el
function ea(a,b){var c="";void 0===b?b=8:8<b&&(b=8);if(null==a||isNaN(a))for(;0<b--;)c="?"+c;else for(;0<b--;){var d=a&15,d=d+(0<=d&&9>=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function fa(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));d=c.indexOf("&");0<d&&(c=c.substr(0,d));b&&(d=c.lastIndexOf("."),0<d&&(c=c.substring(0,d)));return c}function ga(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}
function ha(a,b){return-1!==a.indexOf(b,a.length-b.length)}var ia={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};function ja(a){return a.replace(/[&<>"']/g,function(a){return ia[a]})}var ka=Date.now||function(){return+new Date};function la(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}var ma=[31,28,31,30,31,30,31,31,30,31,30,31];
function na(a,b){var c=0,d=1,e;for(e in a){if(d>=arguments.length)break;var f=a[e],g=arguments[d++],c=c&~f.mg|g<<f.shift&f.mg}return c}function oa(a,b){return(b&a.mg)>>a.shift}
function pa(a,b,c,d){var e=0,f=null,g=null;if("object"==typeof resources&&(f=resources[a]))return d&&d(a,f,e),[f,e];var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(f=h.responseText,200==h.status||!h.status&&f.length&&"file:"==(window?window.location.protocol:"file:")||(e=h.status||-1),d&&d(a,f,e))});if(b&&"object"==typeof b){var k="",m;for(m in b)b.hasOwnProperty(m)&&(k&&(k+="&"),k+=m+"="+encodeURIComponent(b[m]));
k=k.replace(/%20/g,"+");h.open("POST",a,!!c);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.send(k)}else h.open("GET",a,!!c),"bytes"==b&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send();c||(f=h.responseText,200!=h.status&&(e=h.status||-1),d&&d(a,f,e),g=[f,e]);return g}function qa(){return"http://"+(window?window.location.host:"www.pcjs.org")}function n(a){window&&window.alert(a)}function ra(a){var b=!1;window&&(b=window.confirm(a));return b}var sa=null;
function ta(){if(null==sa){var a=!1;if(window)try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"==window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}sa=a}return sa}function wa(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b}function xa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}
function ya(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 pa(a,b,c,d){var e=0,f=null,g=null;if("object"==typeof resources&&(f=resources[a]))return d&&d(a,f,e),[f,e];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),g;var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(f=h.responseText,200==h.status||!h.status&&f.length&&"file:"==(window?window.location.protocol:"file:")||(e=h.status||-1),d&&d(a,f,e))});if(b&&"object"==
typeof b){var k="",m;for(m in b)b.hasOwnProperty(m)&&(k&&(k+="&"),k+=m+"="+encodeURIComponent(b[m]));k=k.replace(/%20/g,"+");h.open("POST",a,!!c);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.send(k)}else h.open("GET",a,!!c),"bytes"==b&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send();c||(f=h.responseText,200!=h.status&&(e=h.status||-1),d&&d(a,f,e),g=[f,e]);return g}function qa(){return"http://"+(window?window.location.host:"www.pcjs.org")}
function n(a){window&&window.alert(a)}function ra(a){var b=!1;window&&(b=window.confirm(a));return b}var sa=null;function ta(){if(null==sa){var a=!1;if(window)try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"==window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}sa=a}return sa}function wa(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b}
function xa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function ya(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 za(a,b,c,d){var e=null;b="data:application/"+b+(c?";base64":"")+",";b=ya("Firefox")?b+(c?a:encodeURIComponent(a)):b+(c?a:encodeURI(a));d&&(e=document.createElement("a"),"string"!=typeof e.download&&(e=null));e?(e.href=b,e.download=d,document.body.appendChild(e),e.click(),document.body.removeChild(e),a="Check your Downloads folder for "+d+"."):(window.open(b),a="Check your browser for a new window/tab containing the requested data ("+d+").");return a}
var Aa={init:[],show:[],exit:[]},Ba=!1,Ca=!0;function Da(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Ea(a){Aa.init.push(a)}function Fa(a){if(Ca)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){n("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks.")}}function Ga(a){!Ca&&a?(Ca=!0,Ba&&Ha("init")):Ca=a}function Ha(a){Aa[a]&&Fa(Aa[a])}Da("onload",function(){Ba=!0;Fa(Aa.init)});
Da("onpageshow",function(){Fa(Aa.show)});Da(ya("Opera")||ya("iOS")?"onunload":"onbeforeunload",function(){Fa(Aa.exit)});function Ia(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.yh=b.comment;this.xj=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.lf=this.id.substr(0,b),this.jf=this.id.substr(b+1)):this.jf=this.id;this[a]=c;this.ea={ne:!1,Qc:!1,hg:!1,Rb:!1,Yc:!1};this.Bf=null;this.ea.Yc=!1;this.la={};this.Ia=null;Ja.push(this)}var Ka=void 0,La={};
Da("onpageshow",function(){Fa(Aa.show)});Da(ya("Opera")||ya("iOS")?"onunload":"onbeforeunload",function(){Fa(Aa.exit)});function Ia(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.yh=b.comment;this.ej=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.lf=this.id.substr(0,b),this.jf=this.id.substr(b+1)):this.jf=this.id;this[a]=c;this.ea={ne:!1,Qc:!1,hg:!1,Rb:!1,Yc:!1};this.Bf=null;this.ea.Yc=!1;this.la={};this.Ia=null;Ja.push(this)}var Ka=void 0,La={};
if(window){Ka||(Ka=window.location.search.substr(1));for(var Ma,Na=/\+/g,Oa=/([^&=]+)=?([^&]*)/g;Ma=Oa.exec(Ka);)La[decodeURIComponent(Ma[1].replace(Na," "))]=decodeURIComponent(Ma[2].replace(Na," "))}function Pa(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 Qa(a,b){b||(b=Ia);a.prototype=Pa(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}var Ja=[],Ra={};function Sa(a,b,c){Ra[a]&&b&&(Ra[a][b]=c)}function Ta(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<Ja.length;b++){var d=Ja[b];a&&d.id.indexOf(a)||c.push(d)}return c}function Ua(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<Ja.length;c++)if(Ja[c].id===a)return Ja[c]}return null}
function Va(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<Ja.length;d++)if(c)c==Ja[d]&&(c=null);else if(!(a!=Ja[d].type||b&&Ja[d].id.indexOf(b)))return Ja[d]}return null}function Wa(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){n(c.message+" ("+a+")")}return b}function Xa(a,b,c){var d;b&&(void 0===d&&(d="Panel"),(d=Va(d,a.id))&&(b=d.la[b])&&a.zb(null,c,b))}
@ -53,7 +53,7 @@ b>>8,this.Ka[a+2]=b>>16,this.Ka[a+3]=b>>24):this.V[a>>2]=b;this.B.V[this.D]|=32;
function $b(a,b,c){c&&a.ge||(a.Wb=b[0]||a.da,a.ye=b[1]||a.ia,a.Fd=b[2]||a.Y);if(c||void 0===c)a.Ed=b[0]||a.da,a.ef=b[1]||a.ia,a.ih=b[2]||a.Y}function Eb(a,b,c){b||(b=5==a.type?dc:6==a.type?ec:fc);$b(a,b,c);cc(a,b,c)}
var fc=[],Kb=[q.prototype.va,q.prototype.fb,q.prototype.Ga,q.prototype.Bb,q.prototype.xc,q.prototype.fc],bc=[q.prototype.ua,q.prototype.Xa,q.prototype.Fa,q.prototype.Ab,q.prototype.wc,q.prototype.Zb],ec=[q.prototype.za,q.prototype.qb,q.prototype.La,q.prototype.Gb,q.prototype.zc,q.prototype.mc],dc=[q.prototype.Da,q.prototype.rb,q.prototype.Oa,q.prototype.Hb,q.prototype.Gc,q.prototype.oc];
if(db)var Jb=[q.prototype.ra,q.prototype.Ta,q.prototype.Ea,q.prototype.ub,q.prototype.vc,q.prototype.Nb],Ib=[q.prototype.X,q.prototype.ka,q.prototype.ba,q.prototype.ma,q.prototype.qa,q.prototype.pa],gc=[q.prototype.xa,q.prototype.pb,q.prototype.Ja,q.prototype.Cb,q.prototype.yc,q.prototype.ic];
function hc(a,b){Ia.call(this,"CPU",a,hc);var c=a.cycles||b,d=a.multiplier||1;this.T={};this.T.ad=c;this.T.Bd=d;this.T.Df=Math.round(this.T.ad/1E4)/100;this.T.te=this.T.Df*this.T.Bd;this.ea.Sb=!1;this.ea.Qh=!1;this.ea.Nh=a.autoStart;this.ea.Ph=!1;this.ea.zf=!1;this.T.Ff=this.T.ve=0;this.T.Gf=a.csStart;this.T.Ne=a.csInterval;this.T.Oe=a.csStop;this.wj=this.mh.bind(this);ab(this)}Qa(hc);var ic=["power","reset"];l=hc.prototype;
function hc(a,b){Ia.call(this,"CPU",a,hc);var c=a.cycles||b,d=a.multiplier||1;this.T={};this.T.ad=c;this.T.Bd=d;this.T.Df=Math.round(this.T.ad/1E4)/100;this.T.te=this.T.Df*this.T.Bd;this.ea.Sb=!1;this.ea.Qh=!1;this.ea.Nh=a.autoStart;this.ea.Ph=!1;this.ea.zf=!1;this.T.Ff=this.T.ve=0;this.T.Gf=a.csStart;this.T.Ne=a.csInterval;this.T.Oe=a.csStop;this.xj=this.mh.bind(this);ab(this)}Qa(hc);var ic=["power","reset"];l=hc.prototype;
l.pc=function(a,b,c,d){this.aa=a;this.ha=b;this.Ia=d;for(b=0;b<ic.length;b++)(c=this.la[ic[b]])&&this.aa.zb(null,ic[b],c);this.qd=kb(a,"FPU");this.P=kb(a,"ChipSet");a=jc(a,"autoStart");null!=a&&(this.ea.Nh="true"==a?!0:"false"==a?!1:!!a);ab(this)};l.reset=function(){};l.save=function(){return null};l.restore=function(){return!1};l.Vb=function(a,b){if(!b){if(a&&this.restore){kc(this);if(!this.restore(a))return!1;lc(this)}else this.reset();this.rc("No debugger detected")}mc(this);return!0};
l.Ub=function(a){return a?this.save():!0};function nc(a){(a.ea.Nh||void 0===a.la.run)&&a.mh(!0)}l.Sh=function(){return 0};function lc(a){void 0===a.T.Gf&&(a.T.Gf=0);void 0===a.T.Ne&&(a.T.Ne=-1);void 0===a.T.Oe&&(a.T.Oe=-1);a.ea.zf=0<=a.T.Gf&&0<a.T.Ne;a.ea.zf&&(a.T.Ff=0,a.T.ve=a.T.Gf-a.$c)}
l.zb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.la[b]=c;a=!0;break;case "run":this.la[b]=c;c.onclick=function(){var a;if(a=d.aa)if(a=d.aa,a.ea.Rb)a=!0;else{var b=null,c,h=Ta(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.ea.ne);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.ea.Rb);c++);c==h.length&&(b=a);n("The "+b.type+" component ("+b.id+") is not "+(b.ea.ne?"powered yet":"ready yet"+(b.Bf?" (waiting for notification)":""))+".");a=!1}a&&(d.ea.Sb?oc(d,!0):d.mh(!0))};
@ -61,9 +61,9 @@ a=!0;break;case "speed":this.la[b]=c;a=!0;break;case "setSpeed":this.la[b]=c,c.o
function sc(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.T.Bd&&a.T.Ad&&(d=a.T.Ad/a.T.Df);a.T.Xh=Math.round(1E3/30);a.T.Xk=Math.floor(a.T.ad/c*d);a.T.tg=Math.floor(a.T.ad/30*d);a.T.Zh=Math.floor(a.T.ad/60*d);a.T.Yh=Math.floor(a.T.ad/2*d);b||(a.T.Re=a.T.tg,a.T.Qe=a.T.Zh,a.T.Pe=a.T.Yh);a.T.ug=0}function tc(a,b){var c=a.$c+a.zc+a.mc-a.A;b&&1<a.T.Bd&&a.T.Ad>a.T.Df&&(c=Math.round(c/a.T.Bd));return c}function kc(a){a.T.Ad=0;a.$c=a.zc=a.mc=a.A=0;lc(a);pc(a,1)}
function pc(a,b,c){if(void 0!==b){.8>a.T.Ad/a.T.te&&(b=1);a.T.Bd=b;b=a.T.Df*a.T.Bd;if(a.T.te!=b){a.T.te=b;b=a.T.te.toFixed(2)+"Mhz";var d=a.la.setSpeed;d&&(d.textContent=b);a.rc("target speed: "+b)}c&&a.aa&&uc(a.aa)}rc(a,a.zc);a.zc=0;a.T.ue=ka();a.T.Rd=0;sc(a)}
l.mh=function(a){if($a(this,!0)){if(!this.ea.Sb){pc(this);this.aa&&this.aa.start(this.T.ue,tc(this));this.ea.Sb=!0;this.ea.Qh=!0;this.P&&vc(this.P);var b=this.la.run;b&&(b.textContent="Halt");this.aa&&(this.aa.Xd(),a&&uc(this.aa,!0))}this.T.ug>=this.T.ad&&sc(this,!0);this.T.Se=0;this.T.Ef=ka();this.T.Rd&&(a=this.T.Ef-this.T.Rd,a>this.T.Xh&&(this.T.ue+=a,this.T.ue>this.T.Ef&&(this.T.ue=this.T.Ef)));try{do{var c=this.ea.zf?1:this.T.Xk;if(this.P){wc(this.P);var d=this.P;a=c;var e=d.K[0];if(e.Od){var f=
(tc(d.A,d.ba)-e.ld)/d.Ga|0,g=xc(d,0)-f;6==e.mode&&(g-=f);var h=g*d.Ga|0;6==e.mode&&(h>>=1);a>h&&(a=h)}var c=a,k=this.P;a=c;if(k.B&&k.B[11]&64){var m=k.ia-tc(k.A,k.ba);0<m&&a>m&&(a=m)}c=a}try{this.mj(c)}catch(x){if("number"!=typeof x)throw x;}var p=this.mc-this.A;this.zc+=p;this.T.Se+=p;rc(this,0,!0);a=p;this.ea.zf&&(b=!1,this.T.Ff=this.T.Ff+this.Sh()|0,this.T.ve-=a,0>=this.T.ve&&(this.T.ve+=this.T.Ne,b=!0),0<=this.T.Oe&&this.T.Oe<=tc(this)&&(this.T.Ne=this.T.Oe=-1,lc(this),oc(this),b=!0),b&&this.rc(tc(this)+
" cycles: checksum="+ea(this.T.Ff)));this.T.Qe-=p;0>=this.T.Qe&&(this.T.Qe+=this.T.Zh,this.aa&&yc(this.aa));this.T.Pe-=p;0>=this.T.Pe&&(this.T.Pe+=this.T.Yh,this.aa&&this.aa.Xd());this.T.Re-=p;if(0>=this.T.Re){this.T.Re+=this.T.tg;break}}while(this.ea.Sb)}catch(x){oc(this);mc(this);this.aa&&this.aa.stop(ka(),tc(this));$a(this,!1);cb(this,x.stack||x.message);return}c=setTimeout;d=this.wj;this.T.Rd=ka();e=this.T.Xh;this.T.Se&&(e=Math.round(e*this.T.Se/this.T.tg));e-=this.T.Rd-this.T.Ef;if(f=this.T.Rd-
this.T.ue)this.T.Ad=Math.round(this.zc/(10*f))/100,864E5<=f&&(this.$c=0,this.P&&wc(this.P,!0),pc(this));if(0>e||this.T.Ad<this.T.te)e=0;this.T.ug+=this.T.Se;this.T.Rd+=e;c(d,e)}else mc(this),this.aa&&this.aa.stop(ka(),tc(this))};l.mj=function(){return 0};function oc(a,b){a.ea.Qc&&(a.ea.hg=!0);a.mc-=a.A;a.A=0;rc(a,a.zc);a.zc=0;if(a.ea.Sb){a.ea.Sb=!1;a.P&&vc(a.P);var c=a.la.run;c&&(c.textContent="Run")}a.ea.Le=b}function mc(a){a.aa&&(yc(a.aa,void 0),a.aa.Xd())}
(tc(d.A,d.ba)-e.ld)/d.Ga|0,g=xc(d,0)-f;6==e.mode&&(g-=f);var h=g*d.Ga|0;6==e.mode&&(h>>=1);a>h&&(a=h)}var c=a,k=this.P;a=c;if(k.B&&k.B[11]&64){var m=k.ia-tc(k.A,k.ba);0<m&&a>m&&(a=m)}c=a}try{this.nj(c)}catch(x){if("number"!=typeof x)throw x;}var p=this.mc-this.A;this.zc+=p;this.T.Se+=p;rc(this,0,!0);a=p;this.ea.zf&&(b=!1,this.T.Ff=this.T.Ff+this.Sh()|0,this.T.ve-=a,0>=this.T.ve&&(this.T.ve+=this.T.Ne,b=!0),0<=this.T.Oe&&this.T.Oe<=tc(this)&&(this.T.Ne=this.T.Oe=-1,lc(this),oc(this),b=!0),b&&this.rc(tc(this)+
" cycles: checksum="+ea(this.T.Ff)));this.T.Qe-=p;0>=this.T.Qe&&(this.T.Qe+=this.T.Zh,this.aa&&yc(this.aa));this.T.Pe-=p;0>=this.T.Pe&&(this.T.Pe+=this.T.Yh,this.aa&&this.aa.Xd());this.T.Re-=p;if(0>=this.T.Re){this.T.Re+=this.T.tg;break}}while(this.ea.Sb)}catch(x){oc(this);mc(this);this.aa&&this.aa.stop(ka(),tc(this));$a(this,!1);cb(this,x.stack||x.message);return}c=setTimeout;d=this.xj;this.T.Rd=ka();e=this.T.Xh;this.T.Se&&(e=Math.round(e*this.T.Se/this.T.tg));e-=this.T.Rd-this.T.Ef;if(f=this.T.Rd-
this.T.ue)this.T.Ad=Math.round(this.zc/(10*f))/100,864E5<=f&&(this.$c=0,this.P&&wc(this.P,!0),pc(this));if(0>e||this.T.Ad<this.T.te)e=0;this.T.ug+=this.T.Se;this.T.Rd+=e;c(d,e)}else mc(this),this.aa&&this.aa.stop(ka(),tc(this))};l.nj=function(){return 0};function oc(a,b){a.ea.Qc&&(a.ea.hg=!0);a.mc-=a.A;a.A=0;rc(a,a.zc);a.zc=0;if(a.ea.Sb){a.ea.Sb=!1;a.P&&vc(a.P);var c=a.la.run;c&&(c.textContent="Run")}a.ea.Le=b}function mc(a){a.aa&&(yc(a.aa,void 0),a.aa.Xd())}
function zc(a,b,c,d){this.A=a;this.Ia=a.Ia;this.id=b;this.Tf=c||"";this.ja=0;this.Za=65535;this.C=this.Za+1;this.sb=this.nc=this.ext=this.lb=this.type=this.ya=0;this.hc=-1;this.U=this.Nc=2;this.N=this.sa=65535;this.L=this.Wh;this.I=this.Ih;this.K=this.Kh;this.B={ja:-1,ya:0,Za:0,lb:0,type:0,ext:0,hc:-1};1==this.id&&(this.cf=0,this.D=null,this.pe=!1,this.H=Array(32),this.G=[]);Ac(this,!0,d)}l=zc.prototype;l.Wh=function(a){this.ja=a&65535;return this.ya=this.ja<<4};
l.Cf=function(a,b){var c,d,e=this.A;a&=65535;a&4?(c=e.Zb.ya,d=c+e.Zb.Za|0):(c=e.ub,d=e.wc);if(c){c=c+(a&65528)|0;if(d-c|0)return e.A-=15,Bc(this,c,a,b);6>this.id&&t.call(e,b&&3==this.id?10:13,a&65532)}return-1};l.Uk=function(a){var b=this.A;a=b.Ab+(a<<2);var c=b.ga(a);b.W&=-769;return this.load(b.ga(a+2))+c|0};l.Tk=function(a){var b=this.A;a<<=3;var c=b.Ab+a|0;if(7<=(b.xc-c|0))return this.D=!0,a=Bc(this,c,a),-1!==a&&(a+=this.cf),a;t.call(b,13,a|2);return-1};l.Ih=function(a){return this.ya+a|0};
l.Kh=function(a){return this.ya+a|0};l.Hh=function(a,b){return(a>>>0)+b<=this.C?this.ya+a|0:this.wf()};l.zj=function(a,b){return(a>>>0)+b>this.C?this.ya+a|0:this.wf()};l.wf=function(){t.call(this.A,13,0);return-1};l.Jh=function(a,b){return(a>>>0)+b<=this.C?this.ya+a|0:this.xf()};l.Aj=function(a,b){return(a>>>0)+b>this.C?this.ya+a|0:this.xf()};l.xf=function(){t.call(this.A,13,0);return-1};
@ -99,7 +99,7 @@ var f=a[4],g;for(g=0;g<f.length-1;g+=2){var h=f[g],k=f[g+1];if(k&&k.length<e.ha)
this.L=b[2];this.wa=b[3];this.Ea=b[4];this.F=b[5];this.C=b[6];b=a[3];this.$c=b[1];pc(this,b[2]);return d};function de(a,b){switch(b){case "CS":return a.Ba;case "DS":return a.xa;case "SS":return a.S;case "ES":return a.pa;case "NULL":return a.Yf;default:return[0,b,0,0,""]}}function ee(a,b){null!=Pc(a,A(a),b)&&(a.L|=a.ae)}function Kc(a,b){-1!==a.xa.load(b)&&(a.L|=a.ae)}
function Ec(a,b,c){var d=w(a);-1!==a.S.load(b)&&(v(a,d),a.S.yd?(a.Xf=a.S.ya+a.S.sa|0,a.$d=a.S.ya+a.S.Za|0):(a.Xf=a.S.ya+a.S.Za|0,a.$d=a.S.ya),c||(a.L|=4))}function Lc(a,b){-1!==a.pa.load(b)&&(a.L|=a.ae)}function A(a){return a.Y-a.Ba.ya|0}function D(a,b){a.Y=a.Ba.ya+(b&a.N)|0}function fe(a,b){a.Y=b;a.Wf=(a.Ba.ya>>>0)+(a.Ba.Za>>>0)+1;a.za=a.Ba.sb;Yd(a)}function Pc(a,b,c,d){var e=a.Ba;e.cf=b;e.D=d;b=e.load(c);return-1!==b?(fe(a,b+(a.Ba.cf&a.Ba.N)),a.Ba.pe):null}
function ge(a,b){var c=(a.Y>>>0)+b;c>a.Wf&&(8088>=a.ca||a.Ba.Za==a.Ba.sa?c=a.Ba.ya+(c-a.Wf&a.N):t.call(a,13,0));return c|0}function he(a){a.Y=a.Dd}function w(a){return a.Nb&~a.S.sa|a.ra-a.S.ya}function v(a,b){a.Nb=b;a.ra=a.S.ya+(b&a.S.sa)|0}function ie(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&je(a),g&2&&ke(a),g&4&&le(a),g&8&&me(a),g&16&&ne(a),g&32&&oe(a))}f?(a.Hd=d,a.sd=b):(a.Hd=b,a.sd=d);a.Kd=c;a.Id=d;a.resultType=e}
function F(a,b,c,d,e){a.resultType=c|26;a.Id=b;d?pe(a):qe(a);e?re(a):se(a);return b}function ve(a,b,c,d){c&d?pe(a):qe(a);(b^c)&d?re(a):se(a)}function we(a){return je(a)?1:0}function je(a){a.resultType&1&&(a.W&=-2,(a.Hd^(a.Hd^a.Kd)&(a.Kd^a.sd))&a.resultType&-2147450752&&(a.W|=1),a.resultType&=-2);return a.W&1}function ke(a){a.resultType&2&&(a.W&=-5,38505>>((a.Id^a.Id>>4)&15)&1&&(a.W|=4),a.resultType&=-3);return a.W&4}
function F(a,b,c,d,e){a.resultType=c|26;a.Id=b;d?pe(a):qe(a);e?re(a):se(a);return b}function te(a,b,c,d){c&d?pe(a):qe(a);(b^c)&d?re(a):se(a)}function we(a){return je(a)?1:0}function je(a){a.resultType&1&&(a.W&=-2,(a.Hd^(a.Hd^a.Kd)&(a.Kd^a.sd))&a.resultType&-2147450752&&(a.W|=1),a.resultType&=-2);return a.W&1}function ke(a){a.resultType&2&&(a.W&=-5,38505>>((a.Id^a.Id>>4)&15)&1&&(a.W|=4),a.resultType&=-3);return a.W&4}
function le(a){a.resultType&4&&(a.W&=-17,(a.sd^a.Hd^a.Kd)&16&&(a.W|=16),a.resultType&=-5);return a.W&16}function me(a){a.resultType&8&&(a.W&=-65,a.Id&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.W|=64),a.resultType&=-9);return a.W&64}function ne(a){a.resultType&16&&(a.W&=-129,a.Id&a.resultType&-2147450752&&(a.W|=128),a.resultType&=-17);return a.W&128}
function oe(a){a.resultType&32&&(a.W&=-2049,(a.Hd^a.sd)&(a.Kd^a.sd)&a.resultType&-2147450752&&(a.W|=2048),a.resultType&=-33);return a.W&2048}function qe(a){a.resultType&=-2;a.W&=-2}function xe(a){a.resultType&=-5;a.W&=-17}function ye(a){a.resultType&=-9;a.W&=-65}function se(a){a.resultType&=-33;a.W&=-2049}function pe(a){a.resultType&=-2;a.W|=1}function ze(a){a.resultType&=-5;a.W|=16}function Ae(a){a.resultType&=-9;a.W|=64}function re(a){a.resultType&=-33;a.W|=2048}
function Mc(a){return a.W&-2262|je(a)|ke(a)|le(a)|me(a)|ne(a)|oe(a)}function Be(a,b){b=b|a.Pa&1|65520;a.Pa=a.Pa&-65536|b&65535;a.Pa&1&&Gc(a,!0)}function Nc(a,b,c){a.Pa&1||(b&=~a.ph);void 0===c&&(c=a.za);c?b=b&-12289|a.W&12288:a.Cb=(b&12288)>>12;c>a.Cb&&(b=b&-513|a.W&512);a.resultType=128;a.W=a.W&~(a.od|2261)|b&(a.od|2261)|a.qh;a.W&256&&(a.Ea|=2,a.L|=4)}
@ -115,7 +115,7 @@ function Jc(a,b,c,d){c=a.ra-c|0;0>(c-a.$d|0)&&0<=(a.$d^c)&&(8088>=a.ca||!a.S.yd&
function O(a,b,c){var d=4;1==b.length&&(d=1,c=c?1:0);if(80386>a.ca)2<b.length&&(b=b.substr(1,2));else if("PS"==b||2<b.length)d=8;a.la[b]&&(void 0===c&&(cb(a,"Value for "+b+" is invalid"),oc(a)),d=!a.ea.Sb||a.ea.Ph?ea(c,d):"--------".substr(0,d),a.la[b].textContent!=d&&(a.la[b].textContent=d))}
l.Xd=function(a){if(this.xh&&(a||!this.ea.Sb||this.ea.Ph)){O(this,"EAX",this.J);O(this,"EBX",this.D);O(this,"ECX",this.G);O(this,"EDX",this.M);O(this,"ESP",w(this));O(this,"EBP",this.K);O(this,"ESI",this.I);O(this,"EDI",this.H);O(this,"CS",this.Ba.ja);O(this,"DS",this.xa.ja);O(this,"SS",this.S.ja);O(this,"ES",this.pa.ja);O(this,"EIP",A(this));var b=Mc(this);O(this,"PS",b);O(this,"V",b&2048);O(this,"D",b&1024);O(this,"I",b&512);O(this,"T",b&256);O(this,"S",b&128);O(this,"Z",b&64);O(this,"A",b&16);
O(this,"P",b&4);O(this,"C",b&1);80386==this.ca&&(O(this,"FS",this.Ta.ja),O(this,"GS",this.Xa.ja),O(this,"CR0",this.Pa),O(this,"CR2",this.rd),O(this,"CR3",this.dd))}if(b=this.la.speed)b.textContent=this.ea.Sb&&this.T.Ad?this.T.Ad.toFixed(2)+"Mhz":"Stopped";this.parent.Xd.call(this,a)};
l.mj=function(a){this.ea.Le=!0;this.ea.Hj=!1;this.ea.Qh=!1;this.mc=this.A=a;this.P&&!a&&wc(this.P);a||(this.L|=4);do{if(a=this.L&3312)this.wa|=a;else if(this.Dd=this.Y,this.va=this.xa,this.rb=this.S,this.F=this.C=-1,this.wa&3072&&Yd(this),this.wa=this.L&256,this.Ea){a:if(!(this.L&4)){a=80286>this.ca?0:1;for(var b=0;2>b;b++){switch(a){case 0:if(this.Ea&1&&this.W&512){var c=Ke(this.P);if(-1<=c&&(this.Ea&=-2,0<=c)){this.Ea&=-5;Le.call(this,c);break a}}break;case 1:if(this.Ea&2){this.Ea&=-3;80386<=this.ca&&
l.nj=function(a){this.ea.Le=!0;this.ea.Hj=!1;this.ea.Qh=!1;this.mc=this.A=a;this.P&&!a&&wc(this.P);a||(this.L|=4);do{if(a=this.L&3312)this.wa|=a;else if(this.Dd=this.Y,this.va=this.xa,this.rb=this.S,this.F=this.C=-1,this.wa&3072&&Yd(this),this.wa=this.L&256,this.Ea){a:if(!(this.L&4)){a=80286>this.ca?0:1;for(var b=0;2>b;b++){switch(a){case 0:if(this.Ea&1&&this.W&512){var c=Ke(this.P);if(-1<=c&&(this.Ea&=-2,0<=c)){this.Ea&=-5;Le.call(this,c);break a}}break;case 1:if(this.Ea&2){this.Ea&=-3;80386<=this.ca&&
(this.qb[6]|=16384);Le.call(this,1);break a}}a=1-a}}if(this.Ea&4){this.L=this.A=0;break}}this.L=0;this.ma[this.na()].call(this)}while(0<this.A);return this.ea.Le?this.mc-this.A:void 0===this.ea.Le?0:-1};Ea(function(){for(var a=Za(document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new Rc(d);Ya(d,c)}});
function Me(a){Ia.call(this,"FPU",a,Me);this.ca=a.model||8087;(a=a.stepping)&&ca(a,16);this.K=new Float64Array(8);this.da=new Int32Array(this.K.buffer);this.ba=new Float32Array(1);this.ka=new Int32Array(this.ba.buffer);this.S=new Float64Array(1);this.I=new Int32Array(this.S.buffer);this.G=Array(3);this.ha=this.aa=-1;this.L=this.R=this.X=this.B=0;this.Y=new Float64Array(1);this.ia=new Int32Array(this.Y.buffer);this.ia[0]=0;this.ia[1]=268402688;Ne(this)}Qa(Me);l=Me.prototype;
l.pc=function(a,b,c){this.A=c;this.P=kb(a,"ChipSet");ab(this)};l.Vb=function(a,b){if(!b)if(!a||!this.restore)Ne(this);else if(!this.restore(a))return!1;return!0};l.Ub=function(a){return a?this.save():!0};l.save=function(){var a=new ce(this),b=[],c=0;b[c++]=this.H;b[c++]=this.Z|this.C<<11;b[c++]=Oe(this);for(var d=0;d<this.K.length;d++)b[c++]=this.K[d];C(a,0,b);return a.data()};
@ -124,7 +124,7 @@ function Ve(a,b){return isFinite(b)?!0:!Ue(a,Infinity===b?8:16)}function We(a,b,
function $e(a,b,c){if(null!=b&&null!=c){var d=0;isNaN(b)||isNaN(c)?d=17664:(b-=c,0>b?d=256:0===b&&(d=16384));a.Z=a.Z&-18177|d;return!0}return!1}function af(a,b,c){if(null==b)return null;var d=a.H&3072;0==d?(d=Math.round(b),.5===d-b&&d%2&&d--):d=1024==d||3072==d&&0<b?Math.floor(b):Math.ceil(b);if(c){if(d>=c){if(Ue(a,1))return null;d=-c}else if(d<-c){if(Ue(a,1))return null;d=-c}a.I[0]=d|0;2147483648<c&&(a.I[1]=d/4294967296|0,!a.I[1]&&0>d&&(a.I[1]=-1))}return d}
function bf(a,b){var c=3;if(a.D&1<<b){var d=a.K[b],c=0;0===d?c=1:isFinite(d)||(c=2)}return c}function Oe(a){for(var b=0,c=a.K.length-1;0<=c;c--)b<<=2,b|=bf(a,c);return b}function Qe(a,b){a.D=0;for(var c=1;128>=c;c<<=1)3!=(b&3)&&(a.D|=c),b>>=2}function cf(a){var b=a.C+0&7;return a.D&1<<b?(a.ba[0]=a.K[b],!0):Ue(a,1)?!1:(a.ba[0]=a.Y[0],!0)}function df(a){var b=a.C+0&7;return a.D&1<<b?(a.S[0]=a.K[b],!0):Ue(a,1)?!1:(a.S[0]=a.Y[0],!0)}
function P(a,b){var c=null,d=a.C+b&7;a.D&1<<d?c=a.K[d]:Ue(a,1)||(c=a.Y[0]);return c}function Q(a,b,c){return null!=c&&(isNaN(c)?!Ue(a,1):1)?(b=a.C+b&7,a.K[b]=c,a.D|=1<<b,!0):!1}function ef(a,b,c){var d=null;b=a.C+b&7;if(c||a.D&1<<b||!Ue(a,1)){d=b<<1;c=a.da[d];d=a.da[d+1];b=d>>20&2047;var e=2147483648|(d&1048575)<<11|c>>>21;2047==b?b=32767:b?b+=15360:e&=2147483647;a.G[0]=c<<11;a.G[1]=e;a.G[2]=d>>16&32768|b;d=a.G}return d}function ff(a){return a.A.ga(a.A.F)<<16>>16}
function gf(a){return a.A.fa(a.A.F)}function hf(a){a.ka[0]=a.A.fa(a.A.F);return a.ba[0]}function jf(a){a.I[0]=a.A.fa(a.A.F);a.I[1]=a.A.fa(a.A.F+4);return a.S[0]}function kf(a){a.G[0]=a.A.fa(a.A.F);a.G[1]=a.A.fa(a.A.F+4);a.G[2]=a.A.ga(a.A.F+8);return a.G}l.nh=function(){this.A.Va(this.A.F,this.I[0])};l.jj=function(){this.A.Va(this.A.F,this.I[0]);this.A.Va(this.A.F+4,this.I[1])};l.lj=Me.prototype.nh;l.kj=Me.prototype.jj;
function gf(a){return a.A.fa(a.A.F)}function hf(a){a.ka[0]=a.A.fa(a.A.F);return a.ba[0]}function jf(a){a.I[0]=a.A.fa(a.A.F);a.I[1]=a.A.fa(a.A.F+4);return a.S[0]}function kf(a){a.G[0]=a.A.fa(a.A.F);a.G[1]=a.A.fa(a.A.F+4);a.G[2]=a.A.ga(a.A.F+8);return a.G}l.nh=function(){this.A.Va(this.A.F,this.I[0])};l.kj=function(){this.A.Va(this.A.F,this.I[0]);this.A.Va(this.A.F+4,this.I[1])};l.mj=Me.prototype.nh;l.lj=Me.prototype.kj;
function lf(a){a.A.Va(a.A.F,a.G[0]);a.A.Va(a.A.F+4,a.G[1]);a.A.bb(a.A.F+8,a.G[2])}function mf(a,b){var c=b[1],d=(b[2]&32768)>>4,e=b[2]&32767,f=b[0]>>>11|c<<21,c=c>>11&1048575;32767==e?e=2047:e&&(e+=-15360,0>=e&&(e=2047,f=c=0));a.I[0]=f;a.I[1]=c|(d|e)<<20;return a.S[0]}function nf(a,b){for(var c=0,d=1;b--;)c+=(a&15)*d,d*=10,a>>=4;return c}function of(a,b){for(var c=0,d=0;b--;)c|=a%10<<d,a/=10,d+=4;return c}
function pf(a){var b=null,c=1<<a.C;if(!(a.D&c)&&(a.Z&=-513,Ue(a,65)))return b;a.D&=~c;b=a.K[a.C];a.C=a.C+1&7;return b}function qf(a,b){if(null!=b){var c=a.C-1&7,d=1<<c;if(a.D&d&&(a.Z|=512,Ue(a,65)))return;if(isNaN(b)&&Ue(a,1)){if(Ue(a,1))return;b=NaN}a.K[a.C=c]=b;a.D|=d}}
function rf(a,b){var c,d=a.A;c=d.Tb(b);a.H=c&-57409;c=d.Tb(b+=d.U);a.Z=c&-14337;a.C=(c&14336)>>11;Pe(a);Qe(a,d.Tb(b+=d.U));!(d.Pa&1)||d.W&131072?(a.L=d.Tb(b+=d.U),c=d.Tb(b+=d.U),a.X=c&2047,a.L|=(c&-4096)<<4,a.ha=-1,a.R=d.Tb(b+=d.U),a.R|=(d.Tb(b+=d.U)&-4096)<<4,a.aa=-1):(a.L=d.Tb(b+=d.U),c=d.Tb(b+=d.U),a.ha=c&65535,a.X=c>>16&2047,a.R=d.Tb(b+=d.U),a.aa=d.Tb(b+=d.U)&65535);return b+d.U}
@ -133,17 +133,17 @@ function Af(){$e(this,P(this,0),P(this,this.B))}function Bf(){$e(this,P(this,0),
function Lf(){for(var a=this.A,b=sf(this,a.F),c=0;c<this.K.length;c++){var d=ef(this,c,!0);a.Va(b,d[0]);a.Va(b+=4,d[1]);a.bb(b+=4,d[2]);b+=2}Ne(this)}function Mf(){sf(this,this.A.F);this.H|=63}function Nf(){Q(this,this.B,P(this,0))&&pf(this)}function Of(){Nf.call(this)}function Pf(){this.A.bb(this.A.F,this.H)}function Qf(){this.A.bb(this.A.F,this.Z|this.C<<11)}function Rf(){80287<=this.ca&&(this.A.J=this.A.J&-65536|this.Z|this.C<<11)}
function Sf(){var a=P(this,0);Q(this,0,P(this,this.B));Q(this,this.B,a)}function Tf(){Sf.call(this)}
var Uf={216:{0:function(){Q(this,0,We(this,P(this,0),hf(this)))},1:function(){Q(this,0,Ye(this,P(this,0),hf(this)))},2:function(){$e(this,P(this,0),hf(this))},3:function(){$e(this,P(this,0),hf(this))&&pf(this)},4:function(){Q(this,0,Xe(this,P(this,0),hf(this)))},5:function(){Q(this,0,Xe(this,hf(this),P(this,0)))},6:Df,7:Df,48:function(){Q(this,0,We(this,P(this,0),P(this,this.B)))},49:function(){Q(this,0,Ye(this,P(this,0),P(this,this.B)))},50:Af,51:Bf,52:function(){Q(this,0,Xe(this,P(this,0),P(this,
this.B)))},53:function(){Q(this,0,Xe(this,P(this,this.B),P(this,0)))},54:function(){Q(this,0,Ze(this,P(this,0),P(this,this.B)))},55:function(){Q(this,0,Ze(this,P(this,this.B),P(this,0)))}},217:{0:function(){qf(this,hf(this))},2:function(){cf(this)&&this.lj()},3:function(){cf(this)&&(this.lj(),pf(this))},4:Jf,5:If,6:Mf,7:Pf,48:function(){qf(this,P(this,this.B))},49:Sf,50:function(){},51:Of,64:function(){Q(this,0,-P(this,0))},65:function(){Q(this,0,Math.abs(P(this,0)))},68:function(){$e(this,P(this,
this.B)))},53:function(){Q(this,0,Xe(this,P(this,this.B),P(this,0)))},54:function(){Q(this,0,Ze(this,P(this,0),P(this,this.B)))},55:function(){Q(this,0,Ze(this,P(this,this.B),P(this,0)))}},217:{0:function(){qf(this,hf(this))},2:function(){cf(this)&&this.mj()},3:function(){cf(this)&&(this.mj(),pf(this))},4:Jf,5:If,6:Mf,7:Pf,48:function(){qf(this,P(this,this.B))},49:Sf,50:function(){},51:Of,64:function(){Q(this,0,-P(this,0))},65:function(){Q(this,0,Math.abs(P(this,0)))},68:function(){$e(this,P(this,
0),0)},69:function(){this.Z&=-18177;this.da[((this.C+0&7)<<1)+1]&-2147483648&&(this.Z|=512);if(3==bf(this,this.C))this.Z|=16640;else{var a=P(this,0);this.Z=isNaN(a)?this.Z|256:0===a?this.Z|16384:Infinity===a||-Infinity===a?this.Z|1280:this.Z|1024}},80:function(){qf(this,1)},81:function(){qf(this,tf)},82:function(){qf(this,uf)},83:function(){qf(this,vf)},84:function(){qf(this,wf)},85:function(){qf(this,xf)},86:function(){qf(this,0)},96:function(){Q(this,0,Math.pow(2,P(this,0))-1)},97:function(){Q(this,
1,P(this,1)*Math.log(P(this,0))/Math.LN2)&&pf(this)},98:function(){Q(this,0,Math.tan(P(this,0)))&&qf(this,1)},99:function(){Q(this,1,Math.atan2(P(this,1),P(this,0)))&&pf(this)},100:function(){var a=P(this,0);null!=a&&(this.S[0]=a,Q(this,0,(this.I[1]>>20&2047)-1023),this.I[1]=(this.I[1]|1072693248)&-1073741825,qf(this,this.S[0]))},102:function(){this.C=this.C-1&7;this.Z&=-513},103:function(){this.C=this.C+1&7;this.Z&=-513},112:function(){Q(this,0,P(this,0)%P(this,1))},113:function(){Q(this,1,P(this,
1)*Math.log(P(this,0)+1)/Math.LN2)&&pf(this)},114:function(){var a=P(this,0),b=null;if(0<=a||!Ue(this,1))b=Math.sqrt(a),Ve(this,b)||(b=null);Q(this,0,b)},116:function(){Q(this,0,af(this,P(this,0),yf))},117:function(){var a=P(this,0),b=P(this,1);null!=a&&null!=b&&Q(this,0,a*Math.pow(2,0<b?Math.floor(b):Math.ceil(b)))}},218:{0:function(){Q(this,0,We(this,P(this,0),gf(this)))},1:function(){Q(this,0,Ye(this,P(this,0),gf(this)))},2:function(){$e(this,P(this,0),gf(this))},3:function(){$e(this,P(this,0),
gf(this))&&pf(this)},4:function(){Q(this,0,Xe(this,P(this,0),gf(this)))},5:function(){Q(this,0,Xe(this,gf(this),P(this,0)))},6:function(){Q(this,0,Ze(this,P(this,0),gf(this)))},7:function(){Q(this,0,Ze(this,gf(this),P(this,0)))}},219:{0:function(){qf(this,gf(this))},2:function(){null!=af(this,P(this,0),2147483648)&&this.nh()},3:function(){null!=af(this,P(this,0),2147483648)&&(this.nh(),pf(this))},5:function(){qf(this,mf(this,kf(this)))},7:function(){ef(this,0)&&(lf(this),pf(this))},64:function(){8087==
this.ca&&(this.H&=-129)},65:function(){8087==this.ca&&(this.H|=128)},66:zf,67:Ff,68:function(){},115:function(){}},220:{0:function(){Q(this,0,We(this,P(this,0),jf(this)))},1:function(){Q(this,0,Ye(this,P(this,0),jf(this)))},2:function(){$e(this,P(this,0),jf(this))},3:function(){$e(this,P(this,0),jf(this))&&pf(this)},4:function(){Q(this,0,Xe(this,P(this,0),jf(this)))},5:function(){Q(this,0,Xe(this,jf(this),P(this,0)))},6:function(){Q(this,0,Ze(this,P(this,0),jf(this)))},7:function(){Q(this,0,Ze(this,
jf(this),P(this,0)))},48:function(){Q(this,this.B,We(this,P(this,this.B),P(this,0)))},49:function(){Q(this,this.B,Ye(this,P(this,this.B),P(this,0)))},50:function(){Af.call(this)},51:Cf,52:function(){Q(this,this.B,Xe(this,P(this,0),P(this,this.B)))},53:function(){Q(this,this.B,Xe(this,P(this,this.B),P(this,0)))},54:function(){Q(this,this.B,Ze(this,P(this,0),P(this,this.B)))},55:function(){Q(this,this.B,Ze(this,P(this,this.B),P(this,0)))}},221:{0:function(){qf(this,jf(this))},2:function(){df(this)&&
this.kj()},3:function(){df(this)&&(this.kj(),pf(this))},4:Kf,6:Lf,7:Qf,48:Ef,49:Tf,50:function(){Q(this,this.B,P(this,0))},51:Nf},222:{0:function(){Q(this,0,We(this,P(this,0),ff(this)))},1:function(){Q(this,0,Ye(this,P(this,0),ff(this)))},2:function(){$e(this,P(this,0),ff(this))},3:function(){$e(this,P(this,0),ff(this))&&pf(this)},4:function(){Q(this,0,Xe(this,P(this,0),ff(this)))},5:function(){Q(this,0,Xe(this,ff(this),P(this,0)))},6:function(){Q(this,0,Ze(this,P(this,0),ff(this)))},7:function(){Q(this,
this.lj()},3:function(){df(this)&&(this.lj(),pf(this))},4:Kf,6:Lf,7:Qf,48:Ef,49:Tf,50:function(){Q(this,this.B,P(this,0))},51:Nf},222:{0:function(){Q(this,0,We(this,P(this,0),ff(this)))},1:function(){Q(this,0,Ye(this,P(this,0),ff(this)))},2:function(){$e(this,P(this,0),ff(this))},3:function(){$e(this,P(this,0),ff(this))&&pf(this)},4:function(){Q(this,0,Xe(this,P(this,0),ff(this)))},5:function(){Q(this,0,Xe(this,ff(this),P(this,0)))},6:function(){Q(this,0,Ze(this,P(this,0),ff(this)))},7:function(){Q(this,
0,Ze(this,ff(this),P(this,0)))},48:function(){Q(this,this.B,We(this,P(this,this.B),P(this,0)))&&pf(this)},49:function(){Q(this,this.B,Ye(this,P(this,this.B),P(this,0)))&&pf(this)},50:Cf,51:function(){$e(this,P(this,0),P(this,1))&&null!=pf(this)&&pf(this)},52:function(){Q(this,this.B,Xe(this,P(this,0),P(this,this.B)))&&pf(this)},53:function(){Q(this,this.B,Xe(this,P(this,this.B),P(this,0)))&&pf(this)},54:function(){Q(this,this.B,Ze(this,P(this,0),P(this,this.B)))&&pf(this)},55:function(){Q(this,this.B,
Ze(this,P(this,this.B),P(this,0)))&&pf(this)}},223:{0:function(){qf(this,ff(this))},2:function(){null!=af(this,P(this,0),32768)&&this.A.bb(this.A.F,this.I[0])},3:function(){null!=af(this,P(this,0),32768)&&(this.A.bb(this.A.F,this.I[0]),pf(this))},4:function(){var a=kf(this),b=nf(a[0],8)+1E8*nf(a[1],8)+1E16*nf(a[2],2);a[2]&32768&&(b=-b);qf(this,b)},5:function(){var a;a=this.A.fa(this.A.F);a=4294967296*this.A.fa(this.A.F+4)+(a>>>0);qf(this,a)},6:function(){var a=af(this,pf(this));null!=a&&(this.G[0]=
of(a,8),this.G[1]=of(a/1E8,8),this.G[2]=of(a/1E16,2),0>a&&(this.G[2]|=32768),lf(this))},7:function(){null!=af(this,P(this,0),yf)&&(this.jj(),pf(this))},48:function(){Ef.call(this);pf(this)},49:Tf,50:Of,51:Of,52:Rf}},Vf=[zf,Ff,If,Jf,Kf,Lf,Pf,Mf,Qf,Rf];Ea(function(){for(var a=Za(document,"pcjs","fpu"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new Me(d);Ya(d,c)}});function Wf(a,b){var c=a+b+we(this)|0;ie(this,a,b,c,191);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return c&255}
of(a,8),this.G[1]=of(a/1E8,8),this.G[2]=of(a/1E16,2),0>a&&(this.G[2]|=32768),lf(this))},7:function(){null!=af(this,P(this,0),yf)&&(this.kj(),pf(this))},48:function(){Ef.call(this);pf(this)},49:Tf,50:Of,51:Of,52:Rf}},Vf=[zf,Ff,If,Jf,Kf,Lf,Pf,Mf,Qf,Rf];Ea(function(){for(var a=Za(document,"pcjs","fpu"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new Me(d);Ya(d,c)}});function Wf(a,b){var c=a+b+we(this)|0;ie(this,a,b,c,191);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return c&255}
function Xf(a,b){var c=a+b+we(this)|0;ie(this,a,b,c,this.fb|63);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return c&this.N}function Yf(a,b){var c=a+b|0;ie(this,a,b,c,191);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return c&255}function Zf(a,b){var c=a+b|0;ie(this,a,b,c,this.fb|63);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return c&this.N}
function $f(a,b){var c=a&b;F(this,c,128);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return c}function ag(a,b){this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return F(this,a&b,this.fb)&this.N}function bg(a,b){this.A-=10+(-1===this.F?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Ae(this),a;ye(this);return a}
function cg(a){if(-1===this.F)return t.call(this,6),a;var b=a,c=this.Tb(this.F),d=this.Tb(this.F+this.U);2==this.U&&(b=a<<16>>16,c=c<<16>>16,d=d<<16>>16);this.A-=this.B.bi;(b<c||b>d)&&t.call(this,5);this.L|=2;return a}function dg(a,b){var c=0;if(b){ye(this);for(var d=1;d&this.N;){if(b&d){a=c;break}d<<=1;c++}}else Ae(this);this.A-=11+3*c;return a}function eg(a,b){var c=0;if(b){ye(this);for(var d=2==this.U?15:31,e=1<<d;e;){if(b&e){a=d;break}e>>>=1;c++;d--}}else Ae(this);this.A-=11+3*c;return a}
@ -310,11 +310,11 @@ this.B.Cg)},function(){var a=this.na();Ce(this,a,this.U)&&(this.J=this.J&~this.N
this.Aa(),Je(this));this.A-=this.B.Ci},function(){var a=this.O();D(this,A(this)+a);this.A-=this.B.Dg},function(){var a=this.M&65535;Ce(this,a,1)&&(this.J=this.J&-256|Ob(this.ha,a,1,this.Y-1)&255,this.A-=this.B.Bg)},function(){var a=this.M&65535;Ce(this,a,this.U)&&(this.J=this.J&~this.N|Ob(this.ha,a,this.U,this.Y-1)&this.N,this.A-=this.B.Bg)},function(){var a=this.M&65535;Ce(this,a,1)&&(Qb(this.ha,a,1,this.J&255,this.Y-1),this.A-=this.B.Pg)},function(){var a=this.M&65535;Ce(this,a,2)&&(Qb(this.ha,
a,this.U,this.J&this.N,this.Y-1),this.A-=this.B.Pg)},ri,ri,function(){this.L|=132;this.A-=this.B.Rc},function(){this.L|=68;this.A-=this.B.Rc},function(){this.W&131072?t.call(this,13,0):(this.Ea|=4,this.A-=2,this.W&512||oc(this))},function(){je(this)?qe(this):pe(this);this.A-=2},function(){this.Hb=!1;this.yc.call(this,vi,Gh);this.Hb&&(this.J=this.J&~this.N|this.ua&this.N)},function(){this.Hb=!1;this.Ja.call(this,wi,Gh);this.Hb&&(this.J=this.J&~this.N|this.ua&this.N,this.M=this.M&~this.N|this.Ga&this.N)},
function(){qe(this);this.A-=2},function(){pe(this);this.A-=2},function(){this.za>this.Cb?t.call(this,13,0):(this.W&=-513,this.A-=this.B.ci)},function(){this.za>this.Cb?t.call(this,13,0):(this.W|=512,this.L|=4,this.A-=2)},function(){this.W&=-1025;this.A-=2},function(){this.W|=1024;this.A-=2},function(){this.yc.call(this,Tc,Gh)},function(){this.Ja.call(this,Uc,Gh)}],ei=[Yf,Kg,Wf,Mg,$f,oh,wh,ng],si=[Zf,Lg,Xf,Ng,ag,ph,xh,og],ti=[function(a,b){this.A-=-1===this.C?this.B.ec:this.B.Si;return b},qg,qg,qg,
qg,qg,qg,qg],ui=[function(a,b){this.A-=-1===this.C?this.B.Ki:this.B.Ii;return b},R,R,R,R,R,R,R],ji=[function(a,b){var c=a,d=b&this.Da;if(d){var e;(d&=7)?(e=a<<d-1,c=(a<<d|a>>8-d)&255):e=a<<7;ve(this,c,e,128)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e;(d&=7)?(e=a<<8-d,c=(a>>>d|e)&255):e=a;ve(this,c,e,128)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e=we(this);(d%=9)?(c=(a<<d|e<<d-1|a>>9-d)&255,e=a<<d-1):e<<=7;ve(this,c,e,128)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e=
we(this);(d%=9)?(c=(a>>d|e<<8-d|a<<9-d)&255,e=a<<8-d):e<<=7;ve(this,c,e,128)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e=0;8<d?c=0:(e=a<<d-1,c=e<<1&255);F(this,c,128,e&128,(c^e)&128)}return c},function(a,b){var c=b&this.Da;c&&(c=8<c?0:a>>>c-1,a=c>>>1&255,F(this,a,128,c&1,a&128));return a},R,function(a,b){var c=b&this.Da;c&&(9<c&&(c=9),c=a<<24>>24>>c-1,a=c>>1&255,F(this,a,128,c&1));return a}],ki=[function(a,b){var c=a,d=b&this.Da;if(d){var e;(d&=15)?(e=a<<d-1,c=(a<<d|a>>16-d)&65535):e=
a<<15;ve(this,c,e,32768)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e;(d&=15)?(e=a<<16-d,c=(a>>>d|e)&65535):e=a;ve(this,c,e,32768)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e=we(this);(d%=17)?(c=(a<<d|e<<d-1|a>>17-d)&65535,e=a<<d-1):e<<=15;ve(this,c,e,32768)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e=we(this);(d%=17)?(c=(a>>d|e<<16-d|a<<17-d)&65535,e=a<<16-d):e<<=15;ve(this,c,e,32768)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e=0;16<d?c=0:(e=a<<d-1,
c=e<<1&65535);F(this,c,32768,e&32768,(c^e)&32768)}return c},function(a,b){var c=b&this.Da;c&&(c=16<c?0:a>>>c-1,a=c>>>1&65535,F(this,a,32768,c&1,a&32768));return a},R,function(a,b){var c=b&this.Da;c&&(17<c&&(c=17),c=a<<16>>16>>c-1,a=c>>1&65535,F(this,a,32768,c&1));return a}],li=[function(a,b){var c=a,d=b&this.Da;d&&(c=a<<d|a>>>32-d,ve(this,c,a<<d-1,-2147483648));return c},function(a,b){var c=a,d=b&this.Da;if(d){var e=a<<32-d,c=a>>>d|e;ve(this,c,e,-2147483648)}return c},function(a,b){var c=a,d=b&this.Da;
d&&(c=we(this),c=a<<d|c<<d-1|a>>>32-d>>>1,ve(this,c,a<<d-1,-2147483648));return c},function(a,b){var c=a,d=b&this.Da;d&&(c=we(this),c=a>>>d|c<<32-d|a<<32-d<<1,ve(this,c,a<<32-d,-2147483648));return c},function(a,b){var c=a,d=b&this.Da;d&&(d=a<<d-1,c=d<<1,F(this,c,-2147483648,d&-2147483648,(c^d)&-2147483648));return c},function(a,b){var c=b&this.Da;c&&(c=a>>>c-1,a=c>>>1,F(this,a,-2147483648,c&1,a&-2147483648));return a},R,function(a,b){var c=b&this.Da;c&&(c=a>>c-1,a=c>>1,F(this,a,-2147483648,c&1));
qg,qg,qg,qg],ui=[function(a,b){this.A-=-1===this.C?this.B.Ki:this.B.Ii;return b},R,R,R,R,R,R,R],ji=[function(a,b){var c=a,d=b&this.Da;if(d){var e;(d&=7)?(e=a<<d-1,c=(a<<d|a>>8-d)&255):e=a<<7;te(this,c,e,128)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e;(d&=7)?(e=a<<8-d,c=(a>>>d|e)&255):e=a;te(this,c,e,128)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e=we(this);(d%=9)?(c=(a<<d|e<<d-1|a>>9-d)&255,e=a<<d-1):e<<=7;te(this,c,e,128)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e=
we(this);(d%=9)?(c=(a>>d|e<<8-d|a<<9-d)&255,e=a<<8-d):e<<=7;te(this,c,e,128)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e=0;8<d?c=0:(e=a<<d-1,c=e<<1&255);F(this,c,128,e&128,(c^e)&128)}return c},function(a,b){var c=b&this.Da;c&&(c=8<c?0:a>>>c-1,a=c>>>1&255,F(this,a,128,c&1,a&128));return a},R,function(a,b){var c=b&this.Da;c&&(9<c&&(c=9),c=a<<24>>24>>c-1,a=c>>1&255,F(this,a,128,c&1));return a}],ki=[function(a,b){var c=a,d=b&this.Da;if(d){var e;(d&=15)?(e=a<<d-1,c=(a<<d|a>>16-d)&65535):e=
a<<15;te(this,c,e,32768)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e;(d&=15)?(e=a<<16-d,c=(a>>>d|e)&65535):e=a;te(this,c,e,32768)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e=we(this);(d%=17)?(c=(a<<d|e<<d-1|a>>17-d)&65535,e=a<<d-1):e<<=15;te(this,c,e,32768)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e=we(this);(d%=17)?(c=(a>>d|e<<16-d|a<<17-d)&65535,e=a<<16-d):e<<=15;te(this,c,e,32768)}return c},function(a,b){var c=a,d=b&this.Da;if(d){var e=0;16<d?c=0:(e=a<<d-1,
c=e<<1&65535);F(this,c,32768,e&32768,(c^e)&32768)}return c},function(a,b){var c=b&this.Da;c&&(c=16<c?0:a>>>c-1,a=c>>>1&65535,F(this,a,32768,c&1,a&32768));return a},R,function(a,b){var c=b&this.Da;c&&(17<c&&(c=17),c=a<<16>>16>>c-1,a=c>>1&65535,F(this,a,32768,c&1));return a}],li=[function(a,b){var c=a,d=b&this.Da;d&&(c=a<<d|a>>>32-d,te(this,c,a<<d-1,-2147483648));return c},function(a,b){var c=a,d=b&this.Da;if(d){var e=a<<32-d,c=a>>>d|e;te(this,c,e,-2147483648)}return c},function(a,b){var c=a,d=b&this.Da;
d&&(c=we(this),c=a<<d|c<<d-1|a>>>32-d>>>1,te(this,c,a<<d-1,-2147483648));return c},function(a,b){var c=a,d=b&this.Da;d&&(c=we(this),c=a>>>d|c<<32-d|a<<32-d<<1,te(this,c,a<<32-d,-2147483648));return c},function(a,b){var c=a,d=b&this.Da;d&&(d=a<<d-1,c=d<<1,F(this,c,-2147483648,d&-2147483648,(c^d)&-2147483648));return c},function(a,b){var c=b&this.Da;c&&(c=a>>>c-1,a=c>>>1,F(this,a,-2147483648,c&1,a&-2147483648));return a},R,function(a,b){var c=b&this.Da;c&&(c=a>>c-1,a=c>>1,F(this,a,-2147483648,c&1));
return a}],vi=[function(a,b){b=this.na();F(this,a&b,128);this.A-=-1===this.F?this.B.ah:this.B.$g;this.L|=2;return a},R,function(a){this.A-=-1===this.F?this.B.Ze:this.B.Ye;return a^255},function(a){var b=-a|0;ie(this,0,a,b,191,!0);this.A-=-1===this.F?this.B.Ze:this.B.Ye;return b&255},function(a){this.ua=(this.J&255)*a&65535;this.ua&65280?(pe(this),re(this)):(qe(this),se(this));this.Hb=!0;this.A-=-1===this.F?this.B.Oi:this.B.Ni;this.L|=2;return a},function(a){var b=(this.J<<24>>24)*(a<<24>>24)|0;this.ua=
b&65535;127<b||-128>b?(pe(this),re(this)):(qe(this),se(this));this.Hb=!0;this.A-=-1===this.F?this.B.ti:this.B.si;this.L|=2;return a},function(a,b){if(!a)return Mh.call(this),a;var c=(b=this.J&65535)/a;if(255<c)return Mh.call(this),a;this.ua=c&255|(b%a&255)<<8;this.Hb=!0;this.A-=-1===this.F?this.B.ki:this.B.ji;this.L|=2;return a},function(a,b){if(!a)return Mh.call(this),a;var c=a<<24>>24,d=(b=this.J<<16>>16)/c|0;if(d!=d<<24>>24||8086==this.ca&&-128==d)return Mh.call(this),a;this.ua=d&255|(b%c&255)<<
8;this.Hb=!0;this.A-=-1===this.F?this.B.oi:this.B.ni;this.L|=2;return a}],wi=[function(a,b){b=this.Aa();F(this,a&b,this.fb);this.A-=-1===this.F?this.B.ah:this.B.$g;this.L|=2;return a},R,function(a){this.A-=-1===this.F?this.B.Ze:this.B.Ye;return a^this.N},function(a){var b=-a|0;ie(this,0,a,b,this.fb|63,!0);this.A-=-1===this.F?this.B.Ze:this.B.Ye;return b&this.N},function(a,b){if(2==this.U){b=this.J&65535;var c=b*a|0;this.ua=c&65535;this.Ga=c>>16&65535}else wg.call(this,a,this.J),80563==this.pd&&68657152==
@ -348,13 +348,13 @@ var be=[function(){this.A-=2+(-1===this.F?0:1);return this.Zb.ja},function(){thi
var b=this.Ab;80286==this.ca?b|=-16777216:80386<=this.ca&&2!=this.U&&(a|=b<<16);this.Va(this.F+2,b);this.A-=12}return a},function(a){-1===this.F||this.W&131072?t.call(this,6):(this.ub=this.fa(this.F+2)&(this.N|this.N<<8),a&=65535,this.wc=this.ub+a,this.L|=2,this.A-=11);return a},function(a){-1===this.F||this.W&131072?t.call(this,6):(this.Ab=this.fa(this.F+2)&(this.N|this.N<<8),a&=65535,this.xc=this.Ab+a,this.L|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.F?0:1);return this.Pa},R,function(a){this.W&
131072?t.call(this,6):(Be(this,a),this.A-=-1===this.F?3:6,this.L|=2);return a},R],yi=[R,R,R,R,fg,ig,hg,gg];
function S(a){Ia.call(this,"ChipSet",a,S);var b=a.model;b&&!zi[b]&&n("Unrecognized ChipSet model: "+b);this.ca=b&&zi[b]||Ai;this.D=[];b=Bi(a[Ci]);this.D[0]=[b,b];null==b&&(this.Y=[360,360],(b=a.floppies)&&b.length&&(this.Y=b),Di(this,Ei,this.Y.length),Di(this,Fi,a.monitor||(this.ca<Re?"mono":"ega")));b=Bi(a[Gi]);this.D[1]=[b,b];this.Ea=this.pa=1;this.ca>=Re&&(this.Ea=this.pa=2);this.ba=a.scaleTimers||!1;this.Xa=a.rtcDate;this.Oa=!1;a.sound&&(this.La=this.qa=null,window&&(this.La=window.AudioContext||
window.webkitAudioContext),this.La&&(this.qa=new this.La));this.reset(!0);ab(this)}Qa(S);var Ai=5150.9,Re=5170,zi={5150:5150,5160:5160,5170:Re,att6300:5160.101,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:Ai,deskpro386:5180},Ci="sw1",Gi="sw2",Hi={uj:1,ONE:0,Jm:64,Hm:128,lm:192,lc:192,Zf:6},Ii={Im:16,em:32,tm:48,lc:48,Zf:4},Ei=1,Fi=4,T={5150:[{},{}]};T[5150][0][Ei]={lc:192,Oc:{1:0,2:64,3:128,4:192},gd:"Number of Floppy Drives"};T[5150][0][3]={lc:2,Oc:{0:0,1:2},gd:"Coprocessor"};
window.webkitAudioContext),this.La&&(this.qa=new this.La));this.reset(!0);ab(this)}Qa(S);var Ai=5150.9,Re=5170,zi={5150:5150,5160:5160,5170:Re,att6300:5160.101,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:Ai,deskpro386:5180},Ci="sw1",Gi="sw2",Hi={vj:1,ONE:0,Jm:64,Hm:128,lm:192,lc:192,Zf:6},Ii={Im:16,em:32,tm:48,lc:48,Zf:4},Ei=1,Fi=4,T={5150:[{},{}]};T[5150][0][Ei]={lc:192,Oc:{1:0,2:64,3:128,4:192},gd:"Number of Floppy Drives"};T[5150][0][3]={lc:2,Oc:{0:0,1:2},gd:"Coprocessor"};
T[5150][0][Fi]={lc:48,Oc:{0:0,1:16,2:32,3:48,none:0,tv:16,color:32,cga:32,mda:48,mono:48,ega:0,vga:0},gd:"Monitor Type"};T[5150][0][5]={lc:12,Oc:{16:0,32:4,48:8,64:12},gd:"Base Memory (16Kb Increments)"};T[5150][1][6]={lc:31,Oc:{0:0,32:1,64:2,96:3,128:4,160:5,192:6,224:7,256:8,288:9,320:10,352:11,384:12,416:13,448:14,480:15,512:16,544:17,576:18},gd:"Expansion Memory (32Kb Increments)"};T[5160]=[{},{}];T[5160][0][Ei]=T[5150][0][Ei];T[5160][0][3]=T[5150][0][3];T[5160][0][Fi]=T[5150][0][Fi];
T[5160][0][5]={lc:12,Oc:{64:0,128:4,192:8,256:12},gd:"Base Memory (64Kb Increments)"};T[5160][1][6]=T[5150][1][6];T[5160.101]=[{},{}];T[5160.101][0][5]={lc:143,Oc:{128:1,256:130,512:8,640:141},gd:"Base Memory (128Kb Increments)"};T[5160.101][0][3]={lc:16,Oc:{0:0,1:16},gd:"Coprocessor"};T[5160.101][1][2]={lc:1,Oc:{0:0,1:1},gd:"Floppy Type"};T[5160.101][1][Ei]=T[5150][0][Ei];T[5160.101][1][Fi]=T[5150][0][Fi];l=S.prototype;
l.zb=function(a,b,c){switch(b){case Ci:return this.la[b]=c,Ji(this,0,b),!0;case Gi:if(5150==(this.ca|0)||5160.101==this.ca)return this.la[b]=c,Ji(this,1,b),!0;break;case "swdesc":return this.la[b]=c,!0}return!1};
l.pc=function(a,b,c,d){this.ha=b;this.A=c;this.Ia=d;this.aa=a;this.qd=kb(a,"FPU");Di(this,3,this.qd?1:0,!0);this.C=kb(a,"Keyboard");this.Ga=c.T.ad/1193181;Nb(b,this,Ki);Pb(b,this,Li);this.ca<Re?5160.101!=this.ca?(Nb(b,this,Mi),Pb(b,this,Ni)):(Nb(b,this,Oi),Pb(b,this,Pi)):(Nb(b,this,Qi),Pb(b,this,Ri),5180==(this.ca|0)&&(Nb(b,this,Si),Pb(b,this,Ti)))};l.Vb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};l.Ub=function(a){return a?this.save():!0};
l.reset=function(a){var b;Ui(this);this.G=Array(this.Ea);for(b=0;b<this.Ea;b++)Vi(this,b);this.gc=Array(this.pa);Wi(this,0,32);1<this.pa&&Wi(this,1,160);this.za=this.xa=null;this.K=Array(5180==(this.ca|0)?6:3);for(b=0;b<this.K.length;b++)Xi(this,b);this.oa=this.Ja=this.P=this.Da=null;this.ma=0;5160.101==this.ca&&(this.ka=0);if(this.ca>=Re){this.H=16;this.S=0;this.R=16;this.ua=0;this.X=160;512<=Yi(this)&&(this.X|=16);3==+Zi(this,Fi,void 0)&&(this.X|=64);5180==(this.ca|0)&&(this.X|=12);this.va=3;this.I=
Array(8);this.da=0;a&&(this.B=Array(64));$i(this,this.Xa);for(a=21;24>=a;a++)this.B[a]=0;for(a=14;46>a;a++)void 0===this.B[a]&&(this.B[a]=0);a=0|+Zi(this,Fi,void 0)<<Ii.Zf&Ii.lc;a|=+Zi(this,3,void 0)?2:0;b=+Zi(this,Ei,void 0);a|=b?b-1<<Hi.Zf&Hi.lc|Hi.uj:0;this.B[20]=a;this.B[16]=aj(this,0)<<4|aj(this,1);bj(this)}};
Array(8);this.da=0;a&&(this.B=Array(64));$i(this,this.Xa);for(a=21;24>=a;a++)this.B[a]=0;for(a=14;46>a;a++)void 0===this.B[a]&&(this.B[a]=0);a=0|+Zi(this,Fi,void 0)<<Ii.Zf&Ii.lc;a|=+Zi(this,3,void 0)?2:0;b=+Zi(this,Ei,void 0);a|=b?b-1<<Hi.Zf&Hi.lc|Hi.vj:0;this.B[20]=a;this.B[16]=aj(this,0)<<4|aj(this,1);bj(this)}};
function $i(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.rc("CMOS date invalid ("+b+"), using "+c)):b&&a.rc("CMOS date: "+c);a.B[0]=c.getSeconds();a.B[1]=0;a.B[2]=c.getMinutes();a.B[3]=0;a.B[4]=c.getHours();a.B[5]=0;a.B[6]=c.getDay()+1;a.B[7]=c.getDate();a.B[8]=c.getMonth()+1;c=c.getFullYear();a.B[9]=c%100;c/=100;a.B[50]=c%10|c/10<<4;a.B[10]=38;a.B[11]=2;a.B[12]=0;a.B[13]=128;a.ra=a.ia=0;a.Ta=a.Fa=null}
function cj(a){var b;void 0===b&&(b=a.Fa);a.ia=tc(a.A,a.ba)+b;a.B[11]&64&&qc(a.A,b)}function bj(a){for(var b=0,c=16;46>c;c++)b+=a.B[c];a.B[47]=b&255;a.B[46]=b>>8}
l.save=function(){var a=new ce(this);C(a,0,[this.D]);for(var b=[],c=0;c<this.G;c++){for(var d=this.G[c],e=d,f=[],g=0;g<e.$b.length;g++){var h=e.$b[g];f[g]=[h.Qd,h.sf,h.jc,h.gb,h.hb,h.mode,h.tf,h.$l,h.am]}b[c]=[d.Db,d.bg,d.Fh,d.Ib,f,d.dg]}C(a,1,[b]);b=[];for(c=0;c<this.gc.length;c++)d=this.gc[c],b[c]=[d.Te,d.Sc,d.md,d.Vc,d.ac,d.Cc,d.Ld,d.Je];C(a,2,[b]);b=[];for(c=0;c<this.K.length;c++)d=this.K[c],b[c]=[d.jc,d.Ec,d.hb,d.Md,d.eg,d.mode,d.hf,d.Xc,d.kd,d.Tc,d.le,d.Od,d.ld,d.Db,d.qe];C(a,3,[this.xa,b,this.za]);
@ -427,21 +427,21 @@ function Zj(a,b){0<a.Ob.length&&(a.Ob.shift(),(a.H=b)&&a.Ob.length&&a.P&&Yj(a.P,
l.restore=function(a){return Bk(this,a[0])};function Bk(a,b){var c=0;void 0===b&&(b=[]);a.K=a.H=b[c++];a.I=b[c];a.G=0;return!0}function zk(a,b){if(0<a.D.length){var c=a.D.charCodeAt(0);10==c&&(c=13);a.D=a.D.substr(1);wk(a,c,!0)}0<a.D.length&&setTimeout(function(a){return function(){zk(a,b)}}(a),b)}
function xk(a,b,c,d){if(X[b]){var e=Math.floor(b/1E3)&2;if(b=rk[b]||0){!e||b&85||(b>>=1);if(b&3584){if(!1===d)return!0;d=null}null==d?d=!((c?a.C:a.bc)&b):d||b&255&&(b=255);if(c){a.C&=~b;d&&(a.C|=b);c=b;var f,g;for(g in uk)d="led-"+g,e=uk[g],c&&c!=e||!(f=a.la[d])||(f.style.backgroundColor=a.C&e?"#00ff00":"#000000")}else a.bc&=~b,d&&(a.bc|=b);return!0}}return!1}
function wk(a,b,c){if(X[b]&&a.A&&a.A.ea.Sb){rk[b]&&a.B.length&&0<a.B[0].cd&&(a.B[0].cd=0);for(var d,e=0;e<a.B.length;e++)if(d=a.B[e],d.Wd==b){if(!c||0<=d.cd){e=-1;break}0<e&&(0<a.B[0].cd&&(a.B[0].cd=0),a.B.splice(e,1));break}0>e||(e==a.B.length&&(d={},d.Wd=b,d.bc=a.bc,Ak(a,b,!0),e++),0<e&&a.B.splice(0,0,d),d.Me=!0,d.cd=c?-1:rk[b]?0:1,Ck(a,d))}}
function yk(a,b,c){if(!X[b]||!(c||a.A&&a.A.ea.Sb))return!1;for(var d=!1,e=0;e<a.B.length;e++){var f=a.B[e];if(f.Wd==b||f.Wd==V[b]){a.B.splice(e,1);f.nj&&clearTimeout(f.nj);f.Me&&!c&&Dk(a,f.Wd,!1);Ak(a,b,!1);d=!0;break}}!a.B.length&&a.S&&(xk(a,1020),a.S=!1);return d}function Ck(a,b){if(!a.A||!a.A.ea.Sb)yk(a,b.Wd,!0);else if(Dk(a,b.Wd,b.Me)&&b.cd){var c;if(0>b.cd){if(!b.Me){yk(a,b.Wd);return}b.Me=!1;c=a.da}else c=1==b.cd++?500:100;b.nj=setTimeout(function(a){return function(){Ck(a,b)}}(a),c)}}
function yk(a,b,c){if(!X[b]||!(c||a.A&&a.A.ea.Sb))return!1;for(var d=!1,e=0;e<a.B.length;e++){var f=a.B[e];if(f.Wd==b||f.Wd==V[b]){a.B.splice(e,1);f.oj&&clearTimeout(f.oj);f.Me&&!c&&Dk(a,f.Wd,!1);Ak(a,b,!1);d=!0;break}}!a.B.length&&a.S&&(xk(a,1020),a.S=!1);return d}function Ck(a,b){if(!a.A||!a.A.ea.Sb)yk(a,b.Wd,!0);else if(Dk(a,b.Wd,b.Me)&&b.cd){var c;if(0>b.cd){if(!b.Me){yk(a,b.Wd);return}b.Me=!1;c=a.da}else c=1==b.cd++?500:100;b.oj=setTimeout(function(a){return function(){Ck(a,b)}}(a),c)}}
function Ek(a,b,c){var d=b;if(65<=b&&90>=b)!(a.bc&515)==c&&(d=b+32);else if(97<=b&&122>=b)!!(a.bc&515)==c&&(d=b-32);else if(!!(a.bc&3)==c){if(a=V[b])d=a}else if(a=qk[b])d=a;return d}l.Nf=function(a){a||(this.bc&=-256)};
function vk(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode,h=Ek(a,g,!0);a.ig&&h==U["`"]&&(g=h=27);if(X[g+1E3])if(h+=1E3,2==b.location&&(h+=2E3),xk(a,h,!1,c)){if(20==g||144==g||145==g)a.X||(c=e=!0);if(!(c||91!=g&&93!=g))for(var k=0;k<a.B.length;k++){var m=a.B[k];m.Me=!1;0<m.cd&&(m.cd=0)}}else 8==g&&8==(a.bc&40)&&(h=4008),d=!1;else if(X[h]&&a.bc&60&&(d=!1),d&&c||a.bc&192)f=!0;d||b.preventDefault();f||a.Y&&d||(c?wk(a,h,e):yk(a,h)||(b=Ek(a,g,!1),b!=h&&yk(a,b)));return d}
function Dk(a,b,c){var d=!1;xk(a,b,!0,c);var e=X[b]||X[b+1E3];if(void 0!==e){14==e&&40==(a.bc&40)&&(e=83);var d=[],f=e&255;if(83<f&&83==a.ba)return!1;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,h=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==h?a.C&3||a.C&512&&b||(g=h):29==h?a.C&12||(g=h):56==h?a.C&48||(g=h):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)e=a,f=d[c],e.Ob&&(20>e.Ob.length?(e.Ob.push(f),1==e.Ob.length&&e.P&&Yj(e.P,f)):20==e.Ob.length&&
e.Ob.push(255));d=!0}return d}Ea(function(){for(var a=Za(document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new nk(d);Ya(d,c)}});
function Y(a,b,c,d,e){Ia.call(this,"Video",a,Y);this.ca=a.model;var f=Fk[this.ca]||Fk.mda;this.Ra=f[0];this.Wc=a.memory||0;this.pd=a.switches;this.ka=a.mode;if(null==this.ka||null==Gk[this.ka])this.ka=f[1];this.Nb=a.charCols;this.wc=a.charRows;if(void 0===this.Nb||void 0===this.wc)this.Nb=Gk[this.ka][0],this.wc=Gk[this.ka][1];this.da=a.screenWidth;this.pa=a.screenHeight;this.Zd=a.scale;this.Yd=12<=Math.round(this.da/this.Nb);this.Y=b;this.X=c;this.G=(this.ae=d)||b||null;this.qd=a.touchScreen;this.xc=
Hk;this.K=null;this.Id=a.autoLock;this.cb=this.Fb=0;this.xa=[];this.oa=Array(this.Ra==ek?256:16);this.La=!1;var g=this;this.$c=ya("Gecko/");b=["","moz","webkit","ms"];if(this.aa=e)if(this.aa.ke=e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen,this.aa.ke){for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenchange","on"+c in document){document.addEventListener(c,function(){Ik(g,document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||
document.msFullscreenElement?!0:!1)},!1);break}for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenerror","on"+c in document){document.addEventListener(c,function(){Ik(g,null)},!1);break}}this.G&&(this.G.onfocus=function(){return g.Nf(!0)},this.G.onblur=function(){return g.Nf(!1)},this.G.Pd=this.G.requestPointerLock||this.G.mozRequestPointerLock||this.G.webkitRequestPointerLock,this.G.oj=this.G.exitPointerLock||this.G.mozExitPointerLock||this.G.webkitExitPointerLock,this.G.Pd&&(e=function(){g.bf(document.pointerLockElement===
document.msFullscreenElement?!0:!1)},!1);break}for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenerror","on"+c in document){document.addEventListener(c,function(){Ik(g,null)},!1);break}}this.G&&(this.G.onfocus=function(){return g.Nf(!0)},this.G.onblur=function(){return g.Nf(!1)},this.G.Pd=this.G.requestPointerLock||this.G.mozRequestPointerLock||this.G.webkitRequestPointerLock,this.G.pj=this.G.exitPointerLock||this.G.mozExitPointerLock||this.G.webkitExitPointerLock,this.G.Pd&&(e=function(){g.bf(document.pointerLockElement===
g.G||document.mozPointerLockElement===g.G||document.webkitPointerLockElement===g.G)},"onpointerlockchange"in document?document.addEventListener("pointerlockchange",e,!1):"onmozpointerlockchange"in document?document.addEventListener("mozpointerlockchange",e,!1):"onwebkitpointerlockchange"in document&&document.addEventListener("webkitpointerlockchange",e,!1)));if(a=a.fontROM)"json"!=ga(a)&&(a=qa()+"/api/v1/dump?file="+a+"&format=bytes"),pa(a,null,!0,function(a,b,c){Jk(g,a,b,c)})}Qa(Y);
var ek=7,Fk={mda:[1,7],cga:[3,3],ega:[5,3],vga:[ek,3]},Kk={2:{Jf:15700,If:208,Of:85,Pf:96},3:{Jf:18432,If:364,Of:85,Pf:96},4:{Jf:21850,If:364,Of:85,Pf:96},7:{Jf:16700,If:480,Of:85,Pf:83}},Lk={6:[1,3,!0],7:[2,3,!0],8:[6,3,!0],9:[4,3,!0],10:[3,1,!0],11:[3,2,!0],0:[1,3,!1],1:[2,3,!1],2:[6,3,!1],3:[4,3,!1],4:[3,1,!1],5:[3,2,!1]},Gk=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192],[80,25,1,0,1]];Gk[13]=[320,200,8];Gk[14]=[640,200,8];Gk[15]=[640,350,8];Gk[16]=[640,350,8];
Gk[17]=[640,480,8];Gk[18]=[640,480,8];Gk[19]=[320,200,1];Gk[20]=[320,240,4];Gk[21]=[320,400,4];Gk[0]=Gk[1];Gk[2]=Gk[3];Gk[5]=Gk[4];
var Mk=[[0,0,0,255],[127,192,127,255],[127,192,127,255],[127,255,127,255],[127,255,127,255]],Nk=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],Ok=[[0,0,0,255],[0,0,170,255],[0,170,0,255],[0,170,170,255],[170,0,0,255],[170,0,170,255],[170,85,0,255],[170,170,170,255],[85,85,85,255],[85,85,255,255],[85,255,85,255],[85,255,255,255],[255,85,85,255],[255,85,255,255],[255,255,85,255],[255,255,255,255]],Pk=[2,4,6],Qk=[3,5,7],Rk=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],Sk=[0,255,65280,65535,16711680,16711935,16776960,
16777215,-16777216,-16776961,-16711936,-16711681,-65536,-65281,-256,-1],Tk=[0];Tk[128]=1;Tk[32768]=2;Tk[32896]=3;Tk[8388608]=4;Tk[8388736]=5;Tk[8421376]=6;Tk[8421504]=7;Tk[-2147483648]=8;Tk[-2147483520]=9;Tk[-2147450880]=10;Tk[-2147450752]=11;Tk[-2139095040]=12;Tk[-2139094912]=13;Tk[-2139062272]=14;Tk[-2139062144]=15;
function Uk(a,b,c,d){if(void 0!==b&&(!c||c.length)){this.video=a;var e=Vk[b],f=a.ma||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(5>b?Wk:Xk)];this.Ra=b;this.cb=e[2];this.Fb=e[3];this.Wc=d||e[4];65536<=this.Wc&&720896<=this.cb&&(this.Fb=Math.min(this.Wc>>2,32768));this.cc=c[0];this.Lc=c[1];this.ff=c[2];this.Z=c[3];this.sc=c[4]&255;this.Qf=c[4]>>8&255;this.ab=c[5];this.pg=Wk;if(5<=b){this.pg=Xk;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.cb,this.Fb,this.Wc],
Array(this.Wc>>2),-2147478512,0,-1,0,-1,0,-1,0,0,0,0,1,255,0,0,0,Array(256)]);this.Ke=b[0];this.Ud=b[1];this.Kc=b[2];this.kh=b[3];this.gf=b[4];this.Sf=b[5];this.Ce=b[6];this.Be=b[7];this.ej=b[8];this.fj=b[9];this.Ae=b[10];this.Gd=b[11];this.ob=b[12];d=b[13];"number"==typeof d&&(d=[this.cb,this.Fb,d]);this.cb=d[0];this.Fb=d[1];d=this.Wc>>2;if((this.td=b[14])&&this.td.length<d){for(var e=this.td,g=0,h=Array(d),k=0;k<e.length-1;){for(var m=e[k++],p=e[k++];m--;)h[g]=p,g+=2;g==d&&(g=1)}this.td=h}(d=b[15])&&
Array(this.Wc>>2),-2147478512,0,-1,0,-1,0,-1,0,0,0,0,1,255,0,0,0,Array(256)]);this.Ke=b[0];this.Ud=b[1];this.Kc=b[2];this.kh=b[3];this.gf=b[4];this.Sf=b[5];this.Ce=b[6];this.Be=b[7];this.fj=b[8];this.gj=b[9];this.Ae=b[10];this.Gd=b[11];this.ob=b[12];d=b[13];"number"==typeof d&&(d=[this.cb,this.Fb,d]);this.cb=d[0];this.Fb=d[1];d=this.Wc>>2;if((this.td=b[14])&&this.td.length<d){for(var e=this.td,g=0,h=Array(d),k=0;k<e.length-1;){for(var m=e[k++],p=e[k++];m--;)h[g]=p,g+=2;g==d&&(g=1)}this.td=h}(d=b[15])&&
(d&-2147483648?d&=2147483647:d=Yk[d&65280]|Yk[d&255]);this.Uf(d);this.fh=b[16];this.$a=b[17];this.Hc=b[18];this.tb=b[19];this.af=b[20];this.nd=b[21];this.Cd=b[22];this.qg=b[23];this.rg=b[24];this.ed=b[25];this.gh=this.xe=0;this.Ra==ek&&(this.lh=b[26],this.jh=b[27],this.fd=b[28],this.Bc=b[29],this.Rf=b[30],this.ze=b[31])}f=Kk[f]||Kk[3];this.sg=a.A.T.ad/f.Jf|0;this.Wk=this.sg*f.Of/100|0;this.vg=this.sg*f.If|0;this.Yk=this.vg*f.Pf/100|0;this.wg=c[7]||0}}var Wk=18,Xk=25,Yk=[,,1024,5120];Yk[16]=1280;
Yk[512]=0;Yk[1024]=32;Yk[1536]=96;Yk[2560]=160;Yk[3584]=224;Yk[768]=16;Yk[4096]=1;Yk[8192]=2;Yk[24576]=98;Yk[40960]=162;Yk[57344]=226;var Zk=[];Zk[1024]=function(a){a+=this.H;return(this.controller.ob=this.V[a])>>this.controller.fh&255};Zk[17408]=function(a){return(this.controller.ob=this.V[(a&-4)+this.H])>>((a&3)<<3)&255};Zk[5120]=function(a){a+=this.H;var b=this.controller.ob=this.V[a&-2];return(a&1?b>>8:b)&255};
Zk[1280]=function(a){a+=this.H;a=this.controller.ob=this.V[a];for(var b=this.controller.rg,c=this.controller.qg&b,d=0,e=128;e;)(a&b)==c&&(d|=e),c>>>=1,b>>>=1,e>>=1;return d};Zk[0]=function(a,b){var c=a+this.H,d;d=(b|b<<8|b<<16|b<<24)&this.controller.nd|this.controller.Cd;d=d&this.controller.tb|this.controller.ob&~this.controller.tb;d=d&this.controller.$a|this.V[c]&~this.controller.$a;this.V[c]!=d&&(this.V[c]=d,this.Ha=!0)};
@ -453,7 +453,7 @@ Zk[16]=function(a,b){a+=this.H;var c,d=a&-2;c=(b|b<<8|b<<16|b<<24)&this.controll
Zk[17]=function(a){a+=this.H;var b=a&-2;a=this.controller.$a&(b==a?16711935:-16711936);a=this.V[b]&~a|this.controller.ob&a;this.V[b]!=a&&(this.V[b]=a,this.Ha=!0)};Zk[2]=function(a,b){var c=a+this.H,d=Sk[b&15],d=d&this.controller.tb|this.controller.ob&~this.controller.tb,d=d&this.controller.$a|this.V[c]&~this.controller.$a;this.V[c]!=d&&(this.V[c]=d,this.Ha=!0)};
Zk[98]=function(a,b){var c=a+this.H,d=Sk[b&15],d=d&this.controller.ob,d=d&this.controller.tb|this.controller.ob&~this.controller.tb,d=d&this.controller.$a|this.V[c]&~this.controller.$a;this.V[c]!=d&&(this.V[c]=d,this.Ha=!0)};Zk[162]=function(a,b){var c=a+this.H,d=Sk[b&15],d=d|this.controller.ob,d=d&this.controller.tb|this.controller.ob&~this.controller.tb,d=d&this.controller.$a|this.V[c]&~this.controller.$a;this.V[c]!=d&&(this.V[c]=d,this.Ha=!0)};
Zk[226]=function(a,b){var c=a+this.H,d=Sk[b&15],d=d^this.controller.ob,d=d&this.controller.tb|this.controller.ob&~this.controller.tb,d=d&this.controller.$a|this.V[c]&~this.controller.$a;this.V[c]!=d&&(this.V[c]=d,this.Ha=!0)};Zk[3]=function(a,b){var c=a+this.H;b=b>>this.controller.Hc|b<<8-this.controller.Hc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.controller.tb;d=this.controller.af&d|this.controller.ob&~d;d=d&this.controller.$a|this.V[c]&~this.controller.$a;this.V[c]!=d&&(this.V[c]=d,this.Ha=!0)};
function $k(a){var b=[];if(void 0!==a.Ra){b[0]=a.cc;b[1]=a.Lc;b[2]=a.ff;b[3]=a.Z;b[4]=a.sc|a.Qf<<8;b[5]=a.ab;if(5<=a.Ra){var c=[];c[0]=a.Ke;c[1]=a.Ud;c[2]=a.Kc;c[3]=a.kh;c[4]=a.gf;c[5]=a.Sf;c[6]=a.Ce;c[7]=a.Be;c[8]=a.ej;c[9]=a.fj;c[10]=a.Ae;c[11]=a.Gd;c[12]=a.ob;c[13]=[a.cb,a.Fb,a.Wc];var d;a:if(d=a.td){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 k=d[h],m=h+2;m<d.length&&d[m]===k;)m+=2;f[e++]=m-h>>1;f[e++]=k;h=m}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
function $k(a){var b=[];if(void 0!==a.Ra){b[0]=a.cc;b[1]=a.Lc;b[2]=a.ff;b[3]=a.Z;b[4]=a.sc|a.Qf<<8;b[5]=a.ab;if(5<=a.Ra){var c=[];c[0]=a.Ke;c[1]=a.Ud;c[2]=a.Kc;c[3]=a.kh;c[4]=a.gf;c[5]=a.Sf;c[6]=a.Ce;c[7]=a.Be;c[8]=a.fj;c[9]=a.gj;c[10]=a.Ae;c[11]=a.Gd;c[12]=a.ob;c[13]=[a.cb,a.Fb,a.Wc];var d;a:if(d=a.td){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 k=d[h],m=h+2;m<d.length&&d[m]===k;)m+=2;f[e++]=m-h>>1;f[e++]=k;h=m}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
a.og|-2147483648;c[16]=a.fh;c[17]=a.$a;c[18]=a.Hc;c[19]=a.tb;c[20]=a.af;c[21]=a.nd;c[22]=a.Cd;c[23]=a.qg;c[24]=a.rg;c[25]=a.ed;a.Ra==ek&&(c[26]=a.lh,c[27]=a.jh,c[28]=a.fd,c[29]=a.Bc,c[30]=a.Rf,c[31]=a.ze);b[6]=c}b[7]=a.wg}return b}Uk.prototype.Th=function(a){return[this.td,a-this.cb]};Uk.prototype.lg=function(){return this.A};
Uk.prototype.Uf=function(a){if(null!=a&&a!=this.og){var b=a&65280,c=Zk[b];c||b&4096&&(c=Zk[4096]);var b=a&255,d=Zk[b];d||b&16&&(d=Zk[16]);this.A||(this.A=Array(6));this.A[0]=c;this.A[3]=d;this.og=a}};
function al(a,b){var c=a.ab[b];if(null!=c&&5<=a.Ra){var d=0,e=0,f=0;switch(b){case 6:d=1;a.Ra==ek&&(e=32);break;case 10:5==a.Ra&&(d=32);break;case 16:d=4;a.Ra==ek&&(e=128);break;case 18:d=2;a.Ra==ek&&(e=64);break;case 21:d=8;a.Ra==ek&&(f=32);break;case 24:d=16,a.Ra==ek&&(f=64)}d&&(c|=a.ab[7]&d?256:0,c|=a.ab[7]&e?512:0,c|=a.ab[9]&f?512:0)}return c}var Vk=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];Vk[ek]=["VGA",980,753664,16384,262144,7];var Hk=0;
@ -461,7 +461,7 @@ l=Y.prototype;
l.pc=function(a,b,c,d){this.ha=b;this.A=c;this.Ia=d;c=(c=Fk[this.ca])&&c[0];3!==c&&(Nb(b,this,bl),Pb(b,this,cl));1!==c&&(Nb(b,this,dl),Pb(b,this,el));5<=this.Ra&&(Nb(b,this,fl),Pb(b,this,gl));this.Ra==ek&&(Nb(b,this,hl),Pb(b,this,il));if((this.C=kb(a,"Keyboard"))&&this.Y){for(var e in this.la)0<e.indexOf("lock")&&this.C.zb("led",e,this.la[e]);this.C.zb(this.ae?"textarea":"canvas","kbd",this.G)}this.Bb=9;(this.P=kb(a,"ChipSet"))&&this.pd&&5==this.Ra&&(this.Bb=Bi(this.pd,this.Bb));"mouse"==this.qd?
(this.K=kb(a,"Mouse"))&&jl(this,2):"keygrid"==this.qd&&this.C&&jl(this,1)};l.zb=function(a,b,c){var d=this;if(!this.la[b])switch(this.la[b]=c,b){case "fullScreen":return this.aa&&this.aa.ke?c.onclick=function(){d.ke()}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.Kd=c.textContent,this.G&&this.G.Pd?c.onclick=function(){d.Pd(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){kl(d,!0)},!0}return!1};
l.ke=function(){var a=!1;if(this.aa){if(this.aa.ke){a="100%";if(screen&&screen.width&&screen.height){var b=screen.width/screen.height,c=this.da/this.pa;b>c&&(a=Math.round(c/b*100)+"%")}this.$c?(this.Y.style.width=a,this.Y.style.width=a,this.Y.style.display="block",this.Y.style.margin="auto"):(this.aa.style.width=a,this.aa.style.height="auto");this.aa.style.backgroundColor="black";this.aa.ke();a=!0}this.G&&this.G.focus()}return a};
function Ik(a,b){!b&&a.aa&&(a.$c?a.Y.style.width=a.Y.style.height="":a.aa.style.width=a.aa.style.height="");a.C&&(a.C.ig=b)}l.Pd=function(a){var b=!1;this.G&&(a?this.G.Pd&&(this.G.Pd(),this.K&&this.K.bf(!0),b=!0):this.G.oj&&(this.G.oj(),this.K&&this.K.bf(!1),b=!0),this.G&&this.G.focus());return b};l.bf=function(a){this.K&&(this.K.bf(a),this.C&&(this.C.ig=a));var b=this.la.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.Kd)};
function Ik(a,b){!b&&a.aa&&(a.$c?a.Y.style.width=a.Y.style.height="":a.aa.style.width=a.aa.style.height="");a.C&&(a.C.ig=b)}l.Pd=function(a){var b=!1;this.G&&(a?this.G.Pd&&(this.G.Pd(),this.K&&this.K.bf(!0),b=!0):this.G.pj&&(this.G.pj(),this.K&&this.K.bf(!1),b=!0),this.G&&this.G.focus());return b};l.bf=function(a){this.K&&(this.K.bf(a),this.C&&(this.C.ig=a));var b=this.la.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.Kd)};
function jl(a,b){var c=a.G;c&&!a.xc&&(c.addEventListener("touchstart",function(b){ll(a,b,!0)},!1),c.addEventListener("touchmove",function(b){ll(a,b)},!0),c.addEventListener("touchend",function(b){ll(a,b,!1)},!1),a.xc=b,a.rb=a.ub=a.rd=-1,a.vc=!1,a.Gb=null,a.oc=!1,a.$d=function(){a.oc=!0;a.K.je(ml,!0)})}l.Nf=function(a){this.C&&this.C.Nf(a)};
function ll(a,b,c){var d,e,f=0,g=0;e=a.Y;do isNaN(e.offsetLeft)||(f+=e.offsetLeft,g+=e.offsetTop);while(e=e.offsetParent);var h=a.da/a.Y.offsetWidth,k=a.pa/a.Y.offsetHeight;b.targetTouches&&b.targetTouches.length?(d=b.targetTouches[0].pageX,e=b.targetTouches[0].pageY):(d=b.pageX,e=b.pageY);d=(d-f)*h;e=(e-g)*k;if(1==a.xc)d=d/(a.da/3)|0,e=e/(a.pa/3)|0,1!=e?e?wk(a.C,1040,!0):wk(a.C,1038,!0):1!=d&&(d?wk(a.C,1039,!0):wk(a.C,1037,!0));else if(a.K){g=a.vc;f=b.timeStamp-a.rd;!0===c?(a.vc=500<f,a.rd=b.timeStamp,
a.Gb=setTimeout(a.$d,500)):null!=a.Gb&&(clearTimeout(a.Gb),a.Gb=null);void 0===c&&(a.vc=!1);g||b.preventDefault();if(!1===c){a.oc?(a.K.je(ml,!1),a.oc=!1,b=!0):b=!1;if(b)return;if(200>f){a.K.je(ml,!0);a.K.je(ml,!1);return}}if(c||0>a.rb||0>a.ub)a.rb=d,a.ub=e;c=Math.round(d-a.rb);b=Math.round(e-a.ub);a.rb=d;a.ub=e;a.K.ng(c,b,a.rb,a.ub)}}l.Vb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Ub=function(a){return a?this.save():!0};
@ -472,8 +472,8 @@ function Jk(a,b,c,d){if(d)a.Ca("Unable to load font ROM (error "+d+": "+b+")");e
function sl(a,b){if(1==b)return a.oa[0]=Ok[0],a.oa[1]=Ok[7],a.oa;if(2==b){var c=a.D.ff;if(a.D===a.B){var d=a.B.Kc[0],c=d&7;d&16&&(c|=8);18!=a.B.Kc[1]&&(c|=32)}a.oa[0]=Ok[c&15];c=c&32?Qk:Pk;for(d=0;d<c.length;d++)a.oa[d+1]=Ok[c[d]];return a.oa}if(a.R===a.Cb)return Ok;a.La&&b&&!a.oa[16]&&(a.La=!1);if(!a.La){var c=a.B,d=c.ze,e,f,g,h,k;if(8==b)for(f=0;256>f;f++)g=d[f]||0,h=g<<2&252,k=g>>4&252,g=g>>10&252,a.oa[f]=[h,k,g,255];else{var m=d&&d[255];e=null!=c.Kc[15]?c.Kc:Rk;for(f=0;16>f;f++)g=e[f]&63,m?(g|=
(c.Kc[20]&12)<<4,c.Kc[16]&128&&(g&=-49,g|=(c.Kc[20]&3)<<4),g=d[g],h=g<<2&252,k=g>>4&252,g=g>>10&252):(h=(g&4?170:0)|(g&32?85:0),k=(g&2?170:0)|(g&16?85:0),g=(g&1?170:0)|(g&8?85:0)),a.oa[f]=[h,k,g,255]}a.La=!0}return a.oa}function dk(a,b,c,d){a.Ab=b;a.Xa=c;a.Ja=d}
function ol(a,b){var c=!1;if(window&&a.Ab&&(!b||a.I)){var d=0,e=a.Ja?a.Ja:8,f=sl(a);null!=a.Xa[0]&&tl(a,3,a.Xa[0],d,e,8,a.Ab,f)&&(c=!0);d=a.Ja?0:2048;e=a.Ja?a.Ja:9;null!=a.Xa[1]&&(tl(a,1,a.Xa[1],d,e,14,a.Ab,Mk,Nk)&&(c=!0),a.Ja&&tl(a,a.Ra,a.Xa[1],0,a.Ja,14,a.Ab,f)&&(c=!0))}return c}function tl(a,b,c,d,e,f,g,h,k){var m=!1;null!=c&&(ul(a,b,c,d,e,f,g,h,k)&&(m=!0),a.Yd&&ul(a,b<<1,c,d,e,f,g,h,k)&&(m=!0));return m}
function ul(a,b,c,d,e,f,g,h,k){var m=!1,p=b&1?0:1,x=a.xa[b],r=16>h.length?h.length:16;x||(x={tc:e<<p,uc:f<<p,be:Array(r),Bh:h.slice(0,r),Ge:k,ag:Array(r)});for(k=0;k<r;k++){var z=h[k],E=x.be[k]?x.Bh[k]:[];if(z[0]!==E[0]||z[1]!==E[1]||z[2]!==E[2]){var m=x,E=k,J=p,W=c,da=d,ua=e,va=f,qd=g,an=[0,0,0,0],te=document.createElement("canvas");te.width=m.tc<<4;te.height=m.uc<<4;for(var sj=te.getContext("2d"),Ab=void 0,Oc=void 0,ac=void 0,ue=8>va||!da?va:8,Gf=sj.createImageData(m.tc,m.uc),Ab=0;256>Ab;Ab++){for(ac=
0;ac<va;ac++)for(var bn=m.Ge&&E&1&&ac>=va-2,cn=qd[ac<ue?W+Ab*ue+ac:da+Ab*ue+ac-ue],Hf=0;Hf<=J;Hf++)for(Oc=0;Oc<ua;Oc++){var tj=Oc<<J,uj=(ac<<J)+Hf,vj=bn||cn&128>>(8<=Oc&&192<=Ab&&223>=Ab?7:Oc)?z:an;vl(Gf,tj,uj,vj);J&&vl(Gf,tj+1,uj,vj)}sj.putImageData(Gf,(Ab&15)*m.tc,(Ab>>4)*m.uc)}m.be[E]="#"+ea(z[0],2)+ea(z[1],2)+ea(z[2],2);m.Bh[E]=z;m.ag[E]=te;m=!0}}a.xa[b]=x;return m}function wl(a){0<a.za||0<=a.ia?0>a.Ea&&(a.Ea=0):a.Ea=-1}
function ul(a,b,c,d,e,f,g,h,k){var m=!1,p=b&1?0:1,x=a.xa[b],r=16>h.length?h.length:16;x||(x={tc:e<<p,uc:f<<p,be:Array(r),Bh:h.slice(0,r),Ge:k,ag:Array(r)});for(k=0;k<r;k++){var z=h[k],E=x.be[k]?x.Bh[k]:[];if(z[0]!==E[0]||z[1]!==E[1]||z[2]!==E[2]){var m=x,E=k,J=p,W=c,da=d,ua=e,va=f,qd=g,an=[0,0,0,0],ue=document.createElement("canvas");ue.width=m.tc<<4;ue.height=m.uc<<4;for(var sj=ue.getContext("2d"),Ab=void 0,Oc=void 0,ac=void 0,ve=8>va||!da?va:8,Gf=sj.createImageData(m.tc,m.uc),Ab=0;256>Ab;Ab++){for(ac=
0;ac<va;ac++)for(var bn=m.Ge&&E&1&&ac>=va-2,cn=qd[ac<ve?W+Ab*ve+ac:da+Ab*ve+ac-ve],Hf=0;Hf<=J;Hf++)for(Oc=0;Oc<ua;Oc++){var tj=Oc<<J,uj=(ac<<J)+Hf,vj=bn||cn&128>>(8<=Oc&&192<=Ab&&223>=Ab?7:Oc)?z:an;vl(Gf,tj,uj,vj);J&&vl(Gf,tj+1,uj,vj)}sj.putImageData(Gf,(Ab&15)*m.tc,(Ab>>4)*m.uc)}m.be[E]="#"+ea(z[0],2)+ea(z[1],2)+ea(z[2],2);m.Bh[E]=z;m.ag[E]=ue;m=!0}}a.xa[b]=x;return m}function wl(a){0<a.za||0<=a.ia?0>a.Ea&&(a.Ea=0):a.Ea=-1}
function rl(a){if(a.I){for(var b=10;15>=b;b++)if(null==a.D.ab[b])return;var c=a.D.ab[10],b=c&31,d=a.D.ab[11]&31,e=a.D.ab[9]&31,f=!1;a.D===a.B&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)xl(a);else{c=a.D.ab[15]+((a.D.ab[14]&63)<<8);a.ia!=c&&(xl(a),a.ia=c);d=d-b+1;if(a.sd!=b||a.Gc!=d)a.sd=b,a.Gc=d;a.Da=e+1;wl(a)}}}
function xl(a){if(0<=a.ia){if(void 0!==a.S){var b=a.S[a.ia];if(b&131072){var b=b&-131073,c=a.ia%a.H,d=a.ia/a.H|0;a.I&&a.xa[a.I]&&(a.Ga&&yl(a,c,d,b,a.Ga),yl(a,c,d,b));a.S[a.ia]=b}}a.ia=-1}}
function zl(a){var b,c=a.D;a.Zc=!1;var d=c.Gd[5];if(null!=d){b=1024;var e=0,f=c.Gd[3]&31;switch(d&3){case 0:if(f){e=32;switch(f&24){case 8:e=96;break;case 16:e=160;break;case 24:e=224}c.Hc=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.Ra==ek&&(e=3,c.Hc=f&7)}d&8&&(b=1280);c=c.Be[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.Zc=!0));b|=e}return b}
@ -491,17 +491,17 @@ a.S[d]=p,f++),c+=2,d++;a.qa=!0;f&&a.Ga&&a.X.drawImage(a.Fa,0,0,a.pb,a.qb,a.yc,a.
!0;r<a.H&&(a.Ga.putImageData(a.Oa,0,0,r,J,E-r,W-J),a.X.drawImage(a.Fa,0,0,a.H,a.L,0,0,a.da,a.pa))}else if(a.Zc){g=h;f=a.za=0;e=sl(a,8);h=a.D.td;p=m=0;x=a.H;r=0;E=a.L;J=0;W=a.D.Be[4]&8?4:1;z=a.D.Kc[19]&15;for(da=a.Ta>a.H?a.Ta-a.H-z>>3:0;c<k;){d=h[c-g];va=4;z||(a.qa&&d===a.S[f]?(m+=va,va=0):a.S[f]=d,f++);if(va){m<x&&(x=m);for(ua=0;ua<va;ua++)vl(a.Oa,m++,p,e[d&255]),d>>=8;m>r&&(r=m);p<E&&(E=p);p>=J&&(J=p+1)}c+=W;if(m>=a.H){m=0;if(++p>a.L)break;c+=da}}z||(a.qa=!0);x<a.H&&(a.Ga.putImageData(a.Oa,0,0,x,
E,r-x,J-E),a.X.drawImage(a.Fa,0,0,a.H,a.L,0,0,a.da,a.pa))}else{g=h;d=a.za=0;f=sl(a);e=a.D.td;m=h=0;p=a.H;x=0;r=a.L;E=0;J=a.D.Kc[19]&15;for(W=a.Ta>a.H?a.Ta-a.H-J>>3:0;c<k;){z=c++-g;z=e[z];ua=8;J?h?(da=a.H-h,ua>da&&(ua=da)):(z<<=J,ua-=J,a.qa=!1):(a.qa&&z===a.S[d]?(h+=ua,ua=0):a.S[d]=z,d++);if(ua){h<p&&(p=h);for(da=0;da<ua;da++)va=Tk[z&2155905152]||0,vl(a.Oa,h++,m,f[va]),z<<=1;h>x&&(x=h);m<r&&(r=m);m>=E&&(E=m+1)}if(h>=a.H){h=0;if(++m>a.L)break;c+=W}}J||(a.qa=!0);p<a.H&&(a.Ga.putImageData(a.Oa,0,0,p,
r,x-p,E-r),a.X.drawImage(a.Fa,0,0,a.H,a.L,0,0,a.da,a.pa))}}}}function Dl(a,b){var c=0,d=tc(a.A)-b.wg;0>d&&(b.wg=d,d=-d|0);d%b.sg>b.Wk&&(c|=1);d%b.vg>b.Yk&&(c|=9);b.gh=d/b.vg|0;return c}l.xk=function(){var a=this.ba,b;a.cc&&(b=a.sc);return b};l.Ll=function(a,b){var c=this.ba;c.Qf=c.sc;c.sc=b&31};l.wk=function(){return El(this.ba)};l.Kl=function(a,b){Fl(this,this.ba,b)};l.yk=function(){return this.ba.Lc};l.Ml=function(a,b){this.ba.Lc=b;ql(this,!1)};l.zk=function(){return Gl(this,this.ba)};
l.cj=function(a,b){this.B.Sf=this.B.Sf&-4|b&3};l.Vj=function(){return this.B.Ud};l.vj=function(){return this.B.Kc[this.B.Ud&31]};l.bj=function(a,b){var c=this.B,d=c.Ud&32;if(c.Ke){c.Ke=!1;var e=c.Ud&31;if(16<=e||!d)c.Kc[e]=b,Bl(this,!1)}else c.Ud=b,c.Ke=!0,b&32&&!d&&ol(this,!0)&&kl(this,!0),d=(c.ab[12]<<8)+c.ab[13]|0,c.ed!=d&&(c.ed=d,Bl(this)),c.xe=0};
l.cj=function(a,b){this.B.Sf=this.B.Sf&-4|b&3};l.Vj=function(){return this.B.Ud};l.wj=function(){return this.B.Kc[this.B.Ud&31]};l.bj=function(a,b){var c=this.B,d=c.Ud&32;if(c.Ke){c.Ke=!1;var e=c.Ud&31;if(16<=e||!d)c.Kc[e]=b,Bl(this,!1)}else c.Ud=b,c.Ke=!0,b&32&&!d&&ol(this,!0)&&kl(this,!0),d=(c.ab[12]<<8)+c.ab[13]|0,c.ed!=d&&(c.ed=d,Bl(this)),c.xe=0};
l.Jk=function(){var a=0;if(5==this.Ra)a=3-((this.B.gf&12)>>2),a=(this.Bb&1<<a)<<4-a;else{var b=this.B.ze[0];45!=(b&63)&&2880!=(b&4032)&&184320!=(b&258048)&&(a|=16)}a|=this.B.kh&-17;return this.B.kh=a};l.Nl=function(a,b){this.B.gf=b;nl(this)};l.Kk=function(){return this.B.lh};l.Vl=function(a,b){this.B.lh=b};l.Hk=function(){return this.B.Ce};l.Tl=function(a,b){this.B.Ce=b};l.Gk=function(){return this.B.Be[this.B.Ce]};
l.Sl=function(a,b){this.B.Be[this.B.Ce]=b;switch(this.B.Ce){case 2:this.B.$a=Sk[b&15];break;case 4:Al(this,zl(this))&&kl(this,!0)}};l.hk=function(){return this.B.jh};l.ul=function(a,b){this.B.jh=b};l.ik=function(){return this.B.Rf};l.vl=function(a,b){this.B.fd=b;this.B.Rf=3;this.B.Bc=0};l.wl=function(a,b){this.B.fd=b;this.B.Rf=0;this.B.Bc=0};l.gk=function(){var a=this.B.ze[this.B.fd]>>this.B.Bc&63;this.B.Bc+=6;12<this.B.Bc&&(this.B.Bc=0,this.B.fd=this.B.fd+1&255);return a};
l.tl=function(a,b){var c=this.B.ze[this.B.fd],d=c&~(63<<this.B.Bc)|(b&63)<<this.B.Bc;c!==d&&(this.B.ze[this.B.fd]=d,Bl(this,!1));this.B.Bc+=6;12<this.B.Bc&&(this.B.Bc=0,this.B.fd=this.B.fd+1&255)};l.Lk=function(){return this.B.Sf};l.Gl=function(a,b){this.B.fj=b};l.Mk=function(){return this.B.gf};l.Fl=function(a,b){this.B.ej=b};l.qk=function(){return this.B.Ae};l.El=function(a,b){this.B.Ae=b};l.pk=function(){return this.B.Gd[this.B.Ae]};
l.tl=function(a,b){var c=this.B.ze[this.B.fd],d=c&~(63<<this.B.Bc)|(b&63)<<this.B.Bc;c!==d&&(this.B.ze[this.B.fd]=d,Bl(this,!1));this.B.Bc+=6;12<this.B.Bc&&(this.B.Bc=0,this.B.fd=this.B.fd+1&255)};l.Lk=function(){return this.B.Sf};l.Gl=function(a,b){this.B.gj=b};l.Mk=function(){return this.B.gf};l.Fl=function(a,b){this.B.fj=b};l.qk=function(){return this.B.Ae};l.El=function(a,b){this.B.Ae=b};l.pk=function(){return this.B.Gd[this.B.Ae]};
l.Dl=function(a,b){this.B.Gd[this.B.Ae]=b;switch(this.B.Ae){case 0:this.B.af=Sk[b&15];this.B.Cd=this.B.af&~this.B.nd;break;case 1:this.B.nd=~Sk[b&15];this.B.Cd=this.B.af&~this.B.nd;break;case 2:this.B.qg=Sk[b&15]&-2139062144;break;case 3:case 5:Al(this,zl(this));break;case 4:this.B.fh=(b&3)<<3;break;case 6:ql(this,!1);break;case 7:this.B.rg=Sk[b&15]&-2139062144;break;case 8:this.B.tb=b|b<<8|b<<16|b<<24}};l.ak=function(){var a=this.R,b;a.cc&&(b=a.sc);return b};
l.ol=function(a,b){var c=this.R;c.Qf=c.sc;c.sc=b&31};l.$j=function(){return El(this.R)};l.nl=function(a,b){Fl(this,this.R,b)};l.bk=function(){return this.R.Lc};l.pl=function(a,b){this.R.Lc=b;ql(this,!1)};l.Zj=function(){return this.R.ff};l.ml=function(a,b){this.R.ff!==b&&(this.R.ff=b,Bl(this,!1))};l.ck=function(){return Gl(this,this.R)};function El(a){var b;a.cc&&a.sc<a.pg&&(b=a.ab[a.sc]);return b}
function Fl(a,b,c){if(b.sc<b.pg){b.ab[b.sc]=c;if(12==b.sc||13==b.sc)if(Dl(a,b)&1){var d=(b.ab[12]<<8)+b.ab[13]|0;b.ed!==d&&(b.ed=d,Bl(a))}else b.xe||(b.xe=b.gh);(9==b.sc&&8!=b.Qf||18==b.sc&&223==c)&&ql(a,!0);rl(a)}}function Gl(a,b){var c=Dl(a,b);b===a.B?(c|=b.Z&48^48,b.Ke=!1):c=(b.Z^=9)|240;return b.Z=c}
var bl={948:Y.prototype.xk,949:Y.prototype.wk,952:Y.prototype.yk,954:Y.prototype.zk},cl={948:Y.prototype.Ll,949:Y.prototype.Kl,952:Y.prototype.Ml},dl={980:Y.prototype.ak,981:Y.prototype.$j,984:Y.prototype.bk,985:Y.prototype.Zj,986:Y.prototype.ck},el={980:Y.prototype.ol,981:Y.prototype.nl,984:Y.prototype.pl,985:Y.prototype.ml},fl={960:Y.prototype.Vj,961:Y.prototype.vj,962:Y.prototype.Jk,964:Y.prototype.Hk,965:Y.prototype.Gk,974:Y.prototype.qk,975:Y.prototype.pk},gl={954:Y.prototype.cj,960:Y.prototype.bj,
var bl={948:Y.prototype.xk,949:Y.prototype.wk,952:Y.prototype.yk,954:Y.prototype.zk},cl={948:Y.prototype.Ll,949:Y.prototype.Kl,952:Y.prototype.Ml},dl={980:Y.prototype.ak,981:Y.prototype.$j,984:Y.prototype.bk,985:Y.prototype.Zj,986:Y.prototype.ck},el={980:Y.prototype.ol,981:Y.prototype.nl,984:Y.prototype.pl,985:Y.prototype.ml},fl={960:Y.prototype.Vj,961:Y.prototype.wj,962:Y.prototype.Jk,964:Y.prototype.Hk,965:Y.prototype.Gk,974:Y.prototype.qk,975:Y.prototype.pk},gl={954:Y.prototype.cj,960:Y.prototype.bj,
961:Y.prototype.bj,962:Y.prototype.Nl,964:Y.prototype.Tl,965:Y.prototype.Sl,970:Y.prototype.Gl,972:Y.prototype.Fl,974:Y.prototype.El,975:Y.prototype.Dl,986:Y.prototype.cj},hl={963:Y.prototype.Kk,966:Y.prototype.hk,967:Y.prototype.ik,969:Y.prototype.gk,970:Y.prototype.Lk,972:Y.prototype.Mk},il={963:Y.prototype.Vl,966:Y.prototype.ul,967:Y.prototype.vl,968:Y.prototype.wl,969:Y.prototype.tl};
Ea(function(){for(var a=Za(document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),e=document.createElement("canvas");if(void 0===e||!e.getContext){c.innerHTML="<br/>Missing &lt;canvas&gt; support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(c.onresize=function(a,
b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight),c.onresize());c.appendChild(e);var f=document.createElement("textarea");ya("iOS")&&(f.setAttribute("autocapitalize","off"),f.setAttribute("autocorrect","off"));c.appendChild(f);var g=e.getContext("2d"),d=new Y(d,e,g,f,c);Ya(d,c)}});
b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight),c.onresize());var f=+La.aspect;f&&(Da("onresize",function(a,b,c){return function(){b.style.height=(a.clientWidth/c|0)+"px"}}(c,e,f)),window.onresize());c.appendChild(e);f=document.createElement("textarea");ya("iOS")&&(f.setAttribute("autocapitalize","off"),f.setAttribute("autocorrect","off"));c.appendChild(f);var g=e.getContext("2d"),d=new Y(d,e,g,f,c);Ya(d,c)}});
function Hl(a){this.I=a.adapter;switch(this.I){case 1:this.G=956;this.D=7;break;case 2:this.G=888;this.D=7;break;case 3:this.G=632;this.D=5;break;default:n("Unrecognized parallel adapter #"+this.I);return}this.B=this.C=null;Ia.call(this,"ParallelPort",a,Hl);a=a.binding;"console"==a?this.C="":Xa(this,a,Il)}Qa(Hl);var Il="buffer";l=Hl.prototype;l.zb=function(a,b,c){switch(b){case Il:return this.la[b]=this.B=c,!0}return!1};
l.pc=function(a,b,c,d){this.ha=b;this.A=c;this.Ia=d;this.P=kb(a,"ChipSet");Nb(b,this,Jl,this.G);Pb(b,this,Kl,this.G);ab(this)};l.Vb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Ub=function(a){return a?this.save():!0};l.reset=function(){Ll(this)};l.save=function(){var a=new ce(this),b=0,c=[];c[b++]=this.H;c[b++]=this.Db;c[b]=this.Ie;C(a,0,c);return a.data()};l.restore=function(a){return Ll(this,a[0])};
function Ll(a,b){var c=0;void 0===b&&(b=[0,0,0]);a.H=b[c++];a.Db=b[c++];a.Ie=b[c];return!0}l.jk=function(){return this.H};l.Ik=function(){return this.Db};l.fk=function(){return this.Ie};
@ -523,10 +523,10 @@ l.je=function(a,b){if(this.cc&&this.A&&this.A.ea.Sb)switch(a){case ml:if(this.P!
function am(a,b,c){Ia.call(this,"Disk",{id:a.lf+".disk"+ea(++bm,4)},am);this.controller=a;this.aa=a.aa;this.Ia=a.Ia;this.C=b;this.B=b.name;this.oe=b.oe;this.Af=this.D=!1;cm(this,c,b.ib,b.jb,b.eb,b.nb);this.I=[];this.P=[];this.G=null;this.S=0;this.R=!1;ab(this)}var bm=0;Qa(am);l=am.prototype;l.pc=function(a,b,c,d){this.Ia=d};l.Vb=function(a,b){b||!this.Af||this.D||(ab(this,!1),this.load(this.B,this.H,null,this.Gj,this));return!0};l.Gj=function(){ab(this,!0)};
l.Ub=function(a,b){if(this.D){var c,d=0;if(this.R&&!ra("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=dm(this,!1);)if(d=c[0]){this.controller.Ca('Unable to save "'+this.B+'" (error '+d+")");break}b&&this.D&&(c="action=close&volume="+this.H,c+="&machine="+this.controller.se(),c+="&user="+this.controller.zd(),pa(qa()+"/api/v1/disk?"+c,null,!0),this.D=!1);!d&&a&&this.controller.Ca(this.B+" saved")}return!0};
function cm(a,b,c,d,e,f){a.mode=b;a.ib=c;a.jb=d;a.eb=e;a.nb=f;a.A=[];if("preload"!=a.mode){b=Array(a.ib);for(c=0;c<b.length;c++){d=Array(a.jb);for(e=0;e<d.length;e++){f=Array(a.eb);for(var g=1;g<=f.length;g++)f[g-1]=em(null,c,e,g,a.nb,"local"==a.mode?0:null);d[e]=f}b[c]=d}a.A=b}a.L=null}
l.load=function(a,b,c,d,e){var f=b;if(this.K)return!0;this.B=a;this.H=b;this.gj=fa(b);var g=this;this.K=d;this.ha=e||this.controller;if(c){var h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=ba[c];if(d){g.ib=d[0];g.jb=d[1];g.eb=d[2];g.nb=512;b=g.nb>>2;var e=d=0,a=new DataView(a,0,c);g.A=Array(g.ib);for(c=0;c<g.A.length;c++)for(var f=g.A[c]=Array(g.jb),E=0;E<f.length;E++)for(var J=f[E]=Array(g.eb),W=0;W<J.length;W++){for(var da=em(null,c,E,W+1,g.nb,0),ua=da.data,va=0;va<
l.load=function(a,b,c,d,e){var f=b;if(this.K)return!0;this.B=a;this.H=b;this.hj=fa(b);var g=this;this.K=d;this.ha=e||this.controller;if(c){var h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=ba[c];if(d){g.ib=d[0];g.jb=d[1];g.eb=d[2];g.nb=512;b=g.nb>>2;var e=d=0,a=new DataView(a,0,c);g.A=Array(g.ib);for(c=0;c<g.A.length;c++)for(var f=g.A[c]=Array(g.jb),E=0;E<f.length;E++)for(var J=f[E]=Array(g.eb),W=0;W<J.length;W++){for(var da=em(null,c,E,W+1,g.nb,0),ua=da.data,va=0;va<
b;va++,e+=4)var qd=ua[va]=a.getInt32(e,!0),d=d+qd&-1;da.Dc=b;J[W]=da}g.L=d;b=g}else g.Ca("Unrecognized diskette format ("+c+" bytes)");g.K&&(g.K.call(g.controller,g.C,b,g.B,g.H),g.K=null)};h.readAsArrayBuffer(c);return!0}0>b.indexOf("/api/v1/dump")&&(a=ga(b),"json"==a||"gz"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=fm(this,b),this.Af=!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"):
ha(b,"/")&&(c="dir"),f=qa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.oe?"":d)+"&format=json"));return!!pa(f,null,!0,function(a,b,c){gm(g,a,b,c)})};
function gm(a,b,c,d){var e=null;a.re=!1;var f=0>d&&a.aa&&!a.aa.ea.Rb;if(a.Af)d?a.controller.Ca('Unable to connect to disk "'+a.H+'" (error '+d+": "+c+")",f):(a.D=!0,e=a);else if(d)a.controller.Ca('Unable to load disk "'+a.B+'" (error '+d+": "+b+")",f);else{Sa(a.controller.lf,b,c);try{if(0<fa(a.gj,!0).toLowerCase().indexOf("-readonly"))a.re=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.re=!0)}var h;"<"==c.substr(0,1)?h=["Missing disk image: "+a.B]:h=0>
function gm(a,b,c,d){var e=null;a.re=!1;var f=0>d&&a.aa&&!a.aa.ea.Rb;if(a.Af)d?a.controller.Ca('Unable to connect to disk "'+a.H+'" (error '+d+": "+c+")",f):(a.D=!0,e=a);else if(d)a.controller.Ca('Unable to load disk "'+a.B+'" (error '+d+": "+b+")",f);else{Sa(a.controller.lf,b,c);try{if(0<fa(a.hj,!0).toLowerCase().indexOf("-readonly"))a.re=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.re=!0)}var h;"<"==c.substr(0,1)?h=["Missing disk image: "+a.B]:h=0>
c.indexOf("0x")&&'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+c+")");if(h.length)if(1==h.length)n(h[0]);else{a.ib=h.length;a.jb=h[0].length;a.eb=h[0][0].length;var k=h[0][0][0];a.nb=k&&k.length||512;for(d=c=0;d<a.ib;d++)for(f=0;f<a.jb;f++)for(g=0;g<a.eb;g++)if(k=h[d][f][g]){var m=k.length;void 0===m&&(m=k.length=512);var m=m>>2,p=k.pattern;void 0===p&&(p=k.pattern=0);var x=k.data;if(void 0===x){var r=k.bytes;if(void 0!==r&&r.length){for(var z=
m<<2,E=r.length;E<z;E++)r[E]=p;hm(k,r,0)}else x=[],p=k.pattern=p|p<<8|p<<16|p<<24,k.data=x;delete k.bytes}em(k,d,f);for(z=0;z<x.length;z++)c=c+x[z]&-1}a.A=h;a.L=c;e=a}else n("Empty disk image: "+a.B)}catch(J){n("Disk image error ("+b+"): "+J.message)}}a.K&&(a.K.call(a.ha,a.C,e,a.B,a.H),a.K=null)}function im(a,b){var c=a.jb*a.eb,d=b/c|0;return d<a.ib?(c=b%c,a.seek(d,c/a.eb|0,c%a.eb+1)):null}function jm(a,b,c){for(var d=1,e=0,f=0;d--;){var g=a.read(b,c++);if(0>g)break;e|=g<<f;f+=8}return e}
function em(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Jj=b;a.Kj=c;a.Uc=a.Dc=0;a.Ha=!1;return a}function fm(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.ib+":"+a.jb+":"+a.eb+":"+a.nb;c+="&machine="+a.controller.se();c+="&user="+a.controller.zd();return qa()+"/api/v1/disk?"+c}
@ -541,66 +541,66 @@ l.save=function(){var a=0,b=[];b[a++]=[this.H,this.L,this.ib,this.jb,this.eb,thi
l.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.A.length&&6<=e.length?cm(this,"local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.L&&e[1]!=this.L&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.L+")",b=-2));for(this.A.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],k=g[f++],m=g[f++];if(h>=this.A.length||k>=this.A[h].length||m>=this.A[h][k].length){c="sector (CHS="+h+":"+k+":"+m+") out of range ("+
b+" changes applied)";b=-1;break}if(this.re){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.A[h][k][m]){for(k=h.data.length;k<e;)h.data[k++]=h.pattern;k=0;h.Uc=e;for(h.Dc=f.length;e<g;)h.data[e++]=f[k++];b++}}}0>b&&-2!=b&&this.controller.Ca("Unable to restore disk '"+this.B+": "+c);return b};
l.toJSON=function(){var a;a=0;for(var b;b=im(this,a++);)pm(b);a=JSON.stringify(this.A,function(a,b){return"file"==a?void 0:b});a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");a=a.replace(/(sector|length|data|pattern):/gm,'"$1":');return a=a.replace(/([\]}]),/gm,"$1,\n")};
function pm(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}function qm(a){Ia.call(this,"FDC",a,qm);this.dmaRead=this.pj;this.dmaWrite=this.qj;this.dmaFormat=this.Cj;this.K=a.autoMount||null;this.C=[];this.X=!ya("Mobi")&&window&&"FileReader"in window}Qa(qm);aa={};
function pm(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}function qm(a){Ia.call(this,"FDC",a,qm);this.dmaRead=this.qj;this.dmaWrite=this.rj;this.dmaFormat=this.Cj;this.K=a.autoMount||null;this.C=[];this.X=!ya("Mobi")&&window&&"FileReader"in window}Qa(qm);aa={};
var rm={3:{jd:3,xd:0,name:aa.Fm},4:{jd:2,xd:1,name:aa.Dm},5:{jd:9,xd:7,name:aa.Nm},6:{jd:9,xd:7,name:aa.ym},7:{jd:2,xd:0,name:aa.Am},8:{jd:1,xd:2,name:aa.Em},10:{jd:2,xd:7,name:aa.zm},13:{jd:6,xd:7,name:aa.km},15:{jd:3,xd:0,name:aa.Cm}};l=qm.prototype;
l.zb=function(a,b,c){var d=this;switch(b){case "listDisks":return this.la[b]=c,c.onchange=function(){var a=d.la.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("("+b+")")}catch(h){n("FDC option error: "+h.message)}b=g.desc;void 0===b&&(b="");g=g.href;void 0!==g&&(b='<a href="'+g+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.la[b]=c,c.onchange=function(){var a=ca(c.value,10);null!=a&&sm(d,a)},!0;
case "loadDrive":return this.la[b]=c,c.onclick=function(){var a=d.la.listDisks;a&&tm(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDrive":if(!this.X){c.parentNode.removeChild(c);break}this.la[b]=c;c.onclick=function(){var a=d.la.listDrives;if(a&&a.options&&d.B)if(a=ca(a.value,10),a=d.B[a])if(a.ta){for(var b=a.ta,c="",h=0,k;k=im(b,h++);)for(var m=0,p=k.length;m<p;m++)c+=String.fromCharCode(jm(b,k,m));a=za(btoa(c),"octet-stream",!0,a.ta.gj.replace(".json",".img"));n(a)}else d.Ca("No disk loaded in drive");
case "loadDrive":return this.la[b]=c,c.onclick=function(){var a=d.la.listDisks;a&&tm(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDrive":if(!this.X){c.parentNode.removeChild(c);break}this.la[b]=c;c.onclick=function(){var a=d.la.listDrives;if(a&&a.options&&d.B)if(a=ca(a.value,10),a=d.B[a])if(a.ta){for(var b=a.ta,c="",h=0,k;k=im(b,h++);)for(var m=0,p=k.length;m<p;m++)c+=String.fromCharCode(jm(b,k,m));a=za(btoa(c),"octet-stream",!0,a.ta.hj.replace(".json",".img"));n(a)}else d.Ca("No disk loaded in drive");
else d.Ca("No drive selected")};return!0;case "mountDrive":if(!this.X){c.parentNode.removeChild(c);break}this.la[b]=c;c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length});c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;tm(d,fa(b,!0),b,a)}return!1};return!0}return!1};
l.pc=function(a,b,c,d){this.ha=b;this.A=c;this.Ia=d;this.aa=a;this.P=kb(a,"ChipSet");if((this.K=jc(this.aa,"autoMount")||this.K)&&"string"==typeof this.K)try{this.K=eval("("+this.K+")")}catch(e){n("FDC auto-mount error: "+e.message+" ("+this.K+")"),this.K=null}um(this);Nb(b,this,vm);Pb(b,this,wm);this.X&&xm(this,"Local Disk","?");xm(this,"Remote Disk","??");ym(this)||ab(this)};
l.Vb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.aa.jg){this.C=[];for(var c=0;c<this.B.length;c++)zm(this,c,!0);ym(this,!0)}}else if(!this.restore(a))return!1;if(c=this.la.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.textContent="";for(var d=0;d<this.Y;d++){var e=document.createElement("option");e.value=d;e.textContent=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.Y&&(c.value="0",sm(this,0))}}return!0};l.Ub=function(a){return a?this.save():!0};l.reset=function(){um(this)};
l.save=function(){var a=new ce(this),b=0,c=[];c[b++]=this.Qa;c[b++]=0;c[b++]=this.Z;c[b++]=this.I;c[b++]=this.G;c[b++]=this.D;c[b++]=this.S;for(var d=b++,e=0,f=[],g=0;g<this.B.length;g++){var h=e++,k=this.B[g],m=0,p=[];p[m++]=k.kb;p[m++]=[k.name,k.ib,k.jb,k.eb,k.nb,k.oe,k.Hf,k.Ue,k.Ve];p[m++]=k.Ya;p[m++]=k.vd+100;p[m++]=k.xb;p[m++]=k.mb;p[m++]=k.wd;p[m++]=k.wb;p[m++]=k.Ua;p[m++]=k.me;p[m++]=k.hj;p[m]=k.Vd;f[h]=p}c[d]=f;d=b++;for(e=0;e<this.B.length;e++)f=this.B[e],f.ta&&Am(this,f.Vd,f.ta);c[d]=this.C;
l.save=function(){var a=new ce(this),b=0,c=[];c[b++]=this.Qa;c[b++]=0;c[b++]=this.Z;c[b++]=this.I;c[b++]=this.G;c[b++]=this.D;c[b++]=this.S;for(var d=b++,e=0,f=[],g=0;g<this.B.length;g++){var h=e++,k=this.B[g],m=0,p=[];p[m++]=k.kb;p[m++]=[k.name,k.ib,k.jb,k.eb,k.nb,k.oe,k.Hf,k.Ue,k.Ve];p[m++]=k.Ya;p[m++]=k.vd+100;p[m++]=k.xb;p[m++]=k.mb;p[m++]=k.wd;p[m++]=k.wb;p[m++]=k.Ua;p[m++]=k.me;p[m++]=k.ij;p[m]=k.Vd;f[h]=p}c[d]=f;d=b++;for(e=0;e<this.B.length;e++)f=this.B[e],f.ta&&Am(this,f.Vd,f.ta);c[d]=this.C;
c[b++]=this.L;c[b]=this.H;C(a,0,c);return a.data()};l.restore=function(a){return um(this,a[0])};
function um(a,b){var c=0,d,e=!0;void 0===b&&(b=[0,0,128,Array(9),0,0,0,[]]);a.Qa=b[c++];c++;a.Z=b[c++];a.I=b[c++];a.G=b[c++];a.D=b[c++];a.S=b[c++];var f=b[c++];d=b[c++];null!=d&&(a.C=d);void 0===a.B&&(a.Y=4,a.P&&(a.Y=+Zi(a.P,Ei,void 0)),a.B=Array(4));for(d=0;d<a.B.length;d++){var g=a.B[d];if(void 0===g){var g=a.B[d]={},h;if(a.P)a:{h=a.P;if(d<+Zi(h,Ei,void 0)){if(!h.Y){h=360;break a}if(d<h.Y.length){h=h.Y[d];break a}}h=0}else h=0;switch(h){case 160:case 180:g.jb=1;default:g.ib=40;g.eb=9;break;case 720:g.ib=
80;g.eb=9;break;case 1200:g.ib=80;g.eb=15;break;case 1440:g.ib=80,g.eb=18}}var k=a,m=d,p=f[d],x=0;h=!0;g.Qa=m;g.Qc=g.me=!1;void 0===p&&(p=[192,!0,0,2,0]);"boolean"==typeof p[1]&&(p[1]=["Floppy Drive",g.ib||40,g.jb||p[3],g.eb||9,g.nb||512,p[1],g.Hf,g.Ue,g.Ve]);g.kb=p[x++];var r=p[x++];g.name=r[0];g.ib=r[1];g.jb=r[2];g.eb=r[3];g.nb=r[4];g.oe=r[5];(g.Hf=r[6])?(g.Ue=r[7],g.Ve=r[8]):(g.Hf=g.ib,g.Ue=g.jb,g.Ve=g.eb);g.Ya=p[x++];g.vd=p[x++];g.xb=p[x++];g.vd=100<=g.vd?g.vd-100:g.vd-g.xb;g.mb=p[x++];g.wd=p[x++];
g.wb=p[x++];g.Ua=p[x++];g.Wa=null;g.ta||(g.Vd="");r=p[x++];102==r&&(r=!1);if("boolean"==typeof r){var z=r,r=p[x++],p=p[x];z?(x=r,r=k.B[m],zm(k,m,!0,!0),r.me=!0,m=new am(k,r,"preload"),k.Lh(r,m,x,p,!0)):Bm(k,m,r,p,!0)?g.ta&&p&&Cm(k,r,p,g.ta):ab(k,!1)}else void 0!==r&&g.ta&&0>g.ta.restore(r)&&(h=!1);h&&g.ta&&void 0!==g.Ua&&(g.Wa=g.ta.seek(g.xb,g.Ya,g.mb));h||(e=!1)}a.L=b[c++]||0;a.H=b[c]||0;return e}
function ym(a,b){b||(a.R=0);if(a.K)for(var c in a.K){var d=a.K[c],e=d.path,f;if(!(f=d.name))a:{if((f=a.la.listDisks)&&f.options)for(var g=0;g<f.options.length;g++)if(f.options[g].value==e){f=f.options[g].innerText;break a}f=fa(e,!0)}if(e&&f&&(g=c.charCodeAt(0)-65,0<=g&&g<a.B.length)){!Bm(a,g,f,e,!0)&&b&&ab(a,!1);continue}a.Ca("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")")}return!!a.R}
function ym(a,b){b||(a.R=0);if(a.K)for(var c in a.K){var d=a.K[c],e=d.path,f;if(!(f=d.name))a:{if((f=a.la.listDisks)&&f.options)for(var g=0;g<f.options.length;g++){var h=f.options[g];if(h.value==e){f=h.textContent;break a}}f=fa(e,!0)}if(e&&f&&(g=c.charCodeAt(0)-65,0<=g&&g<a.B.length)){!Bm(a,g,f,e,!0)&&b&&ab(a,!1);continue}a.Ca("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")")}return!!a.R}
function tm(a,b,c,d){var e,f=a.la.listDrives;if(f&&!isNaN(e=ca(f.value,10))&&0<=e&&e<a.B.length)if(c)if("?"==c)a.Ca('Use "Choose File" and "Mount" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=fa(c)}for(;0>Bm(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var f=a,g=c,h=void 0,h=0;h<f.C.length;h++)if(f.C[h][1]==g){f.C.splice(h,1);break}zm(a,
e,!1,!0)}}else zm(a,e);else a.Ca("Unable to load the selected drive")}function Bm(a,b,c,d,e,f){var g=a.B[b];if(d&&g.Vd!=d){zm(a,b,e,!0);if(g.Qc)return a.Ca("Drive "+b+" busy"),0;g.Qc=!0;e&&(g.Nd=!0,a.R++);g.me=!!f;return(new am(a,g,"preload")).load(c,d,f,a.Lh)?1:0}return-1}
l.Lh=function(a,b,c,d,e){var f;a.Qc=!1;b&&(f=b.info(),b&&f[0]>a.ib||f[1]>a.jb)&&(this.Ca('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Qa)),b=null);b?(a.ta=b,a.hj=c,a.Vd=d,Cm(this,c,d,b),f=b.info(),this.L|=128,this.Ca('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Qa),a.Nd||e),a.Hf=f[0],a.Ue=f[1],a.Ve=f[2],this.aa&&uc(this.aa)):a.me=!1;a.Nd&&(a.Nd=!1,--this.R||ab(this));sm(this,a.Qa)};
l.Lh=function(a,b,c,d,e){var f;a.Qc=!1;b&&(f=b.info(),b&&f[0]>a.ib||f[1]>a.jb)&&(this.Ca('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Qa)),b=null);b?(a.ta=b,a.ij=c,a.Vd=d,Cm(this,c,d,b),f=b.info(),this.L|=128,this.Ca('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Qa),a.Nd||e),a.Hf=f[0],a.Ue=f[1],a.Ve=f[2],this.aa&&uc(this.aa)):a.me=!1;a.Nd&&(a.Nd=!1,--this.R||ab(this));sm(this,a.Qa)};
function xm(a,b,c){if((a=a.la.listDisks)&&a.options){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=document.createElement("option");d.value=c;d.textContent=b;a.appendChild(d)}}
function sm(a,b){if(0<=b&&b<a.B.length){var c=a.B[b],d=a.la.listDisks,e=a.la.listDrives;if(d&&e&&d.options&&e.options&&(e=ca(e.value,10),c=c.me?"?":c.Vd,!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function zm(a,b,c,d){var e=a.B[b];e.ta&&(Am(a,e.Vd,e.ta),e.hj="",e.Vd="",e.ta=null,e.me=!1,a.L|=128,d||a.Ca("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||sm(a,b))}
function sm(a,b){if(0<=b&&b<a.B.length){var c=a.B[b],d=a.la.listDisks,e=a.la.listDrives;if(d&&e&&d.options&&e.options&&(e=ca(e.value,10),c=c.me?"?":c.Vd,!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function zm(a,b,c,d){var e=a.B[b];e.ta&&(Am(a,e.Vd,e.ta),e.ij="",e.Vd="",e.ta=null,e.me=!1,a.L|=128,d||a.Ca("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||sm(a,b))}
function Cm(a,b,c,d){var e;for(e=0;e<a.C.length;e++)if(a.C[e][1]==c){d.restore(a.C[e][2]);return}a.C[e]=[b,c,[]]}function Am(a,b,c){var d;for(d=0;d<a.C.length;d++)if(a.C[d][1]==b){a.C[d][2]=c.save();break}}l.Al=function(a,b){b&4?this.S&4||this.S&8&&this.P&&Te(this.P,6):um(this);this.S=b};l.lk=function(){return 80};l.nk=function(){return this.Z};l.kk=function(){var a=0;this.G<this.D&&(a=this.I[this.G]);this.S&8&&this.P&&Se(this.P,6);++this.G>=this.D&&(this.Z&=-81,this.G=this.D=0);return a};
l.zl=function(a,b){this.D<this.I.length&&(this.I[this.D++]=b);var c=this.I[0]&31;if(void 0!==rm[c]&&this.D>=rm[c].jd){var d=!1;this.G=0;var c=Dm(this),e,f,g,h,k,m=c&31;switch(m){case 3:Dm(this);Dm(this);Em(this);break;case 4:f=Dm(this);this.Qa=f&3;e=this.B[this.Qa];Em(this);Fm(this,(e.kb&-16777216)>>>24);break;case 5:case 6:f=Dm(this);d=f>>2&1;this.Qa=f&3;e=this.B[this.Qa];e.Ya=d;f=e.xb=Dm(this);g=Dm(this);h=e.mb=Dm(this);k=Dm(this);e.wb=128<<k;e.wd=Dm(this);Dm(this);Dm(this);6==m?(m=e,m.kb=72,m.ta&&
(m.Wa=null,m.kb=0,this.P&&(Cj(this.P,2,this,"dmaRead",m),yj(this.P,2)))):(m=e,m.kb=72,m.ta&&(m.ta.re?m.kb=576:(m.Wa=null,m.kb=0,this.P&&(Cj(this.P,2,this,"dmaWrite",m),yj(this.P,2)))));Gm(this,e,c,d,f,g,h,k);d=!0;break;case 7:f=Dm(this);this.Qa=f&3;e=this.B[this.Qa];e.xb=e.vd=0;e.kb=268435488;Em(this);d=!0;break;case 8:e=this.B[this.Qa];e.Ya=0;Em(this);Fm(this,e.Qa|e.Ya<<2|e.kb&255);Fm(this,e.xb);this.Qa=this.Qa+1&3;break;case 10:f=Dm(this);d=f>>2&1;this.Qa=f&3;e=this.B[this.Qa];f=e.xb;g=e.Ya=d;h=
e.mb=1;k=0;e.kb=0;e.ta&&(e.Wa=e.ta.seek(e.xb,e.Ya,e.mb))?k=e.Wa.length>>8:e.kb=72;Gm(this,e,c,d,f,g,h,k);d=!0;break;case 13:f=Dm(this);d=f>>2&1;this.Qa=f&3;e=this.B[this.Qa];f=e.xb;g=e.Ya=d;h=1;k=Dm(this);e.wb=128<<k;e.wd=Dm(this);Dm(this);e.Eh=Dm(this);m=e;m.kb=72;m.ta&&(m.Wa=null,m.kb=0,this.P&&(m.ie=0,m.Pc=Array(4),m.cg=!0,m.vf=0,Cj(this.P,2,this,"dmaFormat",m),yj(this.P,2),m.cg=!1));Gm(this,e,c,d,f,g,h,k);d=!0;break;case 15:f=Dm(this),this.Qa=f&3,e=this.B[this.Qa],e.Ya=f>>2&1,f=Dm(this),e.xb+=
f-e.vd,0>e.xb&&(e.xb=0),e.xb>=e.ib&&(e.xb=e.ib-1),e.vd=f,e.kb=32,e.xb||(e.kb|=268435456),Em(this),d=!0}0<this.D&&(this.Z|=80);this.S&8&&(!e||e.kb&8||!d||this.P&&Te(this.P,6))}};l.mk=function(){var a=this.L;this.L&=-129;return a};l.yl=function(a,b){this.H=b};function Gm(a,b,c,d,e,f,g,h){Em(a);Fm(a,b.Qa|b.Ya<<2|b.kb&255);Fm(a,(b.kb&65280)>>>8);Fm(a,(b.kb&16711680)>>>16);var k=0;if(e!=b.xb||f!=b.Ya)k=g=1;c&128&&(f^=k,d||(k=0));Fm(a,e+k);Fm(a,f);Fm(a,g);Fm(a,h)}
function Dm(a){var b=a.I[a.G];a.G++;return b}function Em(a){a.G=a.D=0}function Fm(a,b){a.I[a.D++]=b}l.pj=function(a,b,c){if(void 0===b||0>b){b=-1;var d=null,e=0;if(!a.kb&&a.ta){do{if(a.Wa&&(e=a.Ua,0<=(b=a.ta.read(a.Wa,a.Ua++)))){d=a.Wa;break}a.Wa=a.ta.seek(a.xb,a.Ya,a.mb);if(!a.Wa){a.kb=1088;break}a.Ua=0;Hm(a)}while(1)}c(b,!1,d,e)}else c(-1,!1)};l.qj=function(a,b){return void 0!==b&&0<=b?Im(a,b):-1};
function Dm(a){var b=a.I[a.G];a.G++;return b}function Em(a){a.G=a.D=0}function Fm(a,b){a.I[a.D++]=b}l.qj=function(a,b,c){if(void 0===b||0>b){b=-1;var d=null,e=0;if(!a.kb&&a.ta){do{if(a.Wa&&(e=a.Ua,0<=(b=a.ta.read(a.Wa,a.Ua++)))){d=a.Wa;break}a.Wa=a.ta.seek(a.xb,a.Ya,a.mb);if(!a.Wa){a.kb=1088;break}a.Ua=0;Hm(a)}while(1)}c(b,!1,d,e)}else c(-1,!1)};l.rj=function(a,b){return void 0!==b&&0<=b?Im(a,b):-1};
l.Cj=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.kb)c=-1;else{a.Pc[a.ie++]=c;if(a.ie==a.Pc.length){a.xb=a.Pc[0];a.Ya=a.Pc[1];a.mb=a.Pc[2];a.wb=128<<a.Pc[3];for(var d=a.ie=0;d<a.wb;d++)if(0>Im(a,a.Eh)){c=-1;break a}a.vf++}a.vf>=a.wd&&(c=-1)}else c=-1;return c};function Im(a,b){if(a.kb||!a.ta)return-1;do{if(a.Wa&&a.ta.write(a.Wa,a.Ua++,b))break;a.Wa=a.ta.seek(a.xb,a.Ya,a.mb);if(!a.Wa){a.kb=8256;b=-1;break}a.Ua=0;Hm(a)}while(1);return b}
function Hm(a){a.mb++;a.mb>=a.Ve+1&&(a.mb=1,a.Ya++,a.Ya>=a.Ue&&(a.Ya=0,a.xb++))}var vm={1009:qm.prototype.lk,1012:qm.prototype.nk,1013:qm.prototype.kk,1015:qm.prototype.mk},wm={1010:qm.prototype.Al,1013:qm.prototype.zl,1015:qm.prototype.yl};Ea(function(){for(var a=Za(document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new qm(d);Ya(d,c)}});
function Z(a){Ia.call(this,"HDC",a,Z);this.dmaRead=this.rj;this.dmaWrite=this.sj;this.dmaWriteBuffer=this.Dj;this.dmaWriteFormat=this.Ej;this.ia=[];this.qa=a.drives;this.X="at"==a.type}Qa(Z);
function Z(a){Ia.call(this,"HDC",a,Z);this.dmaRead=this.sj;this.dmaWrite=this.tj;this.dmaWriteBuffer=this.Dj;this.dmaWriteFormat=this.Ej;this.ia=[];this.qa=a.drives;this.X="at"==a.type}Qa(Z);
var Jm=["XTC","ATC","COMPAQ"],Km=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966,6],19:[1023,
8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}];l=Z.prototype;l.zb=function(){return!1};
l.pc=function(a,b,c,d){this.ha=b;this.A=c;this.Ia=d;this.aa=a;if(d=jc(a,"drives"))this.ia=d;else if(this.qa)try{this.ia=eval("("+this.qa+")")}catch(e){n("HDC drive configuration error: "+e.message+" ("+this.qa+")")}this.P=kb(a,"ChipSet");this.H=0;this.ra=3;Nb(b,this,this.X?Lm:Mm);Pb(b,this,this.X?Nm:Om);this.X&&(this.H++,this.P&&5180==this.P.ca&&this.H++,this.ra=2,b.P[496]=2,b.S[496]=2);Zd(c,19,this.Rk.bind(this));Zd(c,64,this.Sk.bind(this));this.reset();Pm(this)||ab(this)};
l.Vb=function(a,b){if(!b)if(!a||!this.restore)Qm(this),this.aa.jg&&Pm(this,!0);else if(!this.restore(a))return!1;return!0};l.Ub=function(a){return a?this.save():!0};l.se=function(){return this.aa?this.aa.se():""};l.zd=function(){return this.aa?this.aa.zd():""};l.reset=function(){Qm(this,null,!0)};
l.save=function(){var a=new ce(this),b=0,c=[];this.X?(c[b++]=this.K,c[b++]=this.za,c[b++]=this.L,c[b++]=this.oa,c[b++]=this.ma,c[b++]=this.ka,c[b++]=this.ba,c[b++]=this.Z,c[b++]=this.pa,c[b++]=[this.S,this.Qa]):(c[b++]=this.da,c[b++]=this.Z,c[b++]=this.I,c[b++]=this.G,c[b++]=this.D,c[b++]=this.xa,c[b++]=this.va,c[b++]=this.ua,c[b++]=this.Y);for(var d=0,e=[],f=0;f<this.B.length;f++){var g=d++,h=this.B[f],k=0,m=[];m[k++]=h.errorCode;m[k++]=h.ij;m[k++]=h.oe;m[k++]=h.de;m[k++]=h.ee;m[k++]=h.Ya;m[k++]=
l.save=function(){var a=new ce(this),b=0,c=[];this.X?(c[b++]=this.K,c[b++]=this.za,c[b++]=this.L,c[b++]=this.oa,c[b++]=this.ma,c[b++]=this.ka,c[b++]=this.ba,c[b++]=this.Z,c[b++]=this.pa,c[b++]=[this.S,this.Qa]):(c[b++]=this.da,c[b++]=this.Z,c[b++]=this.I,c[b++]=this.G,c[b++]=this.D,c[b++]=this.xa,c[b++]=this.va,c[b++]=this.ua,c[b++]=this.Y);for(var d=0,e=[],f=0;f<this.B.length;f++){var g=d++,h=this.B[f],k=0,m=[];m[k++]=h.errorCode;m[k++]=h.jj;m[k++]=h.oe;m[k++]=h.de;m[k++]=h.ee;m[k++]=h.Ya;m[k++]=
h.jb;m[k++]=h.Jd;m[k++]=h.mb;m[k++]=h.wd;m[k++]=h.wb;m[k++]=h.Ua;m[k]=h.ta?h.ta.save():null;e[g]=m}c[b]=e;C(a,0,c);return a.data()};l.restore=function(a){return Qm(this,a[0])};
function Qm(a,b,c){var d=0,e=!0;a.Qa=-1;if(a.X){if(null==b&&(b=[0,0,0,0,0,0,0,64,0,[0,-1]]),a.K=b[d++],a.za=b[d++],a.L=b[d++],a.oa=b[d++],a.ma=b[d++],a.ka=b[d++],a.ba=b[d++],a.Z=b[d++],a.pa=b[d++],a.S=b[d++],"object"==typeof a.S){var f=a.S;a.S=f[0];a.Qa=f[1]}}else null==b&&(b=[0,0,Array(14),0,0]),a.da=b[d++],a.Z=b[d++],a.I=b[d++],a.G=b[d++],a.D=b[d++],a.xa=b[d++],a.va=b[d++],a.ua=b[d++],f=b[d++],void 0!==f?a.Y=f:void 0===a.Y&&(a.Y=-1);void 0===a.B&&(a.B=Array(a.ia.length));b=b[d];void 0===b&&(b=[]);
for(d=0;d<a.B.length;d++){void 0===a.B[d]&&(a.B[d]={});var f=a.B[d],g=a,h=d,k=f,m=a.ia[d],p=b[d],x=c,r=0,z=!0;void 0===p&&(p=[0,0,!1,Array(8)]);k.Qa=h;k.errorCode=p[r++];k.ij=p[r++];k.oe=p[r++];k.de=p[r++];k.ee=p[r++];k.Ya=p[r++];k.jb=p[r++];k.Jd=p[r++];k.mb=p[r++];k.wd=p[r++];k.wb=p[r++];k.uf=g.X?0:1;k.name=m.name;void 0===k.name&&(k.name="Hard Drive");k.path=m.path;k.mode=m.mode||(k.path?"preload":"local");"demandro"!=k.mode&&"demandrw"!=k.mode||g.zd()||(k.mode="local");k.type=m.type;if(void 0===
for(d=0;d<a.B.length;d++){void 0===a.B[d]&&(a.B[d]={});var f=a.B[d],g=a,h=d,k=f,m=a.ia[d],p=b[d],x=c,r=0,z=!0;void 0===p&&(p=[0,0,!1,Array(8)]);k.Qa=h;k.errorCode=p[r++];k.jj=p[r++];k.oe=p[r++];k.de=p[r++];k.ee=p[r++];k.Ya=p[r++];k.jb=p[r++];k.Jd=p[r++];k.mb=p[r++];k.wd=p[r++];k.wb=p[r++];k.uf=g.X?0:1;k.name=m.name;void 0===k.name&&(k.name="Hard Drive");k.path=m.path;k.mode=m.mode||(k.path?"preload":"local");"demandro"!=k.mode&&"demandrw"!=k.mode||g.zd()||(k.mode="local");k.type=m.type;if(void 0===
k.type||void 0===Km[g.H][k.type])k.type=g.ra;m=Km[g.H][k.type];k.eb=m[2]||17;k.nb=m[3]||512;if(x&&g.P){var E=g.P,J=k.type;if(E.B){var x=null,m=void 0,W=E.B[18];15<J&&(x=J,J=15);h?(W=W&240|J,m=26):(W=W&15|J<<4,m=25);J=E;J.B&&(J.B[18]=W,bj(J));null!=x&&E.B&&(E.B[m]=x,bj(E))}}void 0===k.ta&&(k.ta=null,g.Ca("Type "+k.type+' "'+k.name+'" is fixed disk '+h,!0));Rm(g,k);k.Ua=p[r++];k.Wa=null;k.ta&&(g=p[r],void 0!==g&&0>k.ta.restore(g)&&(z=!1),z&&void 0!==k.Ua&&(k.Wa=k.ta.seek(k.Jd,k.Ya,k.mb+k.uf)));z||(e=
!1);null!=a.da&&1>=d&&(a.da|=(f.type&3)<<(1-d<<1))}0<=a.Qa&&(a.C=a.B[a.Qa]);return e}function Rm(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.de[2])?e=b.de[0]<<8|b.de[1]:c=b.type);null==c||d||(d=Km[a.H][c][1],e=Km[a.H][c][0]);d&&((c=Km[a.H][b.type])&&e!=c[0]&&d!=c[1]&&a.Ca("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.ib=e,b.jb=d,null==b.ta&&(b.ta=new am(a,b,b.mode)))}}
function Pm(a,b){b||(a.R=0);for(var c=0;c<a.B.length;c++){var d=a.B[c];if(d.name&&d.path){if(!(b&&d.ta&&d.ta.Af)){var e;e=a;var f=d.name,d=d.path,g=e.B[c];g.Qc?(e.Ca("Drive "+c+" busy"),e=!0):(g.Qc=!0,g.Nd=!0,e.R++,(g.ta||new am(e,g,g.mode)).load(f,d,null,e.Fj),e=!1);!e&&b&&ab(a,!1)}}else b&&void 0!==d.type&&(d.ta=null,Rm(a,d,d.type))}return!!a.R}
l.Fj=function(a,b,c){a.Qc=!1;if(a.ta=b)this.Ca('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.Qa),a.Nd),b=b.info(),b[0]==a.ib&&b[1]==a.jb&&b[2]==a.eb&&b[3]==a.nb||this.Ca("Warning: disk geometry ("+b[0]+":"+b[1]+":"+b[2]+") does not match "+Jm[this.H]+" drive type "+a.type+" ("+a.ib+":"+a.jb+":"+a.eb+")");a.Nd&&(a.Nd=!1,--this.R||ab(this))};l.Ok=function(){var a=0;this.G<this.D&&(a=this.I[this.G]);this.P&&Se(this.P,5);this.Z&=-33;++this.G>=this.D&&(this.G=this.D=0,this.Z&=-15);return a};
l.Wl=function(a,b){this.D<this.I.length&&(this.I[this.D++]=b);var c=12!=this.I[0]?6:this.I.length;6==this.D&&(this.Z&=-2);this.D>=c&&(this.Z|=2,this.Z&=-2,Sm(this))};l.Pk=function(){var a=this.Z;this.G<this.D&&(this.Z|=1);return a};l.Zl=function(a,b){this.xa=b;this.P&&Se(this.P,5);Qm(this)};l.Nk=function(){return this.da};l.Yl=function(a,b){this.va=b;this.Z=13};l.Xl=function(a,b){this.ua=b};l.hh=function(){};
function Tm(a){var b=-1;a.C&&(b=Um(a.C,function(){}),(1==a.C.Ua||a.C.Ua==a.C.nb)&&1<a.C.Ua&&(a.C.wb-=a.C.nb,a.L=a.L-1&255,a.C.wb>=a.C.nb?(a.Z=128,Um(a.C,function(b){0<=b?(Vm(a),a.P&&5180==a.P.ca&&(a.Z=0),a.Z|=88):(a.Z=1,a.K=16)},!1)):a.Z=80));return b}l.tj=function(){return Tm(this)|Tm(this)<<8};function Wm(a,b){a.C&&a.C.wb>=a.C.nb&&(0>Xm(a.C,b)?(a.Z=1,a.K=16):(1==a.C.Ua||a.C.Ua==a.C.nb)&&1<a.C.Ua&&(a.C.wb-=a.C.nb,a.L=a.L-1&255,Vm(a),a.Z=80,a.C.wb>=a.C.nb&&(a.Z|=8)))}
function Tm(a){var b=-1;a.C&&(b=Um(a.C,function(){}),(1==a.C.Ua||a.C.Ua==a.C.nb)&&1<a.C.Ua&&(a.C.wb-=a.C.nb,a.L=a.L-1&255,a.C.wb>=a.C.nb?(a.Z=128,Um(a.C,function(b){0<=b?(Vm(a),a.P&&5180==a.P.ca&&(a.Z=0),a.Z|=88):(a.Z=1,a.K=16)},!1)):a.Z=80));return b}l.uj=function(){return Tm(this)|Tm(this)<<8};function Wm(a,b){a.C&&a.C.wb>=a.C.nb&&(0>Xm(a.C,b)?(a.Z=1,a.K=16):(1==a.C.Ua||a.C.Ua==a.C.nb)&&1<a.C.Ua&&(a.C.wb-=a.C.nb,a.L=a.L-1&255,Vm(a),a.Z=80,a.C.wb>=a.C.nb&&(a.Z|=8)))}
l.gl=function(a,b){Wm(this,b&255);Wm(this,b>>8&255)};l.Uj=function(){return this.K};l.ll=function(a,b){this.za=b};l.Wj=function(){return this.L};l.jl=function(a,b){this.L=b};l.Xj=function(){return this.oa};l.kl=function(a,b){this.oa=b};l.Sj=function(){return this.ma};l.fl=function(a,b){this.ma=b};l.Rj=function(){return this.ka};l.el=function(a,b){this.ka=b};l.Tj=function(){return this.ba};l.hl=function(a,b){this.ba=b;this.Z=this.B[this.ba&16?1:0]?this.Z|80:this.Z&-65};
l.Yj=function(){var a=this.Z;this.Z&64&&(this.Z&=-129);return a};l.dl=function(a,b){this.pa=b;this.P&&Se(this.P,14);Ym(this)};l.il=function(a,b){this.S&4&&!(b&4)&&(this.K=1);this.S=b};
function Ym(a){var b=!1,c=a.pa,d=a.ba&16?1:0,e=a.ba&15,f=a.ma|(a.ka&3)<<8,g=a.oa,h=a.L||256;a.Qa=-1;a.C=null;a.K=0;a.Z=80;var k=a.B[d];k?(k.Jd=f,k.Ya=e,k.mb=g,k.wb=h*k.nb,c=144<=c?c:c&240,k.Wa=null,k.Ua=0,k.errorCode=0,a.Qa=d,a.C=k):c=-1;switch(c&240){case 16:b=!0;break;case 32:a.Z=128;Um(k,function(b){0<=b&&a.P?(Vm(a),a.Z=88):(a.Z=1,a.K=16)},!1);break;case 48:a.Z=8;break;case 64:b=!0;break;case 112:b=!0;break;case 144:a.K=1;b=!0;break;case 145:k.jb=e+1,k.eb=h,b=!0}b&&Vm(a)}
function Vm(a){!a.P||a.S&2||Te(a.P,14,120)}
function Sm(a){a.G=0;var b=Zm(a),c=Zm(a),d=c&32,e=d>>5,f=c&31,g=Zm(a),h=Zm(a),k=g<<2&768|h,m=g&63,p=Zm(a),x=Zm(a),r=a.B[e];r&&(r.Jd=k,r.Ya=f,r.mb=m,r.wb=p*r.nb);switch(b){case 3:$m(a,r?r.errorCode:4);dn(a,c);dn(a,g);dn(a,h);dn(a,0|d);b=-1;break;case 12:for(c=0;0<=(b=Zm(a));)r&&c<r.de.length&&(r.de[c++]=b);r&&Rm(a,r);b=0;r||a.Y!=e||(a.Y=-1,b=2);$m(a,b|d);b=-1;break;case 224:case 228:$m(a,0|d),b=-1}if(0<=b)switch(void 0===r?b=-1:(r.errorCode=0,r.ij=0),b){case 0:$m(a,0|d);break;case 1:r.Ie=x;$m(a,0|
d);break;case 5:$m(a,0|d);break;case 8:en(a,r,function(b){$m(a,b|d)});break;case 10:fn(a,r,function(b){$m(a,b|d)});break;case 15:gn(a,r,function(b){$m(a,b|d)});break;default:$m(a,2|d)}}function Zm(a){var b=-1;a.G<a.D&&(b=a.I[a.G++]);return b}function $m(a,b){a.G=a.D=0;void 0!==b&&dn(a,b);a.P&&Te(a.P,5);a.Z|=32}function dn(a,b){a.I[a.D++]=b}l.rj=function(a,b,c){void 0===b||0>b?Um(a,c):c(-1,!1)};l.sj=function(a,b){return void 0!==b&&0<=b?Xm(a,b):-1};
function Sm(a){a.G=0;var b=Zm(a),c=Zm(a),d=c&32,e=d>>5,f=c&31,g=Zm(a),h=Zm(a),k=g<<2&768|h,m=g&63,p=Zm(a),x=Zm(a),r=a.B[e];r&&(r.Jd=k,r.Ya=f,r.mb=m,r.wb=p*r.nb);switch(b){case 3:$m(a,r?r.errorCode:4);dn(a,c);dn(a,g);dn(a,h);dn(a,0|d);b=-1;break;case 12:for(c=0;0<=(b=Zm(a));)r&&c<r.de.length&&(r.de[c++]=b);r&&Rm(a,r);b=0;r||a.Y!=e||(a.Y=-1,b=2);$m(a,b|d);b=-1;break;case 224:case 228:$m(a,0|d),b=-1}if(0<=b)switch(void 0===r?b=-1:(r.errorCode=0,r.jj=0),b){case 0:$m(a,0|d);break;case 1:r.Ie=x;$m(a,0|
d);break;case 5:$m(a,0|d);break;case 8:en(a,r,function(b){$m(a,b|d)});break;case 10:fn(a,r,function(b){$m(a,b|d)});break;case 15:gn(a,r,function(b){$m(a,b|d)});break;default:$m(a,2|d)}}function Zm(a){var b=-1;a.G<a.D&&(b=a.I[a.G++]);return b}function $m(a,b){a.G=a.D=0;void 0!==b&&dn(a,b);a.P&&Te(a.P,5);a.Z|=32}function dn(a,b){a.I[a.D++]=b}l.sj=function(a,b,c){void 0===b||0>b?Um(a,c):c(-1,!1)};l.tj=function(a,b){return void 0!==b&&0<=b?Xm(a,b):-1};
l.Dj=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Ua<a.ee.length?a.ee[a.Ua++]=c:(a.errorCode=20,c=-1)):c=-1;return c};l.Ej=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.errorCode)c=-1;else{a.Pc[a.ie++]=c;if(a.ie==a.Pc.length){a.Jd=a.Pc[0];a.Ya=a.Pc[1];a.mb=a.Pc[2];a.wb=128<<a.Pc[3];for(var d=a.ie=0;d<a.wb;d++)if(0>Xm(a,a.Eh)){c=-1;break a}a.vf++}a.vf>=a.wd&&(c=-1)}else c=-1;return c};
function en(a,b,c){b.errorCode=4;if(b.ta&&(b.Wa=null,a.P)){b.errorCode=0;Cj(a.P,3,a,"dmaRead",b);yj(a.P,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}function fn(a,b,c){b.errorCode=4;if(b.ta&&(b.Wa=null,a.P)){b.errorCode=0;Cj(a.P,3,a,"dmaWrite",b);yj(a.P,3,function(a){a||(0==b.errorCode&&(b.errorCode=4),20==b.errorCode&&(b.errorCode=0));c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}
function gn(a,b,c){b.errorCode=4;b.ee&&b.ee.length==b.wb||(b.ee=Array(b.wb));b.Ua=0;a.P?(b.errorCode=0,Cj(a.P,3,a,"dmaWriteBuffer",b),yj(a.P,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
function Um(a,b,c){var d=-1,e=null,f=0;if(a.errorCode)return b&&b(d,!1,e,f),d;var g=!1!==c?1:0;if(a.Wa&&(f=a.Ua,d=a.ta.read(a.Wa,a.Ua),a.Ua+=g,0<=d))return e=a.Wa,b&&b(d,!1,e,f),d;if(b){if(a.ta)return a.ta.seek(a.Jd,a.Ya,a.mb+a.uf,!1,function(c,k){(a.Wa=c)?(e=c,f=a.Ua=0,hn(a),d=a.ta.read(a.Wa,a.Ua),a.Ua+=g):a.errorCode=20;b(d,k,e,f)}),d;a.errorCode=20;b(d,!1,e,f)}return d}
function Xm(a,b){if(a.errorCode)return-1;do{if(a.Wa&&a.ta.write(a.Wa,a.Ua++,b))break;a.ta&&a.ta.seek(a.Jd,a.Ya,a.mb+a.uf,!0,function(b){a.Wa=b});if(!a.Wa){a.errorCode=20;b=-1;break}a.Ua=0;hn(a)}while(1);return b}function hn(a){a.mb++;var b=1-a.uf;a.mb>=a.eb+b&&(a.mb=b,a.Ya++,a.Ya>=a.jb&&(a.Ya=0,a.Jd++))}l.Rk=function(){var a=this.A.M&255;!(this.A.J>>8)&&128<a&&(this.Y=a-128);return!0};l.Sk=function(){var a;(a=this.A.J>>8||!this.P)||(a=!(this.P.gc[0].Vc&64));return a?!0:!1};
var Mm={800:Z.prototype.Ok,801:Z.prototype.Pk,802:Z.prototype.Nk},Lm={496:Z.prototype.tj,497:Z.prototype.Uj,498:Z.prototype.Wj,499:Z.prototype.Xj,500:Z.prototype.Sj,501:Z.prototype.Rj,502:Z.prototype.Tj,503:Z.prototype.Yj},Om={800:Z.prototype.Wl,801:Z.prototype.Zl,802:Z.prototype.Yl,803:Z.prototype.Xl,807:Z.prototype.hh,811:Z.prototype.hh,815:Z.prototype.hh},Nm={496:Z.prototype.gl,497:Z.prototype.ll,498:Z.prototype.jl,499:Z.prototype.kl,500:Z.prototype.fl,501:Z.prototype.el,502:Z.prototype.hl,503:Z.prototype.dl,
1014:Z.prototype.il};Ea(function(){for(var a=Za(document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new Z(d);Ya(d,c)}});function ce(a,b,c){this.id=a.id;this.key=jn(a,b,c);this.Ia=a.Ia;kn(this,a.xj)}function jn(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 Mm={800:Z.prototype.Ok,801:Z.prototype.Pk,802:Z.prototype.Nk},Lm={496:Z.prototype.uj,497:Z.prototype.Uj,498:Z.prototype.Wj,499:Z.prototype.Xj,500:Z.prototype.Sj,501:Z.prototype.Rj,502:Z.prototype.Tj,503:Z.prototype.Yj},Om={800:Z.prototype.Wl,801:Z.prototype.Zl,802:Z.prototype.Yl,803:Z.prototype.Xl,807:Z.prototype.hh,811:Z.prototype.hh,815:Z.prototype.hh},Nm={496:Z.prototype.gl,497:Z.prototype.ll,498:Z.prototype.jl,499:Z.prototype.kl,500:Z.prototype.fl,501:Z.prototype.el,502:Z.prototype.hl,503:Z.prototype.dl,
1014:Z.prototype.il};Ea(function(){for(var a=Za(document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new Z(d);Ya(d,c)}});function ce(a,b,c){this.id=a.id;this.key=jn(a,b,c);this.Ia=a.Ia;kn(this,a.ej)}function jn(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}
ce.prototype={constructor:ce,value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.A=!0):this.A?!0:ta()&&(a=wa(this.key))?(this[this.id]=a,this.A=!0):!1},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},clear:function(a){kn(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==
this.key)){try{window.localStorage.removeItem(d)}catch(e){}b.splice(c,1);c=0}}};function kn(a,b){a[a.id]={};b&&C(a,"parms",b);a.A=!1}function ln(a){var b=!0;if(ta()){var c=JSON.stringify(a[a.id]);xa(a.key,c)||(n("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}function mn(a){var b=!0;try{a[a.id]=JSON.parse(a[a.id])}catch(c){n(c.message||c),b=!1}return b}function nn(a,b){return a[a.id][b]||null}function C(a,b,c){try{a[a.id][b]=c}catch(d){}}
function on(a,b,c){Ia.call(this,"Computer",a,on);this.ea.Rb=!1;pn(this,b);this.aa=jc(this,"autoPower",a);this.G=0;this.ia=a.busWidth||a.buswidth;this.B=qn;this.R=null;this.K=this.da=!1;this.ka=jc(this,"url")||"";this.ma=(Math.random()+.1).toString(36).substr(2,12);this.C=rn(this);if(this.A=Va("CPU",this.id)){this.Ia=Va("Debugger",this.id);this.I=[];for(b=null;b=kb(this,"Video",b);)this.I.push(b);this.ha=new rb({id:this.lf+".bus",buswidth:this.ia},this.A,this.Ia);var d,e=Ta(this.id);if((this.D=Va("Panel",
this.id))&&this.D.gg)for(b=0;b<e.length;b++)d=e[b],d.Ca=this.D.Ca,d.rc=this.D.rc,d.gg=this.D.gg;for(b=0;b<e.length;b++)d=e[b],d.pc&&d.pc(this,this.ha,this.A,this.Ia);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.P=d:this.B=parseInt(d,10));var f;if(a=jc(this,"state")||(f=!0,a.state))b=this.X=a,f||(this.K=!0,this.B=qn),this.B&&(this.S=new ce(this,sn),this.S.load()?b=null:delete this.S);!b&&this.B&&(b=tn(this))&&(this.K=!0);if(b){var g=this;pa(b,null,!0,function(a,b,c){c?(g.P=null,g.K=!1,g.Ca("Unable to load machine state from server (error "+
c+(b?": "+(String.prototype.trim?b.trim():b.replace(/^\s+|\s+$/g,"")):"")+")")):(g.R=b,g.da=!0);ab(g)})}else ab(this);this.la.power||(this.aa=!0);!c&&this.aa&&un(this,this.df)}else n("Unable to find CPU component")}Qa(on);var sn="1.21.4",qn=0;l=on.prototype;l.se=function(){return this.ma};function pn(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){n(d.message+" ("+c+")")}}a.L=b}
function jc(a,b,c){var d=b.toLowerCase(),d=La&&(La[b]||La[d]);void 0===d&&a.L&&(d=a.L[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}l.zd=function(){return this.C||""};function un(a,b,c){for(var d=Ta(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!bb(f)){bb(f,function(){un(a,b,c)});return}}b.call(a,c)}
function jc(a,b,c){var d=b.toLowerCase(),d=La[b]||La[d];void 0===d&&a.L&&(d=a.L[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}l.zd=function(){return this.C||""};function un(a,b,c){for(var d=Ta(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!bb(f)){bb(f,function(){un(a,b,c)});return}}b.call(a,c)}
function vn(a,b){var c=new ce(a,sn,"validate");if(c.load()&&mn(c)){var d=nn(c,"timestamp"),e=b?nn(b,"timestamp"):"unknown";d!=e&&(a.Ca("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
l.df=function(a){void 0===a&&(a=this.B||(this.R?1:qn));if(!this.G){this.G++;var b=!1,c=!1;this.ba=!1;var d=this.S||new ce(this,sn);if(-1==a)b=!0;else if(a>qn){if(d.load(this.R)){this.H=new ce(this,sn,"failsafe");this.H.load()&&(wn(this,d),a=2,kn(this.H));C(this.H,"timestamp",la());ln(this.H);var e=this.B&&!this.K;if(1==a||ra("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=mn(d)){var f=nn(d,"code"),g=nn(d,"data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=
g?(this.Ca("Error: "+g),"unable to verify user"==g&&(xa("user",""),this.C=null)):this.rc(f+": "+g),kn(d),d.load()?(c=mn(d),e=!0):c=!1))}e&&vn(this,c?d:null)}else 2==a&&d.clear()}else vn(this);delete this.R;delete this.S}e=Ta(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.A&&(c=xn(this,g,d,b,c));b=[d,a,c];-1!=a?un(this,this.Mh,b):this.Mh(b)}};
@ -631,4 +631,4 @@ a):f("transformToFragment failed")):f("unable to transform XML: unsupported brow
function Gn(a,b,c,d){if(!c&&b){d.push(b);a=Ra[d[0]];b=null;for(var e in a)if(ha(e,"components.xsl")){b=e.replace(".xsl",".css");break}b?pa(b,null,!0,function(a,b){Hn(b,d)}):Hn(null,d)}else n("Error ("+c+") requesting "+a)}
function Hn(a,b){var c,d,e,f=b[0],g=b[1];c=b[4];c=c.match(/^(\s*\(function\(\)\{)([\s\S]*)(}\)\(\);\s*)$/);var h=Ra[f],k={},m;for(m in h){var p=h[m],x=ga(m);if("xml"==x){for(x=/[ \t]*<disk [^>]*path=(['"])(.*?)\1.*?<\/disk>\n?/g;d=x.exec(h[m]);){var r=d[2];r&&(h[r]||(p=p.replace(d[0],"")))}d=m=fa(m)}else"xsl"==x&&(e=m=fa(m));k[m]=p}a&&(k[m="css"]=a);b[2]&&(k[m="parms"]=b[2]);b[3]&&(k[m="state"]=b[3]);d&&e?(m=JSON.stringify(k),g+=".js",c=c[1]+"var resources="+m+";"+c[2]+c[3],c=c.replace(/\u00A9/g,
"&#xA9;"),c=za(c,"javascript",!1,g),c=c+(', copy it to your web server as "'+g+'", and then add the following to your web page:\n\n')+('<div id="'+f+'"></div>\n'),c+="...\n",c+='<script type="text/javascript" src="'+g+'">\x3c/script>\n',c+='<script type="text/javascript">embedPC("'+f+'","'+d+'","'+e+'");\x3c/script>\n\n',c+="The machine should appear where the <div> is located.",n(c)):n("Missing XML/XSL resources")}
window.savePC=function(a,b){var c=Va("Computer",a),d=Va("Debugger",a);if(c){var e=yn(c,!0),f=c.L?JSON.stringify(c.L):null;b||(b="/versions/pcjs/1.21.4/pc"+(d?"-dbg":"")+".js");pa(b,null,!0,function(c,d,k){Gn(c,d,k,[a,fa(b,!0),f,e])});return!0}n("Unable to identify machine '"+a+"'");return!1};})();
window.savePC=function(a,b,c){var d=Va("Computer",a),e=Va("Debugger",a);if(d){var f=yn(d,!0),g=d.L?JSON.stringify(d.L):null;b||(b="/versions/pcjs/1.21.4/pc"+(e?"-dbg":"")+".js");if(c&&c({state:f,ej:g}))return!0;pa(b,null,!0,function(c,d,e){Gn(c,d,e,[a,fa(b,!0),g,f])});return!0}n("Unable to identify machine '"+a+"'");return!1};})();