Display text cursor on non-zero video pages

This commit is contained in:
Jeff Parsons 2016-04-01 09:11:09 -07:00
commit 1f2d3bdc41
5 changed files with 748 additions and 726 deletions

View file

@ -12,15 +12,15 @@ function Fa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return
function Ia(a,b,c,d){var e=null;b="data:application/"+b+(c?";base64":"")+",";b=Ga("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}
function Ja(a,b,c){function d(){--a;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}function Ka(a,b){function c(){b(100===d)&&(e=setTimeout(c,d),d=100)}var d=0,e=null,f=!1;a.onmousedown=function(){f||e||(d=500,c())};a.ontouchstart=function(){e||(d=500,c())};a.onmouseup=a.onmouseout=function(){e&&(clearTimeout(e),e=null)};a.ontouchend=a.ontouchcancel=function(){e&&(clearTimeout(e),e=null);f=!0}}var La={init:[],show:[],exit:[]},Ma=!1,Na=!0;
function Pa(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Qa(a){La.init.push(a)}function Ra(a){if(Na)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){w("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks.")}}function Sa(a){!Na&&a?(Na=!0,Ma&&Ta("init")):Na=a}function Ta(a){La[a]&&Ra(La[a])}Pa("onload",function(){Ma=!0;Ra(La.init)});Pa("onpageshow",function(){Ra(La.show)});
Pa(Ga("Opera")||Ga("iOS")?"onunload":"onbeforeunload",function(){Ra(La.exit)});function Ua(a,b,c,d){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.sk=b.comment;this.tk=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.ve=this.id.substr(0,b),this.de=this.id.substr(b+1)):this.de=this.id;this[a]=c;this.la={af:!1,bd:!1,$g:!1,cc:!1,ud:!1};this.rg=null;this.la.ud=!1;this.qa={};this.ha=null;this.wc=d||0;Va.push(this)}var Wa=void 0,Ya={};
Pa(Ga("Opera")||Ga("iOS")?"onunload":"onbeforeunload",function(){Ra(La.exit)});function Ua(a,b,c,d){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.sk=b.comment;this.tk=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.ve=this.id.substr(0,b),this.ee=this.id.substr(b+1)):this.ee=this.id;this[a]=c;this.la={af:!1,bd:!1,$g:!1,cc:!1,ud:!1};this.rg=null;this.la.ud=!1;this.qa={};this.ha=null;this.wc=d||0;Va.push(this)}var Wa=void 0,Ya={};
if(window){Wa||(Wa=window.location.search.substr(1));for(var Za,$a=/\+/g,ab=/([^&=]+)=?([^&]*)/g;Za=ab.exec(Wa);)Ya[decodeURIComponent(Za[1].replace($a," "))]=decodeURIComponent(Za[2].replace($a," "))}function cb(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 db(a,b){b||(b=Ua);a.prototype=cb(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}var Va=[],eb={};function fb(a,b,c){eb[a]&&b&&(eb[a][b]=c)}function gb(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<Va.length;b++){var d=Va[b];a&&d.id.indexOf(a)||c.push(d)}return c}function hb(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<Va.length;c++)if(Va[c].id===a)return Va[c]}return null}
function ib(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<Va.length;d++)if(c)c==Va[d]&&(c=null);else if(!(a!=Va[d].type||b&&Va[d].id.indexOf(b)))return Va[d]}return null}function jb(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){w(c.message+" ("+a+")")}return b}function kb(a,b,c){var d;b&&(void 0===d&&(d="Panel"),(d=ib(d,a.id))&&(b=d.qa[b])&&a.Qb(null,c,b))}
function mb(a,b){for(var c=nb(b.parentNode,"pcjs-control"),d=0;d<c.length;d++)for(var e=c[d].childNodes,f=0;f<e.length;f++){var g=e[f];if(1===g.nodeType){var h=g.getAttribute("class");if(h)for(var k=h.split(" "),l=0;l<k.length;l++)switch(h=k[l],h){case "pcjs-binding":(h=jb(g))&&h.binding&&a.Qb(h.type,h.binding,g,h.value),l=k.length}}}}
function nb(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var e=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)e.test(a[b].className)&&c.push(a[b]);return c}
Ua.prototype={constructor:Ua,parent:null,toString:function(){return this.name?this.name:this.id||this.type},Qb:function(a,b,c){switch(b){case "clear":return this.qa[b]||(this.qa[b]=c,c.onclick=function(a){return function(){a.qa.print&&(a.qa.print.value="")}}(this)),!0;case "print":return this.qa[b]||(this.Df=this.qa[b]=c,c.value="",this.O=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(c),
this.Oa=function(a,b,c){this.O(a,"notice",c)}),!0;default:return!1}},log:function(){},O:function(){},status:function(a){this.O(this.de+": "+a)},Oa:function(a,b){b||w(a)},ic:function(){return this.la.cc=!0},hc:function(a,b){b&&(this.la.cc=!1);return!0}};function x(a,b,c,d,e,f,g){a.ha&&(!0===g?g=0:null==g&&(g=a.wc),ob(a.ha,a,b,c,d,e,f,g))}function y(a,b,c,d){a.ha&&(!0===c||z(a,c|0))&&a.ha.message(b,d)}
function z(a,b){if(a.ha){a===a.ha?b|=0:b=b||a.wc;var c=a.ha.wc&b;return!!b&&c===b||!!(c&a.ha.Gk)}return!1}function pb(a,b){if(a.la.$g)return a.la.bd&&(a.la.bd=!1),a.la.$g=!1;if(a.la.ud)return a.O(a.toString()+" error"),!1;a.la.bd=b;return a.la.bd}function qb(a,b){a.la.bd&&(b?a.la.$g=!0:void 0===b&&a.O(a.toString()+" busy"));return a.la.bd}function rb(a,b){if(!a.la.ud&&(a.la.af=!1!==b,a.la.af)){var c=a.rg;a.rg=null;c&&c()}}function sb(a,b){b&&(a.la.af?b():a.rg=b);return a.la.af}
this.Oa=function(a,b,c){this.O(a,"notice",c)}),!0;default:return!1}},log:function(){},O:function(){},status:function(a){this.O(this.ee+": "+a)},Oa:function(a,b){b||w(a)},ic:function(){return this.la.cc=!0},hc:function(a,b){b&&(this.la.cc=!1);return!0}};function x(a,b,c,d,e,f,g){a.ha&&(!0===g?g=0:null==g&&(g=a.wc),ob(a.ha,a,b,c,d,e,f,g))}function y(a,b,c,d){a.ha&&(!0===c||A(a,c|0))&&a.ha.message(b,d)}
function A(a,b){if(a.ha){a===a.ha?b|=0:b=b||a.wc;var c=a.ha.wc&b;return!!b&&c===b||!!(c&a.ha.Gk)}return!1}function pb(a,b){if(a.la.$g)return a.la.bd&&(a.la.bd=!1),a.la.$g=!1;if(a.la.ud)return a.O(a.toString()+" error"),!1;a.la.bd=b;return a.la.bd}function qb(a,b){a.la.bd&&(b?a.la.$g=!0:void 0===b&&a.O(a.toString()+" busy"));return a.la.bd}function rb(a,b){if(!a.la.ud&&(a.la.af=!1!==b,a.la.af)){var c=a.rg;a.rg=null;c&&c()}}function sb(a,b){b&&(a.la.af?b():a.rg=b);return a.la.af}
function ub(a,b){a.la.ud=!0;a.Oa(b)}
var vb="undefined"!==typeof ArrayBuffer,wb={Dg:4,Jc:5,Kd:6,ed:7,fd:8,ib:9,ec:11,fc:12,He:4,$i:60,aj:83,yc:3,Vb:9,Nc:16,Cg:1,ej:19,gj:28,ij:16,hj:21,fj:37,cj:2,yh:9,dj:5,bj:33,Ah:10,zh:8,Qf:3,Pf:15,wj:51,xj:1,yj:2,zj:4,vj:32,Bh:15,Bj:15,ab:16,bb:4,Dj:11,Cj:18,Aj:24,gc:4,Ej:2,of:16,Fj:17,Gh:18,Gj:19,Fh:5,Hh:6,Lj:2,Kj:8,Ij:9,Jj:10,Hj:10,Ih:10,Jh:10,kj:80,mj:144,jj:86,lj:154,oj:101,qj:165,nj:107,pj:171,Nj:70,Pj:113,Mj:76,Oj:124,sj:80,uj:128,rj:86,tj:134,Sf:3,Rf:16,Oh:10,Nh:8,Qj:51,zc:8,Rj:17,Sj:36,Sc:11,
Tj:16,Ie:10,od:2,vh:18,wh:7,xh:15,Ch:12,Dh:7,Eh:11,Kh:18,Lh:7,Mh:15,Ph:15,Qh:7,Rh:13,Vh:11,Wh:7,Xh:8,Uj:8,Xj:12,Vj:18,Wj:17,Yj:15,Th:8,Sh:20,Uh:2,$h:3,Tf:9,Zh:5,Yh:11,bi:4,ai:17,Zj:11},xb={Dg:0,Jc:0,Kd:0,ed:0,fd:0,ib:0,ec:1,fc:1,He:3,$i:14,aj:16,yc:2,Vb:7,Nc:7,Cg:0,ej:7,gj:13,ij:7,hj:11,fj:16,cj:3,yh:6,dj:2,bj:13,Ah:5,zh:5,Qf:2,Pf:7,wj:23,xj:0,yj:1,zj:3,vj:17,Bh:7,Bj:11,ab:7,bb:3,Dj:7,Cj:11,Aj:15,gc:2,Ej:3,of:7,Fj:8,Gh:8,Gj:8,Fh:4,Hh:4,Lj:2,Kj:3,Ij:5,Jj:2,Hj:3,Ih:5,Jh:3,kj:14,mj:22,jj:17,lj:25,oj:17,
@ -35,82 +35,82 @@ qj:25,nj:20,pj:28,Nj:13,Pj:21,Mj:16,Oj:24,sj:13,uj:21,rj:16,tj:24,Sf:2,Rf:7,Oh:5
80:"set current PSP @BX",81:"get current PSP (bx)",82:"get system variables (ES:BX)",83:"translate BPB @DS:@SI to DPB (ES:BP)",84:"get verify flag (AL)",85:"create child PSP at segment @DX",86:"rename file $@DS:@DX to $@ES:@DI",87:"get(0)/set(1) file @BX date @DX and time @CX (@AL)",88:"get(0)/set(1) memory allocation strategy (@AL)",89:"get extended error information",90:"create temporary file $@DS:@DX with attributes @CX",91:"create file $@DS:@DX with attributes @CX",92:"lock(0)/unlock(1) file @BX region @CX:@DX length @SI:@DI (@AL)",
93:"critical error information (@AL)",96:"get fully-qualified filename from $@DS:@SI",99:"get lead byte table (@AL)",108:"extended open file $@DS:@SI"},65:{79:"check debugger loaded"}};function zb(a){Ua.call(this,"Panel",a,zb);this.L=this.W=this.fa=-1}db(zb);function Ab(a,b,c,d){this.A=[a,b,c,d];this.B=null;void 0===a&&(this.A[0]=256*Math.random()|0,this.A[1]=256*Math.random()|0,this.A[2]=256*Math.random()|0,this.A[3]=255,this.B=null)}
Ab.prototype.toString=function(){this.B||(this.B="#"+r(this.A[0],2)+r(this.A[1],2)+r(this.A[2],2));return this.B};function Bb(a,b,c,d){this.x=a;this.y=b;this.ad=c;this.A=d}Bb.prototype.contains=function(a,b){return a>=this.x&&a<this.x+this.ad&&b>=this.y&&b<this.y+this.A};function Cb(a,b,c,d){void 0===d&&(d=b>=c>>2);d?(b=new Bb(a.x,a.y,a.ad,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new Bb(a.x,a.y,a.ad*b/c|0,a.A),a.x+=b.ad,a.ad-=b.ad);return b}m=zb.prototype;
m.Qb=function(a,b,c,d){return this.V&&this.V.Qb(a,b,c,d)||this.F&&this.F.Qb(a,b,c,d)||this.B&&this.B.Qb(a,b,c,d)||this.ha&&this.ha.Qb(a,b,c,d)?!0:this.parent.Qb.call(this,a,b,c,d)};m.Ic=function(a,b,c,d){this.V=a;this.ea=b;this.F=c;this.ha=d;this.B=Eb(a,"Keyboard")};m.ic=function(a,b){b||Fb();return!0};m.hc=function(){return!0};m.ie=function(a,b){a.button||(this.fa=b?0:-1,Gb(this,a,b))};m.Hf=function(a){Gb(this,a)};
function Gb(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.fa||(a.fa=Math.abs(a.L-d)>Math.abs(a.W-b)?1:2),1==a.fa?b=a.W:2==a.fa&&(d=a.L));a.L=d;a.W=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.A&&a.A.Pe)for(f=0;f<a.A.Pe.length;f++)if(e=a.A.Pe[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.A.Af[f],g=ta(Hb.$j,a.A.Qg[d.Qk]),f=g*a.ea.Nb,d=(g+d.Td)*a.ea.Nb-1;0<b&&(f+=e.ad*(b-1)*a.ya);f+=c*a.ya;f|=0;
m.Qb=function(a,b,c,d){return this.V&&this.V.Qb(a,b,c,d)||this.F&&this.F.Qb(a,b,c,d)||this.B&&this.B.Qb(a,b,c,d)||this.ha&&this.ha.Qb(a,b,c,d)?!0:this.parent.Qb.call(this,a,b,c,d)};m.Ic=function(a,b,c,d){this.V=a;this.ea=b;this.F=c;this.ha=d;this.B=Eb(a,"Keyboard")};m.ic=function(a,b){b||Fb();return!0};m.hc=function(){return!0};m.je=function(a,b){a.button||(this.fa=b?0:-1,Gb(this,a,b))};m.Hf=function(a){Gb(this,a)};
function Gb(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.fa||(a.fa=Math.abs(a.L-d)>Math.abs(a.W-b)?1:2),1==a.fa?b=a.W:2==a.fa&&(d=a.L));a.L=d;a.W=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.A&&a.A.Pe)for(f=0;f<a.A.Pe.length;f++)if(e=a.A.Pe[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.A.Af[f],g=ta(Hb.$j,a.A.Qg[d.Qk]),f=g*a.ea.Nb,d=(g+d.Ud)*a.ea.Nb-1;0<b&&(f+=e.ad*(b-1)*a.ya);f+=c*a.ya;f|=0;
f>d&&(f=d);c=f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.Ca)){b=c;if(a.context&&a.ja&&a.ka){e=a.ja.width;a.ka.fillStyle="black";a.ka.fillRect(0,360,e,360);Ib(a,378,a.ja,a.ka);a.pa=a.Ea.width/24|0;if(null==b)Jb(a,"Mouse over memory to dump");else for(Jb(a,"0x"+r(b),null,0,1),f=1;16>=f;f++){d="";for(g=1;8>=g;g++){var h;h=a.ea;var k=b++;h=h.sa[(k&h.Gb)>>>h.La].se(k&h.A,k);Jb(a,r(h,2),null,1);d+=32<=h&&128>h?String.fromCharCode(h):"."}Jb(a,d,null,0,1)}a.context.drawImage(a.ja,0,360,e,360,a.rb,a.Db,a.Pa,a.cb)}a.Ca=
c}}}m.qd=function(){};function Kb(a,b,c,d){a.A.Af[a.A.Ai++]={Qk:b,Td:c,type:d};return sa(Hb,b,c,0,d)}function Ib(a,b,c,d){var e,f=null.style.color,g=a.Na=10;a.C=g;a.U=b;a.X=a.wa=18;e||(e=a.ua||a.wa+"px Monaco, Lucida Console, Courier New");a.ga=a.ua=e;c&&(a.Ea=c);d&&(a.N=d,a.Fa=f||"white")}
c}}}m.qd=function(){};function Kb(a,b,c,d){a.A.Af[a.A.Ai++]={Qk:b,Ud:c,type:d};return sa(Hb,b,c,0,d)}function Ib(a,b,c,d){var e,f=null.style.color,g=a.Na=10;a.C=g;a.U=b;a.X=a.wa=18;e||(e=a.ua||a.wa+"px Monaco, Lucida Console, Courier New");a.ga=a.ua=e;c&&(a.Ea=c);d&&(a.N=d,a.Fa=f||"white")}
function Jb(a,b,c,d,e){a.N.font=a.ga;a.N.fillStyle=a.Fa;a.N.fillText(b,a.C,a.U);a.C+=a.pa;null!=c&&(16!=a.Tb?b=c.toString():(b=8>a.Ka?"0x":"",b+=r(c,a.Ka)),a.N.fillText(b,a.C,a.U),a.C+=a.pa);d&&(a.C+=a.pa*d);e&&(a.C=a.Na,a.U+=(a.X+2)*(e||1))}function Fb(){for(var a=!1,b=nb(document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=jb(d),f=hb(e.id);f||(a=!0,f=new zb(e));mb(f,d);a&&rb(f)}}Qa(Fb);
function Lb(a,b,c){Ua.call(this,"Bus",a,Lb);this.F=b;this.ha=c;this.N=a.buswidth||20;this.X=Math.pow(2,this.N);this.wg=this.Gb=this.X-1|0;this.La=32==this.N||20>=this.N?12:24>=this.N?14:15;this.Nb=1<<this.La;this.ga=this.Nb>>2;this.A=this.Nb-1;this.U=this.X/this.Nb|0;this.ea=this.U-1;this.B=[];this.C=[];this.L=this.W=!1;this.aa=[];this.fa=[];a=new B;Mb(a,this.ha);this.sa=Array(this.U);for(b=0;b<this.U;b++)this.sa[b]=a;a=this.F;b=this.sa;c=this.La;a.ld=a.sa=b;a.La=c;a.Nb=1<<a.La;a.Fa=a.Nb-1;a.Gd=b.length;
a.jd=a.Gd-1;a=this.F;a.Gb=a.Db=this.Gb;rb(this)}db(Lb);var Hb,Nb={$j:20,count:8,no:1,type:3},Ob=0,Pb;for(Pb in Nb){var Qb=Nb[Pb];Nb[Pb]={lh:(1<<Qb)-1<<Ob,shift:Ob};Ob+=Qb}Hb=Nb;m=Lb.prototype;m.reset=function(){Rb(this,!0)};m.ic=function(a,b){b||this.reset();return!0};
function Sb(a,b,c,d,e){for(var f=b>>>a.La;0<c&&f<a.sa.length;){var g=a.sa[f],h=f*a.Nb,k=c>a.Nb?a.Nb:c;if(g&&g.size){if(g.type==d&&g.controller==e){if(b+c<=g.Da)return g.Ne+=g.Da-b,g.Da=b,!0;if(b>=g.Da+g.Ne){k=g.size-(b-h);k>c&&(k=c);g.Ne=b-g.Da+k;c-=k;b=h+a.Nb;continue}}return Tb(a,1,b,c)}g=a.sa[f];b=new B(b,k,a.Nb,d,e);Mb(b,a.ha,g);a.sa[f++]=b;b=h+a.Nb;c-=k}return 0>=c?(Vb(a.F),!0):Tb(a,2,b,c)}
function Rb(a,b){if(32==a.N)b?a.V&&(Wb(a,1048576,1048576,a.V),a.V=null):a.V||(a.V=Xb(a,1048576,1048576),Wb(a,1048576,1048576,Xb(a,0,1048576)));else if(20<a.N){var c=a.Gb&-1048577|(b?1048576:0);if(c!=a.Gb&&(a.Gb=c,a.F)){var d=a.F;d.Gb=d.Db=c}}}m.Mg=function(a,b,c,d){if(!(a&this.A||!b||b&this.A)){for(var e=a>>>this.La;0<b;){var f=this.sa[e];if(!f.controller)return Tb(this,3,a,b,d);Yb(f,c,!0);b-=this.Nb;e++}return!0}return Tb(this,4,a,b)};
function Zb(a,b,c){if(!(b&a.A||!c||c&a.A)){for(var d=b>>>a.La;0<c;){var e=a.sa[d];b=new B(b);Mb(b,a.ha,e);a.sa[d++]=b;b=d*a.Nb;c-=a.Nb}Vb(a.F);return!0}return Tb(a,5,b,c)}function Xb(a,b,c){var d=[];for(b>>>=a.La;0<c&&b<a.sa.length;)d.push(a.sa[b++]),c-=a.Nb;return d}
function Wb(a,b,c,d,e){for(var f=0,g=b>>>a.La;0<c&&g<a.sa.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new B(b),l=k,n=e,q=a.ha;l.id=h.id|1;l.Ne=h.Ne;l.size=h.size;n&&(l.type=n,l.N=n==$b);vb?(l.V=h.V,l.qa=h.qa,l.Ya=h.Ya,l.ee=h.ee,l.da=h.da,Yb(l,ac?bc:cc)):(l.da=h.da,Yb(l,dc));Mb(l,q,h);h=k}a.sa[g++]=h;c-=a.Nb}}m.Qa=function(a){return this.sa[(a&this.Gb)>>>this.La].jc(a&this.A,a)};
m.na=function(a){var b=a&this.A,c=(a&this.Gb)>>>this.La;return b!=this.A?this.sa[c].rf(b,a):this.sa[c++].jc(b,a)|this.sa[c&this.ea].jc(0,a+1)<<8};function ec(a,b){var c=b&a.A,d=(b&a.Gb)>>>a.La;return c!=a.A?a.sa[d].cg(c,b):a.sa[d++].se(c,b)|a.sa[d&a.ea].se(0,b+1)<<8}m.oa=function(a){var b=a&this.A,c=(a&this.Gb)>>>this.La;if(b<this.A-2)return this.sa[c].Md(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;)d|=this.sa[c].jc(b++,a++)<<f,--g||(c=c+1&this.ea,b=0),f+=8;return d};
function Wb(a,b,c,d,e){for(var f=0,g=b>>>a.La;0<c&&g<a.sa.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new B(b),l=k,n=e,q=a.ha;l.id=h.id|1;l.Ne=h.Ne;l.size=h.size;n&&(l.type=n,l.N=n==$b);vb?(l.V=h.V,l.qa=h.qa,l.Ya=h.Ya,l.fe=h.fe,l.da=h.da,Yb(l,ac?bc:cc)):(l.da=h.da,Yb(l,dc));Mb(l,q,h);h=k}a.sa[g++]=h;c-=a.Nb}}m.Qa=function(a){return this.sa[(a&this.Gb)>>>this.La].jc(a&this.A,a)};
m.na=function(a){var b=a&this.A,c=(a&this.Gb)>>>this.La;return b!=this.A?this.sa[c].rf(b,a):this.sa[c++].jc(b,a)|this.sa[c&this.ea].jc(0,a+1)<<8};function ec(a,b){var c=b&a.A,d=(b&a.Gb)>>>a.La;return c!=a.A?a.sa[d].cg(c,b):a.sa[d++].se(c,b)|a.sa[d&a.ea].se(0,b+1)<<8}m.oa=function(a){var b=a&this.A,c=(a&this.Gb)>>>this.La;if(b<this.A-2)return this.sa[c].Nd(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;)d|=this.sa[c].jc(b++,a++)<<f,--g||(c=c+1&this.ea,b=0),f+=8;return d};
m.qc=function(a,b){this.sa[(a&this.Gb)>>>this.La].sc(a&this.A,b&255,a)};m.jb=function(a,b){var c=a&this.A,d=(a&this.Gb)>>>this.La;c!=this.A?this.sa[d].yf(c,b&65535,a):(this.sa[d++].sc(c,b&255,a),this.sa[d&this.ea].sc(0,b>>8&255,a+1))};function fc(a,b,c){var d=b&a.A,e=(b&a.Gb)>>>a.La;d!=a.A?a.sa[e].oi(d,c&65535,b):(a.sa[e++].wf(d,c&255,b),a.sa[e&a.ea].wf(0,c>>8&255,b+1))}
m.nb=function(a,b){var c=a&this.A,d=(a&this.Gb)>>>this.La;if(c<this.A-2)this.sa[d].xf(c,b);else for(var e=4,f=4-(c&3);e--;)this.sa[d].sc(c++,b&255,a++),--f||(d=d+1&this.ea,c=0),b>>>=8};m.Si=function(){return null};function gc(a,b){if(void 0===b)return a.L=!a.L,a.L;void 0===a.B[b]&&(a.B[b]=[null,!1]);a.B[b][1]=!a.B[b][1];return a.B[b][1]}
function hc(a,b,c,d){void 0===d&&(d=0);for(var e in c){var f=a,g=+e+d,h=c[e].bind(b);if(void 0!==h)for(var k=+e+d;k<=g;k++)void 0!==f.B[k]?w("Input port "+u(k)+" already registered"):f.B[k]=[h,!1]}}function ic(a,b,c,d){for(var e=0,f=0;0<c;){var g=a.B[b],h=a.aa[b]||1,k=1==h?255:2==h?65535:-1,l=k;void 0!==g?(g[0]&&(l=g[0](b,d),void 0===l?l=k:l&=k),a.ha&&a.L!=g[1]&&jc(a.ha,b,l)):a.ha&&(ob(a.ha,a,b,null,d),a.L&&jc(a.ha,b,l));e|=l<<f;f+=h<<3;b+=h;c-=h}return e}
function kc(a,b){if(void 0===b)return a.W=!a.W,a.W;void 0===a.C[b]&&(a.C[b]=[null,!1]);a.C[b][1]=!a.C[b][1];return a.C[b][1]}function lc(a,b,c,d){void 0===d&&(d=0);for(var e in c){var f=a,g=+e+d,h=c[e].bind(b);if(void 0!==h)for(var k=+e+d;k<=g;k++)void 0!==f.C[k]?w("Output port "+u(k)+" already registered"):f.C[k]=[h,!1]}}
function mc(a,b,c,d,e){for(var f=0;0<c;){var g=a.C[b],h=a.fa[b]||1,k=1==h?255:2==h?65535:-1,k=(d>>>=f)&k;if(void 0!==g){if(g[0])g[0](b,k,e);a.ha&&a.W!=g[1]&&nc(a.ha,b,k)}else a.ha&&(ob(a.ha,a,b,k,e),a.W&&nc(a.ha,b,k));f+=h<<3;b+=h;c-=h}}function Tb(a,b,c,d,e){b="Memory block error ("+b+": "+r(c)+","+r(d)+")";e?a.ha?a.ha.message(b):a.log(b):w(b);return!1}var oc;if(vb){var pc=new ArrayBuffer(2);(new DataView(pc)).setUint16(0,256,!0);oc=256===(new Uint16Array(pc))[0]}else oc=!1;var ac=oc;
function B(a,b,c,d,e,f){this.id=qc+=2;this.da=null;this.C=0;this.Da=a;this.Ne=b;this.size=c||0;this.type=d||rc;this.N=d==$b;this.controller=null;this.F=f;Mb(this);this.Wa=this.Ni=!1;if(c)if(e)this.controller=e,a=e.Ri(a),this.da=a[0],this.C=a[1],Yb(this,e.fh());else if(vb)this.V=new ArrayBuffer(c),this.qa=new DataView(this.V,0,c),this.Ya=new Uint8Array(this.V,0,c),this.ee=new Uint16Array(this.V,0,c>>1),this.da=new Int32Array(this.V,0,c>>2),Yb(this,ac?bc:cc);else{this.da=Array(c>>2);for(e=0;e<this.da.length;e++)this.da[e]=
function B(a,b,c,d,e,f){this.id=qc+=2;this.da=null;this.C=0;this.Da=a;this.Ne=b;this.size=c||0;this.type=d||rc;this.N=d==$b;this.controller=null;this.F=f;Mb(this);this.Wa=this.Ni=!1;if(c)if(e)this.controller=e,a=e.Ri(a),this.da=a[0],this.C=a[1],Yb(this,e.fh());else if(vb)this.V=new ArrayBuffer(c),this.qa=new DataView(this.V,0,c),this.Ya=new Uint8Array(this.V,0,c),this.fe=new Uint16Array(this.V,0,c>>1),this.da=new Int32Array(this.V,0,c>>2),Yb(this,ac?bc:cc);else{this.da=Array(c>>2);for(e=0;e<this.da.length;e++)this.da[e]=
0;Yb(this,dc)}else Yb(this)}var rc=0,$b=2,sc="NONE RAM ROM VIDEO H/W UNPAGED PAGED".split(" "),xc=["black","blue","green","cyan"],qc=0;function yc(a){vb&&!ac&&(a=a<<24|a<<8&16711680|a>>8&65280|a>>>24);return a}
B.prototype={constructor:B,parent:null,gh:function(a){this.Da=a},save:function(){var a,b;if(this.controller)a=null;else if(vb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.qa.getInt32(b<<2,!0);else a=this.da;return a},restore:function(a){if(this.controller)return null==a;if(a&&this.size==a.length<<2){var b;if(vb)for(b=0;b<a.length;b++)this.qa.setInt32(b<<2,a[b],!0);else this.da=a;return this.Wa=!0}return!1},Rd:function(a,b,c){b?0===this.Ue++&&(c&&(this.F=c),Bc(this,Ac,!1)):0===this.Te++&&
(c&&(this.F=c),zc(this,Ac,!1))},ja:function(){this.ha&&z(this.ha,129)&&this.ha.message("attempt to read invalid block %"+r(this.Da),!0);return 255},L:function(a,b){this.ha&&z(this.ha,129)&&this.ha.message("attempt to write "+u(b)+" to invalid block %"+r(this.Da),!0)},ka:function(a,b){return this.jc(a++,b++)|this.jc(a,b)<<8},fa:function(a,b){return this.jc(a++,b++)|this.jc(a++,b++)<<8|this.jc(a++,b++)<<16|this.jc(a,b)<<24},X:function(a,b,c){this.sc(a++,b&255,c++);this.sc(a,b>>8,c)},U:function(a,b,
B.prototype={constructor:B,parent:null,gh:function(a){this.Da=a},save:function(){var a,b;if(this.controller)a=null;else if(vb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.qa.getInt32(b<<2,!0);else a=this.da;return a},restore:function(a){if(this.controller)return null==a;if(a&&this.size==a.length<<2){var b;if(vb)for(b=0;b<a.length;b++)this.qa.setInt32(b<<2,a[b],!0);else this.da=a;return this.Wa=!0}return!1},Sd:function(a,b,c){b?0===this.Ue++&&(c&&(this.F=c),Bc(this,Ac,!1)):0===this.Te++&&
(c&&(this.F=c),zc(this,Ac,!1))},ja:function(){this.ha&&A(this.ha,129)&&this.ha.message("attempt to read invalid block %"+r(this.Da),!0);return 255},L:function(a,b){this.ha&&A(this.ha,129)&&this.ha.message("attempt to write "+u(b)+" to invalid block %"+r(this.Da),!0)},ka:function(a,b){return this.jc(a++,b++)|this.jc(a,b)<<8},fa:function(a,b){return this.jc(a++,b++)|this.jc(a++,b++)<<8|this.jc(a++,b++)<<16|this.jc(a,b)<<24},X:function(a,b,c){this.sc(a++,b&255,c++);this.sc(a,b>>8,c)},U:function(a,b,
c){this.sc(a++,b&255,c++);this.sc(a++,b>>8&255,c++);this.sc(a++,b>>16&255,c++);this.sc(a,b>>>24,c)},Fa:function(a){return this.da[a>>2]>>>((a&3)<<3)&255},sb:function(a){var b=a>>2;a=(a&3)<<3;var c=this.da[b]>>a;return 24>a?c&65535:c&255|(this.da[b+1]&255)<<8},$a:function(a){var b=a>>2;a=(a&3)<<3;var c=this.da[b];a&&(c=c>>>a|this.da[b+1]<<32-a);return c},uc:function(a,b){var c=a>>2,d=(a&3)<<3;this.da[c]=this.da[c]&~(255<<d)|b<<d;this.Wa=!0},Dd:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.da[c]=this.da[c]&
~(65535<<d)|b<<d:(this.da[c]=this.da[c]&16777215|b<<24,c++,this.da[c]=this.da[c]&-256|b>>8);this.Wa=!0},Xc:function(a,b){var c=a>>2,d=(a&3)<<3;if(d){var e=-1<<d;this.da[c]=this.da[c]&~e|b<<d;c++;this.da[c]=this.da[c]&e|b>>>32-d}else this.da[c]=b;this.Wa=!0},Ea:function(a,b){this.ha&&null!=this.Da&&Cc(this.ha,this.Da+a)||this.F&&Dc(this.F,b,1,!1);return this.se(a,b)},rb:function(a,b){this.ha&&null!=this.Da&&Cc(this.ha,this.Da+a,2)||this.F&&Dc(this.F,b,2,!1);return this.cg(a,b)},Pa:function(a,b){this.ha&&
null!=this.Da&&Cc(this.ha,this.Da+a,4)||this.F&&Dc(this.F,b,4,!1);return this.hi(a,b)},tc:function(a,b,c){this.ha&&null!=this.Da&&Ec(this.ha,this.Da+a)||this.F&&Dc(this.F,c,1,!0);this.N?this.L(a,b,c):this.wf(a,b,c)},td:function(a,b,c){this.ha&&null!=this.Da&&Ec(this.ha,this.Da+a,2)||this.F&&Dc(this.F,c,2,!0);this.N?this.L(a,b,c):this.oi(a,b,c)},Wc:function(a,b,c){this.ha&&null!=this.Da&&Ec(this.ha,this.Da+a,4)||this.F&&Dc(this.F,c,4,!0);this.N?this.L(a,b,c):this.ua(a,b,c)},Ja:function(a,b){this.yb.da[this.A]|=
this.ea;this.zb.da[this.B]|=this.ea;return this.Cd.jc(a,b)},Jb:function(a,b){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.ea;return this.Cd.rf(a,b)},fb:function(a,b){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.ea;return this.Cd.Md(a,b)},Uc:function(a,b,c){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.W;this.Cd.sc(a,b,c)},Hd:function(a,b,c){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.W;this.Cd.yf(a,b,c)},ve:function(a,b,c){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=
this.W;this.Cd.xf(a,b,c)},Ka:function(a,b){return Fc(this.F,b,!1).jc(a,b)},Ub:function(a,b){return Fc(this.F,b,!1).rf(a,b)},gb:function(a,b){return Fc(this.F,b,!1).Md(a,b)},de:function(a,b,c){Fc(this.F,c,!0).sc(a,b,c)},Id:function(a,b,c){Fc(this.F,c,!0).yf(a,b,c)},kd:function(a,b,c){Fc(this.F,c,!0).xf(a,b,c)},Ca:function(a){return this.Ya[a]},aa:function(a){return this.Ya[a]},Ia:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.jc=this.aa;return this.Ya[a]},Tb:function(a){return this.qa.getUint16(a,
!0)},pa:function(a){return a&1?this.Ya[a]|this.Ya[a+1]<<8:this.ee[a>>1]},Db:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.rf=this.pa;return a&1?this.Ya[a]|this.Ya[a+1]<<8:this.ee[a>>1]},Na:function(a){return this.qa.getInt32(a,!0)},ga:function(a){return a&3?this.Ya[a]|this.Ya[a+1]<<8|this.Ya[a+2]<<16|this.Ya[a+3]<<24:this.da[a>>2]},cb:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.Md=this.ga;return a&3?this.Ya[a]|this.Ya[a+1]<<8|this.Ya[a+2]<<16|this.Ya[a+3]<<24:this.da[a>>
2]},bc:function(a,b){this.Ya[a]=b;this.Wa=!0},ra:function(a,b){this.Ya[a]=b;this.Wa=!0},Cc:function(a,b){this.Ya[a]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.sc=this.ra;this.Cd.Wa=!0},rd:function(a,b){this.qa.setUint16(a,b,!0);this.Wa=!0},ya:function(a,b){a&1?(this.Ya[a]=b,this.Ya[a+1]=b>>8):this.ee[a>>1]=b;this.Wa=!0},Gd:function(a,b){a&1?(this.Ya[a]=b,this.Ya[a+1]=b>>8):this.ee[a>>1]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.yf=this.ya;this.Cd.Wa=!0},Vc:function(a,b){this.qa.setInt32(a,
this.ea;this.zb.da[this.B]|=this.ea;return this.Cd.jc(a,b)},Jb:function(a,b){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.ea;return this.Cd.rf(a,b)},fb:function(a,b){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.ea;return this.Cd.Nd(a,b)},Uc:function(a,b,c){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.W;this.Cd.sc(a,b,c)},Hd:function(a,b,c){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=this.W;this.Cd.yf(a,b,c)},ve:function(a,b,c){this.yb.da[this.A]|=this.ea;this.zb.da[this.B]|=
this.W;this.Cd.xf(a,b,c)},Ka:function(a,b){return Fc(this.F,b,!1).jc(a,b)},Ub:function(a,b){return Fc(this.F,b,!1).rf(a,b)},gb:function(a,b){return Fc(this.F,b,!1).Nd(a,b)},ee:function(a,b,c){Fc(this.F,c,!0).sc(a,b,c)},Id:function(a,b,c){Fc(this.F,c,!0).yf(a,b,c)},kd:function(a,b,c){Fc(this.F,c,!0).xf(a,b,c)},Ca:function(a){return this.Ya[a]},aa:function(a){return this.Ya[a]},Ia:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.jc=this.aa;return this.Ya[a]},Tb:function(a){return this.qa.getUint16(a,
!0)},pa:function(a){return a&1?this.Ya[a]|this.Ya[a+1]<<8:this.fe[a>>1]},Db:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.rf=this.pa;return a&1?this.Ya[a]|this.Ya[a+1]<<8:this.fe[a>>1]},Na:function(a){return this.qa.getInt32(a,!0)},ga:function(a){return a&3?this.Ya[a]|this.Ya[a+1]<<8|this.Ya[a+2]<<16|this.Ya[a+3]<<24:this.da[a>>2]},cb:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.Nd=this.ga;return a&3?this.Ya[a]|this.Ya[a+1]<<8|this.Ya[a+2]<<16|this.Ya[a+3]<<24:this.da[a>>
2]},bc:function(a,b){this.Ya[a]=b;this.Wa=!0},ra:function(a,b){this.Ya[a]=b;this.Wa=!0},Cc:function(a,b){this.Ya[a]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.sc=this.ra;this.Cd.Wa=!0},rd:function(a,b){this.qa.setUint16(a,b,!0);this.Wa=!0},ya:function(a,b){a&1?(this.Ya[a]=b,this.Ya[a+1]=b>>8):this.fe[a>>1]=b;this.Wa=!0},Gd:function(a,b){a&1?(this.Ya[a]=b,this.Ya[a+1]=b>>8):this.fe[a>>1]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.yf=this.ya;this.Cd.Wa=!0},Vc:function(a,b){this.qa.setInt32(a,
b,!0);this.Wa=!0},wa:function(a,b){a&3?(this.Ya[a]=b,this.Ya[a+1]=b>>8,this.Ya[a+2]=b>>16,this.Ya[a+3]=b>>24):this.da[a>>2]=b;this.Wa=!0},jd:function(a,b){a&3?(this.Ya[a]=b,this.Ya[a+1]=b>>8,this.Ya[a+2]=b>>16,this.Ya[a+3]=b>>24):this.da[a>>2]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.xf=this.wa;this.Cd.Wa=!0}};function Mb(a,b,c){a.ha=b;a.Te=a.Ue=0;c&&(c.F&&(a.F=c.F),(a.Te=c.Te)&&zc(a,Ac,!1),(a.Ue=c.Ue)&&Bc(a,Ac,!1))}
function Gc(a,b){b?0===--a.Ue&&(a.sc=a.N?a.L:a.wf,a.yf=a.N?a.X:a.oi,a.xf=a.N?a.U:a.ua):0===--a.Te&&(a.jc=a.se,a.rf=a.cg,a.Md=a.hi)}function Bc(a,b,c){c&&a.Ue||(a.sc=!a.N&&b[3]||a.L,a.yf=!a.N&&b[4]||a.X,a.xf=!a.N&&b[5]||a.U);if(c||void 0===c)a.wf=b[3]||a.L,a.oi=b[4]||a.X,a.ua=b[5]||a.U}function zc(a,b,c){c&&a.Te||(a.jc=b[0]||a.ja,a.rf=b[1]||a.ka,a.Md=b[2]||a.fa);if(c||void 0===c)a.se=b[0]||a.ja,a.cg=b[1]||a.ka,a.hi=b[2]||a.fa}
function Yb(a,b,c){b||(b=5==a.type?Hc:6==a.type?Ic:Jc);zc(a,b,c);Bc(a,b,c)}var Jc=[],dc=[B.prototype.Fa,B.prototype.sb,B.prototype.$a,B.prototype.uc,B.prototype.Dd,B.prototype.Xc],Ac=[B.prototype.Ea,B.prototype.rb,B.prototype.Pa,B.prototype.tc,B.prototype.td,B.prototype.Wc],Ic=[B.prototype.Ja,B.prototype.Jb,B.prototype.fb,B.prototype.Uc,B.prototype.Hd,B.prototype.ve],Hc=[B.prototype.Ka,B.prototype.Ub,B.prototype.gb,B.prototype.de,B.prototype.Id,B.prototype.kd];
function Gc(a,b){b?0===--a.Ue&&(a.sc=a.N?a.L:a.wf,a.yf=a.N?a.X:a.oi,a.xf=a.N?a.U:a.ua):0===--a.Te&&(a.jc=a.se,a.rf=a.cg,a.Nd=a.hi)}function Bc(a,b,c){c&&a.Ue||(a.sc=!a.N&&b[3]||a.L,a.yf=!a.N&&b[4]||a.X,a.xf=!a.N&&b[5]||a.U);if(c||void 0===c)a.wf=b[3]||a.L,a.oi=b[4]||a.X,a.ua=b[5]||a.U}function zc(a,b,c){c&&a.Te||(a.jc=b[0]||a.ja,a.rf=b[1]||a.ka,a.Nd=b[2]||a.fa);if(c||void 0===c)a.se=b[0]||a.ja,a.cg=b[1]||a.ka,a.hi=b[2]||a.fa}
function Yb(a,b,c){b||(b=5==a.type?Hc:6==a.type?Ic:Jc);zc(a,b,c);Bc(a,b,c)}var Jc=[],dc=[B.prototype.Fa,B.prototype.sb,B.prototype.$a,B.prototype.uc,B.prototype.Dd,B.prototype.Xc],Ac=[B.prototype.Ea,B.prototype.rb,B.prototype.Pa,B.prototype.tc,B.prototype.td,B.prototype.Wc],Ic=[B.prototype.Ja,B.prototype.Jb,B.prototype.fb,B.prototype.Uc,B.prototype.Hd,B.prototype.ve],Hc=[B.prototype.Ka,B.prototype.Ub,B.prototype.gb,B.prototype.ee,B.prototype.Id,B.prototype.kd];
if(vb)var cc=[B.prototype.Ca,B.prototype.Tb,B.prototype.Na,B.prototype.bc,B.prototype.rd,B.prototype.Vc],bc=[B.prototype.aa,B.prototype.pa,B.prototype.ga,B.prototype.ra,B.prototype.ya,B.prototype.wa],Kc=[B.prototype.Ia,B.prototype.Db,B.prototype.cb,B.prototype.Cc,B.prototype.Gd,B.prototype.jd];
function Lc(a,b){Ua.call(this,"CPU",a,Lc,1);var c=a.cycles||b,d=a.multiplier||1;this.Y={};this.Y.Jd=c;this.Y.Xd=d;this.Y.tg=Math.round(this.Y.Jd/1E4)/100;this.Y.Fe=this.Y.tg*this.Y.Xd;this.la.Ib=!1;this.la.dh=!1;this.la.Ki=a.autoStart;this.la.Oi=!1;this.la.Ye=!1;this.Y.If=this.Y.kf=0;this.Y.Jf=a.csStart;this.Y.jf=a.csInterval;this.Y.lf=a.csStop;this.pi=this.Ke.bind(this);rb(this)}db(Lc);var Mc=["power","reset"];m=Lc.prototype;
function Lc(a,b){Ua.call(this,"CPU",a,Lc,1);var c=a.cycles||b,d=a.multiplier||1;this.Y={};this.Y.Jd=c;this.Y.Yd=d;this.Y.tg=Math.round(this.Y.Jd/1E4)/100;this.Y.Fe=this.Y.tg*this.Y.Yd;this.la.Ib=!1;this.la.dh=!1;this.la.Ki=a.autoStart;this.la.Oi=!1;this.la.Ye=!1;this.Y.If=this.Y.kf=0;this.Y.Jf=a.csStart;this.Y.jf=a.csInterval;this.Y.lf=a.csStop;this.pi=this.Ke.bind(this);rb(this)}db(Lc);var Mc=["power","reset"];m=Lc.prototype;
m.Ic=function(a,b,c,d){this.V=a;this.ea=b;this.ha=d;for(b=0;b<Mc.length;b++)(c=this.qa[Mc[b]])&&this.V.Qb(null,Mc[b],c);this.Tb=Eb(a,"FPU");this.N=Eb(a,"ChipSet");a=Nc(a,"autoStart");null!=a&&(this.la.Ki="true"==a?!0:"false"==a?!1:!!a);rb(this)};m.reset=function(){};m.save=function(){return null};m.restore=function(){return!1};
m.ic=function(a,b){if(!b){if(a&&this.restore){Oc(this);if(!this.restore(a))return!1;Pc(this)}else this.reset();this.ha?this.ha.gh():this.O("No debugger detected")}Qc(this);return!0};m.hc=function(a){return a?this.save():!0};function Sc(a){(a.la.Ki||!a.ha&&void 0===a.qa.run)&&a.Ke(!0)}m.Qi=function(){return 0};function Pc(a){void 0===a.Y.Jf&&(a.Y.Jf=0);void 0===a.Y.jf&&(a.Y.jf=-1);void 0===a.Y.lf&&(a.Y.lf=-1);a.la.Ye=0<=a.Y.Jf&&0<a.Y.jf;a.la.Ye&&(a.Y.If=0,a.Y.kf=a.Y.Jf-a.uc)}
function Vc(a,b){if(a.la.Ye){var c=!1;a.Y.If=a.Y.If+a.Qi()|0;a.Y.kf-=b;0>=a.Y.kf&&(a.Y.kf+=a.Y.jf,c=!0);0<=a.Y.lf&&a.Y.lf<=Wc(a)&&(a.Y.jf=a.Y.lf=-1,Pc(a),a.Wb(),c=!0);c&&a.O(Wc(a)+" cycles: checksum="+r(a.Y.If))}}
m.Qb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.qa[b]=c;a=!0;break;case "run":this.qa[b]=c;c.onclick=function(){var a;if(a=d.V)if(a=d.V,a.la.cc)a=!0;else{var b=null,c,h=gb(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.la.af);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.la.cc);c++);c==h.length&&(b=a);w("The "+b.type+" component ("+b.id+") is not "+(b.la.af?"powered yet":"ready yet"+(b.rg?" (waiting for notification)":""))+".");a=!1}a&&(d.la.Ib?d.Wb(!0):d.Ke(!0))};
a=!0;break;case "speed":this.qa[b]=c;a=!0;break;case "setSpeed":this.qa[b]=c,c.onclick=function(){Xc(d,d.Y.Xd<<1,!0)},c.textContent=this.Y.Fe.toFixed(2)+"Mhz",a=!0}return a};function Yc(a,b){if(a.la.Ib){var c=a.A-b;a.A-=c;a.fb-=c}}function Zc(a,b,c){a.uc+=b;c&&(a.fb=a.A=0)}
function $c(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Y.Xd&&a.Y.oe&&(d=a.Y.oe/a.Y.tg);a.Y.Xi=Math.round(1E3/30);a.Y.jm=Math.floor(a.Y.Jd/c*d);a.Y.qh=Math.floor(a.Y.Jd/30*d);a.Y.Zi=Math.floor(a.Y.Jd/60*d);a.Y.Yi=Math.floor(a.Y.Jd/2*d);b||(a.Y.mf=a.Y.qh,a.Y.Lf=a.Y.Zi,a.Y.Kf=a.Y.Yi);a.Y.rh=0}function Wc(a,b){var c=a.uc+a.Ub+a.fb-a.A;b&&1<a.Y.Xd&&a.Y.oe>a.Y.tg&&(c=Math.round(c/a.Y.Xd));return c}function Oc(a){a.Y.oe=0;a.uc=a.Ub=a.fb=a.A=0;Pc(a);Xc(a,1)}
function Xc(a,b,c){var d=!1;if(void 0!==b){.8>a.Y.oe/a.Y.Fe?b=1:d=!0;a.Y.Xd=b;b=a.Y.tg*a.Y.Xd;if(a.Y.Fe!=b){a.Y.Fe=b;b=a.Y.Fe.toFixed(2)+"Mhz";var e=a.qa.setSpeed;e&&(e.textContent=b);a.O("target speed: "+b)}c&&a.V&&a.V.yd()}Zc(a,a.Ub);a.Ub=0;a.Y.hf=pa();a.Y.Ge=0;$c(a);return d}
a=!0;break;case "speed":this.qa[b]=c;a=!0;break;case "setSpeed":this.qa[b]=c,c.onclick=function(){Xc(d,d.Y.Yd<<1,!0)},c.textContent=this.Y.Fe.toFixed(2)+"Mhz",a=!0}return a};function Yc(a,b){if(a.la.Ib){var c=a.A-b;a.A-=c;a.fb-=c}}function Zc(a,b,c){a.uc+=b;c&&(a.fb=a.A=0)}
function $c(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Y.Yd&&a.Y.pe&&(d=a.Y.pe/a.Y.tg);a.Y.Xi=Math.round(1E3/30);a.Y.jm=Math.floor(a.Y.Jd/c*d);a.Y.qh=Math.floor(a.Y.Jd/30*d);a.Y.Zi=Math.floor(a.Y.Jd/60*d);a.Y.Yi=Math.floor(a.Y.Jd/2*d);b||(a.Y.mf=a.Y.qh,a.Y.Lf=a.Y.Zi,a.Y.Kf=a.Y.Yi);a.Y.rh=0}function Wc(a,b){var c=a.uc+a.Ub+a.fb-a.A;b&&1<a.Y.Yd&&a.Y.pe>a.Y.tg&&(c=Math.round(c/a.Y.Yd));return c}function Oc(a){a.Y.pe=0;a.uc=a.Ub=a.fb=a.A=0;Pc(a);Xc(a,1)}
function Xc(a,b,c){var d=!1;if(void 0!==b){.8>a.Y.pe/a.Y.Fe?b=1:d=!0;a.Y.Yd=b;b=a.Y.tg*a.Y.Yd;if(a.Y.Fe!=b){a.Y.Fe=b;b=a.Y.Fe.toFixed(2)+"Mhz";var e=a.qa.setSpeed;e&&(e.textContent=b);a.O("target speed: "+b)}c&&a.V&&a.V.yd()}Zc(a,a.Ub);a.Ub=0;a.Y.hf=pa();a.Y.Ge=0;$c(a);return d}
m.Ke=function(a){if(pb(this,!0)){if(!this.la.Ib){Xc(this);this.V&&this.V.start(this.Y.hf,Wc(this));this.la.Ib=!0;this.la.dh=!0;this.N&&ad(this.N);var b=this.qa.run;b&&(b.textContent="Halt");this.V&&(this.V.qd(),a&&this.V.yd(!0))}this.Y.rh>=this.Y.Jd&&$c(this,!0);this.Y.Mf=0;this.Y.ug=pa();this.Y.Ge&&(a=this.Y.ug-this.Y.Ge,a>this.Y.Xi&&(this.Y.hf+=a,this.Y.hf>this.Y.ug&&(this.Y.hf=this.Y.ug)));try{do{var c=this.la.Ye?1:this.Y.jm;if(this.N){bd(this.N);var d=this.N;a=c;var e=d.W[0];if(e.Be){var f=(Wc(d.F,
d.ka)-e.xd)/d.gb|0,g=cd(d,0)-f;6==e.mode&&(g-=f);var h=g*d.gb|0;6==e.mode&&(h>>=1);a>h&&(a=h)}var c=a,k=this.N;a=c;if(k.A&&k.A[11]&64){var l=k.ua-Wc(k.F,k.ka);0<l&&a>l&&(a=l)}c=a}try{this.vf(c)}catch(q){if("number"!=typeof q)throw q;}var n=this.fb-this.A;this.Ub+=n;this.Y.Mf+=n;Zc(this,0,!0);Vc(this,n);this.Y.Lf-=n;0>=this.Y.Lf&&(this.Y.Lf+=this.Y.Zi,this.V&&dd(this.V));this.Y.Kf-=n;0>=this.Y.Kf&&(this.Y.Kf+=this.Y.Yi,this.V&&this.V.qd());this.Y.mf-=n;if(0>=this.Y.mf){this.Y.mf+=this.Y.qh;break}}while(this.la.Ib)}catch(q){this.Wb();
Qc(this);this.V&&this.V.stop(pa(),Wc(this));pb(this,!1);ub(this,q.stack||q.message);return}c=setTimeout;d=this.pi;this.Y.Ge=pa();e=this.Y.Xi;this.Y.Mf&&(e=Math.round(e*this.Y.Mf/this.Y.qh));e-=this.Y.Ge-this.Y.ug;if(f=this.Y.Ge-this.Y.hf)this.Y.oe=Math.round(this.Ub/(10*f))/100,864E5<=f&&(this.uc=0,this.N&&bd(this.N,!0),Xc(this));if(0>e||this.Y.oe<this.Y.Fe)e=0;this.Y.rh+=this.Y.Mf;this.Y.Ge+=e;c(d,e)}else Qc(this),this.V&&this.V.stop(pa(),Wc(this))};m.vf=function(){return 0};
m.Wb=function(a){qb(this,!0);this.fb-=this.A;this.A=0;Zc(this,this.Ub);this.Ub=0;if(this.la.Ib){this.la.Ib=!1;this.N&&ad(this.N);var b=this.qa.run;b&&(b.textContent="Run")}this.la.Vd=a};function Qc(a,b){a.V&&(dd(a.V,b),a.V.qd())}
Qc(this);this.V&&this.V.stop(pa(),Wc(this));pb(this,!1);ub(this,q.stack||q.message);return}c=setTimeout;d=this.pi;this.Y.Ge=pa();e=this.Y.Xi;this.Y.Mf&&(e=Math.round(e*this.Y.Mf/this.Y.qh));e-=this.Y.Ge-this.Y.ug;if(f=this.Y.Ge-this.Y.hf)this.Y.pe=Math.round(this.Ub/(10*f))/100,864E5<=f&&(this.uc=0,this.N&&bd(this.N,!0),Xc(this));if(0>e||this.Y.pe<this.Y.Fe)e=0;this.Y.rh+=this.Y.Mf;this.Y.Ge+=e;c(d,e)}else Qc(this),this.V&&this.V.stop(pa(),Wc(this))};m.vf=function(){return 0};
m.Wb=function(a){qb(this,!0);this.fb-=this.A;this.A=0;Zc(this,this.Ub);this.Ub=0;if(this.la.Ib){this.la.Ib=!1;this.N&&ad(this.N);var b=this.qa.run;b&&(b.textContent="Run")}this.la.Wd=a};function Qc(a,b){a.V&&(dd(a.V,b),a.V.qd())}
function ed(a,b,c,d){this.F=a;this.ha=a.ha;this.id=b;this.lc=c||"";this.Z=0;this.Ta=65535;this.Zb=this.Ta+1;this.Lb=this.Gc=this.ext=this.wb=this.type=this.Aa=0;this.Xb=-1;this.ba=this.Oc=2;this.R=this.Ba=65535;this.V=this.kh;this.ea=this.Di;this.qa=this.Fi;this.A={Z:-1,Aa:0,Ta:0,wb:0,type:0,ext:0,Xb:-1};1==this.id&&(this.Xf=0,this.C=null,this.cf=!1,this.N=Array(32),this.B=[]);fd(this,!0,d)}function gd(a,b){a.B.push(b);return[a.B.length,1]}m=ed.prototype;
m.kh=function(a){this.Z=a&65535;return this.Aa=this.Z<<4};m.sg=function(a,b){var c,d,e=this.F;a&=65535;a&4?(c=e.Bc.Aa,d=c+e.Bc.Ta|0):(c=e.Ec,d=e.Ad);if(c){c=c+(a&65528)|0;if(d-c|0)return e.A-=15,hd(this,c,a,b);6>this.id&&C.call(e,b&&3==this.id?10:13,a&65532)}return-1};m.fm=function(a){var b=this.F;a=b.Mc+(a<<2);var c=b.na(a);b.ca&=-769;return this.load(b.na(a+2))+c|0};
m.em=function(a){var b=this.F;a<<=3;var c=b.Mc+a|0;if(7<=(b.Sd-c|0))return this.C=!0,a=hd(this,c,a),-1!==a&&(a+=this.Xf),a;C.call(b,13,a|2);return-1};m.Di=function(a){return this.Aa+a|0};m.Fi=function(a){return this.Aa+a|0};m.Ci=function(a,b){return(a>>>0)+b<=this.Zb?this.Aa+a|0:this.ng()};m.Ik=function(a,b){return(a>>>0)+b>this.Zb?this.Aa+a|0:this.ng()};m.ng=function(){C.call(this.F,13,0);return-1};m.Ei=function(a,b){return(a>>>0)+b<=this.Zb?this.Aa+a|0:this.og()};
m.em=function(a){var b=this.F;a<<=3;var c=b.Mc+a|0;if(7<=(b.Td-c|0))return this.C=!0,a=hd(this,c,a),-1!==a&&(a+=this.Xf),a;C.call(b,13,a|2);return-1};m.Di=function(a){return this.Aa+a|0};m.Fi=function(a){return this.Aa+a|0};m.Ci=function(a,b){return(a>>>0)+b<=this.Zb?this.Aa+a|0:this.ng()};m.Ik=function(a,b){return(a>>>0)+b>this.Zb?this.Aa+a|0:this.ng()};m.ng=function(){C.call(this.F,13,0);return-1};m.Ei=function(a,b){return(a>>>0)+b<=this.Zb?this.Aa+a|0:this.og()};
m.Jk=function(a,b){return(a>>>0)+b>this.Zb?this.Aa+a|0:this.og()};m.og=function(){C.call(this.F,13,0);return-1};function id(a,b,c,d,e){a.Z=b;a.Aa=d;a.Ta=e;a.Zb=(e>>>0)+1;a.wb=c;a.type=c&7936;a.ext=c>>16&192;a.Xb=(b&4?a.F.Bc.Aa:a.F.Ec)+(b&65528)|0;4>a.id&&fd(a,!0)}function jd(a,b,c){var d=a.F,e=d.na(b+2),f=d.na(b)|(e&255)<<16,d=d.na(b+4);a.Z=c;a.Aa=f;a.Ta=d;a.Zb=(d>>>0)+1;a.wb=e;a.type=e&7936;a.ext=0;a.Xb=b;4>a.id&&fd(a,!0)}
function hd(a,b,c,d){var e=a.F;if(!d&&c===a.A.Z)return a.Z=c,a.Aa=a.A.Aa,a.Ta=a.A.Ta,a.Zb=(a.A.Ta>>>0)+1,a.wb=a.A.wb,a.type=a.A.type,a.ext=a.A.ext,a.Xb=a.A.Xb,a.A.Z=-1,fd(a,!0,!0,!1),a.Aa;a.A.Z=-1;var f=e.na(b+0),g=e.na(b+4),h=g&7936,k=e.na(b+2)|(g&255)<<16,l=e.na(b+6),n=c&65528;if(80386<=e.ia){var q=f,k=k|(l&65280)<<16,f=f|(l&15)<<16;l&128&&(f=f<<12|4095)}switch(a.id){case 1:var p=a.C;a.cf=!1;if(p&&1==c&&a.B.length){var A=a.B[a.Xf-1];if(A&&!A())return-1}var F=c&3,v=(g&24576)>>13,A=-1,E,H;n||b>=e.Ec&&
b<e.Ad&&(h=0);if(6144<=h)null!=d?A=0:!1!==p?(h&1024?v<=a.Lb&&(A=0):F<=a.Lb&&v==a.Lb&&(A=0),A||(c=c&-4|a.Lb&3)):F>=a.Lb&&(F>a.Lb&&(A=D(e),kd(e,D(e),!0),G(e,A),a.cf=!0),A=0);else{if(256==h||2304==h)return ld(a,c,p)?a.Aa:-1;if(1024==h)A=2,H=0,F<a.Lb&&(F=a.Lb);else if(3072==h)A=4,H=0,F<a.Lb&&(F=a.Lb);else if(1536==h)A=2,H=148224;else if(3584==h)A=4,H=148224;else if(1792==h)A=2,H=147712;else if(3840==h)A=4,H=147712;else if(1280==h)return ld(a,k&65535,p)?a.Aa:-1}0<A&&!(g&32768)&&(A=0);if(0<A&&(n=a.Lb,E=
b==e.Mc+c,F<=v&&(!E||0<=e.rb||n<=v))){b=k&65535;h&2048&&(f=q|l<<16);l=h=0;d=b&3;if(d<n){if(-1===a.sg(b,!0))return-1;l=e.Sa.Aa;e.Sa.type&2048?(c=(d<<3)+4,k=4):(c=(d<<2)+2,k=2);h=e.na(l+c+k);if(!h)return C.call(e,10,h),-1;if(-1===e.ta.sg(h,!0))return-1;l=2==k?e.na(l+c):e.oa(l+c)}c=e.ca;e.ca&=~H;c&131072&&md(e,!0,!1);if(-1===a.sg(b,!1))return-1;nd(e,A);a.Xf=f;if(d<n){if(!0!==p)return-1;A=I(e);f=0;for(g&=31;g--;)a.N[f++]=od(e,e.ta,A),A+=2;p=e.ta.Z;g=I(e);kd(e,h,!0);G(e,l);c&131072&&(nd(e,4),pd(e,e.Pb.Z,
4,2),e.Pb.load(0),pd(e,e.Ob.Z,4,2),e.Ob.load(0),pd(e,e.vb.Z,4,2),vd(e,0),pd(e,e.Xa.Z,4,2),wd(e,0));pd(e,p,e.ba,2);for(J(e,g);f;)J(e,a.N[--f]);a.cf=!0}return a.Aa}if(0!=A)return C.call(e,13,c&65532|(E?2:0)),-1;if(!(g&32768))return C.call(e,11,c&65532|(E?2:0)),-1;break;case 2:if(n){if(4096>h||2048==(h&2560))return C.call(e,13,c&65532),-1;if(!(g&32768))return C.call(e,11,c&65532),-1}break;case 3:if(!n||4096>h||512!=(h&2560))return C.call(e,13,c&65532),-1;if(!(g&32768))return C.call(e,12,c&65532),-1;
function hd(a,b,c,d){var e=a.F;if(!d&&c===a.A.Z)return a.Z=c,a.Aa=a.A.Aa,a.Ta=a.A.Ta,a.Zb=(a.A.Ta>>>0)+1,a.wb=a.A.wb,a.type=a.A.type,a.ext=a.A.ext,a.Xb=a.A.Xb,a.A.Z=-1,fd(a,!0,!0,!1),a.Aa;a.A.Z=-1;var f=e.na(b+0),g=e.na(b+4),h=g&7936,k=e.na(b+2)|(g&255)<<16,l=e.na(b+6),n=c&65528;if(80386<=e.ia){var q=f,k=k|(l&65280)<<16,f=f|(l&15)<<16;l&128&&(f=f<<12|4095)}switch(a.id){case 1:var p=a.C;a.cf=!1;if(p&&1==c&&a.B.length){var z=a.B[a.Xf-1];if(z&&!z())return-1}var F=c&3,v=(g&24576)>>13,z=-1,E,H;n||b>=e.Ec&&
b<e.Ad&&(h=0);if(6144<=h)null!=d?z=0:!1!==p?(h&1024?v<=a.Lb&&(z=0):F<=a.Lb&&v==a.Lb&&(z=0),z||(c=c&-4|a.Lb&3)):F>=a.Lb&&(F>a.Lb&&(z=D(e),kd(e,D(e),!0),G(e,z),a.cf=!0),z=0);else{if(256==h||2304==h)return ld(a,c,p)?a.Aa:-1;if(1024==h)z=2,H=0,F<a.Lb&&(F=a.Lb);else if(3072==h)z=4,H=0,F<a.Lb&&(F=a.Lb);else if(1536==h)z=2,H=148224;else if(3584==h)z=4,H=148224;else if(1792==h)z=2,H=147712;else if(3840==h)z=4,H=147712;else if(1280==h)return ld(a,k&65535,p)?a.Aa:-1}0<z&&!(g&32768)&&(z=0);if(0<z&&(n=a.Lb,E=
b==e.Mc+c,F<=v&&(!E||0<=e.rb||n<=v))){b=k&65535;h&2048&&(f=q|l<<16);l=h=0;d=b&3;if(d<n){if(-1===a.sg(b,!0))return-1;l=e.Sa.Aa;e.Sa.type&2048?(c=(d<<3)+4,k=4):(c=(d<<2)+2,k=2);h=e.na(l+c+k);if(!h)return C.call(e,10,h),-1;if(-1===e.ta.sg(h,!0))return-1;l=2==k?e.na(l+c):e.oa(l+c)}c=e.ca;e.ca&=~H;c&131072&&md(e,!0,!1);if(-1===a.sg(b,!1))return-1;nd(e,z);a.Xf=f;if(d<n){if(!0!==p)return-1;z=I(e);f=0;for(g&=31;g--;)a.N[f++]=od(e,e.ta,z),z+=2;p=e.ta.Z;g=I(e);kd(e,h,!0);G(e,l);c&131072&&(nd(e,4),pd(e,e.Pb.Z,
4,2),e.Pb.load(0),pd(e,e.Ob.Z,4,2),e.Ob.load(0),pd(e,e.vb.Z,4,2),vd(e,0),pd(e,e.Xa.Z,4,2),wd(e,0));pd(e,p,e.ba,2);for(J(e,g);f;)J(e,a.N[--f]);a.cf=!0}return a.Aa}if(0!=z)return C.call(e,13,c&65532|(E?2:0)),-1;if(!(g&32768))return C.call(e,11,c&65532|(E?2:0)),-1;break;case 2:if(n){if(4096>h||2048==(h&2560))return C.call(e,13,c&65532),-1;if(!(g&32768))return C.call(e,11,c&65532),-1}break;case 3:if(!n||4096>h||512!=(h&2560))return C.call(e,13,c&65532),-1;if(!(g&32768))return C.call(e,12,c&65532),-1;
break;case 4:p=h&-513;if(!n||256!=p&&2304!=p)return C.call(e,13,c&65532),-1;2304==p&&(a.ti=k+e.na(k+100+2)|0,a.Ek=k+a.Ta|0);break;case 6:if(!(h&4096)&&768<h&&2304!=h&&2816!=h)return-1}d?(a.A.Z=c,a.A.Aa=k,a.A.Ta=f,a.A.wb=g,a.A.type=h,a.A.ext=l,a.A.Xb=b):(a.Z=c,a.Aa=k,a.Ta=f,a.Zb=(f>>>0)+1,a.wb=g,a.type=h,a.ext=l,a.Xb=b,fd(a,!0,!0,!1));return k}
function ld(a,b,c){var d=a.F,e=a.Lb,f=d.Sa.Z,g=d.Sa.Aa;if(!c){if(!(d.Sa.type&512))return C.call(d,13,b&65532),!1;d.jb(d.Sa.Xb+4,d.Sa.wb&=-513)}if(-1===d.Sa.load(b))return!1;var h=d.Sa.Aa;if(!1!==c){if(d.Sa.type&512)return C.call(d,13,b&65532),!1;d.jb(d.Sa.Xb+4,d.Sa.wb|=512)}d.Sa.type=d.Sa.type&-513|d.Sa.wb&512;256==d.Sa.type||768==d.Sa.type?(d.jb(g+14,K(d)),d.jb(g+16,xd(d)),d.jb(g+18,d.G),d.jb(g+20,d.I),d.jb(g+22,d.M),d.jb(g+24,d.H),d.jb(g+26,I(d)),d.jb(g+28,d.P),d.jb(g+30,d.K),d.jb(g+32,d.J),d.jb(g+
34,d.Xa.Z),d.jb(g+36,d.va.Z),d.jb(g+38,d.ta.Z),d.jb(g+40,d.vb.Z),d.Bc.load(d.na(h+42)),yd(d,d.na(h+16)|(c?16384:0)),d.G=d.na(h+18),d.I=d.na(h+20),d.M=d.na(h+22),d.H=d.na(h+24),d.P=d.na(h+28),d.K=d.na(h+30),d.J=d.na(h+32),d.Xa.load(d.na(h+34)),d.vb.load(d.na(h+40)),zd(d,d.na(h+14),d.na(h+36)),b=38,g=26,a.Lb<e&&(g=(a.Lb<<2)+2,b=g+2),kd(d,d.na(h+b),!0),G(d,d.na(h+g))):(d.nb(g+28,d.Od),d.nb(g+32,K(d)),d.nb(g+36,xd(d)),d.nb(g+40,d.G),d.nb(g+44,d.I),d.nb(g+48,d.M),d.nb(g+52,d.H),d.nb(g+56,I(d)),d.nb(g+
34,d.Xa.Z),d.jb(g+36,d.va.Z),d.jb(g+38,d.ta.Z),d.jb(g+40,d.vb.Z),d.Bc.load(d.na(h+42)),yd(d,d.na(h+16)|(c?16384:0)),d.G=d.na(h+18),d.I=d.na(h+20),d.M=d.na(h+22),d.H=d.na(h+24),d.P=d.na(h+28),d.K=d.na(h+30),d.J=d.na(h+32),d.Xa.load(d.na(h+34)),d.vb.load(d.na(h+40)),zd(d,d.na(h+14),d.na(h+36)),b=38,g=26,a.Lb<e&&(g=(a.Lb<<2)+2,b=g+2),kd(d,d.na(h+b),!0),G(d,d.na(h+g))):(d.nb(g+28,d.Pd),d.nb(g+32,K(d)),d.nb(g+36,xd(d)),d.nb(g+40,d.G),d.nb(g+44,d.I),d.nb(g+48,d.M),d.nb(g+52,d.H),d.nb(g+56,I(d)),d.nb(g+
60,d.P),d.nb(g+64,d.K),d.nb(g+68,d.J),d.nb(g+72,d.Xa.Z),d.nb(g+76,d.va.Z),d.nb(g+80,d.ta.Z),d.nb(g+84,d.vb.Z),d.nb(g+88,d.Ob.Z),d.nb(g+92,d.Pb.Z),Ad.call(d,d.oa(h+28)),d.Bc.load(d.na(h+96)),yd(d,d.oa(h+36)|(c?16384:0)),d.G=d.oa(h+40),d.I=d.oa(h+44),d.M=d.oa(h+48),d.H=d.oa(h+52),d.P=d.oa(h+60),d.K=d.oa(h+64),d.J=d.oa(h+68),d.Xa.load(d.na(h+72)),d.vb.load(d.na(h+84)),d.Ob.load(d.na(h+88)),d.Pb.load(d.na(h+92)),zd(d,d.oa(h+32),d.na(h+76)),b=80,g=56,a.Lb<e&&(g=(a.Lb<<3)+4,b=g+4),kd(d,d.na(h+b),!0),G(d,
d.oa(h+g)));c&&d.jb(h+0,f);d.Za|=8;return!0}m.save=function(){return[this.Z,this.Aa,this.Ta,this.wb,this.id,this.lc,this.Lb,this.Gc,this.Xb,this.Oc,this.Ba,this.ba,this.R,this.type,this.Zb]};m.restore=function(a){"number"==typeof a?this.load(a):(this.Z=a[0],this.Aa=a[1],this.Ta=a[2],this.wb=a[3],this.id=a[4],this.lc=a[5],this.Lb=a[6],this.Gc=a[7],this.Xb=a[8],this.Oc=a[9]||2,this.Ba=a[10]||65535,this.ba=a[11]||2,this.R=a[12]||65535,this.type=a[13]||this.wb&7936,this.Zb=a[14]||(this.Ta>>>0)+1)};
function fd(a,b,c,d){void 0===c&&(c=!!(a.F.Za&1));a.cd=!1;if(c)if(a.load=a.sg,a.Wi=a.em,a.nc=a.Ci,a.oc=a.Ei,void 0===d&&(d=!!(a.F.ca&131072)),d)a.load=a.V,a.nc=a.ea,a.oc=a.qa,a.Lb=a.Gc=3,a.ba=a.Oc=2,a.R=a.Ba=65535,a.Ta=65535,a.Zb=a.Ta+1,a.Oc=a.ba,a.Xb=-1,a.cf=!1;else{if(!(a.Z&-4))a.nc=a.ng,a.oc=a.og;else if(a.type&4096){6144==(a.type&6656)&&(a.nc=a.ng);if(a.type&2048||!(a.type&512))a.oc=a.og;1024==(a.type&3072)&&(a.nc==a.Ci&&(a.nc=a.Ik),a.oc==a.Ei&&(a.oc=a.Jk),a.cd=!0);b&&6>a.id&&a.Z&-4&&-1!==a.Xb&&
(c=a.Xb+5,d=a.F.Qa(c),d&1||a.F.qc(c,d|1))}b&&(a.Lb=a.Z&3,a.Gc=(a.wb&24576)>>13,80386>a.F.ia||!(a.ext&64)?(a.ba=2,a.R=65535):(a.ba=4,a.R=-1),a.Oc=a.ba,a.Ba=a.R)}else a.load=a.kh,a.Wi=a.fm,a.nc=a.Di,a.oc=a.Fi,a.Lb=a.Gc=0,a.Xb=-1,a.cf=!1}
function Bd(a){this.ia=a.model||8088;var b=a.stepping;this.Uc=this.ia+(b?ca(b,16):0);b=0;switch(this.ia){default:b=4772727;break;case 80286:b=6E6;break;case 80386:b=16E6}Lc.call(this,a,b);this.Yf=61442;this.Cc=1792;this.Wf=28672;this.Dd=4;this.ra=255;this.B=80286<=this.ia?xb:wb;this.X=Cd;this.bg=Dd;this.gg=Ed;this.hg=Fd;if(80186<=this.ia&&(this.X=Cd.slice(),this.bg=Dd.slice(),this.gg=Ed.slice(),this.ra=31,this.X[15]=Gd,this.X[96]=Hd,this.X[97]=Id,this.X[98]=Jd,this.X[99]=Gd,this.X[100]=Gd,this.X[101]=
Gd,this.X[102]=Gd,this.X[103]=Gd,this.X[104]=Kd,this.X[105]=Ld,this.X[106]=Md,this.X[107]=Nd,this.X[108]=Od,this.X[109]=Pd,this.X[110]=Qd,this.X[111]=Rd,this.X[192]=Sd,this.X[193]=Td,this.X[200]=Ud,this.X[201]=Yd,this.X[241]=Zd,this.bg[7]=$d,this.gg[7]=$d,80286<=this.ia)){this.Yf=2;this.Cc|=28672;this.Dd=0;this.X[15]=ae;this.tc=ge.slice();for(a=0;a<this.tc.length;a++)this.tc[a]||(this.tc[a]=he);this.X[84]=ie;this.X[99]=je;if(80386<=this.ia){var c;this.Wf=0;this.Cc|=196608;this.X[100]=ke;this.X[101]=
le;this.X[102]=me;this.X[103]=ne;for(c in M)this.tc[+c]=M[c];80546<=this.Uc&&80562>=this.Uc&&(this.tc[166]=oe,this.tc[167]=pe)}}this.Id=[];this.ke=[];this.me=0;Oc(this);this.la.Vd=this.la.Mi=!1;this.Og=0;this.ld=this.sa=[];this.La=this.Nb=this.Fa=this.Gd=this.jd=this.Gb=this.Db=0;qe(this)}db(Bd,Lc);function re(a,b,c,d){Gc((d?a.ld:a.sa)[b>>>a.La],c);d&&Vb(a)}
function se(a){var b;if(a.sa===a.ld){a.sa=Array(a.Gd);a.le=new B(null,0,0,5,null,a);Mb(a.le,a.ha);for(b=0;b<a.Gd;b++)a.sa[b]=a.le;a.kd=new B;a.ag=Array(512);a.ne=0}else for(var c=0;c<a.Hd.length;c++){b=a.Hd[c];var d=a.sa[b];512>a.ne&&(a.ag[a.ne++]=d);a.sa[b]=a.le}a.Hd=[]}function Vb(a){a.Za&-2147483648&&se(a)}
function Fc(a,b,c,d){var e=(b&-4194304)>>>20,f=a.ld[(a.Od+e&a.Gb)>>>a.La],g=f.Md(e);if(!(g&1))return d||te.call(a,b,!1,c),a.kd;if(!(g&4)&&3==a.pa)return d||te.call(a,b,!0,c),a.kd;var h=(b&4190208)>>>10,g=a.ld[((g&-4096)+h&a.Gb)>>>a.La],k=g.Md(h);if(!(k&1))return d||te.call(a,b,!1,c),a.kd;if(!(k&4)&&3==a.pa)return d||te.call(a,b,!0,c),a.kd;c=a.ld[((k&-4096)+(b&4095)&a.Gb)>>>a.La];if(d)return c;d=b>>>a.La;k=a.sa[d];b=b&-4096;var l;0<a.ne?(l=a.ag[--a.ne],l.gh(b)):l=new B(b,0,0,6);b=l;b.Cd=c;b.yb=f;b.A=
e>>2;b.zb=g;b.B=h>>2;vb&&ac&&c.da&&!c.controller&&!c.Te&&!c.Ue?(b.Ya=c.Ya,b.ee=c.ee,b.da=c.da,Yb(b,Kc)):(b.ea=c?yc(32):0,b.W=c?yc(96):0,Yb(b,Ic));Mb(b,a.ha,k);a.sa[d]=b;a.Hd.push(d);return b}function ue(a){a.sa!==a.ld&&(a.sa=a.ld,a.le=null,a.Hd=null,a.kd=null)}m=Bd.prototype;m.reset=function(){this.la.Ib&&this.Wb();qe(this);Oc(this);this.la.ud=!1};
le;this.X[102]=me;this.X[103]=ne;for(c in M)this.tc[+c]=M[c];80546<=this.Uc&&80562>=this.Uc&&(this.tc[166]=oe,this.tc[167]=pe)}}this.Id=[];this.le=[];this.ne=0;Oc(this);this.la.Wd=this.la.Mi=!1;this.Og=0;this.ld=this.sa=[];this.La=this.Nb=this.Fa=this.Gd=this.jd=this.Gb=this.Db=0;qe(this)}db(Bd,Lc);function re(a,b,c,d){Gc((d?a.ld:a.sa)[b>>>a.La],c);d&&Vb(a)}
function se(a){var b;if(a.sa===a.ld){a.sa=Array(a.Gd);a.me=new B(null,0,0,5,null,a);Mb(a.me,a.ha);for(b=0;b<a.Gd;b++)a.sa[b]=a.me;a.kd=new B;a.ag=Array(512);a.oe=0}else for(var c=0;c<a.Hd.length;c++){b=a.Hd[c];var d=a.sa[b];512>a.oe&&(a.ag[a.oe++]=d);a.sa[b]=a.me}a.Hd=[]}function Vb(a){a.Za&-2147483648&&se(a)}
function Fc(a,b,c,d){var e=(b&-4194304)>>>20,f=a.ld[(a.Pd+e&a.Gb)>>>a.La],g=f.Nd(e);if(!(g&1))return d||te.call(a,b,!1,c),a.kd;if(!(g&4)&&3==a.pa)return d||te.call(a,b,!0,c),a.kd;var h=(b&4190208)>>>10,g=a.ld[((g&-4096)+h&a.Gb)>>>a.La],k=g.Nd(h);if(!(k&1))return d||te.call(a,b,!1,c),a.kd;if(!(k&4)&&3==a.pa)return d||te.call(a,b,!0,c),a.kd;c=a.ld[((k&-4096)+(b&4095)&a.Gb)>>>a.La];if(d)return c;d=b>>>a.La;k=a.sa[d];b=b&-4096;var l;0<a.oe?(l=a.ag[--a.oe],l.gh(b)):l=new B(b,0,0,6);b=l;b.Cd=c;b.yb=f;b.A=
e>>2;b.zb=g;b.B=h>>2;vb&&ac&&c.da&&!c.controller&&!c.Te&&!c.Ue?(b.Ya=c.Ya,b.fe=c.fe,b.da=c.da,Yb(b,Kc)):(b.ea=c?yc(32):0,b.W=c?yc(96):0,Yb(b,Ic));Mb(b,a.ha,k);a.sa[d]=b;a.Hd.push(d);return b}function ue(a){a.sa!==a.ld&&(a.sa=a.ld,a.me=null,a.Hd=null,a.kd=null)}m=Bd.prototype;m.reset=function(){this.la.Ib&&this.Wb();qe(this);Oc(this);this.la.ud=!1};
function ve(a,b){var c;switch(b){case 0:c=a.G;break;case 1:c=a.I;break;case 2:c=a.M;break;case 3:c=a.H;break;case 4:c=I(a);break;case 5:c=a.P;break;case 6:c=a.K;break;case 7:c=a.J}return c}function we(a,b,c){switch(b){case 0:a.G=c;break;case 1:a.I=c;break;case 2:a.M=c;break;case 3:a.H=c;break;case 4:G(a,c);break;case 5:a.P=c;break;case 6:a.K=c;break;case 7:a.J=c}}
function qe(a){a.G=0;a.H=0;a.I=0;a.M=0;a.gb=0;a.P=0;a.K=0;a.J=0;a.cb=!1;a.ja=a.wa=0;a.aa=0;a.Ng=0;a.L=0;a.Za=65520;a.Mc=0;a.Sd=1023;a.ca=a.Pa=0;a.Wc=a.td=a.Vc=a.Xc=0;a.rb=-1;a.bc=a.sb=-1;a.re=a.U=-1;a.va=new ed(a,1,"CS");a.vb=new ed(a,2,"DS");a.Xa=new ed(a,2,"ES");a.ta=new ed(a,3,"SS");G(a,0);kd(a,0);if(80386<=a.ia){switch(a.Uc){case 80562:case 80563:a.M=771;break;case 80578:a.M=772;break;case 80594:a.M=773;break;case 80595:case 80596:a.M=776}a.Za=16;a.ii=0;a.te=0;a.Od=0;a.Ja=[0,0,0,0,null,null,0,
function qe(a){a.G=0;a.H=0;a.I=0;a.M=0;a.gb=0;a.P=0;a.K=0;a.J=0;a.cb=!1;a.ja=a.wa=0;a.aa=0;a.Ng=0;a.L=0;a.Za=65520;a.Mc=0;a.Td=1023;a.ca=a.Pa=0;a.Wc=a.td=a.Vc=a.Xc=0;a.rb=-1;a.bc=a.sb=-1;a.re=a.U=-1;a.va=new ed(a,1,"CS");a.vb=new ed(a,2,"DS");a.Xa=new ed(a,2,"ES");a.ta=new ed(a,3,"SS");G(a,0);kd(a,0);if(80386<=a.ia){switch(a.Uc){case 80562:case 80563:a.M=771;break;case 80578:a.M=772;break;case 80594:a.M=773;break;case 80595:case 80596:a.M=776}a.Za=16;a.ii=0;a.te=0;a.Pd=0;a.Ja=[0,0,0,0,null,null,0,
0];a.Ce=[null,null,null,null,null,null,0,0];a.Ob=new ed(a,2,"FS");a.Pb=new ed(a,2,"GS");ue(a)}a.qf=new ed(a,0,"NULL");a.ka=a.vb;a.Ka=a.ta;a.S=a.Ha=0;a.D=a.C=-1;a.$b=a.qf;a.ua=0;if(80286>a.ia)zd(a,0,65535);else{a.Ec=0;a.Ad=65535;a.Bc=new ed(a,5,"LDT",!0);a.Sa=new ed(a,4,"TSS",!0);a.Ea=new ed(a,6,"VER",!0);zd(a,65520,61440);var b,c=K(a);b=a.va;var d=-65536;80386>b.F.ia&&(d&=16777215);b=b.Aa=d;a.Ga=b+c|0;a.gf=(b>>>0)+(a.va.Ta>>>0)+1}yd(a,0);md(a)}
function xe(a){2==a.Oc?(a.dc=a.na,a.Na=ye,a.$a=ze,a.Jb=Ae,2==a.ba?(a.W=Be,a.fa=Ce,a.ya=De):(a.W=Ee,a.fa=Fe,a.ya=Ge)):(a.dc=a.oa,a.Na=He,a.$a=Ke,a.Jb=Le,2==a.ba?(a.W=Me,a.fa=Ne,a.ya=Oe):(a.W=Pe,a.fa=Qe,a.ya=Re))}function nd(a,b){a.ba!=b&&(a.Ha|=1024,a.ba=b,a.R=2==b?65535:-1,Se(a))}function Se(a){2==a.ba?(a.Ia=32768,a.tb=a.na,a.rc=a.jb,2==a.Oc?(a.W=Be,a.fa=Ce,a.ya=De):(a.W=Me,a.fa=Ne,a.ya=Oe)):(a.Ia=-2147483648,a.tb=a.oa,a.rc=a.nb,2==a.Oc?(a.W=Ee,a.fa=Fe,a.ya=Ge):(a.W=Pe,a.fa=Qe,a.ya=Re))}
function bf(a){a.Oc=a.va.Oc;a.Ba=a.va.Ba;xe(a);a.ba=a.va.ba;a.R=a.va.R;Se(a);a.Ha&=-3073}m.Qi=function(){var a=this.G+this.H+this.I+this.M+I(this)+this.P+this.K+this.J|0;return a=a+K(this)+this.va.Z+this.vb.Z+this.ta.Z+this.Xa.Z+xd(this)|0};function cf(a,b,c){void 0===a.Id[b]&&(a.Id[b]=[]);a.Id[b].push(c)}function df(a,b,c){void 0!==c&&(null==a.ke[b]&&a.me++,a.ke[b]=c)}function ef(a,b){var c=a.ke[b];null!=c&&(c(--a.me),delete a.ke[b])}
function ff(a,b){for(var c=a.Ja[7],d=c>>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.Ja[e],g=g&~(d>>2&3);b?a.sa[g>>>a.La].Rd(g&a.Fa,f,a):Gc(a.sa[g>>>a.La],f)}c>>=2;d>>=4}}function Dc(a,b,c,d){if(!(a.S&8192)&&a.Ja[7]&255){c--;var e=a.Ja[7],f=e>>16;d=d?1:0==d?3:0;for(var g=0;4>g;g++){if(e&3&&(f&3)==d){var h=f>>2;if(b+c>=a.Ja[g]&&b<=a.Ja[g]+h){a.Ja[6]|=1<<g;a.ua|=2;break}}e>>=2;f>>=4}}}
function bf(a){a.Oc=a.va.Oc;a.Ba=a.va.Ba;xe(a);a.ba=a.va.ba;a.R=a.va.R;Se(a);a.Ha&=-3073}m.Qi=function(){var a=this.G+this.H+this.I+this.M+I(this)+this.P+this.K+this.J|0;return a=a+K(this)+this.va.Z+this.vb.Z+this.ta.Z+this.Xa.Z+xd(this)|0};function cf(a,b,c){void 0===a.Id[b]&&(a.Id[b]=[]);a.Id[b].push(c)}function df(a,b,c){void 0!==c&&(null==a.le[b]&&a.ne++,a.le[b]=c)}function ef(a,b){var c=a.le[b];null!=c&&(c(--a.ne),delete a.le[b])}
function ff(a,b){for(var c=a.Ja[7],d=c>>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.Ja[e],g=g&~(d>>2&3);b?a.sa[g>>>a.La].Sd(g&a.Fa,f,a):Gc(a.sa[g>>>a.La],f)}c>>=2;d>>=4}}function Dc(a,b,c,d){if(!(a.S&8192)&&a.Ja[7]&255){c--;var e=a.Ja[7],f=e>>16;d=d?1:0==d?3:0;for(var g=0;4>g;g++){if(e&3&&(f&3)==d){var h=f>>2;if(b+c>=a.Ja[g]&&b<=a.Ja[g]+h){a.Ja[6]|=1<<g;a.ua|=2;break}}e>>=2;f>>=4}}}
function md(a,b,c){void 0===b&&(b=!!(a.Za&1));void 0===c&&(c=!!(a.ca&131072));a.hg=b&&!c?gf:Fd;fd(a.va,!1,b,c);fd(a.vb,!1,b,c);fd(a.ta,!1,b,c);fd(a.Xa,!1,b,c);80386<=a.ia&&(fd(a.Ob,!1,b,c),fd(a.Pb,!1,b,c));bf(a)}
m.save=function(){var a=new hf(this);N(a,0,[this.G,this.H,this.I,this.M,I(this),this.P,this.K,this.J]);var b=K(this),c=this.va.save(),d=this.vb.save(),e=this.ta.save(),f=this.Xa.save(),g;null!=this.Ec?(g=[this.Za,this.Ec,this.Ad,this.Mc,this.Sd,this.Bc.save(),this.Sa.save(),this.Pa],80386<=this.ia&&(g.push(this.ii),g.push(this.te),g.push(this.Od),g.push(this.Ja),g.push(this.Ce))):g=null;b=[b,c,d,e,f,g,xd(this)];80386<=this.ia&&(b.push(this.Ob.save()),b.push(this.Pb.save()));N(a,1,b);N(a,2,[this.ka.lc,
this.Ka.lc,this.S,this.Ha,this.ua,this.D,this.C]);N(a,3,[0,this.uc,this.Y.Xd]);b=this.ea;c=!!(this.Za&-2147483648);d=0;e=[];(f=!b.V&&b.wg==b.Gb)||Rb(b,!0);for(g=0;g<b.U;g++){var h=b.sa[g];if(c&&h.type!=$b||h.Wa||h.Ni){e[d++]=g;var k=d++;a:if(h=h.save()){for(var l=0,n=0,q=[];l<h.length;){for(var p=h[l],A=l+1;A<h.length&&h[A]===p;)A++;q[n++]=A-l;q[n++]=p;l=A}if(q.length<h.length){h=q;break a}}e[k]=h}}f||Rb(b,!1);e[d]=f;N(a,4,e);return a.data()};
m.restore=function(a){var b=a[0];this.G=b[0];this.H=b[1];this.I=b[2];this.M=b[3];var c=b[4];this.P=b[5];this.K=b[6];this.J=b[7];b=a[1];this.va.restore(b[1]);this.vb.restore(b[2]);this.ta.restore(b[3]);this.Xa.restore(b[4]);var d=b[5];d&&d.length&&(this.Za=d[0],this.Ec=d[1],this.Ad=d[2],this.Mc=d[3],this.Sd=d[4],this.Bc.restore(d[5]),this.Sa.restore(d[6]),this.Pa=d[7],80386<=this.ia&&(this.ii=d[8],this.te=d[9],this.Od=d[10],this.Ja=d[11],this.Ce=d[12]),md(this));yd(this,b[6]);var d=!1,e;a:{e=this.ea;
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.ga){for(var l=0,n=Array(e.ga),q=0;q<k.length-1;)for(var p=k[q++],A=k[q++];p--;)n[l++]=A;k=n}l=e.sa[h];if(!l||!l.restore(k)){w("Unable to restore memory block "+h);e=!1;break a}}void 0!==f[g]&&Rb(e,f[g]);e=!0}e&&(zd(this,b[0],this.va.Z),G(this,c),kd(this,this.ta.Z),80386<=this.ia&&(this.Ob.restore(b[7]),this.Pb.restore(b[8])),d=!0);b=a[2];this.ka=null!=b[0]&&jf(this,b[0])||this.vb;this.Ka=null!=b[1]&&jf(this,b[1])||this.ta;
m.save=function(){var a=new hf(this);N(a,0,[this.G,this.H,this.I,this.M,I(this),this.P,this.K,this.J]);var b=K(this),c=this.va.save(),d=this.vb.save(),e=this.ta.save(),f=this.Xa.save(),g;null!=this.Ec?(g=[this.Za,this.Ec,this.Ad,this.Mc,this.Td,this.Bc.save(),this.Sa.save(),this.Pa],80386<=this.ia&&(g.push(this.ii),g.push(this.te),g.push(this.Pd),g.push(this.Ja),g.push(this.Ce))):g=null;b=[b,c,d,e,f,g,xd(this)];80386<=this.ia&&(b.push(this.Ob.save()),b.push(this.Pb.save()));N(a,1,b);N(a,2,[this.ka.lc,
this.Ka.lc,this.S,this.Ha,this.ua,this.D,this.C]);N(a,3,[0,this.uc,this.Y.Yd]);b=this.ea;c=!!(this.Za&-2147483648);d=0;e=[];(f=!b.V&&b.wg==b.Gb)||Rb(b,!0);for(g=0;g<b.U;g++){var h=b.sa[g];if(c&&h.type!=$b||h.Wa||h.Ni){e[d++]=g;var k=d++;a:if(h=h.save()){for(var l=0,n=0,q=[];l<h.length;){for(var p=h[l],z=l+1;z<h.length&&h[z]===p;)z++;q[n++]=z-l;q[n++]=p;l=z}if(q.length<h.length){h=q;break a}}e[k]=h}}f||Rb(b,!1);e[d]=f;N(a,4,e);return a.data()};
m.restore=function(a){var b=a[0];this.G=b[0];this.H=b[1];this.I=b[2];this.M=b[3];var c=b[4];this.P=b[5];this.K=b[6];this.J=b[7];b=a[1];this.va.restore(b[1]);this.vb.restore(b[2]);this.ta.restore(b[3]);this.Xa.restore(b[4]);var d=b[5];d&&d.length&&(this.Za=d[0],this.Ec=d[1],this.Ad=d[2],this.Mc=d[3],this.Td=d[4],this.Bc.restore(d[5]),this.Sa.restore(d[6]),this.Pa=d[7],80386<=this.ia&&(this.ii=d[8],this.te=d[9],this.Pd=d[10],this.Ja=d[11],this.Ce=d[12]),md(this));yd(this,b[6]);var d=!1,e;a:{e=this.ea;
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.ga){for(var l=0,n=Array(e.ga),q=0;q<k.length-1;)for(var p=k[q++],z=k[q++];p--;)n[l++]=z;k=n}l=e.sa[h];if(!l||!l.restore(k)){w("Unable to restore memory block "+h);e=!1;break a}}void 0!==f[g]&&Rb(e,f[g]);e=!0}e&&(zd(this,b[0],this.va.Z),G(this,c),kd(this,this.ta.Z),80386<=this.ia&&(this.Ob.restore(b[7]),this.Pb.restore(b[8])),d=!0);b=a[2];this.ka=null!=b[0]&&jf(this,b[0])||this.vb;this.Ka=null!=b[1]&&jf(this,b[1])||this.ta;
this.S=b[2];this.Ha=b[3];this.ua=b[4];this.D=b[5];this.C=b[6];b=a[3];this.uc=b[1];Xc(this,b[2]);return d};function jf(a,b){switch(b){case "CS":return a.va;case "DS":return a.vb;case "SS":return a.ta;case "ES":return a.Xa;case "NULL":return a.qf;default:return[0,b,0,0,""]}}function kf(a,b){null!=zd(a,K(a),b)&&(a.S|=a.Dd)}function vd(a,b){-1!==a.vb.load(b)&&(a.S|=a.Dd)}
function kd(a,b,c){var d=I(a);-1!==a.ta.load(b)&&(G(a,d),a.ta.cd?(a.Kg=a.ta.Aa+a.ta.Ba|0,a.rd=a.ta.Aa+a.ta.Ta|0):(a.Kg=a.ta.Aa+a.ta.Ta|0,a.rd=a.ta.Aa),c||(a.S|=4))}function wd(a,b){-1!==a.Xa.load(b)&&(a.S|=a.Dd)}function K(a){return a.Ga-a.va.Aa|0}function O(a,b){a.Ga=a.va.Aa+(b&a.R)|0}function lf(a,b){a.Ga=b;a.gf=(a.va.Aa>>>0)+(a.va.Ta>>>0)+1;a.pa=a.va.Lb;bf(a)}function zd(a,b,c,d){var e=a.va;e.Xf=b;e.C=d;b=e.load(c);return-1!==b?(lf(a,b+(a.va.Xf&a.va.R)),a.va.cf):null}
function mf(a,b){var c=(a.Ga>>>0)+b;c>a.gf&&(8088>=a.ia||a.va.Ta==a.va.Ba?c=a.va.Aa+(c-a.gf&a.R):C.call(a,13,0));return c|0}function nf(a){a.Ga=a.re}function I(a){return a.gb&~a.ta.Ba|a.ga-a.ta.Aa}function G(a,b){a.gb=b;a.ga=a.ta.Aa+(b&a.ta.Ba)|0}function of(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&pf(a),g&2&&qf(a),g&4&&rf(a),g&8&&sf(a),g&16&&tf(a),g&32&&uf(a))}f?(a.Wc=d,a.Vc=b):(a.Wc=b,a.Vc=d);a.td=c;a.Xc=d;a.resultType=e}
@ -118,10 +118,10 @@ function vf(a,b,c,d,e){a.resultType=c|26;a.Xc=b;d?wf(a):xf(a);e?yf(a):zf(a);retu
function rf(a){a.resultType&4&&(a.ca&=-17,(a.Vc^a.Wc^a.td)&16&&(a.ca|=16),a.resultType&=-5);return a.ca&16}function sf(a){a.resultType&8&&(a.ca&=-65,a.Xc&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.ca|=64),a.resultType&=-9);return a.ca&64}function tf(a){a.resultType&16&&(a.ca&=-129,a.Xc&a.resultType&-2147450752&&(a.ca|=128),a.resultType&=-17);return a.ca&128}
function uf(a){a.resultType&32&&(a.ca&=-2049,(a.Wc^a.Vc)&(a.td^a.Vc)&a.resultType&-2147450752&&(a.ca|=2048),a.resultType&=-33);return a.ca&2048}function xf(a){a.resultType&=-2;a.ca&=-2}function Cf(a){a.resultType&=-5;a.ca&=-17}function Df(a){a.resultType&=-9;a.ca&=-65}function zf(a){a.resultType&=-33;a.ca&=-2049}function wf(a){a.resultType&=-2;a.ca|=1}function Ef(a){a.resultType&=-5;a.ca|=16}function Ff(a){a.resultType&=-9;a.ca|=64}function yf(a){a.resultType&=-33;a.ca|=2048}
function xd(a){return a.ca&-2262|pf(a)|qf(a)|rf(a)|sf(a)|tf(a)|uf(a)}function Gf(a,b){b=b|a.Za&1|65520;a.Za=a.Za&-65536|b&65535;a.Za&1&&md(a,!0)}function yd(a,b,c){a.Za&1||(b&=~a.Wf);void 0===c&&(c=a.pa);c?b=b&-12289|a.ca&12288:a.Pa=(b&12288)>>12;c>a.Pa&&(b=b&-513|a.ca&512);a.resultType=128;a.ca=a.ca&~(a.Cc|2261)|b&(a.Cc|2261)|a.Yf;a.ca&256&&(a.ua|=2,a.S|=4)}
function Hf(a,b,c,d){var e=0;if(a.Za&1&&(a.pa>a.Pa||a.ca&131072)&&a.Sa.ti)for(var f=a.Sa.ti+(b>>>3),e=(1<<c)-1<<(b&7);e&&f<=a.Sa.Ek&&!(a.Qa(f)&e);)e>>>=8,f++;return e?(z(a,256)&&y(a,"checkIOPM("+u(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),C.call(a,13,0),!1):!0}
function Hf(a,b,c,d){var e=0;if(a.Za&1&&(a.pa>a.Pa||a.ca&131072)&&a.Sa.ti)for(var f=a.Sa.ti+(b>>>3),e=(1<<c)-1<<(b&7);e&&f<=a.Sa.Ek&&!(a.Qa(f)&e);)e>>>=8,f++;return e?(A(a,256)&&y(a,"checkIOPM("+u(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),C.call(a,13,0),!1):!0}
m.Qb=function(a,b,c){var d=!1;switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case "ESP":case "EBP":case "ESI":case "EDI":case "EIP":case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "IP":case "PC":case "CS":case "DS":case "SS":case "ES":case "FS":case "GS":case "CR0":case "CR2":case "CR3":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "V":this.qa[b]=c;this.Og++;d=!0;break;default:d=this.parent.Qb.call(this,a,b,c)}return d};
function If(a,b,c,d){var e=(d?a.ld:a.sa)[(b&a.Db)>>>a.La];e&&5==e.type&&(e=Fc(a,b,!1,!0));if(e){var f=b&a.Fa;if(!c||1==c)return e.se(f,b);if(2==c)return f<a.Fa?e.cg(f,b):e.se(f,b)|If(a,b+1,1,d)<<8;if(4==c)return f<a.Fa-2?e.hi(f,b):f==a.Fa-1?e.cg(f,b)|If(a,b+2,2,d)<<16:e.se(f,b)|If(a,b+1,1,d)<<8|If(a,b+2,1,d)<<16|If(a,b+3,1,d)<<24}return null}m.Qa=function(a){return this.sa[(a&this.Db)>>>this.La].jc(a&this.Fa,a)};
m.na=function(a){var b=a&this.Fa,c=(a&this.Db)>>>this.La;this.A-=this.B.Dg;if(b<this.Fa)return this.sa[c].rf(b,a);b=this.sa[c].jc(b,a);this.S&4096||(b|=this.sa[c+1&this.jd].jc(0,a+1)<<8);return b};m.oa=function(a){var b=a&this.Fa,c=(a&this.Db)>>>this.La;if(b<this.Fa-2)return this.sa[c].Md(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;){d|=this.sa[c].jc(b++,a++)<<f;if(this.S&4096)break;--g||(c=c+1&this.jd,b=0);f+=8}return d};m.qc=function(a,b){this.sa[(a&this.Db)>>>this.La].sc(a&this.Fa,b&255,a)};
m.na=function(a){var b=a&this.Fa,c=(a&this.Db)>>>this.La;this.A-=this.B.Dg;if(b<this.Fa)return this.sa[c].rf(b,a);b=this.sa[c].jc(b,a);this.S&4096||(b|=this.sa[c+1&this.jd].jc(0,a+1)<<8);return b};m.oa=function(a){var b=a&this.Fa,c=(a&this.Db)>>>this.La;if(b<this.Fa-2)return this.sa[c].Nd(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;){d|=this.sa[c].jc(b++,a++)<<f;if(this.S&4096)break;--g||(c=c+1&this.jd,b=0);f+=8}return d};m.qc=function(a,b){this.sa[(a&this.Db)>>>this.La].sc(a&this.Fa,b&255,a)};
m.jb=function(a,b){var c=a&this.Fa,d=(a&this.Db)>>>this.La;this.A-=this.B.Dg;c<this.Fa?this.sa[d].yf(c,b&65535,a):(this.sa[d++].sc(c,b&255,a),this.S&4096||this.sa[d&this.jd].sc(0,b>>8&255,a+1))};m.nb=function(a,b){var c=a&this.Fa,d=(a&this.Db)>>>this.La;this.A-=this.B.Dg;if(c<this.Fa-2)this.sa[d].xf(c,b,a);else for(var e=4,f=4-(c&3);e--;){this.sa[d].sc(c++,b&255,a++);if(this.S&4096)break;--f||(d=d+1&this.jd,c=0);b>>>=8}};
function Jf(a,b,c){a.$b=b;a.Ca=c&a.Ba;a.D=b.nc(a.Ca,1);return a.S&1?0:a.Qa(a.D)}function Q(a,b){return Jf(a,a.ka,b)}function Kf(a,b){return Jf(a,a.Ka,b)}function Lf(a,b,c){a.$b=b;a.Ca=c&a.Ba;a.D=b.nc(a.Ca,a.ba);return a.S&1?0:a.tb(a.D)}function R(a,b){a.$b=a.ka;a.Ca=b&a.Ba;a.D=a.$b.nc(a.Ca,2);return a.S&1?0:a.na(a.D)}function Mf(a,b){a.$b=a.Ka;a.Ca=b&a.Ba;a.D=a.$b.nc(a.Ca,2);return a.S&1?0:a.na(a.D)}function S(a,b){a.$b=a.ka;a.Ca=b&a.Ba;a.D=a.$b.nc(a.Ca,4);return a.S&1?0:a.oa(a.D)}
function Nf(a,b){a.$b=a.Ka;a.Ca=b&a.Ba;a.D=a.$b.nc(a.Ca,4);return a.S&1?0:a.oa(a.D)}function Of(a,b){a.S&2||a.qc(a.$b.oc(a.Ca,1),b)}function Pf(a,b){a.S&2||a.jb(a.$b.oc(a.Ca,2),b)}function Qf(a,b){a.S&2||a.nb(a.$b.oc(a.Ca,4),b)}function od(a,b,c){return a.tb(b.nc(c,a.ba))}m.xa=function(){var a=mf(this,1),b=this.Qa(this.Ga);this.Ga=a;return b};function Rf(a){var b=mf(a,2),c=a.na(a.Ga);a.Ga=b;return c}function T(a){var b=mf(a,a.Oc),c=a.dc(a.Ga);a.Ga=b;return c}
@ -129,9 +129,9 @@ m.Ma=function(){var a=mf(this,this.ba),b=this.tb(this.Ga);this.Ga=a;return b};m.
function pd(a,b,c,d){c=a.ga-c|0;0>(c-a.rd|0)&&0<=(a.rd^c)&&(8088>=a.ia||!a.ta.cd&&a.ta.Ta==a.ta.Ba||a.ta.cd&&!a.ta.Ta?(G(a,c-a.ta.Aa&a.ta.Ba),c=a.ga):C.call(a,12,0));switch(d){case 1:a.qc(c,b);break;case 2:a.jb(c,b);break;case 4:a.nb(c,b)}a.ga=c}function J(a,b){var c=a.ga-a.ba|0;0>(c-a.rd|0)&&0<=(a.rd^c)&&(8088>=a.ia||!a.ta.cd&&a.ta.Ta==a.ta.Ba||a.ta.cd&&!a.ta.Ta?(G(a,c-a.ta.Aa&a.ta.Ba),c=a.ga):C.call(a,12,0));a.rc(c,b);a.ga=c}
function Sf(a,b,c){var d=4;1==b.length&&(d=1,c=c?1:0);if(80386>a.ia)2<b.length&&(b=b.substr(1,2));else if("PS"==b||2<b.length)d=8;a.qa[b]&&(void 0===c&&(ub(a,"Value for "+b+" is invalid"),a.Wb()),d=!a.la.Ib||a.la.Oi?r(c,d):"--------".substr(0,d),a.qa[b].textContent!=d&&(a.qa[b].textContent=d))}
m.qd=function(a){if(this.Og&&(a||!this.la.Ib||this.la.Oi)){Sf(this,"EAX",this.G);Sf(this,"EBX",this.H);Sf(this,"ECX",this.I);Sf(this,"EDX",this.M);Sf(this,"ESP",I(this));Sf(this,"EBP",this.P);Sf(this,"ESI",this.K);Sf(this,"EDI",this.J);Sf(this,"CS",this.va.Z);Sf(this,"DS",this.vb.Z);Sf(this,"SS",this.ta.Z);Sf(this,"ES",this.Xa.Z);Sf(this,"EIP",K(this));var b=xd(this);Sf(this,"PS",b);Sf(this,"V",b&2048);Sf(this,"D",b&1024);Sf(this,"I",b&512);Sf(this,"T",b&256);Sf(this,"S",b&128);Sf(this,"Z",b&64);
Sf(this,"A",b&16);Sf(this,"P",b&4);Sf(this,"C",b&1);80386==this.ia&&(Sf(this,"FS",this.Ob.Z),Sf(this,"GS",this.Pb.Z),Sf(this,"CR0",this.Za),Sf(this,"CR2",this.te),Sf(this,"CR3",this.Od))}if(b=this.qa.speed)b.textContent=this.la.Ib&&this.Y.oe?this.Y.oe.toFixed(2)+"Mhz":"Stopped";this.parent.qd.call(this,a)};
m.vf=function(a){this.la.Vd=!0;var b=this.la.Mi=this.ha&&Tf(this.ha),c=a?this.la.dh?0:1:-1;this.la.dh=!1;this.fb=this.A=a;this.N&&!a&&bd(this.N);a||z(this,1024)||(this.S|=4);do{var d=this.S&3312;if(d)this.Ha|=d;else if(this.re=this.Ga,this.ka=this.vb,this.Ka=this.ta,this.D=this.C=-1,this.Ha&3072&&bf(this),this.Ha=this.S&256,this.ua){a:{if(!(this.S&4))for(var d=80286>this.ia?0:1,e=0;2>e;e++){switch(d){case 0:if(this.ua&1&&this.ca&512){var f=Uf(this.N);if(-1<=f&&(this.ua&=-2,0<=f)){this.ua&=-5;Vf.call(this,
f);d=!0;break a}}break;case 1:if(this.ua&2){this.ua&=-3;80386<=this.ia&&(this.Ja[6]|=16384);Vf.call(this,1);d=!0;break a}}d=1-d}d=!1}if(d&&!a){this.O("interrupt dispatched");this.S=0;break}if(this.ua&4){this.S=this.A=0;break}}if(b){if(Wf(this.ha,this.Ga,c)){this.Wb();break}c=1}this.S=0;this.X[this.xa()].call(this)}while(0<this.A);return this.la.Vd?this.fb-this.A:void 0===this.la.Vd?0:-1};Qa(function(){for(var a=nb(document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new Bd(d);mb(d,c)}});
Sf(this,"A",b&16);Sf(this,"P",b&4);Sf(this,"C",b&1);80386==this.ia&&(Sf(this,"FS",this.Ob.Z),Sf(this,"GS",this.Pb.Z),Sf(this,"CR0",this.Za),Sf(this,"CR2",this.te),Sf(this,"CR3",this.Pd))}if(b=this.qa.speed)b.textContent=this.la.Ib&&this.Y.pe?this.Y.pe.toFixed(2)+"Mhz":"Stopped";this.parent.qd.call(this,a)};
m.vf=function(a){this.la.Wd=!0;var b=this.la.Mi=this.ha&&Tf(this.ha),c=a?this.la.dh?0:1:-1;this.la.dh=!1;this.fb=this.A=a;this.N&&!a&&bd(this.N);a||A(this,1024)||(this.S|=4);do{var d=this.S&3312;if(d)this.Ha|=d;else if(this.re=this.Ga,this.ka=this.vb,this.Ka=this.ta,this.D=this.C=-1,this.Ha&3072&&bf(this),this.Ha=this.S&256,this.ua){a:{if(!(this.S&4))for(var d=80286>this.ia?0:1,e=0;2>e;e++){switch(d){case 0:if(this.ua&1&&this.ca&512){var f=Uf(this.N);if(-1<=f&&(this.ua&=-2,0<=f)){this.ua&=-5;Vf.call(this,
f);d=!0;break a}}break;case 1:if(this.ua&2){this.ua&=-3;80386<=this.ia&&(this.Ja[6]|=16384);Vf.call(this,1);d=!0;break a}}d=1-d}d=!1}if(d&&!a){this.O("interrupt dispatched");this.S=0;break}if(this.ua&4){this.S=this.A=0;break}}if(b){if(Wf(this.ha,this.Ga,c)){this.Wb();break}c=1}this.S=0;this.X[this.xa()].call(this)}while(0<this.A);return this.la.Wd?this.fb-this.A:void 0===this.la.Wd?0:-1};Qa(function(){for(var a=nb(document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new Bd(d);mb(d,c)}});
function Xf(a){Ua.call(this,"FPU",a,Xf);this.ia=a.model||8087;(a=a.stepping)&&ca(a,16);this.V=new Float64Array(8);this.aa=new Int32Array(this.V.buffer);this.pa=new Float32Array(1);this.ua=new Int32Array(this.pa.buffer);this.X=new Float64Array(1);this.L=new Int32Array(this.X.buffer);this.ea=Array(3);this.fa=this.ga=-1;this.W=this.U=this.ja=this.A=0;this.ka=new Float64Array(1);this.ra=new Int32Array(this.ka.buffer);this.ra[0]=0;this.ra[1]=268402688;Yf(this)}db(Xf);m=Xf.prototype;
m.Ic=function(a,b,c){this.F=c;this.N=Eb(a,"ChipSet");rb(this)};m.ic=function(a,b){if(!b)if(!a||!this.restore)Yf(this);else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};m.save=function(){var a=new hf(this),b=[],c=0;b[c++]=this.kc;b[c++]=Zf(this);b[c++]=$f(this);for(var d=0;d<this.V.length;d++)b[c++]=this.V[d];N(a,0,b);return a.data()};
m.restore=function(a){a=a[0];var b=0;this.kc=a[b++]&-57409;var c=a[b++];this.ma=c&-14337;this.B=(c&14336)>>11;ag(this);bg(this,a[b++]);for(c=0;c<this.V.length;c++)this.V[c]=a[b++];return!0};function Yf(a){a.C=0;a.kc=959;a.ma=0;a.B=0;a.N&&(a=a.N,a.ia>=cg&&dg(a,13))}function ag(a){a.ma&=-129;a.ma&~a.kc&63&&(a.ma|=128);if(a.ma&128&&!(a.kc&128))return a=a.N,a.ia>=cg?eg(a,13):a.ya&0||Vf.call(a.F,2),!0;a=a.N;a.ia>=cg&&dg(a,13);return!1}function fg(a,b){80387<=a.ia||(b&=-65);a.ma|=b;return ag(a)}
@ -183,12 +183,12 @@ function gj(a,b){return b>>(this.G&this.R)&(1<<(this.I&31))-1&this.R}function hj
function ij(a,b){if(-1===this.D){switch(this.L&7){case 0:this.G=this.G&~this.R|a;break;case 1:this.I=this.I&~this.R|a;break;case 2:this.M=this.M&~this.R|a;break;case 3:this.H=this.H&~this.R|a;break;case 4:G(this,I(this)&~this.R|a);break;case 5:this.P=this.H&~this.R|a;break;case 6:this.K=this.K&~this.R|a;break;case 7:this.J=this.J&~this.R|a}this.A-=this.B.bi}else this.C=this.D,this.S&2||this.rc(this.$b.oc(this.Ca,this.ba),a),this.A-=this.B.ai;return b}
function jj(a,b){var c=a^b;vf(this,c,128);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Nc;return c}function kj(a,b){this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Nc;return vf(this,a^b,this.Ia)&this.R}function lj(a,b){var c=a[1]-b[1];c||(c=a[0]-b[0]);return c}function mj(a){var b=a-1|0;of(this,a,1,b,this.Ia|62,!0);this.A-=2;return a&~this.R|b&this.R}
function nj(a,b,c){c>>>=0;if(!c||c<=b>>>0)return!1;var d=0,e=1;c=[c>>>0,0];for(a=[a>>>0,b>>>0];0<lj(a,c);){var f=b=c;b[0]+=f[0];b[1]+=f[1];4294967295<b[0]&&(b[0]>>>=0,b[1]++);e+=e}do 0<=lj(a,c)&&(b=a,f=c,b[0]-=f[0],b[1]-=f[1],0>b[0]&&(b[0]>>>=0,b[1]--),d+=e),b=c,b[0]>>>=1,b[1]&1&&(b[0]=(b[0]|2147483648)>>>0),b[1]>>>=1,e/=2;while(1<=e);this.ja=d;this.wa=a[0];return!0}function oj(a){var b=a+1|0;of(this,a,1,b,this.Ia|62);this.A-=2;return a&~this.R|b&this.R}
function pj(a){this.Za=a;md(this);this.Za&-2147483648?se(this):ue(this)}function Ad(a){this.Od=a;Vb(this)}function qj(a){this.S|=1;this.$a.call(this,a);this.A-=-1===this.D?4:5}function Ri(a,b,c){if(c){16<c&&(a=b,c-=16);var d=a<<c-1;a=(d<<1|b>>>16-c)&65535;vf(this,a,32768,d&32768)}return a}function Ti(a,b,c){if(c){var d=a<<c-1;a=d<<1|b>>>32-c;vf(this,a,-2147483648,d&-2147483648)}return a}
function pj(a){this.Za=a;md(this);this.Za&-2147483648?se(this):ue(this)}function Ad(a){this.Pd=a;Vb(this)}function qj(a){this.S|=1;this.$a.call(this,a);this.A-=-1===this.D?4:5}function Ri(a,b,c){if(c){16<c&&(a=b,c-=16);var d=a<<c-1;a=(d<<1|b>>>16-c)&65535;vf(this,a,32768,d&32768)}return a}function Ti(a,b,c){if(c){var d=a<<c-1;a=d<<1|b>>>32-c;vf(this,a,-2147483648,d&-2147483648)}return a}
function Xi(a,b,c){if(c){16<c&&(a=b,c-=16);var d=a>>>c-1;a=(d>>>1|b<<16-c)&65535;vf(this,a,32768,d&1)}return a}function Zi(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;vf(this,a,-2147483648,d&1)}return a}function rj(){this.A-=-1===this.D?2:this.B.Yj;return 1}function sj(){var a=this.I&255;this.A-=(-1===this.D?this.B.Th:this.B.Sh)+(a<<this.B.Uh);return a}function tj(){var a=this.xa();this.A-=(-1===this.D?this.B.Th:this.B.Sh)+(a<<this.B.Uh);return a}function uj(){return null}
function vj(){return this.aa}function wj(a,b){this.bc=this.va.Z;this.sb=this.ta.Z;this.U=this.ga;var c=K(this),d=this.ba;null!=zd(this,a,b,!0)&&(pd(this,this.bc,d,2),pd(this,c,d,d));this.bc=this.sb=this.U=-1}function xj(a,b,c){this.A-=this.B.wj+(c||0);c=xd(this);var d=this.va.Z,e=K(this);a=this.va.Wi(a);-1!==a&&(J(this,c),J(this,d),J(this,e),null!=b&&J(this,b),this.rb=-1,lf(this,a))}
function yj(a){this.sb=this.ta.Z;this.U=this.ga;var b=D(this),c=D(this);a&&G(this,I(this)+a);zd(this,b,c,!1)&&(a&&G(this,I(this)+a),zj.call(this,this.vb),zj.call(this,this.Xa),80386<=this.ia&&(zj.call(this,this.Ob),zj.call(this,this.Pb)));2==a&&this.me&&ef(this,this.Ga);this.sb=this.U=-1}function Aj(){8086==this.ia?(this.rb=-1,xj.call(this,0,null,2)):C.call(this,0,null,2)}function Vf(a,b){this.rb=a;void 0===b&&(b=11);xj.call(this,a,null,b)}
function C(a,b,c,d){var e=!1;this.la.Vd?80186<=this.ia&&(e=!0,0>this.rb?(-1!=this.bc&&(this.bc!==this.va.Z&&(this.va.Lb=this.bc&3,kf(this,this.bc)),this.bc=-1),this.re!==this.Ga&&lf(this,this.re),-1!=this.sb&&(this.sb!==this.ta.Z&&kd(this,this.sb),this.sb=-1),-1!==this.U&&(this.U!==this.ga&&G(this,this.gb&~this.ta.Ba|this.U-this.ta.Aa),this.U=-1)):8!=this.rb?(b=0,a=8):(b=0,a=-1,qe(this),e=d=!1)):lf(this,this.re);var f=a,g=b,h=32,k=If(this,this.Ga);204!=k||this.Sd||(d=!1);this.ca&131072&&(6==f&&99==
k||13==f&&205==k)&&(d=!1);!1===d&&(h|=1);983040<=this.Ga&&1048575>=this.Ga&&(d=!1);z(this,h|-2147483648)&&(d=!0);if(z(this,h)||d){var l=this.la.Ib,f="Fault "+t(f)+(null!=g?" ("+u(g)+")":"")+" on opcode "+t(k);d&&l&&(f+=" (blocked)");this.ha?(y(this,f,d||h,!0),d&&(d=l,this.ha.Wb())):(this.Oa(f),this.Wb())}if(d&&e)throw-1;if(e)throw this.rb=a,xj.call(this,a,b,c),this.re=this.Ga,this.S=1==a?this.S|8192:this.S|4096,a;}
function yj(a){this.sb=this.ta.Z;this.U=this.ga;var b=D(this),c=D(this);a&&G(this,I(this)+a);zd(this,b,c,!1)&&(a&&G(this,I(this)+a),zj.call(this,this.vb),zj.call(this,this.Xa),80386<=this.ia&&(zj.call(this,this.Ob),zj.call(this,this.Pb)));2==a&&this.ne&&ef(this,this.Ga);this.sb=this.U=-1}function Aj(){8086==this.ia?(this.rb=-1,xj.call(this,0,null,2)):C.call(this,0,null,2)}function Vf(a,b){this.rb=a;void 0===b&&(b=11);xj.call(this,a,null,b)}
function C(a,b,c,d){var e=!1;this.la.Wd?80186<=this.ia&&(e=!0,0>this.rb?(-1!=this.bc&&(this.bc!==this.va.Z&&(this.va.Lb=this.bc&3,kf(this,this.bc)),this.bc=-1),this.re!==this.Ga&&lf(this,this.re),-1!=this.sb&&(this.sb!==this.ta.Z&&kd(this,this.sb),this.sb=-1),-1!==this.U&&(this.U!==this.ga&&G(this,this.gb&~this.ta.Ba|this.U-this.ta.Aa),this.U=-1)):8!=this.rb?(b=0,a=8):(b=0,a=-1,qe(this),e=d=!1)):lf(this,this.re);var f=a,g=b,h=32,k=If(this,this.Ga);204!=k||this.Td||(d=!1);this.ca&131072&&(6==f&&99==
k||13==f&&205==k)&&(d=!1);!1===d&&(h|=1);983040<=this.Ga&&1048575>=this.Ga&&(d=!1);A(this,h|-2147483648)&&(d=!0);if(A(this,h)||d){var l=this.la.Ib,f="Fault "+t(f)+(null!=g?" ("+u(g)+")":"")+" on opcode "+t(k);d&&l&&(f+=" (blocked)");this.ha?(y(this,f,d||h,!0),d&&(d=l,this.ha.Wb())):(this.Oa(f),this.Wb())}if(d&&e)throw-1;if(e)throw this.rb=a,xj.call(this,a,b,c),this.re=this.Ga,this.S=1==a?this.S|8192:this.S|4096,a;}
function te(a,b,c){this.te=a;a=0;b&&(a|=1);c&&(a|=2);3==this.pa&&(a|=4);C.call(this,14,a)}function zj(a){var b=a.wb&7680;a.Z&65528&&(6144==b||7168==b||7168>b&&a.Gc<this.pa&&a.Gc<(a.Z&3))&&a.load(0)}
function ye(a){var b,c;switch((this.L=this.xa())&199){case 0:c=Q(this,this.H+this.K);this.A-=this.B.ed;break;case 1:c=Q(this,this.H+this.J);this.A-=this.B.fd;break;case 2:c=Kf(this,this.P+this.K);this.A-=this.B.fd;break;case 3:c=Kf(this,this.P+this.J);this.A-=this.B.ed;break;case 4:c=Q(this,this.K);this.A-=this.B.Jc;break;case 5:c=Q(this,this.J);this.A-=this.B.Jc;break;case 6:c=Q(this,T(this));this.A-=this.B.Kd;break;case 7:c=Q(this,this.H);this.A-=this.B.Jc;break;case 64:c=Q(this,this.H+this.K+this.T());
this.A-=this.B.ec;break;case 65:c=Q(this,this.H+this.J+this.T());this.A-=this.B.fc;break;case 66:c=Kf(this,this.P+this.K+this.T());this.A-=this.B.fc;break;case 67:c=Kf(this,this.P+this.J+this.T());this.A-=this.B.ec;break;case 68:c=Q(this,this.K+this.T());this.A-=this.B.ib;break;case 69:c=Q(this,this.J+this.T());this.A-=this.B.ib;break;case 70:c=Kf(this,this.P+this.T());this.A-=this.B.ib;break;case 71:c=Q(this,this.H+this.T());this.A-=this.B.ib;break;case 128:c=Q(this,this.H+this.K+T(this));this.A-=
@ -316,14 +316,14 @@ od(this,this.ka,this.K&c);this.G=this.G&~this.R|e;this.K=this.K&~c|this.K+(this.
this.S|=256)}},function(){var a=1,b=0,c=this.Ba,d=this.B.Ph;this.Ha&192&&(a=this.I&c,b=1,d=this.B.Rh,this.Ha&256||(this.A-=this.B.Qh));if(a--){var e=this.G&this.R,f=Lf(this,this.Xa,this.J&c);this.C=this.D;Ih.call(this,e,f);this.J=this.J&~c|this.J+(this.ca&1024?-this.ba:this.ba)&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Vb;a&&sf(this)==(this.Ha&64)&&(nf(this),this.S|=256)}},function(){this.G=this.G&-256|this.xa();this.A-=this.B.gc},function(){this.I=this.I&-256|this.xa();this.A-=this.B.gc},function(){this.M=
this.M&-256|this.xa();this.A-=this.B.gc},function(){this.H=this.H&-256|this.xa();this.A-=this.B.gc},function(){this.G=this.G&-65281|this.xa()<<8;this.A-=this.B.gc},function(){this.I=this.I&-65281|this.xa()<<8;this.A-=this.B.gc},function(){this.M=this.M&-65281|this.xa()<<8;this.A-=this.B.gc},function(){this.H=this.H&-65281|this.xa()<<8;this.A-=this.B.gc},function(){this.G=this.G&~this.R|this.Ma();this.A-=this.B.gc},function(){this.I=this.I&~this.R|this.Ma();this.A-=this.B.gc},function(){this.M=this.M&
~this.R|this.Ma();this.A-=this.B.gc},function(){this.H=this.H&~this.R|this.Ma();this.A-=this.B.gc},function(){G(this,I(this)&~this.R|this.Ma());this.A-=this.B.gc},function(){this.P=this.P&~this.R|this.Ma();this.A-=this.B.gc},function(){this.K=this.K&~this.R|this.Ma();this.A-=this.B.gc},function(){this.J=this.J&~this.R|this.Ma();this.A-=this.B.gc},bk,ck,bk,ck,function(){this.W.call(this,Vh)},function(){this.W.call(this,Th)},function(){this.S|=1;this.Jb.call(this,jk,this.xa)},function(){this.S|=1;this.ya.call(this,
jk,this.Ma)},dk,ek,dk,ek,function(){if(this.ca&131072&&3>this.Pa)C.call(this,13,0);else{var a=this.B.xj;this.rb=-1;xj.call(this,3,null,a)}},function(){var a=this.xa();if(this.ca&131072&&3>this.Pa)C.call(this,13,0);else{var b;a:{b=this.Id[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c](this.Ga)){b=!1;break a}this.la.Mi&&z(this,16)&&kk(this.ha,a,this.Ga);b=!0}b?(this.rb=-1,xj.call(this,a,null,0)):this.A--}},function(){if(uf(this))if(this.ca&131072&&3>this.Pa)C.call(this,13,0);else{var a=this.B.yj;
jk,this.Ma)},dk,ek,dk,ek,function(){if(this.ca&131072&&3>this.Pa)C.call(this,13,0);else{var a=this.B.xj;this.rb=-1;xj.call(this,3,null,a)}},function(){var a=this.xa();if(this.ca&131072&&3>this.Pa)C.call(this,13,0);else{var b;a:{b=this.Id[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c](this.Ga)){b=!1;break a}this.la.Mi&&A(this,16)&&kk(this.ha,a,this.Ga);b=!0}b?(this.rb=-1,xj.call(this,a,null,0)):this.A--}},function(){if(uf(this))if(this.ca&131072&&3>this.Pa)C.call(this,13,0);else{var a=this.B.yj;
this.rb=-1;xj.call(this,4,null,a)}else this.A-=this.B.zj},function(){if(this.ca&131072&&3>this.Pa)C.call(this,13,0);else{this.sb=this.ta.Z;this.U=this.ga;this.A-=this.B.vj;if(this.Za&1&&this.ca&16384){var a=this.na(this.Sa.Aa+0);ld(this.va,a,!1)}else{var a=this.pa,b=D(this),c=D(this),d=D(this);if(this.ca&131072)d=d&131071|this.ca&-131072;else if(d&131072){var e=D(this),f=D(this),g=D(this),h=D(this),k=D(this),l=D(this);md(this,!0,!0);kd(this,f);G(this,e);wd(this,g);vd(this,h);this.Ob.load(k);this.Pb.load(l)}null!=
zd(this,b,c,!1)&&(yd(this,d,a),this.me&&ef(this,this.Ga))}this.sb=this.U=-1}},function(){this.Jb.call(this,Yj,rj)},function(){this.ya.call(this,2==this.ba?Zj:ak,rj)},function(){this.Jb.call(this,Yj,sj)},function(){this.ya.call(this,2==this.ba?Zj:ak,sj)},function(){var a=this.xa();if(a){var b=this.G&255;this.G=this.G&-65536|b/a<<8|b%a;vf(this,this.G,128);this.A-=this.B.aj}else Aj.call(this)},function(){var a=this.G&255,b=(this.G>>8&255)*this.xa()|0,c=a+b|0;this.G=this.G&-65536|c&255;of(this,a,b,c,
zd(this,b,c,!1)&&(yd(this,d,a),this.ne&&ef(this,this.Ga))}this.sb=this.U=-1}},function(){this.Jb.call(this,Yj,rj)},function(){this.ya.call(this,2==this.ba?Zj:ak,rj)},function(){this.Jb.call(this,Yj,sj)},function(){this.ya.call(this,2==this.ba?Zj:ak,sj)},function(){var a=this.xa();if(a){var b=this.G&255;this.G=this.G&-65536|b/a<<8|b%a;vf(this,this.G,128);this.A-=this.B.aj}else Aj.call(this)},function(){var a=this.G&255,b=(this.G>>8&255)*this.xa()|0,c=a+b|0;this.G=this.G&-65536|c&255;of(this,a,b,c,
191);this.A-=this.B.$i},function(){this.G=this.G&-256|(pf(this)?255:0);this.A-=2},function(){this.G=this.G&-256|Jf(this,this.ka,this.H+(this.G&255));this.A-=this.B.Zj},function(){fk.call(this,216)},function(){fk.call(this,217)},function(){fk.call(this,218)},function(){fk.call(this,219)},function(){fk.call(this,220)},function(){fk.call(this,221)},function(){fk.call(this,222)},function(){fk.call(this,223)},function(){var a=this.T(),b=this.I-1&this.Ba;this.I=this.I&~this.Ba|b;b&&!sf(this)?(O(this,K(this)+
a),this.A-=this.B.Gj):this.A-=this.B.Fh},function(){var a=this.T(),b=this.I-1&this.Ba;this.I=this.I&~this.Ba|b;b&&sf(this)?(O(this,K(this)+a),this.A-=this.B.Gh):this.A-=this.B.Hh},function(){var a=this.T(),b=this.I-1&this.Ba;this.I=this.I&~this.Ba|b;b?(O(this,K(this)+a),this.A-=this.B.Fj):this.A-=this.B.Fh},function(){var a=this.T();this.I&this.Ba?this.A-=this.B.Hh:(O(this,K(this)+a),this.A-=this.B.Gh)},function(){var a=this.xa();Hf(this,a,1,!0)&&(this.G=this.G&-256|ic(this.ea,a,1,this.Ga-2)&255,
this.A-=this.B.Ah)},function(){var a=this.xa();Hf(this,a,this.ba,!0)&&(this.G=this.G&~this.R|ic(this.ea,a,this.ba,this.Ga-2)&this.R,this.A-=this.B.Ah)},function(){var a=this.xa();Hf(this,a,1,!1)&&(mc(this.ea,a,1,this.G&255,this.Ga-2),this.A-=this.B.Oh)},function(){var a=this.xa();Hf(this,a,this.ba,!1)&&(mc(this.ea,a,this.ba,this.G&this.R,this.Ga-2),this.A-=this.B.Oh)},function(){var a=this.Ma(),b=K(this),a=b+a;J(this,b);O(this,a);this.A-=this.B.ej},function(){var a=this.Ma();O(this,K(this)+a);this.A-=
this.B.Bh},function(){zd(this,this.Ma(),Rf(this));this.A-=this.B.Bj},function(){var a=this.T();O(this,K(this)+a);this.A-=this.B.Bh},function(){var a=this.M&65535;Hf(this,a,1,!0)&&(this.G=this.G&-256|ic(this.ea,a,1,this.Ga-1)&255,this.A-=this.B.zh)},function(){var a=this.M&65535;Hf(this,a,this.ba,!0)&&(this.G=this.G&~this.R|ic(this.ea,a,this.ba,this.Ga-1)&this.R,this.A-=this.B.zh)},function(){var a=this.M&65535;Hf(this,a,1,!1)&&(mc(this.ea,a,1,this.G&255,this.Ga-1),this.A-=this.B.Nh)},function(){var a=
this.M&65535;Hf(this,a,2,!1)&&(mc(this.ea,a,this.ba,this.G&this.R,this.Ga-1),this.A-=this.B.Nh)},gk,gk,function(){this.S|=132;this.A-=this.B.od},function(){this.S|=68;this.A-=this.B.od},function(){this.ca&131072?C.call(this,13,0):(this.ua|=4,this.A-=2,this.ha&&z(this,-2147483648)?(nf(this),this.ha.Wb()):this.ca&512||(this.ha&&nf(this),this.Wb()))},function(){pf(this)?xf(this):wf(this);this.A-=2},function(){this.cb=!1;this.Jb.call(this,lk,uj);this.cb&&(this.G=this.G&~this.R|this.ja&this.R)},function(){this.cb=
this.M&65535;Hf(this,a,2,!1)&&(mc(this.ea,a,this.ba,this.G&this.R,this.Ga-1),this.A-=this.B.Nh)},gk,gk,function(){this.S|=132;this.A-=this.B.od},function(){this.S|=68;this.A-=this.B.od},function(){this.ca&131072?C.call(this,13,0):(this.ua|=4,this.A-=2,this.ha&&A(this,-2147483648)?(nf(this),this.ha.Wb()):this.ca&512||(this.ha&&nf(this),this.Wb()))},function(){pf(this)?xf(this):wf(this);this.A-=2},function(){this.cb=!1;this.Jb.call(this,lk,uj);this.cb&&(this.G=this.G&~this.R|this.ja&this.R)},function(){this.cb=
!1;this.ya.call(this,mk,uj);this.cb&&(this.G=this.G&~this.R|this.ja&this.R,this.M=this.M&~this.R|this.wa&this.R)},function(){xf(this);this.A-=2},function(){wf(this);this.A-=2},function(){this.pa>this.Pa?C.call(this,13,0):(this.ca&=-513,this.A-=this.B.cj)},function(){this.pa>this.Pa?C.call(this,13,0):(this.ca|=512,this.S|=4,this.A-=2)},function(){this.ca&=-1025;this.A-=2},function(){this.ca|=1024;this.A-=2},function(){this.Jb.call(this,Dd,uj)},function(){this.ya.call(this,Ed,uj)}],Tj=[rh,ei,ph,gi,
th,bj,jj,Hh],hk=[sh,fi,qh,Ai,uh,cj,kj,Ih],ik=[function(a,b){this.A-=-1===this.C?this.B.zc:this.B.Rj;return b},Kh,Kh,Kh,Kh,Kh,Kh,Kh],jk=[function(a,b){this.A-=-1===this.C?this.B.Jj:this.B.Hj;return b},Lh,Lh,Lh,Lh,Lh,Lh,Lh],Yj=[function(a,b){var c=a,d=b&this.ra;if(d){var e;(d&=7)?(e=a<<d-1,c=(a<<d|a>>8-d)&255):e=a<<7;Af(this,c,e,128)}return c},function(a,b){var c=a,d=b&this.ra;if(d){var e;(d&=7)?(e=a<<8-d,c=(a>>>d|e)&255):e=a;Af(this,c,e,128)}return c},function(a,b){var c=a,d=b&this.ra;if(d){var e=
Bf(this);(d%=9)?(c=(a<<d|e<<d-1|a>>9-d)&255,e=a<<d-1):e<<=7;Af(this,c,e,128)}return c},function(a,b){var c=a,d=b&this.ra;if(d){var e=Bf(this);(d%=9)?(c=(a>>d|e<<8-d|a<<9-d)&255,e=a<<8-d):e<<=7;Af(this,c,e,128)}return c},function(a,b){var c=a,d=b&this.ra;if(d){var e=0;8<d?c=0:(e=a<<d-1,c=e<<1&255);vf(this,c,128,e&128,(c^e)&128)}return c},function(a,b){var c=b&this.ra;c&&(c=8<c?0:a>>>c-1,a=c>>>1&255,vf(this,a,128,c&1,a&128));return a},Lh,function(a,b){var c=b&this.ra;c&&(9<c&&(c=9),c=a<<24>>24>>c-1,
@ -340,10 +340,10 @@ this.D?this.B.Qf:this.B.Pf;return b&255},function(a){var b=a-1|0;of(this,a,1,b,1
a);this.U=this.ga;wj.call(this,a,this.na(this.D+this.ba));this.A-=this.B.fj;this.S|=2;this.U=-1;return a},function(a){O(this,a);this.A-=-1===this.D?this.B.Dj:this.B.Cj;this.S|=2;return a},function(a){if(-1===this.D)return Lh.call(this,a);zd(this,a,this.na(this.D+this.ba));this.A-=this.B.Aj;this.S|=2;return a},function(a){var b=a;this.S&512&&(a=a-2&65535,80286>this.ia&&(b=a));J(this,b);this.A-=-1===this.D?this.B.Sc:this.B.Tj;this.S|=2;return a},Lh];
function oe(){this.W.call(this,gj);this.A-=-1===this.D?6:13}function pe(){this.fa.call(this,fj);this.A-=-1===this.D?12:19}var ge=Array(256);ge[0]=function(){16>(this.Qa(this.Ga)&56)&&(this.S|=1);this.ya.call(this,this.hg,uj)};ge[1]=function(){this.Qa(this.Ga)&16||(this.S|=1);this.ya.call(this,nk,uj)};ge[2]=function(){!(this.Za&1)||this.ca&131072?C.call(this,6):this.W.call(this,Sh)};ge[3]=function(){!(this.Za&1)||this.ca&131072?C.call(this,6):this.W.call(this,Yh)};
ge[5]=function(){this.pa?C.call(this,13,0,0,!0):(Gf(this,this.na(2054)),this.J=this.na(2086),this.K=this.na(2088),this.P=this.na(2090),this.H=this.na(2094),this.M=this.na(2096),this.I=this.na(2098),this.G=this.na(2100),jd(this.Xa,2102,this.na(2084)),jd(this.va,2108,this.na(2082)),jd(this.ta,2114,this.na(2080)),jd(this.vb,2120,this.na(2078)),yd(this,this.na(2072)),O(this,this.na(2074)),G(this,this.na(2092)),this.Ec=this.na(2126)|this.Qa(2128)<<16,this.Ad=this.Ec+this.na(2130),this.Mc=this.na(2138)|
this.Qa(2140)<<16,this.Sd=this.Mc+this.na(2142),jd(this.Bc,2132,this.na(2076)),jd(this.Sa,2144,this.na(2070)),this.A-=195)};ge[6]=function(){this.pa?C.call(this,13,0):(this.Za&=-9,this.A-=2)};ge[11]=Gd;ge[166]=Gd;ge[255]=Gd;var M=[];M[5]=Gd;
M[7]=function(){if(this.pa)C.call(this,13,0,0,!0);else{var a=this.Xa.nc(this.J&this.Ba,204);if(-1!==a){pj.call(this,this.oa(a));var b=this.oa(a+168),c=(b&24576)>>13;yd(this,this.oa(a+4),c);this.Ec=this.oa(a+112);this.Ad=this.Ec+this.oa(a+116);this.Mc=this.oa(a+100);this.Sd=this.Mc+this.oa(a+104);id(this.Bc,this.oa(a+56),this.oa(a+120),this.oa(a+124),this.oa(a+128));id(this.Sa,this.oa(a+52),this.oa(a+84),this.oa(a+88),this.oa(a+92));this.J=this.oa(a+12);this.K=this.oa(a+16);this.P=this.oa(a+20);this.H=
this.Qa(2140)<<16,this.Td=this.Mc+this.na(2142),jd(this.Bc,2132,this.na(2076)),jd(this.Sa,2144,this.na(2070)),this.A-=195)};ge[6]=function(){this.pa?C.call(this,13,0):(this.Za&=-9,this.A-=2)};ge[11]=Gd;ge[166]=Gd;ge[255]=Gd;var M=[];M[5]=Gd;
M[7]=function(){if(this.pa)C.call(this,13,0,0,!0);else{var a=this.Xa.nc(this.J&this.Ba,204);if(-1!==a){pj.call(this,this.oa(a));var b=this.oa(a+168),c=(b&24576)>>13;yd(this,this.oa(a+4),c);this.Ec=this.oa(a+112);this.Ad=this.Ec+this.oa(a+116);this.Mc=this.oa(a+100);this.Td=this.Mc+this.oa(a+104);id(this.Bc,this.oa(a+56),this.oa(a+120),this.oa(a+124),this.oa(a+128));id(this.Sa,this.oa(a+52),this.oa(a+84),this.oa(a+88),this.oa(a+92));this.J=this.oa(a+12);this.K=this.oa(a+16);this.P=this.oa(a+20);this.H=
this.oa(a+28);this.M=this.oa(a+32);this.I=this.oa(a+36);this.G=this.oa(a+40);id(this.Pb,this.oa(a+60),this.oa(a+132),this.oa(a+136),this.oa(a+140));id(this.Ob,this.oa(a+64),this.oa(a+144),this.oa(a+148),this.oa(a+152));id(this.vb,this.oa(a+68),this.oa(a+156),this.oa(a+160),this.oa(a+164));id(this.ta,this.oa(a+72),b,this.oa(a+172),this.oa(a+176));id(this.va,this.oa(a+76),this.oa(a+180),this.oa(a+184),this.oa(a+188));id(this.Xa,this.oa(a+80),this.oa(a+192),this.oa(a+196),this.oa(a+200));O(this,this.oa(a+
8));G(this,this.oa(a+24))}this.A-=122<<(a&3?1:0)}};M[16]=Uj;M[17]=Vj;M[18]=Wj;M[19]=Xj;M[32]=function(){if(this.pa)C.call(this,13,0);else{var a,b=this.xa();switch((b&56)>>3){case 0:a=this.Za;break;case 2:a=this.te;break;case 3:a=this.Od;break;default:he.call(this);return}we(this,b&7,a);this.A-=6}};M[33]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;4==b||5==b?he.call(this):(we(this,a&7,this.Ja[b]),this.A-=22)}};
8));G(this,this.oa(a+24))}this.A-=122<<(a&3?1:0)}};M[16]=Uj;M[17]=Vj;M[18]=Wj;M[19]=Xj;M[32]=function(){if(this.pa)C.call(this,13,0);else{var a,b=this.xa();switch((b&56)>>3){case 0:a=this.Za;break;case 2:a=this.te;break;case 3:a=this.Pd;break;default:he.call(this);return}we(this,b&7,a);this.A-=6}};M[33]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;4==b||5==b?he.call(this):(we(this,a&7,this.Ja[b]),this.A-=22)}};
M[34]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=ve(this,a&7);switch((a&56)>>3){case 0:pj.call(this,b);this.A-=10;break;case 2:this.te=b;this.A-=4;break;case 3:Ad.call(this,b);this.A-=5;break;default:he.call(this)}}};M[35]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;4==b||5==b?he.call(this):(a=ve(this,a&7),a!=this.Ja[b]&&(ff(this,!1),this.Ja[b]=a,ff(this,!0)),this.A-=4>b?22:14)}};
M[36]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;6>b?he.call(this):(we(this,a&7,this.Ce[b]),this.A-=12)}};M[38]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;6>b?he.call(this):(this.Ce[b]=ve(this,a&7),this.A-=12)}};M[128]=function(){var a=this.Ma();uf(this)?(O(this,K(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};M[129]=function(){var a=this.Ma();uf(this)?this.A-=this.B.bb:(O(this,K(this)+a),this.A-=this.B.ab)};
M[130]=function(){var a=this.Ma();pf(this)?(O(this,K(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};M[131]=function(){var a=this.Ma();pf(this)?this.A-=this.B.bb:(O(this,K(this)+a),this.A-=this.B.ab)};M[132]=function(){var a=this.Ma();sf(this)?(O(this,K(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};M[133]=function(){var a=this.Ma();sf(this)?this.A-=this.B.bb:(O(this,K(this)+a),this.A-=this.B.ab)};M[134]=function(){var a=this.Ma();pf(this)||sf(this)?(O(this,K(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};
@ -359,13 +359,13 @@ M[188]=function(){this.W.call(this,xh)};M[189]=function(){this.W.call(this,yh)};
M[190]=function(){this.Na.call(this,ai);switch(this.L>>3&7){case 0:this.G=this.G&~this.R|(this.G&255)<<24>>24&this.R;break;case 1:this.I=this.I&~this.R|(this.I&255)<<24>>24&this.R;break;case 2:this.M=this.M&~this.R|(this.M&255)<<24>>24&this.R;break;case 3:this.H=this.H&~this.R|(this.H&255)<<24>>24&this.R;break;case 4:this.gb=this.gb&~this.R|this.G<<16>>24&this.R;this.G=this.aa;break;case 5:this.P=this.P&~this.R|this.I<<16>>24&this.R;this.I=this.aa;break;case 6:this.K=this.K&~this.R|this.M<<16>>24&
this.R;this.M=this.aa;break;case 7:this.J=this.J&~this.R|this.H<<16>>24&this.R,this.H=this.aa}this.A-=-1===this.D?3:6};M[191]=function(){nd(this,2);this.W.call(this,bi);switch(this.L>>3&7){case 0:this.G=this.G<<16>>16;break;case 1:this.I=this.I<<16>>16;break;case 2:this.M=this.M<<16>>16;break;case 3:this.H=this.H<<16>>16;break;case 4:this.gb=this.gb<<16>>16;break;case 5:this.P=this.P<<16>>16;break;case 6:this.K=this.K<<16>>16;break;case 7:this.J=this.J<<16>>16}this.A-=-1===this.D?3:6};
var gf=[function(){this.A-=2+(-1===this.D?0:1);return this.Bc.Z},function(){this.A-=2+(-1===this.D?0:1);return this.Sa.Z},function(a){this.S|=2;this.Bc.load(a);this.A-=17+(-1===this.D?0:2);return a},function(a){this.S|=2;-1!==this.Sa.load(a)&&(this.jb(this.Sa.Xb+4,this.Sa.wb|=512),this.Sa.type|=512);this.A-=17+(-1===this.D?0:2);return a},function(a){this.S|=2;this.A-=14+(-1===this.D?0:2);if(-1!==this.Ea.load(a)&&2048!=(this.Ea.wb&2560)&&(this.Ea.Gc>=this.pa&&this.Ea.Gc>=(a&3)||7168==(this.Ea.wb&7168)))return Ff(this),
a;Df(this);return a},function(a){this.S|=2;this.A-=14+(-1===this.D?0:2);if(-1!==this.Ea.load(a)&&512==(this.Ea.wb&2560)&&this.Ea.Gc>=this.pa&&this.Ea.Gc>=(a&3))return Ff(this),a;Df(this);return a},Lh,Lh],Fd=[$d,$d,$d,$d,$d,$d,Lh,Lh],nk=[function(a){if(-1===this.D)C.call(this,6);else{a=this.Ad-this.Ec;var b=this.Ec;80286==this.ia?b|=-16777216:80386<=this.ia&&2!=this.ba&&(a|=b<<16);this.nb(this.D+2,b);this.A-=11}return a},function(a){if(-1===this.D)C.call(this,6);else{a=this.Sd-this.Mc;var b=this.Mc;
80286==this.ia?b|=-16777216:80386<=this.ia&&2!=this.ba&&(a|=b<<16);this.nb(this.D+2,b);this.A-=12}return a},function(a){-1===this.D||this.ca&131072?C.call(this,6):(this.Ec=this.oa(this.D+2)&(this.R|this.R<<8),a&=65535,this.Ad=this.Ec+a,this.S|=2,this.A-=11);return a},function(a){-1===this.D||this.ca&131072?C.call(this,6):(this.Mc=this.oa(this.D+2)&(this.R|this.R<<8),a&=65535,this.Sd=this.Mc+a,this.S|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.D?0:1);return this.Za},Lh,function(a){this.ca&
a;Df(this);return a},function(a){this.S|=2;this.A-=14+(-1===this.D?0:2);if(-1!==this.Ea.load(a)&&512==(this.Ea.wb&2560)&&this.Ea.Gc>=this.pa&&this.Ea.Gc>=(a&3))return Ff(this),a;Df(this);return a},Lh,Lh],Fd=[$d,$d,$d,$d,$d,$d,Lh,Lh],nk=[function(a){if(-1===this.D)C.call(this,6);else{a=this.Ad-this.Ec;var b=this.Ec;80286==this.ia?b|=-16777216:80386<=this.ia&&2!=this.ba&&(a|=b<<16);this.nb(this.D+2,b);this.A-=11}return a},function(a){if(-1===this.D)C.call(this,6);else{a=this.Td-this.Mc;var b=this.Mc;
80286==this.ia?b|=-16777216:80386<=this.ia&&2!=this.ba&&(a|=b<<16);this.nb(this.D+2,b);this.A-=12}return a},function(a){-1===this.D||this.ca&131072?C.call(this,6):(this.Ec=this.oa(this.D+2)&(this.R|this.R<<8),a&=65535,this.Ad=this.Ec+a,this.S|=2,this.A-=11);return a},function(a){-1===this.D||this.ca&131072?C.call(this,6):(this.Mc=this.oa(this.D+2)&(this.R|this.R<<8),a&=65535,this.Td=this.Mc+a,this.S|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.D?0:1);return this.Za},Lh,function(a){this.ca&
131072?C.call(this,6):(Gf(this,a),this.A-=-1===this.D?3:6,this.S|=2);return a},Lh],ok=[Lh,Lh,Lh,Lh,zh,Ch,Bh,Ah];
function pk(a){Ua.call(this,"ChipSet",a,pk,32768);var b=a.model;b&&!qk[b]&&w("Unrecognized ChipSet model: "+b);this.ia=b&&qk[b]||rk;this.C=[];b=sk(a[tk]);this.C[0]=[b,b];null==b&&(this.ja=[360,360],(b=a.floppies)&&b.length&&(this.ja=b),uk(this,vk,this.ja.length),uk(this,wk,a.monitor||(this.ia<cg?"mono":"ega")));b=sk(a[xk]);this.C[1]=[b,b];this.cb=this.Ea=1;this.ia>=cg&&(this.cb=this.Ea=2);this.ka=a.scaleTimers||!1;this.Ub=a.rtcDate;this.Db=!1;a.sound&&(this.sb=this.Fa=null,window&&(this.sb=window.AudioContext||
window.webkitAudioContext),this.sb&&(this.Fa=new this.sb));this.reset(!0);rb(this)}db(pk);var rk=5150.9,cg=5170,qk={5150:5150,5160:5160,5170:cg,att6300:5160.101,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:rk,deskpro386:5180},tk="sw1",xk="sw2",yk={Bk:1,ONE:0,bo:64,$n:128,En:192,Lc:192,Pg:6},zk={ao:16,xn:32,Mn:48,Lc:48,Pg:4},vk=1,wk=4,Ak={5150:[{},{}]};Ak[5150][0][vk]={Lc:192,hd:{1:0,2:64,3:128,4:192},Pd:"Number of Floppy Drives"};Ak[5150][0][3]={Lc:2,hd:{0:0,1:2},Pd:"Coprocessor"};
Ak[5150][0][wk]={Lc:48,hd:{0:0,1:16,2:32,3:48,none:0,tv:16,color:32,mono:48,ega:0,vga:0},Pd:"Monitor Type"};Ak[5150][0][5]={Lc:12,hd:{16:0,32:4,48:8,64:12},Pd:"Base Memory (16Kb Increments)"};Ak[5150][1][6]={Lc:31,hd:{0:0,32:1,64:2,96:3,128:4,160:5,192:6,224:7,256:8,288:9,320:10,352:11,384:12,416:13,448:14,480:15,512:16,544:17,576:18},Pd:"Expansion Memory (32Kb Increments)"};Ak[5160]=[{},{}];Ak[5160][0][vk]=Ak[5150][0][vk];Ak[5160][0][3]=Ak[5150][0][3];Ak[5160][0][wk]=Ak[5150][0][wk];
Ak[5160][0][5]={Lc:12,hd:{64:0,128:4,192:8,256:12},Pd:"Base Memory (64Kb Increments)"};Ak[5160][1][6]=Ak[5150][1][6];Ak[5160.101]=[{},{}];Ak[5160.101][0][5]={Lc:143,hd:{128:1,256:130,512:8,640:141},Pd:"Base Memory (128Kb Increments)"};Ak[5160.101][0][3]={Lc:16,hd:{0:0,1:16},Pd:"Coprocessor"};Ak[5160.101][1][2]={Lc:1,hd:{0:0,1:1},Pd:"Floppy Type"};Ak[5160.101][1][vk]=Ak[5150][0][vk];Ak[5160.101][1][wk]=Ak[5150][0][wk];m=pk.prototype;
window.webkitAudioContext),this.sb&&(this.Fa=new this.sb));this.reset(!0);rb(this)}db(pk);var rk=5150.9,cg=5170,qk={5150:5150,5160:5160,5170:cg,att6300:5160.101,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:rk,deskpro386:5180},tk="sw1",xk="sw2",yk={Bk:1,ONE:0,bo:64,$n:128,En:192,Lc:192,Pg:6},zk={ao:16,xn:32,Mn:48,Lc:48,Pg:4},vk=1,wk=4,Ak={5150:[{},{}]};Ak[5150][0][vk]={Lc:192,hd:{1:0,2:64,3:128,4:192},Qd:"Number of Floppy Drives"};Ak[5150][0][3]={Lc:2,hd:{0:0,1:2},Qd:"Coprocessor"};
Ak[5150][0][wk]={Lc:48,hd:{0:0,1:16,2:32,3:48,none:0,tv:16,color:32,mono:48,ega:0,vga:0},Qd:"Monitor Type"};Ak[5150][0][5]={Lc:12,hd:{16:0,32:4,48:8,64:12},Qd:"Base Memory (16Kb Increments)"};Ak[5150][1][6]={Lc:31,hd:{0:0,32:1,64:2,96:3,128:4,160:5,192:6,224:7,256:8,288:9,320:10,352:11,384:12,416:13,448:14,480:15,512:16,544:17,576:18},Qd:"Expansion Memory (32Kb Increments)"};Ak[5160]=[{},{}];Ak[5160][0][vk]=Ak[5150][0][vk];Ak[5160][0][3]=Ak[5150][0][3];Ak[5160][0][wk]=Ak[5150][0][wk];
Ak[5160][0][5]={Lc:12,hd:{64:0,128:4,192:8,256:12},Qd:"Base Memory (64Kb Increments)"};Ak[5160][1][6]=Ak[5150][1][6];Ak[5160.101]=[{},{}];Ak[5160.101][0][5]={Lc:143,hd:{128:1,256:130,512:8,640:141},Qd:"Base Memory (128Kb Increments)"};Ak[5160.101][0][3]={Lc:16,hd:{0:0,1:16},Qd:"Coprocessor"};Ak[5160.101][1][2]={Lc:1,hd:{0:0,1:1},Qd:"Floppy Type"};Ak[5160.101][1][vk]=Ak[5150][0][vk];Ak[5160.101][1][wk]=Ak[5150][0][wk];m=pk.prototype;
m.Qb=function(a,b,c){switch(b){case tk:return this.qa[b]=c,Bk(this,0,b),!0;case xk:if(5150==(this.ia|0)||5160.101==this.ia)return this.qa[b]=c,Bk(this,1,b),!0;break;case "swdesc":return this.qa[b]=c,!0}return!1};
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.V=a;this.Tb=Eb(a,"FPU");uk(this,3,this.Tb?1:0,!0);this.B=Eb(a,"Keyboard");this.gb=c.Y.Jd/1193181;hc(b,this,Ck);lc(b,this,Dk);this.ia<cg?5160.101!=this.ia?(hc(b,this,Ek),lc(b,this,Fk)):(hc(b,this,Gk),lc(b,this,Hk)):(hc(b,this,Ik),lc(b,this,Jk),5180==(this.ia|0)&&(hc(b,this,Kk),lc(b,this,Lk)));if(d){var e=this;Mk(d,1024,function(){for(var a=0;a<e.vc.length;a++){for(var b=e.vc[a],c="PIC"+a+":",d=0;d<b.Yc.length;d++)c+=" IC"+(d+1)+"="+t(b.Yc[d]);
c+=" IMR="+t(b.Bd)+" IRR="+t(b.mc)+" ISR="+t(b.Pc)+" DELAY="+b.nf;e.ha.O(c)}});Mk(d,2048,function(a){a=(a=a[0])?+a:null;for(var b=0;b<e.W.length;b++)if(null==a||b==a){Nk(e,b);var c=e.W[b],d="TIMER"+b+":",l=0;if(null!=c.nd)for(var n=0;n<=c.nd;n++)l|=c.Ab[n]<<8*n;d+=" mode="+(c.mode>>1)+" bytes="+c.nd+" count="+u(l);e.ha.O(d)}});Mk(d,4096,function(){for(var a="",b=0;64>b;b++){var c=13>=b?Ok(e,b):e.A[b];a&&(a+="\n");a+="CMOS["+t(b)+"]: "+t(c)}e.ha.O(a)})}cf(c,26,this.$l.bind(this))};
@ -374,30 +374,30 @@ m.reset=function(a){var b;Pk(this);this.L=Array(this.cb);for(b=0;b<this.cb;b++)Q
3;this.ra=Array(8);this.pa=0;a&&(this.A=Array(64));Vk(this,this.Ub);for(a=21;24>=a;a++)this.A[a]=0;for(a=14;46>a;a++)void 0===this.A[a]&&(this.A[a]=0);a=0|+Uk(this,wk,void 0)<<zk.Pg&zk.Lc;a|=+Uk(this,3,void 0)?2:0;b=+Uk(this,vk,void 0);a|=b?b-1<<yk.Pg&yk.Lc|yk.Bk:0;this.A[20]=a;this.A[16]=Wk(this,0)<<4|Wk(this,1);Xk(this)}};
function Vk(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.O("CMOS date invalid ("+b+"), using "+c)):b&&a.O("CMOS date: "+c);a.A[0]=c.getSeconds();a.A[1]=0;a.A[2]=c.getMinutes();a.A[3]=0;a.A[4]=c.getHours();a.A[5]=0;a.A[6]=c.getDay()+1;a.A[7]=c.getDate();a.A[8]=c.getMonth()+1;c=c.getFullYear();a.A[9]=c%100;c/=100;a.A[50]=c%10|c/10<<4;a.A[10]=38;a.A[11]=2;a.A[12]=0;a.A[13]=128;a.Ia=a.ua=0;a.Jb=a.fb=null}
function Ok(a,b){var c=a.A[b];if(10>b){var d=!1;4!=b&&5!=b||a.A[11]&2||(12>c?c=c?c:12:c=(c-=12)?c+128:140,d=!0);a.A[11]&4||(d&&128<c&&(c-=48),c=c%10|c/10<<4)}else 10==b&&(a.A[b]^=128);return c}function Yk(a){var b;void 0===b&&(b=a.fb);a.ua=Wc(a.F,a.ka)+b;a.A[11]&64&&Yc(a.F,b)}function Xk(a){for(var b=0,c=16;46>c;c++)b+=a.A[c];a.A[47]=b&255;a.A[46]=b>>8}
m.save=function(){var a=new hf(this);N(a,0,[this.C]);for(var b=[],c=0;c<this.L;c++){for(var d=this.L[c],e=d,f=[],g=0;g<e.Dc.length;g++){var h=e.Dc[g];f[g]=[h.Ee,h.ig,h.Fc,h.Eb,h.Ab,h.mode,h.kg,h.qn,h.rn]}b[c]=[d.Yb,d.Wg,d.yi,d.Kb,f,d.zi]}N(a,1,[b]);b=[];for(c=0;c<this.vc.length;c++)d=this.vc[c],b[c]=[d.nf,d.Yc,d.Yd,d.Bd,d.mc,d.Pc,d.ye,d.Cf];N(a,2,[b]);b=[];for(c=0;c<this.W.length;c++)d=this.W[c],b[c]=[d.Fc,d.$c,d.Ab,d.ze,d.Yg,d.mode,d.eg,d.Fd,d.nd,d.vd,d.Ze,d.Be,d.xd,d.Yb,d.df];N(a,3,[this.Na,b,this.Pa]);
m.save=function(){var a=new hf(this);N(a,0,[this.C]);for(var b=[],c=0;c<this.L;c++){for(var d=this.L[c],e=d,f=[],g=0;g<e.Dc.length;g++){var h=e.Dc[g];f[g]=[h.Ee,h.ig,h.Fc,h.Eb,h.Ab,h.mode,h.kg,h.qn,h.rn]}b[c]=[d.Yb,d.Wg,d.yi,d.Kb,f,d.zi]}N(a,1,[b]);b=[];for(c=0;c<this.vc.length;c++)d=this.vc[c],b[c]=[d.nf,d.Yc,d.Zd,d.Bd,d.mc,d.Pc,d.ye,d.Cf];N(a,2,[b]);b=[];for(c=0;c<this.W.length;c++)d=this.W[c],b[c]=[d.Fc,d.$c,d.Ab,d.ze,d.Yg,d.mode,d.eg,d.Fd,d.nd,d.vd,d.Ze,d.Be,d.xd,d.Yb,d.df];N(a,3,[this.Na,b,this.Pa]);
N(a,4,[this.$a,this.X,this.rb,this.Ca,this.ya]);this.ia>=cg&&(N(a,5,[this.N,this.fa,this.aa,this.Ja,this.ga,this.Ka]),N(a,6,[this.ra[7],this.ra,this.pa,this.A,this.Ia,this.ua]));return a.data()};
m.restore=function(a){var b,c;b=a[0];Array.isArray(b[0])?this.C=b[0]:(this.C[0][0]=b[0],this.C[1][0]=b[1]&15,this.C[0][1]=b[2],this.C[1][1]=b[3]&15);Pk(this);b=a[1];for(c=0;c<this.cb;c++)Qk(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.Ea;c++)Rk(this,c,0===c?32:160,b[0][c]);b=a[3];this.Na=b[0];this.Pa=b[2];for(c=0;c<this.W.length;c++)Sk(this,c,b[1][c]);b=a[4];this.$a=b[0];this.X=b[1];this.rb=b[2];this.Ca=b[3];this.ya=b[4];if(b=a[5])this.N=b[0],this.fa=b[1],this.aa=b[2],this.Ja=b[3],this.ga=
b[4],this.Ka=b[5];if(b=a[6])this.ra=b[1],this.ra[7]=b[0],this.pa=b[2],this.A=b[3],this.Ia=b[4],this.ua=b[5],Vk(this);return!0};var Zk=[0,null,null,0,Array(4),0];function Qk(a,b,c){var d=a.L[b];d||(d={Dc:Array(4)});c=c&&5<=c.length?c:Zk;d.Yb=c[0];d.Wg=c[1];d.yi=c[2];d.Kb=c[3];d.gm=b<<2;for(var e=0;e<d.Dc.length;e++)$k(d,e,c[4][e]);d.zi=c[5]||0;a.L[b]=d}var al=[!0,[0,0],[0,0],[0,0],[0,0]];
function $k(a,b,c){var d=a.Dc[b];d||(d={ig:[0,0],Fc:[0,0],Eb:[0,0],Ab:[0,0]});c=c&&8==c.length?c:al;d.Ee=c[0];d.ig[0]=c[1][0];d.ig[1]=c[1][1];d.Fc[0]=c[2][0];d.Fc[1]=c[2][1];d.Eb[0]=c[3][0];d.Eb[1]=c[3][1];d.Ab[0]=c[4][0];d.Ab[1]=c[4][1];d.mode=c[5];d.kg=c[6];d.controller=a;d.Ti=b;bl(d,c[8],c[9]);a.Dc[b]=d}function bl(a,b,c,d){"string"==typeof b&&(b=hb(b));b&&(a.done=null,a.qn=b.id,a.rn=c,a.pg=b,a.eh=b[c],a.Eg=d)}var cl=[0,Array(4)];
function Rk(a,b,c,d){var e=a.vc[b];e||(e={Yc:[null,null,null,null]});d=d&&8==d.length?d:cl;e.port=c;e.wo=b<<3;e.nf=d[0];e.Yc[0]=d[1][0];e.Yc[1]=d[1][1];e.Yc[2]=d[1][2];e.Yc[3]=d[1][3];e.Yd=d[2];e.Bd=d[3];e.mc=d[4];e.Pc=d[5];e.ye=d[6];e.Cf=d[7];a.vc[b]=e}var dl=[[0,0],[0,0],[0,0],[0,0]];
function Rk(a,b,c,d){var e=a.vc[b];e||(e={Yc:[null,null,null,null]});d=d&&8==d.length?d:cl;e.port=c;e.wo=b<<3;e.nf=d[0];e.Yc[0]=d[1][0];e.Yc[1]=d[1][1];e.Yc[2]=d[1][2];e.Yc[3]=d[1][3];e.Zd=d[2];e.Bd=d[3];e.mc=d[4];e.Pc=d[5];e.ye=d[6];e.Cf=d[7];a.vc[b]=e}var dl=[[0,0],[0,0],[0,0],[0,0]];
function Sk(a,b,c){var d=a.W[b];d||(d={Fc:[0,0],$c:[0,0],Ab:[0,0],ze:[0,0]});c=c&&13<=c.length?c:dl;d.Fc[0]=c[0][0];d.Fc[1]=c[0][1];d.$c[0]=c[1][0];d.$c[1]=c[1][1];d.Ab[0]=c[2][0];d.Ab[1]=c[2][1];d.ze[0]=c[3][0];d.ze[1]=c[3][1];d.Yg=c[4];d.mode=c[5];d.eg=c[6];d.Fd=c[7];d.nd=c[8];d.vd=c[9];d.Ze=c[10];d.Be=c[11];d.xd=c[12];d.Yb=c[13]||0;d.df=c[14]||!1;a.W[b]=d}
function Bk(a,b,c){for(var d="",e=a.qa[c],f=1;8>=f;f++){var g="pcjs-bitCell";f||(g+=" pcjs-bitCellLeft");d+='<div id="'+(c+"-"+f)+'" class="'+g+'" data-value="0">'+f+"</div>\n"}e.innerHTML=d;el(a,b,c,!0)}function fl(a,b,c){if(b=(a=Ak[a.ia|0])&&a[b])for(var d in b)if(a=b[d],a.Lc&1<<c)return a;return null}
function Uk(a,b,c){for(var d=null,e=Ak[a.ia]||Ak[a.ia|0]||Ak[5150],f=0;f<e.length;f++){var g=e[f];if(g&&(g=g[b])){a=a.C[f][c?0:1]&g.Lc;for(var h in g.hd)if(g.hd[h]==a&&(d=h,"number"==typeof+d))break;break}}return d}function Wk(a,b){if(b<+Uk(a,vk,void 0)){if(!a.ja)return 1;if(b<a.ja.length)switch(a.ja[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function Tk(a,b){return+Uk(a,5,b)+ +Uk(a,6,b)}
function sk(a,b){var c=b;if(a)for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c}function uk(a,b,c,d){for(var e=Ak[a.ia]||Ak[a.ia|0]||Ak[5150],f=0;f<e.length;f++){var g=e[f];if(g&&(g=g[b]))for(var h in g.hd)if(h==c){a.C[f][d?0:1]&=~g.Lc;a.C[f][d?0:1]|=g.hd[h];return}}}function gl(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function Pk(a){el(a,0,tk);el(a,1,xk);hl(a)}
function el(a,b,c,d){if(c=a.qa[c]){d=d?a.C[b][0]:a.C[b][1]=a.C[b][0];c=nb(c,"pcjs-bitCell");for(var e=0;e<c.length;e++){var f=fl(a,b,e);c[e].setAttribute("title",f&&f.Pd||"Reserved");gl(c[e],d&1<<e?!1:!0);c[e].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");gl(b,c);var d=b.getAttribute("id").split("-"),e=1<<+d[1]-1;switch(d[0]){case tk:a.C[0][0]=a.C[0][0]&~e|(c?0:e);break;case xk:a.C[1][0]=a.C[1][0]&~e|(c?0:e)}hl(a)}}(a,c[e])}}}
function el(a,b,c,d){if(c=a.qa[c]){d=d?a.C[b][0]:a.C[b][1]=a.C[b][0];c=nb(c,"pcjs-bitCell");for(var e=0;e<c.length;e++){var f=fl(a,b,e);c[e].setAttribute("title",f&&f.Qd||"Reserved");gl(c[e],d&1<<e?!1:!0);c[e].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");gl(b,c);var d=b.getAttribute("id").split("-"),e=1<<+d[1]-1;switch(d[0]){case tk:a.C[0][0]=a.C[0][0]&~e|(c?0:e);break;case xk:a.C[1][0]=a.C[1][0]&~e|(c?0:e)}hl(a)}}(a,c[e])}}}
function hl(a){var b=a.qa.swdesc;if(null!=b){var c;c=""+(Tk(a,!0)+"Kb");c+=", "+(+ +Uk(a,3,!0)?"":"No ")+"Coprocessor";c+=", "+{0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"}[+Uk(a,wk,!0)]+" Monitor";c+=", "+ +Uk(a,vk,!0)+" Floppy Drives";if(null!=a.C[0][1]&&a.C[0][1]!=a.C[0][0]||null!=a.C[1][1]&&a.C[1][1]!=a.C[1][0])c+=" (Reset required)";b.textContent=c}}
function il(a,b,c,d,e){var f=a.L[b],g=f.Dc[c],h=g.Eb[f.Kb];z(a,768)&&x(a,d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.Kb+"]",h,!0);f.Kb^=1;b||0!=c||f.Kb||(g.Eb[0]++,255<g.Eb[0]&&(g.Eb[0]=0,g.Eb[1]++,255<g.Eb[1]&&(g.Eb[1]=0)));return h}function jl(a,b,c,d,e,f){var g=a.L[b];z(a,768)&&x(a,d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+g.Kb+"]",null,!0);a=g.Dc[c];a.Eb[g.Kb]=a.ig[g.Kb]=e;g.Kb^=1}
function kl(a,b,c,d,e){var f=a.L[b],g=f.Dc[c],h=g.Ab[f.Kb];z(a,768)&&x(a,d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.Kb+"]",h,!0);f.Kb^=1;b||0!=c||f.Kb||(g.Ab[0]--,0>g.Ab[0]&&(g.Ab[0]=255,g.Ab[1]--,0>g.Ab[1]&&(g.Ab[1]=255)));return h}function ll(a,b,c,d,e,f){var g=a.L[b];z(a,768)&&x(a,d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.Kb+"]",null,!0);a=g.Dc[c];a.Ab[g.Kb]=a.Fc[g.Kb]=e;g.Kb^=1}function ml(a,b,c,d){var e=a.L[b],f=e.Yb|1;e.Yb&=-16;z(a,768)&&x(a,c,null,d,"DMA"+b+".STATUS",f,!0);return f}
function nl(a,b,c,d,e){var f=a.L[b];z(a,768)&&x(a,c,d,e,"DMA"+b+".REQ",null,!0);a=d&3;f.Yb=f.Yb&~(16<<a)|(d&4)<<a+2;f.yi=d}function ol(a,b,c,d,e){var f=a.L[b];z(a,768)&&x(a,c,d,e,"DMA"+b+".MASK",null,!0);b=d&3;c=f.Dc[b];c.Ee=!!(d&4);c.Ee||pl(a,f.gm+b)}function ql(a,b,c,d,e){z(a,768)&&x(a,c,d,e,"DMA"+b+".MODE",null,!0);a.L[b].Dc[d&3].mode=d}function rl(a,b,c,d){var e=a.L[b].zi;z(a,768)&&x(a,c,null,d,"DMA"+b+".TEMP",e,!0);return e}
function sl(a,b,c,d,e){z(a,768)&&x(a,c,d,e,"DMA"+b+".MASTER_CLEAR",null,!0);a=a.L[b];for(b=0;b<a.Dc.length;b++)$k(a,b)}function tl(a,b,c,d,e){var f=a.L[b].Dc[c].kg;z(a,768)&&x(a,d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",f,!0);return f}function ul(a,b,c,d,e,f){z(a,768)&&x(a,d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",null,!0);a.L[b].Dc[c].kg=e}function vl(a,b,c,d){var e=a.ra[b];z(a,768)&&x(a,c,null,d,"DMA.SPARE"+b+".PAGE",e,!0);return e}
function wl(a,b,c,d,e){z(a,768)&&x(a,c,d,e,"DMA.SPARE"+b+".PAGE",null,!0);a.ra[b]=d}function xl(a,b,c,d,e){bl(a.L[b>>2].Dc[b&3],c,d,e)}function pl(a,b,c){b=a.L[b>>2].Dc[b&3];b.pg&&b.eh&&b.Eg?(c&&(b.done=c),b.Ee||yl(a,b,!0)):c&&c(!0)}
function il(a,b,c,d,e){var f=a.L[b],g=f.Dc[c],h=g.Eb[f.Kb];A(a,768)&&x(a,d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.Kb+"]",h,!0);f.Kb^=1;b||0!=c||f.Kb||(g.Eb[0]++,255<g.Eb[0]&&(g.Eb[0]=0,g.Eb[1]++,255<g.Eb[1]&&(g.Eb[1]=0)));return h}function jl(a,b,c,d,e,f){var g=a.L[b];A(a,768)&&x(a,d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+g.Kb+"]",null,!0);a=g.Dc[c];a.Eb[g.Kb]=a.ig[g.Kb]=e;g.Kb^=1}
function kl(a,b,c,d,e){var f=a.L[b],g=f.Dc[c],h=g.Ab[f.Kb];A(a,768)&&x(a,d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.Kb+"]",h,!0);f.Kb^=1;b||0!=c||f.Kb||(g.Ab[0]--,0>g.Ab[0]&&(g.Ab[0]=255,g.Ab[1]--,0>g.Ab[1]&&(g.Ab[1]=255)));return h}function ll(a,b,c,d,e,f){var g=a.L[b];A(a,768)&&x(a,d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.Kb+"]",null,!0);a=g.Dc[c];a.Ab[g.Kb]=a.Fc[g.Kb]=e;g.Kb^=1}function ml(a,b,c,d){var e=a.L[b],f=e.Yb|1;e.Yb&=-16;A(a,768)&&x(a,c,null,d,"DMA"+b+".STATUS",f,!0);return f}
function nl(a,b,c,d,e){var f=a.L[b];A(a,768)&&x(a,c,d,e,"DMA"+b+".REQ",null,!0);a=d&3;f.Yb=f.Yb&~(16<<a)|(d&4)<<a+2;f.yi=d}function ol(a,b,c,d,e){var f=a.L[b];A(a,768)&&x(a,c,d,e,"DMA"+b+".MASK",null,!0);b=d&3;c=f.Dc[b];c.Ee=!!(d&4);c.Ee||pl(a,f.gm+b)}function ql(a,b,c,d,e){A(a,768)&&x(a,c,d,e,"DMA"+b+".MODE",null,!0);a.L[b].Dc[d&3].mode=d}function rl(a,b,c,d){var e=a.L[b].zi;A(a,768)&&x(a,c,null,d,"DMA"+b+".TEMP",e,!0);return e}
function sl(a,b,c,d,e){A(a,768)&&x(a,c,d,e,"DMA"+b+".MASTER_CLEAR",null,!0);a=a.L[b];for(b=0;b<a.Dc.length;b++)$k(a,b)}function tl(a,b,c,d,e){var f=a.L[b].Dc[c].kg;A(a,768)&&x(a,d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",f,!0);return f}function ul(a,b,c,d,e,f){A(a,768)&&x(a,d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",null,!0);a.L[b].Dc[c].kg=e}function vl(a,b,c,d){var e=a.ra[b];A(a,768)&&x(a,c,null,d,"DMA.SPARE"+b+".PAGE",e,!0);return e}
function wl(a,b,c,d,e){A(a,768)&&x(a,c,d,e,"DMA.SPARE"+b+".PAGE",null,!0);a.ra[b]=d}function xl(a,b,c,d,e){bl(a.L[b>>2].Dc[b&3],c,d,e)}function pl(a,b,c){b=a.L[b>>2].Dc[b&3];b.pg&&b.eh&&b.Eg?(c&&(b.done=c),b.Ee||yl(a,b,!0)):c&&c(!0)}
function yl(a,b,c){c&&(b.count=b.Ab[1]<<8|b.Ab[0],b.type=b.mode&12,b.Pi=b.ud=!1);for(var d=!1;0<=b.count&&(c=b.kg<<16|b.Eb[1]<<8|b.Eb[0],4==b.type?(d=!0,function(c){b.eh.call(b.pg,b.Eg,-1,function(f,g){0>f&&(b.Pi||(b.Pi=!0),f=255);b.Ee||a.ea.qc(c,f);(d=g)&&setTimeout(function(){zl(b)||yl(a,b)},0)})}(c)):8==b.type?(c=a.ea.Qa(c),0>b.eh.call(b.pg,b.Eg,c)&&(b.ud=!0)):0!=b.type&&(b.ud=!0)),!d&&!zl(b););}
function zl(a){if(!a.ud&&0<=--a.count&&(a.mode&32?(a.Eb[0]--,0>a.Eb[0]&&(a.Eb[0]=255,a.Eb[1]--,0>a.Eb[1]&&(a.Eb[1]=255))):(a.Eb[0]++,255<a.Eb[0]&&(a.Eb[0]=0,a.Eb[1]++,255<a.Eb[1]&&(a.Eb[1]=0))),!a.Ee))return!1;var b=a.controller;b.Yb=b.Yb&~(16<<a.Ti)|1<<a.Ti;a.mode&16||(a.Ee=!0,a.pg=a.Eg=null);a.done&&(a.done(!a.ud),a.done=null);return!0}function Al(a,b,c){var d=0,e=a.vc[b];if(null!=e.Cf)switch(e.Cf&3){case 2:d=e.mc;break;case 3:d=e.Pc}z(a,34048)&&x(a,e.port,null,c,"PIC"+b,d,!0);return d}
function Bl(a,b,c,d){var e=a.vc[b];z(a,34048)&&x(a,e.port,c,d,"PIC"+b,null,!0);if(c&16)e.Yd=0,e.Yc[e.Yd++]=c,e.Bd=0,e.ye=7,e.mc=e.Pc=0,e.Cf=10;else if(c&8)c&100&&z(a,1073741824)&&y(a,"PIC"+b+"("+t(e.port)+"): unsupported OCW3 command "+t(c),!0,!0),e.Cf=c;else if(d=c&224,d&32){var f,g=0;if(96==(d&96))g=1<<(c&7);else for(f=e.ye+1;;){f&=7;var h=1<<f;if(e.Pc&h){g=h;break}if(f++==e.ye)break}e.Pc&g&&(e.Pc&=~g,Cl(a));d&128&&z(a,1073741824)&&y(a,"PIC"+b+"("+t(e.port)+"): unsupported OCW2 rotate command "+
t(c),!0,!0)}else 192==d?e.ye=c&7:z(a,1073741824)&&y(a,"PIC"+b+"("+t(e.port)+"): unsupported OCW2 automatic EOI command "+t(c),!0,!0)}function Dl(a,b,c){var d=a.vc[b],e=d.Bd;z(a,34048)&&x(a,d.port+1,null,c,"PIC"+b,e,!0);return e}function El(a,b,c,d){var e=a.vc[b];z(a,34048)&&x(a,e.port+1,c,d,"PIC"+b,null,!0);e.Yd<e.Yc.length?(e.Yc[e.Yd++]=c,2==e.Yd&&e.Yc[0]&2&&e.Yd++,3!=e.Yd||e.Yc[0]&1||e.Yd++):(e.Bd=c,d=a.F,d.S|=4,Cl(a,b||253!=c?0:6))}
function zl(a){if(!a.ud&&0<=--a.count&&(a.mode&32?(a.Eb[0]--,0>a.Eb[0]&&(a.Eb[0]=255,a.Eb[1]--,0>a.Eb[1]&&(a.Eb[1]=255))):(a.Eb[0]++,255<a.Eb[0]&&(a.Eb[0]=0,a.Eb[1]++,255<a.Eb[1]&&(a.Eb[1]=0))),!a.Ee))return!1;var b=a.controller;b.Yb=b.Yb&~(16<<a.Ti)|1<<a.Ti;a.mode&16||(a.Ee=!0,a.pg=a.Eg=null);a.done&&(a.done(!a.ud),a.done=null);return!0}function Al(a,b,c){var d=0,e=a.vc[b];if(null!=e.Cf)switch(e.Cf&3){case 2:d=e.mc;break;case 3:d=e.Pc}A(a,34048)&&x(a,e.port,null,c,"PIC"+b,d,!0);return d}
function Bl(a,b,c,d){var e=a.vc[b];A(a,34048)&&x(a,e.port,c,d,"PIC"+b,null,!0);if(c&16)e.Zd=0,e.Yc[e.Zd++]=c,e.Bd=0,e.ye=7,e.mc=e.Pc=0,e.Cf=10;else if(c&8)c&100&&A(a,1073741824)&&y(a,"PIC"+b+"("+t(e.port)+"): unsupported OCW3 command "+t(c),!0,!0),e.Cf=c;else if(d=c&224,d&32){var f,g=0;if(96==(d&96))g=1<<(c&7);else for(f=e.ye+1;;){f&=7;var h=1<<f;if(e.Pc&h){g=h;break}if(f++==e.ye)break}e.Pc&g&&(e.Pc&=~g,Cl(a));d&128&&A(a,1073741824)&&y(a,"PIC"+b+"("+t(e.port)+"): unsupported OCW2 rotate command "+
t(c),!0,!0)}else 192==d?e.ye=c&7:A(a,1073741824)&&y(a,"PIC"+b+"("+t(e.port)+"): unsupported OCW2 automatic EOI command "+t(c),!0,!0)}function Dl(a,b,c){var d=a.vc[b],e=d.Bd;A(a,34048)&&x(a,d.port+1,null,c,"PIC"+b,e,!0);return e}function El(a,b,c,d){var e=a.vc[b];A(a,34048)&&x(a,e.port+1,c,d,"PIC"+b,null,!0);e.Zd<e.Yc.length?(e.Yc[e.Zd++]=c,2==e.Zd&&e.Yc[0]&2&&e.Zd++,3!=e.Zd||e.Yc[0]&1||e.Zd++):(e.Bd=c,d=a.F,d.S|=4,Cl(a,b||253!=c?0:6))}
function eg(a,b,c){var d=a.vc[b>>3];b=1<<(b&7);d.mc&b||(d.mc|=b,d.nf=c||0,Cl(a))}function dg(a,b){var c=a.vc[b>>3],d=1<<(b&7);c.mc&d&&(c.mc&=~d,Cl(a))}function Cl(a,b){var c,d=-1;1<a.Ea&&(c=a.vc[1],d=~(c.Pc|c.Bd)&c.mc);c=a.vc[0];0<=d&&(c.mc=d?c.mc|4:c.mc&-5);var d=~(c.Pc|c.Bd)&c.mc,e=a.F;e.N&&(e.ua=d?e.ua|1:e.ua&-2);d&&b&&(c.nf=b)}
function Uf(a,b){void 0===b&&(b=0);var c=-1,d=a.vc[b];if(d.nf)c=-2,d.nf--;else for(var e=d.mc&((d.Pc|d.Bd)^255),f=d.ye+1;;){var f=f&7,g=1<<f;if(d.Pc&g)break;if(e&g){b||2!=f?c=d.Yc[1]+f:c=Uf(a,1);0<=c&&(d.Pc|=g,d.mc&=~g);break}if(f++==d.ye)break}return c}function Fl(a,b,c,d,e){var f;f=b?3:0;var g=a.W[f+c];g.df?(f=g.Yb,g.df=!1):(g.Fd==g.nd&&Gl(a,f+c),g.Ze?(f=g.ze[g.Fd++],g.Fd==g.nd&&(g.Ze=!1)):(Nk(a,f+c),f=g.Ab[g.Fd++]));z(a,2304)&&x(a,d,null,e,"PIT"+b+".TIMER"+c,f,!0);return f}
function Hl(a,b,c,d,e,f){z(a,2304)&&x(a,d,e,f,"PIT"+b+".TIMER"+c,null,!0);f=b?3:0;d=a.W[f+c];d.Fd==d.nd&&Gl(a,f+c);d.Fc[d.Fd++]=e;d.Fd==d.nd&&(d.Be&&0!=d.mode&&8!=d.mode||(d.Ze=!1,d.Ab[0]=d.$c[0]=d.Fc[0],d.Ab[1]=d.$c[1]=d.Fc[1],d.xd=Wc(a.F,a.ka),d.Be=!0,d.vd=0!=d.mode,0==b&&0==c&&(dg(a,0),e=Il(a,0)*a.gb|0,6==d.mode&&(e>>=1),Yc(a.F,e))),0==b&&2==c&&ad(a))}function Jl(a,b,c,d){x(a,c,null,d,"PIT"+b+".CTRL",null,2048);return b?a.Pa:a.Na}
function Uf(a,b){void 0===b&&(b=0);var c=-1,d=a.vc[b];if(d.nf)c=-2,d.nf--;else for(var e=d.mc&((d.Pc|d.Bd)^255),f=d.ye+1;;){var f=f&7,g=1<<f;if(d.Pc&g)break;if(e&g){b||2!=f?c=d.Yc[1]+f:c=Uf(a,1);0<=c&&(d.Pc|=g,d.mc&=~g);break}if(f++==d.ye)break}return c}function Fl(a,b,c,d,e){var f;f=b?3:0;var g=a.W[f+c];g.df?(f=g.Yb,g.df=!1):(g.Fd==g.nd&&Gl(a,f+c),g.Ze?(f=g.ze[g.Fd++],g.Fd==g.nd&&(g.Ze=!1)):(Nk(a,f+c),f=g.Ab[g.Fd++]));A(a,2304)&&x(a,d,null,e,"PIT"+b+".TIMER"+c,f,!0);return f}
function Hl(a,b,c,d,e,f){A(a,2304)&&x(a,d,e,f,"PIT"+b+".TIMER"+c,null,!0);f=b?3:0;d=a.W[f+c];d.Fd==d.nd&&Gl(a,f+c);d.Fc[d.Fd++]=e;d.Fd==d.nd&&(d.Be&&0!=d.mode&&8!=d.mode||(d.Ze=!1,d.Ab[0]=d.$c[0]=d.Fc[0],d.Ab[1]=d.$c[1]=d.Fc[1],d.xd=Wc(a.F,a.ka),d.Be=!0,d.vd=0!=d.mode,0==b&&0==c&&(dg(a,0),e=Il(a,0)*a.gb|0,6==d.mode&&(e>>=1),Yc(a.F,e))),0==b&&2==c&&ad(a))}function Jl(a,b,c,d){x(a,c,null,d,"PIT"+b+".CTRL",null,2048);return b?a.Pa:a.Na}
function Kl(a,b,c,d,e){x(a,c,d,e,"PIT"+b+".CTRL",null,2048);e=0;c=d&192;b?(e=3,a.Pa=d):a.Na=d;if(192==c){if(!(d&16))for(c=0;2>=c;c++)if(d&2<<c){b=e+c;var f=a.W[b];f.df||(Nk(a,b),f.Yb=f.Yg|f.mode|f.eg|(f.Fd<f.nd?64:0)|(f.vd?128:0),f.df=!0)}if(!(d&32))for(c=0;2>=c;c++)d&2<<c&&Ll(a,e+c)}else{c>>=6;var f=d&1,g=d&14;d&=48;if(0==d)Ll(a,e+c);else{e=e+c;var h=a.W[e];h.eg=d;h.mode=g;h.Yg=f;h.Fc=[0,0];h.Ab=[0,0];h.ze=[0,0];h.vd=!1;h.Ze=!1;h.Be=!1;h.df=!1;Gl(a,e);0==b&&0==c&&dg(a,0);0==b&&2==c&&255==a.vc[0].Bd&&
77==a.X&&(b=a.W[0],b.$c[0]=b.Fc[0],b.$c[1]=b.Fc[1],b.xd=Wc(a.F,a.ka))}}}function Il(a,b){var c=a.W[b],d=c.Fc[1]<<8|c.Fc[0];d||(d=1==c.nd?256:65536);return d}function cd(a,b){var c=a.W[b],d=c.$c[1]<<8|c.$c[0];d||(d=1==c.nd?256:65536);return d}function Ll(a,b){Nk(a,b);var c=a.W[b];c.ze[0]=c.Ab[0];c.ze[1]=c.Ab[1];c.Ze=!0;Gl(a,b)}function Gl(a,b){var c=a.W[b];c.Fd=32==c.eg?1:0;c.nd=48==c.eg?2:1}
function Nk(a,b,c){var d=a.W[b];if(d.Be&&(2!=b||a.X&1)){var e=Wc(a.F,a.ka),f=(e-d.xd)/a.gb|0;0>f&&(d.xd=e,f=0);var g=Il(a,b),h=cd(a,b)-f;0==d.mode?(0>=h&&(h=0),h||(d.vd=!0,d.Be=!1,b||eg(a,0))):4==d.mode?(d.vd=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.$c[0]=h&255,d.$c[1]=h>>8&255,d.xd=e,!b&&d.vd&&eg(a,0))):6==d.mode&&(h-=f,0>=h&&(d.vd=!d.vd,h=g+h,0>=h&&(h=g),d.$c[0]=h&255,d.$c[1]=h>>8&255,d.xd=e,!b&&d.vd&&eg(a,0)));d.Ab[0]=h&255;d.Ab[1]=h>>8&255;c&&(a.xd=0)}return d}
@ -406,34 +406,34 @@ var g;g=a.A[9];var h=ra[a.A[8]-1];28==h&&0===g%4&&(g%100||0===g%400)&&h++;g=h;++
m.dn=function(a,b,c){x(this,a,b,c,"PPI_B");Nl(this,b)};function Nl(a,b){var c=!!(b&2),d=!!(a.X&2);a.X=b;a.B&&Ol(a.B,!(b&128),!!(b&64));c!=d&&ad(a,c)}m.Ll=function(a,b){var c=0,c=5150==(this.ia|0)?this.X&4?c|this.C[1][1]&15:c|this.C[1][1]>>4&1:this.X&8?c|this.C[0][1]>>4:c|this.C[0][1]&15;this.X&1&&Nk(this,2).vd&&(c=this.X&2?c|32:c|16);x(this,a,null,b,"PPI_C",c,32896);return c};m.en=function(a,b,c){x(this,a,b,c,"PPI_C");this.rb=b};m.Ml=function(a,b){var c=this.Ca;x(this,a,null,b,"PPI_CTRL",c);return c};
m.fn=function(a,b,c){x(this,a,b,c,"PPI_CTRL");this.Ca=b};m.Wk=function(a,b){var c=this.B?Ml(this.B):0;x(this,a,null,b,"8041_KBD",c);this.wa&=-2;return c};m.om=function(a,b,c){x(this,a,b,c,"8041_KBD")};m.Vk=function(a,b){var c=this.X;x(this,a,null,b,"8041_CTRL",c);return c};m.nm=function(a,b,c){x(this,a,b,c,"8041_CTRL");Nl(this,b)};m.Xk=function(a,b){var c=this.wa;x(this,a,null,b,"8041_STATUS",c);return c};
m.Yk=function(a,b){var c=this.Ja;x(this,a,null,b,"8042_OUTBUFF",c,16384);this.N&=-258;this.B&&Pl(this.B);return c};
m.qm=function(a,b,c){x(this,a,b,c,"8042_INBUF.DATA",null,16384);if(this.N&8)switch(this.fa){case 96:Ql(this,b);break;case 209:Rl(this,b);break;default:if(Ql(this,this.aa&-17),this.B){a=this.B;c=b;var d=-1;z(a)&&y(a,"sendCmd("+t(c)+")");switch(a.W||c){case 255:d=250;Sl(a);break;case 243:a.W&&(c=0);Tl(a,250);a.W=c;break;case 237:a.W&&(c=0);Tl(a,250);a.W=c;break;default:y(a,"sendCmd(): unrecognized command")}Ul(this,d)}}this.fa=b;this.N&=-9};
m.qm=function(a,b,c){x(this,a,b,c,"8042_INBUF.DATA",null,16384);if(this.N&8)switch(this.fa){case 96:Ql(this,b);break;case 209:Rl(this,b);break;default:if(Ql(this,this.aa&-17),this.B){a=this.B;c=b;var d=-1;A(a)&&y(a,"sendCmd("+t(c)+")");switch(a.W||c){case 255:d=250;Sl(a);break;case 243:a.W&&(c=0);Tl(a,250);a.W=c;break;case 237:a.W&&(c=0);Tl(a,250);a.W=c;break;default:y(a,"sendCmd(): unrecognized command")}Ul(this,d)}}this.fa=b;this.N&=-9};
m.Zk=function(a,b){var c=this.X&-209|(Wc(this.F)&64?16:0);x(this,a,null,b,"8042_RWREG",c,16384);return c};m.rm=function(a,b,c){x(this,a,b,c,"8042_RWREG",null,16384);Nl(this,b)};m.$k=function(a,b){x(this,a,null,b,"8042_STATUS",this.N,16384);var c=this.N&255;this.N&256&&(this.N|=1,this.N&=-257);return c};
m.pm=function(a,b,c){x(this,a,b,c,"8042_INBUFF.CMD",null,16384);this.fa=b;this.N|=8;a=0;240<=this.fa&&(a=this.fa^15,this.fa=240);switch(this.fa){case 32:Ul(this,this.aa);break;case 173:Ql(this,this.aa|16);break;case 174:Ql(this,this.aa&-17);this.B&&Pl(this.B);break;case 170:this.B&&(a=this.B,a.A=[],z(a)&&y(a,"scan codes flushed"));Ql(this,this.aa|16);Ul(this,85);Rl(this,3);break;case 171:Ul(this,0);break;case 192:Ul(this,this.ga);break;case 208:Ul(this,this.Ka);break;case 224:Ul(this,this.aa&16?0:
m.pm=function(a,b,c){x(this,a,b,c,"8042_INBUFF.CMD",null,16384);this.fa=b;this.N|=8;a=0;240<=this.fa&&(a=this.fa^15,this.fa=240);switch(this.fa){case 32:Ul(this,this.aa);break;case 173:Ql(this,this.aa|16);break;case 174:Ql(this,this.aa&-17);this.B&&Pl(this.B);break;case 170:this.B&&(a=this.B,a.A=[],A(a)&&y(a,"scan codes flushed"));Ql(this,this.aa|16);Ul(this,85);Rl(this,3);break;case 171:Ul(this,0);break;case 192:Ul(this,this.ga);break;case 208:Ul(this,this.Ka);break;case 224:Ul(this,this.aa&16?0:
1);break;case 240:a&1&&qe(this.F)}};function Ql(a,b){a.aa=b;a.N=a.N&-5|b&4;a.B&&Ol(a.B,!!(b&8),!(b&16))}function Ul(a,b,c){0<=b&&(a.Ja=b,c?a.N|=1:(a.N&=-2,a.N|=256))}function Rl(a,b){a.Ka=b;Rb(a.ea,!!(b&2));b&1||qe(a.F)}function Vl(a,b){a.ia<cg?(eg(a,1,4),a.wa|=1):a.aa&16||a.N&257||(Ul(a,b,!0),Wl(a.B),eg(a,1,120))}function Xl(a,b,c,d){var e=a.C[b][1];x(a,c,null,d,"DIPSW-"+b,e,32768);return e}m.nl=function(a,b){x(this,a,null,b,"CMOS.ADDR",this.pa,4096);return this.pa};
m.Fm=function(a,b,c){x(this,a,b,c,"CMOS.ADDR",null,4096);this.pa=b;this.ya=b&128?0:128};m.ol=function(a,b){var c=this.pa&63,d=13>=c?Ok(this,c):this.A[c];z(this,4352)&&x(this,a,null,b,"CMOS.DATA["+t(c)+"]",d,!0);null!=b&&12==c&&(this.A[c]&=15,d&128&&dg(this,8),d&64&&this.A[11]&64&&Yk(this));return d};
m.Gm=function(a,b,c){var d=this.pa&63;z(this,4352)&&x(this,a,b,c,"CMOS.DATA["+t(d)+"]",null,!0);a=b^this.A[d];if(13>=d){if(c=b,10>d){var e=!1;this.A[11]&4||(c=10*(c>>4)+(c&15),e=!0);if(4==d||5==d)e&&23<c&&(c+=48),this.A[11]&2||(12>=c?c=12==c?0:c:(c-=116,c=24==c?12:c))}}else c=b;this.A[d]=c;11==d&&a&64&&b&64&&Yk(this)};m.fk=function(a,b,c){x(this,a,b,c,"NMI");this.ya=b};m.Qm=function(a,b,c){x(this,a,b,c,"FPU.CLEAR")};m.Rm=function(a,b,c){x(this,a,b,c,"FPU.RESET");this.Tb&&Yf(this.Tb)};
m.$l=function(a){if(z(this,16)&&kk(this.ha,26,a)){var b=this.F.G>>8;df(this.F,a,function(a,d){return function(e){d=Wc(a.F)-d;var f,g=a.F.M&255,h=a.F.M>>8,k=a.F.M&255,l=a.F.M>>8;if(2==b||3==b)f=" CH(hour)="+u(h)+" CL(min)="+t(g)+" DH(sec)="+t(l);else if(4==b||5==b)f=" CX(year)="+u(a.F.I)+" DH(month)="+t(l)+" DL(day)="+t(k);g=a.ha;h=d;g.message("INT "+t(26)+": C="+(pf(g.F)?1:0)+(f||"")+" (cycles="+h+(e?",level="+(e+1):"")+")")}}(this,Wc(this.F)))}return!0};
function ad(a,b){if(a.Fa)try{void 0!==b?a.Db=b:b=a.Db&&a.F&&a.F.la.Ib;var c=Math.round(1193181/Il(a,2));if(20>c||2E4<c)b=!1;b?a.U?(a.U.frequency.value=c,z(a,33554432)&&y(a,"speaker set to "+c+"hz",!0)):(a.U=a.Fa.createOscillator(),a.U&&(a.U.type="number"==typeof a.U.type?1:"square",a.U.connect(a.Fa.destination),a.U.frequency.value=c,"start"in a.U?a.U.start(0):a.U.noteOn(0),z(a,33554432)&&y(a,"speaker on at "+c+"hz",!0))):a.U&&("stop"in a.U?a.U.stop(0):a.U.noteOff(0),a.U.disconnect(),delete a.U,z(a,
m.Fm=function(a,b,c){x(this,a,b,c,"CMOS.ADDR",null,4096);this.pa=b;this.ya=b&128?0:128};m.ol=function(a,b){var c=this.pa&63,d=13>=c?Ok(this,c):this.A[c];A(this,4352)&&x(this,a,null,b,"CMOS.DATA["+t(c)+"]",d,!0);null!=b&&12==c&&(this.A[c]&=15,d&128&&dg(this,8),d&64&&this.A[11]&64&&Yk(this));return d};
m.Gm=function(a,b,c){var d=this.pa&63;A(this,4352)&&x(this,a,b,c,"CMOS.DATA["+t(d)+"]",null,!0);a=b^this.A[d];if(13>=d){if(c=b,10>d){var e=!1;this.A[11]&4||(c=10*(c>>4)+(c&15),e=!0);if(4==d||5==d)e&&23<c&&(c+=48),this.A[11]&2||(12>=c?c=12==c?0:c:(c-=116,c=24==c?12:c))}}else c=b;this.A[d]=c;11==d&&a&64&&b&64&&Yk(this)};m.fk=function(a,b,c){x(this,a,b,c,"NMI");this.ya=b};m.Qm=function(a,b,c){x(this,a,b,c,"FPU.CLEAR")};m.Rm=function(a,b,c){x(this,a,b,c,"FPU.RESET");this.Tb&&Yf(this.Tb)};
m.$l=function(a){if(A(this,16)&&kk(this.ha,26,a)){var b=this.F.G>>8;df(this.F,a,function(a,d){return function(e){d=Wc(a.F)-d;var f,g=a.F.M&255,h=a.F.M>>8,k=a.F.M&255,l=a.F.M>>8;if(2==b||3==b)f=" CH(hour)="+u(h)+" CL(min)="+t(g)+" DH(sec)="+t(l);else if(4==b||5==b)f=" CX(year)="+u(a.F.I)+" DH(month)="+t(l)+" DL(day)="+t(k);g=a.ha;h=d;g.message("INT "+t(26)+": C="+(pf(g.F)?1:0)+(f||"")+" (cycles="+h+(e?",level="+(e+1):"")+")")}}(this,Wc(this.F)))}return!0};
function ad(a,b){if(a.Fa)try{void 0!==b?a.Db=b:b=a.Db&&a.F&&a.F.la.Ib;var c=Math.round(1193181/Il(a,2));if(20>c||2E4<c)b=!1;b?a.U?(a.U.frequency.value=c,A(a,33554432)&&y(a,"speaker set to "+c+"hz",!0)):(a.U=a.Fa.createOscillator(),a.U&&(a.U.type="number"==typeof a.U.type?1:"square",a.U.connect(a.Fa.destination),a.U.frequency.value=c,"start"in a.U?a.U.start(0):a.U.noteOn(0),A(a,33554432)&&y(a,"speaker on at "+c+"hz",!0))):a.U&&("stop"in a.U?a.U.stop(0):a.U.noteOff(0),a.U.disconnect(),delete a.U,A(a,
33554432)&&y(a,"speaker off at "+c+"hz",!0))}catch(d){a.Oa("AudioContext exception: "+d.message),a.Fa=null}else b&&y(a,"BEEP",33554432)}
var Ck={0:function(a,b){return il(this,0,0,a,b)},1:function(a,b){return kl(this,0,0,a,b)},2:function(a,b){return il(this,0,1,a,b)},3:function(a,b){return kl(this,0,1,a,b)},4:function(a,b){return il(this,0,2,a,b)},5:function(a,b){return kl(this,0,2,a,b)},6:function(a,b){return il(this,0,3,a,b)},7:function(a,b){return kl(this,0,3,a,b)},8:function(a,b){return ml(this,0,a,b)},13:function(a,b){return rl(this,0,a,b)},32:function(a,b){return Al(this,0,b)},33:function(a,b){return Dl(this,0,b)},64:function(a,
b){return Fl(this,0,0,a,b)},65:function(a,b){return Fl(this,0,1,a,b)},66:function(a,b){return Fl(this,0,2,a,b)},67:function(a,b){return Jl(this,0,a,b)},129:function(a,b){return tl(this,0,2,a,b)},130:function(a,b){return tl(this,0,3,a,b)},131:function(a,b){return tl(this,0,1,a,b)},135:function(a,b){return tl(this,0,0,a,b)}},Ek={96:pk.prototype.Jl,97:pk.prototype.Kl,98:pk.prototype.Ll,99:pk.prototype.Ml},Ik={96:pk.prototype.Yk,97:pk.prototype.Zk,100:pk.prototype.$k,112:pk.prototype.nl,113:pk.prototype.ol,
128:function(a,b){return vl(this,7,a,b)},132:function(a,b){return vl(this,0,a,b)},133:function(a,b){return vl(this,1,a,b)},134:function(a,b){return vl(this,2,a,b)},136:function(a,b){return vl(this,3,a,b)},137:function(a,b){return tl(this,1,2,a,b)},138:function(a,b){return tl(this,1,3,a,b)},139:function(a,b){return tl(this,1,1,a,b)},140:function(a,b){return vl(this,4,a,b)},141:function(a,b){return vl(this,5,a,b)},142:function(a,b){return vl(this,6,a,b)},143:function(a,b){return tl(this,1,0,a,b)},160:function(a,
b){return Al(this,1,b)},161:function(a,b){return Dl(this,1,b)},192:function(a,b){return il(this,1,0,a,b)},194:function(a,b){return kl(this,1,0,a,b)},196:function(a,b){return il(this,1,1,a,b)},198:function(a,b){return kl(this,1,1,a,b)},200:function(a,b){return il(this,1,2,a,b)},202:function(a,b){return kl(this,1,2,a,b)},204:function(a,b){return il(this,1,3,a,b)},206:function(a,b){return kl(this,1,3,a,b)},208:function(a,b){return ml(this,1,a,b)},218:function(a,b){return rl(this,1,a,b)}},Gk={96:pk.prototype.Wk,
97:pk.prototype.Vk,100:pk.prototype.Xk,102:function(a,b){return Xl(this,0,a,b)},103:function(a,b){return Xl(this,1,a,b)}},Kk={72:function(a,b){return Fl(this,1,0,a,b)},73:function(a,b){return Fl(this,1,1,a,b)},74:function(a,b){return Fl(this,1,2,a,b)},75:function(a,b){return Jl(this,1,a,b)}},Dk={0:function(a,b,c){jl(this,0,0,a,b,c)},1:function(a,b,c){ll(this,0,0,a,b,c)},2:function(a,b,c){jl(this,0,1,a,b,c)},3:function(a,b,c){ll(this,0,1,a,b,c)},4:function(a,b,c){jl(this,0,2,a,b,c)},5:function(a,b,
c){ll(this,0,2,a,b,c)},6:function(a,b,c){jl(this,0,3,a,b,c)},7:function(a,b,c){ll(this,0,3,a,b,c)},8:function(a,b,c){z(this,768)&&x(this,a,b,c,"DMA0.CMD",null,!0);this.L[0].Wg=b},9:function(a,b,c){nl(this,0,a,b,c)},10:function(a,b,c){ol(this,0,a,b,c)},11:function(a,b,c){ql(this,0,a,b,c)},12:function(a,b,c){z(this,768)&&x(this,a,b,c,"DMA0.RESET_FF",null,!0);this.L[0].Kb=0},13:function(a,b,c){sl(this,0,a,b,c)},32:function(a,b,c){Bl(this,0,b,c)},33:function(a,b,c){El(this,0,b,c)},64:function(a,b,c){Hl(this,
c){ll(this,0,2,a,b,c)},6:function(a,b,c){jl(this,0,3,a,b,c)},7:function(a,b,c){ll(this,0,3,a,b,c)},8:function(a,b,c){A(this,768)&&x(this,a,b,c,"DMA0.CMD",null,!0);this.L[0].Wg=b},9:function(a,b,c){nl(this,0,a,b,c)},10:function(a,b,c){ol(this,0,a,b,c)},11:function(a,b,c){ql(this,0,a,b,c)},12:function(a,b,c){A(this,768)&&x(this,a,b,c,"DMA0.RESET_FF",null,!0);this.L[0].Kb=0},13:function(a,b,c){sl(this,0,a,b,c)},32:function(a,b,c){Bl(this,0,b,c)},33:function(a,b,c){El(this,0,b,c)},64:function(a,b,c){Hl(this,
0,0,a,b,c)},65:function(a,b,c){Hl(this,0,1,a,b,c)},66:function(a,b,c){Hl(this,0,2,a,b,c)},67:function(a,b,c){Kl(this,0,a,b,c)},129:function(a,b,c){ul(this,0,2,a,b,c)},130:function(a,b,c){ul(this,0,3,a,b,c)},131:function(a,b,c){ul(this,0,1,a,b,c)},135:function(a,b,c){ul(this,0,0,a,b,c)}},Fk={96:pk.prototype.cn,97:pk.prototype.dn,98:pk.prototype.en,99:pk.prototype.fn,160:pk.prototype.fk},Jk={96:pk.prototype.qm,97:pk.prototype.rm,100:pk.prototype.pm,112:pk.prototype.Fm,113:pk.prototype.Gm,128:function(a,
b,c){wl(this,7,a,b,c)},132:function(a,b,c){wl(this,0,a,b,c)},133:function(a,b,c){wl(this,1,a,b,c)},134:function(a,b,c){wl(this,2,a,b,c)},136:function(a,b,c){wl(this,3,a,b,c)},137:function(a,b,c){ul(this,1,2,a,b,c)},138:function(a,b,c){ul(this,1,3,a,b,c)},139:function(a,b,c){ul(this,1,1,a,b,c)},140:function(a,b,c){wl(this,4,a,b,c)},141:function(a,b,c){wl(this,5,a,b,c)},142:function(a,b,c){wl(this,6,a,b,c)},143:function(a,b,c){ul(this,1,0,a,b,c)},160:function(a,b,c){Bl(this,1,b,c)},161:function(a,b,
c){El(this,1,b,c)},192:function(a,b,c){jl(this,1,0,a,b,c)},194:function(a,b,c){ll(this,1,0,a,b,c)},196:function(a,b,c){jl(this,1,1,a,b,c)},198:function(a,b,c){ll(this,1,1,a,b,c)},200:function(a,b,c){jl(this,1,2,a,b,c)},202:function(a,b,c){ll(this,1,2,a,b,c)},204:function(a,b,c){jl(this,1,3,a,b,c)},206:function(a,b,c){ll(this,1,3,a,b,c)},208:function(a,b,c){z(this,768)&&x(this,a,b,c,"DMA1.CMD",null,!0);this.L[1].Wg=b},210:function(a,b,c){nl(this,1,a,b,c)},212:function(a,b,c){ol(this,1,a,b,c)},214:function(a,
b,c){ql(this,1,a,b,c)},216:function(a,b,c){z(this,768)&&x(this,a,b,c,"DMA1.RESET_FF",null,!0);this.L[1].Kb=0},218:function(a,b,c){sl(this,1,a,b,c)},240:pk.prototype.Qm,241:pk.prototype.Rm},Hk={96:pk.prototype.om,97:pk.prototype.nm,160:pk.prototype.fk},Lk={72:function(a,b,c){Hl(this,1,0,a,b,c)},73:function(a,b,c){Hl(this,1,1,a,b,c)},74:function(a,b,c){Hl(this,1,2,a,b,c)},75:function(a,b,c){Kl(this,1,a,b,c)}};
c){El(this,1,b,c)},192:function(a,b,c){jl(this,1,0,a,b,c)},194:function(a,b,c){ll(this,1,0,a,b,c)},196:function(a,b,c){jl(this,1,1,a,b,c)},198:function(a,b,c){ll(this,1,1,a,b,c)},200:function(a,b,c){jl(this,1,2,a,b,c)},202:function(a,b,c){ll(this,1,2,a,b,c)},204:function(a,b,c){jl(this,1,3,a,b,c)},206:function(a,b,c){ll(this,1,3,a,b,c)},208:function(a,b,c){A(this,768)&&x(this,a,b,c,"DMA1.CMD",null,!0);this.L[1].Wg=b},210:function(a,b,c){nl(this,1,a,b,c)},212:function(a,b,c){ol(this,1,a,b,c)},214:function(a,
b,c){ql(this,1,a,b,c)},216:function(a,b,c){A(this,768)&&x(this,a,b,c,"DMA1.RESET_FF",null,!0);this.L[1].Kb=0},218:function(a,b,c){sl(this,1,a,b,c)},240:pk.prototype.Qm,241:pk.prototype.Rm},Hk={96:pk.prototype.om,97:pk.prototype.nm,160:pk.prototype.fk},Lk={72:function(a,b,c){Hl(this,1,0,a,b,c)},73:function(a,b,c){Hl(this,1,1,a,b,c)},74:function(a,b,c){Hl(this,1,2,a,b,c)},75:function(a,b,c){Kl(this,1,a,b,c)}};
Qa(function(){for(var a=nb(document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new pk(d);mb(d,c);hl(d)}});
function Yl(a){Ua.call(this,"ROM",a,Yl);this.A=null;this.L=a.addr;this.C=a.size;this.N=a.alias;this.V=a.file;this.U=fa(this.V);this.B=a.notify;this.W=null;if(this.B&&(a=this.B.indexOf("["),0<a)){try{this.W=eval(this.B.substr(a))}catch(d){}this.B=this.B.substr(0,a)}if(this.V){a=this.V;var b=ga(this.U);"json"!=b&&"hex"!=b&&(a=xa()+"/api/v1/dump?file="+this.V+"&format=bytes&decimal=true");var c=this;va(a,null,!0,function(a,b,f){Zl(c,a,b,f)})}}db(Yl);
Yl.prototype.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;$l(this)};Yl.prototype.ic=function(){this.Qd&&(this.ha&&am(this.ha,this.id,0,this.L>>>4,0,this.L,this.C,this.Qd),delete this.Qd);return!0};Yl.prototype.hc=function(){return!0};
function Zl(a,b,c,d){if(d)a.Oa("Unable to load system ROM (error "+d+": "+b+")");else{fb(a.ve,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,g=e.data;if(f)a.A=f;else if(g)for(a.A=Array(4*g.length),d=c=0;c<g.length;c++)a.A[d++]=g[c]&255,a.A[d++]=g[c]>>8&255,a.A[d++]=g[c]>>16&255,a.A[d++]=g[c]>>24&255;else a.A=e;a.Qd=e.symbols;if(!a.A.length){w("Empty ROM: "+b);return}if(1==a.A.length){w(a.A[0]);return}}catch(h){a.Oa("ROM data error: "+h.message);return}else for(b=c.replace(/\n/gm,
Yl.prototype.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;$l(this)};Yl.prototype.ic=function(){this.Rd&&(this.ha&&am(this.ha,this.id,0,this.L>>>4,0,this.L,this.C,this.Rd),delete this.Rd);return!0};Yl.prototype.hc=function(){return!0};
function Zl(a,b,c,d){if(d)a.Oa("Unable to load system ROM (error "+d+": "+b+")");else{fb(a.ve,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,g=e.data;if(f)a.A=f;else if(g)for(a.A=Array(4*g.length),d=c=0;c<g.length;c++)a.A[d++]=g[c]&255,a.A[d++]=g[c]>>8&255,a.A[d++]=g[c]>>16&255,a.A[d++]=g[c]>>24&255;else a.A=e;a.Rd=e.symbols;if(!a.A.length){w("Empty ROM: "+b);return}if(1==a.A.length){w(a.A[0]);return}}catch(h){a.Oa("ROM data error: "+h.message);return}else for(b=c.replace(/\n/gm,
" ").replace(/ +$/,"").split(" "),a.A=Array(b.length),e=0;e<b.length;e++)a.A[e]=ca(b[e],16);$l(a)}}
function $l(a){if(!sb(a))if(!a.V)rb(a);else if(a.A&&a.ea){if(a.A.length!=a.C)ub(a,"ROM size (0x"+r(a.A.length)+") does not match specified size ("+("0x"+r(a.C))+")");else{var b;b=a.L;if(Sb(a.ea,b,a.C,$b)){for(var c=0;c<a.A.length;c++){var d=a.ea,e=b+c;d.sa[(e&d.Gb)>>>d.La].wf(e&d.A,a.A[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.N?b.push(a.N):null!=a.N&&a.N.length&&(b=a.N);for(c=0;c<b.length;c++){var d=a,e=b[c],f=Xb(d.ea,d.L,d.C);Wb(d.ea,e,d.C,f)}a.B&&((b=hb(a.B,a.id))?(c=a.A,d=a.W,5==
b.Ua?bm(b,c,d||[12640,8752],8):b.Ua==cm&&bm(b,c,d||[14221,16269],8),rb(b)):a.Oa("Unable to find component: "+a.B));delete a.A}}rb(a)}}Qa(function(){for(var a=nb(document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new Yl(d);mb(d,c)}});function dm(a){Ua.call(this,"RAM",a,dm);this.B=a.addr;this.A=a.size;this.L=a.test;this.V=!!this.A;this.C=!1}db(dm);m=dm.prototype;m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.N=Eb(a,"ChipSet");rb(this)};
m.ic=function(a,b){return!b&&(this.reset(),a&&this.controller&&!this.restore(a))?!1:!0};m.hc=function(a){return a&&this.controller?this.save():!0};
m.reset=function(){if(!this.B&&!this.V&&this.N){var a=1024*Tk(this.N);this.A&&a!=this.A&&(Zb(this.ea,this.B,this.A),this.C=!1);this.A=a}!this.C&&this.A&&Sb(this.ea,this.B,this.A,1)&&(this.C=!0,this.status(Math.floor(this.A/1024)+"Kb allocated"),"ramCPQ"==this.de&&(this.controller=new em(this),Sb(this.ea,fm,4,4,this.controller)));if(this.C){if(this.L||fc(this.ea,1138,4660),"ramCPQ"!=this.de&&this.N&&(a=this.N,a.A)){var b=1048576>this.B?21:23,c=a.A[b]|a.A[b+1]<<8,c=c+(this.A>>10);a.A[b]=c&255;a.A[b+
m.reset=function(){if(!this.B&&!this.V&&this.N){var a=1024*Tk(this.N);this.A&&a!=this.A&&(Zb(this.ea,this.B,this.A),this.C=!1);this.A=a}!this.C&&this.A&&Sb(this.ea,this.B,this.A,1)&&(this.C=!0,this.status(Math.floor(this.A/1024)+"Kb allocated"),"ramCPQ"==this.ee&&(this.controller=new em(this),Sb(this.ea,fm,4,4,this.controller)));if(this.C){if(this.L||fc(this.ea,1138,4660),"ramCPQ"!=this.ee&&this.N&&(a=this.N,a.A)){var b=1048576>this.B?21:23,c=a.A[b]|a.A[b+1]<<8,c=c+(this.A>>10);a.A[b]=c&255;a.A[b+
1]=c>>8;Xk(a)}}else w("No RAM allocated")};m.save=function(){var a=new hf(this);this.controller&&N(a,0,this.controller.save());return a.data()};m.restore=function(a){return this.controller?this.controller.restore(a[0]):!0};function em(a){this.N=a;this.C=gm;this.ha=hm;this.B=im;this.A=null}var fm=-2134900736,gm=65535,hm=2575,im=2,jm=[null,0],km=[function(a){return this.controller.Qa(a)},null,null,function(a,b){this.controller.qc(a,b)},null,null];m=em.prototype;m.save=function(){return[this.C,this.B]};
m.restore=function(a){this.qc(0,a[0]&255);this.qc(2,a[1]&255);return!0};m.Qa=function(a){var b=255;2>a?b=a&1?this.ha>>8:this.ha&255:4>a&&(b=a&1?this.B>>8:this.B&255);return b};m.qc=function(a,b){if(a)2==a&&(this.B=this.B&-256|b);else if(b!=(this.C&255)){var c=this.N.ea;if(b&1)this.A&&(Wb(c,917504,131072,this.A),this.A=null);else{this.A||(this.A=Xb(c,917504,131072));var d=Xb(c,16646144,131072);Wb(c,917504,131072,d,b&2?1:$b)}this.C=this.C&-256|b}};m.Ri=function(){return jm};m.fh=function(){return km};
Qa(function(){for(var a=nb(document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new dm(d);mb(d,c)}});function lm(a){Ua.call(this,"Keyboard",a,lm,65536);mm(this,a.model);this.ja=Ga("Mobi");this.pa=Ga("MSIE");y(this,"mobile keyboard support: "+(this.ja?"true":"false"));this.ga=0;this.ka=this.ah=!1;this.B=[];this.ua=50;rb(this)}db(lm);
@ -449,8 +449,8 @@ Y[1115]=62;Y[1116]=63;Y[1117]=64;Y[1118]=65;Y[1119]=66;Y[1120]=67;Y[1121]=68;Y[1
m.Qb=function(a,b,c,d){var e=this,f=a+"-"+b;if(void 0===this.qa[f])switch(b){case "kbd":return c.onkeydown=function(a){return um(e,a,!0)},c.onkeypress=function(a){a=a||window.event;a=a.which||a.keyCode;e.L="";var b=!Y[a]||!!(e.xc&128);b||vm(e,a,!0);return b},c.onkeyup=function(a){return um(e,a,!1)},!0;case "caps-lock":return this.qa[f]=c,c.onclick=function(){e.V&&e.V.yd();vm(e,1020,!0)},!0;case "num-lock":return this.qa[f]=c,c.onclick=function(){e.V&&e.V.yd();vm(e,1144,!0)},!0;case "scroll-lock":return this.qa[f]=
c,c.onclick=function(){e.V&&e.V.yd();vm(e,1145,!0)},!0;default:var g=b.toUpperCase().replace(/-/g,"_");if(void 0!==rm[g]&&"button"==a)return this.qa[f]=c,c.onclick=function(a,b,c){return function(){a.V&&a.V.yd();wm(a,c,!0);vm(a,c,!0)}}(this,g,rm[g]),!0;if(void 0!==sm[b])return this.ga++,this.qa[f]=c,a=function(a,b,c){return function(){vm(a,c)}}(this,b,sm[b]),b=function(a,b,c){return function(){xm(a,c)}}(this,b,sm[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=a,c.onmouseup=
c.onmouseout=b),!0;if(d)return this.qa[f]=c,c.onclick=function(){e.V&&e.V.yd();d&&!e.L&&(e.L=d,ym(e,300))},!0}return!1};function zm(a,b,c){if(a.ga){for(var d in pm)if(b==pm[d]){b=+d;(d=om[d])&&(b=d);break}for(var e in sm)if((d=sm[e]==b)||(d=b,97<=d&&122>=d&&(d-=32),d=sm[e]==d),d){(a=a.qa["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}m.Ic=function(a,b,c,d){this.V=a;this.ea=b;this.F=c;this.ha=d;this.N=Eb(a,"ChipSet")};
function mm(a,b){var c=0;a.ia=null;b&&(a.ia=b.toUpperCase(),c=nm.indexOf(a.ia),0>c&&(c=0));b=nm[c];a.ra=parseInt(b.substr(2),10)}function Sl(a){y(a,"keyboard reset",65792);a.A=[];Tl(a,170)}function Ol(a,b,c){a.aa!==c&&(a.aa=a.fa=c)&&(a.U=!0);a.X!==b&&(a.X=b)&&!a.fa&&Wl(a,!0);a.X&&a.fa&&(Sl(a),a.fa=!1)}function Tl(a,b){a.N&&(a.A.unshift(b),a.U=!0,Vl(a.N,b))}function Pl(a){var b=0;a.A.length&&a.U&&(b=a.A[0],a.N&&Vl(a.N,b));z(a)&&y(a,b?"scan code "+t(b)+" available":"no scan codes available")}
function Ml(a){var b=0;a.A.length&&(b=a.A[0]);z(a)&&y(a,"scan code "+t(b)+" delivered");return b}function Wl(a,b){0<a.A.length&&(a.A.shift(),(a.U=b)&&(a.A.length&&a.N?Vl(a.N,a.A[0]):b=!1),z(a)&&y(a,"scan codes shifted, notify "+(b?"true":"false")))}m.ic=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};m.hc=function(a){return a?this.save():!0};
function mm(a,b){var c=0;a.ia=null;b&&(a.ia=b.toUpperCase(),c=nm.indexOf(a.ia),0>c&&(c=0));b=nm[c];a.ra=parseInt(b.substr(2),10)}function Sl(a){y(a,"keyboard reset",65792);a.A=[];Tl(a,170)}function Ol(a,b,c){a.aa!==c&&(a.aa=a.fa=c)&&(a.U=!0);a.X!==b&&(a.X=b)&&!a.fa&&Wl(a,!0);a.X&&a.fa&&(Sl(a),a.fa=!1)}function Tl(a,b){a.N&&(a.A.unshift(b),a.U=!0,Vl(a.N,b))}function Pl(a){var b=0;a.A.length&&a.U&&(b=a.A[0],a.N&&Vl(a.N,b));A(a)&&y(a,b?"scan code "+t(b)+" available":"no scan codes available")}
function Ml(a){var b=0;a.A.length&&(b=a.A[0]);A(a)&&y(a,"scan code "+t(b)+" delivered");return b}function Wl(a,b){0<a.A.length&&(a.A.shift(),(a.U=b)&&(a.A.length&&a.N?Vl(a.N,a.A[0]):b=!1),A(a)&&y(a,"scan codes shifted, notify "+(b?"true":"false")))}m.ic=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};m.hc=function(a){return a?this.save():!0};
m.reset=function(){if(!this.ia&&this.N)switch(this.N.ia){case 5150:case 5160:mm(this,nm[0]);break;default:mm(this,nm[1])}Am(this);this.xc=this.C=0;this.A=[];this.U=!0;this.L=""};m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.aa;c[b]=this.X;N(a,0,c);return a.data()};m.restore=function(a){return Am(this,a[0])};function Am(a,b){var c=0;void 0===b&&(b=[]);a.aa=a.U=b[c++];a.X=b[c];a.W=0;return!0}
function ym(a,b){if(0<a.L.length){var c=a.L.charCodeAt(0);10==c&&(c=13);a.L=a.L.substr(1);vm(a,c,!0)}0<a.L.length&&setTimeout(function(a){return function(){ym(a,b)}}(a),b)}
function wm(a,b,c,d){if(Y[b]){var e=Math.floor(b/1E3)&2;if(b=qm[b]||0){!e||b&85||(b>>=1);if(b&3584){if(!1===d)return!0;d=null}null==d?d=!((c?a.C:a.xc)&b):d||b&255&&(b=255);if(c){a.C&=~b;d&&(a.C|=b);c=b;var f,g;for(g in tm)d="led-"+g,e=tm[g],c&&c!=e||!(f=a.qa[d])||(f.style.backgroundColor=a.C&e?"#00ff00":"#000000")}else a.xc&=~b,d&&(a.xc|=b);return!0}}return!1}
@ -458,10 +458,10 @@ function vm(a,b,c){if(Y[b]&&a.F&&a.F.la.Ib){qm[b]&&a.B.length&&0<a.B[0].Ld&&(a.B
function xm(a,b,c){if(!Y[b]||!(c||a.F&&a.F.la.Ib))return!1;for(var d=!1,e=0;e<a.B.length;e++){var f=a.B[e];if(f.Me==b||f.Me==pm[b]){a.B.splice(e,1);f.qk&&clearTimeout(f.qk);f.Ef&&!c&&Cm(a,f.Me,!1);zm(a,b,!1);d=!0;break}}!a.B.length&&a.ka&&(wm(a,1020),a.ka=!1);return d}function Bm(a,b){if(!a.F||!a.F.la.Ib)xm(a,b.Me,!0);else if(Cm(a,b.Me,b.Ef)&&b.Ld){var c;if(0>b.Ld){if(!b.Ef){xm(a,b.Me);return}b.Ef=!1;c=a.ua}else c=1==b.Ld++?500:100;b.qk=setTimeout(function(a){return function(){Bm(a,b)}}(a),c)}}
function Dm(a,b,c){var d=b;if(65<=b&&90>=b)!(a.xc&515)==c&&(d=b+32);else if(97<=b&&122>=b)!!(a.xc&515)==c&&(d=b-32);else if(!!(a.xc&3)==c){if(a=pm[b])d=a}else if(a=om[b])d=a;return d}m.Fg=function(a){a||(this.xc&=-256)};
function um(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode,h=Dm(a,g,!0);a.ah&&h==X["`"]&&(g=h=27);if(Y[g+1E3])if(h+=1E3,2==b.location&&(h+=2E3),wm(a,h,!1,c)){if(20==g||144==g||145==g)a.pa||(c=e=!0);if(!(c||91!=g&&93!=g))for(var k=0;k<a.B.length;k++){var l=a.B[k];l.Ef=!1;0<l.Ld&&(l.Ld=0)}}else 8==g&&8==(a.xc&40)&&(h=4008),d=!1;else if(Y[h]&&a.xc&60&&(d=!1),d&&c||a.xc&192)f=!0;d||b.preventDefault();f||a.ja&&d||(c?vm(a,h,e):xm(a,h)||(b=Dm(a,g,!1),b!=h&&xm(a,b)));return d}
function Cm(a,b,c){var d=!1;wm(a,b,!0,c);var e=Y[b]||Y[b+1E3];if(void 0!==e){14==e&&40==(a.xc&40)&&(e=83);var d=[],f=e&255;if(83<f&&83==a.ra)return!1;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,h=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==h?a.C&3||a.C&512&&b||(g=h):29==h?a.C&12||(g=h):56==h?a.C&48||(g=h):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)e=a,f=d[c],e.A&&(20>e.A.length?(z(e)&&y(e,"scan code "+t(f)+" buffered"),e.A.push(f),1==
function Cm(a,b,c){var d=!1;wm(a,b,!0,c);var e=Y[b]||Y[b+1E3];if(void 0!==e){14==e&&40==(a.xc&40)&&(e=83);var d=[],f=e&255;if(83<f&&83==a.ra)return!1;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,h=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==h?a.C&3||a.C&512&&b||(g=h):29==h?a.C&12||(g=h):56==h?a.C&48||(g=h):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)e=a,f=d[c],e.A&&(20>e.A.length?(A(e)&&y(e,"scan code "+t(f)+" buffered"),e.A.push(f),1==
e.A.length&&e.N&&Vl(e.N,f)):(20==e.A.length&&e.A.push(255),y(e,"scan code buffer overflow")));d=!0}return d}Qa(function(){for(var a=nb(document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new lm(d);mb(d,c)}});
function Z(a,b,c,d,e){Ua.call(this,"Video",a,Z,262144);this.ia=a.model;var f=Em[this.ia]||Em.mda;this.Ua=f[0];this.Ed=a.memory||0;this.ag=a.switches;this.wa=a.mode;if(null==this.wa||null==Fm[this.wa])this.wa=f[1];this.kd=a.charCols;this.ke=a.charRows;if(void 0===this.kd||void 0===this.ke)this.kd=Fm[this.wa][0],this.ke=Fm[this.wa][1];this.ua=a.screenWidth;this.Ea=a.screenHeight;this.sn=a.scale;this.pi=12<=Math.round(this.ua/this.kd);this.pa=b;this.ja=c;this.V=(this.vk=d)||b||null;this.bg=a.touchScreen;
this.le=Gm;this.W=null;this.Og=a.autoLock;this.ob=this.ac=0;this.Na=[];this.Ca=Array(this.Ua==cm?256:16);this.rb=!1;var g=this;this.qf=Ga("Gecko/");b=["","moz","webkit","ms"];if(this.ga=e)if(this.ga.We=e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen,this.ga.We){for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenchange","on"+c in document){document.addEventListener(c,function(){Hm(g,document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||
function Z(a,b,c,d,e){Ua.call(this,"Video",a,Z,262144);this.ia=a.model;var f=Em[this.ia]||Em.mda;this.Ua=f[0];this.Ed=a.memory||0;this.ag=a.switches;this.wa=a.mode;if(null==this.wa||null==Fm[this.wa])this.wa=f[1];this.kd=a.charCols;this.le=a.charRows;if(void 0===this.kd||void 0===this.le)this.kd=Fm[this.wa][0],this.le=Fm[this.wa][1];this.ra=a.screenWidth;this.Ea=a.screenHeight;this.sn=a.scale;this.pi=12<=Math.round(this.ra/this.kd);this.ka=b;this.ja=c;this.V=(this.vk=d)||b||null;this.bg=a.touchScreen;
this.me=Gm;this.W=null;this.Og=a.autoLock;this.ob=this.ac=0;this.Na=[];this.Ca=Array(this.Ua==cm?256:16);this.rb=!1;var g=this;this.qf=Ga("Gecko/");b=["","moz","webkit","ms"];if(this.ga=e)if(this.ga.We=e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen,this.ga.We){for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenchange","on"+c in document){document.addEventListener(c,function(){Hm(g,document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||
document.msFullscreenElement?!0:!1)},!1);break}for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenerror","on"+c in document){document.addEventListener(c,function(){Hm(g,null)},!1);break}}this.V&&(this.V.onfocus=function(){return g.Fg(!0)},this.V.onblur=function(){return g.Fg(!1)},this.V.De=this.V.requestPointerLock||this.V.mozRequestPointerLock||this.V.webkitRequestPointerLock,this.V.rk=this.V.exitPointerLock||this.V.mozExitPointerLock||this.V.webkitExitPointerLock,this.V.De&&(e=function(){g.Vf(document.pointerLockElement===
g.V||document.mozPointerLockElement===g.V||document.webkitPointerLockElement===g.V)},"onpointerlockchange"in document?document.addEventListener("pointerlockchange",e,!1):"onmozpointerlockchange"in document?document.addEventListener("mozpointerlockchange",e,!1):"onwebkitpointerlockchange"in document&&document.addEventListener("webkitpointerlockchange",e,!1)));if(a=a.fontROM)"json"!=ga(a)&&(a=xa()+"/api/v1/dump?file="+a+"&format=bytes"),va(a,null,!0,function(a,b,c){Im(g,a,b,c)})}db(Z);
var cm=7,Em={mda:[1,7],cga:[3,3],ega:[5,3],vga:[cm,3]},Jm={2:{Bg:15700,Ag:208,Gg:85,Hg:96},3:{Bg:18432,Ag:364,Gg:85,Hg:96},4:{Bg:21850,Ag:364,Gg:85,Hg:96},7:{Bg:16700,Ag:480,Gg:85,Hg:83}},Km={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]},Fm=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192],[80,25,1,0,1]];Fm[13]=[320,200,8];Fm[14]=[640,200,8];Fm[15]=[640,350,8];Fm[16]=[640,350,8];
@ -469,74 +469,74 @@ Fm[17]=[640,480,8];Fm[18]=[640,480,8];Fm[19]=[320,200,1];Fm[20]=[320,240,4];Fm[2
var Lm=[[0,0,0,255],[127,192,127,255],[127,192,127,255],[127,255,127,255],[127,255,127,255]],Mm=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],Nm=[[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]],Om=[2,4,6],Pm=[3,5,7],Qm=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],Rm=[0,255,65280,65535,16711680,16711935,16776960,
16777215,-16777216,-16776961,-16711936,-16711681,-65536,-65281,-256,-1],Sm=[0];Sm[128]=1;Sm[32768]=2;Sm[32896]=3;Sm[8388608]=4;Sm[8388736]=5;Sm[8421376]=6;Sm[8421504]=7;Sm[-2147483648]=8;Sm[-2147483520]=9;Sm[-2147450880]=10;Sm[-2147450752]=11;Sm[-2139095040]=12;Sm[-2139094912]=13;Sm[-2139062272]=14;Sm[-2139062144]=15;
function Tm(a,b,c,d){if(void 0!==b&&(!c||c.length)){this.video=a;var e=Um[b],f=a.ya||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(5>b?Vm:Wm)];this.ha=a.ha;this.type=e[0];this.port=e[1];this.Ua=b;this.ob=e[2];this.ac=e[3];this.Ed=d||e[4];65536<=this.Ed&&720896<=this.ob&&(this.ac=Math.min(this.Ed>>2,32768));this.Hc=c[0];this.gd=c[1];this.sf=c[2];this.ma=c[3];this.Ac=c[4]&255;this.Ig=c[4]>>8&255;this.mb=c[5];this.mh=Vm;this.jg=Xm;if(5<=b){this.mh=Wm;this.jg=Ym;b=c[6];void 0===b&&(b=[!1,0,Array(20),
0,3==f?0:1,0,0,Array(5),0,0,0,Array(9),0,[this.ob,this.ac,this.Ed],Array(this.Ed>>2),-2147478512,0,-1,0,-1,0,-1,0,0,0,0,1,255,0,0,0,Array(256)]);this.Xe=b[0];this.Nd=b[1];this.Tc=b[2];this.Sg=Zm;this.Lg=b[3];this.uf=b[4];this.dg=b[5];this.be=b[6];this.Je=b[7];this.Ug=$m;this.gk=b[8];this.hk=b[9];this.ae=b[10];this.$d=b[11];this.Tg=an;this.Fb=b[12];d=b[13];"number"==typeof d&&(d=[this.ob,this.ac,d]);this.ob=d[0];this.ac=d[1];d=this.Ed>>2;if((this.sd=b[14])&&this.sd.length<d){for(var e=this.sd,g=0,
h=Array(d),k=0;k<e.length-1;){for(var l=e[k++],n=e[k++];l--;)h[g]=n,g+=2;g==d&&(g=1)}this.sd=h}(d=b[15])&&(d&-2147483648?d&=2147483647:d=bn[d&65280]|bn[d&255]);this.Mg(d);this.ci=b[16];this.qb=b[17];this.dd=b[18];this.Mb=b[19];this.Uf=b[20];this.Zd=b[21];this.pe=b[22];this.nh=b[23];this.oh=b[24];this.qe=b[25];this.di=this.pf=0;this.Ua==cm&&(this.ki=b[26],this.ji=b[27],this.pd=b[28],this.Kc=b[29],this.Jg=b[30],this.tf=b[31])}f=Jm[f]||Jm[3];this.ph=a.F.Y.Jd/f.Bg|0;this.im=this.ph*f.Gg/100|0;this.sh=
0,3==f?0:1,0,0,Array(5),0,0,0,Array(9),0,[this.ob,this.ac,this.Ed],Array(this.Ed>>2),-2147478512,0,-1,0,-1,0,-1,0,0,0,0,1,255,0,0,0,Array(256)]);this.Xe=b[0];this.Od=b[1];this.Tc=b[2];this.Sg=Zm;this.Lg=b[3];this.uf=b[4];this.dg=b[5];this.ce=b[6];this.Je=b[7];this.Ug=$m;this.gk=b[8];this.hk=b[9];this.be=b[10];this.ae=b[11];this.Tg=an;this.Fb=b[12];d=b[13];"number"==typeof d&&(d=[this.ob,this.ac,d]);this.ob=d[0];this.ac=d[1];d=this.Ed>>2;if((this.sd=b[14])&&this.sd.length<d){for(var e=this.sd,g=0,
h=Array(d),k=0;k<e.length-1;){for(var l=e[k++],n=e[k++];l--;)h[g]=n,g+=2;g==d&&(g=1)}this.sd=h}(d=b[15])&&(d&-2147483648?d&=2147483647:d=bn[d&65280]|bn[d&255]);this.Mg(d);this.ci=b[16];this.qb=b[17];this.dd=b[18];this.Mb=b[19];this.Uf=b[20];this.$d=b[21];this.qe=b[22];this.nh=b[23];this.oh=b[24];this.Md=b[25];this.di=this.pf=0;this.Ua==cm&&(this.ki=b[26],this.ji=b[27],this.pd=b[28],this.Kc=b[29],this.Jg=b[30],this.tf=b[31])}f=Jm[f]||Jm[3];this.ph=a.F.Y.Jd/f.Bg|0;this.im=this.ph*f.Gg/100|0;this.sh=
this.ph*f.Ag|0;this.km=this.sh*f.Hg/100|0;this.uh=c[7]||0}}
var Vm=18,Wm=25,Xm="HTOTAL HDISP HSYNC_POS HSYNC_WIDTH VTOTAL VTOTAL_ADJ VDISP VSYNC_POS INTERLACE_POS MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO".split(" "),Ym="HTOTAL HDISP_END HBLANK_START HBLANK_END HRETRACE_START HRETRACE_END VTOTAL OVERFLOW PRESET_SCAN MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO VRETRACE_START VRETRACE_END VDISP_END OFFSET UNDERLINE VBLANK_START VBLANK_END MODE_CTRL LINE_COMPARE".split(" "),Zm=
"PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVERSCAN PLANES HPAN".split(" "),$m=["RESET","CLOCKING","MAPMASK","CHARMAP","MEMMODE"],an="SRESET ESRESET COLORCMP DATAROT READMAP MODE MISC COLORDC BITMASK".split(" "),bn=[,,1024,5120];bn[16]=1280;bn[512]=0;bn[1024]=32;bn[1536]=96;bn[2560]=160;bn[3584]=224;bn[768]=16;bn[4096]=1;bn[8192]=2;bn[24576]=98;bn[40960]=162;bn[57344]=226;var cn=[];
cn[1024]=function(a){a+=this.C;return(this.controller.Fb=this.da[a])>>this.controller.ci&255};cn[17408]=function(a){return(this.controller.Fb=this.da[(a&-4)+this.C])>>((a&3)<<3)&255};cn[5120]=function(a){a+=this.C;var b=this.controller.Fb=this.da[a&-2];return(a&1?b>>8:b)&255};cn[1280]=function(a){a+=this.C;a=this.controller.Fb=this.da[a];for(var b=this.controller.oh,c=this.controller.nh&b,d=0,e=128;e;)(a&b)==c&&(d|=e),c>>>=1,b>>>=1,e>>=1;return d};
cn[0]=function(a,b){var c=a+this.C,d;d=(b|b<<8|b<<16|b<<24)&this.controller.Zd|this.controller.pe;d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb;d=d&this.controller.qb|this.da[c]&~this.controller.qb;this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};
cn[32]=function(a,b){var c=a+this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.controller.Zd|this.controller.pe;d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb;d=d&this.controller.qb|this.da[c]&~this.controller.qb;this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};
cn[96]=function(a,b){var c=a+this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.controller.Zd|this.controller.pe;d&=this.controller.Fb;d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb;d=d&this.controller.qb|this.da[c]&~this.controller.qb;this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};
cn[160]=function(a,b){var c=a+this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.controller.Zd|this.controller.pe;d|=this.controller.Fb;d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb;d=d&this.controller.qb|this.da[c]&~this.controller.qb;this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};
cn[224]=function(a,b){var c=a+this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.controller.Zd|this.controller.pe;d^=this.controller.Fb;d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb;d=d&this.controller.qb|this.da[c]&~this.controller.qb;this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};cn[4]=function(a,b){var c=(a&-4)+this.C,d=(a&3)<<3,d=b<<d&this.controller.qb|this.da[c]&~(255<<d&this.controller.qb);this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};
cn[0]=function(a,b){var c=a+this.C,d;d=(b|b<<8|b<<16|b<<24)&this.controller.$d|this.controller.qe;d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb;d=d&this.controller.qb|this.da[c]&~this.controller.qb;this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};
cn[32]=function(a,b){var c=a+this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.controller.$d|this.controller.qe;d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb;d=d&this.controller.qb|this.da[c]&~this.controller.qb;this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};
cn[96]=function(a,b){var c=a+this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.controller.$d|this.controller.qe;d&=this.controller.Fb;d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb;d=d&this.controller.qb|this.da[c]&~this.controller.qb;this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};
cn[160]=function(a,b){var c=a+this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.controller.$d|this.controller.qe;d|=this.controller.Fb;d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb;d=d&this.controller.qb|this.da[c]&~this.controller.qb;this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};
cn[224]=function(a,b){var c=a+this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.controller.$d|this.controller.qe;d^=this.controller.Fb;d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb;d=d&this.controller.qb|this.da[c]&~this.controller.qb;this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};cn[4]=function(a,b){var c=(a&-4)+this.C,d=(a&3)<<3,d=b<<d&this.controller.qb|this.da[c]&~(255<<d&this.controller.qb);this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};
cn[16]=function(a,b){a+=this.C;var c,d=a&-2;c=(b|b<<8|b<<16|b<<24)&this.controller.Mb|this.controller.Fb&~this.controller.Mb;var e=this.controller.qb&(d==a?16711935:-16711936);c=c&e|this.da[d]&~e;this.da[d]!=c&&(this.da[d]=c,this.Wa=!0)};cn[1]=function(a){a=a+this.C;var b=this.da[a]&~this.controller.qb|this.controller.Fb&this.controller.qb;this.da[a]!=b&&(this.da[a]=b,this.Wa=!0)};
cn[17]=function(a){a+=this.C;var b=a&-2;a=this.controller.qb&(b==a?16711935:-16711936);a=this.da[b]&~a|this.controller.Fb&a;this.da[b]!=a&&(this.da[b]=a,this.Wa=!0)};cn[2]=function(a,b){var c=a+this.C,d=Rm[b&15],d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb,d=d&this.controller.qb|this.da[c]&~this.controller.qb;this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};
cn[98]=function(a,b){var c=a+this.C,d=Rm[b&15],d=d&this.controller.Fb,d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb,d=d&this.controller.qb|this.da[c]&~this.controller.qb;this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};cn[162]=function(a,b){var c=a+this.C,d=Rm[b&15],d=d|this.controller.Fb,d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb,d=d&this.controller.qb|this.da[c]&~this.controller.qb;this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};
cn[226]=function(a,b){var c=a+this.C,d=Rm[b&15],d=d^this.controller.Fb,d=d&this.controller.Mb|this.controller.Fb&~this.controller.Mb,d=d&this.controller.qb|this.da[c]&~this.controller.qb;this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};cn[3]=function(a,b){var c=a+this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.controller.Mb;d=this.controller.Uf&d|this.controller.Fb&~d;d=d&this.controller.qb|this.da[c]&~this.controller.qb;this.da[c]!=d&&(this.da[c]=d,this.Wa=!0)};
function dn(a){var b=[];if(void 0!==a.Ua){b[0]=a.Hc;b[1]=a.gd;b[2]=a.sf;b[3]=a.ma;b[4]=a.Ac|a.Ig<<8;b[5]=a.mb;if(5<=a.Ua){var c=[];c[0]=a.Xe;c[1]=a.Nd;c[2]=a.Tc;c[3]=a.Lg;c[4]=a.uf;c[5]=a.dg;c[6]=a.be;c[7]=a.Je;c[8]=a.gk;c[9]=a.hk;c[10]=a.ae;c[11]=a.$d;c[12]=a.Fb;c[13]=[a.ob,a.ac,a.Ed];var d;a:if(d=a.sd){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],l=h+2;l<d.length&&d[l]===k;)l+=2;f[e++]=l-h>>1;f[e++]=k;h=l}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
a.vg|-2147483648;c[16]=a.ci;c[17]=a.qb;c[18]=a.dd;c[19]=a.Mb;c[20]=a.Uf;c[21]=a.Zd;c[22]=a.pe;c[23]=a.nh;c[24]=a.oh;c[25]=a.qe;a.Ua==cm&&(c[26]=a.ki,c[27]=a.ji,c[28]=a.pd,c[29]=a.Kc,c[30]=a.Jg,c[31]=a.tf);b[6]=c}b[7]=a.uh}return b}function en(a,b,c,d,e){if(d){var f,g="";for(f=0;f<e.length;f++){var h=d===a.mb?fn(a,f):d[f];g&&(g+="\n");g+=b+"["+r(f,2)+"]: "+ma(e[f],18)+(f===c?"*":" ")+r(h,255<h?4:2);null!=h&&(g+=" ("+h+".)")}a.ha.O(g)}else a.ha.O(b+": "+r(c,2))}
function dn(a){var b=[];if(void 0!==a.Ua){b[0]=a.Hc;b[1]=a.gd;b[2]=a.sf;b[3]=a.ma;b[4]=a.Ac|a.Ig<<8;b[5]=a.mb;if(5<=a.Ua){var c=[];c[0]=a.Xe;c[1]=a.Od;c[2]=a.Tc;c[3]=a.Lg;c[4]=a.uf;c[5]=a.dg;c[6]=a.ce;c[7]=a.Je;c[8]=a.gk;c[9]=a.hk;c[10]=a.be;c[11]=a.ae;c[12]=a.Fb;c[13]=[a.ob,a.ac,a.Ed];var d;a:if(d=a.sd){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],l=h+2;l<d.length&&d[l]===k;)l+=2;f[e++]=l-h>>1;f[e++]=k;h=l}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
a.vg|-2147483648;c[16]=a.ci;c[17]=a.qb;c[18]=a.dd;c[19]=a.Mb;c[20]=a.Uf;c[21]=a.$d;c[22]=a.qe;c[23]=a.nh;c[24]=a.oh;c[25]=a.Md;a.Ua==cm&&(c[26]=a.ki,c[27]=a.ji,c[28]=a.pd,c[29]=a.Kc,c[30]=a.Jg,c[31]=a.tf);b[6]=c}b[7]=a.uh}return b}function en(a,b,c,d,e){if(d){var f,g="";for(f=0;f<e.length;f++){var h=d===a.mb?fn(a,f):d[f];g&&(g+="\n");g+=b+"["+r(f,2)+"]: "+ma(e[f],18)+(f===c?"*":" ")+r(h,255<h?4:2);null!=h&&(g+=" ("+h+".)")}a.ha.O(g)}else a.ha.O(b+": "+r(c,2))}
Tm.prototype.Ri=function(a){return[this.sd,a-this.ob]};Tm.prototype.fh=function(){return this.A};Tm.prototype.Mg=function(a){if(null!=a&&a!=this.vg){var b=a&65280,c=cn[b];c||b&4096&&(c=cn[4096]);var b=a&255,d=cn[b];d||b&16&&(d=cn[16]);this.A||(this.A=Array(6));this.A[0]=c;this.A[3]=d;this.vg=a}};
function fn(a,b){var c=a.mb[b];if(null!=c&&5<=a.Ua){var d=0,e=0,f=0;switch(b){case 6:d=1;a.Ua==cm&&(e=32);break;case 10:5==a.Ua&&(d=32);break;case 16:d=4;a.Ua==cm&&(e=128);break;case 18:d=2;a.Ua==cm&&(e=64);break;case 21:d=8;a.Ua==cm&&(f=32);break;case 24:d=16,a.Ua==cm&&(f=64)}d&&(c|=a.mb[7]&d?256:0,c|=a.mb[7]&e?512:0,c|=a.mb[9]&f?512:0)}return c}var Um=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];Um[cm]=["VGA",980,753664,16384,262144,7];var Gm=0;
m=Z.prototype;
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;c=(c=Em[this.ia])&&c[0];3!==c&&(hc(b,this,gn),lc(b,this,hn));1!==c&&(hc(b,this,jn),lc(b,this,kn));5<=this.Ua&&(hc(b,this,ln),lc(b,this,mn));this.Ua==cm&&(hc(b,this,nn),lc(b,this,on));if(d){var e=this;Mk(d,262144,function(a){if(e.C)if(a[0]){var b=e.C;if(b.sd){var c,d,f,q=!1,p=8,A=8,F=-1,v=b.video.L>>3;for(c=0;c<a.length;c++){var E=a[c];if(c){var H=E.charAt(0);d=ca(E.substr(1));switch(H){case "l":p=d;break;case "n":1<=d&&8>=d&&(A=d,q=!0);break;case "p":0<=
d&&3>=d&&(F=d);break;case "w":d<v&&(v=d);break;default:b.ha.O("unrecognized argument: "+E)}}else f=ca(E)}void 0===f?f=b.B||0:f>=b.ob&&(f-=b.ob);a="";for(c=0;c<p;c++){E=r(b.ob+f)+":";for(d=0;d<A&&f<b.sd.length;d++)H=b.sd[f++],E+=" "+(0>F?r(H):da(H>>(F<<3),8));q&&(f+=v-A);a&&(a+="\n");a+=E}a&&b.ha.O(a);b.B=f}else b.ha.O("no buffer")}else e.ha.O("BIOSMODE: "+t(e.Ia)),b=e.C,en(b,"CRTC",b.Ac,b.mb,b.jg),5<=b.Ua&&(en(b," GRC",b.ae,b.$d,b.Tg),en(b," SEQ",b.be,b.Je,b.Ug),en(b," ATC",b.Nd,b.Tc,b.Sg),en(b," ATCINDX",
b.Nd),b.ha.O(" ATCDATA: "+b.Xe),en(b," FEAT",b.dg),en(b," MISC",b.uf),en(b," STATUS0",b.Lg)),en(b," STATUS1",b.ma),1!=b.Ua&&3!=b.Ua||en(b," MODEREG",b.gd),3==b.Ua&&en(b," COLOR",b.sf),5<=b.Ua&&(b.ha.O(" LATCHES: "+r(b.Fb)),b.ha.O(" ACCESS: "+r(b.vg,4)),b.ha.O("Use 'dump video [addr]' to dump video memory"));else e.ha.O("no active video card")})}if((this.B=Eb(a,"Keyboard"))&&this.pa){for(var f in this.qa)0<f.indexOf("lock")&&this.B.Qb("led",f,this.qa[f]);this.B.Qb(this.vk?"textarea":"canvas",
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;c=(c=Em[this.ia])&&c[0];3!==c&&(hc(b,this,gn),lc(b,this,hn));1!==c&&(hc(b,this,jn),lc(b,this,kn));5<=this.Ua&&(hc(b,this,ln),lc(b,this,mn));this.Ua==cm&&(hc(b,this,nn),lc(b,this,on));if(d){var e=this;Mk(d,262144,function(a){if(e.C)if(a[0]){var b=e.C;if(b.sd){var c,d,f,q=!1,p=8,z=8,F=-1,v=b.video.L>>3;for(c=0;c<a.length;c++){var E=a[c];if(c){var H=E.charAt(0);d=ca(E.substr(1));switch(H){case "l":p=d;break;case "n":1<=d&&8>=d&&(z=d,q=!0);break;case "p":0<=
d&&3>=d&&(F=d);break;case "w":d<v&&(v=d);break;default:b.ha.O("unrecognized argument: "+E)}}else f=ca(E)}void 0===f?f=b.B||0:f>=b.ob&&(f-=b.ob);a="";for(c=0;c<p;c++){E=r(b.ob+f)+":";for(d=0;d<z&&f<b.sd.length;d++)H=b.sd[f++],E+=" "+(0>F?r(H):da(H>>(F<<3),8));q&&(f+=v-z);a&&(a+="\n");a+=E}a&&b.ha.O(a);b.B=f}else b.ha.O("no buffer")}else e.ha.O("BIOSMODE: "+t(e.Ia)),b=e.C,en(b,"CRTC",b.Ac,b.mb,b.jg),5<=b.Ua&&(en(b," GRC",b.be,b.ae,b.Tg),en(b," SEQ",b.ce,b.Je,b.Ug),en(b," ATC",b.Od,b.Tc,b.Sg),en(b," ATCINDX",
b.Od),b.ha.O(" ATCDATA: "+b.Xe),en(b," FEAT",b.dg),en(b," MISC",b.uf),en(b," STATUS0",b.Lg)),en(b," STATUS1",b.ma),1!=b.Ua&&3!=b.Ua||en(b," MODEREG",b.gd),3==b.Ua&&en(b," COLOR",b.sf),5<=b.Ua&&(b.ha.O(" LATCHES: "+r(b.Fb)),b.ha.O(" ACCESS: "+r(b.vg,4)),b.ha.O("Use 'dump video [addr]' to dump video memory"));else e.ha.O("no active video card")})}if((this.B=Eb(a,"Keyboard"))&&this.ka){for(var f in this.qa)0<f.indexOf("lock")&&this.B.Qb("led",f,this.qa[f]);this.B.Qb(this.vk?"textarea":"canvas",
"kbd",this.V)}this.Vc=9;(this.N=Eb(a,"ChipSet"))&&this.ag&&5==this.Ua&&(this.Vc=sk(this.ag,this.Vc));"mouse"==this.bg?(this.W=Eb(a,"Mouse"))&&pn(this,2):"keygrid"==this.bg&&this.B&&pn(this,1)};
m.Qb=function(a,b,c){var d=this;if(!this.qa[b])switch(this.qa[b]=c,b){case "fullScreen":return this.ga&&this.ga.We?c.onclick=function(){d.We()}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.uk=c.textContent,this.V&&this.V.De?c.onclick=function(){d.De(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){qn(d,!0)},!0}return!1};
m.We=function(){var a=!1;if(this.ga){if(this.ga.We){a="100%";if(screen&&screen.width&&screen.height){var b=screen.width/screen.height,c=this.ua/this.Ea;b>c&&(a=Math.round(c/b*100)+"%")}this.qf?(this.pa.style.width=a,this.pa.style.width=a,this.pa.style.display="block",this.pa.style.margin="auto"):(this.ga.style.width=a,this.ga.style.height="auto");this.ga.style.backgroundColor="black";this.ga.We();a=!0}this.V&&this.V.focus()}return a};
function Hm(a,b){!b&&a.ga&&(a.qf?a.pa.style.width=a.pa.style.height="":a.ga.style.width=a.ga.style.height="");y(a,"notifyFullScreen("+b+")",!0);a.B&&(a.B.ah=b)}m.De=function(a){var b=!1;this.V&&(a?this.V.De&&(this.V.De(),this.W&&this.W.Vf(!0),b=!0):this.V.rk&&(this.V.rk(),this.W&&this.W.Vf(!1),b=!0),this.V&&this.V.focus());return b};m.Vf=function(a){this.W&&(this.W.Vf(a),this.B&&(this.B.ah=a));var b=this.qa.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.uk)};
function pn(a,b){var c=a.V;c&&!a.le&&(c.addEventListener("touchstart",function(b){rn(a,b,!0)},!1),c.addEventListener("touchmove",function(b){rn(a,b)},!0),c.addEventListener("touchend",function(b){rn(a,b,!1)},!1),a.le=b,a.uc=a.Cc=a.gg=-1,a.Id=!1,a.Xc=null,a.Hd=!1,a.tn=function(){a.Hd=!0;a.W.ie(sn,!0)})}m.Fg=function(a){this.B&&this.B.Fg(a)};
function rn(a,b,c){var d,e,f=0,g=0;e=a.pa;do isNaN(e.offsetLeft)||(f+=e.offsetLeft,g+=e.offsetTop);while(e=e.offsetParent);var h=a.ua/a.pa.offsetWidth,k=a.Ea/a.pa.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.le)d=d/(a.ua/3)|0,e=e/(a.Ea/3)|0,1!=e?e?vm(a.B,1040,!0):vm(a.B,1038,!0):1!=d&&(d?vm(a.B,1039,!0):vm(a.B,1037,!0));else if(a.W){g=a.Id;f=b.timeStamp-a.gg;!0===c?(a.Id=500<f,a.gg=b.timeStamp,
a.Xc=setTimeout(a.tn,500)):null!=a.Xc&&(clearTimeout(a.Xc),a.Xc=null);void 0===c&&(a.Id=!1);g||b.preventDefault();if(!1===c){a.Hd?(a.W.ie(sn,!1),a.Hd=!1,b=!0):b=!1;if(b)return;if(200>f){a.W.ie(sn,!0);a.W.ie(sn,!1);return}}if(c||0>a.uc||0>a.Cc)a.uc=d,a.Cc=e;c=Math.round(d-a.uc);b=Math.round(e-a.Cc);a.uc=d;a.Cc=e;a.W.Hf(c,b,a.uc,a.Cc)}}m.ic=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};
m.reset=function(){var a=!0,b=0;this.N&&(b=+Uk(this.N,wk,void 0));this.ia||(this.Ua=3==b?1:3);this.wa=3;switch(this.Ua){case cm:b=7;break;case 5:var c=Km[this.Vc];c&&(b=c[0]);b||(b=4);break;case 1:b=3;this.wa=7;break;default:b=2}this.ya!==b&&(this.ya=b,a=!0);this.C=null;this.ra=this.rd=new Tm(this,1);this.aa=this.Wc=new Tm(this,3);5>this.Ua?this.A=new Tm:(this.A=new Tm(this,this.Ua,null,this.Ed),tn(this));un(this);this.Ia=null;this.cb=this.ka=-1;this.Pa=0;vn(this,this.wa);if(this.C.ob&&a){a=this.C.ob+
this.Ub;for(b=this.C.ob;b<a;b+=2){var d=65536*Math.random()|0;4==this.ya||7==this.ya?(c=b>>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8);fc(this.ea,b,c|d<<8)}qn(this,!0)}};function tn(a){a.A.uf&1?(a.ra=a.rd,a.aa=a.A):(a.ra=a.A,a.aa=a.Wc)}m.save=function(){var a=new hf(this);N(a,0,dn(this.rd));N(a,1,dn(this.Wc));N(a,2,[this.ya,this.wa,this.Ia]);N(a,3,dn(this.A));return a.data()};
m.restore=function(a){var b=a[2];this.ya=b[0];this.wa=b[1];this.Ia=b[2];this.C=null;this.ra=this.rd=new Tm(this,1,a[0]);this.aa=this.Wc=new Tm(this,3,a[1]);this.A=new Tm(this,this.Ua,a[3],this.Ed);this.A.Hc&&tn(this);un(this);if(!wn(this))return!1;xn(this);return!0};
m.We=function(){var a=!1;if(this.ga){if(this.ga.We){a="100%";if(screen&&screen.width&&screen.height){var b=screen.width/screen.height,c=this.ra/this.Ea;b>c&&(a=Math.round(c/b*100)+"%")}this.qf?(this.ka.style.width=a,this.ka.style.width=a,this.ka.style.display="block",this.ka.style.margin="auto"):(this.ga.style.width=a,this.ga.style.height="auto");this.ga.style.backgroundColor="black";this.ga.We();a=!0}this.V&&this.V.focus()}return a};
function Hm(a,b){!b&&a.ga&&(a.qf?a.ka.style.width=a.ka.style.height="":a.ga.style.width=a.ga.style.height="");y(a,"notifyFullScreen("+b+")",!0);a.B&&(a.B.ah=b)}m.De=function(a){var b=!1;this.V&&(a?this.V.De&&(this.V.De(),this.W&&this.W.Vf(!0),b=!0):this.V.rk&&(this.V.rk(),this.W&&this.W.Vf(!1),b=!0),this.V&&this.V.focus());return b};m.Vf=function(a){this.W&&(this.W.Vf(a),this.B&&(this.B.ah=a));var b=this.qa.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.uk)};
function pn(a,b){var c=a.V;c&&!a.me&&(c.addEventListener("touchstart",function(b){rn(a,b,!0)},!1),c.addEventListener("touchmove",function(b){rn(a,b)},!0),c.addEventListener("touchend",function(b){rn(a,b,!1)},!1),a.me=b,a.uc=a.Cc=a.gg=-1,a.Id=!1,a.Xc=null,a.Hd=!1,a.tn=function(){a.Hd=!0;a.W.je(sn,!0)})}m.Fg=function(a){this.B&&this.B.Fg(a)};
function rn(a,b,c){var d,e,f=0,g=0;e=a.ka;do isNaN(e.offsetLeft)||(f+=e.offsetLeft,g+=e.offsetTop);while(e=e.offsetParent);var h=a.ra/a.ka.offsetWidth,k=a.Ea/a.ka.offsetHeight;b.targetTouches&&b.targetTouches.length?(d=b.targetTouches[0].pageX,e=b.targetTouches[0].pageY):(d=b.pageX,e=b.pageY);d=(d-f)*h;e=(e-g)*k;if(1==a.me)d=d/(a.ra/3)|0,e=e/(a.Ea/3)|0,1!=e?e?vm(a.B,1040,!0):vm(a.B,1038,!0):1!=d&&(d?vm(a.B,1039,!0):vm(a.B,1037,!0));else if(a.W){g=a.Id;f=b.timeStamp-a.gg;!0===c?(a.Id=500<f,a.gg=b.timeStamp,
a.Xc=setTimeout(a.tn,500)):null!=a.Xc&&(clearTimeout(a.Xc),a.Xc=null);void 0===c&&(a.Id=!1);g||b.preventDefault();if(!1===c){a.Hd?(a.W.je(sn,!1),a.Hd=!1,b=!0):b=!1;if(b)return;if(200>f){a.W.je(sn,!0);a.W.je(sn,!1);return}}if(c||0>a.uc||0>a.Cc)a.uc=d,a.Cc=e;c=Math.round(d-a.uc);b=Math.round(e-a.Cc);a.uc=d;a.Cc=e;a.W.Hf(c,b,a.uc,a.Cc)}}m.ic=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};
m.reset=function(){var a=!0,b=0;this.N&&(b=+Uk(this.N,wk,void 0));this.ia||(this.Ua=3==b?1:3);this.wa=3;switch(this.Ua){case cm:b=7;break;case 5:var c=Km[this.Vc];c&&(b=c[0]);b||(b=4);break;case 1:b=3;this.wa=7;break;default:b=2}this.ya!==b&&(this.ya=b,a=!0);this.C=null;this.pa=this.rd=new Tm(this,1);this.aa=this.Wc=new Tm(this,3);5>this.Ua?this.A=new Tm:(this.A=new Tm(this,this.Ua,null,this.Ed),tn(this));un(this);this.Ia=null;this.cb=this.ua=-1;this.Pa=0;vn(this,this.wa);if(this.C.ob&&a){a=this.C.ob+
this.Ub;for(b=this.C.ob;b<a;b+=2){var d=65536*Math.random()|0;4==this.ya||7==this.ya?(c=b>>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8);fc(this.ea,b,c|d<<8)}qn(this,!0)}};function tn(a){a.A.uf&1?(a.pa=a.rd,a.aa=a.A):(a.pa=a.A,a.aa=a.Wc)}m.save=function(){var a=new hf(this);N(a,0,dn(this.rd));N(a,1,dn(this.Wc));N(a,2,[this.ya,this.wa,this.Ia]);N(a,3,dn(this.A));return a.data()};
m.restore=function(a){var b=a[2];this.ya=b[0];this.wa=b[1];this.Ia=b[2];this.C=null;this.pa=this.rd=new Tm(this,1,a[0]);this.aa=this.Wc=new Tm(this,3,a[1]);this.A=new Tm(this,this.Ua,a[3],this.Ed);this.A.Hc&&tn(this);un(this);if(!wn(this))return!1;xn(this);return!0};
function Im(a,b,c,d){if(d)a.Oa("Unable to load font ROM (error "+d+": "+b+")");else{fb(a.ve,b,c);try{var e=eval("("+c+")"),f=e.bytes||e;if(!f.length){w("Empty font ROM: "+b);return}if(1==f.length){w(f[0]);return}if(8192==f.length)bm(a,f,[6144,0]);else if(2048==f.length)bm(a,f,[0]);else{a.Oa("Unrecognized font data length ("+f.length+")");return}}catch(g){a.Oa("Font ROM data error: "+g.message);return}(a.ja||a.ha)&&rb(a)}}
function yn(a,b){if(1==b)return a.Ca[0]=Nm[0],a.Ca[1]=Nm[7],a.Ca;if(2==b){var c=a.C.sf;if(a.C===a.A){var d=a.A.Tc[0],c=d&7;d&16&&(c|=8);18!=a.A.Tc[1]&&(c|=32)}a.Ca[0]=Nm[c&15];c=c&32?Pm:Om;for(d=0;d<c.length;d++)a.Ca[d+1]=Nm[c[d]];return a.Ca}if(a.aa===a.Wc)return Nm;a.rb&&b&&!a.Ca[16]&&(a.rb=!1);if(!a.rb){var c=a.A,d=c.tf,e,f,g,h,k;if(8==b)for(f=0;256>f;f++)g=d[f]||0,h=g<<2&252,k=g>>4&252,g=g>>10&252,a.Ca[f]=[h,k,g,255];else{var l=d&&d[255];e=null!=c.Tc[15]?c.Tc:Qm;for(f=0;16>f;f++)g=e[f]&63,l?(g|=
(c.Tc[20]&12)<<4,c.Tc[16]&128&&(g&=-49,g|=(c.Tc[20]&3)<<4),g=d[g],h=g<<2&252,k=g>>4&252,g=g>>10&252):(h=(g&4?170:0)|(g&32?85:0),k=(g&2?170:0)|(g&16?85:0),g=(g&1?170:0)|(g&8?85:0)),a.Ca[f]=[h,k,g,255]}a.rb=!0}return a.Ca}function bm(a,b,c,d){a.Uc=b;a.Jb=c;a.Tb=d}
function un(a,b){var c=!1;if(window&&a.Uc&&(!b||a.U)){var d=0,e=a.Tb?a.Tb:8,f=yn(a);null!=a.Jb[0]&&zn(a,3,a.Jb[0],d,e,8,a.Uc,f)&&(c=!0);d=a.Tb?0:2048;e=a.Tb?a.Tb:9;null!=a.Jb[1]&&(zn(a,1,a.Jb[1],d,e,14,a.Uc,Lm,Mm)&&(c=!0),a.Tb&&zn(a,a.Ua,a.Jb[1],0,a.Tb,14,a.Uc,f)&&(c=!0))}return c}function zn(a,b,c,d,e,f,g,h,k){var l=!1;null!=c&&(An(a,b,c,d,e,f,g,h,k)&&(l=!0),a.pi&&An(a,b<<1,c,d,e,f,g,h,k)&&(l=!0));return l}
function An(a,b,c,d,e,f,g,h,k){var l=!1,n=b&1?0:1,q=a.Na[b],p=16>h.length?h.length:16;q||(q={Qc:e<<n,Rc:f<<n,Oe:Array(p),si:h.slice(0,p),zf:k,Rg:Array(p)});for(k=0;k<p;k++){var A=h[k],F=q.Oe[k]?q.si[k]:[];if(A[0]!==F[0]||A[1]!==F[1]||A[2]!==F[2]){var l=q,F=k,v=n,E=c,H=d,L=e,V=f,P=g,bb=[0,0,0,0],ia=document.createElement("canvas");ia.width=l.Qc<<4;ia.height=l.Rc<<4;for(var ja=ia.getContext("2d"),Ha=void 0,Xa=void 0,Ba=void 0,Ub=8>V||!H?V:8,wa=ja.createImageData(l.Qc,l.Rc),Ha=0;256>Ha;Ha++){for(Ba=
0;Ba<V;Ba++)for(var Vd=l.zf&&F&1&&Ba>=V-2,Rc=P[Ba<Ub?E+Ha*Ub+Ba:H+Ha*Ub+Ba-Ub],Wd=0;Wd<=v;Wd++)for(Xa=0;Xa<L;Xa++){var Ie=Xa<<v,Xd=(Ba<<v)+Wd,Je=Vd||Rc&128>>(8<=Xa&&192<=Ha&&223>=Ha?7:Xa)?A:bb;Bn(wa,Ie,Xd,Je);v&&Bn(wa,Ie+1,Xd,Je)}ja.putImageData(wa,(Ha&15)*l.Qc,(Ha>>4)*l.Rc)}l.Oe[F]="#"+r(A[0],2)+r(A[1],2)+r(A[2],2);l.si[F]=A;l.Rg[F]=ia;l=!0}}a.Na[b]=q;return l}function Cn(a){0<a.Pa||0<=a.ka?0>a.cb&&(a.cb=0):a.cb=-1}
function xn(a){if(a.U){for(var b=10;15>=b;b++)if(null==a.C.mb[b])return;var c=a.C.mb[10],b=c&31,d=a.C.mb[11]&31,e=a.C.mb[9]&31,f=!1;a.C===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)ao(a);else{c=a.C.mb[15]+((a.C.mb[14]&63)<<8);a.ka!=c&&(ao(a),a.ka=c);d=d-b+1;if(a.hg!=b||a.Ce!=d)a.hg=b,a.Ce=d;a.$a=e+1;Cn(a)}}}
function ao(a){if(0<=a.ka){if(void 0!==a.fa){var b=a.fa[a.ka];if(b&131072){var b=b&-131073,c=a.ka%a.L,d=a.ka/a.L|0;a.U&&a.Na[a.U]&&(a.gb&&bo(a,c,d,b,a.gb),bo(a,c,d,b));a.fa[a.ka]=b}}a.ka=-1}}
function co(a){var b,c=a.C;a.gf=!1;var d=c.$d[5];if(null!=d){b=1024;var e=0,f=c.$d[3]&31;switch(d&3){case 0:if(f){e=32;switch(f&24){case 8:e=96;break;case 16:e=160;break;case 24:e=224}c.dd=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.Ua==cm&&(e=3,c.dd=f&7)}d&8&&(b=1280);c=c.Je[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.gf=!0));b|=e}return b}
function An(a,b,c,d,e,f,g,h,k){var l=!1,n=b&1?0:1,q=a.Na[b],p=16>h.length?h.length:16;q||(q={Qc:e<<n,Rc:f<<n,Oe:Array(p),si:h.slice(0,p),zf:k,Rg:Array(p)});for(k=0;k<p;k++){var z=h[k],F=q.Oe[k]?q.si[k]:[];if(z[0]!==F[0]||z[1]!==F[1]||z[2]!==F[2]){var l=q,F=k,v=n,E=c,H=d,L=e,V=f,P=g,bb=[0,0,0,0],ia=document.createElement("canvas");ia.width=l.Qc<<4;ia.height=l.Rc<<4;for(var ja=ia.getContext("2d"),Ha=void 0,Xa=void 0,Ba=void 0,Ub=8>V||!H?V:8,wa=ja.createImageData(l.Qc,l.Rc),Ha=0;256>Ha;Ha++){for(Ba=
0;Ba<V;Ba++)for(var Vd=l.zf&&F&1&&Ba>=V-2,Rc=P[Ba<Ub?E+Ha*Ub+Ba:H+Ha*Ub+Ba-Ub],Wd=0;Wd<=v;Wd++)for(Xa=0;Xa<L;Xa++){var Ie=Xa<<v,Xd=(Ba<<v)+Wd,Je=Vd||Rc&128>>(8<=Xa&&192<=Ha&&223>=Ha?7:Xa)?z:bb;Bn(wa,Ie,Xd,Je);v&&Bn(wa,Ie+1,Xd,Je)}ja.putImageData(wa,(Ha&15)*l.Qc,(Ha>>4)*l.Rc)}l.Oe[F]="#"+r(z[0],2)+r(z[1],2)+r(z[2],2);l.si[F]=z;l.Rg[F]=ia;l=!0}}a.Na[b]=q;return l}function Cn(a){0<a.Pa||0<=a.ua?0>a.cb&&(a.cb=0):a.cb=-1}
function xn(a){if(a.U){for(var b=10;15>=b;b++)if(null==a.C.mb[b])return;var c=a.C.mb[10],b=c&31,d=a.C.mb[11]&31,e=a.C.mb[9]&31,f=!1;a.C===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)ao(a);else{c=a.C.mb[15]+((a.C.mb[14]&63)<<8);a.ua!=c&&(ao(a),a.ua=c);d=d-b+1;if(a.hg!=b||a.Ce!=d)a.hg=b,a.Ce=d;a.$a=e+1;Cn(a)}}}
function ao(a){if(0<=a.ua){if(void 0!==a.fa){var b=a.fa[a.ua];if(b&131072){var b=b&-131073,c=a.ua%a.L,d=a.ua/a.L|0;a.U&&a.Na[a.U]&&(a.gb&&bo(a,c,d,b,a.gb),bo(a,c,d,b));a.fa[a.ua]=b}}a.ua=-1}}
function co(a){var b,c=a.C;a.gf=!1;var d=c.ae[5];if(null!=d){b=1024;var e=0,f=c.ae[3]&31;switch(d&3){case 0:if(f){e=32;switch(f&24){case 8:e=96;break;case 16:e=160;break;case 24:e=224}c.dd=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.Ua==cm&&(e=3,c.dd=f&7)}d&8&&(b=1280);c=c.Je[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.gf=!0));b|=e}return b}
function eo(a,b){var c=a.C;return c&&null!=b&&b!=c.vg?(c.Mg(b),a.ea.Mg(c.ob,c.ac,c.fh(),!0),!0):!1}
function wn(a,b){var c,d=a.Ia,e=a.C;if(e)if(1==e.Ua)d=7;else if(5<=e.Ua){var d=null,f=e.Ed>>2,g=32768<f?32768:f,h=e.$d[6];if(null!=h){switch(h&12){case 0:e.ob=655360;e.ac=f;d=255;break;case 4:e.ob=655360;e.ac=f;d=3==a.ya?15:16;break;case 8:e.ob=720896;e.ac=g;d=7;break;case 12:e.ob=753664,e.ac=g,d=3==a.ya?2:3}c=80==(e.$d[5]&80);!c||e.ob==a.ob&&e.ac==a.ac||(b=!0);var f=fn(e,6),g=e.mb[9],k=e.mb[23],l=e.Je[1]&8;255!=d&&(h&1?655360==e.ob||c||k&1?e.$d[5]&64?d=g&31?143>=e.mb[18]?19:20:21:g&128||350>f?d=
function wn(a,b){var c,d=a.Ia,e=a.C;if(e)if(1==e.Ua)d=7;else if(5<=e.Ua){var d=null,f=e.Ed>>2,g=32768<f?32768:f,h=e.ae[6];if(null!=h){switch(h&12){case 0:e.ob=655360;e.ac=f;d=255;break;case 4:e.ob=655360;e.ac=f;d=3==a.ya?15:16;break;case 8:e.ob=720896;e.ac=g;d=7;break;case 12:e.ob=753664,e.ac=g,d=3==a.ya?2:3}c=80==(e.ae[5]&80);!c||e.ob==a.ob&&e.ac==a.ac||(b=!0);var f=fn(e,6),g=e.mb[9],k=e.mb[23],l=e.Je[1]&8;255!=d&&(h&1?655360==e.ob||c||k&1?e.ae[5]&64?d=g&31?143>=e.mb[18]?19:20:21:g&128||350>f?d=
l?13:14:480<=f&&(d=3==a.ya?17:18):d=l?7-d:6:d-=l?2:0);c=co(a)}}else e.gd&8&&(e.gd&2?(d=e.gd&16?6:5,e.gd&4||--d):(d=e.gd&1?3:1,e.gd&4&&--d));else a.Ia=null,null==d&&(d=a.wa);if(!vn(a,d,b))return!1;eo(a,c);return!0}
function vn(a,b,c){if(null!=b&&(b!=a.Ia||c)){a.Ng=0;a.Ia=b;a.rb=!1;b=a.C||(7==b?a.ra:a.aa);if(b!=a.C||b.ob!=a.ob||b.ac!=a.ac){ao(a);if(a.ob){if(!Zb(a.ea,a.ob,a.ac))return!1;a.C&&(a.C.Hc=!1)}a.C=b;b.Hc=!0;a.ob=b.ob;a.ac=b.ac;if(!Sb(a.ea,b.ob,b.ac,3,b===a.A?b:null))return!1}a:{a.U=0;a.L=a.kd;a.X=a.ke;a.Db=a.L;a.jd=Fm[7][2];b=0;if(c=Fm[a.Ia])a.L=c[0],a.X=c[1],a.jd=c[2],b=c[3],a.U=c[4],4!=a.ya&&7!=a.ya||a.C!==a.A||3!=a.U||(7==(a.A.mb[9]&31)?a.X=350>fn(a.A,18)?43:50:a.U=a.Ua);a.Yf=a.L*a.X|0;a.Wf=a.Yf/
a.jd|0;a.Ub=a.Wf;a.td=0;void 0!==b&&(a.Ub=(a.Ub<<1)+b|0,a.td=a.Ub+b>>1);if(a.Na.length){a.Ja=a.ua/a.L|0;a.Ka=a.Ea/a.X|0;if(a.U){b=a.Na[a.U];if(!b)break a;c=a.Na[a.U<<1];a.sn&&80==a.L?c&&a.Ja>=3*c.Qc>>2&&(a.U<<=1,b=c):(c&&a.Ja>=c.Qc&&(a.U<<=1,b=c),b&&(a.Ja=b.Qc,a.Ka=b.Rc));a.bc=a.tc=0;b&&(a.bc=a.L*b.Qc,a.tc=a.X*b.Rc)}else a.Ja=a.Ka=1,a.bc=a.L,a.tc=a.X;a.sb=a.ja.createImageData(a.bc,a.tc);a.fb=document.createElement("canvas");a.fb.width=a.bc;a.fb.height=a.tc;a.gb=a.fb.getContext("2d");a.me=a.ne=0;a.Dd=
a.ua;a.Gd=a.Ea;b=a.ua-a.L*a.Ja;c=a.Ea-a.X*a.Ka;0<b&&(a.me=b>>1,a.Dd-=b);0<c&&(a.ne=c>>1,a.Gd-=c);if(b||c)a.ja.fillStyle=a.pa.style.backgroundColor,a.ja.fillRect(0,0,a.ua,a.Ea)}}fo(a,!0);qn(a)}return!0}function Bn(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function go(a){a.Pa=-1;a.Fa=!1;var b=a.Wf;if(void 0===a.fa||a.fa.length!=b)a.fa=Array(b)}function fo(a,b){b||(a.rb=!1);go(a)}
function bo(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Na[a.U];h.zf&&(d=h.zf[d]);var k=g>>4&15;h.zf&&(k=h.zf[k]);e?(b*=h.Qc,c*=h.Rc,e.fillStyle=h.Oe[k],e.fillRect(b,c,h.Qc,h.Rc)):(b=b*a.Ja+a.me,c=c*a.Ka+a.ne,a.ja.fillStyle=h.Oe[k],a.ja.fillRect(b,c,a.Ja,a.Ka));g&256&&(k=(f&15)*h.Qc,f=(f>>4)*h.Rc,e?e.drawImage(h.Rg[d],k,f,h.Qc,h.Rc,b,c,h.Qc,h.Rc):a.ja.drawImage(h.Rg[d],k,f,h.Qc,h.Rc,b,c,a.Ja,a.Ka));g&512&&(f=a.hg,g=a.Ce,e?(a.$a&&a.$a!==h.Rc&&(f=f*h.Rc/a.$a|0,g=g*h.Rc/a.$a|0),e.fillStyle=h.Oe[d],
function vn(a,b,c){if(null!=b&&(b!=a.Ia||c)){a.Ng=0;a.Ia=b;a.rb=!1;b=a.C||(7==b?a.pa:a.aa);if(b!=a.C||b.ob!=a.ob||b.ac!=a.ac){ao(a);if(a.ob){if(!Zb(a.ea,a.ob,a.ac))return!1;a.C&&(a.C.Hc=!1)}a.C=b;b.Hc=!0;a.ob=b.ob;a.ac=b.ac;if(!Sb(a.ea,b.ob,b.ac,3,b===a.A?b:null))return!1}a:{a.U=0;a.L=a.kd;a.X=a.le;a.Db=a.L;a.jd=Fm[7][2];b=0;if(c=Fm[a.Ia])a.L=c[0],a.X=c[1],a.jd=c[2],b=c[3],a.U=c[4],4!=a.ya&&7!=a.ya||a.C!==a.A||3!=a.U||(7==(a.A.mb[9]&31)?a.X=350>fn(a.A,18)?43:50:a.U=a.Ua);a.Yf=a.L*a.X|0;a.Wf=a.Yf/
a.jd|0;a.Ub=a.Wf;a.td=0;void 0!==b&&(a.Ub=(a.Ub<<1)+b|0,a.td=a.Ub+b>>1);if(a.Na.length){a.Ja=a.ra/a.L|0;a.Ka=a.Ea/a.X|0;if(a.U){b=a.Na[a.U];if(!b)break a;c=a.Na[a.U<<1];a.sn&&80==a.L?c&&a.Ja>=3*c.Qc>>2&&(a.U<<=1,b=c):(c&&a.Ja>=c.Qc&&(a.U<<=1,b=c),b&&(a.Ja=b.Qc,a.Ka=b.Rc));a.bc=a.tc=0;b&&(a.bc=a.L*b.Qc,a.tc=a.X*b.Rc)}else a.Ja=a.Ka=1,a.bc=a.L,a.tc=a.X;a.sb=a.ja.createImageData(a.bc,a.tc);a.fb=document.createElement("canvas");a.fb.width=a.bc;a.fb.height=a.tc;a.gb=a.fb.getContext("2d");a.ne=a.oe=0;a.Dd=
a.ra;a.Gd=a.Ea;b=a.ra-a.L*a.Ja;c=a.Ea-a.X*a.Ka;0<b&&(a.ne=b>>1,a.Dd-=b);0<c&&(a.oe=c>>1,a.Gd-=c);if(b||c)a.ja.fillStyle=a.ka.style.backgroundColor,a.ja.fillRect(0,0,a.ra,a.Ea)}}fo(a,!0);qn(a)}return!0}function Bn(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function go(a){a.Pa=-1;a.Fa=!1;var b=a.Wf;if(void 0===a.fa||a.fa.length!=b)a.fa=Array(b)}function fo(a,b){b||(a.rb=!1);go(a)}
function bo(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Na[a.U];h.zf&&(d=h.zf[d]);var k=g>>4&15;h.zf&&(k=h.zf[k]);e?(b*=h.Qc,c*=h.Rc,e.fillStyle=h.Oe[k],e.fillRect(b,c,h.Qc,h.Rc)):(b=b*a.Ja+a.ne,c=c*a.Ka+a.oe,a.ja.fillStyle=h.Oe[k],a.ja.fillRect(b,c,a.Ja,a.Ka));g&256&&(k=(f&15)*h.Qc,f=(f>>4)*h.Rc,e?e.drawImage(h.Rg[d],k,f,h.Qc,h.Rc,b,c,h.Qc,h.Rc):a.ja.drawImage(h.Rg[d],k,f,h.Qc,h.Rc,b,c,a.Ja,a.Ka));g&512&&(f=a.hg,g=a.Ce,e?(a.$a&&a.$a!==h.Rc&&(f=f*h.Rc/a.$a|0,g=g*h.Rc/a.$a|0),e.fillStyle=h.Oe[d],
e.fillRect(b,c+f,h.Qc,g)):(a.$a&&a.$a!==a.Ka&&(f=f*a.Ka/a.$a|0,g=g*a.Ka/a.$a|0),a.ja.fillStyle=h.Oe[d],a.ja.fillRect(b,c+f,a.Ja,g)))}
function qn(a,b){if(a.la.cc){var c=!1,d=a.C;d&&(d!==a.A?d.gd&8&&(c=!0):d.Nd&32&&(c=!0));if(c||b){if(b)go(a);else if(void 0===a.fa)return;var e=!1;!(b||++a.Ng&15)&&0<=a.cb&&(a.cb++,e=!0);var f=0,g=a.Yf,h=a.ob,c=h,k=c+a.ac;19<=a.Ia&&(h=c=655360,k=c+65536);if(ho(a,d)&8||d.pf&&d.pf<d.di){var l=(d.mb[12]<<8)+d.mb[13]|0;d.qe!==l&&(d.qe=l,fo(a));d.pf=0}l=d.qe;a.U&&(l<<=1);c+=l;l=a.Ub;5<=a.Ua&&d.mb[19]&&d.mb[19]<<1!=d.mb[1]+1&&(a.Db=d.mb[19]<<(a.U?1:d.mb[20]&64?3:4),l=(a.Db*(a.X-1)+a.L)/a.jd|0,7>=a.Ia&&(l<<=
1));c+l>k&&(l=k-c,0>l&&(l=0));k=c+l;if(d=!b&&a.Fa){for(var d=a.ea,n=!0,q=c>>>d.La;0<l&&q<d.sa.length;)d.sa[q].Wa&&(d.sa[q].Wa=n=!1,d.sa[q].Ni=!0),l-=d.Nb,q++;d=n}if(d){if(!e)return;if(!a.Pa){if(0>a.ka)return;f=a.ka;g=f+1}}if(a.U){if(a.Na[a.U]){e=0;h=a.Pa=0;d=1048575;l=a.C.gd&32;5<=a.Ua&&(l=a.C.Tc[16]&8);l&&(h=32768,d&=~h,a.cb&2||(d&=-65537));for(c+=f<<1;c<k&&f<g;)l=ec(a.ea,c),l|=65536,l&h&&(a.Pa++,l&=d),f==a.ka&&(l|=a.cb&1?131072:0),a.Fa&&l===a.fa[f]||(bo(a,f%a.L,f/a.L|0,l,a.gb),a.fa[f]=l,e++),c+=
2,f++;a.Fa=!0;e&&a.gb&&a.ja.drawImage(a.fb,0,0,a.bc,a.tc,a.me,a.ne,a.Dd,a.Gd);Cn(a)}}else if(a.td){for(var g=k,p,k=c,f=a.Pa=0,e=a.jd,h=16==e?65536:196608,d=16==e?1:2,l=yn(a,d),q=n=0,A=a.L,F=0,v=a.X,E=0;k<g;){p=ec(a.ea,k);if(a.Fa&&p===a.fa[f])n+=e;else{a.fa[f]=p;p=p>>8|(p&255)<<8;var H=h,L=16;n<A&&(A=n);for(var V=0;V<e;V++){var P=(p&(H>>=d))>>(L-=d);Bn(a.sb,n++,q,l[P])}n>F&&(F=n);q<v&&(v=q);q>=E&&(E=q+1)}k+=2;f++;if(n>=a.L){n=0;q+=2;if(q>a.X)break;q==a.X&&(q=1,k=c+a.td)}}a.Fa=!0;A<a.L&&(a.gb.putImageData(a.sb,
0,0,A,v,F-A,E-v),a.ja.drawImage(a.fb,0,0,a.L,a.X,0,0,a.ua,a.Ea))}else if(a.gf){g=h;e=a.Pa=0;h=yn(a,8);d=a.C.sd;n=l=0;q=a.L;A=0;F=a.X;v=0;E=a.C.Je[4]&8?4:1;p=a.C.Tc[19]&15;for(H=a.Db>a.L?a.Db-a.L-p>>3:0;c<k;){f=d[c-g];V=4;p||(a.Fa&&f===a.fa[e]?(l+=V,V=0):a.fa[e]=f,e++);if(V){l<q&&(q=l);for(L=0;L<V;L++)Bn(a.sb,l++,n,h[f&255]),f>>=8;l>A&&(A=l);n<F&&(F=n);n>=v&&(v=n+1)}c+=E;if(l>=a.L){l=0;if(++n>a.X)break;c+=H}}p||(a.Fa=!0);q<a.L&&(a.gb.putImageData(a.sb,0,0,q,F,A-q,v-F),a.ja.drawImage(a.fb,0,0,a.L,a.X,
0,0,a.ua,a.Ea))}else{g=h;f=a.Pa=0;e=yn(a);h=a.C.sd;l=d=0;n=a.L;q=0;A=a.X;F=0;v=a.C.Tc[19]&15;for(E=a.Db>a.L?a.Db-a.L-v>>3:0;c<k;){p=c++-g;p=h[p];L=8;v?d?(H=a.L-d,L>H&&(L=H)):(p<<=v,L-=v,a.Fa=!1):(a.Fa&&p===a.fa[f]?(d+=L,L=0):a.fa[f]=p,f++);if(L){d<n&&(n=d);for(H=0;H<L;H++)V=Sm[p&2155905152]||0,Bn(a.sb,d++,l,e[V]),p<<=1;d>q&&(q=d);l<A&&(A=l);l>=F&&(F=l+1)}if(d>=a.L){d=0;if(++l>a.X)break;c+=E}}v||(a.Fa=!0);n<a.L&&(a.gb.putImageData(a.sb,0,0,n,A,q-n,F-A),a.ja.drawImage(a.fb,0,0,a.L,a.X,0,0,a.ua,a.Ea))}}}}
function ho(a,b){var c=0,d=Wc(a.F)-b.uh;0>d&&(b.uh=d,d=-d|0);d%b.ph>b.im&&(c|=1);d%b.sh>b.km&&(c|=9);b.di=d/b.sh|0;return c}m.Fl=function(a,b){return io(this,this.ra,a,b)};m.$m=function(a,b,c){var d=this.ra;d.Ig=d.Ac;d.Ac=b&31;x(this,a,b,c,"CRTC.INDX")};m.El=function(a,b){return jo(this,this.ra,a,b)};m.Zm=function(a,b,c){ko(this,this.ra,a,b,c)};m.Gl=function(a,b){return lo(this,this.ra,b)};m.an=function(a,b,c){a=this.ra;x(this,a.port+4,b,c,"MODE");a.gd=b;wn(this,!1)};
m.Hl=function(a,b){return mo(this,this.ra,b)};m.ek=function(a,b,c){this.A.dg=this.A.dg&-4|b&3;x(this,a,b,c,"FEAT")};m.el=function(a,b){var c=this.A.Nd;b&&!z(this)||x(this,960,null,b,"ATC.INDX",c);return c};m.Ck=function(a,b){var c=this.A.Tc[this.A.Nd&31];b&&!z(this)||x(this,960,null,b,"ATC."+this.A.Sg[this.A.Nd&31],c);return c};
m.dk=function(a,b,c){var d=this.A,e=d.Nd&32;if(d.Xe){d.Xe=!1;var f=d.Nd&31;if(16<=f||!e)c&&!z(this)||x(this,a,b,c,"ATC."+d.Sg[f]),d.Tc[f]=b,fo(this,!1)}else d.Nd=b,x(this,a,b,c,"ATC.INDX"),d.Xe=!0,b&32&&!e&&un(this,!0)&&qn(this,!0),a=(d.mb[12]<<8)+d.mb[13]|0,d.qe!=a&&(d.qe=a,fo(this)),d.pf=0};
function qn(a,b){if(a.la.cc){var c=!1,d=a.C;d&&(d!==a.A?d.gd&8&&(c=!0):d.Od&32&&(c=!0));if(c||b){if(b)go(a);else if(void 0===a.fa)return;var e=!1;!(b||++a.Ng&15)&&0<=a.cb&&(a.cb++,e=!0);var f=0,g=a.Yf,h=a.ob,c=h,k=c+a.ac;19<=a.Ia&&(h=c=655360,k=c+65536);if(ho(a,d)&8||d.pf&&d.pf<d.di){var l=(d.mb[12]<<8)+d.mb[13]|0;d.Md!==l&&(d.Md=l,fo(a));d.pf=0}l=d.Md;a.U&&(l<<=1);var c=c+l,n=a.Ub;5<=a.Ua&&d.mb[19]&&d.mb[19]<<1!=d.mb[1]+1&&(a.Db=d.mb[19]<<(a.U?1:d.mb[20]&64?3:4),n=(a.Db*(a.X-1)+a.L)/a.jd|0,7>=a.Ia&&
(n<<=1));c+n>k&&(n=k-c,0>n&&(n=0));k=c+n;if(l=!b&&a.Fa){for(var l=a.ea,q=!0,p=c>>>l.La;0<n&&p<l.sa.length;)l.sa[p].Wa&&(l.sa[p].Wa=q=!1,l.sa[p].Ni=!0),n-=l.Nb,p++;l=q}if(l){if(!e)return;if(!a.Pa){f=a.ua-d.Md;if(0>f)return;g=f+1}}if(a.U){if(a.Na[a.U]){d=f;f=0;e=a.Pa=0;h=1048575;n=a.C.gd&32;5<=a.Ua&&(n=a.C.Tc[16]&8);l=a.ua-a.C.Md;n&&(e=32768,h&=~e,a.cb&2||(h&=-65537));for(c+=d<<1;c<k&&d<g;)n=ec(a.ea,c),n|=65536,n&e&&(a.Pa++,n&=h),d==l&&(n|=a.cb&1?131072:0),a.Fa&&n===a.fa[d]||(bo(a,d%a.L,d/a.L|0,n,a.gb),
a.fa[d]=n,f++),c+=2,d++;a.Fa=!0;f&&a.gb&&a.ja.drawImage(a.fb,0,0,a.bc,a.tc,a.ne,a.oe,a.Dd,a.Gd);Cn(a)}}else if(a.td){for(var g=k,z,k=c,d=a.Pa=0,f=a.jd,e=16==f?65536:196608,h=16==f?1:2,l=yn(a,h),q=n=0,p=a.L,F=0,v=a.X,E=0;k<g;){z=ec(a.ea,k);if(a.Fa&&z===a.fa[d])n+=f;else{a.fa[d]=z;z=z>>8|(z&255)<<8;var H=e,L=16;n<p&&(p=n);for(var V=0;V<f;V++){var P=(z&(H>>=h))>>(L-=h);Bn(a.sb,n++,q,l[P])}n>F&&(F=n);q<v&&(v=q);q>=E&&(E=q+1)}k+=2;d++;if(n>=a.L){n=0;q+=2;if(q>a.X)break;q==a.X&&(q=1,k=c+a.td)}}a.Fa=!0;
p<a.L&&(a.gb.putImageData(a.sb,0,0,p,v,F-p,E-v),a.ja.drawImage(a.fb,0,0,a.L,a.X,0,0,a.ra,a.Ea))}else if(a.gf){g=h;f=a.Pa=0;e=yn(a,8);h=a.C.sd;n=l=0;q=a.L;p=0;F=a.X;v=0;E=a.C.Je[4]&8?4:1;z=a.C.Tc[19]&15;for(H=a.Db>a.L?a.Db-a.L-z>>3:0;c<k;){d=h[c-g];V=4;z||(a.Fa&&d===a.fa[f]?(l+=V,V=0):a.fa[f]=d,f++);if(V){l<q&&(q=l);for(L=0;L<V;L++)Bn(a.sb,l++,n,e[d&255]),d>>=8;l>p&&(p=l);n<F&&(F=n);n>=v&&(v=n+1)}c+=E;if(l>=a.L){l=0;if(++n>a.X)break;c+=H}}z||(a.Fa=!0);q<a.L&&(a.gb.putImageData(a.sb,0,0,q,F,p-q,v-F),
a.ja.drawImage(a.fb,0,0,a.L,a.X,0,0,a.ra,a.Ea))}else{g=h;d=a.Pa=0;f=yn(a);e=a.C.sd;l=h=0;n=a.L;q=0;p=a.X;F=0;v=a.C.Tc[19]&15;for(E=a.Db>a.L?a.Db-a.L-v>>3:0;c<k;){z=c++-g;z=e[z];L=8;v?h?(H=a.L-h,L>H&&(L=H)):(z<<=v,L-=v,a.Fa=!1):(a.Fa&&z===a.fa[d]?(h+=L,L=0):a.fa[d]=z,d++);if(L){h<n&&(n=h);for(H=0;H<L;H++)V=Sm[z&2155905152]||0,Bn(a.sb,h++,l,f[V]),z<<=1;h>q&&(q=h);l<p&&(p=l);l>=F&&(F=l+1)}if(h>=a.L){h=0;if(++l>a.X)break;c+=E}}v||(a.Fa=!0);n<a.L&&(a.gb.putImageData(a.sb,0,0,n,p,q-n,F-p),a.ja.drawImage(a.fb,
0,0,a.L,a.X,0,0,a.ra,a.Ea))}}}}function ho(a,b){var c=0,d=Wc(a.F)-b.uh;0>d&&(b.uh=d,d=-d|0);d%b.ph>b.im&&(c|=1);d%b.sh>b.km&&(c|=9);b.di=d/b.sh|0;return c}m.Fl=function(a,b){return io(this,this.pa,a,b)};m.$m=function(a,b,c){var d=this.pa;d.Ig=d.Ac;d.Ac=b&31;x(this,a,b,c,"CRTC.INDX")};m.El=function(a,b){return jo(this,this.pa,a,b)};m.Zm=function(a,b,c){ko(this,this.pa,a,b,c)};m.Gl=function(a,b){return lo(this,this.pa,b)};m.an=function(a,b,c){a=this.pa;x(this,a.port+4,b,c,"MODE");a.gd=b;wn(this,!1)};
m.Hl=function(a,b){return mo(this,this.pa,b)};m.ek=function(a,b,c){this.A.dg=this.A.dg&-4|b&3;x(this,a,b,c,"FEAT")};m.el=function(a,b){var c=this.A.Od;b&&!A(this)||x(this,960,null,b,"ATC.INDX",c);return c};m.Ck=function(a,b){var c=this.A.Tc[this.A.Od&31];b&&!A(this)||x(this,960,null,b,"ATC."+this.A.Sg[this.A.Od&31],c);return c};
m.dk=function(a,b,c){var d=this.A,e=d.Od&32;if(d.Xe){d.Xe=!1;var f=d.Od&31;if(16<=f||!e)c&&!A(this)||x(this,a,b,c,"ATC."+d.Sg[f]),d.Tc[f]=b,fo(this,!1)}else d.Od=b,x(this,a,b,c,"ATC.INDX"),d.Xe=!0,b&32&&!e&&un(this,!0)&&qn(this,!0),a=(d.mb[12]<<8)+d.mb[13]|0,d.Md!=a&&(d.Md=a,fo(this)),d.pf=0};
m.Rl=function(a,b){var c=0;if(5==this.Ua)c=3-((this.A.uf&12)>>2),c=(this.Vc&1<<c)<<4-c;else{var d=this.A.tf[0];45!=(d&63)&&2880!=(d&4032)&&184320!=(d&258048)&&(c|=16)}c|=this.A.Lg&-17;this.A.Lg=c;x(this,962,null,b,"STATUS0",c);return c};m.bn=function(a,b,c){this.A.uf=b;tn(this);x(this,962,b,c,"MISC")};m.Sl=function(a,b){var c=this.A.ki;x(this,963,null,b,"VGA_ENABLE",c);return c};m.kn=function(a,b,c){this.A.ki=b;x(this,963,b,c,"VGA_ENABLE")};
m.Pl=function(a,b){var c=this.A.be;x(this,964,null,b,"SEQ.INDX",c);return c};m.hn=function(a,b,c){this.A.be=b;x(this,964,b,c,"SEQ.INDX")};m.Ol=function(a,b){var c=this.A.Je[this.A.be];b&&!z(this)||x(this,965,null,b,"SEQ."+this.A.Ug[this.A.be],c);return c};m.gn=function(a,b,c){c&&!z(this)||x(this,965,b,c,"SEQ."+this.A.Ug[this.A.be]);this.A.Je[this.A.be]=b;switch(this.A.be){case 2:this.A.qb=Rm[b&15];break;case 4:eo(this,co(this))&&qn(this,!0)}};
m.rl=function(a,b){var c=this.A.ji;b&&!z(this)||x(this,966,null,b,"DAC.MASK",c);return c};m.Jm=function(a,b,c){c&&!z(this)||x(this,966,b,c,"DAC.MASK");this.A.ji=b};m.sl=function(a,b){var c=this.A.Jg;b&&!z(this)||x(this,967,null,b,"DAC.STATE",c);return c};m.Km=function(a,b,c){c&&!z(this)||x(this,967,b,c,"DAC.READ");this.A.pd=b;this.A.Jg=3;this.A.Kc=0};m.Lm=function(a,b,c){c&&!z(this)||x(this,968,b,c,"DAC.WRITE");this.A.pd=b;this.A.Jg=0;this.A.Kc=0};
m.ql=function(a,b){var c=this.A.tf[this.A.pd]>>this.A.Kc&63;b&&!z(this)||x(this,969,null,b,"DAC.DATA["+t(this.A.pd)+"]["+t(this.A.Kc)+"]",c);this.A.Kc+=6;12<this.A.Kc&&(this.A.Kc=0,this.A.pd=this.A.pd+1&255);return c};m.Im=function(a,b,c){a=this.A.tf[this.A.pd];c&&!z(this)||x(this,969,b,c,"DAC.DATA["+t(this.A.pd)+"]["+t(this.A.Kc)+"]");b=a&~(63<<this.A.Kc)|(b&63)<<this.A.Kc;a!==b&&(this.A.tf[this.A.pd]=b,fo(this,!1));this.A.Kc+=6;12<this.A.Kc&&(this.A.Kc=0,this.A.pd=this.A.pd+1&255)};
m.Tl=function(a,b){var c=this.A.dg;x(this,970,null,b,"FEAT",c);return c};m.Vm=function(a,b,c){this.A.hk=b;x(this,970,b,c,"GRC2")};m.Ul=function(a,b){var c=this.A.uf;x(this,972,null,b,"MISC",c);return c};m.Um=function(a,b,c){this.A.gk=b;x(this,972,b,c,"GRC1")};m.yl=function(a,b){var c=this.A.ae;x(this,974,null,b,"GRC.INDX",c);return c};m.Tm=function(a,b,c){this.A.ae=b;x(this,974,b,c,"GRC.INDX")};
m.xl=function(a,b){var c=this.A.$d[this.A.ae];b&&!z(this)||x(this,975,null,b,"GRC."+this.A.Tg[this.A.ae],c);return c};
m.Sm=function(a,b,c){c&&!z(this)||x(this,975,b,c,"GRC."+this.A.Tg[this.A.ae]);this.A.$d[this.A.ae]=b;switch(this.A.ae){case 0:this.A.Uf=Rm[b&15];this.A.pe=this.A.Uf&~this.A.Zd;break;case 1:this.A.Zd=~Rm[b&15];this.A.pe=this.A.Uf&~this.A.Zd;break;case 2:this.A.nh=Rm[b&15]&-2139062144;break;case 3:case 5:eo(this,co(this));break;case 4:this.A.ci=(b&3)<<3;break;case 6:wn(this,!1);break;case 7:this.A.oh=Rm[b&15]&-2139062144;break;case 8:this.A.Mb=b|b<<8|b<<16|b<<24}};
m.kl=function(a,b){return io(this,this.aa,a,b)};m.Dm=function(a,b,c){var d=this.aa;d.Ig=d.Ac;d.Ac=b&31;x(this,a,b,c,"CRTC.INDX")};m.jl=function(a,b){return jo(this,this.aa,a,b)};m.Cm=function(a,b,c){ko(this,this.aa,a,b,c)};m.ll=function(a,b){return lo(this,this.aa,b)};m.Em=function(a,b,c){a=this.aa;x(this,a.port+4,b,c,"MODE");a.gd=b;wn(this,!1)};m.il=function(a,b){var c=this.aa.sf;b&&!z(this)||x(this,a,null,b,this.aa.type+".COLOR",c);return c};
m.Bm=function(a,b,c){c&&!z(this)||x(this,a,b,c,this.aa.type+".COLOR");this.aa.sf!==b&&(this.aa.sf=b,fo(this,!1))};m.ml=function(a,b){return mo(this,this.aa,b)};function io(a,b,c,d){var e;b.Hc&&(e=b.Ac);x(a,c,null,d,"CRTC.INDX",e);return e}function jo(a,b,c,d){var e;b.Hc&&b.Ac<b.mh&&(e=b.mb[b.Ac]);d&&!z(a)||x(a,c,null,d,"CRTC."+b.jg[b.Ac],e);return e}
function ko(a,b,c,d,e){if(b.Ac<b.mh){e&&!z(a)||x(a,c,d,e,"CRTC."+b.jg[b.Ac]);b.mb[b.Ac]=d;if(12==b.Ac||13==b.Ac)ho(a,b)&1?(c=(b.mb[12]<<8)+b.mb[13]|0,b.qe!==c&&(b.qe=c,fo(a))):b.pf||(b.pf=b.di);(9==b.Ac&&8!=b.Ig||18==b.Ac&&223==d)&&wn(a,!0);xn(a)}}function lo(a,b,c){var d=b.gd;x(a,b.port+4,null,c,"MODE",d);return d}function mo(a,b,c){var d=ho(a,b);b===a.A?(d|=b.ma&48^48,b.Xe=!1):d=(b.ma^=9)|240;b.ma=d;x(a,b.port+6,null,c,b===a.A?"STATUS1":"STATUS",d);return d}
m.Pl=function(a,b){var c=this.A.ce;x(this,964,null,b,"SEQ.INDX",c);return c};m.hn=function(a,b,c){this.A.ce=b;x(this,964,b,c,"SEQ.INDX")};m.Ol=function(a,b){var c=this.A.Je[this.A.ce];b&&!A(this)||x(this,965,null,b,"SEQ."+this.A.Ug[this.A.ce],c);return c};m.gn=function(a,b,c){c&&!A(this)||x(this,965,b,c,"SEQ."+this.A.Ug[this.A.ce]);this.A.Je[this.A.ce]=b;switch(this.A.ce){case 2:this.A.qb=Rm[b&15];break;case 4:eo(this,co(this))&&qn(this,!0)}};
m.rl=function(a,b){var c=this.A.ji;b&&!A(this)||x(this,966,null,b,"DAC.MASK",c);return c};m.Jm=function(a,b,c){c&&!A(this)||x(this,966,b,c,"DAC.MASK");this.A.ji=b};m.sl=function(a,b){var c=this.A.Jg;b&&!A(this)||x(this,967,null,b,"DAC.STATE",c);return c};m.Km=function(a,b,c){c&&!A(this)||x(this,967,b,c,"DAC.READ");this.A.pd=b;this.A.Jg=3;this.A.Kc=0};m.Lm=function(a,b,c){c&&!A(this)||x(this,968,b,c,"DAC.WRITE");this.A.pd=b;this.A.Jg=0;this.A.Kc=0};
m.ql=function(a,b){var c=this.A.tf[this.A.pd]>>this.A.Kc&63;b&&!A(this)||x(this,969,null,b,"DAC.DATA["+t(this.A.pd)+"]["+t(this.A.Kc)+"]",c);this.A.Kc+=6;12<this.A.Kc&&(this.A.Kc=0,this.A.pd=this.A.pd+1&255);return c};m.Im=function(a,b,c){a=this.A.tf[this.A.pd];c&&!A(this)||x(this,969,b,c,"DAC.DATA["+t(this.A.pd)+"]["+t(this.A.Kc)+"]");b=a&~(63<<this.A.Kc)|(b&63)<<this.A.Kc;a!==b&&(this.A.tf[this.A.pd]=b,fo(this,!1));this.A.Kc+=6;12<this.A.Kc&&(this.A.Kc=0,this.A.pd=this.A.pd+1&255)};
m.Tl=function(a,b){var c=this.A.dg;x(this,970,null,b,"FEAT",c);return c};m.Vm=function(a,b,c){this.A.hk=b;x(this,970,b,c,"GRC2")};m.Ul=function(a,b){var c=this.A.uf;x(this,972,null,b,"MISC",c);return c};m.Um=function(a,b,c){this.A.gk=b;x(this,972,b,c,"GRC1")};m.yl=function(a,b){var c=this.A.be;x(this,974,null,b,"GRC.INDX",c);return c};m.Tm=function(a,b,c){this.A.be=b;x(this,974,b,c,"GRC.INDX")};
m.xl=function(a,b){var c=this.A.ae[this.A.be];b&&!A(this)||x(this,975,null,b,"GRC."+this.A.Tg[this.A.be],c);return c};
m.Sm=function(a,b,c){c&&!A(this)||x(this,975,b,c,"GRC."+this.A.Tg[this.A.be]);this.A.ae[this.A.be]=b;switch(this.A.be){case 0:this.A.Uf=Rm[b&15];this.A.qe=this.A.Uf&~this.A.$d;break;case 1:this.A.$d=~Rm[b&15];this.A.qe=this.A.Uf&~this.A.$d;break;case 2:this.A.nh=Rm[b&15]&-2139062144;break;case 3:case 5:eo(this,co(this));break;case 4:this.A.ci=(b&3)<<3;break;case 6:wn(this,!1);break;case 7:this.A.oh=Rm[b&15]&-2139062144;break;case 8:this.A.Mb=b|b<<8|b<<16|b<<24}};
m.kl=function(a,b){return io(this,this.aa,a,b)};m.Dm=function(a,b,c){var d=this.aa;d.Ig=d.Ac;d.Ac=b&31;x(this,a,b,c,"CRTC.INDX")};m.jl=function(a,b){return jo(this,this.aa,a,b)};m.Cm=function(a,b,c){ko(this,this.aa,a,b,c)};m.ll=function(a,b){return lo(this,this.aa,b)};m.Em=function(a,b,c){a=this.aa;x(this,a.port+4,b,c,"MODE");a.gd=b;wn(this,!1)};m.il=function(a,b){var c=this.aa.sf;b&&!A(this)||x(this,a,null,b,this.aa.type+".COLOR",c);return c};
m.Bm=function(a,b,c){c&&!A(this)||x(this,a,b,c,this.aa.type+".COLOR");this.aa.sf!==b&&(this.aa.sf=b,fo(this,!1))};m.ml=function(a,b){return mo(this,this.aa,b)};function io(a,b,c,d){var e;b.Hc&&(e=b.Ac);x(a,c,null,d,"CRTC.INDX",e);return e}function jo(a,b,c,d){var e;b.Hc&&b.Ac<b.mh&&(e=b.mb[b.Ac]);d&&!A(a)||x(a,c,null,d,"CRTC."+b.jg[b.Ac],e);return e}
function ko(a,b,c,d,e){if(b.Ac<b.mh){e&&!A(a)||x(a,c,d,e,"CRTC."+b.jg[b.Ac]);b.mb[b.Ac]=d;if(12==b.Ac||13==b.Ac)ho(a,b)&1?(c=(b.mb[12]<<8)+b.mb[13]|0,b.Md!==c&&(b.Md=c,fo(a))):b.pf||(b.pf=b.di);(9==b.Ac&&8!=b.Ig||18==b.Ac&&223==d)&&wn(a,!0);xn(a)}}function lo(a,b,c){var d=b.gd;x(a,b.port+4,null,c,"MODE",d);return d}function mo(a,b,c){var d=ho(a,b);b===a.A?(d|=b.ma&48^48,b.Xe=!1):d=(b.ma^=9)|240;b.ma=d;x(a,b.port+6,null,c,b===a.A?"STATUS1":"STATUS",d);return d}
var gn={948:Z.prototype.Fl,949:Z.prototype.El,952:Z.prototype.Gl,954:Z.prototype.Hl},hn={948:Z.prototype.$m,949:Z.prototype.Zm,952:Z.prototype.an},jn={980:Z.prototype.kl,981:Z.prototype.jl,984:Z.prototype.ll,985:Z.prototype.il,986:Z.prototype.ml},kn={980:Z.prototype.Dm,981:Z.prototype.Cm,984:Z.prototype.Em,985:Z.prototype.Bm},ln={960:Z.prototype.el,961:Z.prototype.Ck,962:Z.prototype.Rl,964:Z.prototype.Pl,965:Z.prototype.Ol,974:Z.prototype.yl,975:Z.prototype.xl},mn={954:Z.prototype.ek,960:Z.prototype.dk,
961:Z.prototype.dk,962:Z.prototype.bn,964:Z.prototype.hn,965:Z.prototype.gn,970:Z.prototype.Vm,972:Z.prototype.Um,974:Z.prototype.Tm,975:Z.prototype.Sm,986:Z.prototype.ek},nn={963:Z.prototype.Sl,966:Z.prototype.rl,967:Z.prototype.sl,969:Z.prototype.ql,970:Z.prototype.Tl,972:Z.prototype.Ul},on={963:Z.prototype.kn,966:Z.prototype.Jm,967:Z.prototype.Km,968:Z.prototype.Lm,969:Z.prototype.Im};
Qa(function(){for(var a=nb(document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=jb(c),e=document.createElement("canvas");if(void 0===e||!e.getContext){c.innerHTML="<br/>Missing &lt;canvas&gt; support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=ya().indexOf("MSIE")&&(c.onresize=function(a,b,c,d){return function(){b.style.height=
@ -546,7 +546,7 @@ m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.N=Eb(a,"ChipSet");hc(b,
function ro(a,b){var c=0;void 0===b&&(b=[0,0,0]);a.L=b[c++];a.Yb=b[c++];a.Bf=b[c];return!0}m.tl=function(a,b){var c=this.L;x(this,a,null,b,"DATA",c);return c};m.Ql=function(a,b){var c=this.Yb;x(this,a,null,b,"STAT",c);return c};m.pl=function(a,b){var c=this.Bf;x(this,a,null,b,"CTRL",c);return c};
m.Mm=function(a,b,c){x(this,a,b,c,"DATA");this.L=b;this.Yb|=64;if(this.A)8==b?this.A.value=this.A.value.slice(0,-1):(this.A.value+=String.fromCharCode(b),this.A.scrollTop=this.A.scrollHeight),a=!0;else if(null!=this.B){if(10==b||1024<=this.B.length)this.O(this.B),this.B="";10!=b&&(this.B+=String.fromCharCode(b));a=!0}else a=!1;a&&(this.Yb&=-65);so(this)};m.Hm=function(a,b,c){x(this,a,b,c,"CTRL");this.Bf=b;so(this)};function so(a){a.N&&a.C&&(a.Bf&16&&!(a.Yb&64)?eg(a.N,a.C):dg(a.N,a.C))}
var po={0:no.prototype.tl,1:no.prototype.Ql,2:no.prototype.pl},qo={0:no.prototype.Mm,2:no.prototype.Hm};Qa(function(){for(var a=nb(document,"pcjs","parallel"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new no(d);mb(d,c)}});
function to(a){this.ra=a.adapter;switch(this.ra){case 1:this.ka=1016;this.fa=4;break;case 2:this.ka=760;this.fa=3;break;default:w("Unrecognized serial adapter #"+this.ra);return}this.V=this.U=null;this.Ca=a.tabSize;this.ya=a.charBOL;this.X=0;Ua.call(this,"SerialPort",a,to,8388608);a=a.binding;"console"==a?this.U="":kb(this,a,uo)}db(to);var uo="buffer";m=to.prototype;m.wi=function(a,b){return a==this.de?(this.W=b,this):null};
function to(a){this.ra=a.adapter;switch(this.ra){case 1:this.ka=1016;this.fa=4;break;case 2:this.ka=760;this.fa=3;break;default:w("Unrecognized serial adapter #"+this.ra);return}this.V=this.U=null;this.Ca=a.tabSize;this.ya=a.charBOL;this.X=0;Ua.call(this,"SerialPort",a,to,8388608);a=a.binding;"console"==a?this.U="":kb(this,a,uo)}db(to);var uo="buffer";m=to.prototype;m.wi=function(a,b){return a==this.ee?(this.W=b,this):null};
m.Qb=function(a,b,c){var d=this;switch(b){case uo:return this.qa[b]=this.V=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),vo(d,[b]);return!0},c.onkeypress=function(a){a=a||window.event;vo(d,[a.which||a.keyCode]);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.N=Eb(a,"ChipSet");hc(b,this,wo,this.ka);lc(b,this,xo,this.ka);rb(this)};m.ic=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};m.reset=function(){yo(this)};
m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.pa;c[b++]=this.wa;c[b++]=this.aa;c[b++]=this.ja;c[b++]=this.L;c[b++]=this.B;c[b++]=this.C;c[b++]=this.A;c[b++]=this.ua;c[b]=this.ga;N(a,0,c);return a.data()};m.restore=function(a){return yo(this,a[0])};function yo(a,b){var c=0;void 0===b&&(b=[0,0,384,0,1,0,0,96,48,[]]);a.pa=b[c++];a.wa=b[c++];a.aa=b[c++];a.ja=b[c++];a.L=b[c++];a.B=b[c++];a.C=b[c++];a.A=b[c++];a.ua=b[c++];a.ga=b[c];return!0}function vo(a,b){a.ga=a.ga.concat(b);zo(a)}
@ -559,33 +559,33 @@ var wo={0:to.prototype.Nl,1:to.prototype.zl,2:to.prototype.Al,3:to.prototype.Bl,
m.Ic=function(a,b,c,d){this.V=a;this.ea=b;this.F=c;this.ha=d;for(b=null;b=Eb(a,"Video",b);)this.B.push(b)};m.ic=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.pa&&!this.N){for(var c=null;(c=Eb(this.V,this.pa,c))&&(!c.wi||!(this.N=c.wi(this.ka,this))););if(this.N)for(this.A=[],c=0;c<this.B.length;c++){var d;d=this.B[c];d.W=this;(d=d.V)&&this.A.push(d)}else w(this.id+": "+this.pa+" "+this.ka+" unavailable")}this.Hc?Ao(this):Bo(this)}return!0};
m.hc=function(a){return a?this.save():!0};m.reset=function(){Do(this)};m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.Hc;c[b++]=this.L;c[b++]=this.W;c[b++]=this.U;c[b++]=this.X;c[b++]=this.aa;c[b++]=this.fa;c[b]=this.C;N(a,0,c);return a.data()};m.restore=function(a){return Do(this,a[0])};function Do(a,b){var c=0;void 0===b&&(b=[!1,-1,-1,0,0,!1,!1,0]);var d=b[c++];a.Hc=d;a.L=b[c++];a.W=b[c++];a.U=b[c++];a.X=b[c++];a.aa=b[c++];a.fa=b[c++];a.C=b[c];return!0}m.Vf=function(a){this.ga=a};
function Ao(a){if(!a.ja)for(var b=0;b<a.A.length;b++)Eo(a,a.A[b])&&(a.ja=!0)}function Bo(a){if(a.ja)for(var b=0;b<a.A.length;b++){var c=a.A[b];c&&(c.style.cursor="auto")}}function Eo(a,b){return b?(b.addEventListener("mousemove",function(b){Fo(a,b)},!1),b.addEventListener("mousedown",function(b){Fo(a,b,!0)},!1),b.addEventListener("mouseup",function(b){Fo(a,b,!1)},!1),b.style.cursor="none",!0):!1}
function Fo(a,b,c){if(void 0!==c){var d;!(d=!1!==a.ga)&&(d=a.B.length)&&(d=a.B[0],d=d.Og?d.De(!0):!1);d||(a.ga=null);a.ie(b.button,c)}else{if(0>a.L||0>a.W)a.L=b.clientX,a.W=b.clientY;a.ga?(c=b.movementX||b.mozMovementX||b.webkitMovementX||0,d=b.movementY||b.mozMovementY||b.webkitMovementY||0):(c=b.clientX-a.L,d=b.clientY-a.W);a.L=b.clientX;a.W=b.clientY;a.Hf(c,d,a.L,a.W)}}
m.ie=function(a,b){if(this.Hc&&this.F&&this.F.la.Ib){var c="mouse button"+a+" "+(b?"dn":"up");switch(a){case sn:if(this.aa!=b){this.aa=b;Go(this,c);return}break;case 2:if(this.fa!=b){this.fa=b;Go(this,c);return}}y(this,c+": ignored")}};m.Hf=function(a,b,c,d){this.Hc&&this.F&&this.F.la.Ib&&(a||b)&&(this.U=a,this.X=b,Go(this,null,c,d))};
function Go(a,b,c,d){var e=64|(a.aa?32:0)|(a.fa?16:0)|(a.X&192)>>4|(a.U&192)>>6,f=a.U&63,g=a.X&63;z(a,8388608)&&y(a,(b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+t(e)+","+t(f)+","+t(g)+"]",0,!0);vo(a.N,[e,f,g]);a.U=a.X=0}Qa(function(){for(var a=nb(document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new Co(d);mb(d,c)}});
function Fo(a,b,c){if(void 0!==c){var d;!(d=!1!==a.ga)&&(d=a.B.length)&&(d=a.B[0],d=d.Og?d.De(!0):!1);d||(a.ga=null);a.je(b.button,c)}else{if(0>a.L||0>a.W)a.L=b.clientX,a.W=b.clientY;a.ga?(c=b.movementX||b.mozMovementX||b.webkitMovementX||0,d=b.movementY||b.mozMovementY||b.webkitMovementY||0):(c=b.clientX-a.L,d=b.clientY-a.W);a.L=b.clientX;a.W=b.clientY;a.Hf(c,d,a.L,a.W)}}
m.je=function(a,b){if(this.Hc&&this.F&&this.F.la.Ib){var c="mouse button"+a+" "+(b?"dn":"up");switch(a){case sn:if(this.aa!=b){this.aa=b;Go(this,c);return}break;case 2:if(this.fa!=b){this.fa=b;Go(this,c);return}}y(this,c+": ignored")}};m.Hf=function(a,b,c,d){this.Hc&&this.F&&this.F.la.Ib&&(a||b)&&(this.U=a,this.X=b,Go(this,null,c,d))};
function Go(a,b,c,d){var e=64|(a.aa?32:0)|(a.fa?16:0)|(a.X&192)>>4|(a.U&192)>>6,f=a.U&63,g=a.X&63;A(a,8388608)&&y(a,(b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+t(e)+","+t(f)+","+t(g)+"]",0,!0);vo(a.N,[e,f,g]);a.U=a.X=0}Qa(function(){for(var a=nb(document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new Co(d);mb(d,c)}});
function Ho(a,b,c){Ua.call(this,"Disk",{id:a.ve+".disk"+r(++Io,4)},Ho,2097152);this.controller=a;this.V=a.V;this.ha=a.ha;this.B=b;this.ea=b.name;this.bf=b.bf;this.qg=this.N=!1;Jo(this,c,b.Bb,b.ub,b.lb,b.Va);this.U=[];this.fa=[];this.L=null;this.ja=0;this.ga=!1;rb(this)}var Io=0;db(Ho);function Ko(a,b,c,d,e,f){this.za=a;this.lc=c;this.Vg=d;this.Bi=e;this.xe=f}var Lo=[0,2],Mo=[24,2],No=[60,4],Oo=[0,2],Po=[4,2],Qo=[6,2],Ro=[28,2],So=[32,2],To=[34,2],Uo=[38,2],Vo=[44,4],Wo=[50,2];
function Xo(a,b,c){var d;c=c||2;var e=b&511,f=Yo(a.za,a.xe[b>>9]);if(f){if(e+c<=f.length)return Zo(a.za,f,e,c);for(e=d=0;c--;)d|=Xo(a,b++,1)<<e,e+=8}return d}function $o(a,b,c){return Xo(a,b[0]+(c||0),b[1])}function ap(a,b,c){for(var d=0;!c||b<c;){var e=Xo(a,b,1);if(!e)break;var f;f=a;var g=b+1,h=e,k="";for(h||(h=-1);h--;){var l=Xo(f,g++,1);if(!l)break;k+=String.fromCharCode(l)}f=k;if(!f)break;b+=1+e;if(d){if(e=Xo(a,b),g=a.A[e])g=g[0],a.zd[g]&&a.zd[g].we[e].push(f)}else c||(a.fg=f);b+=2;d++}}
Ko.prototype.Si=function(a,b){var c=null;if(this.zd)for(var d in this.zd){var e=this.zd[d];if(a>=e.ei&&a<=e.ak){d=a-=e.ei;var f,g;for(g in e.we){var h=e.we[g],k=a-h[0];if(!k){c=this.fg+"!"+h[1];break}b&&0<k&&k<d&&(f=h,d=k)}!c&&f&&(c=this.fg+"!"+f[1]+"+"+u(d));break}}return c||this.lc+"+"+("0x"+r(a))};m=Ho.prototype;m.Ic=function(a,b,c,d){this.ha=d};m.ic=function(a,b){b||!this.qg||this.N||(rb(this,!1),this.load(this.ea,this.W,null,this.Pk,this));return!0};m.Pk=function(){rb(this,!0)};
m.hc=function(a,b){if(this.N){var c,d=0;if(this.ga&&!za("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=bp(this,!1);)if(d=c[0]){this.controller.Oa('Unable to save "'+this.ea+'" (error '+d+")");break}b&&this.N&&(c="action=close&volume="+this.W,c+="&machine="+this.controller.ff(),c+="&user="+this.controller.je(),va(xa()+"/api/v1/disk?"+c,null,!0),this.N=!1);!d&&a&&this.controller.Oa(this.ea+" saved")}return!0};
m.hc=function(a,b){if(this.N){var c,d=0;if(this.ga&&!za("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=bp(this,!1);)if(d=c[0]){this.controller.Oa('Unable to save "'+this.ea+'" (error '+d+")");break}b&&this.N&&(c="action=close&volume="+this.W,c+="&machine="+this.controller.ff(),c+="&user="+this.controller.ke(),va(xa()+"/api/v1/disk?"+c,null,!0),this.N=!1);!d&&a&&this.controller.Oa(this.ea+" saved")}return!0};
function Jo(a,b,c,d,e,f){a.mode=b;a.Bb=c;a.ub=d;a.lb=e;a.Va=f;a.A=[];if("preload"!=a.mode){b=Array(a.Bb);for(c=0;c<b.length;c++){d=Array(a.ub);for(e=0;e<d.length;e++){f=Array(a.lb);for(var g=1;g<=f.length;g++)f[g-1]=cp(null,c,e,g,a.Va,"local"==a.mode?0:null);d[e]=f}b[c]=d}a.A=b}a.aa=null}
m.load=function(a,b,c,d,e){var f=b;if(this.X)return!0;this.ea=a;this.W=b;this.li=fa(b);var g=this;this.X=d;this.ka=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.Bb=d[0];g.ub=d[1];g.lb=d[2];g.Va=512;b=g.Va>>2;var e=d=0,a=new DataView(a,0,c);g.A=Array(g.Bb);for(c=0;c<g.A.length;c++)for(var f=g.A[c]=Array(g.ub),F=0;F<f.length;F++)for(var v=f[F]=Array(g.lb),E=0;E<v.length;E++){for(var H=cp(null,c,F,E+1,g.Va,0),L=H.data,V=0;V<b;V++,
e+=4)var P=L[V]=a.getInt32(e,!0),d=d+P&-1;H.Zc=b;v[E]=H}g.aa=d;b=g}else g.Oa("Unrecognized diskette format ("+c+" bytes)");g.X&&(g.X.call(g.controller,g.B,b,g.ea,g.W),g.X=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=dp(this,b),this.qg=!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=xa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.bf?"":d)+"&format=json"));return!!va(f,null,!0,function(a,b,c){ep(g,a,b,c)})};
function ep(a,b,c,d){var e=null;a.ef=!1;var f=0>d&&a.V&&!a.V.la.cc;if(a.qg)d?a.controller.Oa('Unable to connect to disk "'+a.W+'" (error '+d+": "+c+")",f):(a.N=!0,fp(a),e=a);else if(d)a.controller.Oa('Unable to load disk "'+a.ea+'" (error '+d+": "+b+")",f);else{fb(a.controller.ve,b,c);try{if(0<fa(a.li,!0).toLowerCase().indexOf("-readonly"))a.ef=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.ef=!0)}var h;"<"==c.substr(0,1)?h=["Missing disk image: "+a.ea]:
h=0>c.indexOf("0x")&&'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+c+")");if(h.length)if(1==h.length)w(h[0]);else{a.Bb=h.length;a.ub=h[0].length;a.lb=h[0][0].length;var k=h[0][0][0];a.Va=k&&k.length||512;for(d=c=0;d<a.Bb;d++)for(f=0;f<a.ub;f++)for(g=0;g<a.lb;g++)if(k=h[d][f][g]){var l=k.length;void 0===l&&(l=k.length=512);var l=l>>2,n=k.pattern;void 0===n&&(n=k.pattern=0);var q=k.data;if(void 0===q){var p=k.bytes;if(void 0!==p&&p.length){for(var A=
l<<2,F=p.length;F<A;F++)p[F]=n;gp(k,p,0)}else q=[],n=k.pattern=n|n<<8|n<<16|n<<24,k.data=q;delete k.bytes}cp(k,d,f);for(A=0;A<q.length;A++)c=c+q[A]&-1}a.A=h;a.aa=c;fp(a);e=a}else w("Empty disk image: "+a.ea)}catch(v){w("Disk image error ("+b+"): "+v.message)}}a.X&&(a.X.call(a.ka,a.B,e,a.ea,a.W),a.X=null)}
h=0>c.indexOf("0x")&&'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+c+")");if(h.length)if(1==h.length)w(h[0]);else{a.Bb=h.length;a.ub=h[0].length;a.lb=h[0][0].length;var k=h[0][0][0];a.Va=k&&k.length||512;for(d=c=0;d<a.Bb;d++)for(f=0;f<a.ub;f++)for(g=0;g<a.lb;g++)if(k=h[d][f][g]){var l=k.length;void 0===l&&(l=k.length=512);var l=l>>2,n=k.pattern;void 0===n&&(n=k.pattern=0);var q=k.data;if(void 0===q){var p=k.bytes;if(void 0!==p&&p.length){for(var z=
l<<2,F=p.length;F<z;F++)p[F]=n;gp(k,p,0)}else q=[],n=k.pattern=n|n<<8|n<<16|n<<24,k.data=q;delete k.bytes}cp(k,d,f);for(z=0;z<q.length;z++)c=c+q[z]&-1}a.A=h;a.aa=c;fp(a);e=a}else w("Empty disk image: "+a.ea)}catch(v){w("Disk image error ("+b+"): "+v.message)}}a.X&&(a.X.call(a.ka,a.B,e,a.ea,a.W),a.X=null)}
function fp(a){var b,c,d={},e;if(a.C&&a.C.length)for(b=a.A,c=0;c<b.length;c++)for(var f=0;f<b[c].length;f++)for(e=0;e<b[c][f].length;e++){var g=b[c][f][e];g&&(delete g.file,delete g.mm)}a.C=[];d.Zf=d.Gf=0;b=a.Bb*a.ub*a.lb*a.Va;a.N&&a.log("ignore any synchronous XMLHttpRequest warnings here (for now)");if(e=Yo(a,0)){d.Va=Zo(a,e,11,2);f=!0;if(d.Va!=a.Va){f=!1;d.Ff=1;d.zg=12;d.jh=d.Ff+2;d.xg=1;d.Va=a.Va;if(163840==b&&254==hp(a,d,0,0))d.Gf=320,d.th=64,f=!0;else if(327680==b&&255==hp(a,d,0,0))d.Gf=640,
d.th=112,f=!0;else for(c=446,b=0;4>b;b++){if(128==Zo(a,e,c+0,1)){d.Zf=Zo(a,e,c+8,4);(e=Yo(a,d.Zf))&&(f=!0);break}c+=16}if(!f)return}d.Gf||(d.Gf=Zo(a,e,19,2)||Zo(a,e,32,4),d.Ff=Zo(a,e,14,2),d.jh=d.Ff+Zo(a,e,22,2)*Zo(a,e,16,1),d.th=Zo(a,e,17,2),d.xg=Zo(a,e,13,1));d.hh=d.jh+((32*d.th+(d.Va-1))/d.Va|0);d.hm=(d.Gf-d.hh)/d.xg|0;d.zg=4084>=d.hm?12:16;d.Sk=12==d.zg?4086:65526;b=[];for(e=d.jh;e<d.hh;e++)b.push(d.Zf+e);ip(a,d,a.li,"",b);for(b=0;b<a.C.length;b++){d=a.C[b];for(e=c=0;e<d.xe.length;e++){var f=
d.xe[e],g=c,h=a.ub*a.lb,k=f%h,l=k/a.lb|0,k=k%a.lb,n=void 0,q=void 0,p=void 0;(n=a.A[f/h|0])&&(q=n[l])&&(p=q[k])&&!p.file&&(p.file=d,p.mm=g);c+=a.Va}e=d;if((ha(e.lc,".EXE")||ha(e.lc,".DLL")||ha(e.lc,".DRV"))&&23117==$o(e,Lo)&&64==$o(e,Mo)&&(c=$o(e,No),17742==$o(e,Oo,c))){l=$o(e,Ro,c);g=$o(e,To,c);h=$o(e,Wo,c);if(g&&l){d=e;f=g+c;g=l;h=h||0;l=1;d.zd=[];for(d.A=[];g--;){if(k=Xo(d,f)<<h)n=Xo(d,f+2)||65536,d.zd[l++]={ei:k,ak:k+n-1,we:[]};f+=8}d.zd[254]={ei:0,ak:0,we:[]}}g=$o(e,Po,c);h=$o(e,Qo,c);if(g&&
h)for(d=e,f=g+=c,g=g+h,h=1;f<g;){k=Xo(d,f);l=k&255;if(!l)break;k=k>>8;f+=2;if(k)for(;l--;)Xo(d,f,1),254>=k?(n=k,q=Xo(d,f+1),f+=3):(n=Xo(d,f+3,1),q=Xo(d,f+4),f+=6),d.zd[n]&&(d.zd[n].we[h]=[q]),d.A[h]=[n,q],h++;else h+=l}(g=$o(e,Uo,c))&&ap(e,g+c);g=$o(e,Vo,c);h=$o(e,So,c);g&&h&&ap(e,g,g+h)}}}}
function ip(a,b,c,d,e){var f,g=a.C.length,h=b.Va/32|0;b.zo=d+"\\";for(var k=0;k<e.length;k++)for(var l=e[k],n=0;n<h;n++){var q=a,p=b;f=n;p.ue&&p.gi&&p.gi==l||(p.gi=l,p.ue=Yo(q,p.gi));if(p.ue){f*=32;var A=Zo(q,p.ue,f,1);if(0==A)f=!1;else{if(229==A)p.lc=null;else{p.lc=na(jp(q,p.ue,f+0,8));A=na(jp(q,p.ue,f+8,3));A.length&&(p.lc+="."+A);p.Vg=Zo(q,p.ue,f+11,1);p.Bi=Zo(q,p.ue,f+28,2);p.Rk=Zo(q,p.ue,f+26,2);f=p;var A=[],F=p.Rk;if(F){do{if(2>F)break;for(var v=p.hh+(F-2)*p.xg,E=0;E<p.xg;E++)A.push(p.Zf+v++);
F=hp(q,p,F,0)|hp(q,p,F,1)}while(F<=p.Sk)}f.xe=A}f=!0}}else f=!1;if(!f){k=e.length;break}null!=b.lc&&"."!=b.lc&&".."!=b.lc&&(f=new Ko(a,0,b.lc,b.Vg,b.Bi,b.xe),a.C.push(f))}for(e=a.C.length;g<e;g++)f=a.C[g],f.Vg&16&&f.xe.length&&ip(a,b,c,d+"\\"+f.lc,f.xe)}function hp(a,b,c,d){var e=0,f=8*b.Va;c=b.zg*c+(d?8:0);var g=c/f|0;b.mi&&b.ih&&b.ih==b.Ff+g||(b.ih=b.Ff+g,b.mi=Yo(a,b.Zf+b.ih));b.mi&&(c=c%f|0,e=Zo(a,b.mi,c>>3,1),d?e=16==b.zg?e<<8:c&7?e<<4:(e&15)<<8:c&7&&(e>>=4));return e}
function ip(a,b,c,d,e){var f,g=a.C.length,h=b.Va/32|0;b.zo=d+"\\";for(var k=0;k<e.length;k++)for(var l=e[k],n=0;n<h;n++){var q=a,p=b;f=n;p.ue&&p.gi&&p.gi==l||(p.gi=l,p.ue=Yo(q,p.gi));if(p.ue){f*=32;var z=Zo(q,p.ue,f,1);if(0==z)f=!1;else{if(229==z)p.lc=null;else{p.lc=na(jp(q,p.ue,f+0,8));z=na(jp(q,p.ue,f+8,3));z.length&&(p.lc+="."+z);p.Vg=Zo(q,p.ue,f+11,1);p.Bi=Zo(q,p.ue,f+28,2);p.Rk=Zo(q,p.ue,f+26,2);f=p;var z=[],F=p.Rk;if(F){do{if(2>F)break;for(var v=p.hh+(F-2)*p.xg,E=0;E<p.xg;E++)z.push(p.Zf+v++);
F=hp(q,p,F,0)|hp(q,p,F,1)}while(F<=p.Sk)}f.xe=z}f=!0}}else f=!1;if(!f){k=e.length;break}null!=b.lc&&"."!=b.lc&&".."!=b.lc&&(f=new Ko(a,0,b.lc,b.Vg,b.Bi,b.xe),a.C.push(f))}for(e=a.C.length;g<e;g++)f=a.C[g],f.Vg&16&&f.xe.length&&ip(a,b,c,d+"\\"+f.lc,f.xe)}function hp(a,b,c,d){var e=0,f=8*b.Va;c=b.zg*c+(d?8:0);var g=c/f|0;b.mi&&b.ih&&b.ih==b.Ff+g||(b.ih=b.Ff+g,b.mi=Yo(a,b.Zf+b.ih));b.mi&&(c=c%f|0,e=Zo(a,b.mi,c>>3,1),d?e=16==b.zg?e<<8:c&7?e<<4:(e&15)<<8:c&7&&(e>>=4));return e}
function Yo(a,b){var c=a.ub*a.lb,d=b/c|0;return d<a.Bb?(c=b%c,a.seek(d,c/a.lb|0,c%a.lb+1)):null}function Zo(a,b,c,d){for(var e=0,f=0;d--;){var g=a.read(b,c++);if(0>g)break;e|=g<<f;f+=8}return e}function jp(a,b,c,d){for(var e="";d--;){var f=a.read(b,c++);if(0>=f)break;e+=String.fromCharCode(f)}return e}function cp(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Tk=b;a.Uk=c;a.wd=a.Zc=0;a.Wa=!1;return a}
function dp(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.Bb+":"+a.ub+":"+a.lb+":"+a.Va;c+="&machine="+a.controller.ff();c+="&user="+a.controller.je();return xa()+"/api/v1/disk?"+c}
function kp(a,b,c,d,e,f,g){if(a.N){var h;h="action=read&volume="+a.W;h+="&chs="+a.Bb+":"+a.ub+":"+a.lb+":"+a.Va;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.controller.ff());h+="&user="+a.controller.je();va(xa()+"/api/v1/disk?"+h,null,f,function(h,l,n){h=[b,c,d,e,f,g];var q=!1,p=h[0],A=h[1],F=h[2],v=h[3];if(!n){l=JSON.parse(l);for(q=0;v--;){var E=a.seek(p,A,F,!0);if(!E)break;gp(E,l,q);q+=E.length;F++}q=h[4]}(h=h[5])&&h(n,q)})}else g&&g(-1,!1)}
function lp(a,b,c,d,e,f,g){if(a.N){var h={};a.ga=!0;h.action="write";h.volume=a.W;h.chs=a.Bb+":"+a.ub+":"+a.lb+":"+a.Va;h.addr=b+":"+c+":"+d+":"+e;h.machine=a.controller.ff();h.user=a.controller.je();h.data=JSON.stringify(f);va(xa()+"/api/v1/disk",h,g,function(f,h,n){var q=[b,c,d,e,g];f=q[0];h=q[1];var p=q[2],A=q[3],q=q[4];a.ga=!1;if(0<=f&&f<a.A.length&&0<=h&&h<a.A[f].length)for(p=p-1;0<A--&&0<=p&&p<a.A[f][h].length;p++){var F=a.A[f][h][p];n?mp(a,F,!1):F.Wa||(F.wd=F.Zc=0)}q&&np(a)})}return!1}
function dp(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.Bb+":"+a.ub+":"+a.lb+":"+a.Va;c+="&machine="+a.controller.ff();c+="&user="+a.controller.ke();return xa()+"/api/v1/disk?"+c}
function kp(a,b,c,d,e,f,g){if(a.N){var h;h="action=read&volume="+a.W;h+="&chs="+a.Bb+":"+a.ub+":"+a.lb+":"+a.Va;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.controller.ff());h+="&user="+a.controller.ke();va(xa()+"/api/v1/disk?"+h,null,f,function(h,l,n){h=[b,c,d,e,f,g];var q=!1,p=h[0],z=h[1],F=h[2],v=h[3];if(!n){l=JSON.parse(l);for(q=0;v--;){var E=a.seek(p,z,F,!0);if(!E)break;gp(E,l,q);q+=E.length;F++}q=h[4]}(h=h[5])&&h(n,q)})}else g&&g(-1,!1)}
function lp(a,b,c,d,e,f,g){if(a.N){var h={};a.ga=!0;h.action="write";h.volume=a.W;h.chs=a.Bb+":"+a.ub+":"+a.lb+":"+a.Va;h.addr=b+":"+c+":"+d+":"+e;h.machine=a.controller.ff();h.user=a.controller.ke();h.data=JSON.stringify(f);va(xa()+"/api/v1/disk",h,g,function(f,h,n){var q=[b,c,d,e,g];f=q[0];h=q[1];var p=q[2],z=q[3],q=q[4];a.ga=!1;if(0<=f&&f<a.A.length&&0<=h&&h<a.A[f].length)for(p=p-1;0<z--&&0<=p&&p<a.A[f][h].length;p++){var F=a.A[f][h][p];n?mp(a,F,!1):F.Wa||(F.wd=F.Zc=0)}q&&np(a)})}return!1}
function mp(a,b,c){b.Wa=!0;var d=a.U.indexOf(b);0<=d&&(a.U.splice(d,1),a.fa.splice(d,1));a.U.push(b);a.fa.push(pa());c&&np(a)}function np(a){if(a.U.length){var b=a.fa[0]+2E3;a.L&&a.ja<b&&(clearTimeout(a.L),a.L=null);if(!a.L){var c=pa(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.L=setTimeout(function(){bp(a,!0)},b);a.ja=c+b}}else a.L&&(clearTimeout(a.L),a.L=null)}
function bp(a,b){b&&(a.L=null);var c=a.U[0];if(c){for(var d=c.Tk,e=c.Uk,c=c.sector,f=0,g=[],h=c-1;h<a.A[d][e].length;h++){var k=a.A[d][e][h];if(!k.Wa)break;var l=a.U.indexOf(k);a.U.splice(l,1);a.fa.splice(l,1);g=g.concat(op(k));k.Wa=!1;f++}d=lp(a,d,e,c,f,g,b);return b||d}return!1}m.info=function(){return this.A.length?[this.A.length,this.A[0].length,this.A[0][0].length,this.A[0][0][0].length]:[0,0,0,0]};
m.seek=function(a,b,c,d,e){var f=null,g=this.B,h=this.A[a];if(h){var k=h[b];if(!k&&g.Xg&&b<g.ub)for(k=h[b]=Array(g.ge),h=0;h<k.length;h++)k[h]=cp(null,a,b,h+1,g.Hb,0);if(k){for(h=0;h<k.length;h++)if(k[h]&&k[h].sector==c){f=k[h];if(null===f.pattern)if(d)f.pattern=0;else{for(d=1;++h<k.length;)null===k[h].pattern&&d++;kp(this,a,b,c,d,null!=e,function(a,b){a&&(f=null);e&&e(f,b)});return e?null:f}break}!f&&g.Xg&&9==g.xb&&(f=k[h]=cp(null,a,b,g.xb,g.Hb,0))}}e&&e(f,!1);return f};
m.seek=function(a,b,c,d,e){var f=null,g=this.B,h=this.A[a];if(h){var k=h[b];if(!k&&g.Xg&&b<g.ub)for(k=h[b]=Array(g.he),h=0;h<k.length;h++)k[h]=cp(null,a,b,h+1,g.Hb,0);if(k){for(h=0;h<k.length;h++)if(k[h]&&k[h].sector==c){f=k[h];if(null===f.pattern)if(d)f.pattern=0;else{for(d=1;++h<k.length;)null===k[h].pattern&&d++;kp(this,a,b,c,d,null!=e,function(a,b){a&&(f=null);e&&e(f,b)});return e?null:f}break}!f&&g.Xg&&9==g.xb&&(f=k[h]=cp(null,a,b,g.xb,g.Hb,0))}}e&&e(f,!1);return f};
function gp(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e}function op(a){var b=a.length,c=Array(b),d=0,b=b>>2,e=a.data;a=a.pattern;for(var f=0;f<b;f++){var g=f<e.length?e[f]:a;c[d++]=g&255;c[d++]=g>>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}m.read=function(a,b){var c=-1;if(a&&b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c};
m.write=function(a,b,c){if(this.ef)return!1;if(b<a.length){if(c!=this.read(a,b,!0)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Zc?f<a.wd?(a.Zc+=a.wd-f,a.wd=f):f>=a.wd+a.Zc&&(a.Zc+=f-(a.wd+a.Zc)+1):(a.wd=f,a.Zc=1);d[f]=d[f]&~(255<<b)|c<<b;this.N&&mp(this,a,!0)}return!0}return null};
m.save=function(){var a=0,b=[];b[a++]=[this.W,this.aa,this.Bb,this.ub,this.lb,this.Va];if(!this.N&&!this.ef)for(var c=this.A,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var g=c[d][e][f];if(g&&g.Zc){for(var h=[],k=0,l=g.wd,n=g.wd+g.Zc;l<n;)h[k++]=g.data[l++];b[a++]=[d,e,f,g.wd,h]}}return b};
@ -593,65 +593,65 @@ m.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){v
b+" changes applied)";b=-1;break}if(this.ef){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.A[h][k][l]){for(k=h.data.length;k<e;)h.data[k++]=h.pattern;k=0;h.wd=e;for(h.Zc=f.length;e<g;)h.data[e++]=f[k++];b++}}}0>b?-2!=b&&this.controller.Oa("Unable to restore disk '"+this.ea+": "+c):fp(this);return b};
m.toJSON=function(){var a;a=0;for(var b;b=Yo(this,a++);)pp(b);a=JSON.stringify(this.A,function(a,b){return"file"==a?void 0:b});a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");a=a.replace(/(sector|length|data|pattern):/gm,'"$1":');return a=a.replace(/([\]}]),/gm,"$1,\n")};
function pp(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}function qp(a){Ua.call(this,"FDC",a,qp,524288);this.dmaRead=this.wk;this.dmaWrite=this.xk;this.dmaFormat=this.Lk;this.U=a.autoMount||null;this.B=[];this.ga=!Ga("Mobi")&&window&&"FileReader"in window}db(qp);aa={};
var rp={3:{Ud:3,he:0,name:aa.Yn},4:{Ud:2,he:1,name:aa.Wn},5:{Ud:9,he:7,name:aa.ho},6:{Ud:9,he:7,name:aa.Rn},7:{Ud:2,he:0,name:aa.Tn},8:{Ud:1,he:2,name:aa.Xn},10:{Ud:2,he:7,name:aa.Sn},13:{Ud:6,he:7,name:aa.Dn},15:{Ud:3,he:0,name:aa.Vn}};m=qp.prototype;
var rp={3:{Vd:3,ie:0,name:aa.Yn},4:{Vd:2,ie:1,name:aa.Wn},5:{Vd:9,ie:7,name:aa.ho},6:{Vd:9,ie:7,name:aa.Rn},7:{Vd:2,ie:0,name:aa.Tn},8:{Vd:1,ie:2,name:aa.Xn},10:{Vd:2,ie:7,name:aa.Sn},13:{Vd:6,ie:7,name:aa.Dn},15:{Vd:3,ie:0,name:aa.Vn}};m=qp.prototype;
m.Qb=function(a,b,c){var d=this;switch(b){case "listDisks":return this.qa[b]=c,c.onchange=function(){var a=d.qa.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("("+b+")")}catch(h){w("FDC option error: "+h.message)}b=g.desc;void 0===b&&(b="");g=g.href;void 0!==g&&(b='<a href="'+g+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.qa[b]=c,c.onchange=function(){var a=ca(c.value,10);null!=a&&sp(d,a)},!0;
case "loadDrive":return this.qa[b]=c,c.onclick=function(){var a=d.qa.listDisks;a&&tp(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDrive":if(!this.ga){c.parentNode.removeChild(c);break}this.qa[b]=c;c.onclick=function(){var a=d.qa.listDrives;if(a&&a.options&&d.A)if(a=ca(a.value,10),a=d.A[a])if(a.za){for(var b=a.za,c="",h=0,k;k=Yo(b,h++);)for(var l=0,n=k.length;l<n;l++)c+=String.fromCharCode(Zo(b,k,l,1));a=Ia(btoa(c),"octet-stream",!0,a.za.li.replace(".json",".img"));w(a)}else d.Oa("No disk loaded in drive");
else d.Oa("No drive selected")};return!0;case "mountDrive":if(!this.ga){c.parentNode.removeChild(c);break}this.qa[b]=c;c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length});c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;tp(d,fa(b,!0),b,a)}return!1};return!0}return!1};
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.V=a;this.N=Eb(a,"ChipSet");if((this.U=Nc(this.V,"autoMount")||this.U)&&"string"==typeof this.U)try{this.U=eval("("+this.U+")")}catch(e){w("FDC auto-mount error: "+e.message+" ("+this.U+")"),this.U=null}up(this);hc(b,this,vp);lc(b,this,wp);this.ga&&xp(this,"Local Disk","?");xp(this,"Remote Disk","??");yp(this)||rb(this)};
m.ic=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.V.bh){this.B=[];for(var c=0;c<this.A.length;c++)zp(this,c,!0);yp(this,!0)}}else if(!this.restore(a))return!1;if(c=this.qa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.textContent="";for(var d=0;d<this.ja;d++){var e=document.createElement("option");e.value=d;e.textContent=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.ja&&(c.value="0",sp(this,0))}}return!0};m.hc=function(a){return a?this.save():!0};
m.reset=function(){up(this)};
m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.hb;c[b++]=0;c[b++]=this.ma;c[b++]=this.W;c[b++]=this.L;c[b++]=this.C;c[b++]=this.aa;for(var d=b++,e=0,f=[],g=0;g<this.A.length;g++){var h=e++,k=this.A[g],l=0,n=[];n[l++]=k.Cb;n[l++]=[k.name,k.Bb,k.ub,k.lb,k.Va,k.bf,k.yg,k.Nf,k.Of];n[l++]=k.kb;n[l++]=k.fe+100;n[l++]=k.Rb;n[l++]=k.xb;n[l++]=k.ge;n[l++]=k.Hb;n[l++]=k.eb;n[l++]=k.$e;n[l++]=k.jk;n[l]=k.Le;f[h]=n}c[d]=f;d=b++;for(e=0;e<this.A.length;e++)f=this.A[e],f.za&&Ap(this,f.Le,f.za);c[d]=
m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.hb;c[b++]=0;c[b++]=this.ma;c[b++]=this.W;c[b++]=this.L;c[b++]=this.C;c[b++]=this.aa;for(var d=b++,e=0,f=[],g=0;g<this.A.length;g++){var h=e++,k=this.A[g],l=0,n=[];n[l++]=k.Cb;n[l++]=[k.name,k.Bb,k.ub,k.lb,k.Va,k.bf,k.yg,k.Nf,k.Of];n[l++]=k.kb;n[l++]=k.ge+100;n[l++]=k.Rb;n[l++]=k.xb;n[l++]=k.he;n[l++]=k.Hb;n[l++]=k.eb;n[l++]=k.$e;n[l++]=k.jk;n[l]=k.Le;f[h]=n}c[d]=f;d=b++;for(e=0;e<this.A.length;e++)f=this.A[e],f.za&&Ap(this,f.Le,f.za);c[d]=
this.B;c[b++]=this.X;c[b]=this.kc;N(a,0,c);return a.data()};m.restore=function(a){return up(this,a[0])};
function up(a,b){var c=0,d,e=!0;void 0===b&&(b=[0,0,128,Array(9),0,0,0,[]]);a.hb=b[c++];c++;a.ma=b[c++];a.W=b[c++];a.L=b[c++];a.C=b[c++];a.aa=b[c++];var f=b[c++];d=b[c++];null!=d&&(a.B=d);void 0===a.A&&(a.ja=4,a.N&&(a.ja=+Uk(a.N,vk,void 0)),a.A=Array(4));for(d=0;d<a.A.length;d++){var g=a.A[d];if(void 0===g){var g=a.A[d]={},h;if(a.N)a:{h=a.N;if(d<+Uk(h,vk,void 0)){if(!h.ja){h=360;break a}if(d<h.ja.length){h=h.ja[d];break a}}h=0}else h=0;switch(h){case 160:case 180:g.ub=1;default:g.Bb=40;g.lb=9;break;
case 720:g.Bb=80;g.lb=9;break;case 1200:g.Bb=80;g.lb=15;break;case 1440:g.Bb=80,g.lb=18}}var k=a,l=d,n=f[d],q=0;h=!0;g.hb=l;g.bd=g.$e=!1;void 0===n&&(n=[192,!0,0,2,0]);"boolean"==typeof n[1]&&(n[1]=["Floppy Drive",g.Bb||40,g.ub||n[3],g.lb||9,g.Va||512,n[1],g.yg,g.Nf,g.Of]);g.Cb=n[q++];var p=n[q++];g.name=p[0];g.Bb=p[1];g.ub=p[2];g.lb=p[3];g.Va=p[4];g.bf=p[5];(g.yg=p[6])?(g.Nf=p[7],g.Of=p[8]):(g.yg=g.Bb,g.Nf=g.ub,g.Of=g.lb);g.kb=n[q++];g.fe=n[q++];g.Rb=n[q++];g.fe=100<=g.fe?g.fe-100:g.fe-g.Rb;g.xb=
n[q++];g.ge=n[q++];g.Hb=n[q++];g.eb=n[q++];g.pb=null;g.za||(g.Le="");p=n[q++];102==p&&(p=!1);if("boolean"==typeof p){var A=p,p=n[q++],n=n[q];A?(q=p,p=k.A[l],zp(k,l,!0,!0),p.$e=!0,l=new Ho(k,p,"preload"),k.Hi(p,l,q,n,!0)):Bp(k,l,p,n,!0)?g.za&&n&&Cp(k,p,n,g.za):rb(k,!1)}else void 0!==p&&g.za&&0>g.za.restore(p)&&(h=!1);h&&g.za&&void 0!==g.eb&&(g.pb=g.za.seek(g.Rb,g.kb,g.xb));h||(e=!1)}a.X=b[c++]||0;a.kc=b[c]||0;return e}m.Gi=function(a){var b;a=this.A[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
case 720:g.Bb=80;g.lb=9;break;case 1200:g.Bb=80;g.lb=15;break;case 1440:g.Bb=80,g.lb=18}}var k=a,l=d,n=f[d],q=0;h=!0;g.hb=l;g.bd=g.$e=!1;void 0===n&&(n=[192,!0,0,2,0]);"boolean"==typeof n[1]&&(n[1]=["Floppy Drive",g.Bb||40,g.ub||n[3],g.lb||9,g.Va||512,n[1],g.yg,g.Nf,g.Of]);g.Cb=n[q++];var p=n[q++];g.name=p[0];g.Bb=p[1];g.ub=p[2];g.lb=p[3];g.Va=p[4];g.bf=p[5];(g.yg=p[6])?(g.Nf=p[7],g.Of=p[8]):(g.yg=g.Bb,g.Nf=g.ub,g.Of=g.lb);g.kb=n[q++];g.ge=n[q++];g.Rb=n[q++];g.ge=100<=g.ge?g.ge-100:g.ge-g.Rb;g.xb=
n[q++];g.he=n[q++];g.Hb=n[q++];g.eb=n[q++];g.pb=null;g.za||(g.Le="");p=n[q++];102==p&&(p=!1);if("boolean"==typeof p){var z=p,p=n[q++],n=n[q];z?(q=p,p=k.A[l],zp(k,l,!0,!0),p.$e=!0,l=new Ho(k,p,"preload"),k.Hi(p,l,q,n,!0)):Bp(k,l,p,n,!0)?g.za&&n&&Cp(k,p,n,g.za):rb(k,!1)}else void 0!==p&&g.za&&0>g.za.restore(p)&&(h=!1);h&&g.za&&void 0!==g.eb&&(g.pb=g.za.seek(g.Rb,g.kb,g.xb));h||(e=!1)}a.X=b[c++]||0;a.kc=b[c]||0;return e}m.Gi=function(a){var b;a=this.A[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
m.kk=function(a,b,c){if(a.za){var d=a.za.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.Rb=Math.floor(b/f),b%=f,a.kb=Math.floor(b/e),a.xb=b%e+1,a.Hb=c*d[3],a.Cb=0,!0}return!1};
function yp(a,b){b||(a.fa=0);if(a.U)for(var c in a.U){var d=a.U[c],e=d.path,f;if(!(f=d.name))a:{if((f=a.qa.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.A.length)){!Bp(a,g,f,e,!0)&&b&&rb(a,!1);continue}a.Oa("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")")}return!!a.fa}
function tp(a,b,c,d){var e,f=a.qa.listDrives;if(f&&!isNaN(e=ca(f.value,10))&&0<=e&&e<a.A.length)if(c)if("?"==c)a.Oa('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>Bp(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.B.length;h++)if(f.B[h][1]==g){f.B.splice(h,1);break}zp(a,
e,!1,!0)}}else zp(a,e);else a.Oa("Unable to load the selected drive")}function Bp(a,b,c,d,e,f){var g=a.A[b];if(d&&g.Le!=d){zp(a,b,e,!0);if(g.bd)return a.Oa("Drive "+b+" busy"),0;g.bd=!0;e&&(g.Ae=!0,a.fa++,z(a)&&y(a,"loading diskette '"+c+"'"));g.$e=!!f;return(new Ho(a,g,"preload")).load(c,d,f,a.Hi)?1:0}return-1}
e,!1,!0)}}else zp(a,e);else a.Oa("Unable to load the selected drive")}function Bp(a,b,c,d,e,f){var g=a.A[b];if(d&&g.Le!=d){zp(a,b,e,!0);if(g.bd)return a.Oa("Drive "+b+" busy"),0;g.bd=!0;e&&(g.Ae=!0,a.fa++,A(a)&&y(a,"loading diskette '"+c+"'"));g.$e=!!f;return(new Ho(a,g,"preload")).load(c,d,f,a.Hi)?1:0}return-1}
m.Hi=function(a,b,c,d,e){var f;a.bd=!1;b&&(f=b.info(),b&&f[0]>a.Bb||f[1]>a.ub)&&(this.Oa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.hb)),b=null);b?(a.za=b,a.jk=c,a.Le=d,Cp(this,c,d,b),f=b.info(),this.X|=128,this.Oa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.hb),a.Ae||e),a.yg=f[0],a.Nf=f[1],a.Of=f[2],this.V&&this.V.yd()):a.$e=!1;a.Ae&&(a.Ae=!1,--this.fa||rb(this));sp(this,a.hb)};
function xp(a,b,c){if((a=a.qa.listDisks)&&a.options){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=document.createElement("option");d.value=c;d.textContent=b;a.appendChild(d)}}
function sp(a,b){if(0<=b&&b<a.A.length){var c=a.A[b],d=a.qa.listDisks,e=a.qa.listDrives;if(d&&e&&d.options&&e.options&&(e=ca(e.value,10),c=c.$e?"?":c.Le,!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function zp(a,b,c,d){var e=a.A[b];e.za&&(Ap(a,e.Le,e.za),e.jk="",e.Le="",e.za=null,e.$e=!1,a.X|=128,d||a.Oa("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||sp(a,b))}
function Cp(a,b,c,d){var e;for(e=0;e<a.B.length;e++)if(a.B[e][1]==c){d.restore(a.B[e][2]);return}a.B[e]=[b,c,[]]}function Ap(a,b,c){var d;for(d=0;d<a.B.length;d++)if(a.B[d][1]==b){a.B[d][2]=c.save();break}}m.Pm=function(a,b,c){x(this,a,b,c,"OUTPUT");b&4?this.aa&4||this.aa&8&&this.N&&eg(this.N,6):up(this);this.aa=b};m.wl=function(a,b){x(this,a,null,b,"STATUS",this.ma);return this.ma};
m.ul=function(a,b){var c=0;this.L<this.C&&(c=this.W[this.L]);this.aa&8&&this.N&&dg(this.N,6);z(this)&&x(this,a,null,b,"DATA["+this.L+"]",c);++this.L>=this.C&&(this.ma&=-81,this.L=this.C=0);return c};
m.Om=function(a,b,c){z(this)&&x(this,a,b,c,"DATA["+this.C+"]");this.C<this.W.length&&(this.W[this.C++]=b);a=this.W[0]&31;if(void 0!==rp[a]&&this.C>=rp[a].Ud){b=!1;this.L=0;a=Dp(this);var d,e,f,g,h=a&31;switch(h){case 3:Dp(this);Dp(this);Ep(this);break;case 4:c=Dp(this);this.hb=c&3;d=this.A[this.hb];Ep(this);Fp(this,(d.Cb&-16777216)>>>24);break;case 5:case 6:c=Dp(this);b=c>>2&1;this.hb=c&3;d=this.A[this.hb];d.kb=b;c=d.Rb=Dp(this);e=Dp(this);f=d.xb=Dp(this);g=Dp(this);d.Hb=128<<g;d.ge=Dp(this);Dp(this);
Dp(this);6==h?(h=d,h.Cb=72,h.za&&(h.pb=null,h.Cb=0,this.N&&(xl(this.N,2,this,"dmaRead",h),pl(this.N,2)))):(h=d,h.Cb=72,h.za&&(h.za.ef?h.Cb=576:(h.pb=null,h.Cb=0,this.N&&(xl(this.N,2,this,"dmaWrite",h),pl(this.N,2)))));Gp(this,d,a,b,c,e,f,g);b=!0;break;case 7:c=Dp(this);this.hb=c&3;d=this.A[this.hb];d.Rb=d.fe=0;d.Cb=268435488;Ep(this);b=!0;break;case 8:d=this.A[this.hb];d.kb=0;Ep(this);Fp(this,d.hb|d.kb<<2|d.Cb&255);Fp(this,d.Rb);this.hb=this.hb+1&3;break;case 10:c=Dp(this);b=c>>2&1;this.hb=c&3;d=
this.A[this.hb];c=d.Rb;e=d.kb=b;f=d.xb=1;g=0;d.Cb=0;d.za&&(d.pb=d.za.seek(d.Rb,d.kb,d.xb))?g=d.pb.length>>8:d.Cb=72;Gp(this,d,a,b,c,e,f,g);b=!0;break;case 13:c=Dp(this);b=c>>2&1;this.hb=c&3;d=this.A[this.hb];c=d.Rb;e=d.kb=b;f=1;g=Dp(this);d.Hb=128<<g;d.ge=Dp(this);Dp(this);d.xi=Dp(this);h=d;h.Cb=72;h.za&&(h.pb=null,h.Cb=0,this.N&&(h.Ve=0,h.md=Array(4),h.Xg=!0,h.mg=0,xl(this.N,2,this,"dmaFormat",h),pl(this.N,2),h.Xg=!1));Gp(this,d,a,b,c,e,f,g);b=!0;break;case 15:c=Dp(this),this.hb=c&3,d=this.A[this.hb],
d.kb=c>>2&1,c=Dp(this),d.Rb+=c-d.fe,0>d.Rb&&(d.Rb=0),d.Rb>=d.Bb&&(d.Rb=d.Bb-1),d.fe=c,d.Cb=32,d.Rb||(d.Cb|=268435456),Ep(this),b=!0}0<this.C&&(this.ma|=80);this.aa&8&&(!d||d.Cb&8||!b||this.N&&eg(this.N,6))}};m.vl=function(a,b){var c=this.X;this.X&=-129;x(this,a,null,b,"INPUT",c);return c};m.Nm=function(a,b,c){x(this,a,b,c,"CONTROL");this.kc=b};
m.ul=function(a,b){var c=0;this.L<this.C&&(c=this.W[this.L]);this.aa&8&&this.N&&dg(this.N,6);A(this)&&x(this,a,null,b,"DATA["+this.L+"]",c);++this.L>=this.C&&(this.ma&=-81,this.L=this.C=0);return c};
m.Om=function(a,b,c){A(this)&&x(this,a,b,c,"DATA["+this.C+"]");this.C<this.W.length&&(this.W[this.C++]=b);a=this.W[0]&31;if(void 0!==rp[a]&&this.C>=rp[a].Vd){b=!1;this.L=0;a=Dp(this);var d,e,f,g,h=a&31;switch(h){case 3:Dp(this);Dp(this);Ep(this);break;case 4:c=Dp(this);this.hb=c&3;d=this.A[this.hb];Ep(this);Fp(this,(d.Cb&-16777216)>>>24);break;case 5:case 6:c=Dp(this);b=c>>2&1;this.hb=c&3;d=this.A[this.hb];d.kb=b;c=d.Rb=Dp(this);e=Dp(this);f=d.xb=Dp(this);g=Dp(this);d.Hb=128<<g;d.he=Dp(this);Dp(this);
Dp(this);6==h?(h=d,h.Cb=72,h.za&&(h.pb=null,h.Cb=0,this.N&&(xl(this.N,2,this,"dmaRead",h),pl(this.N,2)))):(h=d,h.Cb=72,h.za&&(h.za.ef?h.Cb=576:(h.pb=null,h.Cb=0,this.N&&(xl(this.N,2,this,"dmaWrite",h),pl(this.N,2)))));Gp(this,d,a,b,c,e,f,g);b=!0;break;case 7:c=Dp(this);this.hb=c&3;d=this.A[this.hb];d.Rb=d.ge=0;d.Cb=268435488;Ep(this);b=!0;break;case 8:d=this.A[this.hb];d.kb=0;Ep(this);Fp(this,d.hb|d.kb<<2|d.Cb&255);Fp(this,d.Rb);this.hb=this.hb+1&3;break;case 10:c=Dp(this);b=c>>2&1;this.hb=c&3;d=
this.A[this.hb];c=d.Rb;e=d.kb=b;f=d.xb=1;g=0;d.Cb=0;d.za&&(d.pb=d.za.seek(d.Rb,d.kb,d.xb))?g=d.pb.length>>8:d.Cb=72;Gp(this,d,a,b,c,e,f,g);b=!0;break;case 13:c=Dp(this);b=c>>2&1;this.hb=c&3;d=this.A[this.hb];c=d.Rb;e=d.kb=b;f=1;g=Dp(this);d.Hb=128<<g;d.he=Dp(this);Dp(this);d.xi=Dp(this);h=d;h.Cb=72;h.za&&(h.pb=null,h.Cb=0,this.N&&(h.Ve=0,h.md=Array(4),h.Xg=!0,h.mg=0,xl(this.N,2,this,"dmaFormat",h),pl(this.N,2),h.Xg=!1));Gp(this,d,a,b,c,e,f,g);b=!0;break;case 15:c=Dp(this),this.hb=c&3,d=this.A[this.hb],
d.kb=c>>2&1,c=Dp(this),d.Rb+=c-d.ge,0>d.Rb&&(d.Rb=0),d.Rb>=d.Bb&&(d.Rb=d.Bb-1),d.ge=c,d.Cb=32,d.Rb||(d.Cb|=268435456),Ep(this),b=!0}0<this.C&&(this.ma|=80);this.aa&8&&(!d||d.Cb&8||!b||this.N&&eg(this.N,6))}};m.vl=function(a,b){var c=this.X;this.X&=-129;x(this,a,null,b,"INPUT",c);return c};m.Nm=function(a,b,c){x(this,a,b,c,"CONTROL");this.kc=b};
function Gp(a,b,c,d,e,f,g,h){Ep(a);Fp(a,b.hb|b.kb<<2|b.Cb&255);Fp(a,(b.Cb&65280)>>>8);Fp(a,(b.Cb&16711680)>>>16);var k=0;if(e!=b.Rb||f!=b.kb)k=g=1;c&128&&(f^=k,d||(k=0));Fp(a,e+k);Fp(a,f);Fp(a,g);Fp(a,h)}function Dp(a){var b=a.W[a.L];a.L++;return b}function Ep(a){a.L=a.C=0}function Fp(a,b){a.W[a.C++]=b}
m.wk=function(a,b,c){if(void 0===b||0>b){b=-1;var d=null,e=0;if(!a.Cb&&a.za){do{if(a.pb&&(e=a.eb,0<=(b=a.za.read(a.pb,a.eb++)))){d=a.pb;break}a.pb=a.za.seek(a.Rb,a.kb,a.xb);if(!a.pb){a.Cb=1088;break}a.eb=0;Hp(a)}while(1)}c(b,!1,d,e)}else c(-1,!1)};m.xk=function(a,b){return void 0!==b&&0<=b?Ip(a,b):-1};
m.Lk=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.Cb)c=-1;else{a.md[a.Ve++]=c;if(a.Ve==a.md.length){a.Rb=a.md[0];a.kb=a.md[1];a.xb=a.md[2];a.Hb=128<<a.md[3];for(var d=a.Ve=0;d<a.Hb;d++)if(0>Ip(a,a.xi)){c=-1;break a}a.mg++}a.mg>=a.ge&&(c=-1)}else c=-1;return c};function Ip(a,b){if(a.Cb||!a.za)return-1;do{if(a.pb&&a.za.write(a.pb,a.eb++,b))break;a.pb=a.za.seek(a.Rb,a.kb,a.xb);if(!a.pb){a.Cb=8256;b=-1;break}a.eb=0;Hp(a)}while(1);return b}
m.Lk=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.Cb)c=-1;else{a.md[a.Ve++]=c;if(a.Ve==a.md.length){a.Rb=a.md[0];a.kb=a.md[1];a.xb=a.md[2];a.Hb=128<<a.md[3];for(var d=a.Ve=0;d<a.Hb;d++)if(0>Ip(a,a.xi)){c=-1;break a}a.mg++}a.mg>=a.he&&(c=-1)}else c=-1;return c};function Ip(a,b){if(a.Cb||!a.za)return-1;do{if(a.pb&&a.za.write(a.pb,a.eb++,b))break;a.pb=a.za.seek(a.Rb,a.kb,a.xb);if(!a.pb){a.Cb=8256;b=-1;break}a.eb=0;Hp(a)}while(1);return b}
function Hp(a){a.xb++;a.xb>=a.Of+1&&(a.xb=1,a.kb++,a.kb>=a.Nf&&(a.kb=0,a.Rb++))}var vp={1012:qp.prototype.wl,1013:qp.prototype.ul,1015:qp.prototype.vl},wp={1010:qp.prototype.Pm,1013:qp.prototype.Om,1015:qp.prototype.Nm};Qa(function(){for(var a=nb(document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new qp(d);mb(d,c)}});
function Jp(a){Ua.call(this,"HDC",a,Jp,1048576);this.dmaRead=this.yk;this.dmaWrite=this.zk;this.dmaWriteBuffer=this.Mk;this.dmaWriteFormat=this.Nk;this.ua=[];this.Fa=a.drives;this.ja="at"==a.type}db(Jp);
var Kp=["XTC","ATC","COMPAQ"],Lp=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966,6],19:[1023,
8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}];m=Jp.prototype;m.Qb=function(){return!1};
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.V=a;if(d=Nc(a,"drives"))this.ua=d;else if(this.Fa)try{this.ua=eval("("+this.Fa+")")}catch(e){w("HDC drive configuration error: "+e.message+" ("+this.Fa+")")}this.N=Eb(a,"ChipSet");this.U=0;this.Ia=3;hc(b,this,this.ja?Mp:Np);lc(b,this,this.ja?Op:Pp);this.ja&&(this.U++,this.N&&5180==this.N.ia&&this.U++,this.Ia=2,b.aa[496]=2,b.fa[496]=2);cf(c,19,this.Yl.bind(this));cf(c,64,this.Zl.bind(this));this.reset();Qp(this)||rb(this)};
m.ic=function(a,b){if(!b)if(!a||!this.restore)Rp(this),this.V.bh&&Qp(this,!0);else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};m.ff=function(){return this.V?this.V.ff():""};m.je=function(){return this.V?this.V.je():""};m.reset=function(){Rp(this,null,!0)};
m.ic=function(a,b){if(!b)if(!a||!this.restore)Rp(this),this.V.bh&&Qp(this,!0);else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};m.ff=function(){return this.V?this.V.ff():""};m.ke=function(){return this.V?this.V.ke():""};m.reset=function(){Rp(this,null,!0)};
m.save=function(){var a=new hf(this),b=0,c=[];this.ja?(c[b++]=this.X,c[b++]=this.Pa,c[b++]=this.aa,c[b++]=this.Ca,c[b++]=this.ya,c[b++]=this.wa,c[b++]=this.ra,c[b++]=this.ma,c[b++]=this.Ea,c[b++]=[this.ga,this.hb]):(c[b++]=this.pa,c[b++]=this.ma,c[b++]=this.W,c[b++]=this.L,c[b++]=this.C,c[b++]=this.Na,c[b++]=this.Ka,c[b++]=this.Ja,c[b++]=this.ka);for(var d=0,e=[],f=0;f<this.A.length;f++){var g=d++,h=this.A[f],k=0,l=[];l[k++]=h.errorCode;l[k++]=h.lk;l[k++]=h.bf;l[k++]=h.Qe;l[k++]=h.Re;l[k++]=h.kb;
l[k++]=h.ub;l[k++]=h.ce;l[k++]=h.xb;l[k++]=h.ge;l[k++]=h.Hb;l[k++]=h.eb;l[k]=h.za?h.za.save():null;e[g]=l}c[b]=e;N(a,0,c);return a.data()};m.restore=function(a){return Rp(this,a[0])};
l[k++]=h.ub;l[k++]=h.de;l[k++]=h.xb;l[k++]=h.he;l[k++]=h.Hb;l[k++]=h.eb;l[k]=h.za?h.za.save():null;e[g]=l}c[b]=e;N(a,0,c);return a.data()};m.restore=function(a){return Rp(this,a[0])};
function Rp(a,b,c){var d=0,e=!0;a.hb=-1;if(a.ja){if(null==b&&(b=[0,0,0,0,0,0,0,64,0,[0,-1]]),a.X=b[d++],a.Pa=b[d++],a.aa=b[d++],a.Ca=b[d++],a.ya=b[d++],a.wa=b[d++],a.ra=b[d++],a.ma=b[d++],a.Ea=b[d++],a.ga=b[d++],"object"==typeof a.ga){var f=a.ga;a.ga=f[0];a.hb=f[1]}}else null==b&&(b=[0,0,Array(14),0,0]),a.pa=b[d++],a.ma=b[d++],a.W=b[d++],a.L=b[d++],a.C=b[d++],a.Na=b[d++],a.Ka=b[d++],a.Ja=b[d++],f=b[d++],void 0!==f?a.ka=f:void 0===a.ka&&(a.ka=-1);void 0===a.A&&(a.A=Array(a.ua.length));b=b[d];void 0===
b&&(b=[]);for(d=0;d<a.A.length;d++){void 0===a.A[d]&&(a.A[d]={});var f=a.A[d],g=a,h=d,k=f,l=a.ua[d],n=b[d],q=c,p=0,A=!0;void 0===n&&(n=[0,0,!1,Array(8)]);k.hb=h;k.errorCode=n[p++];k.lk=n[p++];k.bf=n[p++];k.Qe=n[p++];k.Re=n[p++];k.kb=n[p++];k.ub=n[p++];k.ce=n[p++];k.xb=n[p++];k.ge=n[p++];k.Hb=n[p++];k.lg=g.ja?0:1;k.name=l.name;void 0===k.name&&(k.name="Hard Drive");k.path=l.path;k.mode=l.mode||(k.path?"preload":"local");"demandro"!=k.mode&&"demandrw"!=k.mode||g.je()||(k.mode="local");k.type=l.type;
if(void 0===k.type||void 0===Lp[g.U][k.type])k.type=g.Ia;l=Lp[g.U][k.type];k.lb=l[2]||17;k.Va=l[3]||512;if(q&&g.N){var F=g.N,v=k.type;if(F.A){var q=null,l=void 0,E=F.A[18];15<v&&(q=v,v=15);h?(E=E&240|v,l=26):(E=E&15|v<<4,l=25);v=F;v.A&&(v.A[18]=E,Xk(v));null!=q&&F.A&&(F.A[l]=q,Xk(F))}}void 0===k.za&&(k.za=null,g.Oa("Type "+k.type+' "'+k.name+'" is fixed disk '+h,!0));Sp(g,k);k.eb=n[p++];k.pb=null;k.za&&(g=n[p],void 0!==g&&0>k.za.restore(g)&&(A=!1),A&&void 0!==k.eb&&(k.pb=k.za.seek(k.ce,k.kb,k.xb+
k.lg)));A||(e=!1);null!=a.pa&&1>=d&&(a.pa|=(f.type&3)<<(1-d<<1))}0<=a.hb&&(a.B=a.A[a.hb]);return e}m.Gi=function(a){var b;a=this.A[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
b&&(b=[]);for(d=0;d<a.A.length;d++){void 0===a.A[d]&&(a.A[d]={});var f=a.A[d],g=a,h=d,k=f,l=a.ua[d],n=b[d],q=c,p=0,z=!0;void 0===n&&(n=[0,0,!1,Array(8)]);k.hb=h;k.errorCode=n[p++];k.lk=n[p++];k.bf=n[p++];k.Qe=n[p++];k.Re=n[p++];k.kb=n[p++];k.ub=n[p++];k.de=n[p++];k.xb=n[p++];k.he=n[p++];k.Hb=n[p++];k.lg=g.ja?0:1;k.name=l.name;void 0===k.name&&(k.name="Hard Drive");k.path=l.path;k.mode=l.mode||(k.path?"preload":"local");"demandro"!=k.mode&&"demandrw"!=k.mode||g.ke()||(k.mode="local");k.type=l.type;
if(void 0===k.type||void 0===Lp[g.U][k.type])k.type=g.Ia;l=Lp[g.U][k.type];k.lb=l[2]||17;k.Va=l[3]||512;if(q&&g.N){var F=g.N,v=k.type;if(F.A){var q=null,l=void 0,E=F.A[18];15<v&&(q=v,v=15);h?(E=E&240|v,l=26):(E=E&15|v<<4,l=25);v=F;v.A&&(v.A[18]=E,Xk(v));null!=q&&F.A&&(F.A[l]=q,Xk(F))}}void 0===k.za&&(k.za=null,g.Oa("Type "+k.type+' "'+k.name+'" is fixed disk '+h,!0));Sp(g,k);k.eb=n[p++];k.pb=null;k.za&&(g=n[p],void 0!==g&&0>k.za.restore(g)&&(z=!1),z&&void 0!==k.eb&&(k.pb=k.za.seek(k.de,k.kb,k.xb+
k.lg)));z||(e=!1);null!=a.pa&&1>=d&&(a.pa|=(f.type&3)<<(1-d<<1))}0<=a.hb&&(a.B=a.A[a.hb]);return e}m.Gi=function(a){var b;a=this.A[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
function Sp(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.Qe[2])?e=b.Qe[0]<<8|b.Qe[1]:c=b.type);null==c||d||(d=Lp[a.U][c][1],e=Lp[a.U][c][0]);d&&((c=Lp[a.U][b.type])&&e!=c[0]&&d!=c[1]&&a.Oa("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.Bb=e,b.ub=d,null==b.za&&(b.za=new Ho(a,b,b.mode)))}}
m.kk=function(a,b,c){if(a.za){var d=a.za.info(),e=d[0];if(e){var f=d[2],g=d[1]*f;if(b+c<=e*g)return a.ce=Math.floor(b/g),b%=g,a.kb=Math.floor(b/f),a.xb=b%f,a.Hb=c*d[3],a.errorCode=0,!0}}return!1};
function Qp(a,b){b||(a.fa=0);for(var c=0;c<a.A.length;c++){var d=a.A[c];if(d.name&&d.path){if(!(b&&d.za&&d.za.qg)){var e;e=a;var f=d.name,d=d.path,g=e.A[c];g.bd?(e.Oa("Drive "+c+" busy"),e=!0):(g.bd=!0,g.Ae=!0,e.fa++,z(e)&&y(e,"loading "+f),(g.za||new Ho(e,g,g.mode)).load(f,d,null,e.Ok),e=!1);!e&&b&&rb(a,!1)}}else b&&void 0!==d.type&&(d.za=null,Sp(a,d,d.type))}return!!a.fa}
m.kk=function(a,b,c){if(a.za){var d=a.za.info(),e=d[0];if(e){var f=d[2],g=d[1]*f;if(b+c<=e*g)return a.de=Math.floor(b/g),b%=g,a.kb=Math.floor(b/f),a.xb=b%f,a.Hb=c*d[3],a.errorCode=0,!0}}return!1};
function Qp(a,b){b||(a.fa=0);for(var c=0;c<a.A.length;c++){var d=a.A[c];if(d.name&&d.path){if(!(b&&d.za&&d.za.qg)){var e;e=a;var f=d.name,d=d.path,g=e.A[c];g.bd?(e.Oa("Drive "+c+" busy"),e=!0):(g.bd=!0,g.Ae=!0,e.fa++,A(e)&&y(e,"loading "+f),(g.za||new Ho(e,g,g.mode)).load(f,d,null,e.Ok),e=!1);!e&&b&&rb(a,!1)}}else b&&void 0!==d.type&&(d.za=null,Sp(a,d,d.type))}return!!a.fa}
m.Ok=function(a,b,c){a.bd=!1;if(a.za=b)this.Oa('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.hb),a.Ae),b=b.info(),b[0]==a.Bb&&b[1]==a.ub&&b[2]==a.lb&&b[3]==a.Va||this.Oa("Warning: disk geometry ("+b[0]+":"+b[1]+":"+b[2]+") does not match "+Kp[this.U]+" drive type "+a.type+" ("+a.Bb+":"+a.ub+":"+a.lb+")");a.Ae&&(a.Ae=!1,--this.fa||rb(this))};
m.Wl=function(a,b){var c=0;this.L<this.C&&(c=this.W[this.L]);this.N&&dg(this.N,5);this.ma&=-33;x(this,a,null,b,"DATA["+this.L+"]",c);++this.L>=this.C&&(this.L=this.C=0,this.ma&=-15);return c};m.mn=function(a,b,c){x(this,a,b,c,"DATA["+this.C+"]");this.C<this.W.length&&(this.W[this.C++]=b);a=12!=this.W[0]?6:this.W.length;6==this.C&&(this.ma&=-2);this.C>=a&&(this.ma|=2,this.ma&=-2,Tp(this))};m.Xl=function(a,b){var c=this.ma;x(this,a,null,b,"STATUS",c);this.L<this.C&&(this.ma|=1);return c};
m.pn=function(a,b,c){x(this,a,b,c,"RESET");this.Na=b;this.N&&dg(this.N,5);Rp(this)};m.Vl=function(a,b){x(this,a,null,b,"CONFIG",this.pa);return this.pa};m.on=function(a,b,c){x(this,a,b,c,"PULSE");this.Ka=b;this.ma=13};m.nn=function(a,b,c){x(this,a,b,c,"PATTERN");this.Ja=b};m.fi=function(a,b,c){x(this,a,b,c,"NOISE")};
function Up(a,b,c){var d=-1;a.B&&(d=Vp(a.B,function(){}),1==a.B.eb||a.B.eb==a.B.Va)&&(z(a,1048832)&&x(a,b,null,c,"DATA["+a.B.eb+"]",d),1<a.B.eb&&(a.B.Hb-=a.B.Va,a.aa=a.aa-1&255,a.B.Hb>=a.B.Va?(a.ma=128,Vp(a.B,function(b){0<=b?(Wp(a),a.N&&5180==a.N.ia&&(a.ma=0),a.ma|=88):(a.ma=1,a.X=16)},!1)):a.ma=80));return d}m.Ak=function(a,b){return Up(this,a,b)|Up(this,a,b)<<8};
function Xp(a,b,c,d){if(a.B&&a.B.Hb>=a.B.Va)if(0>Yp(a.B,c))a.ma=1,a.X=16;else if(1==a.B.eb||a.B.eb==a.B.Va)z(a,1048832)&&x(a,b,c,d,"DATA["+a.B.eb+"]"),1<a.B.eb&&(a.B.Hb-=a.B.Va,a.aa=a.aa-1&255,Wp(a),a.ma=80,a.B.Hb>=a.B.Va&&(a.ma|=8))}m.vm=function(a,b,c){Xp(this,a,b&255,c);Xp(this,a,b>>8&255,c)};m.dl=function(a,b){var c=this.X;x(this,a,null,b,"ERROR",c);return c};m.Am=function(a,b,c){x(this,a,b,c,"WPREC");this.Pa=b};m.fl=function(a,b){var c=this.aa;x(this,a,null,b,"SECCNT",c);return c};
function Up(a,b,c){var d=-1;a.B&&(d=Vp(a.B,function(){}),1==a.B.eb||a.B.eb==a.B.Va)&&(A(a,1048832)&&x(a,b,null,c,"DATA["+a.B.eb+"]",d),1<a.B.eb&&(a.B.Hb-=a.B.Va,a.aa=a.aa-1&255,a.B.Hb>=a.B.Va?(a.ma=128,Vp(a.B,function(b){0<=b?(Wp(a),a.N&&5180==a.N.ia&&(a.ma=0),a.ma|=88):(a.ma=1,a.X=16)},!1)):a.ma=80));return d}m.Ak=function(a,b){return Up(this,a,b)|Up(this,a,b)<<8};
function Xp(a,b,c,d){if(a.B&&a.B.Hb>=a.B.Va)if(0>Yp(a.B,c))a.ma=1,a.X=16;else if(1==a.B.eb||a.B.eb==a.B.Va)A(a,1048832)&&x(a,b,c,d,"DATA["+a.B.eb+"]"),1<a.B.eb&&(a.B.Hb-=a.B.Va,a.aa=a.aa-1&255,Wp(a),a.ma=80,a.B.Hb>=a.B.Va&&(a.ma|=8))}m.vm=function(a,b,c){Xp(this,a,b&255,c);Xp(this,a,b>>8&255,c)};m.dl=function(a,b){var c=this.X;x(this,a,null,b,"ERROR",c);return c};m.Am=function(a,b,c){x(this,a,b,c,"WPREC");this.Pa=b};m.fl=function(a,b){var c=this.aa;x(this,a,null,b,"SECCNT",c);return c};
m.ym=function(a,b,c){x(this,a,b,c,"SECCNT");this.aa=b};m.gl=function(a,b){var c=this.Ca;x(this,a,null,b,"SECNUM",c);return c};m.zm=function(a,b,c){x(this,a,b,c,"SECNUM");this.Ca=b};m.bl=function(a,b){var c=this.ya;x(this,a,null,b,"CYLLO",c);return c};m.um=function(a,b,c){x(this,a,b,c,"CYLLO");this.ya=b};m.al=function(a,b){var c=this.wa;x(this,a,null,b,"CYLHI",c);return c};m.tm=function(a,b,c){x(this,a,b,c,"CYLHI");this.wa=b};m.cl=function(a,b){var c=this.ra;x(this,a,null,b,"DRVHD",c);return c};
m.wm=function(a,b,c){x(this,a,b,c,"DRVHD");this.ra=b;this.ma=this.A[this.ra&16?1:0]?this.ma|80:this.ma&-65};m.hl=function(a,b){var c=this.ma;x(this,a,null,b,"STATUS",c);this.ma&64&&(this.ma&=-129);return c};m.sm=function(a,b,c){x(this,a,b,c,"COMMAND");this.Ea=b;this.N&&dg(this.N,14);Zp(this)};m.xm=function(a,b,c){x(this,a,b,c,"FDR");this.ga&4&&!(b&4)&&(this.X=1);this.ga=b};
function Zp(a){var b=!1,c=a.Ea,d=a.ra&16?1:0,e=a.ra&15,f=a.ya|(a.wa&3)<<8,g=a.Ca,h=a.aa||256;a.hb=-1;a.B=null;a.X=0;a.ma=80;var k=a.A[d];k?(k.ce=f,k.kb=e,k.xb=g,k.Hb=h*k.Va,c=144<=c?c:c&240,k.pb=null,k.eb=0,k.errorCode=0,a.hb=d,a.B=k):c=-1;switch(c&240){case 16:b=!0;break;case 32:a.ma=128;Vp(k,function(b){0<=b&&a.N?(Wp(a),a.ma=88):(a.ma=1,a.X=16)},!1);break;case 48:a.ma=8;break;case 64:b=!0;break;case 112:b=!0;break;case 144:a.X=1;b=!0;break;case 145:k.ub=e+1,k.lb=h,b=!0}b&&Wp(a)}
function Zp(a){var b=!1,c=a.Ea,d=a.ra&16?1:0,e=a.ra&15,f=a.ya|(a.wa&3)<<8,g=a.Ca,h=a.aa||256;a.hb=-1;a.B=null;a.X=0;a.ma=80;var k=a.A[d];k?(k.de=f,k.kb=e,k.xb=g,k.Hb=h*k.Va,c=144<=c?c:c&240,k.pb=null,k.eb=0,k.errorCode=0,a.hb=d,a.B=k):c=-1;switch(c&240){case 16:b=!0;break;case 32:a.ma=128;Vp(k,function(b){0<=b&&a.N?(Wp(a),a.ma=88):(a.ma=1,a.X=16)},!1);break;case 48:a.ma=8;break;case 64:b=!0;break;case 112:b=!0;break;case 144:a.X=1;b=!0;break;case 145:k.ub=e+1,k.lb=h,b=!0}b&&Wp(a)}
function Wp(a){!a.N||a.ga&2||eg(a.N,14,120)}
function Tp(a){a.L=0;var b=$p(a),c=$p(a),d=c&32,e=d>>5,f=c&31,g=$p(a),h=$p(a),k=g<<2&768|h,l=g&63,n=$p(a),q=$p(a),p=a.A[e];p&&(p.ce=k,p.kb=f,p.xb=l,p.Hb=n*p.Va);switch(b){case 3:aq(a,p?p.errorCode:4);bq(a,c);bq(a,g);bq(a,h);bq(a,0|d);b=-1;break;case 12:for(c=0;0<=(b=$p(a));)p&&c<p.Qe.length&&(p.Qe[c++]=b);p&&Sp(a,p);b=0;p||a.ka!=e||(a.ka=-1,b=2);aq(a,b|d);b=-1;break;case 224:case 228:aq(a,0|d),b=-1}if(0<=b)switch(void 0===p?b=-1:(p.errorCode=0,p.lk=0),b){case 0:aq(a,0|d);break;case 1:p.Bf=q;aq(a,
function Tp(a){a.L=0;var b=$p(a),c=$p(a),d=c&32,e=d>>5,f=c&31,g=$p(a),h=$p(a),k=g<<2&768|h,l=g&63,n=$p(a),q=$p(a),p=a.A[e];p&&(p.de=k,p.kb=f,p.xb=l,p.Hb=n*p.Va);switch(b){case 3:aq(a,p?p.errorCode:4);bq(a,c);bq(a,g);bq(a,h);bq(a,0|d);b=-1;break;case 12:for(c=0;0<=(b=$p(a));)p&&c<p.Qe.length&&(p.Qe[c++]=b);p&&Sp(a,p);b=0;p||a.ka!=e||(a.ka=-1,b=2);aq(a,b|d);b=-1;break;case 224:case 228:aq(a,0|d),b=-1}if(0<=b)switch(void 0===p?b=-1:(p.errorCode=0,p.lk=0),b){case 0:aq(a,0|d);break;case 1:p.Bf=q;aq(a,
0|d);break;case 5:aq(a,0|d);break;case 8:cq(a,p,function(b){aq(a,b|d)});break;case 10:dq(a,p,function(b){aq(a,b|d)});break;case 15:eq(a,p,function(b){aq(a,b|d)});break;default:aq(a,2|d)}}function $p(a){var b=-1;a.L<a.C&&(b=a.W[a.L++]);return b}function aq(a,b){a.L=a.C=0;void 0!==b&&bq(a,b);a.N&&eg(a.N,5);a.ma|=32}function bq(a,b){a.W[a.C++]=b}m.yk=function(a,b,c){void 0===b||0>b?Vp(a,c):c(-1,!1)};m.zk=function(a,b){return void 0!==b&&0<=b?Yp(a,b):-1};
m.Mk=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.eb<a.Re.length?a.Re[a.eb++]=c:(a.errorCode=20,c=-1)):c=-1;return c};m.Nk=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.errorCode)c=-1;else{a.md[a.Ve++]=c;if(a.Ve==a.md.length){a.ce=a.md[0];a.kb=a.md[1];a.xb=a.md[2];a.Hb=128<<a.md[3];for(var d=a.Ve=0;d<a.Hb;d++)if(0>Yp(a,a.xi)){c=-1;break a}a.mg++}a.mg>=a.ge&&(c=-1)}else c=-1;return c};
m.Mk=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.eb<a.Re.length?a.Re[a.eb++]=c:(a.errorCode=20,c=-1)):c=-1;return c};m.Nk=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.errorCode)c=-1;else{a.md[a.Ve++]=c;if(a.Ve==a.md.length){a.de=a.md[0];a.kb=a.md[1];a.xb=a.md[2];a.Hb=128<<a.md[3];for(var d=a.Ve=0;d<a.Hb;d++)if(0>Yp(a,a.xi)){c=-1;break a}a.mg++}a.mg>=a.he&&(c=-1)}else c=-1;return c};
function cq(a,b,c){b.errorCode=4;if(b.za&&(b.pb=null,a.N)){b.errorCode=0;xl(a.N,3,a,"dmaRead",b);pl(a.N,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}function dq(a,b,c){b.errorCode=4;if(b.za&&(b.pb=null,a.N)){b.errorCode=0;xl(a.N,3,a,"dmaWrite",b);pl(a.N,3,function(a){a||(0==b.errorCode&&(b.errorCode=4),20==b.errorCode&&(b.errorCode=0));c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}
function eq(a,b,c){b.errorCode=4;b.Re&&b.Re.length==b.Hb||(b.Re=Array(b.Hb));b.eb=0;a.N?(b.errorCode=0,xl(a.N,3,a,"dmaWriteBuffer",b),pl(a.N,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
function Vp(a,b,c){var d=-1,e=null,f=0;if(a.errorCode)return b&&b(d,!1,e,f),d;var g=!1!==c?1:0;if(a.pb&&(f=a.eb,d=a.za.read(a.pb,a.eb),a.eb+=g,0<=d))return e=a.pb,b&&b(d,!1,e,f),d;if(b){if(a.za)return a.za.seek(a.ce,a.kb,a.xb+a.lg,!1,function(c,k){(a.pb=c)?(e=c,f=a.eb=0,fq(a),d=a.za.read(a.pb,a.eb),a.eb+=g):a.errorCode=20;b(d,k,e,f)}),d;a.errorCode=20;b(d,!1,e,f)}return d}
function Yp(a,b){if(a.errorCode)return-1;do{if(a.pb&&a.za.write(a.pb,a.eb++,b))break;a.za&&a.za.seek(a.ce,a.kb,a.xb+a.lg,!0,function(b){a.pb=b});if(!a.pb){a.errorCode=20;b=-1;break}a.eb=0;fq(a)}while(1);return b}function fq(a){a.xb++;var b=1-a.lg;a.xb>=a.lb+b&&(a.xb=b,a.kb++,a.kb>=a.ub&&(a.kb=0,a.ce++))}m.Yl=function(){var a=this.F.M&255;!(this.F.G>>8)&&128<a&&(this.ka=a-128);return!0};m.Zl=function(){var a;(a=this.F.G>>8||!this.N)||(a=!(this.N.vc[0].Bd&64));return a?!0:!1};
function Vp(a,b,c){var d=-1,e=null,f=0;if(a.errorCode)return b&&b(d,!1,e,f),d;var g=!1!==c?1:0;if(a.pb&&(f=a.eb,d=a.za.read(a.pb,a.eb),a.eb+=g,0<=d))return e=a.pb,b&&b(d,!1,e,f),d;if(b){if(a.za)return a.za.seek(a.de,a.kb,a.xb+a.lg,!1,function(c,k){(a.pb=c)?(e=c,f=a.eb=0,fq(a),d=a.za.read(a.pb,a.eb),a.eb+=g):a.errorCode=20;b(d,k,e,f)}),d;a.errorCode=20;b(d,!1,e,f)}return d}
function Yp(a,b){if(a.errorCode)return-1;do{if(a.pb&&a.za.write(a.pb,a.eb++,b))break;a.za&&a.za.seek(a.de,a.kb,a.xb+a.lg,!0,function(b){a.pb=b});if(!a.pb){a.errorCode=20;b=-1;break}a.eb=0;fq(a)}while(1);return b}function fq(a){a.xb++;var b=1-a.lg;a.xb>=a.lb+b&&(a.xb=b,a.kb++,a.kb>=a.ub&&(a.kb=0,a.de++))}m.Yl=function(){var a=this.F.M&255;!(this.F.G>>8)&&128<a&&(this.ka=a-128);return!0};m.Zl=function(){var a;(a=this.F.G>>8||!this.N)||(a=!(this.N.vc[0].Bd&64));return a?!0:!1};
var Np={800:Jp.prototype.Wl,801:Jp.prototype.Xl,802:Jp.prototype.Vl},Mp={496:Jp.prototype.Ak,497:Jp.prototype.dl,498:Jp.prototype.fl,499:Jp.prototype.gl,500:Jp.prototype.bl,501:Jp.prototype.al,502:Jp.prototype.cl,503:Jp.prototype.hl},Pp={800:Jp.prototype.mn,801:Jp.prototype.pn,802:Jp.prototype.on,803:Jp.prototype.nn,807:Jp.prototype.fi,811:Jp.prototype.fi,815:Jp.prototype.fi},Op={496:Jp.prototype.vm,497:Jp.prototype.Am,498:Jp.prototype.ym,499:Jp.prototype.zm,500:Jp.prototype.um,501:Jp.prototype.tm,
502:Jp.prototype.wm,503:Jp.prototype.sm,1014:Jp.prototype.xm};Qa(function(){for(var a=nb(document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new Jp(d);mb(d,c)}});
function gq(a){Ua.call(this,"Debugger",a,gq);this.pa=this.ya=this.fa=0;this.Ja=4;this.Ca=5;this.Ba=1048575;this.aa=hq(this);this.Db=hq(this);this.U=-1;this.L=[];this.Ea=!1;this.ua=hq(this);this.B=[];this.wa={};this.A=this.ra=this.ga=[];iq(this);this.Na=0;jq(this);this.$a=[];kq(this,a.messages);this.gb=a.commands;var b=this;window?void 0===window.$&&(window.$=function(a){return lq(b,a)}):void 0===global.$&&(global.$=function(a){return lq(b,a)})}db(gq);
@ -680,11 +680,11 @@ m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.V=a;this.tc=Eb(a,"FDC");this.Jb=E
b,2),d.O("dumpSel("+u(a?a.Z:b)+"): %"+r(a?a.Xb:null,d.Ca)),a){var c,b=!1;if(a.type&4096)a.type&2048?(c="code"+(a.type&512?",readable":",execonly"),a.type&1024&&(c+=",conforming")):(c="data"+(a.type&512?",writable":",readonly"),a.type&1024&&(c+=",expdown")),a.type&256&&(c+=",accessed");else{var h=Fq[a.type];h&&(c=h[0],b=h[1])}!c||a.wb&32768||(c+=",not present");d.O((b?"seg="+u(a.Aa&65535)+" off="+u(a.Ta):"base="+r(a.Aa,d.Ca)+" limit="+Gq(a.Ta))+" type="+t(a.type>>8)+" ("+c+") ext="+u(a.ext&-65296)+
" dpl="+t(a.Gc))}}else d.O("no selector")});Mk(this,134217728,function(a){var b;(a=a[0])&&(b=Dq(d,a));if(void 0===b)d.O("invalid MCB");else for(d.O("dumpMCB("+u(b)+")");b;){a=hq(d,0,b);var c=d.Qa(a,1),h=d.na(a,2),k=d.na(a,5);if(77!=c&&90!=c)break;d.O(Hq(0,b)+": '"+String.fromCharCode(c)+"' PID="+u(h)+" LEN="+u(k)+' "'+Iq(d,a,8)+'"');b+=1+k}});Mk(this,128,function(a){Cq(d,d.F.sa,a[0],d.F.sa!==d.F.ld)});Mk(this,8,function(a){a:{if(a=a[0]){var b=Dq(d,a);if(void 0===b){d.O("invalid task selector: "+a);
break a}a=Eq(d,b,2)}else a=d.F.Sa;d.O("dumpTSS("+u(a?a.Z:b)+"): %"+r(a?a.Aa:null,d.Ca));if(a){var b="",c=a.type&-513,h=256==c?4:8,k=256==c?Jq:Kq,l,n,q,p;for(p in k)l=k[p],n=a.Aa+l,q=If(d.F,n,2),2304==c&&(q|=If(d.F,n+2,2)<<16),b&&(b+="\n"),b+=u(l)+" "+ma(p+":",11)+r(q,h);if(2304==c)for(p=0,l=q>>>16;l<a.Zb&&1023>p;)n=a.Aa+l,q=If(d.F,n,2),b+="\n"+u(l)+" ports "+u(p)+"-"+u(p+15)+": "+ea(q,2),p+=16,l+=2;d.O(b)}}});this.C=null;this.rb=0;this.cb=!1;cf(this.F,48,this.am.bind(this));cf(this.F,65,this.bm.bind(this));
this.ka=null;cf(this.F,104,this.cm.bind(this));rb(this)};function Lq(a,b,c,d,e,f){b=Iq(a,b);var g=Eq(a,d),g=g?g.Ta+1:0,h=(e?"_CODE":"_DATA")+r(c,2);f&&z(a,128)&&a.message(b+" "+(e?"code":"data")+"("+r(c,4)+")=#"+r(d,4)+" len "+r(g));e=Mq(a,b,c);e[b+h]=0;am(a,b,c,d,0,null,g,e)}
function Nq(a,b,c,d){var e=a.na(b,2),f=a.na(b,2),g=a.oa(b,4),h=a.oa(b,4),k=hq(a,a.oa(b,4),a.na(b,2));b=hq(a,a.oa(b,4),a.na(b,2));b=Iq(a,b).toUpperCase();var k=Iq(a,k).toUpperCase(),l=(c?"_CODE":"_DATA")+r(e,2);d&&z(a,128)&&a.message((b==k?"":b+"!")+k+" "+(c?"code":"data")+"("+r(e,4)+")="+r(f,4)+":"+r(g)+" len "+r(h));c=Mq(a,k,e);c[k+l]=g;am(a,k,e,f,g,null,h,c)}function Oq(a,b,c){c=Iq(a,c).toUpperCase();Pq(a,c,b)}
this.ka=null;cf(this.F,104,this.cm.bind(this));rb(this)};function Lq(a,b,c,d,e,f){b=Iq(a,b);var g=Eq(a,d),g=g?g.Ta+1:0,h=(e?"_CODE":"_DATA")+r(c,2);f&&A(a,128)&&a.message(b+" "+(e?"code":"data")+"("+r(c,4)+")=#"+r(d,4)+" len "+r(g));e=Mq(a,b,c);e[b+h]=0;am(a,b,c,d,0,null,g,e)}
function Nq(a,b,c,d){var e=a.na(b,2),f=a.na(b,2),g=a.oa(b,4),h=a.oa(b,4),k=hq(a,a.oa(b,4),a.na(b,2));b=hq(a,a.oa(b,4),a.na(b,2));b=Iq(a,b).toUpperCase();var k=Iq(a,k).toUpperCase(),l=(c?"_CODE":"_DATA")+r(e,2);d&&A(a,128)&&a.message((b==k?"":b+"!")+k+" "+(c?"code":"data")+"("+r(e,4)+")="+r(f,4)+":"+r(g)+" len "+r(h));c=Mq(a,k,e);c[k+l]=g;am(a,k,e,f,g,null,h,c)}function Oq(a,b,c){c=Iq(a,c).toUpperCase();Pq(a,c,b)}
m.am=function(){var a=this.F;if(null!=this.C&&2752554==a.G){var b=a.M&65535,c=a.K&65535,d=hq(this,I(a)+12,a.ta.Z);switch(this.oa(d)){case 336:Nq(this,hq(this,a.H,b),!c,!!this.C)}}return!0};
m.bm=function(a){var b=this.F,c=b.G&65535,d=b.H&65535,e=b.I&65535,f=b.M&65535,g=b.K&65535,h=b.J&65535,k=b.Xa.Z;if(null==this.C)return 79==c&&df(b,a,function(a){return function(){62342!=(b.G&65535)?(b.G=b.G&-65536|62342,y(a,"INT 0x41 handling enabled",128),a.C=!0):(y(a,"INT 0x41 monitoring enabled",128),a.C=!1)}}(this)),!0;switch(c){case 79:this.C&&(b.G=b.G&-65536|62342,y(this,"INT 0x41 handling enabled",128));break;case 80:Lq(this,hq(this,h,k),d+1,e,!(g&1),!!this.C);break;case 82:Pq(this,null,d);
break;case 127:this.C&&(b.G=b.G&-65536|(this.cb?0:1));break;case 131:this.C&&(a=hq(this,b.M,e),this.rb++?(this.O("TRAPFAULT failed"),Qq(this,this.A,a,!0,!0),this.rb=0,this.Wb()):(this.O("INT 0x41 TRAPFAULT: fault="+u(d)+" error="+("0x"+r(b.K))+" addr="+Rq(a)),this.Rd(this.A,a,!0),jq(this,!0)));break;case 141:this.C&&(b.G=b.G&-65536|1);break;case 336:Nq(this,hq(this,b.H,f),!g,!!this.C);break;case 338:Oq(this,d,hq(this,b.J,f))}this.cb=!1;return!this.C};
break;case 127:this.C&&(b.G=b.G&-65536|(this.cb?0:1));break;case 131:this.C&&(a=hq(this,b.M,e),this.rb++?(this.O("TRAPFAULT failed"),Qq(this,this.A,a,!0,!0),this.rb=0,this.Wb()):(this.O("INT 0x41 TRAPFAULT: fault="+u(d)+" error="+("0x"+r(b.K))+" addr="+Rq(a)),this.Sd(this.A,a,!0),jq(this,!0)));break;case 141:this.C&&(b.G=b.G&-65536|1);break;case 336:Nq(this,hq(this,b.H,f),!g,!!this.C);break;case 338:Oq(this,d,hq(this,b.J,f))}this.cb=!1;return!this.C};
m.cm=function(a){var b=this.F,c=b.G&255,d=b.G>>8&255,e=b.H&65535,f=b.I&65535,g=b.M&65535,h=b.J&65535,k=b.Xa.Z;if(null==this.ka){if(67==d){if(609437257==b.oa((b.va.Z<<4)+10)||1111835735==b.oa((b.va.Z<<4)+95))return!0;df(b,a,function(a){return function(){62342!=(b.G&65535)?(b.G=b.G&-65536|62342,y(a,"INT 0x68 handling enabled",128),a.C=a.ka=!0):(y(a,"INT 0x68 monitoring enabled",128),a.ka=!1)}}(this))}return!0}switch(d){case 67:this.ka&&(b.G=b.G&-65536|62342);break;case 68:this.ka&&(a=gd(b.va,this.Hk.bind(this)))&&
(b.J=a[0],wd(b,a[1]));break;case 72:Pq(this,null,e);break;case 80:32==c?Lq(this,hq(this,h,k),0,f,!0,!!this.ka):128>c?Lq(this,hq(this,h,k),e+1,c&64?g:f,!(c&1),!!this.ka):Nq(this,hq(this,h,k),!(c&1),!!this.ka),this.ka&&(b.G=b.G&-256|1)}return!this.ka};m.Hk=function(){var a=this.F;5==(a.G&255)&&(a.I=a.K=0,a.G=a.G&-256|1);return!1};
m.Qb=function(a,b,c){var d=this;switch(b){case "debugInput":return this.Ka=this.qa[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",lq(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?d.U<d.L.length-1&&(b=d.L[++d.U]):40==a.keyCode&&(0<d.U?b=d.L[--d.U]:(b="",d.U=-1)),null!=b){var g=b.length;c.value=b;c.setSelectionRange(g,g)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.qa[b]=c,Ka(c,function(){if(d.Ka){var a=d.Ka.value;d.Ka.value=
@ -692,9 +692,9 @@ m.Qb=function(a,b,c){var d=this;switch(b){case "debugInput":return this.Ka=this.
function Eq(a,b,c){var d=Sq(a)?2:1;c||(c=d);if(c==d){if(b===a.F.va.Z)return a.F.va;if(b===a.F.vb.Z)return a.F.vb;if(b===a.F.Xa.Z)return a.F.Xa;if(b===a.F.ta.Z)return a.F.ta;if(80386<=a.F.ia){if(b===a.F.Ob.Z)return a.F.Ob;if(b===a.F.Pb.Z)return a.F.Pb}if(a.fb&&2==c||!a.bc)return null}a=a.bc;if(2!=c)a.kh(b),a.Ta=65535,a.Zb=65536;else{var e;c=a.F;b=b&65535;b&4?(d=c.Bc.Aa,e=d+c.Bc.Ta|0):(d=c.Ec,e=c.Ad);d=d+(b&65528)|0;if(e-d|0){e=If(c,d+0,2);var f=If(c,d+4,2),g=f&7936,h=If(c,d+2,2)|(f&255)<<16,k=If(c,
d+6,2);80386<=c.ia&&(h|=(k&65280)<<16,e|=(k&15)<<16,k&128&&(e=e<<12|4095));a.Z=b;a.Aa=h;a.Ta=e;a.Zb=(e>>>0)+1;a.wb=f;a.type=g;a.ext=k;a.Xb=d;fd(a,!0,!0,!1)}}return a}m.dc=function(a,b,c){var d=a&&a.Da;if(null==d&&(d=-1,a)){var e=Eq(this,a.Z,a.type);e&&(b=a.Ra||0,c=c||1,d=e=-1===e.Xb||e.cd&&(b>>>0)+c>e.Zb||!e.cd&&(b>>>0)+c<=e.Zb?e.Aa+b|0:-1,a.Da=d)}return d};m.Qa=function(a,b){var c=255,d=this.dc(a,!1,1);-1!==d&&(c=If(this.F,d,1,5==a.type)|0,b&&Tq(this,a,b));return c};
m.tb=function(a,b){return a.Sb?this.oa(a,b?4:0):this.na(a,b?2:0)};m.na=function(a,b){var c=65535,d=this.dc(a,!1,2);-1!==d&&(c=If(this.F,d,2,5==a.type),b&&Tq(this,a,b));return c};m.oa=function(a,b){var c=-1,d=this.dc(a,!1,4);-1!==d&&(c=If(this.F,d,4,5==a.type),b&&Tq(this,a,b));return c};m.qc=function(a,b,c){var d=this.dc(a,!0,1);if(-1!==d){if(5!=a.type)this.F.qc(d,b);else{var e=this.ea;e.sa[(d&e.Gb)>>>e.La].wf(d&e.A,b&255,d)}c&&Tq(this,a,c);Qc(this.F,!0)}};
m.jb=function(a,b,c){var d=this.dc(a,!0,2);-1!==d&&(5!=a.type?this.F.jb(d,b):fc(this.ea,d,b),c&&Tq(this,a,c),Qc(this.F,!0))};function hq(a,b,c,d,e,f,g){return Uq(a,{},b,c,d,e,f,g)}function Uq(a,b,c,d,e,f,g,h){b.Ra=c||0;b.Z=d;b.Da=e;b.type=f||(Sq(a)?2:1);b.Sb=null!=g?g:a.F&&4==a.F.va.ba;b.pc=null!=h?h:a.F&&4==a.F.va.Oc;b.Wd=!1;return b}function Vq(a){return[a.Ra,a.Z,a.Da,a.Wd,a.Sb,a.pc,a.Se,a.Vd]}function Wq(a){return{Ra:a[0],Z:a[1],Da:a[2],Wd:a[3],Sb:a[4],pc:a[5],Se:a[6],Vd:a[7]}}
m.jb=function(a,b,c){var d=this.dc(a,!0,2);-1!==d&&(5!=a.type?this.F.jb(d,b):fc(this.ea,d,b),c&&Tq(this,a,c),Qc(this.F,!0))};function hq(a,b,c,d,e,f,g){return Uq(a,{},b,c,d,e,f,g)}function Uq(a,b,c,d,e,f,g,h){b.Ra=c||0;b.Z=d;b.Da=e;b.type=f||(Sq(a)?2:1);b.Sb=null!=g?g:a.F&&4==a.F.va.ba;b.pc=null!=h?h:a.F&&4==a.F.va.Oc;b.Xd=!1;return b}function Vq(a){return[a.Ra,a.Z,a.Da,a.Xd,a.Sb,a.pc,a.Se,a.Wd]}function Wq(a){return{Ra:a[0],Z:a[1],Da:a[2],Xd:a[3],Sb:a[4],pc:a[5],Se:a[6],Wd:a[7]}}
function Xq(a,b,c){if(null!=b.Z&&(a=Eq(a,b.Z,b.type))){var d=b.Ra&a.Ba;if(!a.cd){if(d>>>0>=a.Zb)return!1}else if(d>>>0<a.Zb)return!1;c&&(b.Ra=d,b.Sb=4==a.ba,b.pc=4==a.Oc)}return!0}
function Yq(a,b,c,d){var e,f=c?a.aa:a.Db;c=d?0:f.type;var g=f.Ra,h=f.Z,f=f.Da;if(void 0!==b){b=Zq(a,b);e=b.charAt(0);f=b.indexOf(":");switch(e){case "&":c=1;break;case "#":c=2;break;case "%":c=4;e=b.charAt(1);"%"==e&&(c=5,e+=e);g=0;h=null;break;default:0<=f&&(c=0),e=""}e&&(b=b.substr(e.length),f-=e.length);e=b;var k;if(e.match(/^[a-z_][a-z0-9_]*$/i))for(var l=e.toUpperCase(),n=0;n<a.B.length;n++){e=a.B[n];var q=e.Qd[l];if(void 0!==q){l=q.o;void 0!==l&&(k=q.s,void 0===k&&(k=e.Z),k=hq(a,l,k,q.p));break}}if(e=
function Yq(a,b,c,d){var e,f=c?a.aa:a.Db;c=d?0:f.type;var g=f.Ra,h=f.Z,f=f.Da;if(void 0!==b){b=Zq(a,b);e=b.charAt(0);f=b.indexOf(":");switch(e){case "&":c=1;break;case "#":c=2;break;case "%":c=4;e=b.charAt(1);"%"==e&&(c=5,e+=e);g=0;h=null;break;default:0<=f&&(c=0),e=""}e&&(b=b.substr(e.length),f-=e.length);e=b;var k;if(e.match(/^[a-z_][a-z0-9_]*$/i))for(var l=e.toUpperCase(),n=0;n<a.B.length;n++){e=a.B[n];var q=e.Rd[l];if(void 0!==q){l=q.o;void 0!==l&&(k=q.s,void 0===k&&(k=e.Z),k=hq(a,l,k,q.p));break}}if(e=
k)return e;0>f?null!=h?(g=$q(a,b,void 0),f=null):(f=$q(a,b,void 0),null==f&&(g=null)):(h=$q(a,b.substring(0,f),void 0),g=$q(a,b.substring(f+1),void 0),f=null)}null!=g&&(e=hq(a,g,h,f,c),d||Xq(a,e,!0)||(a.O("invalid offset: "+Rq(e)),e=null));return e}function ar(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.Dk=br(a,b.ik=c[2]))}function Tq(a,b,c){c=c||1;null!=b.Da&&(b.Da+=c);null!=b.Z&&(b.Ra+=c,Xq(a,b)||(b.Ra=0,b.Da=null))}function Hq(a,b,c){return null!=b?r(b,4)+":"+r(a,a&-65536||c?8:4):r(a)}
function Rq(a){var b;switch(a.type){case 1:case 3:b="&";break;case 2:b="#";break;case 4:b="%";break;case 5:b="%%";break;default:b=a.Z?"":"%"}return 4<=a.type||null==a.Z?b+r(a.Da):b+Hq(a.Ra,a.Z,a.pc)}function Iq(a,b,c){var d="";for(c=c||256;d.length<c;){var e=a.Qa(b,1);if(!e||36==e||127<=e)break;d+=32<=e?String.fromCharCode(e):"."}return d}
function Cq(a,b,c,d){var e=0,f=0,g=b.length;if(c){e=a.dc(Yq(a,c));if(-1===e){a.O("invalid address: "+c);return}f=e>>>a.F.La;g=1}a.O("blockid "+(d?"linear ":"physical")+" blockaddr used size type");a.O("-------- --------- ---------- ------ ------ ----");c=-1;for(var h=0;g--;)(d=b[f])&&5==d.type&&(d=Fc(a.F,e,!1,!0)),d.type==c?h++||a.O("..."):(c=d.type,h=sc[c],6==c&&(d=d.Cd,h+=" -> "+sc[d.type]),d&&a.O(r(d.id)+" %"+r(f<<a.F.La)+" %%"+r(d.Da)+" "+u(d.Ne)+" "+u(d.size)+" "+h),c!=
@ -705,41 +705,41 @@ function Mq(a,b,c){var d=[],e;for(e=null;e=Eb(a.V,"Disk",e);){var f=e,g=b,h=c,d=
function Mk(a,b,c){for(var d in vq)if(b==vq[d]){a.$a[d]=c;break}}function dr(a,b){var c;a=a.toUpperCase();null==b?c=ua(tq,a):(c=ua(tq,a.substr(b,3)),0>c&&(c=ua(tq,a.substr(b,2))));return c}
function er(a,b){var c=0,d=fr(a,b);if(void 0!==d)switch(b){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:c=2;break;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 22:case 16:case 17:case 18:case 19:case 20:case 21:c=4;break;case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 56:c=8;break;case 23:c=a.Ja}return c?r(d,c):"??"}
function fr(a,b){var c;if(0<=b){var d=a.F;switch(b){case 0:c=d.G&255;break;case 1:c=d.I&255;break;case 2:c=d.M&255;break;case 3:c=d.H&255;break;case 4:c=d.G>>8&255;break;case 5:c=d.I>>8&255;break;case 6:c=d.M>>8&255;break;case 7:c=d.H>>8&255;break;case 8:c=d.G&65535;break;case 9:c=d.I&65535;break;case 10:c=d.M&65535;break;case 11:c=d.H&65535;break;case 12:c=I(d)&65535;break;case 13:c=d.P&65535;break;case 14:c=d.K&65535;break;case 15:c=d.J&65535;break;case 22:c=K(d)&65535;break;case 23:c=xd(d);break;
case 16:c=d.Xa.Z;break;case 17:c=d.va.Z;break;case 18:c=d.ta.Z;break;case 19:c=d.vb.Z;break;default:if(80286==a.F.ia)32==b&&(c=d.Za);else if(80386<=a.F.ia)switch(b){case 24:c=d.G;break;case 25:c=d.I;break;case 26:c=d.M;break;case 27:c=d.H;break;case 28:c=I(d);break;case 29:c=d.P;break;case 30:c=d.K;break;case 31:c=d.J;break;case 32:c=d.Za;break;case 33:c=d.ii;break;case 34:c=d.te;break;case 35:c=d.Od;break;case 20:c=d.Ob.Z;break;case 21:c=d.Pb.Z;break;case 56:c=K(d)}}}return c}
case 16:c=d.Xa.Z;break;case 17:c=d.va.Z;break;case 18:c=d.ta.Z;break;case 19:c=d.vb.Z;break;default:if(80286==a.F.ia)32==b&&(c=d.Za);else if(80386<=a.F.ia)switch(b){case 24:c=d.G;break;case 25:c=d.I;break;case 26:c=d.M;break;case 27:c=d.H;break;case 28:c=I(d);break;case 29:c=d.P;break;case 30:c=d.K;break;case 31:c=d.J;break;case 32:c=d.Za;break;case 33:c=d.ii;break;case 34:c=d.te;break;case 35:c=d.Pd;break;case 20:c=d.Ob.Z;break;case 21:c=d.Pb.Z;break;case 56:c=K(d)}}}return c}
function gr(a,b){b=Zq(a,b);for(var c=0,d,e;0<=(c=b.indexOf("@",c));)e=dr(b,c+1),0<=e&&(b=b.substr(0,c)+er(a,e)+b.substr(c+1+tq[e].length)),c++;for(c=0;0<=(c=b.indexOf("#",c));)e=b.substr(c+1,2),d=ca(e,16),null!=d&&32<=d&&128>d?(d=e+" '"+String.fromCharCode(d)+"'",b=b.replace("#"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("$",c));)e=b.substr(c+1,9),(d=Yq(a,e))?(d=e+' "'+Iq(a,d)+'"',b=b.replace("$"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("^",c));)e=b.substr(c+1,9),(d=Yq(a,e))?(Tq(a,d),d=e+
' "'+Iq(a,d,11)+'"',b=b.replace("^"+e,d),c+=d.length):c++;return b}m=gq.prototype;m.message=function(a,b){b&&(a+=" at "+Rq(hq(this,K(this.F),this.F.va.Z))+" (%"+r(this.F.Ga)+")");if(!this.Pa||a!=this.Pa)if(this.Pa=a,this.wc&-2147483648&&(this.Wb(),a+=" (cpu halted)"),this.O(a),this.F){var c=this.F;c.Y.mf=0;c.fb-=c.A;c.A=0;Qc(c)}};
function kk(a,b,c,d){var e,f;if(!d&&(d=z(a,1)&&0>nq.indexOf(b),!d)){var g=mq[b];g&&(d=z(a,g)?!0:524288==g&&z(a,g=1048576))}d&&(e=a.F.G>>8&255,f=a.F.M&255,33==b&&11==e||524288==g&&128<=f||1048576==g&&128>f)&&(d=!1);d&&((g=(g=yb[b])&&g[e]||"")&&(g=" "+gr(a,g)),a.message("INT "+t(b)+": AH="+t(e)+" at "+Hq(c-2-a.F.va.Aa,a.F.va.Z)+g));return d}
function ob(a,b,c,d,e,f,g,h){h|=256;if(null==e||(a.wc&h)==h)h=null,null!=e&&(h=a.F.va.Z,e-=a.F.va.Aa),a.message(b.de+"."+(null!=d?"outPort":"inPort")+"("+u(c)+","+(f?f:"unknown")+(null!=d?","+t(d):"")+")"+(null!=g?": "+t(g):"")+(null!=e?" at "+Hq(e,h):""))}m.gh=function(){this.O("Type ? for help with PCjs Debugger commands");this.qd();if(this.gb){var a=this.gb;this.gb=null;lq(this,a)}};
function kk(a,b,c,d){var e,f;if(!d&&(d=A(a,1)&&0>nq.indexOf(b),!d)){var g=mq[b];g&&(d=A(a,g)?!0:524288==g&&A(a,g=1048576))}d&&(e=a.F.G>>8&255,f=a.F.M&255,33==b&&11==e||524288==g&&128<=f||1048576==g&&128>f)&&(d=!1);d&&((g=(g=yb[b])&&g[e]||"")&&(g=" "+gr(a,g)),a.message("INT "+t(b)+": AH="+t(e)+" at "+Hq(c-2-a.F.va.Aa,a.F.va.Z)+g));return d}
function ob(a,b,c,d,e,f,g,h){h|=256;if(null==e||(a.wc&h)==h)h=null,null!=e&&(h=a.F.va.Z,e-=a.F.va.Aa),a.message(b.ee+"."+(null!=d?"outPort":"inPort")+"("+u(c)+","+(f?f:"unknown")+(null!=d?","+t(d):"")+")"+(null!=g?": "+t(g):"")+(null!=e?" at "+Hq(e,h):""))}m.gh=function(){this.O("Type ? for help with PCjs Debugger commands");this.qd();if(this.gb){var a=this.gb;this.gb=null;lq(this,a)}};
function jq(a,b){var c;if(Tf(a)){if(!a.ja||!a.ja.length){a.ja=Array(1E3);for(c=0;c<a.ja.length;c++)a.ja[c]=hq(a);a.Fa=0;b||a.O("instruction history buffer allocated")}if(!a.X||!a.X.length)for(a.X=Array(256),c=0;c<a.X.length;c++)a.X[c]=[c,0]}else a.ja&&a.ja.length&&!b&&a.O("instruction history buffer freed"),a.Fa=0,a.ja=[],a.X=[]}m.Ke=function(a){if(!hr(this))return!1;this.F.Ke(a);return!0};
m.vf=function(a,b,c){if(!hr(this))return!1;this.fa=0;do{a||Tf(this)&&Wf(this,this.F.Ga,0);try{var d=this.F.vf(a);0<d&&(this.fa+=d,Zc(this.F,d,!0),Vc(this.F,d),this.pa++)}catch(f){if("number"!=typeof f){var e=f;this.fa=0;ub(this.F,e.stack||e.message)}}}while(this.F.S&3312);!1!==c&&Qc(this.F);this.qd(b||!1);return 0<this.fa};m.Wb=function(a){this.F&&this.F.Wb(a)};m.qd=function(a){void 0===a&&(a=!0);this.aa=hq(this,K(this.F),this.F.va.Z);a&&1!=this.N?ir(this):jr(this)};
function hr(a){var b;if(b=a.F&&sb(a.F))b=a.F,b.la.cc?b=!0:(b.O(b.toString()+" not powered"),b=!1);b&&!qb(a.F)?(a=a.F,a.la.ud?(a.O(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}m.ic=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};m.hc=function(a,b){b&&this.O(a?"suspending":"shutting down");return a?this.save():!0};m.reset=function(a){jq(this);this.pa=this.ya=0;this.Pa=null;this.fa=0;this.aa=hq(this,K(this.F),this.F.va.Z);this.la.Ib=!1;kr(this);a||this.qd()};
m.save=function(){var a=new hf(this);N(a,0,Vq(this.aa));N(a,1,Vq(this.ua));N(a,2,[this.L,this.Ea,this.wc]);N(a,3,this.B);return a.data()};m.restore=function(a){var b=0;void 0!==a[2]&&(this.aa=Wq(a[b++]),this.ua=Wq(a[b++]),this.L=a[b][0],"string"==typeof this.L&&(this.L=[this.L]),this.Ea=a[b][1],this.wc|=a[b][2]);a[3]&&(this.B=a[3]);return!0};m.start=function(a,b){this.N||this.O("running");this.la.Ib=!0;this.uc=a;this.xd=b};
m.stop=function(a,b){if(this.la.Ib){this.la.Ib=!1;this.fa=b-this.xd;if(!this.N){var c="stopped";if(this.fa){var d=a-this.uc,e=0<d?Math.round(1E3*this.fa/d):0,c=c+" (";Tf(this)&&(c+=this.pa+" opcodes, ",this.ya-=this.pa,this.pa=0);c+=this.fa+" cycles, "+d+" ms, "+e+" hz)"}else z(this,-2147483648)&&(c+=" (use the 't' command to execute blocked faults)");this.O(c)}this.qd(!0);this.yd();kr(this,this.F.Ga)}};function Tf(a){return 1<a.A.length||!!a.Na||z(a,16)}
m.stop=function(a,b){if(this.la.Ib){this.la.Ib=!1;this.fa=b-this.xd;if(!this.N){var c="stopped";if(this.fa){var d=a-this.uc,e=0<d?Math.round(1E3*this.fa/d):0,c=c+" (";Tf(this)&&(c+=this.pa+" opcodes, ",this.ya-=this.pa,this.pa=0);c+=this.fa+" cycles, "+d+" ms, "+e+" hz)"}else A(this,-2147483648)&&(c+=" (use the 't' command to execute blocked faults)");this.O(c)}this.qd(!0);this.yd();kr(this,this.F.Ga)}};function Tf(a){return 1<a.A.length||!!a.Na||A(a,16)}
function Wf(a,b,c){var d=a.F;if(0<c&&(a.Na&&!--a.Na||lr(a,b,1,a.A)))return!0;0<=c&&a.X.length&&(a.pa++,b=If(d,b),null!=b&&(a.X[b][1]++,Uq(a,a.ja[a.Fa],K(d),d.va.Z),++a.Fa==a.ja.length&&(a.Fa=0)));return!1}function Cc(a,b,c){return lr(a,b,c||1,a.ra)?(a.Wb(!0),!0):!1}function Ec(a,b,c){return lr(a,b,c||1,a.ga)?(a.Wb(!0),!0):!1}function jc(a,b,c){a.O("break on input from port "+u(b)+": "+r(c));a.Wb(!0)}function nc(a,b,c){a.O("break on output to port "+u(b)+": "+r(c));a.Wb(!0)}
function iq(a){var b,c;a.A=["bp"];if(void 0!==a.ra)for(b=1;b<a.ra.length;b++)c=a.ra[b],re(a.F,a.dc(c),!1,5==c.type);a.ra=["br"];if(void 0!==a.ga)for(b=1;b<a.ga.length;b++)c=a.ga[b],re(a.F,a.dc(c),!0,5==c.type);a.ga=["bw"];a.fb=0}
m.Rd=function(a,b,c){var d=!0;c||Qq(this,a,b,!1,!0);if(a!=this.A){var e=this.dc(b);if(-1===e)this.O("invalid address: "+Rq(b)),d=!1;else{var f=this.F,g=5==b.type;(g?f.ld:f.sa)[e>>>f.La].Rd(e&f.Fa,a==this.ga);g&&Vb(f)}}d&&(a.push(b),c?(null!=b.Da&&(b.Z=null),b.Wd=!0):(mr(this,a,a.length-1,"set"),jq(this)));return d};
function Qq(a,b,c,d,e){for(var f=!1,g=nr(a,a.dc(c)),h=1;h<b.length;h++){var k=b[h];if(-1!==g&&g==nr(a,a.dc(k))||-1===g&&c.Z==k.Z&&c.Ra==k.Ra)if(!d||k.Wd){f=!0;k.Wd||e||mr(a,b,h,"cleared");b.splice(h,1);b!=a.A&&re(a.F,g,b==a.ga,5==k.type);k.Wd||jq(a);break}}return f}function or(a,b){for(var c=1;c<b.length;c++)mr(a,b,c);return b.length-1}function mr(a,b,c,d){c=b[c];a.O(b[0]+" "+Rq(c)+(d?" "+d:c.ik?' "'+c.ik+'"':""))}
function kr(a,b){if(void 0!==b)lr(a,b,1,a.A,!0),a.N=0;else for(var c=1;c<a.A.length;c++){var d=a.A[c];if(d.Wd){if(!Qq(a,a.A,d,!0))break;c=0}}}function nr(a,b){if(-1!==b){var c=a.Ba&-65536;(b&c)==c&&(b&=1048575)}return b}
function lr(a,b,c,d,e){var f=!1;if(!a.fb++){b=nr(a,b);z(a,-2147483632)&&204==If(a.F,b)&&(f=!0);for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.Wd){null!=h.Z&&(h.Da=null);for(var k=nr(a,a.dc(h)),l=0;l<c;l++)if(b+l==k){var n,f=!0;h.Wd&&(Qq(a,d,h,!0),e=!0);if(n=h.Dk){for(var f=!1,q=0;q<n.length;q++)if(!pr(a,n[q],!0)){if(n[q].indexOf("if")){f=!0;break}for(var p=q+1;p<n.length&&n[p].indexOf("else");p++)q++;if(p==n.length){f=!0;break}}a.F.la.Ib||(f=!0)}if(f){e||mr(a,d,g,"hit");break}}}}}a.fb--;return f}
function qr(a,b,c,d){for(var e=hq(a,b.Ra,b.Z,b.Da,b.type),f=a.Qa(b,1),g=4,h=0,k=!1,l=!1;(102==f||103==f)&&g--;)102==f?k||(b.Sb=!b.Sb,k=!0):l||(b.pc=!b.pc,l=!0),h++,f=a.Qa(b,1);var g=-1,n=pq,k=a.Ia[f],l=k[0];176==l&&(l=a.Qa(b,1),k=zq[l]||wq,f|=l<<8,l=k[0]);if(36==l){var g=a.Qa(b,1),q;q=null;var p=g>>3&7,A=(3>(g>>6&3)?0:48)+p;(217==f||219==f)&&52<=A&&(A=p<<4|g&7);(p=Aq[f])&&(q=p[A]);q&&(n=qq,k=q,l=k[0])}l>=n.length&&(g=a.Qa(b,1),k=Bq[l-n.length][g>>3&7],l=k[0]);n=n[l];p=k.length-1;q="";b.Sb&&(18==l?
n="CWDE":28==l?n="CDQ":104<=l&&107>=l&&(n+="D"));if(164<=f&&167>=f||170<=f&&175>=f)p=0,b.Sb&&"W"==n.slice(-1)&&(n=n.slice(0,-1)+"D");for(var f=null,A=!0,F=1;F<=p;F++){var v,E;v="";E=k[F];if(void 0!==E){null==f&&(f=E>>14);80==l&&(2==f?q="[%800]":3==f&&(q="ES:["+(b.pc?"E":"")+"DI]"));var H=E&15;if(0!=H)if(8==H)A=!1;else{var L=E&240;if(128<=L)if(0>g&&(g=a.Qa(b,1)),160>L){v=a;var V=p,H=b,P="",bb=g>>6,ia=g&7;if(3>bb){var ja=void 0,L=0==n.indexOf("FI");if(!bb&&(!H.pc&&6==ia||H.pc&&5==ia))bb=2;else{if(H.pc)if(4!=
m.Sd=function(a,b,c){var d=!0;c||Qq(this,a,b,!1,!0);if(a!=this.A){var e=this.dc(b);if(-1===e)this.O("invalid address: "+Rq(b)),d=!1;else{var f=this.F,g=5==b.type;(g?f.ld:f.sa)[e>>>f.La].Sd(e&f.Fa,a==this.ga);g&&Vb(f)}}d&&(a.push(b),c?(null!=b.Da&&(b.Z=null),b.Xd=!0):(mr(this,a,a.length-1,"set"),jq(this)));return d};
function Qq(a,b,c,d,e){for(var f=!1,g=nr(a,a.dc(c)),h=1;h<b.length;h++){var k=b[h];if(-1!==g&&g==nr(a,a.dc(k))||-1===g&&c.Z==k.Z&&c.Ra==k.Ra)if(!d||k.Xd){f=!0;k.Xd||e||mr(a,b,h,"cleared");b.splice(h,1);b!=a.A&&re(a.F,g,b==a.ga,5==k.type);k.Xd||jq(a);break}}return f}function or(a,b){for(var c=1;c<b.length;c++)mr(a,b,c);return b.length-1}function mr(a,b,c,d){c=b[c];a.O(b[0]+" "+Rq(c)+(d?" "+d:c.ik?' "'+c.ik+'"':""))}
function kr(a,b){if(void 0!==b)lr(a,b,1,a.A,!0),a.N=0;else for(var c=1;c<a.A.length;c++){var d=a.A[c];if(d.Xd){if(!Qq(a,a.A,d,!0))break;c=0}}}function nr(a,b){if(-1!==b){var c=a.Ba&-65536;(b&c)==c&&(b&=1048575)}return b}
function lr(a,b,c,d,e){var f=!1;if(!a.fb++){b=nr(a,b);A(a,-2147483632)&&204==If(a.F,b)&&(f=!0);for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.Xd){null!=h.Z&&(h.Da=null);for(var k=nr(a,a.dc(h)),l=0;l<c;l++)if(b+l==k){var n,f=!0;h.Xd&&(Qq(a,d,h,!0),e=!0);if(n=h.Dk){for(var f=!1,q=0;q<n.length;q++)if(!pr(a,n[q],!0)){if(n[q].indexOf("if")){f=!0;break}for(var p=q+1;p<n.length&&n[p].indexOf("else");p++)q++;if(p==n.length){f=!0;break}}a.F.la.Ib||(f=!0)}if(f){e||mr(a,d,g,"hit");break}}}}}a.fb--;return f}
function qr(a,b,c,d){for(var e=hq(a,b.Ra,b.Z,b.Da,b.type),f=a.Qa(b,1),g=4,h=0,k=!1,l=!1;(102==f||103==f)&&g--;)102==f?k||(b.Sb=!b.Sb,k=!0):l||(b.pc=!b.pc,l=!0),h++,f=a.Qa(b,1);var g=-1,n=pq,k=a.Ia[f],l=k[0];176==l&&(l=a.Qa(b,1),k=zq[l]||wq,f|=l<<8,l=k[0]);if(36==l){var g=a.Qa(b,1),q;q=null;var p=g>>3&7,z=(3>(g>>6&3)?0:48)+p;(217==f||219==f)&&52<=z&&(z=p<<4|g&7);(p=Aq[f])&&(q=p[z]);q&&(n=qq,k=q,l=k[0])}l>=n.length&&(g=a.Qa(b,1),k=Bq[l-n.length][g>>3&7],l=k[0]);n=n[l];p=k.length-1;q="";b.Sb&&(18==l?
n="CWDE":28==l?n="CDQ":104<=l&&107>=l&&(n+="D"));if(164<=f&&167>=f||170<=f&&175>=f)p=0,b.Sb&&"W"==n.slice(-1)&&(n=n.slice(0,-1)+"D");for(var f=null,z=!0,F=1;F<=p;F++){var v,E;v="";E=k[F];if(void 0!==E){null==f&&(f=E>>14);80==l&&(2==f?q="[%800]":3==f&&(q="ES:["+(b.pc?"E":"")+"DI]"));var H=E&15;if(0!=H)if(8==H)z=!1;else{var L=E&240;if(128<=L)if(0>g&&(g=a.Qa(b,1)),160>L){v=a;var V=p,H=b,P="",bb=g>>6,ia=g&7;if(3>bb){var ja=void 0,L=0==n.indexOf("FI");if(!bb&&(!H.pc&&6==ia||H.pc&&5==ia))bb=2;else{if(H.pc)if(4!=
ia)ia+=8;else{var P=v,ja=bb,Ha=H,Xa=P.Qa(Ha,1),Ba=Xa>>6,Ub=Xa>>3&7,Xa=Xa&7,wa="";if(ja||5!=Xa)wa=uq[Xa+8];4!=Ub&&(wa&&(wa+="+"),wa+=uq[Ub+8],Ba&&(wa+="*"+(1<<Ba)));ja||5!=Xa||(wa&&(wa+="+"),wa+=r(P.oa(Ha,4)));P=wa}P||(P=uq[ia])}1==bb?(ja=v.Qa(H,1),ja&128?(ja=ja<<24>>24,P+="-"+r(-ja,2)):P+="+"+r(ja,2)):2==bb&&(P&&(P+="+"),H.pc?(ja=v.oa(H,4),P+=r(ja)):(ja=v.na(H,2),P+=r(ja,4)));P="["+P+"]";if(1==V){v="";E&=15;4==E&&(E=H.Sb?5:3);switch(E){case 7:v="FAR";break;case 1:v="BYTE";break;case 3:if(L){v="INT16";
break}v="WORD";break;case 5:v="DWORD";break;case 11:if(L){v="INT32";break}case 11:v="REAL32";break;case 12:if(L){v="INT64";break}case 12:v="REAL64";break;case 13:v="REAL80";break;case 14:v="BCD80"}v&&(P=v+" "+P)}}else P=rr(v,ia,E,H);v=P}else v=160==L?rr(a,g&7,E,b):rr(a,g>>3&7,E,b);else if(16==L)v="1";else if(0==L){v=a;H=E;L=b;E=" ";switch(H&15){case 1:H&12288&&(E=r(v.Qa(L,1),2));break;case 2:E=r(v.Qa(L,1)<<24>>24,L.Sb?8:4);break;case 4:if(L.Sb){E=r(v.oa(L,4));break}case 3:E=r(v.na(L,2),4);break;case 7:L=
hq(v,v.tb(L,!0),v.na(L,2),null,L.type,L.Sb,L.pc);E=Rq(L);v=sr(v,L);v[0]&&(E+=" ("+v[0]+")");break;default:E="imm("+u(H)+")"}v=E}else 32==L?(b.pc?(v=8,E=a.oa(b,4)):(v=4,E=a.na(b,2)),v="["+r(E,v)+"]"):48==L?(v=1==H?a.Qa(b,1)<<24>>24:a.tb(b,!0),E=b.Ra+v&(b.Sb?-1:65535),v=r(E,b.Sb?8:4),E=sr(a,hq(a,E,b.Z)),E[0]&&(v+=" ("+E[0]+")")):96==L?v=9==H?"ST":10==H?"ST("+(g&7)+")":rr(a,(E&3840)>>8,E,b):112==L?v=rr(a,(E&3840)>>8,192,b):64==L?v="DS:[SI]":80==L&&(v="ES:[DI]");if(!v||!v.length){q="INVALID";break}0<
q.length&&(q+=",");q+=v||"???"}}}g="";k=Rq(e)+" ";if(-1!==e.Da&&-1!==b.Da){do if(g+=r(a.Qa(e,1),2),null==e.Da)break;while(e.Da!=b.Da)}k+=ma(g,e.pc?24:16);k+=ma(n,8);q&&(k+=" "+q);a.F.ia<sq[f]&&(c=sq[f]+" CPU only");c&&A&&(k=ma(k,e.pc?74:56)+";"+c,k=a.F.la.Ye?k+("cycles="+Wc(a.F).toString()+" cs="+r(a.F.Y.If)):k+(null!=d?"="+d.toString():""));tr(b,A,h);return k}
q.length&&(q+=",");q+=v||"???"}}}g="";k=Rq(e)+" ";if(-1!==e.Da&&-1!==b.Da){do if(g+=r(a.Qa(e,1),2),null==e.Da)break;while(e.Da!=b.Da)}k+=ma(g,e.pc?24:16);k+=ma(n,8);q&&(k+=" "+q);a.F.ia<sq[f]&&(c=sq[f]+" CPU only");c&&z&&(k=ma(k,e.pc?74:56)+";"+c,k=a.F.la.Ye?k+("cycles="+Wc(a.F).toString()+" cs="+r(a.F.Y.If)):k+(null!=d?"="+d.toString():""));tr(b,z,h);return k}
function rr(a,b,c,d){var e=c&240;if(192==e){if(5<b||4<=b&&80386>a.F.ia)return"??";b+=16}else if(208==e)b+=32;else if(224==e)b+=40;else if(240==e)b+=48;else if(a=c&15,3<=a&&(8>b&&(b+=8),5==a||4==a&&d.Sb))b+=16;return tq[b]}
function ur(a,b){var c;switch(b){case "V":c=uf(a.F);break;case "D":c=a.F.ca&1024;break;case "I":c=a.F.ca&512;break;case "T":c=a.F.ca&256;break;case "S":c=tf(a.F);break;case "Z":c=sf(a.F);break;case "A":c=rf(a.F);break;case "P":c=qf(a.F);break;case "C":c=pf(a.F);break;default:c=0}return b+(c?"1":"0")+" "}function Gq(a){return r(a,a&-65536?8:4)}function vr(a,b){8<=b&&15>=b&&4<a.Ja&&(b+=16);var c=tq[b];32==b&&80286==a.F.ia&&(c="MS");return c+"="+er(a,b)+" "}
function wr(a,b,c){return b.lc+"="+r(b.Z,4)+(c?"["+r(b.Aa,a.Ca)+","+Gq(b.Ta)+"]":"")}function xr(a,b,c,d,e){return b+"="+(null!=c?r(c,4):"")+"["+r(d,a.Ca)+","+r(e-d,4)+"]"}
function yr(a,b){var c;void 0===b&&(b=Sq(a));c=vr(a,8)+vr(a,11)+vr(a,9)+vr(a,10)+(4<a.Ja?"\n":"")+vr(a,12)+vr(a,13)+vr(a,14)+vr(a,15)+"\n"+wr(a,a.F.ta,b)+" "+wr(a,a.F.vb,b)+" "+wr(a,a.F.Xa,b)+" ";if(b){var d="TR="+r(a.F.Sa.Z,4),e=a.ea,e="A20="+(e.V||e.wg!=e.Gb?"OFF ":"ON ");80386>a.F.ia&&(d="\n"+d,c+=e,e="");c+="\n"+wr(a,a.F.va,b)+" ";80386<=a.F.ia&&(e+="\n",c+=wr(a,a.F.Ob,b)+" "+wr(a,a.F.Pb,b)+"\n");c+=xr(a,"LD",a.F.Bc.Z,a.F.Bc.Aa,a.F.Bc.Aa+a.F.Bc.Ta)+" "+xr(a,"GD",null,a.F.Ec,a.F.Ad)+" "+xr(a,"ID",
null,a.F.Mc,a.F.Sd)+" ";c=c+(d+" "+e)+vr(a,32);80386<=a.F.ia&&(c+=vr(a,34)+vr(a,35))}else 80386<=a.F.ia&&(c+=wr(a,a.F.Ob,b)+" "+wr(a,a.F.Pb,b)+" ");return c+=vr(a,23)+ur(a,"V")+ur(a,"D")+ur(a,"I")+ur(a,"T")+ur(a,"S")+ur(a,"Z")+ur(a,"A")+ur(a,"P")+ur(a,"C")}var zr={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9};
null,a.F.Mc,a.F.Td)+" ";c=c+(d+" "+e)+vr(a,32);80386<=a.F.ia&&(c+=vr(a,34)+vr(a,35))}else 80386<=a.F.ia&&(c+=wr(a,a.F.Ob,b)+" "+wr(a,a.F.Pb,b)+" ");return c+=vr(a,23)+ur(a,"V")+ur(a,"D")+ur(a,"I")+ur(a,"T")+ur(a,"S")+ur(a,"Z")+ur(a,"A")+ur(a,"P")+ur(a,"C")}var zr={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9};
function Ar(a,b,c){for(c=c||-1;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e=a.pop(),f=a.pop();switch(d){case "*":d=f*e;break;case "/":if(!e)return!1;d=f/e;break;case "%":if(!e)return!1;d=f%e;break;case "+":d=f+e;break;case "-":d=f-e;break;case "<<":d=f<<e;break;case ">>":d=f>>e;break;case ">>>":d=f>>>e;break;case "<":d=f<e?1:0;break;case "<=":d=f<=e?1:0;break;case ">":d=f>e?1:0;break;case ">=":d=f>=e?1:0;break;case "==":d=f==e?1:0;break;case "!=":d=f!=e?1:0;break;case "&":d=f&e;break;
case "^":d=f^e;break;case "|":d=f|e;break;case "&&":d=f&&e?1:0;break;case "||":d=f||e?1:0;break;default:return!1}a.push(d|0)}return!0}
function $q(a,b,c){var d;if(b){b=Zq(a,b);for(var e=0,f=!1,g=b,h=[],k=[],l=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);e<l.length;){var n=l[e++],q=n.length,n=na(n);if(!n){f=!0;break}n=Dq(a,n,null,!1===c);if(void 0===n){f=!0;c=!1;break}h.push(n);if(e==l.length)break;var n=l[e++],p=n.length;k.length&&zr[n]<zr[k[k.length-1]]&&Ar(h,k,1);k.push(n);b=b.substr(q+p)}Ar(h,k)&&1==h.length||(f=!0);f?c&&a.O("error parsing '"+g+"' at character "+(g.length-b.length)):(d=h.pop(),c&&Br(a,null,
d))}return d}function Zq(a,b){for(var c;(c=b.match(/\{(.*?)}/))&&!(0<=c[1].indexOf("{"));){var d=$q(a,c[1]);b=b.replace("{"+c[1]+"}",null!=d?r(d):"undefined")}for(;(c=b.match(/\[(.*?)]/))&&!(0<=c[1].indexOf("["));)d=Yq(a,c[1]),b=b.replace("["+c[1]+"]",d?r(a.tb(d),d.Sb?8:4):"undefined");for(c=b;d=c.match(/\$([a-z]+)/i);){var e=null;switch(d[1].toLowerCase()){case "ops":e=a.pa-a.ya}if(null==e)break;c=c.replace(d[0],e.toString())}return c}
function Dq(a,b,c,d){var e;void 0!==b?(e=dr(b),0<=e?e=fr(a,e):(e=a.wa[b],void 0===e&&(e=ca(b))),void 0!==e||d||a.O("invalid "+(c?c:"value")+": "+b)):d||a.O("missing "+(c||"value"));return e}function Br(a,b,c){var d,e=!1;void 0!==c&&(e=!0,d="0x"+r(c)+" "+c+". ("+ea(c)+")");a.O((null!=b?b+": ":"")+d);return e}function Cr(a,b){if(b)return Br(a,b,a.wa[b]);var c=0;for(b in a.wa)Br(a,b,a.wa[b]),c++;return 0<c}gq.prototype.sb=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0};
function am(a,b,c,d,e,f,g,h){var k={},l=[],n;for(n in h){var q=h[n];"number"==typeof q&&(h[n]=q={o:q});var p=q.o,A=q.s,F=q.a;if(void 0!==p){void 0!==A&&(k.Ra=p,k.Z=A,k.Da=null,a.dc(k),(k.Da&-65536)==(a.ea.wg&-65536)&&(k.Da&=1048575),q.p=k.Da);var A=l,p=[p>>>0,n],v=oa(A,p,a.sb);0>v&&A.splice(-(v+1),0,p)}F&&(q.a=F.replace(/''/g,'"'))}a.B.push({fg:b,lm:c,Z:d,Ra:e,Da:f,dm:g,Qd:h,ri:l})}
function am(a,b,c,d,e,f,g,h){var k={},l=[],n;for(n in h){var q=h[n];"number"==typeof q&&(h[n]=q={o:q});var p=q.o,z=q.s,F=q.a;if(void 0!==p){void 0!==z&&(k.Ra=p,k.Z=z,k.Da=null,a.dc(k),(k.Da&-65536)==(a.ea.wg&-65536)&&(k.Da&=1048575),q.p=k.Da);var z=l,p=[p>>>0,n],v=oa(z,p,a.sb);0>v&&z.splice(-(v+1),0,p)}F&&(q.a=F.replace(/''/g,'"'))}a.B.push({fg:b,lm:c,Z:d,Ra:e,Da:f,dm:g,Rd:h,ri:l})}
function Pq(a,b,c){for(var d=0;d<a.B.length;d++){var e=a.B[d];if(!b||e.fg==b)if(b&&c==e.lm||!b&&c==e.Z){a.B.splice(d,1);break}}}function sr(a,b,c){for(var d=[],e=b.Ra>>>0,f=a.dc(b)>>>0,g=0;g<a.B.length;g++){var h=a.B[g],k=h.Z,l=h.Ra>>>0,n=h.Da;null!=n&&(n>>>=0);var q=h.dm;48==k&&(k=40);if(k==b.Z&&e>=l&&e<l+q||null!=n&&f>=n&&f<n+q){b=oa(h.ri,[e],a.sb);0<=b?Dr(a,g,b,d):c&&(b=~b,Dr(a,g,b-1,d),Dr(a,g,b,d));break}}!d.length&&(a=a.ea.Si(f,!0))&&(d.push(a),d.push(f));return d}
function Dr(a,b,c,d){var e={},f=a.B[b].ri,g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.B[b].Qd[h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}function Er(a){a.Df&&(a.Df.value="")}
function Dr(a,b,c,d){var e={},f=a.B[b].ri,g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.B[b].Rd[h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}function Er(a){a.Df&&(a.Df.value="")}
function Fr(a,b){if("?"==b)a.O("frequency commands:"),a.O("\tclear\tclear all frequency counts");else{var c,d=0;if(a.X)if("clear"==b){for(c=0;c<a.X.length;c++)a.X[c]=[c,0];a.O("frequency data cleared");d++}else if(void 0!==b)a.O("unknown frequency command: "+b),d++;else{var e=a.X.slice();e.sort(function(a,b){return b[1]-a[1]});for(c=0;c<e.length;c++){var f=e[c][0],g=e[c][1];g&&(a.O((pq[a.Ia[f][0]]+" ").substr(0,5)+" ("+t(f)+"): "+g+" times"),d++)}}d||a.O("no frequency data available")}}
function Gr(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return Cr(a)||a.O("no variables"),!0;if(!c[2])return Cr(a,c[1]);if(!c[3])return delete a.wa[c[1]],!0;var d=$q(a,c[3]);return void 0!==d?(a.wa[c[1]]=d,!0):!1}a.O("invalid assignment:"+b);return!1}
function Hr(a,b,c){var d=null;if(b=Yq(a,b,!0)){a.dc(b);var e=sr(a,b,!0);if(e.length){var f,g;e[0]&&(g="",(f=b.Ra-e[1])&&(g=" + "+u(f)),f=e[0]+" ("+Hq(e[1],b.Z)+")"+g,c&&a.O(f),d=f);4<e.length&&e[4]&&(g="",(f=e[5]-b.Ra)&&(g=" - "+u(f)),f=e[4]+" ("+Hq(e[5],b.Z)+")"+g,c&&a.O(f),d||(d=f))}else c&&a.O("no symbols")}return d}
@ -750,32 +750,32 @@ h[2]}if(!e)break;a.O("ST"+g+": "+ma(e[2].toFixed(15),24,!0)+" "+r(e[4])+","+r(e
k){case "AL":a.F.G=a.F.G&-256|h&255;break;case "AH":a.F.G=a.F.G&-65281|h<<8&255;break;case "AX":a.F.G=a.F.G&-65536|h&65535;break;case "BL":a.F.H=a.F.H&-256|h&255;break;case "BH":a.F.H=a.F.H&-65281|h<<8&255;break;case "BX":a.F.H=a.F.H&-65536|h&65535;break;case "CL":a.F.I=a.F.I&-256|h&255;break;case "CH":a.F.I=a.F.I&-65281|h<<8&255;break;case "CX":a.F.I=a.F.I&-65536|h&65535;break;case "DL":a.F.M=a.F.M&-256|h&255;break;case "DH":a.F.M=a.F.M&-65281|h<<8&255;break;case "DX":a.F.M=a.F.M&-65536|h&65535;
break;case "SP":G(a.F,I(a.F)&-65536|h&65535);break;case "BP":a.F.P=a.F.P&-65536|h&65535;break;case "SI":a.F.K=a.F.K&-65536|h&65535;break;case "DI":a.F.J=a.F.J&-65536|h&65535;break;case "DS":vd(a.F,h);break;case "ES":wd(a.F,h);break;case "SS":kd(a.F,h);break;case "CS":kf(a.F,h);a.aa=hq(a,K(a.F),a.F.va.Z);break;case "IP":case "EIP":O(a.F,h);a.aa=hq(a,K(a.F),a.F.va.Z);break;case "PC":case "PS":yd(a.F,h);break;case "C":h?wf(a.F):xf(a.F);break;case "P":h?(e=a.F,e.resultType&=-3,e.ca|=4):(e=a.F,e.resultType&=
-3,e.ca&=-5);break;case "A":h?Ef(a.F):Cf(a.F);break;case "Z":h?Ff(a.F):Df(a.F);break;case "S":h?(e=a.F,e.resultType&=-17,e.ca|=128):(e=a.F,e.resultType&=-17,e.ca&=-129);break;case "I":h?(e=a.F,e.ca|=512):(e=a.F,e.ca&=-513);break;case "D":h?(e=a.F,e.ca|=1024):(e=a.F,e.ca&=-1025);break;case "V":h?yf(a.F):zf(a.F);break;default:var l=!0;if(80286<=a.F.ia)switch(l=!1,k){case "MS":Gf(a.F,h);break;case "TR":-1===a.F.Sa.load(h)&&(g=!1);break;default:if(l=!0,80386<=a.F.ia)switch(l=!1,k){case "EAX":a.F.G=h;
break;case "EBX":a.F.H=h;break;case "ECX":a.F.I=h;break;case "EDX":a.F.M=h;break;case "ESP":G(a.F,h);break;case "EBP":a.F.P=h;break;case "ESI":a.F.K=h;break;case "EDI":a.F.J=h;break;case "FS":a.F.Ob.load(h);break;case "GS":a.F.Pb.load(h);break;case "CR0":a.F.Za=h;pj.call(a.F,h);break;case "CR2":a.F.te=h;break;case "CR3":a.F.Od=h;Ad.call(a.F,h);break;default:l=!0}}if(l){a.O("unknown register: "+e);return}}if(!g){a.O("invalid value: "+f);return}Qc(a.F);a.O("updated registers:")}}a.O(yr(a,d));c&&(a.aa=
break;case "EBX":a.F.H=h;break;case "ECX":a.F.I=h;break;case "EDX":a.F.M=h;break;case "ESP":G(a.F,h);break;case "EBP":a.F.P=h;break;case "ESI":a.F.K=h;break;case "EDI":a.F.J=h;break;case "FS":a.F.Ob.load(h);break;case "GS":a.F.Pb.load(h);break;case "CR0":a.F.Za=h;pj.call(a.F,h);break;case "CR2":a.F.te=h;break;case "CR3":a.F.Pd=h;Ad.call(a.F,h);break;default:l=!0}}if(l){a.O("unknown register: "+e);return}}if(!g){a.O("invalid value: "+f);return}Qc(a.F);a.O("updated registers:")}}a.O(yr(a,d));c&&(a.aa=
hq(a,K(a.F),a.F.va.Z),jr(a,Rq(a.aa)))}}function Jr(a,b){b=na(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.O(gr(a,c[2])):$q(a,b,!0)}function Kr(a,b,c){for(var d=null,e=b.Ra,f=e,g=1;6>=g&&e;g++){if(2<g){b.Ra=e;b.Da=null;var h=qr(a,b);if(0<h.indexOf("CALL")||c&&0<h.indexOf("INT")){var k=h.indexOf(" ");if(e+(h.indexOf(" ",k+1)-k-1)/2==f){d=h;break}}}e--}b.Ra=f;return d}
function Lr(a,b,c){var d="t"!=b;c=Dq(a,c,null,!0)||1;var e=1==c?0:1;"tc"==b&&(e=c,c=1);Ja(c,function(){return pb(a,!0)&&a.vf(e,d,!1)},function(){Qc(a.F);pb(a,!1)})}function tr(a,b,c){if(a.Vd=b)null!=a.Li&&(a.Sb=a.Li),null!=a.Ji&&(a.pc=a.Ji),a.Li=a.Sb,a.Ji=a.pc;a.Se=c||0}
function jr(a,b,c,d){if(b=Yq(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c){d=Yq(a,c,!0);if(!d||d.Ra<b.Ra)return;e=d.Ra-b.Ra;if(256<e){a.O("range too large");return}d=-1}c=0;var f;for(tr(b,!0);0<e&&d--;){f=qb(a,!1)||a.N?a.fa:null;var g=null!=f?"cycles":null,h=sr(a,b),k=b.Da;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var l=h[0]+":";h[2]&&(l+=" "+h[2]);a.O(l)}h[3]&&(g=h[3],f=null);f=qr(a,b,g,f);b.Vd||d||d++;a.O(f);a.aa=b;e-=b.Da-k;c++}}}
function Lr(a,b,c){var d="t"!=b;c=Dq(a,c,null,!0)||1;var e=1==c?0:1;"tc"==b&&(e=c,c=1);Ja(c,function(){return pb(a,!0)&&a.vf(e,d,!1)},function(){Qc(a.F);pb(a,!1)})}function tr(a,b,c){if(a.Wd=b)null!=a.Li&&(a.Sb=a.Li),null!=a.Ji&&(a.pc=a.Ji),a.Li=a.Sb,a.Ji=a.pc;a.Se=c||0}
function jr(a,b,c,d){if(b=Yq(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c){d=Yq(a,c,!0);if(!d||d.Ra<b.Ra)return;e=d.Ra-b.Ra;if(256<e){a.O("range too large");return}d=-1}c=0;var f;for(tr(b,!0);0<e&&d--;){f=qb(a,!1)||a.N?a.fa:null;var g=null!=f?"cycles":null,h=sr(a,b),k=b.Da;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var l=h[0]+":";h[2]&&(l+=" "+h[2]);a.O(l)}h[3]&&(g=h[3],f=null);f=qr(a,b,g,f);b.Wd||d||d++;a.O(f);a.aa=b;e-=b.Da-k;c++}}}
function br(a,b,c,d){if(c)if(b){0>a.U&&a.L.length&&(a.U=0);if(0>a.U||b!=a.L[a.U])a.L.splice(0,0,b),a.U=0;a.U--}else b=a.L[a.U+1];a=[];if(b){b=b.toLowerCase().replace(/""/g,"'");c=0;var e=null;d=d||";";for(var f=0;f<=b.length;f++){var g=b.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==d&&!e||!g)a.push(na(b.substring(c,f))),c=f+1}}return a}
function pr(a,b,c){var d=!0;try{if(!b.length||"end"==b)a.Ea&&(a.O("ended assemble at "+Rq(a.ua)),a.aa=a.ua,a.Ea=!1),b="";else if(!c){var e=">> ";a.F.Za&1&&(e=a.F.ca&131072?"-- ":"## ");a.O(e+b)}var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.Pa=null;if(sb(a)&&0<b.length){a.Ea&&(b="a "+Rq(a.ua)+" "+b);var g=b.replace(/ +/g," ").split(" ");if(g&&g.length)for(var h=g[0],k=h.charAt(0),l=1;l<h.length;l++){var n=h.charAt(l);if("?"==k||"r"==k||"a">n||"z"<n){g[0]=h.substr(l);g.unshift(h.substr(0,l));break}}switch(g[0].charAt(0)){case "a":var q=
Yq(a,g[1],!0);if(q)if(a.ua=q,void 0===g[2])a.O("begin assemble at "+Rq(q)),a.Ea=!0,Qc(a.F);else{var p;a.O("not supported yet");p=[];if(p.length){for(var A=0;A<p.length;A++)a.qc(q,p[A],1);a.O(qr(a,a.ua))}}break;case "b":a:{var F=g[0],v=g[1],E=b;if("?"==v)a.O("breakpoint commands:"),a.O("\tbi [p]\ttoggle break on input port [p]"),a.O("\tbo [p]\ttoggle break on output port [p]"),a.O("\tbp [a]\tset exec breakpoint at addr [a]"),a.O("\tbr [a]\tset read breakpoint at addr [a]"),a.O("\tbw [a]\tset write breakpoint at addr [a]"),
Yq(a,g[1],!0);if(q)if(a.ua=q,void 0===g[2])a.O("begin assemble at "+Rq(q)),a.Ea=!0,Qc(a.F);else{var p;a.O("not supported yet");p=[];if(p.length){for(var z=0;z<p.length;z++)a.qc(q,p[z],1);a.O(qr(a,a.ua))}}break;case "b":a:{var F=g[0],v=g[1],E=b;if("?"==v)a.O("breakpoint commands:"),a.O("\tbi [p]\ttoggle break on input port [p]"),a.O("\tbo [p]\ttoggle break on output port [p]"),a.O("\tbp [a]\tset exec breakpoint at addr [a]"),a.O("\tbr [a]\tset read breakpoint at addr [a]"),a.O("\tbw [a]\tset write breakpoint at addr [a]"),
a.O("\tbc [a]\tclear breakpoint at addr [a]"),a.O("\tbl\tlist all breakpoints"),a.O("\tbn [n]\tbreak after [n] instruction(s)");else{var H=F.charAt(1);if("l"==H){var L=0,L=L+or(a,a.A),L=L+or(a,a.ra);(L+=or(a,a.ga))||a.O("no breakpoints")}else if("n"==H)a.Na=Dq(a,v),a.O("break after "+a.Na+" instruction(s)");else if(void 0===v)a.O("missing breakpoint address");else{var V={};if("*"!=v&&(V=Yq(a,v,!0,!0),!V))break a;v=null==V.Ra?v:u(V.Ra);"c"==H?null==V.Ra?(iq(a),a.O("all breakpoints cleared")):Qq(a,
a.A,V)||Qq(a,a.ra,V)||Qq(a,a.ga,V)||a.O("breakpoint missing: "+Rq(V)):"i"==H?a.O("breakpoint "+(gc(a.ea,V.Ra)?"enabled":"cleared")+": port "+v+" (input)"):"o"==H?a.O("breakpoint "+(kc(a.ea,V.Ra)?"enabled":"cleared")+": port "+v+" (output)"):null!=V.Ra&&(ar(a,V,E),"p"==H?a.Rd(a.A,V):"r"==H?a.Rd(a.ra,V):"w"==H?a.Rd(a.ga,V):a.O("unknown breakpoint command: "+H))}}}break;case "c":Er(a);break;case "d":a:{var P=g,bb,ia=P[0],ja=P[1],Ha=P[2],Xa=P[3];if("?"==ja){var Ba="";for(bb in vq)a.$a[bb]&&(Ba&&(Ba+=
a.A,V)||Qq(a,a.ra,V)||Qq(a,a.ga,V)||a.O("breakpoint missing: "+Rq(V)):"i"==H?a.O("breakpoint "+(gc(a.ea,V.Ra)?"enabled":"cleared")+": port "+v+" (input)"):"o"==H?a.O("breakpoint "+(kc(a.ea,V.Ra)?"enabled":"cleared")+": port "+v+" (output)"):null!=V.Ra&&(ar(a,V,E),"p"==H?a.Sd(a.A,V):"r"==H?a.Sd(a.ra,V):"w"==H?a.Sd(a.ga,V):a.O("unknown breakpoint command: "+H))}}}break;case "c":Er(a);break;case "d":a:{var P=g,bb,ia=P[0],ja=P[1],Ha=P[2],Xa=P[3];if("?"==ja){var Ba="";for(bb in vq)a.$a[bb]&&(Ba&&(Ba+=
","),Ba+=bb);Ba+=",state,symbols";a.O("dump memory commands:");a.O("\tdb [a] [#] dump # bytes at address a");a.O("\tdw [a] [#] dump # words at address a");a.O("\tdd [a] [#] dump # dwords at address a");a.O("\tdh [#] [#] dump # instructions from history");a.O("\tdi [#] dump descriptor info for IDT #");a.O("\tds [#] dump descriptor info for selector #");Ba.length&&a.O("dump extension commands:\n\t"+Ba)}else if("state"==ja){var Ub=Mr(a.V,!0);"console"==Ha?console.log(Ub):(Er(a),
a.O(Ub))}else if("symbols"==ja)for(var wa=0;wa<a.B.length;wa++){var Vd=a.B[wa],Rc;for(Rc in Vd.Qd)if("."!=Rc.charAt(0)){var Wd=Vd.Qd[Rc],Ie=Wd.o;if(void 0!==Ie){var Xd=Wd.s;void 0===Xd&&(Xd=Vd.Z);var Je=Vd.Qd[Rc].l;Je&&(Rc=Je);a.O(Hq(Ie,Xd)+" "+Rc)}}}else{if("ds"==ia||"dg"==ia||"dl"==ia)ia="d",P=[ia,"desc",ja];"d"==ia&&"page"==ja&&(ia="dp",P.shift());if("dp"==ia){P.shift();var hi=P[0];if(hi){var Te=a.dc(Yq(a,hi));if(-1===Te)a.O("invalid address: "+hi);else{var be,Da=null;if(80386<=a.F.ia){var ce=
a.ea,Da={};Da.bk=(Te&-4194304)>>>20;Da.ui=a.F.Od+Da.bk;Da.yb=ce.sa[(Da.ui&ce.Gb)>>>ce.La];Da.Ui=Da.yb.Md(Da.bk);Da.ck=(Te&4190208)>>>10;Da.vi=(Da.Ui&-4096)+Da.ck;Da.zb=ce.sa[(Da.vi&ce.Gb)>>>ce.La];Da.Vi=Da.zb.Md(Da.ck);Da.Fk=(Da.Vi&-4096)+(Te&4095)}if(be=Da){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var qd="%"+r(Te),qd=qd+(" %%"+cr(be.ui,be.Ui)),qd=qd+(" %%"+cr(be.vi,be.Vi,!0)),
a.O(Ub))}else if("symbols"==ja)for(var wa=0;wa<a.B.length;wa++){var Vd=a.B[wa],Rc;for(Rc in Vd.Rd)if("."!=Rc.charAt(0)){var Wd=Vd.Rd[Rc],Ie=Wd.o;if(void 0!==Ie){var Xd=Wd.s;void 0===Xd&&(Xd=Vd.Z);var Je=Vd.Rd[Rc].l;Je&&(Rc=Je);a.O(Hq(Ie,Xd)+" "+Rc)}}}else{if("ds"==ia||"dg"==ia||"dl"==ia)ia="d",P=[ia,"desc",ja];"d"==ia&&"page"==ja&&(ia="dp",P.shift());if("dp"==ia){P.shift();var hi=P[0];if(hi){var Te=a.dc(Yq(a,hi));if(-1===Te)a.O("invalid address: "+hi);else{var be,Da=null;if(80386<=a.F.ia){var ce=
a.ea,Da={};Da.bk=(Te&-4194304)>>>20;Da.ui=a.F.Pd+Da.bk;Da.yb=ce.sa[(Da.ui&ce.Gb)>>>ce.La];Da.Ui=Da.yb.Nd(Da.bk);Da.ck=(Te&4190208)>>>10;Da.vi=(Da.Ui&-4096)+Da.ck;Da.zb=ce.sa[(Da.vi&ce.Gb)>>>ce.La];Da.Vi=Da.zb.Nd(Da.ck);Da.Fk=(Da.Vi&-4096)+(Te&4095)}if(be=Da){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var qd="%"+r(Te),qd=qd+(" %%"+cr(be.ui,be.Ui)),qd=qd+(" %%"+cr(be.vi,be.Vi,!0)),
qd=qd+(" %%"+r(be.Fk));a.O(qd)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==ia){if("disk"==ja){P[0]="l";P[1]="json";Ir(a,P);break a}for(bb in vq)if(P[1]==bb){var Dn=a.$a[bb];Dn?(P.shift(),P.shift(),Dn(P)):a.O("no dump registered for "+ja);break a}ja||(ia=a.Cc||"db")}else a.Cc=ia;if("dh"==ia){var En=ja,Fn=Ha,Gn="",Hn=0,tb=a.Fa,tc=a.ja;if(tc.length){var Db=+En||a.Ub,de=+Fn||10;isNaN(Db)?Db=de:Gn="more ";Db>tc.length&&(a.O("note: only "+tc.length+" available"),Db=tc.length);
tb-=Db;0>tb&&(null==tc[tc.length-1].Z?(Db=tb+Db,tb=0):tb+=tc.length);var ii=[];"call"==Fn&&(de=1E5,ii=["CALL"]);for(void 0!==En&&a.O(Db+" instructions earlier:");0<de&&tb!=a.Fa;){var rd=tc[tb++];if(null==rd.Z)break;var Ue=hq(a,rd.Ra,rd.Z,rd.Da,rd.type,rd.Sb,rd.pc),fs=Db--,In=qr(a,Ue,"history",fs);(!ii.length||0<=In.indexOf(ii[0]))&&a.O(In);Ue.Se&&(tb+=Ue.Se,de-=Ue.Se,Db-=Ue.Se);tb>=tc.length&&(tb=0);a.Ub=Db;Hn++;de--}}Hn||(a.O("no "+Gn+"history available"),a.Ub=void 0)}else if("di"==ia){P.shift();
var ji=P[0];if(ji){var Ve=Dq(a,ji);if(void 0===Ve||0>Ve||255<Ve)a.O("invalid vector: "+ji);else{var Jn="&",Kn=!!(a.F.Za&1),Ln=!1,og=a.F.Mc+(Ve<<(Kn?3:2)),ki=a.F.na(og+0),gs=a.F.na(og+2);Kn&&(Jn="#",a.F.na(og+4)&2048&&(Ln=!0,ki|=a.F.na(og+6)<<16));a.O("dumpIDT("+u(Ve)+"): "+Jn+r(gs,4)+":"+r(ki,Ln?8:4))}}else a.O("no IDT vector")}else if("dt"==ia)P.shift(),a.O("no information");else{var ee=Yq(a,ja);if(ee&&(null!=ee.Z||null!=ee.Da)){var pg=0;Ha&&("l"==Ha.charAt(0)&&(Ha=Ha.substr(1)||Xa),pg=Dq(a,Ha)>>>
0,65536<pg&&(pg=65536));for(var sd="",hs=(pg||128)+15>>4||1,li="dd"==ia?4:"dw"==ia?2:1,Mn=0;Mn<hs;Mn++){for(var qg=0,mi=0,We="",ni="",ja=Rq(ee),oi=0;16>oi;oi++){var rg=a.Qa(ee,1),qg=qg|rg<<(mi++<<3);mi==li&&(We+=r(qg,2*li),We+=1==li?7==oi?"-":" ":" ",qg=mi=0);ni+=32<=rg&&128>rg?String.fromCharCode(rg):"."}sd&&(sd+="\n");sd+=ja+" "+We+" "+ni}sd&&a.O(sd);a.Db=ee}}}}}break;case "e":if("else"==g[0])break;var sg=1,Nn=255,On=a.Qa,Pn=a.qc;"ew"==g[0]&&(sg=2,Nn=65535,On=a.na,Pn=a.jb);var Qn=sg<<1,Rn=g[1];
if(null==Rn)a.O("edit memory commands:"),a.O("\teb [a] [...] edit bytes at address a"),a.O("\tew [a] [...] edit words at address a");else{var tg=Yq(a,Rn);if(tg)for(var ug=2;ug<g.length;ug++){var Xe=$q(a,g[ug]);if(void 0===Xe){a.O("unrecognized value: "+g[ug]);break}Xe&~Nn&&a.O("warning: "+r(Xe)+" exceeds "+sg+"-byte value");var is=On.call(a,tg);a.O("changing "+Rq(tg)+" from 0x"+r(is,Qn)+" to 0x"+r(Xe,Qn));Pn.call(a,tg,Xe,sg)}}break;case "f":Fr(a,g[1]);break;case "g":a:{var Sn=g[1],js=b;"gt"==g[0]&&
(a.cb=!0);if(void 0!==Sn){var pi=Yq(a,Sn,!0);if(!pi)break a;ar(a,pi,js);a.Rd(a.A,pi,!0)}a.Ke(!0)||c||a.O("cpu busy or unavailable, run command ignored")}break;case "h":var qi;a.la.Ib?(qi="halting",a.Wb()):qi="already halted";c||a.O(qi);break;case "i":if("if"==g[0]){var ri;var Ye=b.substr(2),Ye=na(Ye);$q(a,Ye)?(c||a.O("true: "+Ye),ri=!0):(c||a.O("false: "+Ye),ri=!1);ri||(d=!1);break}if("int"==g[0]){var vg;a:switch(Dq(a,g[1])){case 19:kk(a,19,a.F.Ga,!0);a.ya=a.pa;vg=!0;break a;case 33:kk(a,33,a.F.Ga,
(a.cb=!0);if(void 0!==Sn){var pi=Yq(a,Sn,!0);if(!pi)break a;ar(a,pi,js);a.Sd(a.A,pi,!0)}a.Ke(!0)||c||a.O("cpu busy or unavailable, run command ignored")}break;case "h":var qi;a.la.Ib?(qi="halting",a.Wb()):qi="already halted";c||a.O(qi);break;case "i":if("if"==g[0]){var ri;var Ye=b.substr(2),Ye=na(Ye);$q(a,Ye)?(c||a.O("true: "+Ye),ri=!0):(c||a.O("false: "+Ye),ri=!1);ri||(d=!1);break}if("int"==g[0]){var vg;a:switch(Dq(a,g[1])){case 19:kk(a,19,a.F.Ga,!0);a.ya=a.pa;vg=!0;break a;case 33:kk(a,33,a.F.Ga,
!0);a.ya=a.pa;vg=!0;break a;default:vg=!1}vg||(d=!1);break}var si=g[1];if(si&&"?"!=si){var ti=Dq(a,si);if(void 0!==ti){var ks=ic(a.ea,ti,1);a.O(u(ti)+": "+t(ks))}}else a.O("input commands:"),a.O("\ti [p]\tread port [p]"),a.O("warning: port accesses can affect hardware state");break;case "k":var ls=g[0];if("?"==g[1])a.O("stack trace commands:"),a.O("\tk\tshow frame addresses"),a.O("\tks\tshow symbol information");else{var ui=0,Tn=a.F.va.Z,Ze=hq(a),Tc=hq(a,I(a.F),a.F.ta.Z);for(a.O("stack trace for "+
Rq(Tc));10>ui;){for(var uc=null,ms=256;Tc.Ra>>>0<a.F.Kg>>>0;){Ze.Ra=a.tb(Tc,!0);if(null==Tc.Da||!ms--)break;Ze.Z=Tn;if(uc=Kr(a,Ze))break;Ze.Z=a.tb(Tc);if(uc=Kr(a,Ze,!0)){Tn=a.tb(Tc,!0);0<uc.indexOf("INT")&&a.tb(Tc,!0);break}}if(!uc||null==uc)break;var Un=null;if("ks"==ls){var Vn=uc.match(/[0-9A-F]+$/);Vn&&(Un=Hr(a,Vn[0]))}uc=ma(uc,50)+" ;"+(Un||"stack="+Rq(Tc));a.O(uc);ui++}ui||a.O("no return addresses found")}break;case "l":if("ln"==g[0]){Hr(a,g[1],!0);break}Ir(a,g);break;case "m":if("mouse"==g[0]){var vi=
g[1],wg=g[2];if(a.W){var Wn=1;"-"==wg.charAt(0)&&(Wn=-1,wg=wg.substr(1));var td=Dq(a,wg,vi);if(void 0!==td)switch(td=td*Wn|0,vi){case "x":a.W.Hf(td,0);break;case "y":a.W.Hf(0,td);break;case "click":a.W.ie(td,!0);a.W.ie(td,!1);break;default:a.O("unknown action: "+vi)}}else a.O("no mouse");break}a:{var vc,wc=null,Oa=g[1];"?"==Oa&&(Oa=void 0);if(void 0!==Oa){var ud=0;if("all"==Oa)ud=1610481663,Oa=null;else if("on"==Oa)wc=!0,Oa=null;else if("off"==Oa)wc=!1,Oa=null;else{"keys"==Oa&&(Oa="key");"kbd"==Oa&&
g[1],wg=g[2];if(a.W){var Wn=1;"-"==wg.charAt(0)&&(Wn=-1,wg=wg.substr(1));var td=Dq(a,wg,vi);if(void 0!==td)switch(td=td*Wn|0,vi){case "x":a.W.Hf(td,0);break;case "y":a.W.Hf(0,td);break;case "click":a.W.je(td,!0);a.W.je(td,!1);break;default:a.O("unknown action: "+vi)}}else a.O("no mouse");break}a:{var vc,wc=null,Oa=g[1];"?"==Oa&&(Oa=void 0);if(void 0!==Oa){var ud=0;if("all"==Oa)ud=1610481663,Oa=null;else if("on"==Oa)wc=!0,Oa=null;else if("off"==Oa)wc=!1,Oa=null;else{"keys"==Oa&&(Oa="key");"kbd"==Oa&&
(Oa="keyboard");for(vc in vq)if(Oa==vc){ud=vq[vc];wc=!!(a.wc&ud);break}if(!ud){a.O("unknown message category: "+Oa);break a}}ud&&("on"==g[2]?(a.wc|=ud,wc=!0):"off"==g[2]&&(a.wc&=~ud,wc=!1))}var ns=0,Uc="";for(vc in vq)if(!Oa||Oa==vc){var os=!!(a.wc&vq[vc]);if(null===wc||wc==os)Uc&&(Uc+=","),++ns%10||(Uc+="\n\t"),"key"==vc&&(vc="keys"),Uc+=vc}void 0===Oa&&a.O("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.O((null!==wc?wc?"messages on: ":"messages off: ":"message categories:\n\t")+
(Uc||"none"));jq(a)}break;case "o":var wi=g[1],ps=g[2];if(wi&&"?"!=wi){var xi=Dq(a,wi,"port #"),yi=Dq(a,ps);void 0!==xi&&void 0!==yi&&(mc(a.ea,xi,1,yi),a.O(u(xi)+": "+t(yi)))}else a.O("output commands:"),a.O("\to [p] [b]\twrite byte [b] to port [p]"),a.O("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){Jr(a,b.substr(5));break}var Xn="pr"==g[0]?1:0,fe=1+Xn;if(a.N)a.O("step in progress");else{var xg,Yn=!1,lb=hq(a,K(a.F),a.F.va.Z);do switch(xg=!1,a.Qa(lb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:Tq(a,
lb,1);xg=!0;break;case 204:case 206:a.N=fe;Tq(a,lb,1);break;case 205:case 224:case 225:case 226:a.N=fe;Tq(a,lb,lb.Sb?4:2);break;case 232:a.N=fe;Tq(a,lb,lb.Sb?5:3);break;case 154:a.N=fe;Tq(a,lb,lb.Sb?7:5);break;case 255:var Zn=a.tb(lb)&14591;if(4351==Zn||6399==Zn)a.N=fe,qr(a,lb);break;case 243:case 242:Tq(a,lb,1);Yn=xg=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:Yn&&(a.N=fe,Tq(a,lb,1))}while(xg);a.N?(a.Rd(a.A,
lb,1);xg=!0;break;case 204:case 206:a.N=fe;Tq(a,lb,1);break;case 205:case 224:case 225:case 226:a.N=fe;Tq(a,lb,lb.Sb?4:2);break;case 232:a.N=fe;Tq(a,lb,lb.Sb?5:3);break;case 154:a.N=fe;Tq(a,lb,lb.Sb?7:5);break;case 255:var Zn=a.tb(lb)&14591;if(4351==Zn||6399==Zn)a.N=fe,qr(a,lb);break;case 243:case 242:Tq(a,lb,1);Yn=xg=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:Yn&&(a.N=fe,Tq(a,lb,1))}while(xg);a.N?(a.Sd(a.A,
lb,!0),a.Ke()||(a.V&&a.V.yd(),a.N=0)):Lr(a,Xn?"tr":"t")}break;case "r":if("reset"==b){a.V&&a.V.reset();break}ir(a,g);break;case "t":Lr(a,g[0],g[1]);break;case "u":jr(a,g[1],g[2],8);break;case "v":if("var"==g[0]){Gr(a,b.substr(3))||(d=!1);break}a.O("PCjs version 1.21.4 ("+a.F.ia+",RELEASE,NOPREFETCH"+(vb?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)");a.O(ya());break;case "x":a:if(g[1]&&"?"!=g[1])switch(g[1]){case "cs":var $e;void 0!==g[3]&&($e=+g[3]);switch(g[2]){case "int":a.F.Y.jf=$e;break;case "start":a.F.Y.Jf=
$e;break;case "stop":a.F.Y.lf=$e;break;default:a.O("unknown cs option");break a}void 0!==$e&&Pc(a.F);a.O("checksums "+(a.F.la.Ye?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(Xc(a.F,+g[2])||a.O("warning: using 1x multiplier, previous target not reached"));a.O("target speed: "+(a.F.Y.Fe.toFixed(2)+"Mhz")+" ("+a.F.Y.Xd+"x)");break;default:a.O("unknown option: "+g[1])}else a.O("execution options:"),a.O("\tcs int #\tset checksum cycle interval to #"),a.O("\tcs start #\tset checksum cycle start count to #"),
$e;break;case "stop":a.F.Y.lf=$e;break;default:a.O("unknown cs option");break a}void 0!==$e&&Pc(a.F);a.O("checksums "+(a.F.la.Ye?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(Xc(a.F,+g[2])||a.O("warning: using 1x multiplier, previous target not reached"));a.O("target speed: "+(a.F.Y.Fe.toFixed(2)+"Mhz")+" ("+a.F.Y.Yd+"x)");break;default:a.O("unknown option: "+g[1])}else a.O("execution options:"),a.O("\tcs int #\tset checksum cycle interval to #"),a.O("\tcs start #\tset checksum cycle start count to #"),
a.O("\tcs stop #\tset checksum cycle stop count to #"),a.O("\tsp #\t\tset speed multiplier to #");break;case "?":if(g[1]){Jr(a,b.substr(1));break}var af="commands:",zi;for(zi in oq)af+="\n"+ma(zi,7)+oq[zi];Tf(a)||(af+="\nnote: frequency/history disabled if no exec breakpoints");a.O(af);break;default:a.O("unknown command: "+b),d=!1}}}catch($n){a.O("debugger error: "+($n.stack||$n.message)),d=!1}return d}function lq(a,b,c){b=br(a,b,c);for(var d in b)if(!pr(a,b[d]))return!1;return!0}
Qa(function(){for(var a=nb(document,"pcjs","debugger"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new gq(d);mb(d,c)}});function hf(a,b,c){this.id=a.id;this.key=Nr(a,b,c);this.ha=a.ha;Or(this,a.tk)}function Nr(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}
hf.prototype={constructor:hf,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:Ca()&&(a=Ea(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){Or(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)==
@ -783,13 +783,13 @@ this.key)){try{window.localStorage.removeItem(d)}catch(e){}b.splice(c,1);c=0}}};
function Sr(a,b,c){Ua.call(this,"Computer",a,Sr,67108864);this.la.cc=!1;Tr(this,b);this.ga=Nc(this,"autoPower",a);this.N=0;this.ua=a.busWidth||a.buswidth;this.A=Ur;this.aa=null;this.W=this.ra=!1;this.wa=Nc(this,"url")||"";this.ya=(Math.random()+.1).toString(36).substr(2,12);this.B=Vr(this);if(this.F=ib("CPU",this.id)){this.ha=ib("Debugger",this.id);this.L=[];for(b=null;b=Eb(this,"Video",b);)this.L.push(b);this.ea=new Lb({id:this.ve+".bus",buswidth:this.ua},this.F,this.ha);var d,e=gb(this.id);if((this.C=
ib("Panel",this.id))&&this.C.Df)for(b=0;b<e.length;b++)d=e[b],d.Oa=this.C.Oa,d.O=this.C.O,d.Df=this.C.Df;for(b=0;b<e.length;b++)d=e[b],d.Ic&&d.Ic(this,this.ea,this.F,this.ha);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.X=d:this.A=parseInt(d,10));var f;if(a=Nc(this,"state")||(f=!0,a.state))b=this.ja=a,f||(this.W=!0,this.A=Ur),this.A&&(this.fa=new hf(this,Wr),this.fa.load()?b=null:delete this.fa);!b&&this.A&&(b=Xr(this))&&(this.W=!0);if(b){var g=this;va(b,null,!0,function(a,b,c){c?(g.X=null,g.W=
!1,g.Oa("Unable to load machine state from server (error "+c+(b?": "+na(b):"")+")")):(g.aa=b,g.ra=!0);rb(g)})}else rb(this);this.qa.power||(this.ga=!0);!c&&this.ga&&Yr(this,this.$f)}else w("Unable to find CPU component")}db(Sr);var Wr="1.21.4",Ur=0;m=Sr.prototype;m.ff=function(){return this.ya};function Tr(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){w(d.message+" ("+c+")")}}a.U=b}
function Nc(a,b,c){var d=b.toLowerCase(),d=Ya&&(Ya[b]||Ya[d]);void 0===d&&a.U&&(d=a.U[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}m.je=function(){return this.B||""};function Yr(a,b,c){for(var d=gb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!sb(f)){sb(f,function(){Yr(a,b,c)});return}}b.call(a,c)}
function Nc(a,b,c){var d=b.toLowerCase(),d=Ya&&(Ya[b]||Ya[d]);void 0===d&&a.U&&(d=a.U[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}m.ke=function(){return this.B||""};function Yr(a,b,c){for(var d=gb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!sb(f)){sb(f,function(){Yr(a,b,c)});return}}b.call(a,c)}
function Zr(a,b){var c=new hf(a,Wr,"validate");if(c.load()&&Qr(c)){var d=Rr(c,"timestamp"),e=b?Rr(b,"timestamp"):"unknown";d!=e&&(a.Oa("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
m.$f=function(a){void 0===a&&(a=this.A||(this.aa?1:Ur));if(!this.N){this.N++;var b=!1,c=!1;this.pa=!1;var d=this.fa||new hf(this,Wr);if(-1==a)b=!0;else if(a>Ur){if(d.load(this.aa)){this.V=new hf(this,Wr,"failsafe");this.V.load()&&($r(this,d),a=2,Or(this.V));N(this.V,"timestamp",qa());Pr(this.V);var e=this.A&&!this.W;if(1==a||za("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=Qr(d)){var f=Rr(d,"code"),g=Rr(d,"data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=
g?(this.Oa("Error: "+g),"unable to verify user"==g&&(Fa("user",""),this.B=null)):this.O(f+": "+g),Or(d),d.load()?(c=Qr(d),e=!0):c=!1))}e&&Zr(this,c?d:null)}else 2==a&&d.clear()}else Zr(this);delete this.aa;delete this.fa}e=gb(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.F&&(c=as(this,g,d,b,c));b=[d,a,c];-1!=a?Yr(this,this.Ii,b):this.Ii(b)}};
function as(a,b,c,d,e){if(!b.la.cc){b.la.cc=!0;if(b.ic){var f=null;e&&((f=Rr(c,b.id))||(f=Rr(c,b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.ic(f,d)&&f&&(w("Unable to restore state for "+b.type),a.ja&&!a.ra?(c.clear(),a.A=Ur,window&&window.location.reload()):a.pa=!0,b.ic(null),e=!1)}if(!d&&b.sk)for(a=b.sk.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
m.Ii=function(a){var b=a[0],c=0>a[1];a=a[2];this.la.cc=!0;var d=this.qa.power;d&&(d.textContent="Shutdown");this.ka||(this.O("PCjs v"+Wr+"\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.ka=!0);this.F&&(as(this,this.F,b,c,a),Sc(this.F));this.pa&&($r(this,b),b.clear());!c&&this.V&&(this.V.clear(),delete this.V);this.N=0};
function $r(a,b){if(za("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.wa,d=a.je(),e=b.toString(),f={app:"PCjs"};f.ver=Wr;f.url=c;f.user=d;f.type="bug";f.data=e;va("http://www.pcjs.org/api/v1/report",f,!0)}}
function $r(a,b){if(za("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.wa,d=a.ke(),e=b.toString(),f={app:"PCjs"};f.ver=Wr;f.url=c;f.user=d;f.type="bug";f.data=e;va("http://www.pcjs.org/api/v1/report",f,!0)}}
function Mr(a,b,c){var d,e="none";if(a.N)return null;a.N--;var f=new hf(a,Wr),g=new hf(a,Wr,"validate"),h=qa();N(g,"timestamp",h);N(f,"timestamp",h);N(f,"version","1.21.4");N(f,"url",window?window.location.href:null);N(f,"browser",ya());a.F&&a.F.hc&&(c&&a.F.Wb(),d=a.F.hc(b,c),"object"===typeof d&&N(f,a.F.id,d),c&&(a.F.la.cc=!1,!1===d&&(e=null)));for(var h=gb(a.id),k=0;k<h.length;k++){var l=h[k];l.la.cc&&(l.hc&&(d=l.hc(b,c),"object"===typeof d&&N(f,l.id,d)),c&&(l.la.cc=!1,!1===d&&(e=null)))}e&&(c?
(h=d=!1,b?(a.B&&bs(a,a.B,f.toString()),Pr(g)&&Pr(f)||(e=null,d=h=!0)):a.A&&(d=!0,h=3==a.A),d&&f.clear(h)):e=f.toString());c&&(a.la.cc=!1,b=a.qa.power)&&(b.textContent="Power");a.N=0;return e}m.reset=function(){this.ea&&this.ea.reset&&(y(this,"Resetting "+this.ea.type),this.ea.reset());for(var a=gb(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ea&&c.reset&&(y(this,"Resetting "+c.type),c.reset())}};
m.start=function(a,b){for(var c=gb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};m.stop=function(a,b){for(var c=gb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
@ -799,9 +799,9 @@ function Vr(a,b){var c=a.B;c||(c=Ea("user"),void 0!==c?!c&&b&&(c=null,window&&(c
function cs(a,b){a.B=null;var c=va(xa()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(Fa("user",c.data),a.B=c.data)}catch(e){w(e.message+" ("+d+")")}return a.B}function Xr(a){var b=null;a.B&&(b=xa()+"/api/v1/user?req=load&user="+a.B+"&state="+Nr(a,Wr));return b}
function bs(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Nr(a,Wr);d.data=c;b=va(xa()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.Oa("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.Oa(c),Fa("user",""),a.B=null)}}
function Eb(a,b,c){a=gb(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}m.yd=function(a){if(this.L.length){var b=0,c=0;a&&window&&(b=window.scrollX,c=window.scrollY);var d=this.L[0];d.V&&d.V.focus();a&&window&&window.scrollTo(b,c)}};m.qd=function(){this.C&&this.C.qd()};
function dd(a,b){for(var c=0;c<a.L.length;c++)qn(a.L[c],b);if(a.C&&(c=a.C,c.Ja)){Ib(c,18,c.aa,c.Ia);if(c.gb){var d=c.ea,e=c.A,f,g;null==f&&(f=0);null==g&&(g=d.X-f|0);null==e&&(e={Zg:0,Td:0,Qg:[]});var h=f>>>d.La;f=f+g-1>>>d.La;e.Zg=0;for(e.Td=0;h<=f;)g=d.sa[h],e.Zg+=g.size,g.size&&(e.Qg.push(sa(Hb,h,0,0,g.type)),e.Td++),h++;c.A=e;c.ya=c.A.Td*c.ea.Nb/691200;d=0;c.A.Ai=0;c.A.Af||(c.A.Af=[]);var e=-1,h=0,k=-1;for(f=0;f<c.A.Td;f++){var l=c.A.Qg[f];g=ta(Hb.type,l);l=ta(Hb.$j,l);if(g!=e||l!=k+1)(k=f-h)&&
(d+=Kb(c,h,k,e)),e=g,h=f;k=l}d+=Kb(c,h,f-h,e);e=c.A.Kk!=d;c.A.Kk=d;if(e){e=new Bb(0,0,c.aa.width,c.aa.height);c.A.Pe=[];h=c.A.Td;for(d=0;d<c.A.Ai;d++)f=c.A.Af[d].Td,c.A.Pe.push(Cb(e,f,h,!d)),h-=f;for(d=0;d<c.A.Pe.length;d++)e=c.A.Af[d],h=f=c.A.Pe[d],g=c.Ia,(k=xc[e.type])||(k=new Ab),g.strokeStyle="black",g.strokeRect(h.x,h.y,h.ad,h.A),g.fillStyle="string"==typeof k?k:k.toString(),g.fillRect(h.x,h.y,h.ad,h.A),h=c,g=f,h.ga=h.ua,h.X=h.wa,f=g.x+(g.ad>>1),k=g.y+(g.A>>1),l=g.A,g.ad<g.A&&(l=g.ad,h.ra=!0,
h.N.save(),h.N.translate(f,k),h.N.rotate(-Math.PI/2),f=k=0),l<h.X&&(h.X=l,h.ga=h.X+"px Monaco, Lucida Console, Courier New"),g=k,h.C=f,h.U=g,h=c,e=sc[e.type]+" ("+(e.Td*c.ea.Nb/1024|0)+"Kb)",h.N.font=h.ga,h.C-=h.N.measureText(e).width>>1,h.U+=(h.X>>1)-2,Jb(h,e),h.ra&&(h.N.restore(),h.ra=!1)}}else Jb(c,"This space intentionally left blank");c.context.drawImage(c.aa,0,0,c.aa.width,c.aa.height,c.sb,c.Jb,c.$a,c.fb);c.Ja=!1}}
function dd(a,b){for(var c=0;c<a.L.length;c++)qn(a.L[c],b);if(a.C&&(c=a.C,c.Ja)){Ib(c,18,c.aa,c.Ia);if(c.gb){var d=c.ea,e=c.A,f,g;null==f&&(f=0);null==g&&(g=d.X-f|0);null==e&&(e={Zg:0,Ud:0,Qg:[]});var h=f>>>d.La;f=f+g-1>>>d.La;e.Zg=0;for(e.Ud=0;h<=f;)g=d.sa[h],e.Zg+=g.size,g.size&&(e.Qg.push(sa(Hb,h,0,0,g.type)),e.Ud++),h++;c.A=e;c.ya=c.A.Ud*c.ea.Nb/691200;d=0;c.A.Ai=0;c.A.Af||(c.A.Af=[]);var e=-1,h=0,k=-1;for(f=0;f<c.A.Ud;f++){var l=c.A.Qg[f];g=ta(Hb.type,l);l=ta(Hb.$j,l);if(g!=e||l!=k+1)(k=f-h)&&
(d+=Kb(c,h,k,e)),e=g,h=f;k=l}d+=Kb(c,h,f-h,e);e=c.A.Kk!=d;c.A.Kk=d;if(e){e=new Bb(0,0,c.aa.width,c.aa.height);c.A.Pe=[];h=c.A.Ud;for(d=0;d<c.A.Ai;d++)f=c.A.Af[d].Ud,c.A.Pe.push(Cb(e,f,h,!d)),h-=f;for(d=0;d<c.A.Pe.length;d++)e=c.A.Af[d],h=f=c.A.Pe[d],g=c.Ia,(k=xc[e.type])||(k=new Ab),g.strokeStyle="black",g.strokeRect(h.x,h.y,h.ad,h.A),g.fillStyle="string"==typeof k?k:k.toString(),g.fillRect(h.x,h.y,h.ad,h.A),h=c,g=f,h.ga=h.ua,h.X=h.wa,f=g.x+(g.ad>>1),k=g.y+(g.A>>1),l=g.A,g.ad<g.A&&(l=g.ad,h.ra=!0,
h.N.save(),h.N.translate(f,k),h.N.rotate(-Math.PI/2),f=k=0),l<h.X&&(h.X=l,h.ga=h.X+"px Monaco, Lucida Console, Courier New"),g=k,h.C=f,h.U=g,h=c,e=sc[e.type]+" ("+(e.Ud*c.ea.Nb/1024|0)+"Kb)",h.N.font=h.ga,h.C-=h.N.measureText(e).width>>1,h.U+=(h.X>>1)-2,Jb(h,e),h.ra&&(h.N.restore(),h.ra=!1)}}else Jb(c,"This space intentionally left blank");c.context.drawImage(c.aa,0,0,c.aa.width,c.aa.height,c.sb,c.Jb,c.$a,c.fb);c.Ja=!1}}
Qa(function(){for(var a=nb(document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=jb(c),c=nb(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=jb(f),g=new Sr(g,d,!0);mb(g,f);g.ga&&Yr(g,g.$f)}});La.show.push(function(){for(var a=nb(document,"pcjs","computer"),b=0;b<a.length;b++){var c=jb(a[b]);(c=ib("Computer",c.id))&&c.ka&&!c.la.cc&&c.$f(-1)}});
La.exit.push(function(){for(var a=nb(document,"pcjs","computer"),b=0;b<a.length;b++){var c=jb(a[b]);(c=ib("Computer",c.id))&&c.la.cc&&Mr(c,!(!c.A||c.X),!0)}});var ds=0;function es(a,b,c,d,e,f){e("Loading "+a+"...");va(a,null,!0,function(g,h,k){k?(h||(h="unable to load "+a+" ("+k+")"),f(h,null)):qs(h,a,b,c,d,e,f)})}
function qs(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{if(c){fb(c,b,a);var h=b;h&&0>h.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(h=window.location.pathname+h);d?"}"==d.slice(-1)?(d=d.slice(0,-1),1<d.length&&(d+=",")):d='{state:"'+d+'",':d="{";d+='url:"'+h+'"}';"object"==typeof resources&&(h=null);a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(h?' url="'+h+'"':""))}h=null;if("<"==a.charAt(0))try{e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,

View file

@ -24,85 +24,85 @@ ri:25,ni:20,pi:28,Oi:13,Qi:21,Ni:16,Pi:24,ti:13,vi:21,si:16,ui:24,Ze:2,Ye:7,Qg:5
function hb(a,b,c,d){this.A=[a,b,c,d];this.B=null;void 0===a&&(this.A[0]=256*Math.random()|0,this.A[1]=256*Math.random()|0,this.A[2]=256*Math.random()|0,this.A[3]=255,this.B=null)}hb.prototype.toString=function(){this.B||(this.B="#"+ea(this.A[0],2)+ea(this.A[1],2)+ea(this.A[2],2));return this.B};function ib(a,b,c,d){this.x=a;this.y=b;this.Fc=c;this.A=d}ib.prototype.contains=function(a,b){return a>=this.x&&a<this.x+this.Fc&&b>=this.y&&b<this.y+this.A};
function jb(a,b,c,d){void 0===d&&(d=b>=c>>2);d?(b=new ib(a.x,a.y,a.Fc,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new ib(a.x,a.y,a.Fc*b/c|0,a.A),a.x+=b.Fc,a.Fc-=b.Fc);return b}l=gb.prototype;l.zb=function(a,b,c,d){return this.aa&&this.aa.zb(a,b,c,d)||this.A&&this.A.zb(a,b,c,d)||this.C&&this.C.zb(a,b,c,d)?!0:this.parent.zb.call(this,a,b,c,d)};l.pc=function(a,b,c,d){this.aa=a;this.ha=b;this.A=c;this.Ia=d;this.C=kb(a,"Keyboard")};l.Vb=function(a,b){b||lb();return!0};l.Ub=function(){return!0};
l.je=function(a,b){a.button||(this.R=b?0:-1,mb(this,a,b))};l.ng=function(a){mb(this,a)};
function mb(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.R||(a.R=Math.abs(a.H-d)>Math.abs(a.I-b)?1:2),1==a.R?b=a.I:2==a.R&&(d=a.H));a.H=d;a.I=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.B&&a.B.ce)for(f=0;f<a.B.ce.length;f++)if(e=a.B.ce[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.B.He[f],g=oa(nb.aj,a.B.$f[d.Ij]),f=g*a.ha.vb,d=(g+d.gd)*a.ha.vb-1;0<b&&(f+=e.Fc*(b-1)*a.ma);f+=c*a.ma;f|=0;f>d&&
function mb(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.R||(a.R=Math.abs(a.H-d)>Math.abs(a.I-b)?1:2),1==a.R?b=a.I:2==a.R&&(d=a.H));a.H=d;a.I=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.B&&a.B.ce)for(f=0;f<a.B.ce.length;f++)if(e=a.B.ce[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.B.He[f],g=oa(nb.aj,a.B.$f[d.Ij]),f=g*a.ha.vb,d=(g+d.hd)*a.ha.vb-1;0<b&&(f+=e.Fc*(b-1)*a.ma);f+=c*a.ma;f|=0;f>d&&
(f=d);c=f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.oa)){b=c;if(a.context&&a.X&&a.Y){e=a.X.width;a.Y.fillStyle="black";a.Y.fillRect(0,360,e,360);ob(a,378,a.X,a.Y);a.ba=a.pa.width/24|0;if(null==b)pb(a,"Mouse over memory to dump");else for(pb(a,"0x"+ea(b),null,0,1),f=1;16>=f;f++){d="";for(g=1;8>=g;g++){var h;h=a.ha;var k=b++;h=h.R[(k&h.Fa)>>>h.da].Ed(k&h.B,k);pb(a,ea(h,2),null,1);d+=32<=h&&128>h?String.fromCharCode(h):"."}pb(a,d,null,0,1)}a.context.drawImage(a.X,0,360,e,360,a.La,a.Ta,a.za,a.Ea)}a.oa=c}}}
l.Xd=function(){};function qb(a,b,c,d){a.B.He[a.B.Gh++]={Ij:b,gd:c,type:d};return na(nb,b,c,0,d)}function ob(a,b,c,d){var e,f=null.style.color,g=a.xa=10;a.D=g;a.K=b;a.L=a.ka=18;e||(e=a.ia||a.ka+"px Monaco, Lucida Console, Courier New");a.S=a.ia=e;c&&(a.pa=c);d&&(a.G=d,a.qa=f||"white")}
l.Xd=function(){};function qb(a,b,c,d){a.B.He[a.B.Gh++]={Ij:b,hd:c,type:d};return na(nb,b,c,0,d)}function ob(a,b,c,d){var e,f=null.style.color,g=a.xa=10;a.D=g;a.K=b;a.L=a.ka=18;e||(e=a.ia||a.ka+"px Monaco, Lucida Console, Courier New");a.S=a.ia=e;c&&(a.pa=c);d&&(a.G=d,a.qa=f||"white")}
function pb(a,b,c,d,e){a.G.font=a.S;a.G.fillStyle=a.qa;a.G.fillText(b,a.D,a.K);a.D+=a.ba;null!=c&&(16!=a.Ja?b=c.toString():(b=8>a.va?"0x":"",b+=ea(c,a.va)),a.G.fillText(b,a.D,a.K),a.D+=a.ba);d&&(a.D+=a.ba*d);e&&(a.D=a.xa,a.K+=(a.L+2)*(e||1))}function lb(){for(var a=!1,b=Za(document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=Wa(d),f=Ua(e.id);f||(a=!0,f=new gb(e));Ya(f,d);a&&ab(f)}}Ea(lb);
function rb(a,b,c){Ia.call(this,"Bus",a,rb);this.A=b;this.Ia=c;this.D=a.buswidth||20;this.L=Math.pow(2,this.D);this.aa=this.Fa=this.L-1|0;this.da=32==this.D||20>=this.D?12:24>=this.D?14:15;this.vb=1<<this.da;this.ha=this.vb>>2;this.B=this.vb-1;this.H=this.L/this.vb|0;this.C=this.H-1;this.I=[];this.K=[];this.P=[];this.S=[];a=new p;sb(a,this.Ia);this.R=Array(this.H);for(b=0;b<this.H;b++)this.R[b]=a;a=this.A;b=this.R;c=this.da;a.vc=a.R=b;a.da=c;a.vb=1<<a.da;a.pb=a.vb-1;a.mf=b.length;a.Yd=a.mf-1;a=this.A;
function rb(a,b,c){Ia.call(this,"Bus",a,rb);this.A=b;this.Ia=c;this.D=a.buswidth||20;this.L=Math.pow(2,this.D);this.aa=this.Fa=this.L-1|0;this.da=32==this.D||20>=this.D?12:24>=this.D?14:15;this.vb=1<<this.da;this.ha=this.vb>>2;this.B=this.vb-1;this.H=this.L/this.vb|0;this.C=this.H-1;this.I=[];this.K=[];this.P=[];this.S=[];a=new q;sb(a,this.Ia);this.R=Array(this.H);for(b=0;b<this.H;b++)this.R[b]=a;a=this.A;b=this.R;c=this.da;a.vc=a.R=b;a.da=c;a.vb=1<<a.da;a.pb=a.vb-1;a.mf=b.length;a.Yd=a.mf-1;a=this.A;
a.Fa=a.oc=this.Fa;ab(this)}Qa(rb);var nb,tb={aj:20,count:8,Sm:1,type:3},ub=0,vb;for(vb in tb){var wb=tb[vb];tb[vb]={mg:(1<<wb)-1<<ub,shift:ub};ub+=wb}nb=tb;l=rb.prototype;l.reset=function(){xb(this,!0)};l.Vb=function(a,b){b||this.reset();return!0};
function yb(a,b,c,d,e){for(var f=b>>>a.da;0<c&&f<a.R.length;){var g=a.R[f],h=f*a.vb,k=c>a.vb?a.vb:c;if(g&&g.size){if(g.type==d&&g.controller==e){if(b+c<=g.fe)return g.De+=g.fe-b,g.fe=b,!0;if(b>=g.fe+g.De){k=g.size-(b-h);k>c&&(k=c);g.De=b-g.fe+k;c-=k;b=h+a.vb;continue}}return zb(a,1,b,c)}g=a.R[f];b=new p(b,k,a.vb,d,e);sb(b,a.Ia,g);a.R[f++]=b;b=h+a.vb;c-=k}return 0>=c?(a=a.A,a.Pa&-2147483648&&Bb(a),!0):zb(a,2,b,c)}
function yb(a,b,c,d,e){for(var f=b>>>a.da;0<c&&f<a.R.length;){var g=a.R[f],h=f*a.vb,k=c>a.vb?a.vb:c;if(g&&g.size){if(g.type==d&&g.controller==e){if(b+c<=g.fe)return g.De+=g.fe-b,g.fe=b,!0;if(b>=g.fe+g.De){k=g.size-(b-h);k>c&&(k=c);g.De=b-g.fe+k;c-=k;b=h+a.vb;continue}}return zb(a,1,b,c)}g=a.R[f];b=new q(b,k,a.vb,d,e);sb(b,a.Ia,g);a.R[f++]=b;b=h+a.vb;c-=k}return 0>=c?(a=a.A,a.Pa&-2147483648&&Bb(a),!0):zb(a,2,b,c)}
function xb(a,b){if(32==a.D)b?a.G&&(Cb(a,1048576,1048576,a.G),a.G=null):a.G||(a.G=Db(a,1048576,1048576),Cb(a,1048576,1048576,Db(a,0,1048576)));else if(20<a.D){var c=a.Fa&-1048577|(b?1048576:0);if(c!=a.Fa&&(a.Fa=c,a.A)){var d=a.A;d.Fa=d.oc=c}}}l.Uf=function(a,b,c,d){if(!(a&this.B||!b||b&this.B)){for(var e=a>>>this.da;0<b;){var f=this.R[e];if(!f.controller)return zb(this,3,a,b,d);Eb(f,c,!0);b-=this.vb;e++}return!0}return zb(this,4,a,b)};
function Fb(a,b,c){if(!(b&a.B||!c||c&a.B)){for(var d=b>>>a.da;0<c;){var e=a.R[d];b=new p(b);sb(b,a.Ia,e);a.R[d++]=b;b=d*a.vb;c-=a.vb}a=a.A;a.Pa&-2147483648&&Bb(a);return!0}return zb(a,5,b,c)}function Db(a,b,c){var d=[];for(b>>>=a.da;0<c&&b<a.R.length;)d.push(a.R[b++]),c-=a.vb;return d}
function Cb(a,b,c,d,e){for(var f=0,g=b>>>a.da;0<c&&g<a.R.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new p(b),m=k,q=e,x=a.Ia;m.id=h.id|1;m.De=h.De;m.size=h.size;q&&(m.type=q,m.I=q==Gb);db?(m.R=h.R,m.P=h.P,m.Ka=h.Ka,m.td=h.td,m.V=h.V,Eb(m,Hb?Ib:Jb)):(m.V=h.V,Eb(m,Kb));sb(m,x,h);h=k}a.R[g++]=h;c-=a.vb}}l.Jb=function(a){return this.R[(a&this.Fa)>>>this.da].Wb(a&this.B,a)};
function Fb(a,b,c){if(!(b&a.B||!c||c&a.B)){for(var d=b>>>a.da;0<c;){var e=a.R[d];b=new q(b);sb(b,a.Ia,e);a.R[d++]=b;b=d*a.vb;c-=a.vb}a=a.A;a.Pa&-2147483648&&Bb(a);return!0}return zb(a,5,b,c)}function Db(a,b,c){var d=[];for(b>>>=a.da;0<c&&b<a.R.length;)d.push(a.R[b++]),c-=a.vb;return d}
function Cb(a,b,c,d,e){for(var f=0,g=b>>>a.da;0<c&&g<a.R.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new q(b),m=k,p=e,x=a.Ia;m.id=h.id|1;m.De=h.De;m.size=h.size;p&&(m.type=p,m.I=p==Gb);db?(m.R=h.R,m.P=h.P,m.Ka=h.Ka,m.ud=h.ud,m.V=h.V,Eb(m,Hb?Ib:Jb)):(m.V=h.V,Eb(m,Kb));sb(m,x,h);h=k}a.R[g++]=h;c-=a.vb}}l.Jb=function(a){return this.R[(a&this.Fa)>>>this.da].Wb(a&this.B,a)};
l.ga=function(a){var b=a&this.B,c=(a&this.Fa)>>>this.da;return b!=this.B?this.R[c].ye(b,a):this.R[c++].Wb(b,a)|this.R[c&this.C].Wb(0,a+1)<<8};function Lb(a,b){var c=b&a.B,d=(b&a.Fa)>>>a.da;return c!=a.B?a.R[d].ef(c,b):a.R[d++].Ed(c,b)|a.R[d&a.C].Ed(0,b+1)<<8}l.fa=function(a){var b=a&this.B,c=(a&this.Fa)>>>this.da;if(b<this.B-2)return this.R[c].Fd(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;)d|=this.R[c].Wb(b++,a++)<<f,--g||(c=c+1&this.C,b=0),f+=8;return d};
l.Mc=function(a,b){this.R[(a&this.Fa)>>>this.da].Yb(a&this.B,b&255,a)};l.bb=function(a,b){var c=a&this.B,d=(a&this.Fa)>>>this.da;c!=this.B?this.R[d].Fe(c,b&65535,a):(this.R[d++].Yb(c,b&255,a),this.R[d&this.C].Yb(0,b>>8&255,a+1))};function Mb(a,b,c){var d=b&a.B,e=(b&a.Fa)>>>a.da;d!=a.B?a.R[e].oh(d,c&65535,b):(a.R[e++].kf(d,c&255,b),a.R[e&a.C].kf(0,c>>8&255,b+1))}
l.Va=function(a,b){var c=a&this.B,d=(a&this.Fa)>>>this.da;if(c<this.B-2)this.R[d].Ee(c,b);else for(var e=4,f=4-(c&3);e--;)this.R[d].Yb(c++,b&255,a++),--f||(d=d+1&this.C,c=0),b>>>=8};function Nb(a,b,c,d){void 0===d&&(d=0);for(var e in c){var f=a,g=+e+d,h=c[e].bind(b);if(void 0!==h)for(var k=+e+d;k<=g;k++)void 0!==f.I[k]?n("Input port 0x"+ea(k,4)+" already registered"):f.I[k]=[h,!1]}}
function Ob(a,b,c,d){for(var e=0,f=0;0<c;){var g=a.I[b],h=a.P[b]||1,k=1==h?255:2==h?65535:-1,m=k;void 0!==g&&g[0]&&(m=g[0](b,d),void 0===m?m=k:m&=k);e|=m<<f;f+=h<<3;b+=h;c-=h}return e}function Pb(a,b,c,d){void 0===d&&(d=0);for(var e in c){var f=a,g=+e+d,h=c[e].bind(b);if(void 0!==h)for(var k=+e+d;k<=g;k++)void 0!==f.K[k]?n("Output port 0x"+ea(k,4)+" already registered"):f.K[k]=[h,!1]}}
function Qb(a,b,c,d,e){for(var f=0;0<c;){var g=a.K[b],h=a.S[b]||1,k=1==h?255:2==h?65535:-1,k=(d>>>=f)&k;if(void 0!==g&&g[0])g[0](b,k,e);f+=h<<3;b+=h;c-=h}}function zb(a,b,c,d,e){b="Memory block error ("+b+": "+ea(c)+","+ea(d)+")";e?a.Ia?a.Ia.message(b):a.log(b):n(b);return!1}var Rb;if(db){var Sb=new ArrayBuffer(2);(new DataView(Sb)).setUint16(0,256,!0);Rb=256===(new Uint16Array(Sb))[0]}else Rb=!1;var Hb=Rb;
function p(a,b,c,d,e,f){this.id=Tb+=2;this.V=null;this.H=0;this.fe=a;this.De=b;this.size=c||0;this.type=d||Ub;this.I=d==Gb;this.controller=null;this.A=f;sb(this);this.Ha=this.Oh=!1;if(c)if(e)this.controller=e,a=e.Th(a),this.V=a[0],this.H=a[1],Eb(this,e.lg());else if(db)this.R=new ArrayBuffer(c),this.P=new DataView(this.R,0,c),this.Ka=new Uint8Array(this.R,0,c),this.td=new Uint16Array(this.R,0,c>>1),this.V=new Int32Array(this.R,0,c>>2),Eb(this,Hb?Ib:Jb);else{this.V=Array(c>>2);for(e=0;e<this.V.length;e++)this.V[e]=
function q(a,b,c,d,e,f){this.id=Tb+=2;this.V=null;this.H=0;this.fe=a;this.De=b;this.size=c||0;this.type=d||Ub;this.I=d==Gb;this.controller=null;this.A=f;sb(this);this.Ha=this.Oh=!1;if(c)if(e)this.controller=e,a=e.Th(a),this.V=a[0],this.H=a[1],Eb(this,e.lg());else if(db)this.R=new ArrayBuffer(c),this.P=new DataView(this.R,0,c),this.Ka=new Uint8Array(this.R,0,c),this.ud=new Uint16Array(this.R,0,c>>1),this.V=new Int32Array(this.R,0,c>>2),Eb(this,Hb?Ib:Jb);else{this.V=Array(c>>2);for(e=0;e<this.V.length;e++)this.V[e]=
0;Eb(this,Kb)}else Eb(this)}var Ub=0,Gb=2,Vb="NONE RAM ROM VIDEO H/W UNPAGED PAGED".split(" "),Wb=["black","blue","green","cyan"],Tb=0;function Xb(a){db&&!Hb&&(a=a<<24|a<<8&16711680|a>>8&65280|a>>>24);return a}
p.prototype={constructor:p,parent:null,Pk:function(a){this.fe=a},save:function(){var a,b;if(this.controller)a=null;else if(db)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.P.getInt32(b<<2,!0);else a=this.V;return a},restore:function(a){if(this.controller)return null==a;if(a&&this.size==a.length<<2){var b;if(db)for(b=0;b<a.length;b++)this.P.setInt32(b<<2,a[b],!0);else this.V=a;return this.Ha=!0}return!1},da:function(){return 255},ha:function(){},ia:function(a,b){return this.Wb(a++,b++)|this.Wb(a,
q.prototype={constructor:q,parent:null,Pk:function(a){this.fe=a},save:function(){var a,b;if(this.controller)a=null;else if(db)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.P.getInt32(b<<2,!0);else a=this.V;return a},restore:function(a){if(this.controller)return null==a;if(a&&this.size==a.length<<2){var b;if(db)for(b=0;b<a.length;b++)this.P.setInt32(b<<2,a[b],!0);else this.V=a;return this.Ha=!0}return!1},da:function(){return 255},ha:function(){},ia:function(a,b){return this.Wb(a++,b++)|this.Wb(a,
b)<<8},Y:function(a,b){return this.Wb(a++,b++)|this.Wb(a++,b++)<<8|this.Wb(a++,b++)<<16|this.Wb(a,b)<<24},aa:function(a,b,c){this.Yb(a++,b&255,c++);this.Yb(a,b>>8,c)},la:function(a,b,c){this.Yb(a++,b&255,c++);this.Yb(a++,b>>8&255,c++);this.Yb(a++,b>>16&255,c++);this.Yb(a,b>>>24,c)},va:function(a){return this.V[a>>2]>>>((a&3)<<3)&255},fb:function(a){var b=a>>2;a=(a&3)<<3;var c=this.V[b]>>a;return 24>a?c&65535:c&255|(this.V[b+1]&255)<<8},Ga:function(a){var b=a>>2;a=(a&3)<<3;var c=this.V[b];a&&(c=c>>>
a|this.V[b+1]<<32-a);return c},Bb:function(a,b){var c=a>>2,d=(a&3)<<3;this.V[c]=this.V[c]&~(255<<d)|b<<d;this.Ha=!0},xc:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.V[c]=this.V[c]&~(65535<<d)|b<<d:(this.V[c]=this.V[c]&16777215|b<<24,c++,this.V[c]=this.V[c]&-256|b>>8);this.Ha=!0},fc:function(a,b){var c=a>>2,d=(a&3)<<3;if(d){var e=-1<<d;this.V[c]=this.V[c]&~e|b<<d;c++;this.V[c]=this.V[c]&e|b>>>32-d}else this.V[c]=b;this.Ha=!0},ua:function(a,b){this.A&&Yb(this.A,b,1,!1);return this.Ed(a,b)},Xa:function(a,
b){this.A&&Yb(this.A,b,2,!1);return this.ef(a,b)},Fa:function(a,b){this.A&&Yb(this.A,b,4,!1);return this.ih(a,b)},Ab:function(a,b,c){this.A&&Yb(this.A,c,1,!0);this.I||this.kf(a,b,c)},wc:function(a,b,c){this.A&&Yb(this.A,c,2,!0);this.I||this.oh(a,b,c)},Zb:function(a,b,c){this.A&&Yb(this.A,c,4,!0);this.I||this.oa(a,b,c)},za:function(a,b){this.B.V[this.D]|=this.K;this.C.V[this.G]|=this.K;return this.L.Wb(a,b)},qb:function(a,b){this.B.V[this.D]|=this.K;this.C.V[this.G]|=this.K;return this.L.ye(a,b)},
La:function(a,b){this.B.V[this.D]|=this.K;this.C.V[this.G]|=this.K;return this.L.Fd(a,b)},Gb:function(a,b,c){this.B.V[this.D]|=this.K;this.C.V[this.G]|=this.S;this.L.Yb(a,b,c)},zc:function(a,b,c){this.B.V[this.D]|=this.K;this.C.V[this.G]|=this.S;this.L.Fe(a,b,c)},mc:function(a,b,c){this.B.V[this.D]|=this.K;this.C.V[this.G]|=this.S;this.L.Ee(a,b,c)},Da:function(a,b){return Zb(this.A,b,!1).Wb(a,b)},rb:function(a,b){return Zb(this.A,b,!1).ye(a,b)},Oa:function(a,b){return Zb(this.A,b,!1).Fd(a,b)},Hb:function(a,
b,c){Zb(this.A,c,!0).Yb(a,b,c)},Gc:function(a,b,c){Zb(this.A,c,!0).Fe(a,b,c)},oc:function(a,b,c){Zb(this.A,c,!0).Ee(a,b,c)},ra:function(a){return this.Ka[a]},X:function(a){return this.Ka[a]},xa:function(a){this.B.V[this.D]|=32;this.C.V[this.G]|=32;this.Wb=this.X;return this.Ka[a]},Ta:function(a){return this.P.getUint16(a,!0)},ka:function(a){return a&1?this.Ka[a]|this.Ka[a+1]<<8:this.td[a>>1]},pb:function(a){this.B.V[this.D]|=32;this.C.V[this.G]|=32;this.ye=this.ka;return a&1?this.Ka[a]|this.Ka[a+
1]<<8:this.td[a>>1]},Ea:function(a){return this.P.getInt32(a,!0)},ba:function(a){return a&3?this.Ka[a]|this.Ka[a+1]<<8|this.Ka[a+2]<<16|this.Ka[a+3]<<24:this.V[a>>2]},Ja:function(a){this.B.V[this.D]|=32;this.C.V[this.G]|=32;this.Fd=this.ba;return a&3?this.Ka[a]|this.Ka[a+1]<<8|this.Ka[a+2]<<16|this.Ka[a+3]<<24:this.V[a>>2]},ub:function(a,b){this.Ka[a]=b;this.Ha=!0},ma:function(a,b){this.Ka[a]=b;this.Ha=!0},Cb:function(a,b){this.Ka[a]=b;this.B.V[this.D]|=32;this.C.V[this.G]|=96;this.Yb=this.ma;this.L.Ha=
!0},vc:function(a,b){this.P.setUint16(a,b,!0);this.Ha=!0},qa:function(a,b){a&1?(this.Ka[a]=b,this.Ka[a+1]=b>>8):this.td[a>>1]=b;this.Ha=!0},yc:function(a,b){a&1?(this.Ka[a]=b,this.Ka[a+1]=b>>8):this.td[a>>1]=b;this.B.V[this.D]|=32;this.C.V[this.G]|=96;this.Fe=this.qa;this.L.Ha=!0},Nb:function(a,b){this.P.setInt32(a,b,!0);this.Ha=!0},pa:function(a,b){a&3?(this.Ka[a]=b,this.Ka[a+1]=b>>8,this.Ka[a+2]=b>>16,this.Ka[a+3]=b>>24):this.V[a>>2]=b;this.Ha=!0},ic:function(a,b){a&3?(this.Ka[a]=b,this.Ka[a+1]=
b,c){Zb(this.A,c,!0).Yb(a,b,c)},Gc:function(a,b,c){Zb(this.A,c,!0).Fe(a,b,c)},oc:function(a,b,c){Zb(this.A,c,!0).Ee(a,b,c)},ra:function(a){return this.Ka[a]},X:function(a){return this.Ka[a]},xa:function(a){this.B.V[this.D]|=32;this.C.V[this.G]|=32;this.Wb=this.X;return this.Ka[a]},Ta:function(a){return this.P.getUint16(a,!0)},ka:function(a){return a&1?this.Ka[a]|this.Ka[a+1]<<8:this.ud[a>>1]},pb:function(a){this.B.V[this.D]|=32;this.C.V[this.G]|=32;this.ye=this.ka;return a&1?this.Ka[a]|this.Ka[a+
1]<<8:this.ud[a>>1]},Ea:function(a){return this.P.getInt32(a,!0)},ba:function(a){return a&3?this.Ka[a]|this.Ka[a+1]<<8|this.Ka[a+2]<<16|this.Ka[a+3]<<24:this.V[a>>2]},Ja:function(a){this.B.V[this.D]|=32;this.C.V[this.G]|=32;this.Fd=this.ba;return a&3?this.Ka[a]|this.Ka[a+1]<<8|this.Ka[a+2]<<16|this.Ka[a+3]<<24:this.V[a>>2]},ub:function(a,b){this.Ka[a]=b;this.Ha=!0},ma:function(a,b){this.Ka[a]=b;this.Ha=!0},Cb:function(a,b){this.Ka[a]=b;this.B.V[this.D]|=32;this.C.V[this.G]|=96;this.Yb=this.ma;this.L.Ha=
!0},vc:function(a,b){this.P.setUint16(a,b,!0);this.Ha=!0},qa:function(a,b){a&1?(this.Ka[a]=b,this.Ka[a+1]=b>>8):this.ud[a>>1]=b;this.Ha=!0},yc:function(a,b){a&1?(this.Ka[a]=b,this.Ka[a+1]=b>>8):this.ud[a>>1]=b;this.B.V[this.D]|=32;this.C.V[this.G]|=96;this.Fe=this.qa;this.L.Ha=!0},Nb:function(a,b){this.P.setInt32(a,b,!0);this.Ha=!0},pa:function(a,b){a&3?(this.Ka[a]=b,this.Ka[a+1]=b>>8,this.Ka[a+2]=b>>16,this.Ka[a+3]=b>>24):this.V[a>>2]=b;this.Ha=!0},ic:function(a,b){a&3?(this.Ka[a]=b,this.Ka[a+1]=
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;this.C.V[this.G]|=96;this.Ee=this.pa;this.L.Ha=!0}};function sb(a,b,c){a.Ia=b;a.ge=a.he=0;c&&(c.A&&(a.A=c.A),(a.ge=c.ge)&&$b(a,bc,!1),(a.he=c.he)&&cc(a,bc,!1))}function cc(a,b,c){c&&a.he||(a.Yb=!a.I&&b[3]||a.ha,a.Fe=!a.I&&b[4]||a.aa,a.Ee=!a.I&&b[5]||a.la);if(c||void 0===c)a.kf=b[3]||a.ha,a.oh=b[4]||a.aa,a.oa=b[5]||a.la}
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=[p.prototype.va,p.prototype.fb,p.prototype.Ga,p.prototype.Bb,p.prototype.xc,p.prototype.fc],bc=[p.prototype.ua,p.prototype.Xa,p.prototype.Fa,p.prototype.Ab,p.prototype.wc,p.prototype.Zb],ec=[p.prototype.za,p.prototype.qb,p.prototype.La,p.prototype.Gb,p.prototype.zc,p.prototype.mc],dc=[p.prototype.Da,p.prototype.rb,p.prototype.Oa,p.prototype.Hb,p.prototype.Gc,p.prototype.oc];
if(db)var Jb=[p.prototype.ra,p.prototype.Ta,p.prototype.Ea,p.prototype.ub,p.prototype.vc,p.prototype.Nb],Ib=[p.prototype.X,p.prototype.ka,p.prototype.ba,p.prototype.ma,p.prototype.qa,p.prototype.pa],gc=[p.prototype.xa,p.prototype.pb,p.prototype.Ja,p.prototype.Cb,p.prototype.yc,p.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.Ad=d;this.T.Df=Math.round(this.T.ad/1E4)/100;this.T.te=this.T.Df*this.T.Ad;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;
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.pd=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};
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;
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))};
a=!0;break;case "speed":this.la[b]=c;a=!0;break;case "setSpeed":this.la[b]=c,c.onclick=function(){pc(d,d.T.Ad<<1,!0)},c.textContent=this.T.te.toFixed(2)+"Mhz",a=!0}return a};function qc(a,b){if(a.ea.Sb){var c=a.A-b;a.A-=c;a.mc-=c}}function rc(a,b,c){a.$c+=b;c&&(a.mc=a.A=0)}
function sc(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.T.Ad&&a.T.zd&&(d=a.T.zd/a.T.Df);a.T.Xh=Math.round(1E3/30);a.T.Wk=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.Ad&&a.T.zd>a.T.Df&&(c=Math.round(c/a.T.Ad));return c}function kc(a){a.T.zd=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.zd/a.T.te&&(b=1);a.T.Ad=b;b=a.T.Df*a.T.Ad;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)}
a=!0;break;case "speed":this.la[b]=c;a=!0;break;case "setSpeed":this.la[b]=c,c.onclick=function(){pc(d,d.T.Bd<<1,!0)},c.textContent=this.T.te.toFixed(2)+"Mhz",a=!0}return a};function qc(a,b){if(a.ea.Sb){var c=a.A-b;a.A-=c;a.mc-=c}}function rc(a,b,c){a.$c+=b;c&&(a.mc=a.A=0)}
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.Wk=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.Wk;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.kd)/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 q=this.mc-this.A;this.zc+=q;this.T.Se+=q;rc(this,0,!0);a=q;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-=q;0>=this.T.Qe&&(this.T.Qe+=this.T.Zh,this.aa&&yc(this.aa));this.T.Pe-=q;0>=this.T.Pe&&(this.T.Pe+=this.T.Yh,this.aa&&this.aa.Xd());this.T.Re-=q;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.zd=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.zd<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.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())}
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.Tk=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.Sk=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};
function Cc(a,b,c,d,e){a.ja=b;a.ya=d;a.Za=e;a.C=(e>>>0)+1;a.lb=c;a.type=c&7936;a.ext=c>>16&192;a.hc=(b&4?a.A.Zb.ya:a.A.ub)+(b&65528)|0;4>a.id&&Ac(a,!0)}function Dc(a,b,c){var d=a.A,e=d.ga(b+2),f=d.ga(b)|(e&255)<<16,d=d.ga(b+4);a.ja=c;a.ya=f;a.Za=d;a.C=(d>>>0)+1;a.lb=e;a.type=e&7936;a.ext=0;a.hc=b;4>a.id&&Ac(a,!0)}
function Bc(a,b,c,d){var e=a.A;if(!d&&c===a.B.ja)return a.ja=c,a.ya=a.B.ya,a.Za=a.B.Za,a.C=(a.B.Za>>>0)+1,a.lb=a.B.lb,a.type=a.B.type,a.ext=a.B.ext,a.hc=a.B.hc,a.B.ja=-1,Ac(a,!0,!0,!1),a.ya;a.B.ja=-1;var f=e.ga(b+0),g=e.ga(b+4),h=g&7936,k=e.ga(b+2)|(g&255)<<16,m=e.ga(b+6),q=c&65528;if(80386<=e.ca){var x=f,k=k|(m&65280)<<16,f=f|(m&15)<<16;m&128&&(f=f<<12|4095)}switch(a.id){case 1:var r=a.D;a.pe=!1;if(r&&1==c&&a.G.length){var z=a.G[a.cf-1];if(z&&!z())return-1}var E=c&3,J=(g&24576)>>13,z=-1,W,da;q||
function Bc(a,b,c,d){var e=a.A;if(!d&&c===a.B.ja)return a.ja=c,a.ya=a.B.ya,a.Za=a.B.Za,a.C=(a.B.Za>>>0)+1,a.lb=a.B.lb,a.type=a.B.type,a.ext=a.B.ext,a.hc=a.B.hc,a.B.ja=-1,Ac(a,!0,!0,!1),a.ya;a.B.ja=-1;var f=e.ga(b+0),g=e.ga(b+4),h=g&7936,k=e.ga(b+2)|(g&255)<<16,m=e.ga(b+6),p=c&65528;if(80386<=e.ca){var x=f,k=k|(m&65280)<<16,f=f|(m&15)<<16;m&128&&(f=f<<12|4095)}switch(a.id){case 1:var r=a.D;a.pe=!1;if(r&&1==c&&a.G.length){var z=a.G[a.cf-1];if(z&&!z())return-1}var E=c&3,J=(g&24576)>>13,z=-1,W,da;p||
b>=e.ub&&b<e.wc&&(h=0);if(6144<=h)null!=d?z=0:!1!==r?(h&1024?J<=a.sb&&(z=0):E<=a.sb&&J==a.sb&&(z=0),z||(c=c&-4|a.sb&3)):E>=a.sb&&(E>a.sb&&(z=u(e),Ec(e,u(e),!0),v(e,z),a.pe=!0),z=0);else{if(256==h||2304==h)return Fc(a,c,r)?a.ya:-1;if(1024==h)z=2,da=0,E<a.sb&&(E=a.sb);else if(3072==h)z=4,da=0,E<a.sb&&(E=a.sb);else if(1536==h)z=2,da=148224;else if(3584==h)z=4,da=148224;else if(1792==h)z=2,da=147712;else if(3840==h)z=4,da=147712;else if(1280==h)return Fc(a,k&65535,r)?a.ya:-1}0<z&&!(g&32768)&&(z=0);if(0<
z&&(q=a.sb,W=b==e.Ab+c,E<=J&&(!W||0<=e.fc||q<=J))){b=k&65535;h&2048&&(f=x|m<<16);m=h=0;d=b&3;if(d<q){if(-1===a.Cf(b,!0))return-1;m=e.ia.ya;e.ia.type&2048?(c=(d<<3)+4,k=4):(c=(d<<2)+2,k=2);h=e.ga(m+c+k);if(!h)return t.call(e,10,h),-1;if(-1===e.S.Cf(h,!0))return-1;m=2==k?e.ga(m+c):e.fa(m+c)}c=e.W;e.W&=~da;c&131072&&Gc(e,!0,!1);if(-1===a.Cf(b,!1))return-1;Hc(e,z);a.cf=f;if(d<q){if(!0!==r)return-1;z=w(e);f=0;for(g&=31;g--;)a.H[f++]=Ic(e,e.S,z),z+=2;r=e.S.ja;g=w(e);Ec(e,h,!0);v(e,m);c&131072&&(Hc(e,4),
Jc(e,e.Xa.ja,4,2),e.Xa.load(0),Jc(e,e.Ta.ja,4,2),e.Ta.load(0),Jc(e,e.xa.ja,4,2),Kc(e,0),Jc(e,e.pa.ja,4,2),Lc(e,0));Jc(e,r,e.U,2);for(y(e,g);f;)y(e,a.H[--f]);a.pe=!0}return a.ya}if(0!=z)return t.call(e,13,c&65532|(W?2:0)),-1;if(!(g&32768))return t.call(e,11,c&65532|(W?2:0)),-1;break;case 2:if(q){if(4096>h||2048==(h&2560))return t.call(e,13,c&65532),-1;if(!(g&32768))return t.call(e,11,c&65532),-1}break;case 3:if(!q||4096>h||512!=(h&2560))return t.call(e,13,c&65532),-1;if(!(g&32768))return t.call(e,
12,c&65532),-1;break;case 4:r=h&-513;if(!q||256!=r&&2304!=r)return t.call(e,13,c&65532),-1;2304==r&&(a.Ch=k+e.ga(k+100+2)|0,a.yj=k+a.Za|0);break;case 6:if(!(h&4096)&&768<h&&2304!=h&&2816!=h)return-1}d?(a.B.ja=c,a.B.ya=k,a.B.Za=f,a.B.lb=g,a.B.type=h,a.B.ext=m,a.B.hc=b):(a.ja=c,a.ya=k,a.Za=f,a.C=(f>>>0)+1,a.lb=g,a.type=h,a.ext=m,a.hc=b,Ac(a,!0,!0,!1));return k}
z&&(p=a.sb,W=b==e.Ab+c,E<=J&&(!W||0<=e.fc||p<=J))){b=k&65535;h&2048&&(f=x|m<<16);m=h=0;d=b&3;if(d<p){if(-1===a.Cf(b,!0))return-1;m=e.ia.ya;e.ia.type&2048?(c=(d<<3)+4,k=4):(c=(d<<2)+2,k=2);h=e.ga(m+c+k);if(!h)return t.call(e,10,h),-1;if(-1===e.S.Cf(h,!0))return-1;m=2==k?e.ga(m+c):e.fa(m+c)}c=e.W;e.W&=~da;c&131072&&Gc(e,!0,!1);if(-1===a.Cf(b,!1))return-1;Hc(e,z);a.cf=f;if(d<p){if(!0!==r)return-1;z=w(e);f=0;for(g&=31;g--;)a.H[f++]=Ic(e,e.S,z),z+=2;r=e.S.ja;g=w(e);Ec(e,h,!0);v(e,m);c&131072&&(Hc(e,4),
Jc(e,e.Xa.ja,4,2),e.Xa.load(0),Jc(e,e.Ta.ja,4,2),e.Ta.load(0),Jc(e,e.xa.ja,4,2),Kc(e,0),Jc(e,e.pa.ja,4,2),Lc(e,0));Jc(e,r,e.U,2);for(y(e,g);f;)y(e,a.H[--f]);a.pe=!0}return a.ya}if(0!=z)return t.call(e,13,c&65532|(W?2:0)),-1;if(!(g&32768))return t.call(e,11,c&65532|(W?2:0)),-1;break;case 2:if(p){if(4096>h||2048==(h&2560))return t.call(e,13,c&65532),-1;if(!(g&32768))return t.call(e,11,c&65532),-1}break;case 3:if(!p||4096>h||512!=(h&2560))return t.call(e,13,c&65532),-1;if(!(g&32768))return t.call(e,
12,c&65532),-1;break;case 4:r=h&-513;if(!p||256!=r&&2304!=r)return t.call(e,13,c&65532),-1;2304==r&&(a.Ch=k+e.ga(k+100+2)|0,a.yj=k+a.Za|0);break;case 6:if(!(h&4096)&&768<h&&2304!=h&&2816!=h)return-1}d?(a.B.ja=c,a.B.ya=k,a.B.Za=f,a.B.lb=g,a.B.type=h,a.B.ext=m,a.B.hc=b):(a.ja=c,a.ya=k,a.Za=f,a.C=(f>>>0)+1,a.lb=g,a.type=h,a.ext=m,a.hc=b,Ac(a,!0,!0,!1));return k}
function Fc(a,b,c){var d=a.A,e=a.sb,f=d.ia.ja,g=d.ia.ya;if(!c){if(!(d.ia.type&512))return t.call(d,13,b&65532),!1;d.bb(d.ia.hc+4,d.ia.lb&=-513)}if(-1===d.ia.load(b))return!1;var h=d.ia.ya;if(!1!==c){if(d.ia.type&512)return t.call(d,13,b&65532),!1;d.bb(d.ia.hc+4,d.ia.lb|=512)}d.ia.type=d.ia.type&-513|d.ia.lb&512;256==d.ia.type||768==d.ia.type?(d.bb(g+14,A(d)),d.bb(g+16,Mc(d)),d.bb(g+18,d.J),d.bb(g+20,d.G),d.bb(g+22,d.M),d.bb(g+24,d.D),d.bb(g+26,w(d)),d.bb(g+28,d.K),d.bb(g+30,d.I),d.bb(g+32,d.H),d.bb(g+
34,d.pa.ja),d.bb(g+36,d.Ba.ja),d.bb(g+38,d.S.ja),d.bb(g+40,d.xa.ja),d.Zb.load(d.ga(h+42)),Nc(d,d.ga(h+16)|(c?16384:0)),d.J=d.ga(h+18),d.G=d.ga(h+20),d.M=d.ga(h+22),d.D=d.ga(h+24),d.K=d.ga(h+28),d.I=d.ga(h+30),d.H=d.ga(h+32),d.pa.load(d.ga(h+34)),d.xa.load(d.ga(h+40)),Pc(d,d.ga(h+14),d.ga(h+36)),b=38,g=26,a.sb<e&&(g=(a.sb<<2)+2,b=g+2),Ec(d,d.ga(h+b),!0),v(d,d.ga(h+g))):(d.Va(g+28,d.dd),d.Va(g+32,A(d)),d.Va(g+36,Mc(d)),d.Va(g+40,d.J),d.Va(g+44,d.G),d.Va(g+48,d.M),d.Va(g+52,d.D),d.Va(g+56,w(d)),d.Va(g+
60,d.K),d.Va(g+64,d.I),d.Va(g+68,d.H),d.Va(g+72,d.pa.ja),d.Va(g+76,d.Ba.ja),d.Va(g+80,d.S.ja),d.Va(g+84,d.xa.ja),d.Va(g+88,d.Ta.ja),d.Va(g+92,d.Xa.ja),Qc.call(d,d.fa(h+28)),d.Zb.load(d.ga(h+96)),Nc(d,d.fa(h+36)|(c?16384:0)),d.J=d.fa(h+40),d.G=d.fa(h+44),d.M=d.fa(h+48),d.D=d.fa(h+52),d.K=d.fa(h+60),d.I=d.fa(h+64),d.H=d.fa(h+68),d.pa.load(d.ga(h+72)),d.xa.load(d.ga(h+84)),d.Ta.load(d.ga(h+88)),d.Xa.load(d.ga(h+92)),Pc(d,d.fa(h+32),d.ga(h+76)),b=80,g=56,a.sb<e&&(g=(a.sb<<3)+4,b=g+4),Ec(d,d.ga(h+b),!0),
v(d,d.fa(h+g)));c&&d.bb(h+0,f);d.Pa|=8;return!0}l.save=function(){return[this.ja,this.ya,this.Za,this.lb,this.id,this.Tf,this.sb,this.nc,this.hc,this.Nc,this.sa,this.U,this.N,this.type,this.C]};l.restore=function(a){"number"==typeof a?this.load(a):(this.ja=a[0],this.ya=a[1],this.Za=a[2],this.lb=a[3],this.id=a[4],this.Tf=a[5],this.sb=a[6],this.nc=a[7],this.hc=a[8],this.Nc=a[9]||2,this.sa=a[10]||65535,this.U=a[11]||2,this.N=a[12]||65535,this.type=a[13]||this.lb&7936,this.C=a[14]||(this.Za>>>0)+1)};
function Ac(a,b,c,d){void 0===c&&(c=!!(a.A.Pa&1));a.xd=!1;if(c)if(a.load=a.Cf,a.Vh=a.Sk,a.Pb=a.Hh,a.Qb=a.Jh,void 0===d&&(d=!!(a.A.W&131072)),d)a.load=a.L,a.Pb=a.I,a.Qb=a.K,a.sb=a.nc=3,a.U=a.Nc=2,a.N=a.sa=65535,a.Za=65535,a.C=a.Za+1,a.Nc=a.U,a.hc=-1,a.pe=!1;else{if(!(a.ja&-4))a.Pb=a.wf,a.Qb=a.xf;else if(a.type&4096){6144==(a.type&6656)&&(a.Pb=a.wf);if(a.type&2048||!(a.type&512))a.Qb=a.xf;1024==(a.type&3072)&&(a.Pb==a.Hh&&(a.Pb=a.zj),a.Qb==a.Jh&&(a.Qb=a.Aj),a.xd=!0);b&&6>a.id&&a.ja&-4&&-1!==a.hc&&(c=
function Ac(a,b,c,d){void 0===c&&(c=!!(a.A.Pa&1));a.yd=!1;if(c)if(a.load=a.Cf,a.Vh=a.Sk,a.Pb=a.Hh,a.Qb=a.Jh,void 0===d&&(d=!!(a.A.W&131072)),d)a.load=a.L,a.Pb=a.I,a.Qb=a.K,a.sb=a.nc=3,a.U=a.Nc=2,a.N=a.sa=65535,a.Za=65535,a.C=a.Za+1,a.Nc=a.U,a.hc=-1,a.pe=!1;else{if(!(a.ja&-4))a.Pb=a.wf,a.Qb=a.xf;else if(a.type&4096){6144==(a.type&6656)&&(a.Pb=a.wf);if(a.type&2048||!(a.type&512))a.Qb=a.xf;1024==(a.type&3072)&&(a.Pb==a.Hh&&(a.Pb=a.zj),a.Qb==a.Jh&&(a.Qb=a.Aj),a.yd=!0);b&&6>a.id&&a.ja&-4&&-1!==a.hc&&(c=
a.hc+5,d=a.A.Jb(c),d&1||a.A.Mc(c,d|1))}b&&(a.sb=a.ja&3,a.nc=(a.lb&24576)>>13,80386>a.A.ca||!(a.ext&64)?(a.U=2,a.N=65535):(a.U=4,a.N=-1),a.Nc=a.U,a.sa=a.N)}else a.load=a.Wh,a.Vh=a.Tk,a.Pb=a.Ih,a.Qb=a.Kh,a.sb=a.nc=0,a.hc=-1,a.pe=!1}
function Rc(a){this.ca=a.model||8088;var b=a.stepping;this.od=this.ca+(b?ca(b,16):0);b=0;switch(this.ca){default:b=4772727;break;case 80286:b=6E6;break;case 80386:b=16E6}hc.call(this,a,b);this.qh=61442;this.nd=1792;this.ph=28672;this.ae=4;this.Da=255;this.B=80286<=this.ca?fb:eb;this.ma=Sc;this.th=Tc;this.uh=Uc;this.vh=Vc;if(80186<=this.ca&&(this.ma=Sc.slice(),this.th=Tc.slice(),this.uh=Uc.slice(),this.Da=31,this.ma[15]=Wc,this.ma[96]=Xc,this.ma[97]=Yc,this.ma[98]=Zc,this.ma[99]=Wc,this.ma[100]=Wc,
this.ma[101]=Wc,this.ma[102]=Wc,this.ma[103]=Wc,this.ma[104]=$c,this.ma[105]=ad,this.ma[106]=bd,this.ma[107]=cd,this.ma[108]=dd,this.ma[109]=ed,this.ma[110]=fd,this.ma[111]=gd,this.ma[192]=hd,this.ma[193]=id,this.ma[200]=jd,this.ma[201]=kd,this.ma[241]=ld,this.th[7]=md,this.uh[7]=md,80286<=this.ca)){this.qh=2;this.nd|=28672;this.ae=0;this.ma[15]=nd;this.Zc=od.slice();for(a=0;a<this.Zc.length;a++)this.Zc[a]||(this.Zc[a]=pd);this.ma[84]=rd;this.ma[99]=sd;if(80386<=this.ca){var c;this.ph=0;this.nd|=
196608;this.ma[100]=td;this.ma[101]=ud;this.ma[102]=vd;this.ma[103]=wd;for(c in B)this.Zc[+c]=B[c];80546<=this.od&&80562>=this.od&&(this.Zc[166]=xd,this.Zc[167]=yd)}}this.of=[];this.sh=[];this.Vf=0;kc(this);this.ea.Le=this.ea.Hj=!1;this.xh=0;this.vc=this.R=[];this.da=this.vb=this.pb=this.mf=this.Yd=this.Fa=this.oc=0;zd(this)}Qa(Rc,hc);
function Bb(a){var b;if(a.R===a.vc){a.R=Array(a.mf);a.pf=new p(null,0,0,5,null,a);sb(a.pf,a.Ia);for(b=0;b<a.mf;b++)a.R[b]=a.pf;a.Zd=new p;a.rh=Array(512);a.qf=0}else for(var c=0;c<a.nf.length;c++){b=a.nf[c];var d=a.R[b];512>a.qf&&(a.rh[a.qf++]=d);a.R[b]=a.pf}a.nf=[]}
function Zb(a,b,c,d){var e=(b&-4194304)>>>20,f=a.vc[(a.dd+e&a.Fa)>>>a.da],g=f.Fd(e);if(!(g&1))return d||Ad.call(a,b,!1,c),a.Zd;if(!(g&4)&&3==a.za)return d||Ad.call(a,b,!0,c),a.Zd;var h=(b&4190208)>>>10,g=a.vc[((g&-4096)+h&a.Fa)>>>a.da],k=g.Fd(h);if(!(k&1))return d||Ad.call(a,b,!1,c),a.Zd;if(!(k&4)&&3==a.za)return d||Ad.call(a,b,!0,c),a.Zd;c=a.vc[((k&-4096)+(b&4095)&a.Fa)>>>a.da];if(d)return c;d=b>>>a.da;k=a.R[d];b=b&-4096;var m;0<a.qf?(m=a.rh[--a.qf],m.Pk(b)):m=new p(b,0,0,6);b=m;b.L=c;b.B=f;b.D=
e>>2;b.C=g;b.G=h>>2;db&&Hb&&c.V&&!c.controller&&!c.ge&&!c.he?(b.Ka=c.Ka,b.td=c.td,b.V=c.V,Eb(b,gc)):(b.K=c?Xb(32):0,b.S=c?Xb(96):0,Eb(b,ec));sb(b,a.Ia,k);a.R[d]=b;a.nf.push(d);return b}function Bd(a){a.R!==a.vc&&(a.R=a.vc,a.pf=null,a.nf=null,a.Zd=null)}l=Rc.prototype;l.reset=function(){this.ea.Sb&&oc(this);zd(this);kc(this);this.ea.Yc=!1};
function Rc(a){this.ca=a.model||8088;var b=a.stepping;this.pd=this.ca+(b?ca(b,16):0);b=0;switch(this.ca){default:b=4772727;break;case 80286:b=6E6;break;case 80386:b=16E6}hc.call(this,a,b);this.qh=61442;this.od=1792;this.ph=28672;this.ae=4;this.Da=255;this.B=80286<=this.ca?fb:eb;this.ma=Sc;this.th=Tc;this.uh=Uc;this.vh=Vc;if(80186<=this.ca&&(this.ma=Sc.slice(),this.th=Tc.slice(),this.uh=Uc.slice(),this.Da=31,this.ma[15]=Wc,this.ma[96]=Xc,this.ma[97]=Yc,this.ma[98]=Zc,this.ma[99]=Wc,this.ma[100]=Wc,
this.ma[101]=Wc,this.ma[102]=Wc,this.ma[103]=Wc,this.ma[104]=$c,this.ma[105]=ad,this.ma[106]=bd,this.ma[107]=cd,this.ma[108]=dd,this.ma[109]=ed,this.ma[110]=fd,this.ma[111]=gd,this.ma[192]=hd,this.ma[193]=id,this.ma[200]=jd,this.ma[201]=kd,this.ma[241]=ld,this.th[7]=md,this.uh[7]=md,80286<=this.ca)){this.qh=2;this.od|=28672;this.ae=0;this.ma[15]=nd;this.Zc=od.slice();for(a=0;a<this.Zc.length;a++)this.Zc[a]||(this.Zc[a]=pd);this.ma[84]=rd;this.ma[99]=sd;if(80386<=this.ca){var c;this.ph=0;this.od|=
196608;this.ma[100]=td;this.ma[101]=ud;this.ma[102]=vd;this.ma[103]=wd;for(c in B)this.Zc[+c]=B[c];80546<=this.pd&&80562>=this.pd&&(this.Zc[166]=xd,this.Zc[167]=yd)}}this.of=[];this.sh=[];this.Vf=0;kc(this);this.ea.Le=this.ea.Hj=!1;this.xh=0;this.vc=this.R=[];this.da=this.vb=this.pb=this.mf=this.Yd=this.Fa=this.oc=0;zd(this)}Qa(Rc,hc);
function Bb(a){var b;if(a.R===a.vc){a.R=Array(a.mf);a.pf=new q(null,0,0,5,null,a);sb(a.pf,a.Ia);for(b=0;b<a.mf;b++)a.R[b]=a.pf;a.Zd=new q;a.rh=Array(512);a.qf=0}else for(var c=0;c<a.nf.length;c++){b=a.nf[c];var d=a.R[b];512>a.qf&&(a.rh[a.qf++]=d);a.R[b]=a.pf}a.nf=[]}
function Zb(a,b,c,d){var e=(b&-4194304)>>>20,f=a.vc[(a.dd+e&a.Fa)>>>a.da],g=f.Fd(e);if(!(g&1))return d||Ad.call(a,b,!1,c),a.Zd;if(!(g&4)&&3==a.za)return d||Ad.call(a,b,!0,c),a.Zd;var h=(b&4190208)>>>10,g=a.vc[((g&-4096)+h&a.Fa)>>>a.da],k=g.Fd(h);if(!(k&1))return d||Ad.call(a,b,!1,c),a.Zd;if(!(k&4)&&3==a.za)return d||Ad.call(a,b,!0,c),a.Zd;c=a.vc[((k&-4096)+(b&4095)&a.Fa)>>>a.da];if(d)return c;d=b>>>a.da;k=a.R[d];b=b&-4096;var m;0<a.qf?(m=a.rh[--a.qf],m.Pk(b)):m=new q(b,0,0,6);b=m;b.L=c;b.B=f;b.D=
e>>2;b.C=g;b.G=h>>2;db&&Hb&&c.V&&!c.controller&&!c.ge&&!c.he?(b.Ka=c.Ka,b.ud=c.ud,b.V=c.V,Eb(b,gc)):(b.K=c?Xb(32):0,b.S=c?Xb(96):0,Eb(b,ec));sb(b,a.Ia,k);a.R[d]=b;a.nf.push(d);return b}function Bd(a){a.R!==a.vc&&(a.R=a.vc,a.pf=null,a.nf=null,a.Zd=null)}l=Rc.prototype;l.reset=function(){this.ea.Sb&&oc(this);zd(this);kc(this);this.ea.Yc=!1};
function Cd(a,b){var c;switch(b){case 0:c=a.J;break;case 1:c=a.G;break;case 2:c=a.M;break;case 3:c=a.D;break;case 4:c=w(a);break;case 5:c=a.K;break;case 6:c=a.I;break;case 7:c=a.H}return c}function Dd(a,b,c){switch(b){case 0:a.J=c;break;case 1:a.G=c;break;case 2:a.M=c;break;case 3:a.D=c;break;case 4:v(a,c);break;case 5:a.K=c;break;case 6:a.I=c;break;case 7:a.H=c}}
function zd(a){a.J=0;a.D=0;a.G=0;a.M=0;a.Nb=0;a.K=0;a.I=0;a.H=0;a.Hb=!1;a.ua=a.Ga=0;a.oa=0;a.wh=0;a.X=0;a.Pa=65520;a.Ab=0;a.xc=1023;a.W=a.Cb=0;a.Hd=a.Kd=a.rd=a.Id=0;a.fc=-1;a.Gc=a.ic=-1;a.Dd=a.ka=-1;a.Ba=new zc(a,1,"CS");a.xa=new zc(a,2,"DS");a.pa=new zc(a,2,"ES");a.S=new zc(a,3,"SS");v(a,0);Ec(a,0);if(80386<=a.ca){switch(a.od){case 80562:case 80563:a.M=771;break;case 80578:a.M=772;break;case 80594:a.M=773;break;case 80595:case 80596:a.M=776}a.Pa=16;a.Ah=0;a.qd=0;a.dd=0;a.qb=[0,0,0,0,null,null,0,
function zd(a){a.J=0;a.D=0;a.G=0;a.M=0;a.Nb=0;a.K=0;a.I=0;a.H=0;a.Hb=!1;a.ua=a.Ga=0;a.oa=0;a.wh=0;a.X=0;a.Pa=65520;a.Ab=0;a.xc=1023;a.W=a.Cb=0;a.Hd=a.Kd=a.sd=a.Id=0;a.fc=-1;a.Gc=a.ic=-1;a.Dd=a.ka=-1;a.Ba=new zc(a,1,"CS");a.xa=new zc(a,2,"DS");a.pa=new zc(a,2,"ES");a.S=new zc(a,3,"SS");v(a,0);Ec(a,0);if(80386<=a.ca){switch(a.pd){case 80562:case 80563:a.M=771;break;case 80578:a.M=772;break;case 80594:a.M=773;break;case 80595:case 80596:a.M=776}a.Pa=16;a.Ah=0;a.rd=0;a.dd=0;a.qb=[0,0,0,0,null,null,0,
0];a.rf=[null,null,null,null,null,null,0,0];a.Ta=new zc(a,2,"FS");a.Xa=new zc(a,2,"GS");Bd(a)}a.Yf=new zc(a,0,"NULL");a.va=a.xa;a.rb=a.S;a.L=a.wa=0;a.F=a.C=-1;a.Eb=a.Yf;a.Ea=0;if(80286>a.ca)Pc(a,0,65535);else{a.ub=0;a.wc=65535;a.Zb=new zc(a,5,"LDT",!0);a.ia=new zc(a,4,"TSS",!0);a.Oa=new zc(a,6,"VER",!0);Pc(a,65520,61440);var b,c=A(a);b=a.Ba;var d=-65536;80386>b.A.ca&&(d&=16777215);b=b.ya=d;a.Y=b+c|0;a.Wf=(b>>>0)+(a.Ba.Za>>>0)+1}Nc(a,0);Gc(a)}
function Ed(a){2==a.Nc?(a.zh=a.ga,a.Bb=Fd,a.Gb=Gd,a.yc=Hd,2==a.U?(a.ba=Id,a.qa=Jd,a.Ja=Kd):(a.ba=Ld,a.qa=Md,a.Ja=Nd)):(a.zh=a.fa,a.Bb=Od,a.Gb=Pd,a.yc=Qd,2==a.U?(a.ba=Rd,a.qa=Sd,a.Ja=Td):(a.ba=Ud,a.qa=Vd,a.Ja=Wd))}function Hc(a,b){a.U!=b&&(a.wa|=1024,a.U=b,a.N=2==b?65535:-1,Xd(a))}function Xd(a){2==a.U?(a.fb=32768,a.Tb=a.ga,a.Xb=a.bb,2==a.Nc?(a.ba=Id,a.qa=Jd,a.Ja=Kd):(a.ba=Rd,a.qa=Sd,a.Ja=Td)):(a.fb=-2147483648,a.Tb=a.fa,a.Xb=a.Va,2==a.Nc?(a.ba=Ld,a.qa=Md,a.Ja=Nd):(a.ba=Ud,a.qa=Vd,a.Ja=Wd))}
function Yd(a){a.Nc=a.Ba.Nc;a.sa=a.Ba.sa;Ed(a);a.U=a.Ba.U;a.N=a.Ba.N;Xd(a);a.wa&=-3073}l.Sh=function(){var a=this.J+this.D+this.G+this.M+w(this)+this.K+this.I+this.H|0;return a=a+A(this)+this.Ba.ja+this.xa.ja+this.S.ja+this.pa.ja+Mc(this)|0};function Zd(a,b,c){void 0===a.of[b]&&(a.of[b]=[]);a.of[b].push(c)}function $d(a,b){var c=a.sh[b];null!=c&&(c(--a.Vf),delete a.sh[b])}
function ae(a,b){for(var c=a.qb[7],d=c>>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.qb[e],g=g&~(d>>2&3);if(b){var g=a.R[g>>>a.da],h=a;f?0===g.he++&&(h&&(g.A=h),cc(g,bc,!1)):0===g.ge++&&(h&&(g.A=h),$b(g,bc,!1))}else g=a.R[g>>>a.da],f?0===--g.he&&(f=g,f.Yb=f.I?f.ha:f.kf,f.Fe=f.I?f.aa:f.oh,f.Ee=f.I?f.la:f.oa):0===--g.ge&&(f=g,f.Wb=f.Ed,f.ye=f.ef,f.Fd=f.ih)}c>>=2;d>>=4}}
function Yb(a,b,c,d){if(!(a.L&8192)&&a.qb[7]&255){c--;var e=a.qb[7],f=e>>16;d=d?1:0==d?3:0;for(var g=0;4>g;g++){if(e&3&&(f&3)==d){var h=f>>2;if(b+c>=a.qb[g]&&b<=a.qb[g]+h){a.qb[6]|=1<<g;a.Ea|=2;break}}e>>=2;f>>=4}}}function Gc(a,b,c){void 0===b&&(b=!!(a.Pa&1));void 0===c&&(c=!!(a.W&131072));a.vh=b&&!c?be:Vc;Ac(a.Ba,!1,b,c);Ac(a.xa,!1,b,c);Ac(a.S,!1,b,c);Ac(a.pa,!1,b,c);80386<=a.ca&&(Ac(a.Ta,!1,b,c),Ac(a.Xa,!1,b,c));Yd(a)}
l.save=function(){var a=new ce(this);C(a,0,[this.J,this.D,this.G,this.M,w(this),this.K,this.I,this.H]);var b=A(this),c=this.Ba.save(),d=this.xa.save(),e=this.S.save(),f=this.pa.save(),g;null!=this.ub?(g=[this.Pa,this.ub,this.wc,this.Ab,this.xc,this.Zb.save(),this.ia.save(),this.Cb],80386<=this.ca&&(g.push(this.Ah),g.push(this.qd),g.push(this.dd),g.push(this.qb),g.push(this.rf))):g=null;b=[b,c,d,e,f,g,Mc(this)];80386<=this.ca&&(b.push(this.Ta.save()),b.push(this.Xa.save()));C(a,1,b);C(a,2,[this.va.Tf,
this.rb.Tf,this.L,this.wa,this.Ea,this.F,this.C]);C(a,3,[0,this.$c,this.T.Ad]);b=this.ha;c=!!(this.Pa&-2147483648);d=0;e=[];(f=!b.G&&b.aa==b.Fa)||xb(b,!0);for(g=0;g<b.H;g++){var h=b.R[g];if(c&&h.type!=Gb||h.Ha||h.Oh){e[d++]=g;var k=d++;a:if(h=h.save()){for(var m=0,q=0,x=[];m<h.length;){for(var r=h[m],z=m+1;z<h.length&&h[z]===r;)z++;x[q++]=z-m;x[q++]=r;m=z}if(x.length<h.length){h=x;break a}}e[k]=h}}f||xb(b,!1);e[d]=f;C(a,4,e);return a.data()};
l.restore=function(a){var b=a[0];this.J=b[0];this.D=b[1];this.G=b[2];this.M=b[3];var c=b[4];this.K=b[5];this.I=b[6];this.H=b[7];b=a[1];this.Ba.restore(b[1]);this.xa.restore(b[2]);this.S.restore(b[3]);this.pa.restore(b[4]);var d=b[5];d&&d.length&&(this.Pa=d[0],this.ub=d[1],this.wc=d[2],this.Ab=d[3],this.xc=d[4],this.Zb.restore(d[5]),this.ia.restore(d[6]),this.Cb=d[7],80386<=this.ca&&(this.Ah=d[8],this.qd=d[9],this.dd=d[10],this.qb=d[11],this.rf=d[12]),Gc(this));Nc(this,b[6]);var d=!1,e;a:{e=this.ha;
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){for(var m=0,q=Array(e.ha),x=0;x<k.length-1;)for(var r=k[x++],z=k[x++];r--;)q[m++]=z;k=q}m=e.R[h];if(!m||!m.restore(k)){n("Unable to restore memory block "+h);e=!1;break a}}void 0!==f[g]&&xb(e,f[g]);e=!0}e&&(Pc(this,b[0],this.Ba.ja),v(this,c),Ec(this,this.S.ja),80386<=this.ca&&(this.Ta.restore(b[7]),this.Xa.restore(b[8])),d=!0);b=a[2];this.va=null!=b[0]&&de(this,b[0])||this.xa;this.rb=null!=b[1]&&de(this,b[1])||this.S;
l.save=function(){var a=new ce(this);C(a,0,[this.J,this.D,this.G,this.M,w(this),this.K,this.I,this.H]);var b=A(this),c=this.Ba.save(),d=this.xa.save(),e=this.S.save(),f=this.pa.save(),g;null!=this.ub?(g=[this.Pa,this.ub,this.wc,this.Ab,this.xc,this.Zb.save(),this.ia.save(),this.Cb],80386<=this.ca&&(g.push(this.Ah),g.push(this.rd),g.push(this.dd),g.push(this.qb),g.push(this.rf))):g=null;b=[b,c,d,e,f,g,Mc(this)];80386<=this.ca&&(b.push(this.Ta.save()),b.push(this.Xa.save()));C(a,1,b);C(a,2,[this.va.Tf,
this.rb.Tf,this.L,this.wa,this.Ea,this.F,this.C]);C(a,3,[0,this.$c,this.T.Bd]);b=this.ha;c=!!(this.Pa&-2147483648);d=0;e=[];(f=!b.G&&b.aa==b.Fa)||xb(b,!0);for(g=0;g<b.H;g++){var h=b.R[g];if(c&&h.type!=Gb||h.Ha||h.Oh){e[d++]=g;var k=d++;a:if(h=h.save()){for(var m=0,p=0,x=[];m<h.length;){for(var r=h[m],z=m+1;z<h.length&&h[z]===r;)z++;x[p++]=z-m;x[p++]=r;m=z}if(x.length<h.length){h=x;break a}}e[k]=h}}f||xb(b,!1);e[d]=f;C(a,4,e);return a.data()};
l.restore=function(a){var b=a[0];this.J=b[0];this.D=b[1];this.G=b[2];this.M=b[3];var c=b[4];this.K=b[5];this.I=b[6];this.H=b[7];b=a[1];this.Ba.restore(b[1]);this.xa.restore(b[2]);this.S.restore(b[3]);this.pa.restore(b[4]);var d=b[5];d&&d.length&&(this.Pa=d[0],this.ub=d[1],this.wc=d[2],this.Ab=d[3],this.xc=d[4],this.Zb.restore(d[5]),this.ia.restore(d[6]),this.Cb=d[7],80386<=this.ca&&(this.Ah=d[8],this.rd=d[9],this.dd=d[10],this.qb=d[11],this.rf=d[12]),Gc(this));Nc(this,b[6]);var d=!1,e;a:{e=this.ha;
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){for(var m=0,p=Array(e.ha),x=0;x<k.length-1;)for(var r=k[x++],z=k[x++];r--;)p[m++]=z;k=p}m=e.R[h];if(!m||!m.restore(k)){n("Unable to restore memory block "+h);e=!1;break a}}void 0!==f[g]&&xb(e,f[g]);e=!0}e&&(Pc(this,b[0],this.Ba.ja),v(this,c),Ec(this,this.S.ja),80386<=this.ca&&(this.Ta.restore(b[7]),this.Xa.restore(b[8])),d=!0);b=a[2];this.va=null!=b[0]&&de(this,b[0])||this.xa;this.rb=null!=b[1]&&de(this,b[1])||this.S;
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.xd?(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.rd=b):(a.Hd=b,a.rd=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.rd))&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.rd^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.rd)&(a.Kd^a.rd)&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.nd|2261)|b&(a.nd|2261)|a.qh;a.W&256&&(a.Ea|=2,a.L|=4)}
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 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)}
function Ce(a,b,c){var d=0;if(a.Pa&1&&(a.za>a.Cb||a.W&131072)&&a.ia.Ch)for(var e=a.ia.Ch+(b>>>3),d=(1<<c)-1<<(b&7);d&&e<=a.ia.yj&&!(a.Jb(e)&d);)d>>>=8,e++;return d?(t.call(a,13,0),!1):!0}
l.zb=function(a,b,c){var d=!1;switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case "ESP":case "EBP":case "ESI":case "EDI":case "EIP":case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "IP":case "PC":case "CS":case "DS":case "SS":case "ES":case "FS":case "GS":case "CR0":case "CR2":case "CR3":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "V":this.la[b]=c;this.xh++;d=!0;break;default:d=this.parent.zb.call(this,a,b,c)}return d};
function De(a,b,c,d){var e=(d?a.vc:a.R)[(b&a.oc)>>>a.da];e&&5==e.type&&(e=Zb(a,b,!1,!0));if(e){var f=b&a.pb;if(!c||1==c)return e.Ed(f,b);if(2==c)return f<a.pb?e.ef(f,b):e.Ed(f,b)|De(a,b+1,1,d)<<8;if(4==c)return f<a.pb-2?e.ih(f,b):f==a.pb-1?e.ef(f,b)|De(a,b+2,2,d)<<16:e.Ed(f,b)|De(a,b+1,1,d)<<8|De(a,b+2,1,d)<<16|De(a,b+3,1,d)<<24}return null}l.Jb=function(a){return this.R[(a&this.oc)>>>this.da].Wb(a&this.pb,a)};
@ -110,11 +110,11 @@ l.ga=function(a){var b=a&this.pb,c=(a&this.oc)>>>this.da;this.A-=this.B.Lf;if(b<
l.bb=function(a,b){var c=a&this.pb,d=(a&this.oc)>>>this.da;this.A-=this.B.Lf;c<this.pb?this.R[d].Fe(c,b&65535,a):(this.R[d++].Yb(c,b&255,a),this.L&4096||this.R[d&this.Yd].Yb(0,b>>8&255,a+1))};l.Va=function(a,b){var c=a&this.pb,d=(a&this.oc)>>>this.da;this.A-=this.B.Lf;if(c<this.pb-2)this.R[d].Ee(c,b,a);else for(var e=4,f=4-(c&3);e--;){this.R[d].Yb(c++,b&255,a++);if(this.L&4096)break;--f||(d=d+1&this.Yd,c=0);b>>>=8}};function Ee(a,b,c){a.Eb=b;a.La=c&a.sa;a.F=b.Pb(a.La,1);return a.L&1?0:a.Jb(a.F)}
function G(a,b){return Ee(a,a.va,b)}function H(a,b){return Ee(a,a.rb,b)}function Fe(a,b,c){a.Eb=b;a.La=c&a.sa;a.F=b.Pb(a.La,a.U);return a.L&1?0:a.Tb(a.F)}function I(a,b){a.Eb=a.va;a.La=b&a.sa;a.F=a.Eb.Pb(a.La,2);return a.L&1?0:a.ga(a.F)}function K(a,b){a.Eb=a.rb;a.La=b&a.sa;a.F=a.Eb.Pb(a.La,2);return a.L&1?0:a.ga(a.F)}function L(a,b){a.Eb=a.va;a.La=b&a.sa;a.F=a.Eb.Pb(a.La,4);return a.L&1?0:a.fa(a.F)}function M(a,b){a.Eb=a.rb;a.La=b&a.sa;a.F=a.Eb.Pb(a.La,4);return a.L&1?0:a.fa(a.F)}
function Ge(a,b){a.L&2||a.Mc(a.Eb.Qb(a.La,1),b)}function He(a,b){a.L&2||a.bb(a.Eb.Qb(a.La,2),b)}function Ie(a,b){a.L&2||a.Va(a.Eb.Qb(a.La,4),b)}function Ic(a,b,c){return a.Tb(b.Pb(c,a.U))}l.na=function(){var a=ge(this,1),b=this.Jb(this.Y);this.Y=a;return b};function Je(a){var b=ge(a,2),c=a.ga(a.Y);a.Y=b;return c}function N(a){var b=ge(a,a.Nc),c=a.zh(a.Y);a.Y=b;return c}l.Aa=function(){var a=ge(this,this.U),b=this.Tb(this.Y);this.Y=a;return b};
l.O=function(){var a=ge(this,1),b=this.Jb(this.Y)<<24>>24;this.Y=a;return b};function u(a){var b=a.Tb(a.ra);a.ra=a.ra+a.U|0;var c=a.Xf-a.ra|0;0>c&&0<=(a.Xf^a.ra)&&(8088>=a.ca||!a.S.xd&&a.S.Za==a.S.sa||a.S.xd&&!a.S.Za?v(a,a.ra-a.S.ya&a.S.sa):-1>c&&t.call(a,12,0));return b}
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.xd&&a.S.Za==a.S.sa||a.S.xd&&!a.S.Za?(v(a,c-a.S.ya&a.S.sa),c=a.ra):t.call(a,12,0));switch(d){case 1:a.Mc(c,b);break;case 2:a.bb(c,b);break;case 4:a.Va(c,b)}a.ra=c}function y(a,b){var c=a.ra-a.U|0;0>(c-a.$d|0)&&0<=(a.$d^c)&&(8088>=a.ca||!a.S.xd&&a.S.Za==a.S.sa||a.S.xd&&!a.S.Za?(v(a,c-a.S.ya&a.S.sa),c=a.ra):t.call(a,12,0));a.Xb(c,b);a.ra=c}
l.O=function(){var a=ge(this,1),b=this.Jb(this.Y)<<24>>24;this.Y=a;return b};function u(a){var b=a.Tb(a.ra);a.ra=a.ra+a.U|0;var c=a.Xf-a.ra|0;0>c&&0<=(a.Xf^a.ra)&&(8088>=a.ca||!a.S.yd&&a.S.Za==a.S.sa||a.S.yd&&!a.S.Za?v(a,a.ra-a.S.ya&a.S.sa):-1>c&&t.call(a,12,0));return b}
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&&a.S.Za==a.S.sa||a.S.yd&&!a.S.Za?(v(a,c-a.S.ya&a.S.sa),c=a.ra):t.call(a,12,0));switch(d){case 1:a.Mc(c,b);break;case 2:a.bb(c,b);break;case 4:a.Va(c,b)}a.ra=c}function y(a,b){var c=a.ra-a.U|0;0>(c-a.$d|0)&&0<=(a.$d^c)&&(8088>=a.ca||!a.S.yd&&a.S.Za==a.S.sa||a.S.yd&&!a.S.Za?(v(a,c-a.S.ya&a.S.sa),c=a.ra):t.call(a,12,0));a.Xb(c,b);a.ra=c}
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.qd),O(this,"CR3",this.dd))}if(b=this.la.speed)b.textContent=this.ea.Sb&&this.T.zd?this.T.zd.toFixed(2)+"Mhz":"Stopped";this.parent.Xd.call(this,a)};
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&&
(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;
@ -151,7 +151,7 @@ function fg(a,b){a&1<<(b&(2==this.U?15:31))?pe(this):qe(this);this.A-=-1===this.
function jg(a,b){if(-1===this.F)return fg.call(this,a,b);var c=this.U<<3;if(b>=c||b<-c)a=Fe(this,this.Eb,this.La+(b>>(2==this.U?4:5))*this.U);b=1<<(b&(2==this.U?15:31));a&b?pe(this):qe(this);this.A-=6;this.L|=2;return a}function kg(a,b){if(-1===this.F)return gg.call(this,a,b);var c=this.U<<3;if(b>=c||b<-c)a=Fe(this,this.Eb,this.La+(b>>(2==this.U?4:5))*this.U);b=1<<(b&(2==this.U?15:31));a&b?pe(this):qe(this);this.A-=8;return a^b}
function lg(a,b){if(-1===this.F)return hg.call(this,a,b);var c=this.U<<3;if(b>=c||b<-c)a=Fe(this,this.Eb,this.La+(b>>(2==this.U?4:5))*this.U);b=1<<(b&(2==this.U?15:31));a&b?pe(this):qe(this);this.A-=8;return a&~b}function mg(a,b){if(-1===this.F)return ig.call(this,a,b);var c=this.U<<3;if(b>=c||b<-c)a=Fe(this,this.Eb,this.La+(b>>(2==this.U?4:5))*this.U);b=1<<(b&(2==this.U?15:31));a&b?pe(this):qe(this);this.A-=8;return a|b}
function ng(a,b){ie(this,a,b,a-b|0,191,!0);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.Ag:this.B.yb;this.L|=2;return a}function og(a,b){ie(this,a,b,a-b|0,this.fb|63,!0);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.Ag:this.B.yb;this.L|=2;return a}
function pg(a){if(this.pd){var b=this.pd,c=this.wh,d=this.X,e=d>>3&7;b.B=d&7;var f=(3>(d>>6&3)?0:48)+e;(217==c||219==c)&&52<=f&&(f=e<<4|b.B);if(e=Uf[c][f]){if(0>Vf.indexOf(e)){var f=b.A,g=f.Dd;8087==b.ca&&(f.wa&16&&g++,f.wa&32&&g++);b.ha=f.Ba.ja;b.L=g-f.Ba.ya;-1!==f.F&&(b.aa=f.Eb.ja,b.R=f.F-f.Eb.ya);b.X=(c&7)<<8|d}e.call(b)}}this.A-=-1===this.F?2:8;return a}function qg(a){if(80186>this.ca)return R.call(this,a);t.call(this,13,0);return a}function md(a){t.call(this,6);return a}
function pg(a){if(this.qd){var b=this.qd,c=this.wh,d=this.X,e=d>>3&7;b.B=d&7;var f=(3>(d>>6&3)?0:48)+e;(217==c||219==c)&&52<=f&&(f=e<<4|b.B);if(e=Uf[c][f]){if(0>Vf.indexOf(e)){var f=b.A,g=f.Dd;8087==b.ca&&(f.wa&16&&g++,f.wa&32&&g++);b.ha=f.Ba.ja;b.L=g-f.Ba.ya;-1!==f.F&&(b.aa=f.Eb.ja,b.R=f.F-f.Eb.ya);b.X=(c&7)<<8|d}e.call(b)}}this.A-=-1===this.F?2:8;return a}function qg(a){if(80186>this.ca)return R.call(this,a);t.call(this,13,0);return a}function md(a){t.call(this,6);return a}
function R(a){pd.call(this);return a}function rg(a,b){var c=sg.call(this,this.O(),b);80386>this.ca&&(this.A-=12);return c}function tg(a,b){var c;a=this.Aa();c=2==this.U?sg.call(this,a,b):ug.call(this,a,b);80386>this.ca&&(this.A-=12);return c}function vg(a,b){var c=!1;0>b&&(b=-b|0,c=!c);0>a&&(a=-a|0,c=!c);wg.call(this,a,b);c&&(this.ua=~this.ua+1|0,this.Ga=~this.Ga+(this.ua?0:1)|0)}
function sg(a,b){var c=(a<<16>>16)*(b<<16>>16)|0;32767<c||-32768>c?(pe(this),re(this)):(qe(this),se(this));this.A-=-1===this.F?9:12;return c&65535}function ug(a,b){vg.call(this,a,b);this.Ga!=this.ua>>31?(pe(this),re(this)):(qe(this),se(this));this.A-=-1===this.F?9:12;return this.ua}function xg(a,b){this.A-=14+(-1===this.F?0:2);ye(this);-1!==this.Oa.load(b)&&this.Oa.nc>=this.za&&this.Oa.nc>=(b&3)&&(Ae(this),a=this.Oa.lb&-256,2<this.U&&(a|=(this.Oa.ext&-65281)<<16));return a}
function yg(a,b){if(-1===this.F)return pd.call(this),a;Kc(this,this.ga(this.F+this.U));this.A-=this.B.we;return b}function zg(){this.A-=this.B.Fi;return this.F}function Ag(a,b){if(-1===this.F)return pd.call(this),a;Lc(this,this.ga(this.F+this.U));this.A-=this.B.we;return b}function Bg(a,b){if(-1===this.F)return pd.call(this),a;var c=this.ga(this.F+this.U);this.Ta.load(c);this.A-=this.B.we;return b}
@ -173,7 +173,7 @@ function lh(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;F(this,a,-2147483648,d&1)
function Ih(a,b){this.Gc=this.Ba.ja;this.ic=this.S.ja;this.ka=this.ra;var c=A(this),d=this.U;null!=Pc(this,a,b,!0)&&(Jc(this,this.Gc,d,2),Jc(this,c,d,d));this.Gc=this.ic=this.ka=-1}function Jh(a,b,c){this.A-=this.B.xi+(c||0);c=Mc(this);var d=this.Ba.ja,e=A(this);a=this.Ba.Vh(a);-1!==a&&(y(this,c),y(this,d),y(this,e),null!=b&&y(this,b),this.fc=-1,fe(this,a))}
function Kh(a){this.ic=this.S.ja;this.ka=this.ra;var b=u(this),c=u(this);a&&v(this,w(this)+a);Pc(this,b,c,!1)&&(a&&v(this,w(this)+a),Lh.call(this,this.xa),Lh.call(this,this.pa),80386<=this.ca&&(Lh.call(this,this.Ta),Lh.call(this,this.Xa)));2==a&&this.Vf&&$d(this,this.Y);this.ic=this.ka=-1}function Mh(){8086==this.ca?(this.fc=-1,Jh.call(this,0,null,2)):t.call(this,0,null,2)}function Le(a,b){this.fc=a;void 0===b&&(b=11);Jh.call(this,a,null,b)}
function t(a,b,c,d){var e=!1;this.ea.Le?80186<=this.ca&&(e=!0,0>this.fc?(-1!=this.Gc&&(this.Gc!==this.Ba.ja&&(this.Ba.sb=this.Gc&3,ee(this,this.Gc)),this.Gc=-1),this.Dd!==this.Y&&fe(this,this.Dd),-1!=this.ic&&(this.ic!==this.S.ja&&Ec(this,this.ic),this.ic=-1),-1!==this.ka&&(this.ka!==this.ra&&v(this,this.Nb&~this.S.sa|this.ka-this.S.ya),this.ka=-1)):8!=this.fc?(b=0,a=8):(b=0,a=-1,zd(this),e=d=!1)):fe(this,this.Dd);var f=a,g=b,h=De(this,this.Y);204!=h||this.xc||(d=!1);this.W&131072&&(6==f&&99==h||
13==f&&205==h)&&(d=!1);983040<=this.Y&&1048575>=this.Y&&(d=!1);if(d){var k=this.ea.Sb,f="Fault 0x"+ea(f,2)+(null!=g?" (0x"+ea(g,4)+")":"")+" on opcode "+("0x"+ea(h,2));d&&k&&(f+=" (blocked)");this.Ca(f);oc(this)}if(d&&e)throw-1;if(e)throw this.fc=a,Jh.call(this,a,b,c),this.Dd=this.Y,this.L=1==a?this.L|8192:this.L|4096,a;}function Ad(a,b,c){this.qd=a;a=0;b&&(a|=1);c&&(a|=2);3==this.za&&(a|=4);t.call(this,14,a)}
13==f&&205==h)&&(d=!1);983040<=this.Y&&1048575>=this.Y&&(d=!1);if(d){var k=this.ea.Sb,f="Fault 0x"+ea(f,2)+(null!=g?" (0x"+ea(g,4)+")":"")+" on opcode "+("0x"+ea(h,2));d&&k&&(f+=" (blocked)");this.Ca(f);oc(this)}if(d&&e)throw-1;if(e)throw this.fc=a,Jh.call(this,a,b,c),this.Dd=this.Y,this.L=1==a?this.L|8192:this.L|4096,a;}function Ad(a,b,c){this.rd=a;a=0;b&&(a|=1);c&&(a|=2);3==this.za&&(a|=4);t.call(this,14,a)}
function Lh(a){var b=a.lb&7680;a.ja&65528&&(6144==b||7168==b||7168>b&&a.nc<this.za&&a.nc<(a.ja&3))&&a.load(0)}
function Fd(a){var b,c;switch((this.X=this.na())&199){case 0:c=G(this,this.D+this.I);this.A-=this.B.Ic;break;case 1:c=G(this,this.D+this.H);this.A-=this.B.Jc;break;case 2:c=H(this,this.K+this.I);this.A-=this.B.Jc;break;case 3:c=H(this,this.K+this.H);this.A-=this.B.Ic;break;case 4:c=G(this,this.I);this.A-=this.B.kc;break;case 5:c=G(this,this.H);this.A-=this.B.kc;break;case 6:c=G(this,N(this));this.A-=this.B.bd;break;case 7:c=G(this,this.D);this.A-=this.B.kc;break;case 64:c=G(this,this.D+this.I+this.O());
this.A-=this.B.Kb;break;case 65:c=G(this,this.D+this.H+this.O());this.A-=this.B.Lb;break;case 66:c=H(this,this.K+this.I+this.O());this.A-=this.B.Lb;break;case 67:c=H(this,this.K+this.H+this.O());this.A-=this.B.Kb;break;case 68:c=G(this,this.I+this.O());this.A-=this.B.Sa;break;case 69:c=G(this,this.H+this.O());this.A-=this.B.Sa;break;case 70:c=H(this,this.K+this.O());this.A-=this.B.Sa;break;case 71:c=G(this,this.D+this.O());this.A-=this.B.Sa;break;case 128:c=G(this,this.D+this.I+N(this));this.A-=this.B.Kb;
@ -295,7 +295,7 @@ function(){var a=this.J&-256,b;b=N(this);b=this.Jb(this.va.Pb(b,1));this.J=a|b;t
1));this.Mc(this.pa.Qb(this.H&c,1),e);e=this.W&1024?-1:1;this.I=this.I&~c|this.I+e&c;this.H=this.H&~c|this.H+e&c;this.A-=d;this.G=this.G&~c|this.G-b&c;a&&(he(this),this.L|=256)}},function(){var a=1,b=0,c=this.sa,d=this.B.Mg;this.wa&192&&(a=this.G&c,b=1,d=this.B.Og,this.wa&256||(this.A-=this.B.Ng));if(a--){var e=Ic(this,this.va,this.I&c);this.Xb(this.pa.Qb(this.H&c,this.U),e);e=this.W&1024?-this.U:this.U;this.I=this.I&~c|this.I+e&c;this.H=this.H&~c|this.H+e&c;this.A-=d;this.G=this.G&~c|this.G-b&c;
a&&(he(this),this.L|=256)}},function(){var a=1,b=0,c=this.sa,d=this.B.xg;this.wa&192&&(a=this.G&c,b=1,d=this.B.zg,this.wa&256||(this.A-=this.B.yg));if(a--){var e=Ee(this,this.va,this.I),f=Ee(this,this.pa,this.H);this.C=this.F;ng.call(this,e,f);e=this.W&1024?-1:1;this.I=this.I&~c|this.I+e&c;this.H=this.H&~c|this.H+e&c;this.G=this.G&~c|this.G-b&c;this.A-=d-this.B.yb;a&&me(this)==(this.wa&64)&&(he(this),this.L|=256)}},function(){var a=1,b=0,c=this.sa,d=this.B.xg;this.wa&192&&(a=this.G&c,b=1,d=this.B.zg,
this.wa&256||(this.A-=this.B.yg));if(a--){var e=Fe(this,this.va,this.I&c),f=Fe(this,this.pa,this.H&c);this.C=this.F;og.call(this,e,f);e=this.W&1024?-this.U:this.U;this.I=this.I&~c|this.I+e&c;this.H=this.H&~c|this.H+e&c;this.G=this.G&~c|this.G-b&c;this.A-=d-this.B.yb;a&&me(this)==(this.wa&64)&&(he(this),this.L|=256)}},function(){F(this,this.J&this.na(),128);this.A-=this.B.Sd},function(){F(this,this.J&this.Aa(),this.fb);this.A-=this.B.Sd},function(){var a=1,b=0,c=this.sa,d=this.B.Xg;this.wa&192&&(a=
this.G&c,b=1,d=this.B.Zg,this.wa&256||(this.A-=this.B.Yg));if(a--){var e=this.J;this.Mc(this.pa.Qb(this.H&c,1),e);this.G=this.G&~c|this.G-b&c;80546<=this.od&&80564>=this.od&&!(this.wa&2048)!=(103!=this.Jb(this.Y))&&(c^=-65536);this.H=this.H&~c|this.H+(this.W&1024?-1:1)&c;this.A-=d;a&&(he(this),this.L|=256)}},function(){var a=1,b=0,c=this.sa,d=this.B.Xg;this.wa&192&&(a=this.G&c,b=1,d=this.B.Zg,this.wa&256||(this.A-=this.B.Yg));if(a--){var e=this.J;this.Xb(this.pa.Qb(this.H&c,this.U),e);this.H=this.H&
this.G&c,b=1,d=this.B.Zg,this.wa&256||(this.A-=this.B.Yg));if(a--){var e=this.J;this.Mc(this.pa.Qb(this.H&c,1),e);this.G=this.G&~c|this.G-b&c;80546<=this.pd&&80564>=this.pd&&!(this.wa&2048)!=(103!=this.Jb(this.Y))&&(c^=-65536);this.H=this.H&~c|this.H+(this.W&1024?-1:1)&c;this.A-=d;a&&(he(this),this.L|=256)}},function(){var a=1,b=0,c=this.sa,d=this.B.Xg;this.wa&192&&(a=this.G&c,b=1,d=this.B.Zg,this.wa&256||(this.A-=this.B.Yg));if(a--){var e=this.J;this.Xb(this.pa.Qb(this.H&c,this.U),e);this.H=this.H&
~c|this.H+(this.W&1024?-this.U:this.U)&c;this.G=this.G&~c|this.G-b&c;this.A-=d;a&&(he(this),this.L|=256)}},function(){var a=1,b=0,c=this.sa,d=this.B.Eg;this.wa&192&&(a=this.G&c,b=1,d=this.B.Gg,this.wa&256||(this.A-=this.B.Fg));if(a--){var e=this.Jb(this.va.Pb(this.I&c,1));this.J=this.J&-256|e;this.I=this.I&~c|this.I+(this.W&1024?-1:1)&c;this.G=this.G&~c|this.G-b&c;this.A-=d;a&&(he(this),this.L|=256)}},function(){var a=1,b=0,c=this.sa,d=this.B.Eg;this.wa&192&&(a=this.G&c,b=1,d=this.B.Gg,this.wa&256||
(this.A-=this.B.Fg));if(a--){var e=Ic(this,this.va,this.I&c);this.J=this.J&~this.N|e;this.I=this.I&~c|this.I+(this.W&1024?-this.U:this.U)&c;this.G=this.G&~c|this.G-b&c;this.A-=d;a&&(he(this),this.L|=256)}},function(){var a=1,b=0,c=this.sa,d=this.B.Rg;this.wa&192&&(a=this.G&c,b=1,d=this.B.Tg,this.wa&256||(this.A-=this.B.Sg));if(a--){var e=this.J&255,f=Ee(this,this.pa,this.H);this.C=this.F;ng.call(this,e,f);this.H=this.H&~c|this.H+(this.W&1024?-1:1)&c;this.G=this.G&~c|this.G-b&c;this.A-=d-this.B.yb;
a&&me(this)==(this.wa&64)&&(he(this),this.L|=256)}},function(){var a=1,b=0,c=this.sa,d=this.B.Rg;this.wa&192&&(a=this.G&c,b=1,d=this.B.Tg,this.wa&256||(this.A-=this.B.Sg));if(a--){var e=this.J&this.N,f=Fe(this,this.pa,this.H&c);this.C=this.F;og.call(this,e,f);this.H=this.H&~c|this.H+(this.W&1024?-this.U:this.U)&c;this.G=this.G&~c|this.G-b&c;this.A-=d-this.B.yb;a&&me(this)==(this.wa&64)&&(he(this),this.L|=256)}},function(){this.J=this.J&-256|this.na();this.A-=this.B.Mb},function(){this.G=this.G&-256|
@ -317,7 +317,7 @@ c=e<<1&65535);F(this,c,32768,e&32768,(c^e)&32768)}return c},function(a,b){var c=
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));
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.od&&68657152==
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==
this.J&&129==a&&(this.Ga=0);this.Ga?(pe(this),re(this)):(qe(this),se(this));this.Hb=!0;this.A-=-1===this.F?this.B.Qi:this.B.Pi;this.L|=2;return a},function(a,b){var c;2==this.U?(b=this.J&65535,c=(b<<16>>16)*(a<<16>>16)|0,this.ua=c&65535,this.Ga=c>>16&65535,c=32767<c||-32768>c):(vg.call(this,a,this.J),c=this.Ga!=this.ua>>31);c?(pe(this),re(this)):(qe(this),se(this));this.Hb=!0;this.A-=-1===this.F?this.B.vi:this.B.ui;this.L|=2;return a},function(a,b){if(2==this.U){if(!a)return Mh.call(this),a;b=65536*
(this.M&65535)+(this.J&65535);var c=b/a;if(65536<=c)return Mh.call(this),a;this.ua=c&65535;this.Ga=b%a&65535}else{if(!Ah.call(this,this.J,this.M,a))return Mh.call(this),a;this.ua|=0;this.Ga|=0}this.Hb=!0;this.A-=-1===this.F?this.B.mi:this.B.li;this.L|=2;return a},function(a,b){if(2==this.U){if(!a)return Mh.call(this),a;var c=a<<16>>16,d=(b=this.M<<16|this.J&65535)/c|0;if(d!=d<<16>>16||8086==this.ca&&-32768==d)return Mh.call(this),a;this.ua=d&65535;this.Ga=b%c&65535}else{var c=this.J,d=this.M,e=a,
f=0,g=0;0>e&&(e=-e|0,f=1-f);0>d&&(c=-c|0,d=~d+(c?0:1)|0,g=1,f=1-f);!Ah.call(this,c,d,e)||this.ua>2147483647+f||this.Ga>2147483647+g?c=!1:(f&&(this.ua=-this.ua),g&&(this.Ga=-this.Ga),c=!0);if(!c)return Mh.call(this),a;this.ua|=0;this.Ga|=0}this.Hb=!0;this.A-=-1===this.F?this.B.ri:this.B.pi;this.L|=2;return a}],Tc=[function(a){var b=a+1|0;ie(this,a,1,b,190);this.A-=-1===this.F?this.B.Xe:this.B.We;return b&255},function(a){var b=a-1|0;ie(this,a,1,b,190,!0);this.A-=-1===this.F?this.B.Xe:this.B.We;return b&
@ -328,8 +328,8 @@ od[5]=function(){this.za?t.call(this,13,0,0,!0):(Be(this,this.ga(2054)),this.H=t
this.Jb(2140)<<16,this.xc=this.Ab+this.ga(2142),Dc(this.Zb,2132,this.ga(2076)),Dc(this.ia,2144,this.ga(2070)),this.A-=195)};od[6]=function(){this.za?t.call(this,13,0):(this.Pa&=-9,this.A-=2)};od[11]=Wc;od[166]=Wc;od[255]=Wc;var B=[];B[5]=Wc;
B[7]=function(){if(this.za)t.call(this,13,0,0,!0);else{var a=this.pa.Pb(this.H&this.sa,204);if(-1!==a){this.Pa=this.fa(a);Gc(this);this.Pa&-2147483648?Bb(this):Bd(this);var b=this.fa(a+168),c=(b&24576)>>13;Nc(this,this.fa(a+4),c);this.ub=this.fa(a+112);this.wc=this.ub+this.fa(a+116);this.Ab=this.fa(a+100);this.xc=this.Ab+this.fa(a+104);Cc(this.Zb,this.fa(a+56),this.fa(a+120),this.fa(a+124),this.fa(a+128));Cc(this.ia,this.fa(a+52),this.fa(a+84),this.fa(a+88),this.fa(a+92));this.H=this.fa(a+12);this.I=
this.fa(a+16);this.K=this.fa(a+20);this.D=this.fa(a+28);this.M=this.fa(a+32);this.G=this.fa(a+36);this.J=this.fa(a+40);Cc(this.Xa,this.fa(a+60),this.fa(a+132),this.fa(a+136),this.fa(a+140));Cc(this.Ta,this.fa(a+64),this.fa(a+144),this.fa(a+148),this.fa(a+152));Cc(this.xa,this.fa(a+68),this.fa(a+156),this.fa(a+160),this.fa(a+164));Cc(this.S,this.fa(a+72),b,this.fa(a+172),this.fa(a+176));Cc(this.Ba,this.fa(a+76),this.fa(a+180),this.fa(a+184),this.fa(a+188));Cc(this.pa,this.fa(a+80),this.fa(a+192),this.fa(a+
196),this.fa(a+200));D(this,this.fa(a+8));v(this,this.fa(a+24))}this.A-=122<<(a&3?1:0)}};B[16]=fi;B[17]=gi;B[18]=hi;B[19]=ii;B[32]=function(){if(this.za)t.call(this,13,0);else{var a,b=this.na();switch((b&56)>>3){case 0:a=this.Pa;break;case 2:a=this.qd;break;case 3:a=this.dd;break;default:pd.call(this);return}Dd(this,b&7,a);this.A-=6}};B[33]=function(){if(this.za)t.call(this,13,0);else{var a=this.na(),b=(a&56)>>3;4==b||5==b?pd.call(this):(Dd(this,a&7,this.qb[b]),this.A-=22)}};
B[34]=function(){if(this.za)t.call(this,13,0);else{var a=this.na(),b=Cd(this,a&7);switch((a&56)>>3){case 0:this.Pa=b;Gc(this);this.Pa&-2147483648?Bb(this):Bd(this);this.A-=10;break;case 2:this.qd=b;this.A-=4;break;case 3:Qc.call(this,b);this.A-=5;break;default:pd.call(this)}}};B[35]=function(){if(this.za)t.call(this,13,0);else{var a=this.na(),b=(a&56)>>3;4==b||5==b?pd.call(this):(a=Cd(this,a&7),a!=this.qb[b]&&(ae(this,!1),this.qb[b]=a,ae(this,!0)),this.A-=4>b?22:14)}};
196),this.fa(a+200));D(this,this.fa(a+8));v(this,this.fa(a+24))}this.A-=122<<(a&3?1:0)}};B[16]=fi;B[17]=gi;B[18]=hi;B[19]=ii;B[32]=function(){if(this.za)t.call(this,13,0);else{var a,b=this.na();switch((b&56)>>3){case 0:a=this.Pa;break;case 2:a=this.rd;break;case 3:a=this.dd;break;default:pd.call(this);return}Dd(this,b&7,a);this.A-=6}};B[33]=function(){if(this.za)t.call(this,13,0);else{var a=this.na(),b=(a&56)>>3;4==b||5==b?pd.call(this):(Dd(this,a&7,this.qb[b]),this.A-=22)}};
B[34]=function(){if(this.za)t.call(this,13,0);else{var a=this.na(),b=Cd(this,a&7);switch((a&56)>>3){case 0:this.Pa=b;Gc(this);this.Pa&-2147483648?Bb(this):Bd(this);this.A-=10;break;case 2:this.rd=b;this.A-=4;break;case 3:Qc.call(this,b);this.A-=5;break;default:pd.call(this)}}};B[35]=function(){if(this.za)t.call(this,13,0);else{var a=this.na(),b=(a&56)>>3;4==b||5==b?pd.call(this):(a=Cd(this,a&7),a!=this.qb[b]&&(ae(this,!1),this.qb[b]=a,ae(this,!0)),this.A-=4>b?22:14)}};
B[36]=function(){if(this.za)t.call(this,13,0);else{var a=this.na(),b=(a&56)>>3;6>b?pd.call(this):(Dd(this,a&7,this.rf[b]),this.A-=12)}};B[38]=function(){if(this.za)t.call(this,13,0);else{var a=this.na(),b=(a&56)>>3;6>b?pd.call(this):(this.rf[b]=Cd(this,a&7),this.A-=12)}};B[128]=function(){var a=this.Aa();oe(this)?(D(this,A(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na};B[129]=function(){var a=this.Aa();oe(this)?this.A-=this.B.Na:(D(this,A(this)+a),this.A-=this.B.Ma)};
B[130]=function(){var a=this.Aa();je(this)?(D(this,A(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na};B[131]=function(){var a=this.Aa();je(this)?this.A-=this.B.Na:(D(this,A(this)+a),this.A-=this.B.Ma)};B[132]=function(){var a=this.Aa();me(this)?(D(this,A(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na};B[133]=function(){var a=this.Aa();me(this)?this.A-=this.B.Na:(D(this,A(this)+a),this.A-=this.B.Ma)};B[134]=function(){var a=this.Aa();je(this)||me(this)?(D(this,A(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na};
B[135]=function(){var a=this.Aa();je(this)||me(this)?this.A-=this.B.Na:(D(this,A(this)+a),this.A-=this.B.Ma)};B[136]=function(){var a=this.Aa();ne(this)?(D(this,A(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na};B[137]=function(){var a=this.Aa();ne(this)?this.A-=this.B.Na:(D(this,A(this)+a),this.A-=this.B.Ma)};B[138]=function(){var a=this.Aa();ke(this)?(D(this,A(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na};B[139]=function(){var a=this.Aa();ke(this)?this.A-=this.B.Na:(D(this,A(this)+a),this.A-=this.B.Ma)};
@ -348,38 +348,38 @@ 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,Im:64,Gm:128,km:192,lc:192,Zf:6},Ii={Hm:16,dm:32,sm: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},fd:"Number of Floppy Drives"};T[5150][0][3]={lc:2,Oc:{0:0,1:2},fd:"Coprocessor"};
T[5150][0][Fi]={lc:48,Oc:{0:0,1:16,2:32,3:48,none:0,tv:16,color:32,mono:48,ega:0,vga:0},fd:"Monitor Type"};T[5150][0][5]={lc:12,Oc:{16:0,32:4,48:8,64:12},fd:"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},fd:"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},fd:"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},fd:"Base Memory (128Kb Increments)"};T[5160.101][0][3]={lc:16,Oc:{0:0,1:16},fd:"Coprocessor"};T[5160.101][1][2]={lc:1,Oc:{0:0,1:1},fd:"Floppy Type"};T[5160.101][1][Ei]=T[5150][0][Ei];T[5160.101][1][Fi]=T[5150][0][Fi];l=S.prototype;
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,Im:64,Gm:128,km:192,lc:192,Zf:6},Ii={Hm:16,dm:32,sm: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,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.pd=kb(a,"FPU");Di(this,3,this.pd?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.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)}};
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.Zl,h.$l]}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.ld,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.jd,d.Tc,d.le,d.Od,d.kd,d.Db,d.qe];C(a,3,[this.xa,b,this.za]);
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.Zl,h.$l]}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]);
C(a,4,[this.Da,this.P,this.Ja,this.oa,this.ma]);this.ca>=Re&&(C(a,5,[this.H,this.S,this.R,this.ua,this.X,this.va]),C(a,6,[this.I[7],this.I,this.da,this.B,this.ra,this.ia]));return a.data()};
l.restore=function(a){var b,c;b=a[0];Array.isArray(b[0])?this.D=b[0]:(this.D[0][0]=b[0],this.D[1][0]=b[1]&15,this.D[0][1]=b[2],this.D[1][1]=b[3]&15);Ui(this);b=a[1];for(c=0;c<this.Ea;c++)Vi(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.pa;c++)Wi(this,c,0===c?32:160,b[0][c]);b=a[3];this.xa=b[0];this.za=b[2];for(c=0;c<this.K.length;c++)Xi(this,c,b[1][c]);b=a[4];this.Da=b[0];this.P=b[1];this.Ja=b[2];this.oa=b[3];this.ma=b[4];if(b=a[5])this.H=b[0],this.S=b[1],this.R=b[2],this.ua=b[3],this.X=b[4],
this.va=b[5];if(b=a[6])this.I=b[1],this.I[7]=b[0],this.da=b[2],this.B=b[3],this.ra=b[4],this.ia=b[5],$i(this);return!0};var dj=[0,null,null,0,Array(4),0];function Vi(a,b,c){var d=a.G[b];d||(d={$b:Array(4)});c=c&&5<=c.length?c:dj;d.Db=c[0];d.bg=c[1];d.Fh=c[2];d.Ib=c[3];d.Uk=b<<2;for(var e=0;e<d.$b.length;e++)ej(d,e,c[4][e]);d.dg=c[5]||0;a.G[b]=d}var fj=[!0,[0,0],[0,0],[0,0],[0,0]];
function ej(a,b,c){var d=a.$b[b];d||(d={sf:[0,0],jc:[0,0],gb:[0,0],hb:[0,0]});c=c&&8==c.length?c:fj;d.Qd=c[0];d.sf[0]=c[1][0];d.sf[1]=c[1][1];d.jc[0]=c[2][0];d.jc[1]=c[2][1];d.gb[0]=c[3][0];d.gb[1]=c[3][1];d.hb[0]=c[4][0];d.hb[1]=c[4][1];d.mode=c[5];d.tf=c[6];d.controller=a;d.Uh=b;gj(d,c[8],c[9]);a.$b[b]=d}function gj(a,b,c,d){"string"==typeof b&&(b=Ua(b));b&&(a.done=null,a.Zl=b.id,a.$l=c,a.yf=b,a.kg=b[c],a.Mf=d)}var hj=[0,Array(4)];
function Wi(a,b,c,d){var e=a.gc[b];e||(e={Sc:[null,null,null,null]});d=d&&8==d.length?d:hj;e.port=c;e.an=b<<3;e.Te=d[0];e.Sc[0]=d[1][0];e.Sc[1]=d[1][1];e.Sc[2]=d[1][2];e.Sc[3]=d[1][3];e.ld=d[2];e.Vc=d[3];e.ac=d[4];e.Cc=d[5];e.Ld=d[6];e.Je=d[7];a.gc[b]=e}var ij=[[0,0],[0,0],[0,0],[0,0]];
function Xi(a,b,c){var d=a.K[b];d||(d={jc:[0,0],Ec:[0,0],hb:[0,0],Md:[0,0]});c=c&&13<=c.length?c:ij;d.jc[0]=c[0][0];d.jc[1]=c[0][1];d.Ec[0]=c[1][0];d.Ec[1]=c[1][1];d.hb[0]=c[2][0];d.hb[1]=c[2][1];d.Md[0]=c[3][0];d.Md[1]=c[3][1];d.eg=c[4];d.mode=c[5];d.hf=c[6];d.Xc=c[7];d.jd=c[8];d.Tc=c[9];d.le=c[10];d.Od=c[11];d.kd=c[12];d.Db=c[13]||0;d.qe=c[14]||!1;a.K[b]=d}
function Wi(a,b,c,d){var e=a.gc[b];e||(e={Sc:[null,null,null,null]});d=d&&8==d.length?d:hj;e.port=c;e.an=b<<3;e.Te=d[0];e.Sc[0]=d[1][0];e.Sc[1]=d[1][1];e.Sc[2]=d[1][2];e.Sc[3]=d[1][3];e.md=d[2];e.Vc=d[3];e.ac=d[4];e.Cc=d[5];e.Ld=d[6];e.Je=d[7];a.gc[b]=e}var ij=[[0,0],[0,0],[0,0],[0,0]];
function Xi(a,b,c){var d=a.K[b];d||(d={jc:[0,0],Ec:[0,0],hb:[0,0],Md:[0,0]});c=c&&13<=c.length?c:ij;d.jc[0]=c[0][0];d.jc[1]=c[0][1];d.Ec[0]=c[1][0];d.Ec[1]=c[1][1];d.hb[0]=c[2][0];d.hb[1]=c[2][1];d.Md[0]=c[3][0];d.Md[1]=c[3][1];d.eg=c[4];d.mode=c[5];d.hf=c[6];d.Xc=c[7];d.kd=c[8];d.Tc=c[9];d.le=c[10];d.Od=c[11];d.ld=c[12];d.Db=c[13]||0;d.qe=c[14]||!1;a.K[b]=d}
function Ji(a,b,c){for(var d="",e=a.la[c],f=1;8>=f;f++){var g="pcjs-bitCell";f||(g+=" pcjs-bitCellLeft");d+='<div id="'+(c+"-"+f)+'" class="'+g+'" data-value="0">'+f+"</div>\n"}e.innerHTML=d;jj(a,b,c,!0)}function kj(a,b,c){if(b=(a=T[a.ca|0])&&a[b])for(var d in b)if(a=b[d],a.lc&1<<c)return a;return null}
function Zi(a,b,c){for(var d=null,e=T[a.ca]||T[a.ca|0]||T[5150],f=0;f<e.length;f++){var g=e[f];if(g&&(g=g[b])){a=a.D[f][c?0:1]&g.lc;for(var h in g.Oc)if(g.Oc[h]==a&&(d=h,"number"==typeof+d))break;break}}return d}function aj(a,b){if(b<+Zi(a,Ei,void 0)){if(!a.Y)return 1;if(b<a.Y.length)switch(a.Y[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function Yi(a,b){return+Zi(a,5,b)+ +Zi(a,6,b)}
function Bi(a,b){var c=b;if(a)for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c}function Di(a,b,c,d){for(var e=T[a.ca]||T[a.ca|0]||T[5150],f=0;f<e.length;f++){var g=e[f];if(g&&(g=g[b]))for(var h in g.Oc)if(h==c){a.D[f][d?0:1]&=~g.lc;a.D[f][d?0:1]|=g.Oc[h];return}}}function lj(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function Ui(a){jj(a,0,Ci);jj(a,1,Gi);mj(a)}
function jj(a,b,c,d){if(c=a.la[c]){d=d?a.D[b][0]:a.D[b][1]=a.D[b][0];c=Za(c,"pcjs-bitCell");for(var e=0;e<c.length;e++){var f=kj(a,b,e);c[e].setAttribute("title",f&&f.fd||"Reserved");lj(c[e],d&1<<e?!1:!0);c[e].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");lj(b,c);var d=b.getAttribute("id").split("-"),e=1<<+d[1]-1;switch(d[0]){case Ci:a.D[0][0]=a.D[0][0]&~e|(c?0:e);break;case Gi:a.D[1][0]=a.D[1][0]&~e|(c?0:e)}mj(a)}}(a,c[e])}}}
function jj(a,b,c,d){if(c=a.la[c]){d=d?a.D[b][0]:a.D[b][1]=a.D[b][0];c=Za(c,"pcjs-bitCell");for(var e=0;e<c.length;e++){var f=kj(a,b,e);c[e].setAttribute("title",f&&f.gd||"Reserved");lj(c[e],d&1<<e?!1:!0);c[e].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");lj(b,c);var d=b.getAttribute("id").split("-"),e=1<<+d[1]-1;switch(d[0]){case Ci:a.D[0][0]=a.D[0][0]&~e|(c?0:e);break;case Gi:a.D[1][0]=a.D[1][0]&~e|(c?0:e)}mj(a)}}(a,c[e])}}}
function mj(a){var b=a.la.swdesc;if(null!=b){var c;c=""+(Yi(a,!0)+"Kb");c+=", "+(+ +Zi(a,3,!0)?"":"No ")+"Coprocessor";c+=", "+{0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"}[+Zi(a,Fi,!0)]+" Monitor";c+=", "+ +Zi(a,Ei,!0)+" Floppy Drives";if(null!=a.D[0][1]&&a.D[0][1]!=a.D[0][0]||null!=a.D[1][1]&&a.D[1][1]!=a.D[1][0])c+=" (Reset required)";b.textContent=c}}
function nj(a,b,c){a=a.G[b];var d=a.$b[c],e=d.gb[a.Ib];a.Ib^=1;b||0!=c||a.Ib||(d.gb[0]++,255<d.gb[0]&&(d.gb[0]=0,d.gb[1]++,255<d.gb[1]&&(d.gb[1]=0)));return e}function oj(a,b,c,d){a=a.G[b];c=a.$b[c];c.gb[a.Ib]=c.sf[a.Ib]=d;a.Ib^=1}function pj(a,b,c){a=a.G[b];var d=a.$b[c],e=d.hb[a.Ib];a.Ib^=1;b||0!=c||a.Ib||(d.hb[0]--,0>d.hb[0]&&(d.hb[0]=255,d.hb[1]--,0>d.hb[1]&&(d.hb[1]=255)));return e}function qj(a,b,c,d){a=a.G[b];c=a.$b[c];c.hb[a.Ib]=c.jc[a.Ib]=d;a.Ib^=1}
function rj(a,b){var c=a.G[b],d=c.Db|1;c.Db&=-16;return d}function wj(a,b,c){a=a.G[b];b=c&3;a.Db=a.Db&~(16<<b)|(c&4)<<b+2;a.Fh=c}function xj(a,b,c){b=a.G[b];var d=c&3,e=b.$b[d];e.Qd=!!(c&4);e.Qd||yj(a,b.Uk+d)}function zj(a,b){for(var c=a.G[b],d=0;d<c.$b.length;d++)ej(c,d)}function Aj(a,b,c){return a.G[b].$b[c].tf}function Bj(a,b,c,d){a.G[b].$b[c].tf=d}function Cj(a,b,c,d,e){gj(a.G[b>>2].$b[b&3],c,d,e)}
function yj(a,b,c){b=a.G[b>>2].$b[b&3];b.yf&&b.kg&&b.Mf?(c&&(b.done=c),b.Qd||Dj(a,b,!0)):c&&c(!0)}function Dj(a,b,c){c&&(b.count=b.hb[1]<<8|b.hb[0],b.type=b.mode&12,b.Rh=b.Yc=!1);for(var d=!1;0<=b.count&&(c=b.tf<<16|b.gb[1]<<8|b.gb[0],4==b.type?(d=!0,function(c){b.kg.call(b.yf,b.Mf,-1,function(f,g){0>f&&(b.Rh||(b.Rh=!0),f=255);b.Qd||a.ha.Mc(c,f);(d=g)&&setTimeout(function(){Ej(b)||Dj(a,b)},0)})}(c)):8==b.type?(c=a.ha.Jb(c),0>b.kg.call(b.yf,b.Mf,c)&&(b.Yc=!0)):0!=b.type&&(b.Yc=!0)),!d&&!Ej(b););}
function Ej(a){if(!a.Yc&&0<=--a.count&&(a.mode&32?(a.gb[0]--,0>a.gb[0]&&(a.gb[0]=255,a.gb[1]--,0>a.gb[1]&&(a.gb[1]=255))):(a.gb[0]++,255<a.gb[0]&&(a.gb[0]=0,a.gb[1]++,255<a.gb[1]&&(a.gb[1]=0))),!a.Qd))return!1;var b=a.controller;b.Db=b.Db&~(16<<a.Uh)|1<<a.Uh;a.mode&16||(a.Qd=!0,a.yf=a.Mf=null);a.done&&(a.done(!a.Yc),a.done=null);return!0}function Fj(a,b){var c=0,d=a.gc[b];if(null!=d.Je)switch(d.Je&3){case 2:c=d.ac;break;case 3:c=d.Cc}return c}
function Gj(a,b,c){b=a.gc[b];if(c&16)b.ld=0,b.Sc[b.ld++]=c,b.Vc=0,b.Ld=7,b.ac=b.Cc=0,b.Je=10;else if(c&8)b.Je=c;else{var d=c&224;if(d&32){var e=0;if(96==(d&96))e=1<<(c&7);else for(c=b.Ld+1;;){c&=7;d=1<<c;if(b.Cc&d){e=d;break}if(c++==b.Ld)break}b.Cc&e&&(b.Cc&=~e,Hj(a))}else 192==d&&(b.Ld=c&7)}}function Ij(a,b,c){var d=a.gc[b];d.ld<d.Sc.length?(d.Sc[d.ld++]=c,2==d.ld&&d.Sc[0]&2&&d.ld++,3!=d.ld||d.Sc[0]&1||d.ld++):(d.Vc=c,d=a.A,d.L|=4,Hj(a,b||253!=c?0:6))}
function Gj(a,b,c){b=a.gc[b];if(c&16)b.md=0,b.Sc[b.md++]=c,b.Vc=0,b.Ld=7,b.ac=b.Cc=0,b.Je=10;else if(c&8)b.Je=c;else{var d=c&224;if(d&32){var e=0;if(96==(d&96))e=1<<(c&7);else for(c=b.Ld+1;;){c&=7;d=1<<c;if(b.Cc&d){e=d;break}if(c++==b.Ld)break}b.Cc&e&&(b.Cc&=~e,Hj(a))}else 192==d&&(b.Ld=c&7)}}function Ij(a,b,c){var d=a.gc[b];d.md<d.Sc.length?(d.Sc[d.md++]=c,2==d.md&&d.Sc[0]&2&&d.md++,3!=d.md||d.Sc[0]&1||d.md++):(d.Vc=c,d=a.A,d.L|=4,Hj(a,b||253!=c?0:6))}
function Te(a,b,c){var d=a.gc[b>>3];b=1<<(b&7);d.ac&b||(d.ac|=b,d.Te=c||0,Hj(a))}function Se(a,b){var c=a.gc[b>>3],d=1<<(b&7);c.ac&d&&(c.ac&=~d,Hj(a))}function Hj(a,b){var c,d=-1;1<a.pa&&(c=a.gc[1],d=~(c.Cc|c.Vc)&c.ac);c=a.gc[0];0<=d&&(c.ac=d?c.ac|4:c.ac&-5);var d=~(c.Cc|c.Vc)&c.ac,e=a.A;e.P&&(e.Ea=d?e.Ea|1:e.Ea&-2);d&&b&&(c.Te=b)}
function Ke(a,b){void 0===b&&(b=0);var c=-1,d=a.gc[b];if(d.Te)c=-2,d.Te--;else for(var e=d.ac&((d.Cc|d.Vc)^255),f=d.Ld+1;;){var f=f&7,g=1<<f;if(d.Cc&g)break;if(e&g){b||2!=f?c=d.Sc[1]+f:c=Ke(a,1);0<=c&&(d.Cc|=g,d.ac&=~g);break}if(f++==d.Ld)break}return c}function Jj(a,b,c){var d=b?3:0;b=a.K[d+c];b.qe?(a=b.Db,b.qe=!1):(b.Xc==b.jd&&Kj(a,d+c),b.le?(a=b.Md[b.Xc++],b.Xc==b.jd&&(b.le=!1)):(Lj(a,d+c),a=b.hb[b.Xc++]));return a}
function Mj(a,b,c,d){var e=b?3:0,f=a.K[e+c];f.Xc==f.jd&&Kj(a,e+c);f.jc[f.Xc++]=d;f.Xc==f.jd&&(f.Od&&0!=f.mode&&8!=f.mode||(f.le=!1,f.hb[0]=f.Ec[0]=f.jc[0],f.hb[1]=f.Ec[1]=f.jc[1],f.kd=tc(a.A,a.ba),f.Od=!0,f.Tc=0!=f.mode,0==b&&0==c&&(Se(a,0),d=Nj(a,0)*a.Ga|0,6==f.mode&&(d>>=1),qc(a.A,d))),0==b&&2==c&&vc(a))}
function Oj(a,b,c){var d=0,e=c&192;b?(d=3,a.za=c):a.xa=c;if(192==e){if(!(c&16))for(e=0;2>=e;e++)if(c&2<<e){b=d+e;var f=a.K[b];f.qe||(Lj(a,b),f.Db=f.eg|f.mode|f.hf|(f.Xc<f.jd?64:0)|(f.Tc?128:0),f.qe=!0)}if(!(c&32))for(e=0;2>=e;e++)c&2<<e&&Pj(a,d+e)}else{var e=e>>6,f=c&1,g=c&14;c&=48;if(0==c)Pj(a,d+e);else{var d=d+e,h=a.K[d];h.hf=c;h.mode=g;h.eg=f;h.jc=[0,0];h.hb=[0,0];h.Md=[0,0];h.Tc=!1;h.le=!1;h.Od=!1;h.qe=!1;Kj(a,d);0==b&&0==e&&Se(a,0);0==b&&2==e&&255==a.gc[0].Vc&&77==a.P&&(e=a.K[0],e.Ec[0]=e.jc[0],
e.Ec[1]=e.jc[1],e.kd=tc(a.A,a.ba))}}}function Nj(a,b){var c=a.K[b],d=c.jc[1]<<8|c.jc[0];d||(d=1==c.jd?256:65536);return d}function xc(a,b){var c=a.K[b],d=c.Ec[1]<<8|c.Ec[0];d||(d=1==c.jd?256:65536);return d}function Pj(a,b){Lj(a,b);var c=a.K[b];c.Md[0]=c.hb[0];c.Md[1]=c.hb[1];c.le=!0;Kj(a,b)}function Kj(a,b){var c=a.K[b];c.Xc=32==c.hf?1:0;c.jd=48==c.hf?2:1}
function Lj(a,b,c){var d=a.K[b];if(d.Od&&(2!=b||a.P&1)){var e=tc(a.A,a.ba),f=(e-d.kd)/a.Ga|0;0>f&&(d.kd=e,f=0);var g=Nj(a,b),h=xc(a,b)-f;0==d.mode?(0>=h&&(h=0),h||(d.Tc=!0,d.Od=!1,b||Te(a,0))):4==d.mode?(d.Tc=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Ec[0]=h&255,d.Ec[1]=h>>8&255,d.kd=e,!b&&d.Tc&&Te(a,0))):6==d.mode&&(h-=f,0>=h&&(d.Tc=!d.Tc,h=g+h,0>=h&&(h=g),d.Ec[0]=h&255,d.Ec[1]=h>>8&255,d.kd=e,!b&&d.Tc&&Te(a,0)));d.hb[0]=h&255;d.hb[1]=h>>8&255;c&&(a.kd=0)}return d}
function Ke(a,b){void 0===b&&(b=0);var c=-1,d=a.gc[b];if(d.Te)c=-2,d.Te--;else for(var e=d.ac&((d.Cc|d.Vc)^255),f=d.Ld+1;;){var f=f&7,g=1<<f;if(d.Cc&g)break;if(e&g){b||2!=f?c=d.Sc[1]+f:c=Ke(a,1);0<=c&&(d.Cc|=g,d.ac&=~g);break}if(f++==d.Ld)break}return c}function Jj(a,b,c){var d=b?3:0;b=a.K[d+c];b.qe?(a=b.Db,b.qe=!1):(b.Xc==b.kd&&Kj(a,d+c),b.le?(a=b.Md[b.Xc++],b.Xc==b.kd&&(b.le=!1)):(Lj(a,d+c),a=b.hb[b.Xc++]));return a}
function Mj(a,b,c,d){var e=b?3:0,f=a.K[e+c];f.Xc==f.kd&&Kj(a,e+c);f.jc[f.Xc++]=d;f.Xc==f.kd&&(f.Od&&0!=f.mode&&8!=f.mode||(f.le=!1,f.hb[0]=f.Ec[0]=f.jc[0],f.hb[1]=f.Ec[1]=f.jc[1],f.ld=tc(a.A,a.ba),f.Od=!0,f.Tc=0!=f.mode,0==b&&0==c&&(Se(a,0),d=Nj(a,0)*a.Ga|0,6==f.mode&&(d>>=1),qc(a.A,d))),0==b&&2==c&&vc(a))}
function Oj(a,b,c){var d=0,e=c&192;b?(d=3,a.za=c):a.xa=c;if(192==e){if(!(c&16))for(e=0;2>=e;e++)if(c&2<<e){b=d+e;var f=a.K[b];f.qe||(Lj(a,b),f.Db=f.eg|f.mode|f.hf|(f.Xc<f.kd?64:0)|(f.Tc?128:0),f.qe=!0)}if(!(c&32))for(e=0;2>=e;e++)c&2<<e&&Pj(a,d+e)}else{var e=e>>6,f=c&1,g=c&14;c&=48;if(0==c)Pj(a,d+e);else{var d=d+e,h=a.K[d];h.hf=c;h.mode=g;h.eg=f;h.jc=[0,0];h.hb=[0,0];h.Md=[0,0];h.Tc=!1;h.le=!1;h.Od=!1;h.qe=!1;Kj(a,d);0==b&&0==e&&Se(a,0);0==b&&2==e&&255==a.gc[0].Vc&&77==a.P&&(e=a.K[0],e.Ec[0]=e.jc[0],
e.Ec[1]=e.jc[1],e.ld=tc(a.A,a.ba))}}}function Nj(a,b){var c=a.K[b],d=c.jc[1]<<8|c.jc[0];d||(d=1==c.kd?256:65536);return d}function xc(a,b){var c=a.K[b],d=c.Ec[1]<<8|c.Ec[0];d||(d=1==c.kd?256:65536);return d}function Pj(a,b){Lj(a,b);var c=a.K[b];c.Md[0]=c.hb[0];c.Md[1]=c.hb[1];c.le=!0;Kj(a,b)}function Kj(a,b){var c=a.K[b];c.Xc=32==c.hf?1:0;c.kd=48==c.hf?2:1}
function Lj(a,b,c){var d=a.K[b];if(d.Od&&(2!=b||a.P&1)){var e=tc(a.A,a.ba),f=(e-d.ld)/a.Ga|0;0>f&&(d.ld=e,f=0);var g=Nj(a,b),h=xc(a,b)-f;0==d.mode?(0>=h&&(h=0),h||(d.Tc=!0,d.Od=!1,b||Te(a,0))):4==d.mode?(d.Tc=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Ec[0]=h&255,d.Ec[1]=h>>8&255,d.ld=e,!b&&d.Tc&&Te(a,0))):6==d.mode&&(h-=f,0>=h&&(d.Tc=!d.Tc,h=g+h,0>=h&&(h=g),d.Ec[0]=h&255,d.Ec[1]=h>>8&255,d.ld=e,!b&&d.Tc&&Te(a,0)));d.hb[0]=h&255;d.hb[1]=h>>8&255;c&&(a.ld=0)}return d}
function wc(a,b){for(var c=0;c<a.K.length;c++)Lj(a,c,b);if(a.ca>=Re){var c=a.A.T.ad,d=tc(a.A,a.ba);null==a.Fa&&(a.ra=tc(a.A,a.ba),a.Ta=1024,a.Fa=Math.floor(a.A.T.ad/a.Ta),cj(a));d>=a.ia&&(a.B[12]|=64,a.B[11]&64&&(a.B[12]|=128,Te(a,8)),a.ia=d+a.Fa);a.B[0]==a.B[1]&&a.B[2]==a.B[3]&&a.B[4]==a.B[5]&&(a.B[12]|=32,a.B[11]&32&&(a.B[12]|=128,Te(a,8)));var e=d-a.ra,f=Math.floor(e/c);if(f&&!(a.B[11]&128)){for(;f--;)if(60<=++a.B[0]&&(a.B[0]=0,60<=++a.B[2]&&(a.B[2]=0,24<=++a.B[4]))){a.B[4]=0;a.B[6]=a.B[6]%7+1;
var g;g=a.B[9];var h=ma[a.B[8]-1];28==h&&0===g%4&&(g%100||0===g%400)&&h++;g=h;++a.B[7]>g&&(a.B[7]=1,12<++a.B[8]&&(a.B[8]=1,a.B[9]=(a.B[9]+1)%100))}a.B[12]|=16;a.B[11]&16&&(a.B[12]|=128,Te(a,8))}a.ra=d-e%c}}l=S.prototype;l.Ak=function(){var a=this.Da;this.oa&16&&(this.P&128?a=this.D[0][1]:this.C&&(a=Qj(this.C)));return a};l.Nl=function(a,b){this.Da=b};l.Bk=function(){return this.P};l.Ol=function(a,b){Rj(this,b)};
function Rj(a,b){var c=!!(b&2),d=!!(a.P&2);a.P=b;a.C&&Sj(a.C,!(b&128),!!(b&64));c!=d&&vc(a,c)}l.Ck=function(){var a=0,a=5150==(this.ca|0)?this.P&4?a|this.D[1][1]&15:a|this.D[1][1]>>4&1:this.P&8?a|this.D[0][1]>>4:a|this.D[0][1]&15;this.P&1&&Lj(this,2).Tc&&(a=this.P&2?a|32:a|16);return a};l.Pl=function(a,b){this.Ja=b};l.Dk=function(){return this.oa};l.Ql=function(a,b){this.oa=b};l.Mj=function(){var a=this.C?Qj(this.C):0;this.ka&=-2;return a};l.Zk=function(){};l.Lj=function(){return this.P};
@ -388,7 +388,7 @@ l.Pj=function(){return this.P&-209|(tc(this.A)&64?16:0)};l.bl=function(a,b){Rj(t
l.$k=function(a,b){this.S=b;this.H|=8;var c=0;240<=this.S&&(c=this.S^15,this.S=240);switch(this.S){case 32:Xj(this,this.R);break;case 173:Uj(this,this.R|16);break;case 174:Uj(this,this.R&-17);this.C&&Tj(this.C);break;case 170:this.C&&(this.C.Ob=[]);Uj(this,this.R|16);Xj(this,85);Vj(this,3);break;case 171:Xj(this,0);break;case 192:Xj(this,this.X);break;case 208:Xj(this,this.va);break;case 224:Xj(this,this.R&16?0:1);break;case 240:c&1&&zd(this.A)}};
function Uj(a,b){a.R=b;a.H=a.H&-5|b&4;a.C&&Sj(a.C,!!(b&8),!(b&16))}function Xj(a,b,c){0<=b&&(a.ua=b,c?a.H|=1:(a.H&=-2,a.H|=256))}function Vj(a,b){a.va=b;xb(a.ha,!!(b&2));b&1||zd(a.A)}function Yj(a,b){a.ca<Re?(Te(a,1,4),a.ka|=1):a.R&16||a.H&257||(Xj(a,b,!0),Zj(a.C),Te(a,1,120))}l.dk=function(){return this.da};l.pl=function(a,b){this.da=b;this.ma=b&128?0:128};
l.ek=function(a,b){var c=this.da&63,d;if(13>=c)if(d=this.B[c],10>c){var e=!1;4!=c&&5!=c||this.B[11]&2||(12>d?d=d?d:12:d=(d-=12)?d+128:140,e=!0);this.B[11]&4||(e&&128<d&&(d-=48),d=d%10|d/10<<4)}else 10==c&&(this.B[c]^=128);else d=this.B[c];null!=b&&12==c&&(this.B[c]&=15,d&128&&Se(this,8),d&64&&this.B[11]&64&&cj(this));return d};
l.ql=function(a,b){var c=this.da&63,d=b^this.B[c],e;if(13>=c){if(e=b,10>c){var f=!1;this.B[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&23<e&&(e+=48),this.B[11]&2||(12>=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;this.B[c]=e;11==c&&d&64&&b&64&&cj(this)};l.dj=function(a,b){this.ma=b};l.Al=function(){};l.Bl=function(){this.pd&&Ne(this.pd)};
l.ql=function(a,b){var c=this.da&63,d=b^this.B[c],e;if(13>=c){if(e=b,10>c){var f=!1;this.B[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&23<e&&(e+=48),this.B[11]&2||(12>=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;this.B[c]=e;11==c&&d&64&&b&64&&cj(this)};l.dj=function(a,b){this.ma=b};l.Al=function(){};l.Bl=function(){this.qd&&Ne(this.qd)};
function vc(a,b){if(a.qa)try{void 0!==b?a.Oa=b:b=a.Oa&&a.A&&a.A.ea.Sb;var c=Math.round(1193181/Nj(a,2));if(20>c||2E4<c)b=!1;b?a.L?a.L.frequency.value=c:(a.L=a.qa.createOscillator(),a.L&&(a.L.type="number"==typeof a.L.type?1:"square",a.L.connect(a.qa.destination),a.L.frequency.value=c,"start"in a.L?a.L.start(0):a.L.noteOn(0))):a.L&&("stop"in a.L?a.L.stop(0):a.L.noteOff(0),a.L.disconnect(),delete a.L)}catch(d){a.Ca("AudioContext exception: "+d.message),a.qa=null}}
var Ki={0:function(){return nj(this,0,0)},1:function(){return pj(this,0,0)},2:function(){return nj(this,0,1)},3:function(){return pj(this,0,1)},4:function(){return nj(this,0,2)},5:function(){return pj(this,0,2)},6:function(){return nj(this,0,3)},7:function(){return pj(this,0,3)},8:function(){return rj(this,0)},13:function(){return this.G[0].dg},32:function(){return Fj(this,0)},33:function(){return this.gc[0].Vc},64:function(){return Jj(this,0,0)},65:function(){return Jj(this,0,1)},66:function(){return Jj(this,
0,2)},67:function(){return this.xa},129:function(){return Aj(this,0,2)},130:function(){return Aj(this,0,3)},131:function(){return Aj(this,0,1)},135:function(){return Aj(this,0,0)}},Mi={96:S.prototype.Ak,97:S.prototype.Bk,98:S.prototype.Ck,99:S.prototype.Dk},Qi={96:S.prototype.Oj,97:S.prototype.Pj,100:S.prototype.Qj,112:S.prototype.dk,113:S.prototype.ek,128:function(){return this.I[7]},132:function(){return this.I[0]},133:function(){return this.I[1]},134:function(){return this.I[2]},136:function(){return this.I[3]},
@ -432,72 +432,72 @@ function Ek(a,b,c){var d=b;if(65<=b&&90>=b)!(a.bc&515)==c&&(d=b+32);else if(97<=
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.od=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.ia=a.screenWidth;this.pa=a.screenHeight;this.Zd=a.scale;this.Yd=12<=Math.round(this.ia/this.Nb);this.ba=b;this.X=c;this.D=(this.ae=d)||b||null;this.pd=a.touchScreen;this.xc=
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.D&&(this.D.onfocus=function(){return g.Nf(!0)},this.D.onblur=function(){return g.Nf(!1)},this.D.Pd=this.D.requestPointerLock||this.D.mozRequestPointerLock||this.D.webkitRequestPointerLock,this.D.oj=this.D.exitPointerLock||this.D.mozExitPointerLock||this.D.webkitExitPointerLock,this.D.Pd&&(e=function(){g.bf(document.pointerLockElement===
g.D||document.mozPointerLockElement===g.D||document.webkitPointerLockElement===g.D)},"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);
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===
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.sd=b[14])&&this.sd.length<d){for(var e=this.sd,g=0,h=Array(d),k=0;k<e.length-1;){for(var m=e[k++],q=e[k++];m--;)h[g]=q,g+=2;g==d&&(g=1)}this.sd=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.md=b[21];this.Bd=b[22];this.qg=b[23];this.rg=b[24];this.Cd=b[25];this.gh=this.xe=0;this.Ra==ek&&(this.lh=b[26],this.jh=b[27],this.ed=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.Vk=this.sg*f.Of/100|0;this.vg=this.sg*f.If|0;this.Xk=this.vg*f.Pf/100|0;this.wg=c[7]||0}}var Wk=18,Xk=25,Yk=[,,1024,5120];Yk[16]=1280;
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])&&
(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.Vk=this.sg*f.Of/100|0;this.vg=this.sg*f.If|0;this.Xk=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.md|this.controller.Bd;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[32]=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.md|this.controller.Bd;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[96]=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.md|this.controller.Bd;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[160]=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.md|this.controller.Bd;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[224]=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.md|this.controller.Bd;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[4]=function(a,b){var c=(a&-4)+this.H,d=(a&3)<<3,d=b<<d&this.controller.$a|this.V[c]&~(255<<d&this.controller.$a);this.V[c]!=d&&(this.V[c]=d,this.Ha=!0)};
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)};
Zk[32]=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.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)};
Zk[96]=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.nd|this.controller.Cd;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[160]=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.nd|this.controller.Cd;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[224]=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.nd|this.controller.Cd;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[4]=function(a,b){var c=(a&-4)+this.H,d=(a&3)<<3,d=b<<d&this.controller.$a|this.V[c]&~(255<<d&this.controller.$a);this.V[c]!=d&&(this.V[c]=d,this.Ha=!0)};
Zk[16]=function(a,b){a+=this.H;var c,d=a&-2;c=(b|b<<8|b<<16|b<<24)&this.controller.tb|this.controller.ob&~this.controller.tb;var e=this.controller.$a&(d==a?16711935:-16711936);c=c&e|this.V[d]&~e;this.V[d]!=c&&(this.V[d]=c,this.Ha=!0)};Zk[1]=function(a){a=a+this.H;var b=this.V[a]&~this.controller.$a|this.controller.ob&this.controller.$a;this.V[a]!=b&&(this.V[a]=b,this.Ha=!0)};
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.sd){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.md;c[22]=a.Bd;c[23]=a.qg;c[24]=a.rg;c[25]=a.Cd;a.Ra==ek&&(c[26]=a.lh,c[27]=a.jh,c[28]=a.ed,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.sd,a-this.cb]};Uk.prototype.lg=function(){return this.A};
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]=
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;
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.ba){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.D)}this.Bb=9;(this.P=kb(a,"ChipSet"))&&this.od&&5==this.Ra&&(this.Bb=Bi(this.od,this.Bb));"mouse"==this.pd?
(this.K=kb(a,"Mouse"))&&jl(this,2):"keygrid"==this.pd&&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.D&&this.D.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.ia/this.pa;b>c&&(a=Math.round(c/b*100)+"%")}this.$c?(this.ba.style.width=a,this.ba.style.width=a,this.ba.style.display="block",this.ba.style.margin="auto"):(this.aa.style.width=a,this.aa.style.height="auto");this.aa.style.backgroundColor="black";this.aa.ke();a=!0}this.D&&this.D.focus()}return a};
function Ik(a,b){!b&&a.aa&&(a.$c?a.ba.style.width=a.ba.style.height="":a.aa.style.width=a.aa.style.height="");a.C&&(a.C.ig=b)}l.Pd=function(a){var b=!1;this.D&&(a?this.D.Pd&&(this.D.Pd(),this.K&&this.K.bf(!0),b=!0):this.D.oj&&(this.D.oj(),this.K&&this.K.bf(!1),b=!0),this.D&&this.D.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.D;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.qd=-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.ba;do isNaN(e.offsetLeft)||(f+=e.offsetLeft,g+=e.offsetTop);while(e=e.offsetParent);var h=a.ia/a.ba.offsetWidth,k=a.pa/a.ba.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.ia/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.qd;!0===c?(a.vc=500<f,a.qd=b.timeStamp,
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 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};
l.reset=function(){var a=!0,b=0;this.P&&(b=+Zi(this.P,Fi,void 0));this.ca||(this.Ra=3==b?1:3);this.ka=3;switch(this.Ra){case ek:b=7;break;case 5:var c=Lk[this.Bb];c&&(b=c[0]);b||(b=4);break;case 1:b=3;this.ka=7;break;default:b=2}this.ma!==b&&(this.ma=b,a=!0);this.G=null;this.da=this.Zb=new Uk(this,1);this.R=this.Cb=new Uk(this,3);5>this.Ra?this.B=new Uk:(this.B=new Uk(this,this.Ra,null,this.Wc),nl(this));ol(this);this.va=null;this.Ea=this.Y=-1;this.za=0;pl(this,this.ka);if(this.G.cb&&a){a=this.G.cb+
this.fb;for(b=this.G.cb;b<a;b+=2){var d=65536*Math.random()|0;4==this.ma||7==this.ma?(c=b>>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8);Mb(this.ha,b,c|d<<8)}kl(this,!0)}};function nl(a){a.B.gf&1?(a.da=a.Zb,a.R=a.B):(a.da=a.B,a.R=a.Cb)}l.save=function(){var a=new ce(this);C(a,0,$k(this.Zb));C(a,1,$k(this.Cb));C(a,2,[this.ma,this.ka,this.va]);C(a,3,$k(this.B));return a.data()};
l.restore=function(a){var b=a[2];this.ma=b[0];this.ka=b[1];this.va=b[2];this.G=null;this.da=this.Zb=new Uk(this,1,a[0]);this.R=this.Cb=new Uk(this,3,a[1]);this.B=new Uk(this,this.Ra,a[3],this.Wc);this.B.cc&&nl(this);ol(this);if(!ql(this))return!1;rl(this);return!0};
l.reset=function(){var a=!0,b=0;this.P&&(b=+Zi(this.P,Fi,void 0));this.ca||(this.Ra=3==b?1:3);this.ka=3;switch(this.Ra){case ek:b=7;break;case 5:var c=Lk[this.Bb];c&&(b=c[0]);b||(b=4);break;case 1:b=3;this.ka=7;break;default:b=2}this.ma!==b&&(this.ma=b,a=!0);this.D=null;this.ba=this.Zb=new Uk(this,1);this.R=this.Cb=new Uk(this,3);5>this.Ra?this.B=new Uk:(this.B=new Uk(this,this.Ra,null,this.Wc),nl(this));ol(this);this.va=null;this.Ea=this.ia=-1;this.za=0;pl(this,this.ka);if(this.D.cb&&a){a=this.D.cb+
this.fb;for(b=this.D.cb;b<a;b+=2){var d=65536*Math.random()|0;4==this.ma||7==this.ma?(c=b>>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8);Mb(this.ha,b,c|d<<8)}kl(this,!0)}};function nl(a){a.B.gf&1?(a.ba=a.Zb,a.R=a.B):(a.ba=a.B,a.R=a.Cb)}l.save=function(){var a=new ce(this);C(a,0,$k(this.Zb));C(a,1,$k(this.Cb));C(a,2,[this.ma,this.ka,this.va]);C(a,3,$k(this.B));return a.data()};
l.restore=function(a){var b=a[2];this.ma=b[0];this.ka=b[1];this.va=b[2];this.D=null;this.ba=this.Zb=new Uk(this,1,a[0]);this.R=this.Cb=new Uk(this,3,a[1]);this.B=new Uk(this,this.Ra,a[3],this.Wc);this.B.cc&&nl(this);ol(this);if(!ql(this))return!1;rl(this);return!0};
function Jk(a,b,c,d){if(d)a.Ca("Unable to load font ROM (error "+d+": "+b+")");else{Sa(a.lf,b,c);try{var e=eval("("+c+")"),f=e.bytes||e;if(!f.length){n("Empty font ROM: "+b);return}if(1==f.length){n(f[0]);return}if(8192==f.length)dk(a,f,[6144,0]);else if(2048==f.length)dk(a,f,[0]);else{a.Ca("Unrecognized font data length ("+f.length+")");return}}catch(g){a.Ca("Font ROM data error: "+g.message);return}(a.X||a.Ia)&&ab(a)}}
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.G.ff;if(a.G===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|=
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,q=b&1?0:1,x=a.xa[b],r=16>h.length?h.length:16;x||(x={tc:e<<q,uc:f<<q,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=q,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.Y?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.G.ab[b])return;var c=a.G.ab[10],b=c&31,d=a.G.ab[11]&31,e=a.G.ab[9]&31,f=!1;a.G===a.B&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)xl(a);else{c=a.G.ab[15]+((a.G.ab[14]&63)<<8);a.Y!=c&&(xl(a),a.Y=c);d=d-b+1;if(a.rd!=b||a.Gc!=d)a.rd=b,a.Gc=d;a.Da=e+1;wl(a)}}}
function xl(a){if(0<=a.Y){if(void 0!==a.S){var b=a.S[a.Y];if(b&131072){var b=b&-131073,c=a.Y%a.H,d=a.Y/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.Y]=b}}a.Y=-1}}
function zl(a){var b,c=a.G;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}
function Al(a,b){var c=a.G;return c&&null!=b&&b!=c.og?(c.Uf(b),a.ha.Uf(c.cb,c.Fb,c.lg(),!0),!0):!1}
function ql(a,b){var c,d=a.va,e=a.G;if(e)if(1==e.Ra)d=7;else if(5<=e.Ra){var d=null,f=e.Wc>>2,g=32768<f?32768:f,h=e.Gd[6];if(null!=h){switch(h&12){case 0:e.cb=655360;e.Fb=f;d=255;break;case 4:e.cb=655360;e.Fb=f;d=3==a.ma?15:16;break;case 8:e.cb=720896;e.Fb=g;d=7;break;case 12:e.cb=753664,e.Fb=g,d=3==a.ma?2:3}c=80==(e.Gd[5]&80);!c||e.cb==a.cb&&e.Fb==a.Fb||(b=!0);var f=al(e,6),g=e.ab[9],k=e.ab[23],m=e.Be[1]&8;255!=d&&(h&1?655360==e.cb||c||k&1?e.Gd[5]&64?d=g&31?143>=e.ab[18]?19:20:21:g&128||350>f?d=
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 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}
function Al(a,b){var c=a.D;return c&&null!=b&&b!=c.og?(c.Uf(b),a.ha.Uf(c.cb,c.Fb,c.lg(),!0),!0):!1}
function ql(a,b){var c,d=a.va,e=a.D;if(e)if(1==e.Ra)d=7;else if(5<=e.Ra){var d=null,f=e.Wc>>2,g=32768<f?32768:f,h=e.Gd[6];if(null!=h){switch(h&12){case 0:e.cb=655360;e.Fb=f;d=255;break;case 4:e.cb=655360;e.Fb=f;d=3==a.ma?15:16;break;case 8:e.cb=720896;e.Fb=g;d=7;break;case 12:e.cb=753664,e.Fb=g,d=3==a.ma?2:3}c=80==(e.Gd[5]&80);!c||e.cb==a.cb&&e.Fb==a.Fb||(b=!0);var f=al(e,6),g=e.ab[9],k=e.ab[23],m=e.Be[1]&8;255!=d&&(h&1?655360==e.cb||c||k&1?e.Gd[5]&64?d=g&31?143>=e.ab[18]?19:20:21:g&128||350>f?d=
m?13:14:480<=f&&(d=3==a.ma?17:18):d=m?7-d:6:d-=m?2:0);c=zl(a)}}else e.Lc&8&&(e.Lc&2?(d=e.Lc&16?6:5,e.Lc&4||--d):(d=e.Lc&1?3:1,e.Lc&4&&--d));else a.va=null,null==d&&(d=a.ka);if(!pl(a,d,b))return!1;Al(a,c);return!0}
function pl(a,b,c){if(null!=b&&(b!=a.va||c)){a.Hd=0;a.va=b;a.La=!1;b=a.G||(7==b?a.da:a.R);if(b!=a.G||b.cb!=a.cb||b.Fb!=a.Fb){xl(a);if(a.cb){if(!Fb(a.ha,a.cb,a.Fb))return!1;a.G&&(a.G.cc=!1)}a.G=b;b.cc=!0;a.cb=b.cb;a.Fb=b.Fb;if(!yb(a.ha,b.cb,b.Fb,3,b===a.B?b:null))return!1}a:{a.I=0;a.H=a.Nb;a.L=a.wc;a.Ta=a.H;a.Hb=Gk[7][2];b=0;if(c=Gk[a.va])a.H=c[0],a.L=c[1],a.Hb=c[2],b=c[3],a.I=c[4],4!=a.ma&&7!=a.ma||a.G!==a.B||3!=a.I||(7==(a.B.ab[9]&31)?a.L=350>al(a.B,18)?43:50:a.I=a.Ra);a.nd=a.H*a.L|0;a.dd=a.nd/a.Hb|
0;a.fb=a.dd;a.fc=0;void 0!==b&&(a.fb=(a.fb<<1)+b|0,a.fc=a.fb+b>>1);if(a.xa.length){a.ra=a.ia/a.H|0;a.ua=a.pa/a.L|0;if(a.I){b=a.xa[a.I];if(!b)break a;c=a.xa[a.I<<1];a.Zd&&80==a.H?c&&a.ra>=3*c.tc>>2&&(a.I<<=1,b=c):(c&&a.ra>=c.tc&&(a.I<<=1,b=c),b&&(a.ra=b.tc,a.ua=b.uc));a.pb=a.qb=0;b&&(a.pb=a.H*b.tc,a.qb=a.L*b.uc)}else a.ra=a.ua=1,a.pb=a.H,a.qb=a.L;a.Oa=a.X.createImageData(a.pb,a.qb);a.Fa=document.createElement("canvas");a.Fa.width=a.pb;a.Fa.height=a.qb;a.Ga=a.Fa.getContext("2d");a.yc=a.zc=0;a.ic=a.ia;
a.mc=a.pa;b=a.ia-a.H*a.ra;c=a.pa-a.L*a.ua;0<b&&(a.yc=b>>1,a.ic-=b);0<c&&(a.zc=c>>1,a.mc-=c);if(b||c)a.X.fillStyle=a.ba.style.backgroundColor,a.X.fillRect(0,0,a.ia,a.pa)}}Bl(a,!0);kl(a)}return!0}function vl(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Cl(a){a.za=-1;a.qa=!1;var b=a.dd;if(void 0===a.S||a.S.length!=b)a.S=Array(b)}function Bl(a,b){b||(a.La=!1);Cl(a)}
function yl(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.xa[a.I];h.Ge&&(d=h.Ge[d]);var k=g>>4&15;h.Ge&&(k=h.Ge[k]);e?(b*=h.tc,c*=h.uc,e.fillStyle=h.be[k],e.fillRect(b,c,h.tc,h.uc)):(b=b*a.ra+a.yc,c=c*a.ua+a.zc,a.X.fillStyle=h.be[k],a.X.fillRect(b,c,a.ra,a.ua));g&256&&(k=(f&15)*h.tc,f=(f>>4)*h.uc,e?e.drawImage(h.ag[d],k,f,h.tc,h.uc,b,c,h.tc,h.uc):a.X.drawImage(h.ag[d],k,f,h.tc,h.uc,b,c,a.ra,a.ua));g&512&&(f=a.rd,g=a.Gc,e?(a.Da&&a.Da!==h.uc&&(f=f*h.uc/a.Da|0,g=g*h.uc/a.Da|0),e.fillStyle=h.be[d],e.fillRect(b,
function pl(a,b,c){if(null!=b&&(b!=a.va||c)){a.Hd=0;a.va=b;a.La=!1;b=a.D||(7==b?a.ba:a.R);if(b!=a.D||b.cb!=a.cb||b.Fb!=a.Fb){xl(a);if(a.cb){if(!Fb(a.ha,a.cb,a.Fb))return!1;a.D&&(a.D.cc=!1)}a.D=b;b.cc=!0;a.cb=b.cb;a.Fb=b.Fb;if(!yb(a.ha,b.cb,b.Fb,3,b===a.B?b:null))return!1}a:{a.I=0;a.H=a.Nb;a.L=a.wc;a.Ta=a.H;a.Hb=Gk[7][2];b=0;if(c=Gk[a.va])a.H=c[0],a.L=c[1],a.Hb=c[2],b=c[3],a.I=c[4],4!=a.ma&&7!=a.ma||a.D!==a.B||3!=a.I||(7==(a.B.ab[9]&31)?a.L=350>al(a.B,18)?43:50:a.I=a.Ra);a.od=a.H*a.L|0;a.dd=a.od/a.Hb|
0;a.fb=a.dd;a.fc=0;void 0!==b&&(a.fb=(a.fb<<1)+b|0,a.fc=a.fb+b>>1);if(a.xa.length){a.ra=a.da/a.H|0;a.ua=a.pa/a.L|0;if(a.I){b=a.xa[a.I];if(!b)break a;c=a.xa[a.I<<1];a.Zd&&80==a.H?c&&a.ra>=3*c.tc>>2&&(a.I<<=1,b=c):(c&&a.ra>=c.tc&&(a.I<<=1,b=c),b&&(a.ra=b.tc,a.ua=b.uc));a.pb=a.qb=0;b&&(a.pb=a.H*b.tc,a.qb=a.L*b.uc)}else a.ra=a.ua=1,a.pb=a.H,a.qb=a.L;a.Oa=a.X.createImageData(a.pb,a.qb);a.Fa=document.createElement("canvas");a.Fa.width=a.pb;a.Fa.height=a.qb;a.Ga=a.Fa.getContext("2d");a.yc=a.zc=0;a.ic=a.da;
a.mc=a.pa;b=a.da-a.H*a.ra;c=a.pa-a.L*a.ua;0<b&&(a.yc=b>>1,a.ic-=b);0<c&&(a.zc=c>>1,a.mc-=c);if(b||c)a.X.fillStyle=a.Y.style.backgroundColor,a.X.fillRect(0,0,a.da,a.pa)}}Bl(a,!0);kl(a)}return!0}function vl(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Cl(a){a.za=-1;a.qa=!1;var b=a.dd;if(void 0===a.S||a.S.length!=b)a.S=Array(b)}function Bl(a,b){b||(a.La=!1);Cl(a)}
function yl(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.xa[a.I];h.Ge&&(d=h.Ge[d]);var k=g>>4&15;h.Ge&&(k=h.Ge[k]);e?(b*=h.tc,c*=h.uc,e.fillStyle=h.be[k],e.fillRect(b,c,h.tc,h.uc)):(b=b*a.ra+a.yc,c=c*a.ua+a.zc,a.X.fillStyle=h.be[k],a.X.fillRect(b,c,a.ra,a.ua));g&256&&(k=(f&15)*h.tc,f=(f>>4)*h.uc,e?e.drawImage(h.ag[d],k,f,h.tc,h.uc,b,c,h.tc,h.uc):a.X.drawImage(h.ag[d],k,f,h.tc,h.uc,b,c,a.ra,a.ua));g&512&&(f=a.sd,g=a.Gc,e?(a.Da&&a.Da!==h.uc&&(f=f*h.uc/a.Da|0,g=g*h.uc/a.Da|0),e.fillStyle=h.be[d],e.fillRect(b,
c+f,h.tc,g)):(a.Da&&a.Da!==a.ua&&(f=f*a.ua/a.Da|0,g=g*a.ua/a.Da|0),a.X.fillStyle=h.be[d],a.X.fillRect(b,c+f,a.ra,g)))}
function kl(a,b){if(a.ea.Rb){var c=!1,d=a.G;d&&(d!==a.B?d.Lc&8&&(c=!0):d.Ud&32&&(c=!0));if(c||b){if(b)Cl(a);else if(void 0===a.S)return;var e=!1;!(b||++a.Hd&15)&&0<=a.Ea&&(a.Ea++,e=!0);var f=0,g=a.nd,h=a.cb,c=h,k=c+a.Fb;19<=a.va&&(h=c=655360,k=c+65536);if(Dl(a,d)&8||d.xe&&d.xe<d.gh){var m=(d.ab[12]<<8)+d.ab[13]|0;d.Cd!==m&&(d.Cd=m,Bl(a));d.xe=0}m=d.Cd;a.I&&(m<<=1);c+=m;m=a.fb;5<=a.Ra&&d.ab[19]&&d.ab[19]<<1!=d.ab[1]+1&&(a.Ta=d.ab[19]<<(a.I?1:d.ab[20]&64?3:4),m=(a.Ta*(a.L-1)+a.H)/a.Hb|0,7>=a.va&&(m<<=
1));c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(d=!b&&a.qa){for(var d=a.ha,q=!0,x=c>>>d.da;0<m&&x<d.R.length;)d.R[x].Ha&&(d.R[x].Ha=q=!1,d.R[x].Oh=!0),m-=d.vb,x++;d=q}if(d){if(!e)return;if(!a.za){if(0>a.Y)return;f=a.Y;g=f+1}}if(a.I){if(a.xa[a.I]){e=0;h=a.za=0;d=1048575;m=a.G.Lc&32;5<=a.Ra&&(m=a.G.Kc[16]&8);m&&(h=32768,d&=~h,a.Ea&2||(d&=-65537));for(c+=f<<1;c<k&&f<g;)m=Lb(a.ha,c),m|=65536,m&h&&(a.za++,m&=d),f==a.Y&&(m|=a.Ea&1?131072:0),a.qa&&m===a.S[f]||(yl(a,f%a.H,f/a.H|0,m,a.Ga),a.S[f]=m,e++),c+=2,f++;a.qa=
!0;e&&a.Ga&&a.X.drawImage(a.Fa,0,0,a.pb,a.qb,a.yc,a.zc,a.ic,a.mc);wl(a)}}else if(a.fc){for(var g=k,r,k=c,f=a.za=0,e=a.Hb,h=16==e?65536:196608,d=16==e?1:2,m=sl(a,d),x=q=0,z=a.H,E=0,J=a.L,W=0;k<g;){r=Lb(a.ha,k);if(a.qa&&r===a.S[f])q+=e;else{a.S[f]=r;r=r>>8|(r&255)<<8;var da=h,ua=16;q<z&&(z=q);for(var va=0;va<e;va++){var qd=(r&(da>>=d))>>(ua-=d);vl(a.Oa,q++,x,m[qd])}q>E&&(E=q);x<J&&(J=x);x>=W&&(W=x+1)}k+=2;f++;if(q>=a.H){q=0;x+=2;if(x>a.L)break;x==a.L&&(x=1,k=c+a.fc)}}a.qa=!0;z<a.H&&(a.Ga.putImageData(a.Oa,
0,0,z,J,E-z,W-J),a.X.drawImage(a.Fa,0,0,a.H,a.L,0,0,a.ia,a.pa))}else if(a.Zc){g=h;e=a.za=0;h=sl(a,8);d=a.G.sd;q=m=0;x=a.H;z=0;E=a.L;J=0;W=a.G.Be[4]&8?4:1;r=a.G.Kc[19]&15;for(da=a.Ta>a.H?a.Ta-a.H-r>>3:0;c<k;){f=d[c-g];va=4;r||(a.qa&&f===a.S[e]?(m+=va,va=0):a.S[e]=f,e++);if(va){m<x&&(x=m);for(ua=0;ua<va;ua++)vl(a.Oa,m++,q,h[f&255]),f>>=8;m>z&&(z=m);q<E&&(E=q);q>=J&&(J=q+1)}c+=W;if(m>=a.H){m=0;if(++q>a.L)break;c+=da}}r||(a.qa=!0);x<a.H&&(a.Ga.putImageData(a.Oa,0,0,x,E,z-x,J-E),a.X.drawImage(a.Fa,0,0,
a.H,a.L,0,0,a.ia,a.pa))}else{g=h;f=a.za=0;e=sl(a);h=a.G.sd;m=d=0;q=a.H;x=0;z=a.L;E=0;J=a.G.Kc[19]&15;for(W=a.Ta>a.H?a.Ta-a.H-J>>3:0;c<k;){r=c++-g;r=h[r];ua=8;J?d?(da=a.H-d,ua>da&&(ua=da)):(r<<=J,ua-=J,a.qa=!1):(a.qa&&r===a.S[f]?(d+=ua,ua=0):a.S[f]=r,f++);if(ua){d<q&&(q=d);for(da=0;da<ua;da++)va=Tk[r&2155905152]||0,vl(a.Oa,d++,m,e[va]),r<<=1;d>x&&(x=d);m<z&&(z=m);m>=E&&(E=m+1)}if(d>=a.H){d=0;if(++m>a.L)break;c+=W}}J||(a.qa=!0);q<a.H&&(a.Ga.putImageData(a.Oa,0,0,q,z,x-q,E-z),a.X.drawImage(a.Fa,0,0,
a.H,a.L,0,0,a.ia,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.Vk&&(c|=1);d%b.vg>b.Xk&&(c|=9);b.gh=d/b.vg|0;return c}l.wk=function(){var a=this.da,b;a.cc&&(b=a.sc);return b};l.Kl=function(a,b){var c=this.da;c.Qf=c.sc;c.sc=b&31};l.vk=function(){return El(this.da)};l.Jl=function(a,b){Fl(this,this.da,b)};l.xk=function(){return this.da.Lc};l.Ll=function(a,b){this.da.Lc=b;ql(this,!1)};l.yk=function(){return Gl(this,this.da)};
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.Cd!=d&&(c.Cd=d,Bl(this)),c.xe=0};
function kl(a,b){if(a.ea.Rb){var c=!1,d=a.D;d&&(d!==a.B?d.Lc&8&&(c=!0):d.Ud&32&&(c=!0));if(c||b){if(b)Cl(a);else if(void 0===a.S)return;var e=!1;!(b||++a.Hd&15)&&0<=a.Ea&&(a.Ea++,e=!0);var f=0,g=a.od,h=a.cb,c=h,k=c+a.Fb;19<=a.va&&(h=c=655360,k=c+65536);if(Dl(a,d)&8||d.xe&&d.xe<d.gh){var m=(d.ab[12]<<8)+d.ab[13]|0;d.ed!==m&&(d.ed=m,Bl(a));d.xe=0}m=d.ed;a.I&&(m<<=1);var c=c+m,p=a.fb;5<=a.Ra&&d.ab[19]&&d.ab[19]<<1!=d.ab[1]+1&&(a.Ta=d.ab[19]<<(a.I?1:d.ab[20]&64?3:4),p=(a.Ta*(a.L-1)+a.H)/a.Hb|0,7>=a.va&&
(p<<=1));c+p>k&&(p=k-c,0>p&&(p=0));k=c+p;if(m=!b&&a.qa){for(var m=a.ha,x=!0,r=c>>>m.da;0<p&&r<m.R.length;)m.R[r].Ha&&(m.R[r].Ha=x=!1,m.R[r].Oh=!0),p-=m.vb,r++;m=x}if(m){if(!e)return;if(!a.za){f=a.ia-d.ed;if(0>f)return;g=f+1}}if(a.I){if(a.xa[a.I]){d=f;f=0;e=a.za=0;h=1048575;p=a.D.Lc&32;5<=a.Ra&&(p=a.D.Kc[16]&8);m=a.ia-a.D.ed;p&&(e=32768,h&=~e,a.Ea&2||(h&=-65537));for(c+=d<<1;c<k&&d<g;)p=Lb(a.ha,c),p|=65536,p&e&&(a.za++,p&=h),d==m&&(p|=a.Ea&1?131072:0),a.qa&&p===a.S[d]||(yl(a,d%a.H,d/a.H|0,p,a.Ga),
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.zc,a.ic,a.mc);wl(a)}}else if(a.fc){for(var g=k,z,k=c,d=a.za=0,f=a.Hb,e=16==f?65536:196608,h=16==f?1:2,m=sl(a,h),x=p=0,r=a.H,E=0,J=a.L,W=0;k<g;){z=Lb(a.ha,k);if(a.qa&&z===a.S[d])p+=f;else{a.S[d]=z;z=z>>8|(z&255)<<8;var da=e,ua=16;p<r&&(r=p);for(var va=0;va<f;va++){var qd=(z&(da>>=h))>>(ua-=h);vl(a.Oa,p++,x,m[qd])}p>E&&(E=p);x<J&&(J=x);x>=W&&(W=x+1)}k+=2;d++;if(p>=a.H){p=0;x+=2;if(x>a.L)break;x==a.L&&(x=1,k=c+a.fc)}}a.qa=
!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.Vk&&(c|=1);d%b.vg>b.Xk&&(c|=9);b.gh=d/b.vg|0;return c}l.wk=function(){var a=this.ba,b;a.cc&&(b=a.sc);return b};l.Kl=function(a,b){var c=this.ba;c.Qf=c.sc;c.sc=b&31};l.vk=function(){return El(this.ba)};l.Jl=function(a,b){Fl(this,this.ba,b)};l.xk=function(){return this.ba.Lc};l.Ll=function(a,b){this.ba.Lc=b;ql(this,!1)};l.yk=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.Ik=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.Ml=function(a,b){this.B.gf=b;nl(this)};l.Jk=function(){return this.B.lh};l.Ul=function(a,b){this.B.lh=b};l.Gk=function(){return this.B.Ce};l.Sl=function(a,b){this.B.Ce=b};l.Fk=function(){return this.B.Be[this.B.Ce]};
l.Rl=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.tl=function(a,b){this.B.jh=b};l.ik=function(){return this.B.Rf};l.ul=function(a,b){this.B.ed=b;this.B.Rf=3;this.B.Bc=0};l.vl=function(a,b){this.B.ed=b;this.B.Rf=0;this.B.Bc=0};l.gk=function(){var a=this.B.ze[this.B.ed]>>this.B.Bc&63;this.B.Bc+=6;12<this.B.Bc&&(this.B.Bc=0,this.B.ed=this.B.ed+1&255);return a};
l.sl=function(a,b){var c=this.B.ze[this.B.ed],d=c&~(63<<this.B.Bc)|(b&63)<<this.B.Bc;c!==d&&(this.B.ze[this.B.ed]=d,Bl(this,!1));this.B.Bc+=6;12<this.B.Bc&&(this.B.Bc=0,this.B.ed=this.B.ed+1&255)};l.Kk=function(){return this.B.Sf};l.Fl=function(a,b){this.B.fj=b};l.Lk=function(){return this.B.gf};l.El=function(a,b){this.B.ej=b};l.pk=function(){return this.B.Ae};l.Dl=function(a,b){this.B.Ae=b};l.nk=function(){return this.B.Gd[this.B.Ae]};
l.Cl=function(a,b){this.B.Gd[this.B.Ae]=b;switch(this.B.Ae){case 0:this.B.af=Sk[b&15];this.B.Bd=this.B.af&~this.B.md;break;case 1:this.B.md=~Sk[b&15];this.B.Bd=this.B.af&~this.B.md;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.Rl=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.tl=function(a,b){this.B.jh=b};l.ik=function(){return this.B.Rf};l.ul=function(a,b){this.B.fd=b;this.B.Rf=3;this.B.Bc=0};l.vl=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.sl=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.Kk=function(){return this.B.Sf};l.Fl=function(a,b){this.B.fj=b};l.Lk=function(){return this.B.gf};l.El=function(a,b){this.B.ej=b};l.pk=function(){return this.B.Ae};l.Dl=function(a,b){this.B.Ae=b};l.nk=function(){return this.B.Gd[this.B.Ae]};
l.Cl=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.nl=function(a,b){var c=this.R;c.Qf=c.sc;c.sc=b&31};l.$j=function(){return El(this.R)};l.ml=function(a,b){Fl(this,this.R,b)};l.bk=function(){return this.R.Lc};l.ol=function(a,b){this.R.Lc=b;ql(this,!1)};l.Zj=function(){return this.R.ff};l.ll=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.Cd!==d&&(b.Cd=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}
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.wk,949:Y.prototype.vk,952:Y.prototype.xk,954:Y.prototype.yk},cl={948:Y.prototype.Kl,949:Y.prototype.Jl,952:Y.prototype.Ll},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.nl,981:Y.prototype.ml,984:Y.prototype.ol,985:Y.prototype.ll},fl={960:Y.prototype.Vj,961:Y.prototype.vj,962:Y.prototype.Ik,964:Y.prototype.Gk,965:Y.prototype.Fk,974:Y.prototype.pk,975:Y.prototype.nk},gl={954:Y.prototype.cj,960:Y.prototype.bj,
961:Y.prototype.bj,962:Y.prototype.Ml,964:Y.prototype.Sl,965:Y.prototype.Rl,970:Y.prototype.Fl,972:Y.prototype.El,974:Y.prototype.Dl,975:Y.prototype.Cl,986:Y.prototype.cj},hl={963:Y.prototype.Jk,966:Y.prototype.hk,967:Y.prototype.ik,969:Y.prototype.gk,970:Y.prototype.Kk,972:Y.prototype.Lk},il={963:Y.prototype.Ul,966:Y.prototype.tl,967:Y.prototype.ul,968:Y.prototype.vl,969:Y.prototype.sl};
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,
@ -515,44 +515,44 @@ l.Ek=function(){var a=this.I&128?this.R&255:this.ba;this.B&=-2;Tl(this);return a
l.Tl=function(a,b){if(this.I&128)this.R=this.R&-256|b;else{this.ka=b;this.B&=-97;var c;if(this.D){if(13==b)this.L=0;else if(8==b)this.D.value=this.D.value.slice(0,-1),0<this.L&&this.L--;else{c=String.fromCharCode(b);var d=32<=b?1:0;9==b&&(d=this.oa||8,d=d-this.L%d,this.oa&&(c=" ".slice(0,d)));this.ma&&!this.L&&d&&(c=String.fromCharCode(this.ma)+c);this.D.value+=c;this.D.scrollTop=this.D.scrollHeight;this.L+=d}c=!0}else if(null!=this.H){if(10==b||1024<=this.H.length)this.rc(this.H),
this.H="";10!=b&&(this.H+=String.fromCharCode(b));c=!0}else c=!1;c&&(this.B|=96)}};l.Gl=function(a,b){this.I&128?this.R=this.R&255|b<<8:this.X=b};l.Hl=function(a,b){this.I=b};l.Il=function(a,b){var c=this.C;this.C=b;if(this.K&&(c^b)&3){var c=this.K,d=this.C,e=3==(d&3);if(e){if(!c.cc){var f=!1;c.C&2||(c.reset(),f=!0);c.C&1||(f=!0);f&&Pl(c.G,[77,77]);Ul(c);c.cc=e}}else c.cc&&(Vl(c),c.cc=e);c.C=d}};
var Ql={0:Nl.prototype.Ek,1:Nl.prototype.qk,2:Nl.prototype.rk,3:Nl.prototype.sk,4:Nl.prototype.uk,5:Nl.prototype.tk,6:Nl.prototype.zk},Rl={0:Nl.prototype.Tl,1:Nl.prototype.Gl,3:Nl.prototype.Hl,4:Nl.prototype.Il};Ea(function(){for(var a=Za(document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new Nl(d);Ya(d,c)}});function Wl(a){Ia.call(this,"Mouse",a,Wl);if(this.Y=a.serial)this.ba="SerialPort";this.X=this.S=this.cc=!1;this.D=[];this.B=[];ab(this)}Qa(Wl);var ml=0;l=Wl.prototype;
l.pc=function(a,b,c,d){this.aa=a;this.ha=b;this.A=c;this.Ia=d;for(b=null;b=kb(a,"Video",b);)this.D.push(b)};l.Vb=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.ba&&!this.G){for(var c=null;(c=kb(this.aa,this.ba,c))&&(!c.Dh||!(this.G=c.Dh(this.Y,this))););if(this.G)for(this.B=[],c=0;c<this.D.length;c++){var d;d=this.D[c];d.K=this;(d=d.D)&&this.B.push(d)}else n(this.id+": "+this.ba+" "+this.Y+" unavailable")}this.cc?Ul(this):Vl(this)}return!0};
l.pc=function(a,b,c,d){this.aa=a;this.ha=b;this.A=c;this.Ia=d;for(b=null;b=kb(a,"Video",b);)this.D.push(b)};l.Vb=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.ba&&!this.G){for(var c=null;(c=kb(this.aa,this.ba,c))&&(!c.Dh||!(this.G=c.Dh(this.Y,this))););if(this.G)for(this.B=[],c=0;c<this.D.length;c++){var d;d=this.D[c];d.K=this;(d=d.G)&&this.B.push(d)}else n(this.id+": "+this.ba+" "+this.Y+" unavailable")}this.cc?Ul(this):Vl(this)}return!0};
l.Ub=function(a){return a?this.save():!0};l.reset=function(){Xl(this)};l.save=function(){var a=new ce(this),b=0,c=[];c[b++]=this.cc;c[b++]=this.H;c[b++]=this.I;c[b++]=this.K;c[b++]=this.L;c[b++]=this.P;c[b++]=this.R;c[b]=this.C;C(a,0,c);return a.data()};l.restore=function(a){return Xl(this,a[0])};function Xl(a,b){var c=0;void 0===b&&(b=[!1,-1,-1,0,0,!1,!1,0]);var d=b[c++];a.cc=d;a.H=b[c++];a.I=b[c++];a.K=b[c++];a.L=b[c++];a.P=b[c++];a.R=b[c++];a.C=b[c];return!0}l.bf=function(a){this.S=a};
function Ul(a){if(!a.X)for(var b=0;b<a.B.length;b++)Yl(a,a.B[b])&&(a.X=!0)}function Vl(a){if(a.X)for(var b=0;b<a.B.length;b++){var c=a.B[b];c&&(c.style.cursor="auto")}}function Yl(a,b){return b?(b.addEventListener("mousemove",function(b){Zl(a,b)},!1),b.addEventListener("mousedown",function(b){Zl(a,b,!0)},!1),b.addEventListener("mouseup",function(b){Zl(a,b,!1)},!1),b.style.cursor="none",!0):!1}
function Zl(a,b,c){if(void 0!==c){var d;!(d=!1!==a.S)&&(d=a.D.length)&&(d=a.D[0],d=d.Id?d.Pd(!0):!1);d||(a.S=null);a.je(b.button,c)}else{if(0>a.H||0>a.I)a.H=b.clientX,a.I=b.clientY;a.S?(c=b.movementX||b.mozMovementX||b.webkitMovementX||0,d=b.movementY||b.mozMovementY||b.webkitMovementY||0):(c=b.clientX-a.H,d=b.clientY-a.I);a.H=b.clientX;a.I=b.clientY;a.ng(c,d,a.H,a.I)}}
l.je=function(a,b){if(this.cc&&this.A&&this.A.ea.Sb)switch(a){case ml:if(this.P!=b){this.P=b;$l(this);break}break;case 2:this.R!=b&&(this.R=b,$l(this))}};l.ng=function(a,b){this.cc&&this.A&&this.A.ea.Sb&&(a||b)&&(this.K=a,this.L=b,$l(this))};function $l(a){Pl(a.G,[64|(a.P?32:0)|(a.R?16:0)|(a.L&192)>>4|(a.K&192)>>6,a.K&63,a.L&63]);a.K=a.L=0}Ea(function(){for(var a=Za(document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new Wl(d);Ya(d,c)}});
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.yd(),pa(qa()+"/api/v1/disk?"+c,null,!0),this.D=!1);!d&&a&&this.controller.Ca(this.B+" saved")}return!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<
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>
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,q=k.pattern;void 0===q&&(q=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]=q;hm(k,r,0)}else x=[],q=k.pattern=q|q<<8|q<<16|q<<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.yd();return qa()+"/api/v1/disk?"+c}
function km(a,b,c,d,e,f,g){if(a.D){var h;h="action=read&volume="+a.H;h+="&chs="+a.ib+":"+a.jb+":"+a.eb+":"+a.nb;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.controller.se());h+="&user="+a.controller.yd();pa(qa()+"/api/v1/disk?"+h,null,f,function(h,m,q){h=[b,c,d,e,f,g];var x=!1,r=h[0],z=h[1],E=h[2],J=h[3];if(!q){m=JSON.parse(m);for(x=0;J--;){var W=a.seek(r,z,E,!0);if(!W)break;hm(W,m,x);x+=W.length;E++}x=h[4]}(h=h[5])&&h(q,x)})}else g&&g(-1,!1)}
function lm(a,b,c,d,e,f,g){if(a.D){var h={};a.R=!0;h.action="write";h.volume=a.H;h.chs=a.ib+":"+a.jb+":"+a.eb+":"+a.nb;h.addr=b+":"+c+":"+d+":"+e;h.machine=a.controller.se();h.user=a.controller.yd();h.data=JSON.stringify(f);pa(qa()+"/api/v1/disk",h,g,function(f,h,q){var x=[b,c,d,e,g];f=x[0];h=x[1];var r=x[2],z=x[3],x=x[4];a.R=!1;if(0<=f&&f<a.A.length&&0<=h&&h<a.A[f].length)for(r=r-1;0<z--&&0<=r&&r<a.A[f][h].length;r++){var E=a.A[f][h][r];q?mm(a,E,!1):E.Ha||(E.Uc=E.Dc=0)}x&&nm(a)})}return!1}
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}
function km(a,b,c,d,e,f,g){if(a.D){var h;h="action=read&volume="+a.H;h+="&chs="+a.ib+":"+a.jb+":"+a.eb+":"+a.nb;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.controller.se());h+="&user="+a.controller.zd();pa(qa()+"/api/v1/disk?"+h,null,f,function(h,m,p){h=[b,c,d,e,f,g];var x=!1,r=h[0],z=h[1],E=h[2],J=h[3];if(!p){m=JSON.parse(m);for(x=0;J--;){var W=a.seek(r,z,E,!0);if(!W)break;hm(W,m,x);x+=W.length;E++}x=h[4]}(h=h[5])&&h(p,x)})}else g&&g(-1,!1)}
function lm(a,b,c,d,e,f,g){if(a.D){var h={};a.R=!0;h.action="write";h.volume=a.H;h.chs=a.ib+":"+a.jb+":"+a.eb+":"+a.nb;h.addr=b+":"+c+":"+d+":"+e;h.machine=a.controller.se();h.user=a.controller.zd();h.data=JSON.stringify(f);pa(qa()+"/api/v1/disk",h,g,function(f,h,p){var x=[b,c,d,e,g];f=x[0];h=x[1];var r=x[2],z=x[3],x=x[4];a.R=!1;if(0<=f&&f<a.A.length&&0<=h&&h<a.A[f].length)for(r=r-1;0<z--&&0<=r&&r<a.A[f][h].length;r++){var E=a.A[f][h][r];p?mm(a,E,!1):E.Ha||(E.Uc=E.Dc=0)}x&&nm(a)})}return!1}
function mm(a,b,c){b.Ha=!0;var d=a.I.indexOf(b);0<=d&&(a.I.splice(d,1),a.P.splice(d,1));a.I.push(b);a.P.push(ka());c&&nm(a)}function nm(a){if(a.I.length){var b=a.P[0]+2E3;a.G&&a.S<b&&(clearTimeout(a.G),a.G=null);if(!a.G){var c=ka(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.G=setTimeout(function(){dm(a,!0)},b);a.S=c+b}}else a.G&&(clearTimeout(a.G),a.G=null)}
function dm(a,b){b&&(a.G=null);var c=a.I[0];if(c){for(var d=c.Jj,e=c.Kj,c=c.sector,f=0,g=[],h=c-1;h<a.A[d][e].length;h++){var k=a.A[d][e][h];if(!k.Ha)break;var m=a.I.indexOf(k);a.I.splice(m,1);a.P.splice(m,1);g=g.concat(om(k));k.Ha=!1;f++}d=lm(a,d,e,c,f,g,b);return b||d}return!1}l.info=function(){return this.A.length?[this.A.length,this.A[0].length,this.A[0][0].length,this.A[0][0][0].length]:[0,0,0,0]};
l.seek=function(a,b,c,d,e){var f=null,g=this.C,h=this.A[a];if(h){var k=h[b];if(!k&&g.cg&&b<g.jb)for(k=h[b]=Array(g.vd),h=0;h<k.length;h++)k[h]=em(null,a,b,h+1,g.wb,0);if(k){for(h=0;h<k.length;h++)if(k[h]&&k[h].sector==c){f=k[h];if(null===f.pattern)if(d)f.pattern=0;else{for(d=1;++h<k.length;)null===k[h].pattern&&d++;km(this,a,b,c,d,null!=e,function(a,b){a&&(f=null);e&&e(f,b)});return e?null:f}break}!f&&g.cg&&9==g.mb&&(f=k[h]=em(null,a,b,g.mb,g.wb,0))}}e&&e(f,!1);return f};
l.seek=function(a,b,c,d,e){var f=null,g=this.C,h=this.A[a];if(h){var k=h[b];if(!k&&g.cg&&b<g.jb)for(k=h[b]=Array(g.wd),h=0;h<k.length;h++)k[h]=em(null,a,b,h+1,g.wb,0);if(k){for(h=0;h<k.length;h++)if(k[h]&&k[h].sector==c){f=k[h];if(null===f.pattern)if(d)f.pattern=0;else{for(d=1;++h<k.length;)null===k[h].pattern&&d++;km(this,a,b,c,d,null!=e,function(a,b){a&&(f=null);e&&e(f,b)});return e?null:f}break}!f&&g.cg&&9==g.mb&&(f=k[h]=em(null,a,b,g.mb,g.wb,0))}}e&&e(f,!1);return f};
function hm(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e}function om(a){var b=a.length,c=Array(b),d=0,b=b>>2,e=a.data;a=a.pattern;for(var f=0;f<b;f++){var g=f<e.length?e[f]:a;c[d++]=g&255;c[d++]=g>>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}l.read=function(a,b){var c=-1;if(a&&b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c};
l.write=function(a,b,c){if(this.re)return!1;if(b<a.length){if(c!=this.read(a,b,!0)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Dc?f<a.Uc?(a.Dc+=a.Uc-f,a.Uc=f):f>=a.Uc+a.Dc&&(a.Dc+=f-(a.Uc+a.Dc)+1):(a.Uc=f,a.Dc=1);d[f]=d[f]&~(255<<b)|c<<b;this.D&&mm(this,a,!0)}return!0}return null};
l.save=function(){var a=0,b=[];b[a++]=[this.H,this.L,this.ib,this.jb,this.eb,this.nb];if(!this.D&&!this.re)for(var c=this.A,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var g=c[d][e][f];if(g&&g.Dc){for(var h=[],k=0,m=g.Uc,q=g.Uc+g.Dc;m<q;)h[k++]=g.data[m++];b[a++]=[d,e,f,g.Uc,h]}}return b};
l.save=function(){var a=0,b=[];b[a++]=[this.H,this.L,this.ib,this.jb,this.eb,this.nb];if(!this.D&&!this.re)for(var c=this.A,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var g=c[d][e][f];if(g&&g.Dc){for(var h=[],k=0,m=g.Uc,p=g.Uc+g.Dc;m<p;)h[k++]=g.data[m++];b[a++]=[d,e,f,g.Uc,h]}}return b};
l.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.A.length&&6<=e.length?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={};
var rm={3:{hd:3,wd:0,name:aa.Em},4:{hd:2,wd:1,name:aa.Cm},5:{hd:9,wd:7,name:aa.Mm},6:{hd:9,wd:7,name:aa.xm},7:{hd:2,wd:0,name:aa.zm},8:{hd:1,wd:2,name:aa.Dm},10:{hd:2,wd:7,name:aa.ym},13:{hd:6,wd:7,name:aa.jm},15:{hd:3,wd:0,name:aa.Bm}};l=qm.prototype;
var rm={3:{jd:3,xd:0,name:aa.Em},4:{jd:2,xd:1,name:aa.Cm},5:{jd:9,xd:7,name:aa.Mm},6:{jd:9,xd:7,name:aa.xm},7:{jd:2,xd:0,name:aa.zm},8:{jd:1,xd:2,name:aa.Dm},10:{jd:2,xd:7,name:aa.ym},13:{jd:6,xd:7,name:aa.jm},15:{jd:3,xd:0,name:aa.Bm}};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,q=k.length;m<q;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.gj.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,q=[];q[m++]=k.kb;q[m++]=[k.name,k.ib,k.jb,k.eb,k.nb,k.oe,k.Hf,k.Ue,k.Ve];q[m++]=k.Ya;q[m++]=k.ud+100;q[m++]=k.xb;q[m++]=k.mb;q[m++]=k.vd;q[m++]=k.wb;q[m++]=k.Ua;q[m++]=k.me;q[m++]=k.hj;q[m]=k.Vd;f[h]=q}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.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;
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,q=f[d],x=0;h=!0;g.Qa=m;g.Qc=g.me=!1;void 0===q&&(q=[192,!0,0,2,0]);"boolean"==typeof q[1]&&(q[1]=["Floppy Drive",g.ib||40,g.jb||q[3],g.eb||9,g.nb||512,q[1],g.Hf,g.Ue,g.Ve]);g.kb=q[x++];var r=q[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=q[x++];g.ud=q[x++];g.xb=q[x++];g.ud=100<=g.ud?g.ud-100:g.ud-g.xb;g.mb=q[x++];g.vd=q[x++];
g.wb=q[x++];g.Ua=q[x++];g.Wa=null;g.ta||(g.Vd="");r=q[x++];102==r&&(r=!1);if("boolean"==typeof r){var z=r,r=q[x++],q=q[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,q,!0)):Bm(k,m,r,q,!0)?g.ta&&q&&Cm(k,r,q,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}
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 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}
@ -560,23 +560,23 @@ 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)&&
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 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.zl=function(a,b){b&4?this.S&4||this.S&8&&this.P&&Te(this.P,6):um(this);this.S=b};l.mk=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.yl=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].hd){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.vd=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.ud=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.vd=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.ud,0>e.xb&&(e.xb=0),e.xb>=e.ib&&(e.xb=e.ib-1),e.ud=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.lk=function(){var a=this.L;this.L&=-129;return a};l.xl=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)}
l.yl=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.lk=function(){var a=this.L;this.L&=-129;return a};l.xl=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};
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.vd&&(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}
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={1012:qm.prototype.mk,1013:qm.prototype.kk,1015:qm.prototype.lk},wm={1010:qm.prototype.zl,1013:qm.prototype.yl,1015:qm.prototype.xl};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);
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.Qk.bind(this));Zd(c,64,this.Rk.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.yd=function(){return this.aa?this.aa.yd():""};l.reset=function(){Qm(this,null,!0)};
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++]=
h.jb;m[k++]=h.Jd;m[k++]=h.mb;m[k++]=h.vd;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])};
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],q=b[d],x=c,r=0,z=!0;void 0===q&&(q=[0,0,!1,Array(8)]);k.Qa=h;k.errorCode=q[r++];k.ij=q[r++];k.oe=q[r++];k.de=q[r++];k.ee=q[r++];k.Ya=q[r++];k.jb=q[r++];k.Jd=q[r++];k.mb=q[r++];k.vd=q[r++];k.wb=q[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.yd()||(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=q[r++];k.Wa=null;k.ta&&(g=q[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=
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===
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.Nk=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};
@ -586,9 +586,9 @@ l.fl=function(a,b){Wm(this,b&255);Wm(this,b>>8&255)};l.Uj=function(){return this
l.Yj=function(){var a=this.Z;this.Z&64&&(this.Z&=-129);return a};l.cl=function(a,b){this.pa=b;this.P&&Se(this.P,14);Ym(this)};l.hl=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,q=Zm(a),x=Zm(a),r=a.B[e];r&&(r.Jd=k,r.Ya=f,r.mb=m,r.wb=q*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|
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};
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.vd&&(c=-1)}else c=-1;return c};
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}
@ -600,13 +600,13 @@ this.key)){try{window.localStorage.removeItem(d)}catch(e){}b.splice(c,1);c=0}}};
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.yd=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&&(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)}};
function xn(a,b,c,d,e){if(!b.ea.Rb){b.ea.Rb=!0;if(b.Vb){var f=null;e&&((f=nn(c,b.id))||(f=nn(c,b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.Vb(f,d)&&f&&(n("Unable to restore state for "+b.type),a.X&&!a.da?(c.clear(),a.B=qn,window&&window.location.reload()):a.ba=!0,b.Vb(null),e=!1)}if(!d&&b.yh)for(a=b.yh.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
l.Mh=function(a){var b=a[0],c=0>a[1];a=a[2];this.ea.Rb=!0;var d=this.la.power;d&&(d.textContent="Shutdown");this.Y||(this.rc("PCjs v"+sn+"\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.Y=!0);this.A&&(xn(this,this.A,b,c,a),nc(this.A));this.ba&&(wn(this,b),b.clear());!c&&this.H&&(this.H.clear(),delete this.H);this.G=0};
function wn(a,b){if(ra("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.ka,d=a.yd(),e=b.toString(),f={app:"PCjs"};f.ver=sn;f.url=c;f.user=d;f.type="bug";f.data=e;pa("http://www.pcjs.org/api/v1/report",f,!0)}}
function wn(a,b){if(ra("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.ka,d=a.zd(),e=b.toString(),f={app:"PCjs"};f.ver=sn;f.url=c;f.user=d;f.type="bug";f.data=e;pa("http://www.pcjs.org/api/v1/report",f,!0)}}
function yn(a,b,c){var d,e="none";if(a.G)return null;a.G--;var f=new ce(a,sn),g=new ce(a,sn,"validate"),h=la();C(g,"timestamp",h);C(f,"timestamp",h);C(f,"version","1.21.4");C(f,"url",window?window.location.href:null);C(f,"browser",window?window.navigator.userAgent:"");a.A&&a.A.Ub&&(c&&oc(a.A),d=a.A.Ub(b,c),"object"===typeof d&&C(f,a.A.id,d),c&&(a.A.ea.Rb=!1,!1===d&&(e=null)));for(var h=Ta(a.id),k=0;k<h.length;k++){var m=h[k];m.ea.Rb&&(m.Ub&&(d=m.Ub(b,c),"object"===typeof d&&C(f,m.id,d)),c&&(m.ea.Rb=
!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.C&&zn(a,a.C,f.toString()),ln(g)&&ln(f)||(e=null,d=h=!0)):a.B&&(d=!0,h=3==a.B),d&&f.clear(h)):e=f.toString());c&&(a.ea.Rb=!1,b=a.la.power)&&(b.textContent="Power");a.G=0;return e}l.reset=function(){this.ha&&this.ha.reset&&this.ha.reset();for(var a=Ta(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ha&&c.reset&&c.reset()}};l.start=function(a,b){for(var c=Ta(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};
l.stop=function(a,b){for(var c=Ta(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
@ -615,20 +615,20 @@ break}this.la[b]=c;c.onclick=function(){var a=rn(d,!0);if(a){var b=!!(d.B&&!d.P|
function rn(a,b){var c=a.C;c||(c=wa("user"),void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c&&((c=An(a,c))||a.Ca("The user ID is invalid."))):b&&a.Ca("Browser local storage is not available"));return c}
function An(a,b){a.C=null;var c=pa(qa()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(xa("user",c.data),a.C=c.data)}catch(e){n(e.message+" ("+d+")")}return a.C}function tn(a){var b=null;a.C&&(b=qa()+"/api/v1/user?req=load&user="+a.C+"&state="+jn(a,sn));return b}
function zn(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=jn(a,sn);d.data=c;b=pa(qa()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.Ca("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.Ca(c),xa("user",""),a.C=null)}}
function kb(a,b,c){a=Ta(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}function uc(a,b){if(a.I.length){var c=0,d=0;b&&window&&(c=window.scrollX,d=window.scrollY);var e=a.I[0];e.D&&e.D.focus();b&&window&&window.scrollTo(c,d)}}l.Xd=function(){this.D&&this.D.Xd()};
function yc(a,b){for(var c=0;c<a.I.length;c++)kl(a.I[c],b);if(a.D&&(c=a.D,c.ua)){ob(c,18,c.P,c.ra);if(c.Ga){var d=c.ha,e=c.B,f,g;null==f&&(f=0);null==g&&(g=d.L-f|0);null==e&&(e={fg:0,gd:0,$f:[]});var h=f>>>d.da;f=f+g-1>>>d.da;e.fg=0;for(e.gd=0;h<=f;)g=d.R[h],e.fg+=g.size,g.size&&(e.$f.push(na(nb,h,0,0,g.type)),e.gd++),h++;c.B=e;c.ma=c.B.gd*c.ha.vb/691200;d=0;c.B.Gh=0;c.B.He||(c.B.He=[]);var e=-1,h=0,k=-1;for(f=0;f<c.B.gd;f++){var m=c.B.$f[f];g=oa(nb.type,m);m=oa(nb.aj,m);if(g!=e||m!=k+1)(k=f-h)&&
(d+=qb(c,h,k,e)),e=g,h=f;k=m}d+=qb(c,h,f-h,e);e=c.B.Bj!=d;c.B.Bj=d;if(e){e=new ib(0,0,c.P.width,c.P.height);c.B.ce=[];h=c.B.gd;for(d=0;d<c.B.Gh;d++)f=c.B.He[d].gd,c.B.ce.push(jb(e,f,h,!d)),h-=f;for(d=0;d<c.B.ce.length;d++)e=c.B.He[d],h=f=c.B.ce[d],g=c.ra,(k=Wb[e.type])||(k=new hb),g.strokeStyle="black",g.strokeRect(h.x,h.y,h.Fc,h.A),g.fillStyle="string"==typeof k?k:k.toString(),g.fillRect(h.x,h.y,h.Fc,h.A),h=c,g=f,h.S=h.ia,h.L=h.ka,f=g.x+(g.Fc>>1),k=g.y+(g.A>>1),m=g.A,g.Fc<g.A&&(m=g.Fc,h.da=!0,h.G.save(),
h.G.translate(f,k),h.G.rotate(-Math.PI/2),f=k=0),m<h.L&&(h.L=m,h.S=h.L+"px Monaco, Lucida Console, Courier New"),g=k,h.D=f,h.K=g,h=c,e=Vb[e.type]+" ("+(e.gd*c.ha.vb/1024|0)+"Kb)",h.G.font=h.S,h.D-=h.G.measureText(e).width>>1,h.K+=(h.L>>1)-2,pb(h,e),h.da&&(h.G.restore(),h.da=!1)}}else pb(c,"This space intentionally left blank");c.context.drawImage(c.P,0,0,c.P.width,c.P.height,c.Oa,c.Xa,c.Da,c.Fa);c.ua=!1}}
function kb(a,b,c){a=Ta(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}function uc(a,b){if(a.I.length){var c=0,d=0;b&&window&&(c=window.scrollX,d=window.scrollY);var e=a.I[0];e.G&&e.G.focus();b&&window&&window.scrollTo(c,d)}}l.Xd=function(){this.D&&this.D.Xd()};
function yc(a,b){for(var c=0;c<a.I.length;c++)kl(a.I[c],b);if(a.D&&(c=a.D,c.ua)){ob(c,18,c.P,c.ra);if(c.Ga){var d=c.ha,e=c.B,f,g;null==f&&(f=0);null==g&&(g=d.L-f|0);null==e&&(e={fg:0,hd:0,$f:[]});var h=f>>>d.da;f=f+g-1>>>d.da;e.fg=0;for(e.hd=0;h<=f;)g=d.R[h],e.fg+=g.size,g.size&&(e.$f.push(na(nb,h,0,0,g.type)),e.hd++),h++;c.B=e;c.ma=c.B.hd*c.ha.vb/691200;d=0;c.B.Gh=0;c.B.He||(c.B.He=[]);var e=-1,h=0,k=-1;for(f=0;f<c.B.hd;f++){var m=c.B.$f[f];g=oa(nb.type,m);m=oa(nb.aj,m);if(g!=e||m!=k+1)(k=f-h)&&
(d+=qb(c,h,k,e)),e=g,h=f;k=m}d+=qb(c,h,f-h,e);e=c.B.Bj!=d;c.B.Bj=d;if(e){e=new ib(0,0,c.P.width,c.P.height);c.B.ce=[];h=c.B.hd;for(d=0;d<c.B.Gh;d++)f=c.B.He[d].hd,c.B.ce.push(jb(e,f,h,!d)),h-=f;for(d=0;d<c.B.ce.length;d++)e=c.B.He[d],h=f=c.B.ce[d],g=c.ra,(k=Wb[e.type])||(k=new hb),g.strokeStyle="black",g.strokeRect(h.x,h.y,h.Fc,h.A),g.fillStyle="string"==typeof k?k:k.toString(),g.fillRect(h.x,h.y,h.Fc,h.A),h=c,g=f,h.S=h.ia,h.L=h.ka,f=g.x+(g.Fc>>1),k=g.y+(g.A>>1),m=g.A,g.Fc<g.A&&(m=g.Fc,h.da=!0,h.G.save(),
h.G.translate(f,k),h.G.rotate(-Math.PI/2),f=k=0),m<h.L&&(h.L=m,h.S=h.L+"px Monaco, Lucida Console, Courier New"),g=k,h.D=f,h.K=g,h=c,e=Vb[e.type]+" ("+(e.hd*c.ha.vb/1024|0)+"Kb)",h.G.font=h.S,h.D-=h.G.measureText(e).width>>1,h.K+=(h.L>>1)-2,pb(h,e),h.da&&(h.G.restore(),h.da=!1)}}else pb(c,"This space intentionally left blank");c.context.drawImage(c.P,0,0,c.P.width,c.P.height,c.Oa,c.Xa,c.Da,c.Fa);c.ua=!1}}
Ea(function(){for(var a=Za(document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=Wa(c),c=Za(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=Wa(f),g=new on(g,d,!0);Ya(g,f);g.aa&&un(g,g.df)}});Aa.show.push(function(){for(var a=Za(document,"pcjs","computer"),b=0;b<a.length;b++){var c=Wa(a[b]);(c=Va("Computer",c.id))&&c.Y&&!c.ea.Rb&&c.df(-1)}});
Aa.exit.push(function(){for(var a=Za(document,"pcjs","computer"),b=0;b<a.length;b++){var c=Wa(a[b]);(c=Va("Computer",c.id))&&c.ea.Rb&&yn(c,!(!c.B||c.P),!0)}});var Bn=0;function Cn(a,b,c,d,e,f){e("Loading "+a+"...");pa(a,null,!0,function(g,h,k){k?(h||(h="unable to load "+a+" ("+k+")"),f(h,null)):Dn(h,a,b,c,d,e,f)})}
function Dn(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{if(c){Sa(c,b,a);var h=b;h&&0>h.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(h=window.location.pathname+h);d?"}"==d.slice(-1)?(d=d.slice(0,-1),1<d.length&&(d+=",")):d='{state:"'+d+'",':d="{";d+='url:"'+h+'"}';"object"==typeof resources&&(h=null);a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(h?' url="'+h+'"':""))}h=null;if("<"==a.charAt(0))try{e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,
"")),window.ActiveXObject||"ActiveXObject"in window?(h=new window.ActiveXObject("Microsoft.XMLDOM"),h.async=!1,h.loadXML(a)):h=(new window.DOMParser).parseFromString(a,"text/xml")}catch(x){h=null,a=x.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,h)}}a?e?En(a,f,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)}
function En(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");pa(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,q=/( [a-z]+=)(['"])(.*?)\2/g;m=q.exec(f);)k=0>k.indexOf(m[1])?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
function En(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");pa(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,p=/( [a-z]+=)(['"])(.*?)\2/g;m=p.exec(f);)k=0>k.indexOf(m[1])?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(d[0],g);En(a,b,c)}})}else c(a,null)}
function Fn(a,b,c,d){function e(a){if(void 0===h){var b=g&&Za(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ja(a))}function f(a){e("Error: "+a);k&&(--Bn||Ga(!0));k=!1}var g,h,k=!0;Bn++;Ra[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var q=document.head||document.getElementsByTagName("head")[0],x=document.createElement("style");x.type="text/css";x.styleSheet?x.styleSheet.cssText=m:x.appendChild(document.createTextNode(m));q.appendChild(x)}c||
function Fn(a,b,c,d){function e(a){if(void 0===h){var b=g&&Za(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ja(a))}function f(a){e("Error: "+a);k&&(--Bn||Ga(!0));k=!1}var g,h,k=!0;Bn++;Ra[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var p=document.head||document.getElementsByTagName("head")[0],x=document.createElement("style");x.type="text/css";x.styleSheet?x.styleSheet.cssText=m:x.appendChild(document.createTextNode(m));p.appendChild(x)}c||
(c="/versions/pcjs/1.21.4/components.xsl");m=function(d,h){h?Cn(c,null,null,!1,e,function(d,k){if(k)if(Sa(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var m=h.transformNode(k);m?(g.outerHTML=m,--Bn||Ga(!0)):f("transformNodeToObject failed")}else document.implementation&&document.implementation.createDocument?(m=new XSLTProcessor,m.importStylesheet(k),(m=m.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(m,g),--Bn||Ga(!0)):f("invalid machine element: "+
a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f(d)}):f(d)};"<"!=b.charAt(0)?Cn(b,a,d,!0,e,m):Dn(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(r){f(r.message)}return k}window.embedPC=function(a,b,c,d){Ga(!1);return Fn(a,b,c,d)};window.enableEvents=Ga;window.sendEvent=Ha;
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 q=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]||(q=q.replace(d[0],"")))}d=m=fa(m)}else"xsl"==x&&(e=m=fa(m));k[m]=q}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,
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};})();