diff --git a/docs/pcjs/demos/pc-dbg.js b/docs/pcjs/demos/pc-dbg.js index e0f1c639e..0883c84c0 100644 --- a/docs/pcjs/demos/pc-dbg.js +++ b/docs/pcjs/demos/pc-dbg.js @@ -5,15 +5,15 @@ function ia(a){return"0x"+l(a,4)}function ja(a,b){var c=a,d=a.lastIndexOf("/");0 function pa(a,b,c){return c?(" "+a).slice(-b):(a+" ").slice(0,b)}function qa(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function ra(a,b,c){var d=0,e=a.length,f=0;for(void 0===c&&(c=function(a,b){return a>b?1:a>1,k;k=c(b,a[g]);0a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}var ua=[31,28,31,30,31,30,31,31,30,31,30,31];function wa(a,b){var c=0,d=1,e;for(e in a){if(d>=arguments.length)break;var f=a[e],g=arguments[d++],c=c&~f.qh|g<>a.shift} function ya(a,b){var c;if(Array.prototype.indexOf)return a.indexOf(b,c);c=c||0;0>c&&(c+=a.length);0>c&&(c=0);for(var d=a.length;c>>0)+b>this.fc?this.Fa+a|0:this.pg()};h.pg=function(){p.call(this.M,13,0);return-1};function od(a,b,c,d,e){a.ga=b;a.Fa=d;a.Za=e;a.fc=(e>>>0)+1;a.Bb=c;a.type=c&7936;a.ext=c>>16&192;a.dc=(b&4?a.M.Bc.Fa:a.M.Ec)+(b&65528)|0;4>a.id&&ld(a,!0)}function pd(a,b,c){var d=a.M,e=d.va(b+2),f=d.va(b)|(e&255)<<16,d=d.va(b+4);a.ga=c;a.Fa=f;a.Za=d;a.fc=(d>>>0)+1;a.Bb=e;a.type=e&7936;a.ext=0;a.dc=b;4>a.id&&ld(a,!0)} function nd(a,b,c,d){var e=a.M;if(!d&&c===a.A.ga)return a.ga=c,a.Fa=a.A.Fa,a.Za=a.A.Za,a.fc=(a.A.Za>>>0)+1,a.Bb=a.A.Bb,a.type=a.A.type,a.ext=a.A.ext,a.dc=a.A.dc,a.A.ga=-1,ld(a,!0,!0,!1),a.Fa;a.A.ga=-1;var f=e.va(b+0),g=e.va(b+4),k=g&7936,q=e.va(b+2)|(g&255)<<16,r=e.va(b+6),x=c&65528;if(80386<=e.na){var B=f,q=q|(r&65280)<<16,f=f|(r&15)<<16;r&128&&(f=f<<12|4095)}switch(a.id){case 1:var y=a.R;a.bf=!1;if(y&&1==c&&a.C.length){var J=a.C[a.Uf-1];if(J&&!J())return-1}var U=c&3,F=(g&24576)>>13,J=-1,O,V;x|| b>=e.Ec&&ba.$b&&(J=-1,!1===y||F==a.$b||k&1024&&F<=a.$b))J=qd(e),rd(e,qd(e),!0),t(e,J),a.bf=!0,J=0}else{if(256==k||2304==k)return sd(a,c,y)?a.Fa:-1;if(1024==k)J=2,V=0,Uk||2048==(k&2560))return p.call(e,13,c&65532),-1;if(!(g&32768))return p.call(e,11,c&65532),-1}break;case 3:if(!x||4096>k||512!=(k&2560))return p.call(e,13,c&65532),-1;if(!(g&32768))return p.call(e,12,c&65532),-1;break;case 4:y=k&-513;if(!x||256!= y&&2304!=y)return p.call(e,13,c&65532),-1;2304==y&&(a.yi=q+e.va(q+100+2)|0,a.Kk=q+a.Za|0);break;case 6:if(!(k&4096)&&768>>0)+1,a.Bb=g,a.type=k,a.ext=r,a.dc=b,ld(a,!0,!0,!1));return q} function sd(a,b,c){var d=a.M,e=a.$b,f=d.Ya.ga,g=d.Ya.Fa;if(!c){if(!(d.Ya.type&512))return p.call(d,13,b&65532),!1;d.pb(d.Ya.dc+4,d.Ya.Bb&=-513)}if(-1===d.Ya.load(b))return!1;var k=d.Ya.Fa;if(!1!==c){if(d.Ya.type&512)return p.call(d,13,b&65532),!1;d.pb(d.Ya.dc+4,d.Ya.Bb|=512)}d.Ya.type=d.Ya.type&-513|d.Ya.Bb&512;256==d.Ya.type||768==d.Ya.type?(d.pb(g+14,v(d)),d.pb(g+16,Ed(d)),d.pb(g+18,d.F),d.pb(g+20,d.G),d.pb(g+22,d.H),d.pb(g+24,d.D),d.pb(g+26,u(d)),d.pb(g+28,d.K),d.pb(g+30,d.J),d.pb(g+32,d.I),d.pb(g+ @@ -105,14 +105,14 @@ function Lc(a,b,c,d){var e=(b&-4194304)>>>20,f=a.kd[(a.Ld+e&a.Mb)>>>a.Pa],g=f.Xd b.A=e>>2;b.Eb=g;b.C=k>>2;Ab&&gc&&c.ha&&!c.controller&&!c.Se&&!c.Te?(b.eb=c.eb,b.ce=c.ce,b.ha=c.ha,dc(b,Qc)):(b.O=c?Ec(32):0,b.Y=c?Ec(96):0,dc(b,Oc));Sb(b,a.ma,q);a.ya[d]=b;a.ie.push(d);return b}function Be(a){a.ya!==a.kd&&(a.ya=a.kd,a.le=null,a.ie=null,a.rd=null)}h=Id.prototype;h.reset=function(){this.ra.Ob&&this.bc();xe(this);Tc(this);this.ra.wd=!1}; function Ce(a,b){var c;switch(b){case 0:c=a.F;break;case 1:c=a.G;break;case 2:c=a.H;break;case 3:c=a.D;break;case 4:c=u(a);break;case 5:c=a.K;break;case 6:c=a.J;break;case 7:c=a.I}return c}function De(a,b,c){switch(b){case 0:a.F=c;break;case 1:a.G=c;break;case 2:a.H=c;break;case 3:a.D=c;break;case 4:t(a,c);break;case 5:a.K=c;break;case 6:a.J=c;break;case 7:a.I=c}} function xe(a){a.F=0;a.D=0;a.G=0;a.H=0;a.ib=0;a.K=0;a.J=0;a.I=0;a.Va=!1;a.la=a.Ba=0;a.xb=0;a.Qg=0;a.pc=0;a.hb=65520;a.Pc=0;a.Od=1023;a.ea=a.Ra=0;a.Xc=a.vd=a.Wc=a.Yc=0;a.lb=-1;a.Lc=a.td=-1;a.He=a.X=-1;a.Ca=new kd(a,1,"CS");a.Ab=new kd(a,2,"DS");a.bb=new kd(a,2,"ES");a.Aa=new kd(a,3,"SS");t(a,0);rd(a,0);if(80386<=a.na){switch(a.oc){case 80562:case 80563:a.H=771;break;case 80578:a.H=772;break;case 80594:a.H=773;break;case 80595:case 80596:a.H=776}a.hb=16;a.ni=0;a.qe=0;a.Ld=0;a.Ma=[0,0,0,0,null,null, -0,0];a.Ge=[null,null,null,null,null,null,0,0];a.Sb=new kd(a,2,"FS");a.Tb=new kd(a,2,"GS");Be(a)}a.pf=new kd(a,0,"NULL");a.P=a.Ab;a.O=a.Aa;a.V=a.La=0;a.Z=a.Y=-1;a.pd=a.pf;a.za=0;if(80286>a.na)Gd(a,0,65535);else{a.Ec=0;a.Bd=65535;a.Bc=new kd(a,5,"LDT",!0);a.Ya=new kd(a,4,"TSS",!0);a.Ea=new kd(a,6,"VER",!0);Gd(a,65520,61440);var b,c=v(a);b=a.Ca;var d=-65536;80386>b.M.na&&(d&=16777215);b=b.Fa=d;a.Na=b+c|0;a.of=b+a.Ca.Za|0}Fd(a,0);xd(a)} -function Ee(a,b){b.ga&65528&&b.Mca.na)Gd(a,0,65535);else{a.Ec=0;a.Bd=65535;a.Bc=new kd(a,5,"LDT",!0);a.Ya=new kd(a,4,"TSS",!0);a.Ea=new kd(a,6,"VER",!0);Gd(a,65520,61440);var b,c=v(a);b=a.Ca;var d=-65536;80386>b.M.na&&(d&=16777215);b=b.Fa=d;a.Na=b+c|0;a.of=b+a.Ca.Za|0}Fd(a,0);td(a)} +function Ee(a,b){b.ga&65528&&b.Mc>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.Ma[e],g=g&~(d>>2&3);b?a.ya[g>>>a.Pa].Nd(g&a.Ha,f,a):Mc(a.ya[g>>>a.Pa],f)}c>>=2;d>>=4}}function Jc(a,b,c,d){if(!(a.V&8192)&&a.Ma[7]&255){c--;var e=a.Ma[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 k=f>>2;if(b+c>=a.Ma[g]&&b<=a.Ma[g]+k){a.Ma[6]|=1<>=2;f>>=4}}} -function xd(a,b,c){void 0===b&&(b=!!(a.hb&1));void 0===c&&(c=!!(a.ea&131072));a.Pg=b&&!c?cf:Md;ld(a.Ca,!1,b,c);ld(a.Ab,!1,b,c);ld(a.Aa,!1,b,c);ld(a.bb,!1,b,c);80386<=a.na&&(ld(a.Sb,!1,b,c),ld(a.Tb,!1,b,c));Re(a)} +function td(a,b,c){void 0===b&&(b=!!(a.hb&1));void 0===c&&(c=!!(a.ea&131072));a.Pg=b&&!c?cf:Md;ld(a.Ca,!1,b,c);ld(a.Ab,!1,b,c);ld(a.Aa,!1,b,c);ld(a.bb,!1,b,c);80386<=a.na&&(ld(a.Sb,!1,b,c),ld(a.Tb,!1,b,c));Re(a)} h.save=function(){var a=new df(this);ef(a,0,[this.F,this.D,this.G,this.H,u(this),this.K,this.J,this.I]);var b=v(this),c=this.Ca.save(),d=this.Ab.save(),e=this.Aa.save(),f=this.bb.save(),g;null!=this.Ec?(g=[this.hb,this.Ec,this.Bd,this.Pc,this.Od,this.Bc.save(),this.Ya.save(),this.Ra],80386<=this.na&&(g.push(this.ni),g.push(this.qe),g.push(this.Ld),g.push(this.Ma),g.push(this.Ge))):g=null;b=[b,c,d,e,f,g,Ed(this)];80386<=this.na&&(b.push(this.Sb.save()),b.push(this.Tb.save()));ef(a,1,b);ef(a,2,[this.P.nc, this.O.nc,this.V,this.La,this.za,this.Z,this.Y]);ef(a,3,[0,this.Zb,this.ba.Td]);b=this.ja;c=!!(this.hb&-2147483648);d=0;e=[];(f=!b.ja&&b.xg==b.Mb)||Yb(b,!0);for(g=0;gc&&0<=(a.of^a.Na)&&(8088>=a.n function tf(a,b,c,d,e){a.resultType=c|26;a.Yc=b;d?uf(a):vf(a);e?wf(a):xf(a);return b}function yf(a,b,c,d){c&d?uf(a):vf(a);(b^c)&d?wf(a):xf(a)}function zf(a){return nf(a)?1:0}function nf(a){a.resultType&1&&(a.ea&=-2,(a.Xc^(a.Xc^a.vd)&(a.vd^a.Wc))&a.resultType&-2147450752&&(a.ea|=1),a.resultType&=-2);return a.ea&1}function of(a){a.resultType&2&&(a.ea&=-5,38505>>((a.Yc^a.Yc>>4)&15)&1&&(a.ea|=4),a.resultType&=-3);return a.ea&4} function pf(a){a.resultType&4&&(a.ea&=-17,(a.Wc^a.Xc^a.vd)&16&&(a.ea|=16),a.resultType&=-5);return a.ea&16}function qf(a){a.resultType&8&&(a.ea&=-65,a.Yc&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.ea|=64),a.resultType&=-9);return a.ea&64}function rf(a){a.resultType&16&&(a.ea&=-129,a.Yc&a.resultType&-2147450752&&(a.ea|=128),a.resultType&=-17);return a.ea&128} function sf(a){a.resultType&32&&(a.ea&=-2049,(a.Xc^a.Wc)&(a.vd^a.Wc)&a.resultType&-2147450752&&(a.ea|=2048),a.resultType&=-33);return a.ea&2048}function vf(a){a.resultType&=-2;a.ea&=-2}function Af(a){a.resultType&=-5;a.ea&=-17}function Bf(a){a.resultType&=-9;a.ea&=-65}function xf(a){a.resultType&=-33;a.ea&=-2049}function uf(a){a.resultType&=-2;a.ea|=1}function Cf(a){a.resultType&=-5;a.ea|=16}function Df(a){a.resultType&=-9;a.ea|=64}function wf(a){a.resultType&=-33;a.ea|=2048} -function Ed(a){return a.ea&-2262|nf(a)|of(a)|pf(a)|qf(a)|rf(a)|sf(a)}function Ef(a,b){b=b|a.hb&1|65520;a.hb=a.hb&-65536|b&65535;a.hb&1&&xd(a,!0)}function Fd(a,b,c){a.hb&1||(b&=~a.Yf);void 0===c&&(c=a.ua);c?b=b&-12289|a.ea&12288:a.Ra=(b&12288)>>12;c>a.Ra&&(b=b&-513|a.ea&512);a.resultType=128;a.ea=a.ea&~(a.cc|2261)|b&(a.cc|2261)|a.dg;a.ea&256&&(a.za|=2,a.V|=4)} +function Ed(a){return a.ea&-2262|nf(a)|of(a)|pf(a)|qf(a)|rf(a)|sf(a)}function Ef(a,b){b=b|a.hb&1|65520;a.hb=a.hb&-65536|b&65535;a.hb&1&&td(a,!0)}function Fd(a,b,c){a.hb&1||(b&=~a.Yf);void 0===c&&(c=a.ua);c?b=b&-12289|a.ea&12288:a.Ra=(b&12288)>>12;c>a.Ra&&(b=b&-513|a.ea&512);a.resultType=128;a.ea=a.ea&~(a.cc|2261)|b&(a.cc|2261)|a.dg;a.ea&256&&(a.za|=2,a.V|=4)} function Ff(a,b,c,d){var e=0;if(a.hb&1&&(a.ua>a.Ra||a.ea&131072)&&a.Ya.yi)for(var f=a.Ya.yi+(b>>>3),e=(1<>>=8,f++;return e?(n(a,256)&&sb(a,"checkIOPM("+ia(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),p.call(a,13,0),!1):!0} h.Ub=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.xa[b]=c;this.Rg++;d=!0;break;default:d=this.parent.Ub.call(this,a,b,c)}return d}; function Gf(a,b,c,d){var e=(d?a.kd:a.ya)[(b&a.qb)>>>a.Pa];e&&5==e.type&&(e=Lc(a,b,!1,!0));if(e){var f=b&a.Ha;if(!c||1==c)return e.pe(f,b);if(2==c)return f>>this.Pa].sc(a&this.Ha,a)}; @@ -174,11 +174,11 @@ function Gh(a,b,c){c>>>=0;if(!c||c<=b>>>0)return!1;var d=0,e=1;c=[c>>>0,0];for(a function Hh(a){if(this.Yb){var b=this.Yb,c=this.Qg,d=this.pc,e=d>>3&7;b.A=d&7;var f=(3>(d>>6&3)?0:48)+e;(217==c||219==c)&&52<=f&&(f=e<<4|b.A);if(e=hh[c][f]){if(0>ih.indexOf(e)){var f=b.M,g=f.He;8087==b.na&&(f.La&16&&g++,f.La&32&&g++);b.ka=f.Ca.ga;b.Y=g-f.Ca.Fa;-1!==f.Z&&(b.la=f.pd.ga,b.W=f.Z-f.pd.Fa);b.qa=(c&7)<<8|d}e.call(b)}}this.A-=-1===this.Z?2:8;return a}function Ih(a,b){var c=Jh.call(this,this.L(),b);80386>this.na&&(this.A-=12);return c} function Kh(a,b){var c;a=this.Sa();c=2==this.fa?Jh.call(this,a,b):Lh.call(this,a,b);80386>this.na&&(this.A-=12);return c}function Mh(a,b){var c=!1;0>b&&(b=-b|0,c=!c);0>a&&(a=-a|0,c=!c);Nh.call(this,a,b);c&&(this.la=~this.la+1|0,this.Ba=~this.Ba+(this.la?0:1)|0)}function Jh(a,b){var c=(a<<16>>16)*(b<<16>>16)|0;32767c?(uf(this),wf(this)):(vf(this),xf(this));this.A-=-1===this.Z?9:12;return c&65535} function Lh(a,b){Mh.call(this,a,b);this.Ba!=this.la>>31?(uf(this),wf(this)):(vf(this),xf(this));this.A-=-1===this.Z?9:12;return this.la}function Oh(a){var b=a+1|0;mf(this,a,1,b,this.Ja|62);this.A-=2;return a&~this.B|b&this.B}function Ph(a,b,c){this.A-=this.C.zj+(c||0);c=Ed(this);var d=this.Ca.ga,e=v(this);a=this.Ca.Zi(a);-1!==a&&(Dd(this,c),Dd(this,d),Dd(this,e),null!=b&&Dd(this,b),this.lb=-1,jf(this,a))} -function Qh(a,b){this.A-=14+(-1===this.Z?0:2);Bf(this);-1!==this.Ea.load(b)&&this.Ea.Mc>=this.ua&&this.Ea.Mc>=(b&3)&&(Df(this),a=this.Ea.Bb&-256,2=this.ua&&this.Ea.Mc>=(b&3)&&(Df(this),a=this.Ea.Bb&-256,2=this.ua)&&this.Ea.Mc>=(b&3))return Df(this),this.Ea.Za;Bf(this);return a}function Yh(a,b){if(-1===this.Z)return oe.call(this),a;rd(this,this.va(this.Z+this.fa));this.A-=this.C.mf;return b}function Zh(a,b){this.A-=-1===this.Y?-1===this.Z?this.C.Oj:this.C.Nj:this.C.Lj;return b}function $h(a,b){return b}function ai(){-1!==this.Y&&yd(this,2);return Zh.call(this,0,this.xb)} function Nh(a,b){if(a&-65536||b&-65536){var c=b&65535,d=b>>>16,e=a&65535,f=a>>>16,g=c*e,e=(g>>>16)+d*e,k=e>>>16,e=(e&65535)+c*f;this.la=e<<16|g&65535;this.Ba=k+((e>>>16)+d*f)|0}else this.la=a*b|0,this.Ba=0}function bi(a,b){this.A-=-1===this.Y?-1===this.Z?this.C.yc:this.C.ac:this.C.Nc;return tf(this,a|b,128)}function ci(a,b){this.A-=-1===this.Y?-1===this.Z?this.C.yc:this.C.ac:this.C.Nc;return tf(this,a|b,this.Ja)&this.B} -function di(a){this.X=this.ka;var b=qd(this),c=qd(this);a&&t(this,u(this)+a);Gd(this,b,c,!1)&&(a&&t(this,u(this)+a),Ee(this,this.Ab),Ee(this,this.bb),80386<=this.na&&(Ee(this,this.Sb),Ee(this,this.Tb)));2==a&&this.me&&Ue(this,this.Na);this.X=-1}function ei(a,b){var c=a-b-zf(this)|0;mf(this,a,b,c,191,!0);this.A-=-1===this.Y?-1===this.Z?this.C.yc:this.C.ac:this.C.Nc;return c&255} +function di(a){this.X=this.ka;var b=qd(this),c=qd(this);a&&t(this,u(this)+a);Gd(this,b,c,!1)&&(a&&t(this,u(this)+a),Ee(this,this.Ab),Ee(this,this.bb),80386<=this.na&&(Ee(this,this.Sb),Ee(this,this.Tb)));2==a&&this.me&&af(this,this.Na);this.X=-1}function ei(a,b){var c=a-b-zf(this)|0;mf(this,a,b,c,191,!0);this.A-=-1===this.Y?-1===this.Z?this.C.yc:this.C.ac:this.C.Nc;return c&255} function fi(a,b){var c=a-b-zf(this)|0;mf(this,a,b,c,this.Ja|63,!0);this.A-=-1===this.Y?-1===this.Z?this.C.yc:this.C.ac:this.C.Nc;return c&this.B}function gi(a){this.V|=1;this.Ta[this.ca()].call(this,a);this.A-=-1===this.Z?4:5}function hi(){return sf(this)?1:0}function ii(){return nf(this)?1:0}function ji(){return nf(this)?0:1}function Bi(){return qf(this)?1:0}function Ci(){return qf(this)?0:1}function Di(){return nf(this)||qf(this)?1:0}function Ei(){return nf(this)||qf(this)?0:1} function Fi(){return rf(this)?1:0}function Gi(){return rf(this)?0:1}function Hi(){return of(this)?1:0}function Ii(){return of(this)?0:1}function Ji(){return!rf(this)!=!sf(this)?1:0}function Ki(){return!rf(this)!=!sf(this)?0:1}function Li(){return qf(this)||!rf(this)!=!sf(this)?1:0}function Mi(){return qf(this)||!rf(this)!=!sf(this)?0:1}function Ni(a,b,c){if(c){16>>16-c)&65535;tf(this,a,32768,d&32768)}return a} function Oi(a,b,c){if(c){var d=a<>>32-c;tf(this,a,-2147483648,d&-2147483648)}return a}function Pi(a,b){return Ni.call(this,a,b,this.ca())}function Qi(a,b){return Oi.call(this,a,b,this.ca())}function Ri(a,b){return Ni.call(this,a,b,this.G&31)}function Si(a,b){return Oi.call(this,a,b,this.G&31)}function Ti(a,b,c){if(c){16>>c-1;a=(d>>>1|b<<16-c)&65535;tf(this,a,32768,d&1)}return a} @@ -233,8 +233,8 @@ this.P,this.J&c);this.F=this.F&~this.B|e;this.J=this.J&~c|this.J+(this.ea&1024?- this.D&-256|this.ca();this.A-=this.C.jc},function(){this.F=this.F&-65281|this.ca()<<8;this.A-=this.C.jc},function(){this.G=this.G&-65281|this.ca()<<8;this.A-=this.C.jc},function(){this.H=this.H&-65281|this.ca()<<8;this.A-=this.C.jc},function(){this.D=this.D&-65281|this.ca()<<8;this.A-=this.C.jc},function(){this.F=this.F&~this.B|this.Sa();this.A-=this.C.jc},function(){this.G=this.G&~this.B|this.Sa();this.A-=this.C.jc},function(){this.H=this.H&~this.B|this.Sa();this.A-=this.C.jc},function(){this.D= this.D&~this.B|this.Sa();this.A-=this.C.jc},function(){t(this,u(this)&~this.B|this.Sa());this.A-=this.C.jc},function(){this.K=this.K&~this.B|this.Sa();this.A-=this.C.jc},function(){this.J=this.J&~this.B|this.Sa();this.A-=this.C.jc},function(){this.I=this.I&~this.B|this.Sa();this.A-=this.C.jc},Pj,Qj,Pj,Qj,function(){this.da[this.ca()].call(this,Uh)},function(){this.da[this.ca()].call(this,Sh)},function(){this.V|=1;this.Ib[this.ca()].call(this,Xj,this.ca)},function(){this.V|=1;this.Oa[this.ca()].call(this, Xj,this.Sa)},Rj,Sj,Rj,Sj,function(){if(this.ea&131072&&3>this.Ra)p.call(this,13,0);else{var a=this.C.Aj;this.lb=-1;Ph.call(this,3,null,a)}},function(){var a=this.ca();if(this.ea&131072&&3>this.Ra)p.call(this,13,0);else{var b;a:{b=this.je[a];if(void 0!==b)for(var c=0;cthis.Ra)p.call(this,13,0);else{var a=this.C.Bj; -this.lb=-1;Ph.call(this,4,null,a)}else this.A-=this.C.Cj},function(){if(this.ea&131072&&3>this.Ra)p.call(this,13,0);else{this.X=this.ka;this.A-=this.C.yj;if(this.hb&1&&this.ea&16384){var a=this.va(this.Ya.Fa+0);sd(this.Ca,a,!1)}else{var a=this.ua,b=qd(this),c=qd(this),d=qd(this);if(this.ea&131072)d=d&131071|this.ea&-131072;else if(d&131072){var e=qd(this),f=qd(this),g=qd(this),k=qd(this),q=qd(this),r=qd(this);xd(this,!0,!0);rd(this,f);t(this,e);Cd(this,g);Bd(this,k);this.Sb.load(q);this.Tb.load(r)}null!= -Gd(this,b,c,!1)&&(Fd(this,d,a),this.me&&Ue(this,this.Na))}this.X=-1}},function(){this.Ib[this.ca()].call(this,Mj,lj)},function(){this.Oa[this.ca()].call(this,2==this.fa?Nj:Oj,lj)},function(){this.Ib[this.ca()].call(this,Mj,mj)},function(){this.Oa[this.ca()].call(this,2==this.fa?Nj:Oj,mj)},function(){var a=this.ca();if(a){var b=this.F&255;this.F=this.F&-65536|b/a<<8|b%a;tf(this,this.F,128);this.A-=this.C.dj}else kj.call(this)},function(){var a=this.F&255,b=(this.F>>8&255)*this.ca()|0,c=a+b|0;this.F= +this.lb=-1;Ph.call(this,4,null,a)}else this.A-=this.C.Cj},function(){if(this.ea&131072&&3>this.Ra)p.call(this,13,0);else{this.X=this.ka;this.A-=this.C.yj;if(this.hb&1&&this.ea&16384){var a=this.va(this.Ya.Fa+0);sd(this.Ca,a,!1)}else{var a=this.ua,b=qd(this),c=qd(this),d=qd(this);if(this.ea&131072)d=d&131071|this.ea&-131072;else if(d&131072){var e=qd(this),f=qd(this),g=qd(this),k=qd(this),q=qd(this),r=qd(this);td(this,!0,!0);rd(this,f);t(this,e);Cd(this,g);Bd(this,k);this.Sb.load(q);this.Tb.load(r)}null!= +Gd(this,b,c,!1)&&(Fd(this,d,a),this.me&&af(this,this.Na))}this.X=-1}},function(){this.Ib[this.ca()].call(this,Mj,lj)},function(){this.Oa[this.ca()].call(this,2==this.fa?Nj:Oj,lj)},function(){this.Ib[this.ca()].call(this,Mj,mj)},function(){this.Oa[this.ca()].call(this,2==this.fa?Nj:Oj,mj)},function(){var a=this.ca();if(a){var b=this.F&255;this.F=this.F&-65536|b/a<<8|b%a;tf(this,this.F,128);this.A-=this.C.dj}else kj.call(this)},function(){var a=this.F&255,b=(this.F>>8&255)*this.ca()|0,c=a+b|0;this.F= this.F&-65536|c&255;mf(this,a,b,c,191);this.A-=this.C.cj},function(){this.F=this.F&-256|(nf(this)?255:0);this.A-=2},function(){this.F=this.F&-256|Hf(this,this.P,this.D+(this.F&255)&65535);this.A-=this.C.bk},function(){Tj.call(this,216)},function(){Tj.call(this,217)},function(){Tj.call(this,218)},function(){Tj.call(this,219)},function(){Tj.call(this,220)},function(){Tj.call(this,221)},function(){Tj.call(this,222)},function(){Tj.call(this,223)},function(){var a=this.L(),b=this.G-1&this.Ga;this.G=this.G& ~this.Ga|b;b&&!qf(this)?(hf(this,v(this)+a),this.A-=this.C.Jj):this.A-=this.C.Kh},function(){var a=this.L(),b=this.G-1&this.Ga;this.G=this.G&~this.Ga|b;b&&qf(this)?(hf(this,v(this)+a),this.A-=this.C.Lh):this.A-=this.C.Mh},function(){var a=this.L(),b=this.G-1&this.Ga;this.G=this.G&~this.Ga|b;b?(hf(this,v(this)+a),this.A-=this.C.Ij):this.A-=this.C.Kh},function(){var a=this.L();this.G&this.Ga?this.A-=this.C.Mh:(hf(this,v(this)+a),this.A-=this.C.Lh)},function(){var a=this.ca();Ff(this,a,1,!0)&&(this.F= this.F&-256|oc(this.ja,a,1,this.Na-2)&255,this.A-=this.C.Fh)},function(){var a=this.ca();Ff(this,a,this.fa,!0)&&(this.F=this.F&~this.B|oc(this.ja,a,this.fa,this.Na-2)&this.B,this.A-=this.C.Fh)},function(){var a=this.ca();Ff(this,a,1,!1)&&(sc(this.ja,a,1,this.F&255,this.Na-2),this.A-=this.C.Th)},function(){var a=this.ca();Ff(this,a,this.fa,!1)&&(sc(this.ja,a,this.fa,this.F&this.B,this.Na-2),this.A-=this.C.Th)},function(){var a=this.Sa(),b=v(this),a=b+a;Dd(this,b);hf(this,a);this.A-=this.C.hj},function(){var a= @@ -364,7 +364,7 @@ R(this)),this.G>>8&255);P(this,a);this.A-=this.C.T},function(a){a=a.call(this,L( this.A-=this.C.N},function(a){a=a.call(this,K(this,this.D+this.J+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.S},function(a){a=a.call(this,K(this,this.D+this.I+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.T},function(a){a=a.call(this,L(this,this.K+this.J+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.T},function(a){a=a.call(this,L(this,this.K+this.I+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.S},function(a){a=a.call(this,K(this,this.J+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.N}, function(a){a=a.call(this,K(this,this.I+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.N},function(a){a=a.call(this,L(this,this.K+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.N},function(a){a=a.call(this,K(this,this.D+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.N},function(a){a=a.call(this,K(this,this.D+this.J+R(this)),this.D>>8&255);P(this,a);this.A-=this.C.S},function(a){a=a.call(this,K(this,this.D+this.I+R(this)),this.D>>8&255);P(this,a);this.A-=this.C.T},function(a){a=a.call(this,L(this, this.K+this.J+R(this)),this.D>>8&255);P(this,a);this.A-=this.C.T},function(a){a=a.call(this,L(this,this.K+this.I+R(this)),this.D>>8&255);P(this,a);this.A-=this.C.S},function(a){a=a.call(this,K(this,this.J+R(this)),this.D>>8&255);P(this,a);this.A-=this.C.N},function(a){a=a.call(this,K(this,this.I+R(this)),this.D>>8&255);P(this,a);this.A-=this.C.N},function(a){a=a.call(this,L(this,this.K+R(this)),this.D>>8&255);P(this,a);this.A-=this.C.N},function(a){a=a.call(this,K(this,this.D+R(this)),this.D>>8&255); -P(this,a);this.A-=this.C.N},z[192],z[200],z[208],z[216],z[224],z[232],z[240],z[248],z[193],z[201],z[209],z[217],z[225],z[233],z[241],z[249],z[194],z[202],z[210],z[218],z[226],z[234],z[242],z[250],z[195],z[203],z[211],z[219],z[227],z[235],z[243],z[251],z[196],z[204],z[212],z[220],z[228],z[236],z[244],z[252],z[197],z[205],z[213],z[221],z[229],z[237],z[245],z[253],z[198],z[206],z[214],z[222],z[230],z[238],z[246],z[254],z[199],z[207],z[215],z[223],z[231],z[239],z[247],z[255]],He=[function(a,b){var c= +P(this,a);this.A-=this.C.N},z[192],z[200],z[208],z[216],z[224],z[232],z[240],z[248],z[193],z[201],z[209],z[217],z[225],z[233],z[241],z[249],z[194],z[202],z[210],z[218],z[226],z[234],z[242],z[250],z[195],z[203],z[211],z[219],z[227],z[235],z[243],z[251],z[196],z[204],z[212],z[220],z[228],z[236],z[244],z[252],z[197],z[205],z[213],z[221],z[229],z[237],z[245],z[253],z[198],z[206],z[214],z[222],z[230],z[238],z[246],z[254],z[199],z[207],z[215],z[223],z[231],z[239],z[247],z[255]],Je=[function(a,b){var c= a[0].call(this,K(this,this.D+this.J),b.call(this));P(this,c);this.A-=this.C.oa},function(a,b){var c=a[0].call(this,K(this,this.D+this.I),b.call(this));P(this,c);this.A-=this.C.pa},function(a,b){var c=a[0].call(this,L(this,this.K+this.J),b.call(this));P(this,c);this.A-=this.C.pa},function(a,b){var c=a[0].call(this,L(this,this.K+this.I),b.call(this));P(this,c);this.A-=this.C.oa},function(a,b){var c=a[0].call(this,K(this,this.J),b.call(this));P(this,c);this.A-=this.C.aa},function(a,b){var c=a[0].call(this, K(this,this.I),b.call(this));P(this,c);this.A-=this.C.aa},function(a,b){var c=a[0].call(this,K(this,R(this)),b.call(this));P(this,c);this.A-=this.C.Ka},function(a,b){var c=a[0].call(this,K(this,this.D),b.call(this));P(this,c);this.A-=this.C.aa},function(a,b){var c=a[1].call(this,K(this,this.D+this.J),b.call(this));P(this,c);this.A-=this.C.oa},function(a,b){var c=a[1].call(this,K(this,this.D+this.I),b.call(this));P(this,c);this.A-=this.C.pa},function(a,b){var c=a[1].call(this,L(this,this.K+this.J), b.call(this));P(this,c);this.A-=this.C.pa},function(a,b){var c=a[1].call(this,L(this,this.K+this.I),b.call(this));P(this,c);this.A-=this.C.oa},function(a,b){var c=a[1].call(this,K(this,this.J),b.call(this));P(this,c);this.A-=this.C.aa},function(a,b){var c=a[1].call(this,K(this,this.I),b.call(this));P(this,c);this.A-=this.C.aa},function(a,b){var c=a[1].call(this,K(this,R(this)),b.call(this));P(this,c);this.A-=this.C.Ka},function(a,b){var c=a[1].call(this,K(this,this.D),b.call(this));P(this,c);this.A-= @@ -934,7 +934,7 @@ function Ym(a,b){if(1==b)return a.Ja[0]=pm[0],a.Ja[1]=pm[7],a.Ja;if(2==b){var c= (c.Uc[20]&12)<<4,c.Uc[16]&128&&(g&=-49,g|=(c.Uc[20]&3)<<4),g=d[g],k=g<<2&252,q=g>>4&252,g=g>>10&252):(k=(g&4?170:0)|(g&32?85:0),q=(g&2?170:0)|(g&16?85:0),g=(g&1?170:0)|(g&8?85:0)),a.Ja[f]=[k,q,g,255]}a.xb=!0}return a.Ja}function Cl(a,b,c,d){a.Lc=b;a.rd=c;a.rb=d} function Um(a,b){var c=!1;if(window&&a.Lc&&(!b||a.W)){var d=0,e=a.rb?a.rb:8,f=Ym(a);Zm(a,3,a.rd[0],d,e,8,a.Lc,f)&&(c=!0);d=a.rb?0:2048;e=a.rb?a.rb:9;Zm(a,1,a.rd[1],d,e,14,a.Lc,nm,om)&&(c=!0);a.rb&&Zm(a,a.nb,a.rd[1],0,a.rb,14,a.Lc,f)&&(c=!0)}return c}function Zm(a,b,c,d,e,f,g,k,q){var r=!1;null!=c&&($m(a,b,c,d,e,f,g,k,q)&&(r=!0),a.Rg&&$m(a,b<<1,c,d,e,f,g,k,q)&&(r=!0));return r} function $m(a,b,c,d,e,f,g,k,q){var r=!1,x=b&1?0:1,B=a.Va[b],y=16>k.length?k.length:16;B||(B={Rc:e<ha||!V?ha:8,Da=oa.createImageData(r.Rc,r.Sc),Oa=0;256>Oa;Oa++){for(Ja= -0;Ja=ha-2,Uc=da[Ja>(8<=ab&&192<=Oa&&223>=Oa?7:ab)?J:eb;an(Da,Ie,Wd,Je);F&&an(Da,Ie+1,Wd,Je)}oa.putImageData(Da,(Oa&15)*r.Rc,(Oa>>4)*r.Sc)}r.Ne[U]="#"+l(J[0],2)+l(J[1],2)+l(J[2],2);r.xi[U]=J;r.Vg[U]=va;r=!0}}a.Va[b]=B;return r}function bn(a){0a.Yb&&(a.Yb=0):a.Yb=-1} +0;Ja=ha-2,Uc=da[Ja>(8<=ab&&192<=Oa&&223>=Oa?7:ab)?J:eb;an(Da,He,Wd,Ie);F&&an(Da,He+1,Wd,Ie)}oa.putImageData(Da,(Oa&15)*r.Rc,(Oa>>4)*r.Sc)}r.Ne[U]="#"+l(J[0],2)+l(J[1],2)+l(J[2],2);r.xi[U]=J;r.Vg[U]=va;r=!0}}a.Va[b]=B;return r}function bn(a){0a.Yb&&(a.Yb=0):a.Yb=-1} function Xm(a){if(a.W){for(var b=10;15>=b;b++)if(null==a.C.zb[b])return;var c=a.C.zb[10],b=c&31,d=a.C.zb[11]&31,e=a.C.zb[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)cn(a);else{c=a.C.zb[15]+((a.C.zb[14]&63)<<8);a.ua!=c&&(cn(a),a.ua=c);d=d-b+1;if(a.gg!=b||a.Be!=d)a.gg=b,a.Be=d;a.ib=e+1;bn(a)}}} function cn(a){if(0<=a.ua){if(void 0!==a.ka){var b=a.ka[a.ua];if(b&131072){var b=b&-131073,c=a.ua%a.O,d=a.ua/a.O|0;a.W&&a.Va[a.W]&&(a.qb&&dn(a,c,d,b,a.qb),dn(a,c,d,b));a.ka[a.ua]=b}}a.ua=-1}} function en(a){var b,c=a.C;a.Ge=!1;var d=c.Yd[5];if(null!=d){b=1024;var e=0,f=c.Yd[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.ed=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.nb==Dl&&(e=3,c.ed=f&7)}d&8&&(b=1280);c=c.Ie[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.Ge=!0));b|=e}return b} @@ -1185,22 +1185,22 @@ tq(a,g[1],!0);if(B)if(a.Ba=B,void 0===g[2])a.U("begin assemble at "+mq(B)),a.Ma= a.U("\tbc [a]\tclear breakpoint at addr [a]"),a.U("\tbl\tlist all breakpoints"),a.U("\tbn [n]\tbreak after [n] instruction(s)");else{var V=U.charAt(1);if("l"==V){var Y=0,Y=Y+Kq(a,a.A),Y=Y+Kq(a,a.za);(Y+=Kq(a,a.la))||a.U("no breakpoints")}else if("n"==V)a.Va=Zp(a,F),a.U("break after "+a.Va+" instruction(s)");else if(void 0===F)a.U("missing breakpoint address");else{var ha={};if("*"!=F&&(ha=tq(a,F,!0,!0),!ha))break a;F=null==ha.Xa?F:ia(ha.Xa);"c"==V?null==ha.Xa?(Ep(a),a.U("all breakpoints cleared")): lq(a,a.A,ha)||lq(a,a.za,ha)||lq(a,a.la,ha)||a.U("breakpoint missing: "+mq(ha)):"i"==V?a.U("breakpoint "+(mc(a.ja,ha.Xa)?"enabled":"cleared")+": port "+F+" (input)"):"o"==V?a.U("breakpoint "+(qc(a.ja,ha.Xa)?"enabled":"cleared")+": port "+F+" (output)"):null!=ha.Xa&&(wq(a,ha,O),"p"==V?a.Nd(a.A,ha):"r"==V?a.Nd(a.za,ha):"w"==V?a.Nd(a.la,ha):a.U("unknown breakpoint command: "+V))}}}break;case "c":$q(a);break;case "d":a:{var da=g,eb,va=da[0],oa=da[1],Oa=da[2],ab=da[3];if("?"==oa){var Ja="";for(eb in Rp)a.ib[eb]&& (Ja&&(Ja+=","),Ja+=eb);Ja+=",state,symbols";a.U("dump memory commands:");a.U("\tdb [a] [#] dump # bytes at address a");a.U("\tdw [a] [#] dump # words at address a");a.U("\tdd [a] [#] dump # dwords at address a");a.U("\tdh [#] [#] dump # instructions from history");a.U("\tds [#] dump descriptor info for selector #");Ja.length&&a.U("dump extension commands:\n\t"+Ja)}else if("state"==oa){var Vb=hr(a.ia,!0);"console"==Oa?console.log(Vb):($q(a),a.U(Vb))}else if("symbols"==oa)for(var Da= -0;Da>>20;La.zi= -a.M.Ld+La.ek;La.Db=be.ya[(La.zi&be.Mb)>>>be.Pa];La.Xi=La.Db.Xd(La.ek);La.fk=(Ve&4190208)>>>10;La.Ai=(La.Xi&-4096)+La.fk;La.Eb=be.ya[(La.Ai&be.Mb)>>>be.Pa];La.Yi=La.Eb.Xd(La.fk);La.Lk=(La.Yi&-4096)+(Ve&4095)}if(ae=La){a.U("linear PDE addr PDE PTE addr PTE physical");a.U("--------- ---------- -------- ---------- -------- ----------");var td="%"+l(Ve),td=td+(" %%"+yq(ae.zi,ae.Xi)),td=td+(" %%"+yq(ae.Ai,ae.Yi,!0)),td=td+(" %%"+l(ae.Lk));a.U(td)}else a.U("unsupported operation")}}else a.U("missing address")}else{if("d"== +0;Da>>20;La.zi= +a.M.Ld+La.ek;La.Db=be.ya[(La.zi&be.Mb)>>>be.Pa];La.Xi=La.Db.Xd(La.ek);La.fk=(Ue&4190208)>>>10;La.Ai=(La.Xi&-4096)+La.fk;La.Eb=be.ya[(La.Ai&be.Mb)>>>be.Pa];La.Yi=La.Eb.Xd(La.fk);La.Lk=(La.Yi&-4096)+(Ue&4095)}if(ae=La){a.U("linear PDE addr PDE PTE addr PTE physical");a.U("--------- ---------- -------- ---------- -------- ----------");var ud="%"+l(Ue),ud=ud+(" %%"+yq(ae.zi,ae.Xi)),ud=ud+(" %%"+yq(ae.Ai,ae.Yi,!0)),ud=ud+(" %%"+l(ae.Lk));a.U(ud)}else a.U("unsupported operation")}}else a.U("missing address")}else{if("d"== va){if("disk"==oa){da[0]="l";da[1]="json";dr(a,da);break a}for(eb in Rp)if(da[1]==eb){var gn=a.ib[eb];gn?(da.shift(),da.shift(),gn(da)):a.U("no dump registered for "+oa);break a}oa||(va=a.Lc||"db")}else a.Lc=va;if("dh"==va){var hn=oa,jn=Oa,kn="",ln=0,tb=a.Oa,wc=a.qa;if(wc.length){var Eb=+hn||a.Zb,ce=+jn||10;isNaN(Eb)?Eb=ce:kn="more ";Eb>wc.length&&(a.U("note: only "+wc.length+" available"),Eb=wc.length);tb-=Eb;0>tb&&(null==wc[wc.length-1].ga?(Eb=tb+Eb,tb=0):tb+=wc.length);var li=[];"call"==jn&&(ce= 1E5,li=["CALL"]);for(void 0!==hn&&a.U(Eb+" instructions earlier:");0=wc.length&&(tb=0);a.Zb=Eb;ln++;ce--}}ln||(a.U("no "+kn+"history available"),a.Zb=void 0)}else if("di"==va)da.shift(),a.U("no information");else{var de=tq(a,oa);if(de&&(null!=de.ga||null!=de.Ia)){var sg=0;Oa&&("l"==Oa.charAt(0)&& -(Oa=Oa.substr(1)||ab),sg=Zp(a,Oa)>>>0,65536>4||1,mi="dd"==va?4:"dw"==va?2:1,nn=0;nnpi;pi++){var ug=a.Wa(de,1),tg=tg|ug<<(ni++<<3);ni==mi&&(We+=l(tg,2*mi),We+=1==mi?7==pi?"-":" ":" ",tg=ni=0);oi+=32<=ug&&128>ug?String.fromCharCode(ug):"."}ud&&(ud+="\n");ud+=oa+" "+We+" "+oi}ud&&a.U(ud);a.Jb=de}}}}}break;case "e":if("else"==g[0])break;var vg=1,on=255,pn=a.Wa,qn=a.tc;"ew"==g[0]&&(vg=2,on=65535, -pn=a.va,qn=a.pb);var rn=vg<<1,sn=g[1];if(null==sn)a.U("edit memory commands:"),a.U("\teb [a] [...] edit bytes at address a"),a.U("\tew [a] [...] edit words at address a");else{var wg=tq(a,sn);if(wg)for(var xg=2;xgvi;){for(var xc=null,Fr=256;Wc.Xa>>>0>>0;){Ze.Xa=a.vb(Wc,!0);if(null==Wc.Ia||!Fr--)break;Ze.ga=un;if(xc=fr(a,Ze))break;Ze.ga=a.vb(Wc);if(xc=fr(a,Ze,!0)){un=a.vb(Wc,!0);0>>0,65536>4||1,mi="dd"==va?4:"dw"==va?2:1,nn=0;nnpi;pi++){var ug=a.Wa(de,1),tg=tg|ug<<(ni++<<3);ni==mi&&(Ve+=l(tg,2*mi),Ve+=1==mi?7==pi?"-":" ":" ",tg=ni=0);oi+=32<=ug&&128>ug?String.fromCharCode(ug):"."}vd&&(vd+="\n");vd+=oa+" "+Ve+" "+oi}vd&&a.U(vd);a.Jb=de}}}}}break;case "e":if("else"==g[0])break;var vg=1,on=255,pn=a.Wa,qn=a.tc;"ew"==g[0]&&(vg=2,on=65535, +pn=a.va,qn=a.pb);var rn=vg<<1,sn=g[1];if(null==sn)a.U("edit memory commands:"),a.U("\teb [a] [...] edit bytes at address a"),a.U("\tew [a] [...] edit words at address a");else{var wg=tq(a,sn);if(wg)for(var xg=2;xgvi;){for(var xc=null,Fr=256;Wc.Xa>>>0>>0;){Ye.Xa=a.vb(Wc,!0);if(null==Wc.Ia||!Fr--)break;Ye.ga=un;if(xc=fr(a,Ye))break;Ye.ga=a.vb(Wc);if(xc=fr(a,Ye,!0)){un=a.vb(Wc,!0);0/g.exec(a)){var e=d[2];b("Loading "+e+"...");za(e,!0,null,null,function(f,g,k){if(k||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+k+")");else{if(f=d[3])if(k=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var q=k[0],r,x=/( [a-z]+=)(['"])(.*?)\2/g;r=x.exec(f);)q=0>q.indexOf(r[1])?q.replace(">",r[0]+">"):q.replace(new RegExp(r[1]+"(['\"])(.*?)\\1"),r[0]);k[0]!=q&&(g=g.replace(k[0],q))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/, "");a=a.replace(d[0],g);Jr(a,b,c)}})}else c(a,null)} -function Kr(a,b,c,d){function e(a){if(void 0===k){var b=g&&qb(g,"machine-warning");k=b&&b[0]||g}k&&(k.innerHTML=na(a))}function f(a){e("Error: "+a);q&&(--xr||Ua(!0));q=!1}var g,k,q=!0;xr++;hb[a]={};try{if(g=document.getElementById(a)){c||(c="/versions/pcjs/1.20.9/components.xsl");var r=function(d,k){k?(ib(a,"xml",d),yr(c,null,null,!1,e,function(c,d){if(d)if(ib(a,"xsl",c),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var q=k.transformNode(d);q?(g.outerHTML=q,--xr||Ua(!0)): -f("transformNodeToObject failed")}else document.implementation&&document.implementation.createDocument?(q=new XSLTProcessor,q.importStylesheet(d),(q=q.transformToFragment(k,document))?g.parentNode?(g.parentNode.replaceChild(q,g),--xr||Ua(!0)):f("invalid machine element: "+a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f(c)})):f(d)};"<"!=b.charAt(0)?yr(b,a,d,!0,e,r):zr(b,null,a,d,!1,e,r)}else f("missing machine element: "+a)}catch(x){f(x.message)}return q} -window.embedPC=function(a,b,c,d){Ua(!1);return Kr(a,b,c,d)};window.savePC=function(a){var b=lb("Computer",a),c=lb("Debugger",a);if(b)return za("/versions/pcjs/null/pc"+(c?"-dbg":"")+".js"),!0;Ba("Unable to identify machine '"+a+"'");return!1};window.enableEvents=Ua;window.sendEvent=Wa;})(); +function Kr(a,b,c,d){function e(a){if(void 0===k){var b=g&&qb(g,"machine-warning");k=b&&b[0]||g}k&&(k.innerHTML=na(a))}function f(a){e("Error: "+a);q&&(--xr||Ua(!0));q=!1}var g,k,q=!0;xr++;hb[a]={};try{if(g=document.getElementById(a)){c||(c="/versions/pcjs/1.20.9/components.xsl");var r=function(d,k){k?(ib(a,b,d),yr(c,null,null,!1,e,function(d,q){if(q)if(ib(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var r=k.transformNode(q);r?(g.outerHTML=r,--xr||Ua(!0)):f("transformNodeToObject failed")}else document.implementation&& +document.implementation.createDocument?(r=new XSLTProcessor,r.importStylesheet(q),(r=r.transformToFragment(k,document))?g.parentNode?(g.parentNode.replaceChild(r,g),--xr||Ua(!0)):f("invalid machine element: "+a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f(d)})):f(d)};"<"!=b.charAt(0)?yr(b,a,d,!0,e,r):zr(b,null,a,d,!1,e,r)}else f("missing machine element: "+a)}catch(x){f(x.message)}return q} +function Lr(a,b,c,d){if(b&&(c=d[0],b=b.match(/^(\s*\(function\(\)\{)([\s\S]*)(}\)\(\);\s*)$/))){d=hb[c];var e={},f;for(f in d){var g=d[f];if("xml"==f)for(var k,q=/[ \t]*]*path=(['"])(.*?)\1.*?<\/disk>\n?/g;k=q.exec(d[f]);){var r=k[2];r&&(d[r]?console.log("saving disk: '"+r):g=g.replace(k[0],""))}console.log("saving resource: '"+f+"' ("+g.length+" bytes)");e[f]=g}f=JSON.stringify(e);b=b[1]+"var resources="+f+";"+b[2]+b[3];console.log("saving machine: '"+c+"' ("+b.length+" bytes)");f="data:application/octet-stream;base64,"+ +btoa(b);c=document.createElement("a");"string"==typeof c.download?(c.href=f,c.download=ja(a,!0)+".json",document.body.appendChild(c),c.click(),document.body.removeChild(c)):window.open(f)}}window.embedPC=function(a,b,c,d){Ua(!1);return Kr(a,b,c,d)};window.savePC=function(a,b){var c=lb("Computer",a),d=lb("Debugger",a);if(c)return b||(b="/versions/pcjs/1.20.9/pc"+(d?"-dbg":"")+".js"),za(b,!0,null,null,Lr,[a,c,d]),!0;Ba("Unable to identify machine '"+a+"'");return!1};window.enableEvents=Ua; +window.sendEvent=Wa;})(); diff --git a/docs/pcjs/demos/pc.js b/docs/pcjs/demos/pc.js index d0f691910..158829b3b 100644 --- a/docs/pcjs/demos/pc.js +++ b/docs/pcjs/demos/pc.js @@ -3,16 +3,16 @@ function ca(a,b){var c;if(a){b||(b=16);if("$"==a.charAt(0))b=16,a=a.substr(1);el function da(a,b){var c="";void 0===b?b=8:8=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function ea(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));d=c.indexOf("&");0":">",'"':""","'":"'"};function ha(a){return a.replace(/[&<>"']/g,function(a){return ga[a]})}var ia=Date.now||function(){return+new Date};function la(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}var ma=[31,28,31,30,31,30,31,31,30,31,30,31]; function na(a,b){var c=0,d=1,e;for(e in a){if(d>=arguments.length)break;var k=a[e],l=arguments[d++],c=c&~k.qg|l<>a.shift} -function pa(a,b,c,d,e,k){b=!!b;var l=0,p=null,q=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(q.onreadystatechange=function(){4===q.readyState&&(p=q.responseText,200==q.status||!q.status&&p.length&&"file:"==(window?window.location.protocol:"file:")||(l=q.status||-1),e&&(d?e.call(d,a,p,l,k):e(a,p,l,k)))});if(c){var w="",B;for(B in c)c.hasOwnProperty(B)&&(w&&(w+="&"),w+=B+"="+encodeURIComponent(c[B]));w=w.replace(/%20/g,"+");q.open("POST",a,b);q.setRequestHeader("Content-type", -"application/x-www-form-urlencoded");q.send(w)}else q.open("GET",a,b),q.send();c=[];b||(p=q.responseText,200!=q.status&&(l=q.status||-1),e&&(d?e.call(d,a,p,l,k):e(a,p,l,k)),c=[l,p]);return c}function qa(){return"http://"+(window?window.location.host:"www.pcjs.org")}function ra(a){window&&window.alert(a)}function sa(a){var b=!1;window&&(b=window.confirm(a));return b}var ta=null; +function pa(a,b,c,d,e,k){var l=0,p=null;if(resources&&(p=resources[a]))return e&&(d?e.call(d,a,p,l,k):e(a,p,l,k)),[l,p];var q=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(q.onreadystatechange=function(){4===q.readyState&&(p=q.responseText,200==q.status||!q.status&&p.length&&"file:"==(window?window.location.protocol:"file:")||(l=q.status||-1),e&&(d?e.call(d,a,p,l,k):e(a,p,l,k)))});if(c){var v="",B;for(B in c)c.hasOwnProperty(B)&&(v&&(v+="&"),v+= +B+"="+encodeURIComponent(c[B]));v=v.replace(/%20/g,"+");q.open("POST",a,!!b);q.setRequestHeader("Content-type","application/x-www-form-urlencoded");q.send(v)}else q.open("GET",a,!!b),q.send();c=[];b||(p=q.responseText,200!=q.status&&(l=q.status||-1),e&&(d?e.call(d,a,p,l,k):e(a,p,l,k)),c=[l,p]);return c}function qa(){return"http://"+(window?window.location.host:"www.pcjs.org")}function ra(a){window&&window.alert(a)}function sa(a){var b=!1;window&&(b=window.confirm(a));return b}var ta=null; function ua(){if(null==ta){var a=!1;if(window)try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"==window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}ta=a}return ta}function va(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b}function wa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1} function xa(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var ya={init:[],show:[],exit:[]},za=!1,Aa=!0;function Da(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Ea(a){ya.init.push(a)} function Fa(a){if(Aa)try{for(var b=0;b>>a.ha;0a.yb?a.yb:c;if(l&&l.size){if(l.type==d&&l.controller==e){if(b+c<=l.ee)return l.Be+=l.ee-b,l.ee=b,!0;if(b>=l.ee+l.Be){q=l.size-(b-p);q>c&&(q=c);l.Be=b-l.ee+q;c-=q;b=p+a.yb;continue}}return zb(a,1,b,c)}l=a.W[k];b=new g(b,q,a.yb,d,e);sb(b,a.Ta,l);a.W[k++]=b;b=p+a.yb;c-=q}return 0>=c?(a=a.A,a.Ua&-2147483648&&Ab(a),!0):zb(a,2,b,c)} function xb(a,b){if(32==a.F)b?a.H&&(Cb(a,1048576,1048576,a.H),a.H=null):a.H||(a.H=Db(a,1048576,1048576),Cb(a,1048576,1048576,Db(a,0,1048576)));else if(20>>this.ha;0>>a.ha;0>>=a.ha;0>>a.ha;0>>this.ha].cc(a&this.B,a)}; +function Cb(a,b,c,d,e){for(var k=0,l=b>>>a.ha;0>>this.ha].cc(a&this.B,a)}; f.ma=function(a){var b=a&this.B,c=(a&this.La)>>>this.ha;return b!=this.B?this.W[c].df(b,a):this.W[c++].cc(b,a)|this.W[c&this.D].cc(0,a+1)<<8};function Lb(a,b){var c=b&a.B,d=(b&a.La)>>>a.ha;return c!=a.B?a.W[d].ef(c,b):a.W[d++].Cd(c,b)|a.W[d&a.D].Cd(0,b+1)<<8}f.ka=function(a){var b=a&this.B,c=(a&this.La)>>>this.ha;if(b>>this.ha].dc(a&this.B,b&255,a)};f.gb=function(a,b){var c=a&this.B,d=(a&this.La)>>>this.ha;c!=this.B?this.W[d].lf(c,b&65535,a):(this.W[d++].dc(c,b&255,a),this.W[d&this.D].dc(0,b>>8&255,a+1))};function Mb(a,b,c){var d=b&a.B,e=(b&a.La)>>>a.ha;d!=a.B?a.W[e].sh(d,c&65535,b):(a.W[e++].jf(d,c&255,b),a.W[e&a.D].jf(0,c>>8&255,b+1))} f.$a=function(a,b){var c=a&this.B,d=(a&this.La)>>>this.ha;if(c>>=8};function Nb(a,b,c,d){void 0===d&&(d=0);for(var e in c){var k=a,l=+e+d,p=c[e].bind(b);if(void 0!==p)for(var q=+e+d;q<=l;q++)void 0!==k.K[q]?ra("Input port 0x"+da(q,4)+" already registered"):k.K[q]=[p,!1]}} -function Ob(a,b,c,d){for(var e=0,k=0;0>>=k)&q;if(void 0!==l&&l[0])l[0](b,q,e);k+=p<<3;b+=p;c-=p}}function zb(a,b,c,d,e){b="Memory block error ("+b+": "+da(c)+","+da(d)+")";e?a.log(b):ra(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 g(a,b,c,d,e,k){this.id=Tb+=2;this.aa=null;this.J=0;this.ee=a;this.Be=b;this.size=c||0;this.type=d||Ub;this.K=d==Gb;this.controller=null;this.A=k;sb(this);this.Oa=this.Sh=!1;if(c)if(e)this.controller=e,a=e.Xh(a),this.aa=a[0],this.J=a[1],Eb(this,e.pg());else if(db)this.S=new ArrayBuffer(c),this.O=new DataView(this.S,0,c),this.Pa=new Uint8Array(this.S,0,c),this.td=new Uint16Array(this.S,0,c>>1),this.aa=new Int32Array(this.S,0,c>>2),Eb(this,Hb?Ib:Jb);else{this.aa=Array(c>>2);for(e=0;e>8&65280|a>>>24);return a} @@ -54,26 +54,26 @@ if(db)var Jb=[g.prototype.oa,g.prototype.Na,g.prototype.Ca,g.prototype.vb,g.prot function hc(a,b){Ia.call(this,"CPU",a,hc);var c=a.cycles||b,d=a.multiplier||1;this.Y={};this.Y.$c=c;this.Y.Ad=d;this.Y.Hf=Math.round(this.Y.$c/1E4)/100;this.Y.se=this.Y.Hf*this.Y.Ad;this.ja.Rb=!1;this.ja.Uh=!1;this.ja.kg=a.autoStart;this.ja.Th=!1;c=La.autostart;void 0!==c&&(this.ja.kg="true"==c?!0:"false"==c?!1:null);this.ja.Df=!1;this.Y.Jf=this.Y.ue=0;this.Y.Kf=a.csStart;this.Y.Le=a.csInterval;this.Y.Me=a.csStop;this.Yd=[];this.Dj=this.qh.bind(this);ab(this)}Qa(hc);var ic=["power","reset"];f=hc.prototype; f.nc=function(a,b,c,d){this.ua=a;this.na=b;this.Ta=d;for(b=0;b>>d.ha;k=k+l-1>>>d.ha;e.ig=0;for(e.cd=0;p<=k;)l=d.W[p],e.ig+=l.size,l.size&&(e.dg.push(na(nb,p,0,0,l.type)),e.cd++),p++;c.B=e;c.sa=c.B.cd*c.na.yb/691200;d=0;c.B.Lh=0;c.B.Fe||(c.B.Fe=[]);var e=-1,p=0,q=-1;for(k=0;k>1),q=l.y+(l.A>>1),w=l.A,l.Fc>1,p.N+=(p.T>>1)-2,pb(p,e),p.la&&(p.H.restore(),p.la=!1)}}else pb(c,"This space intentionally left blank");c.context.drawImage(c.O,0,0,c.O.width,c.O.height,c.Wa,c.fb,c.Ka,c.Ma);c.Ca=!1}}f.Tc=function(){this.Yd.length&&this.Yd[0].Tc()}; +function nc(a,b){for(var c=0;c>>d.ha;k=k+l-1>>>d.ha;e.ig=0;for(e.cd=0;p<=k;)l=d.W[p],e.ig+=l.size,l.size&&(e.dg.push(na(nb,p,0,0,l.type)),e.cd++),p++;c.B=e;c.sa=c.B.cd*c.na.yb/691200;d=0;c.B.Lh=0;c.B.Fe||(c.B.Fe=[]);var e=-1,p=0,q=-1;for(k=0;k>1),q=l.y+(l.A>>1),v=l.A,l.Fc>1,p.N+=(p.T>>1)-2,pb(p,e),p.la&&(p.H.restore(),p.la=!1)}}else pb(c,"This space intentionally left blank");c.context.drawImage(c.O,0,0,c.O.width,c.O.height,c.Wa,c.fb,c.Ka,c.Ma);c.Ca=!1}}f.Tc=function(){this.Yd.length&&this.Yd[0].Tc()}; f.Eb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.pa[b]=c;a=!0;break;case "run":this.pa[b]=c;c.onclick=function(){var a;if(a=d.ua)if(a=d.ua,a.ja.Qb)a=!0;else{var b=null,c,p=Ta(a.id);for(c=0;cc&&(c=60);2>c&&(c=2);var d=1;b&&1a.Y.Hf&&(c=Math.round(c/a.Y.Ad));return c}function jc(a){a.Y.zd=0;a.Hc=a.zc=a.kc=a.A=0;kc(a);qc(a,1)} function qc(a,b,c){if(void 0!==b){.8>a.Y.zd/a.Y.se&&(b=1);a.Y.Ad=b;b=a.Y.Hf*a.Y.Ad;if(a.Y.se!=b){a.Y.se=b;b=a.Y.se.toFixed(2)+"Mhz";var d=a.pa.setSpeed;d&&(d.textContent=b);a.pc("target speed: "+b)}c&&a.Tc()}sc(a,a.zc);a.zc=0;a.Y.te=ia();a.Y.Pd=0;tc(a)} f.qh=function(a){if($a(this,!0)){if(!this.ja.Rb){qc(this);this.ua&&this.ua.start(this.Y.te,uc(this));this.ja.Rb=!0;this.ja.Uh=!0;this.T&&vc(this.T);var b=this.pa.run;b&&(b.textContent="Halt");this.Xd(!0);a&&this.Tc()}this.Y.yg>=this.Y.$c&&tc(this,!0);this.Y.Qe=0;this.Y.If=ia();this.Y.Pd&&(a=this.Y.If-this.Y.Pd,a>this.Y.ai&&(this.Y.te+=a,this.Y.te>this.Y.If&&(this.Y.te=this.Y.If)));try{do{var c=this.ja.Df?1:this.Y.bl;if(this.T){wc(this.T);var d=this.T;a=c;var e=d.N[0];if(e.Md){var k=(uc(d.A,d.la)- -e.gd)/d.Qa|0,l=xc(d,0)-k;6==e.mode&&(l-=k);var p=l*d.Qa|0;6==e.mode&&(p>>=1);a>p&&(a=p)}var c=a,q=this.T;a=c;if(q.B&&q.B[11]&64){var w=q.ta-uc(q.A,q.la);0w&&(a=w)}c=a}try{this.pj(c)}catch(G){if("number"!=typeof G)throw G;}var B=this.kc-this.A;this.zc+=B;this.Y.Qe+=B;sc(this,0,!0);a=B;this.ja.Df&&(b=!1,this.Y.Jf=this.Y.Jf+this.Wh()|0,this.Y.ue-=a,0>=this.Y.ue&&(this.Y.ue+=this.Y.Le,b=!0),0<=this.Y.Me&&this.Y.Me<=uc(this)&&(this.Y.Le=this.Y.Me=-1,kc(this),pc(this),b=!0),b&&this.pc(uc(this)+" cycles: checksum="+ +e.gd)/d.Qa|0,l=xc(d,0)-k;6==e.mode&&(l-=k);var p=l*d.Qa|0;6==e.mode&&(p>>=1);a>p&&(a=p)}var c=a,q=this.T;a=c;if(q.B&&q.B[11]&64){var v=q.ta-uc(q.A,q.la);0v&&(a=v)}c=a}try{this.pj(c)}catch(G){if("number"!=typeof G)throw G;}var B=this.kc-this.A;this.zc+=B;this.Y.Qe+=B;sc(this,0,!0);a=B;this.ja.Df&&(b=!1,this.Y.Jf=this.Y.Jf+this.Wh()|0,this.Y.ue-=a,0>=this.Y.ue&&(this.Y.ue+=this.Y.Le,b=!0),0<=this.Y.Me&&this.Y.Me<=uc(this)&&(this.Y.Le=this.Y.Me=-1,kc(this),pc(this),b=!0),b&&this.pc(uc(this)+" cycles: checksum="+ da(this.Y.Jf)));this.Y.Oe-=B;0>=this.Y.Oe&&(this.Y.Oe+=this.Y.ci,nc(this));this.Y.Ne-=B;0>=this.Y.Ne&&(this.Y.Ne+=this.Y.bi,this.Xd());this.Y.Pe-=B;if(0>=this.Y.Pe){this.Y.Pe+=this.Y.xg;break}}while(this.ja.Rb)}catch(G){pc(this);lc(this);this.ua&&this.ua.stop(ia(),uc(this));$a(this,!1);cb(this,G.stack||G.message);return}c=setTimeout;d=this.Dj;this.Y.Pd=ia();e=this.Y.ai;this.Y.Qe&&(e=Math.round(e*this.Y.Qe/this.Y.xg));e-=this.Y.Pd-this.Y.If;if(k=this.Y.Pd-this.Y.te)this.Y.zd=Math.round(this.zc/(10* k))/100,864E5<=k&&(this.Hc=0,this.T&&wc(this.T,!0),qc(this));if(0>e||this.Y.zdthis.id&&h.call(e,b&&3==this.id?10:13,a&65532)}return-1};f.Zk=function(a){var b=this.A;a=b.Ab+(a<<2);var c=b.ma(a);b.ca&=-769;return this.load(b.ma(a+2))+c|0};f.Yk=function(a){var b=this.A;a<<=3;var c=b.Ab+a|0;if(7<=(b.yc-c|0))return this.F=!0,a=Ac(this,c,a),-1!==a&&(a+=this.af),a;h.call(b,13,a|2);return-1};f.Nh=function(a){return this.Ea+a|0}; f.Ph=function(a){return this.Ea+a|0};f.Mh=function(a,b){return(a>>>0)+b<=this.D?this.Ea+a|0:this.Af()};f.Fj=function(a,b){return(a>>>0)+b>this.D?this.Ea+a|0:this.Af()};f.Af=function(){h.call(this.A,13,0);return-1};f.Oh=function(a,b){return(a>>>0)+b<=this.D?this.Ea+a|0:this.Bf()};f.Gj=function(a,b){return(a>>>0)+b>this.D?this.Ea+a|0:this.Bf()};f.Bf=function(){h.call(this.A,13,0);return-1}; function Bc(a,b,c,d,e){a.ra=b;a.Ea=d;a.cb=e;a.D=(e>>>0)+1;a.rb=c;a.type=c&7936;a.ext=c>>16&192;a.fc=(b&4?a.A.Pb.Ea:a.A.kb)+(b&65528)|0;4>a.id&&zc(a,!0)}function Cc(a,b,c){var d=a.A,e=d.ma(b+2),k=d.ma(b)|(e&255)<<16,d=d.ma(b+4);a.ra=c;a.Ea=k;a.cb=d;a.D=(d>>>0)+1;a.rb=e;a.type=e&7936;a.ext=0;a.fc=b;4>a.id&&zc(a,!0)} -function Ac(a,b,c,d){var e=a.A;if(!d&&c===a.B.ra)return a.ra=c,a.Ea=a.B.Ea,a.cb=a.B.cb,a.D=(a.B.cb>>>0)+1,a.rb=a.B.rb,a.type=a.B.type,a.ext=a.B.ext,a.fc=a.B.fc,a.B.ra=-1,zc(a,!0,!0,!1),a.Ea;a.B.ra=-1;var k=e.ma(b+0),l=e.ma(b+4),p=l&7936,q=e.ma(b+2)|(l&255)<<16,w=e.ma(b+6),B=c&65528;if(80386<=e.ia){var G=k,q=q|(w&65280)<<16,k=k|(w&15)<<16;w&128&&(k=k<<12|4095)}switch(a.id){case 1:var C=a.F;a.oe=!1;if(C&&1==c&&a.H.length){var K=a.H[a.af-1];if(K&&!K())return-1}var V=c&3,X=(l&24576)>>13,K=-1,ja,ka;B|| +function Ac(a,b,c,d){var e=a.A;if(!d&&c===a.B.ra)return a.ra=c,a.Ea=a.B.Ea,a.cb=a.B.cb,a.D=(a.B.cb>>>0)+1,a.rb=a.B.rb,a.type=a.B.type,a.ext=a.B.ext,a.fc=a.B.fc,a.B.ra=-1,zc(a,!0,!0,!1),a.Ea;a.B.ra=-1;var k=e.ma(b+0),l=e.ma(b+4),p=l&7936,q=e.ma(b+2)|(l&255)<<16,v=e.ma(b+6),B=c&65528;if(80386<=e.ia){var G=k,q=q|(v&65280)<<16,k=k|(v&15)<<16;v&128&&(k=k<<12|4095)}switch(a.id){case 1:var C=a.F;a.oe=!1;if(C&&1==c&&a.H.length){var K=a.H[a.af-1];if(K&&!K())return-1}var V=c&3,X=(l&24576)>>13,K=-1,ja,ka;B|| b>=e.kb&&ba.Cb&&(K=-1,!1===C||X==a.Cb||p&1024&&X<=a.Cb))K=m(e),Dc(e,m(e),!0),n(e,K),a.oe=!0,K=0}else{if(256==p||2304==p)return Ec(a,c,C)?a.Ea:-1;if(1024==p)K=2,ka=0,Vp||2048==(p&2560))return h.call(e,13,c&65532),-1;if(!(l&32768))return h.call(e,11,c&65532),-1}break;case 3:if(!B||4096>p||512!=(p&2560))return h.call(e,13,c&65532),-1;if(!(l&32768))return h.call(e,12,c&65532),-1;break;case 4:C=p&-513;if(!B|| -256!=C&&2304!=C)return h.call(e,13,c&65532),-1;2304==C&&(a.Hh=q+e.ma(q+100+2)|0,a.Cj=q+a.cb|0);break;case 6:if(!(p&4096)&&768>>0)+1,a.rb=l,a.type=p,a.ext=w,a.fc=b,zc(a,!0,!0,!1));return q} +256!=C&&2304!=C)return h.call(e,13,c&65532),-1;2304==C&&(a.Hh=q+e.ma(q+100+2)|0,a.Cj=q+a.cb|0);break;case 6:if(!(p&4096)&&768>>0)+1,a.rb=l,a.type=p,a.ext=v,a.fc=b,zc(a,!0,!0,!1));return q} function Ec(a,b,c){var d=a.A,e=a.Cb,k=d.la.ra,l=d.la.Ea;if(!c){if(!(d.la.type&512))return h.call(d,13,b&65532),!1;d.gb(d.la.fc+4,d.la.rb&=-513)}if(-1===d.la.load(b))return!1;var p=d.la.Ea;if(!1!==c){if(d.la.type&512)return h.call(d,13,b&65532),!1;d.gb(d.la.fc+4,d.la.rb|=512)}d.la.type=d.la.type&-513|d.la.rb&512;256==d.la.type||768==d.la.type?(d.gb(l+14,u(d)),d.gb(l+16,Lc(d)),d.gb(l+18,d.G),d.gb(l+20,d.F),d.gb(l+22,d.I),d.gb(l+24,d.B),d.gb(l+26,r(d)),d.gb(l+28,d.K),d.gb(l+30,d.J),d.gb(l+32,d.H),d.gb(l+ 34,d.va.ra),d.gb(l+36,d.Ia.ra),d.gb(l+38,d.Z.ra),d.gb(l+40,d.Ca.ra),d.Pb.load(d.ma(p+42)),Mc(d,d.ma(p+16)|(c?16384:0)),d.G=d.ma(p+18),d.F=d.ma(p+20),d.I=d.ma(p+22),d.B=d.ma(p+24),d.K=d.ma(p+28),d.J=d.ma(p+30),d.H=d.ma(p+32),d.va.load(d.ma(p+34)),d.Ca.load(d.ma(p+40)),Nc(d,d.ma(p+14),d.ma(p+36)),b=38,l=26,a.Cba.id&&a.ra&-4&&-1!==a.fc&& (c=a.fc+5,d=a.A.Lb(c),d&1||a.A.Lc(c,d|1))}b&&(a.Cb=a.ra&3,a.uc=(a.rb&24576)>>13,80386>a.A.ia||!(a.ext&64)?(a.ba=2,a.C=65535):(a.ba=4,a.C=-1),a.Uc=a.ba,a.wa=a.C)}else a.load=a.$h,a.Zh=a.Zk,a.gc=a.Nh,a.hc=a.Ph,a.Cb=a.uc=0,a.fc=-1,a.oe=!1} function Qc(a){this.ia=a.model||8088;var b=a.stepping;this.kd=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}hc.call(this,a,b);this.vh=61442;this.fd=1792;this.uh=28672;this.of=4;this.Ja=255;this.D=80286<=this.ia?fb:eb;this.qa=Rc;this.yh=Sc;this.zh=Tc;this.Ah=Uc;if(80186<=this.ia&&(this.qa=Rc.slice(),this.yh=Sc.slice(),this.zh=Tc.slice(),this.Ja=31,this.qa[15]=Vc,this.qa[96]=Wc,this.qa[97]=Xc,this.qa[98]=Yc,this.qa[99]=Vc,this.qa[100]=Vc, -this.qa[101]=Vc,this.qa[102]=Vc,this.qa[103]=Vc,this.qa[104]=Zc,this.qa[105]=$c,this.qa[106]=ad,this.qa[107]=bd,this.qa[108]=cd,this.qa[109]=dd,this.qa[110]=ed,this.qa[111]=fd,this.qa[192]=gd,this.qa[193]=hd,this.qa[200]=id,this.qa[201]=jd,this.qa[241]=kd,this.yh[7]=ld,this.zh[7]=ld,80286<=this.ia)){this.vh=2;this.fd|=28672;this.of=0;this.qa[15]=md;this.Gc=nd.slice();for(a=0;a=this.kd&&(this.Gc[166]=wd,this.Gc[167]=xd)}}this.rf=[];this.xh=[];this.$f=0;jc(this);this.ja.Je=this.ja.Pj=!1;this.Ch=0;this.vc=this.W=[];this.ha=this.yb=this.ab=this.pf=this.Zd=this.La=this.jc=0;yd(this)}Qa(Qc,hc); +this.qa[101]=Vc,this.qa[102]=Vc,this.qa[103]=Vc,this.qa[104]=Zc,this.qa[105]=$c,this.qa[106]=ad,this.qa[107]=bd,this.qa[108]=cd,this.qa[109]=dd,this.qa[110]=ed,this.qa[111]=fd,this.qa[192]=gd,this.qa[193]=hd,this.qa[200]=id,this.qa[201]=jd,this.qa[241]=kd,this.yh[7]=ld,this.zh[7]=ld,80286<=this.ia)){this.vh=2;this.fd|=28672;this.of=0;this.qa[15]=md;this.Gc=nd.slice();for(a=0;a=this.kd&&(this.Gc[166]=wd,this.Gc[167]=xd)}}this.rf=[];this.xh=[];this.$f=0;jc(this);this.ja.Je=this.ja.Pj=!1;this.Ch=0;this.vc=this.W=[];this.ha=this.yb=this.ab=this.pf=this.Zd=this.La=this.jc=0;yd(this)}Qa(Qc,hc); function Ab(a){var b;if(a.W===a.vc){a.W=Array(a.pf);a.sf=new g(null,0,0,5,null,a);sb(a.sf,a.Ta);for(b=0;ba.tf&&(a.wh[a.tf++]=d);a.W[b]=a.sf}a.qf=[]} -function Zb(a,b,c,d){var e=(b&-4194304)>>>20,k=a.vc[(a.Zc+e&a.La)>>>a.ha],l=k.Td(e);if(!(l&1))return d||zd.call(a,b,!1,c),a.$d;if(!(l&4)&&3==a.Fa)return d||zd.call(a,b,!0,c),a.$d;var p=(b&4190208)>>>10,l=a.vc[((l&-4096)+p&a.La)>>>a.ha],q=l.Td(p);if(!(q&1))return d||zd.call(a,b,!1,c),a.$d;if(!(q&4)&&3==a.Fa)return d||zd.call(a,b,!0,c),a.$d;c=a.vc[((q&-4096)+(b&4095)&a.La)>>>a.ha];if(d)return c;d=b>>>a.ha;q=a.W[d];b=b&-4096;var w;0>>20,k=a.vc[(a.Zc+e&a.La)>>>a.ha],l=k.Td(e);if(!(l&1))return d||zd.call(a,b,!1,c),a.$d;if(!(l&4)&&3==a.Fa)return d||zd.call(a,b,!0,c),a.$d;var p=(b&4190208)>>>10,l=a.vc[((l&-4096)+p&a.La)>>>a.ha],q=l.Td(p);if(!(q&1))return d||zd.call(a,b,!1,c),a.$d;if(!(q&4)&&3==a.Fa)return d||zd.call(a,b,!0,c),a.$d;c=a.vc[((q&-4096)+(b&4095)&a.La)>>>a.ha];if(d)return c;d=b>>>a.ha;q=a.W[d];b=b&-4096;var v;0>2;b.D=l;b.H=p>>2;db&&Hb&&c.aa&&!c.controller&&!c.fe&&!c.ge?(b.Pa=c.Pa,b.td=c.td,b.aa=c.aa,Eb(b,gc)):(b.N=c?Xb(32):0,b.W=c?Xb(96):0,Eb(b,ec));sb(b,a.Ta,q);a.W[d]=b;a.qf.push(d);return b}function Ad(a){a.W!==a.vc&&(a.W=a.vc,a.sf=null,a.qf=null,a.$d=null)}f=Qc.prototype;f.reset=function(){this.ja.Rb&&pc(this);yd(this);jc(this);this.ja.Yc=!1}; function Bd(a,b){var c;switch(b){case 0:c=a.G;break;case 1:c=a.F;break;case 2:c=a.I;break;case 3:c=a.B;break;case 4:c=r(a);break;case 5:c=a.K;break;case 6:c=a.J;break;case 7:c=a.H}return c}function Cd(a,b,c){switch(b){case 0:a.G=c;break;case 1:a.F=c;break;case 2:a.I=c;break;case 3:a.B=c;break;case 4:n(a,c);break;case 5:a.K=c;break;case 6:a.J=c;break;case 7:a.H=c}} function yd(a){a.G=0;a.B=0;a.F=0;a.I=0;a.Ob=0;a.K=0;a.J=0;a.H=0;a.Jb=!1;a.ya=a.Ma=0;a.mc=0;a.Bh=0;a.ld=0;a.Ua=65520;a.Ab=0;a.yc=1023;a.ca=a.Fb=0;a.rd=a.Id=a.qd=a.Ed=0;a.Vb=-1;a.od=a.Gd=-1;a.Sd=a.sa=-1;a.Ia=new yc(a,1,"CS");a.Ca=new yc(a,2,"DS");a.va=new yc(a,2,"ES");a.Z=new yc(a,3,"SS");n(a,0);Dc(a,0);if(80386<=a.ia){switch(a.kd){case 80562:case 80563:a.I=771;break;case 80578:a.I=772;break;case 80594:a.I=773;break;case 80595:case 80596:a.I=776}a.Ua=16;a.Gh=0;a.pd=0;a.Zc=0;a.fb=[0,0,0,0,null,null, @@ -94,9 +94,9 @@ f.Wh=function(){var a=this.G+this.B+this.F+this.I+r(this)+this.K+this.J+this.H|0 function Rd(a,b){for(var c=a.fb[7],d=c>>16,e=0;4>e;e++){if(c&3){var k=!!(d&1),l=a.fb[e],l=l&~(d>>2&3);if(b){var l=a.W[l>>>a.ha],p=a;k?0===l.ge++&&(p&&(l.A=p),cc(l,ac,!1)):0===l.fe++&&(p&&(l.A=p),$b(l,ac,!1))}else l=a.W[l>>>a.ha],k?0===--l.ge&&(k=l,k.dc=k.K?k.Z:k.jf,k.lf=k.K?k.na:k.sh,k.kf=k.K?k.pa:k.la):0===--l.fe&&(k=l,k.cc=k.Cd,k.df=k.ef,k.Td=k.mh)}c>>=2;d>>=4}} function Yb(a,b,c,d){if(!(a.N&8192)&&a.fb[7]&255){c--;var e=a.fb[7],k=e>>16;d=d?1:0==d?3:0;for(var l=0;4>l;l++){if(e&3&&(k&3)==d){var p=k>>2;if(b+c>=a.fb[l]&&b<=a.fb[l]+p){a.fb[6]|=1<>=2;k>>=4}}}function Fc(a,b,c){void 0===b&&(b=!!(a.Ua&1));void 0===c&&(c=!!(a.ca&131072));a.Ah=b&&!c?Sd:Uc;zc(a.Ia,!1,b,c);zc(a.Ca,!1,b,c);zc(a.Z,!1,b,c);zc(a.va,!1,b,c);80386<=a.ia&&(zc(a.Qa,!1,b,c),zc(a.Va,!1,b,c));Od(a)} f.save=function(){var a=new Td(this);D(a,0,[this.G,this.B,this.F,this.I,r(this),this.K,this.J,this.H]);var b=u(this),c=this.Ia.save(),d=this.Ca.save(),e=this.Z.save(),k=this.va.save(),l;null!=this.kb?(l=[this.Ua,this.kb,this.xc,this.Ab,this.yc,this.Pb.save(),this.la.save(),this.Fb],80386<=this.ia&&(l.push(this.Gh),l.push(this.pd),l.push(this.Zc),l.push(this.fb),l.push(this.uf))):l=null;b=[b,c,d,e,k,l,Lc(this)];80386<=this.ia&&(b.push(this.Qa.save()),b.push(this.Va.save()));D(a,1,b);D(a,2,[this.O.Xf, -this.S.Xf,this.N,this.Ba,this.Ka,this.U,this.oa]);D(a,3,[0,this.Hc,this.Y.Ad]);b=this.na;c=!!(this.Ua&-2147483648);d=0;e=[];(k=!b.H&&b.na==b.La)||xb(b,!0);for(l=0;lc&&0<=(a.ag^a.da)&&(8088>=a.ia||a.Ia.cb==a.Ia.wa?E(a,a.da-a.Ia.Ea):-1>c&&h.call(a,13,0))}function Yd(a){a.da=a.Sd}function r(a){return a.Ob&~a.Z.wa|a.xa-a.Z.Ea}function n(a,b){a.Ob=b;a.xa=a.Z.Ea+(b&a.Z.wa)|0}function Zd(a,b,c,d,e,k){if(63!=(e&63)&&e!=a.resultType){var l=(e^a.resultType)&a.resultType;l&&(l&1&&$d(a),l&2&&ae(a),l&4&&be(a),l&8&&ce(a),l&16&&de(a),l&32&&ee(a))}k?(a.rd=d,a.qd=b):(a.rd=b,a.qd=d);a.Id=c;a.Ed=d;a.resultType=e} @@ -174,7 +174,7 @@ function yh(){this.A-=-1===this.U?2:this.D.cj;return 1}function zh(){var a=this. function h(a,b,c,d){var e=!1;this.ja.Je?80186<=this.ia&&(e=!0,0>this.Vb?(-1!=this.od&&(this.Ia.Cb=3,Vd(this,this.od),this.od=-1),Wd(this,this.Sd),-1!=this.Gd&&(Dc(this,this.Gd),this.Gd=-1),-1!==this.sa&&(n(this,this.Ob&~this.Z.wa|this.sa-this.Z.Ea),this.sa=-1)):8!=this.Vb?(b=0,a=8):(b=0,a=-1,yd(this),e=d=!1)):Wd(this,this.Sd);var k=a,l=b,p=se(this,this.da);204!=p||this.yc||(d=!1);this.ca&131072&&(6==k&&99==p||13==k&&205==p)&&(d=!1);983040<=this.da&&1048575>=this.da&&(d=!1);if(d){var q=this.ja.Rb, k="Fault 0x"+da(k,2)+(null!=l?" (0x"+da(l,4)+")":"")+" on opcode "+("0x"+da(p,2));d&&q&&(k+=" (blocked by PCjs Debugger)");this.Ha(k);pc(this)}if(d&&e)throw-1;if(e)throw this.Vb=a,tg.call(this,a,b,c),this.Sd=this.da,this.N=1==a?this.N|8192:this.N|4096,a;}function zd(a,b,c){this.pd=a;a=0;b&&(a|=1);c&&(a|=2);3==this.Fa&&(a|=4);h.call(this,14,a)}function md(){this.Gc[this.X()].call(this)}function pd(){t(this,r(this)&this.C);this.A-=this.D.Ac} function Wc(){this.sa=this.xa;var a=r(this)&this.C;t(this,this.G&this.C);t(this,this.F&this.C);t(this,this.I&this.C);t(this,this.B&this.C);t(this,a);t(this,this.K&this.C);t(this,this.J&this.C);t(this,this.H&this.C);this.A-=this.D.Xi;this.sa=-1} -function Xc(){this.sa=this.xa;this.H=this.H&~this.C|m(this);this.J=this.J&~this.C|m(this);this.K=this.K&~this.C|m(this);n(this,r(this)+this.ba);this.B=this.B&~this.C|m(this);this.I=this.I&~this.C|m(this);this.F=this.F&~this.C|m(this);this.G=this.G&~this.C|m(this);this.A-=this.D.Vi;this.sa=-1}function Yc(){this.ta[this.X()].call(this,Vf)}function qd(){!(this.Ua&1)||this.ca&131072?h.call(this,6):this.Da[this.X()].call(this,Uf)}function sd(){this.N|=20;this.O=this.S=this.Qa;this.A-=this.D.Oc} +function Xc(){this.sa=this.xa;this.H=this.H&~this.C|m(this);this.J=this.J&~this.C|m(this);this.K=this.K&~this.C|m(this);n(this,r(this)+this.ba);this.B=this.B&~this.C|m(this);this.I=this.I&~this.C|m(this);this.F=this.F&~this.C|m(this);this.G=this.G&~this.C|m(this);this.A-=this.D.Vi;this.sa=-1}function Yc(){this.ta[this.X()].call(this,Vf)}function rd(){!(this.Ua&1)||this.ca&131072?h.call(this,6):this.Da[this.X()].call(this,Uf)}function sd(){this.N|=20;this.O=this.S=this.Qa;this.A-=this.D.Oc} function td(){this.N|=20;this.O=this.S=this.Va;this.A-=this.D.Oc}function ud(){this.N|=1024;this.Ba&1024||(this.ba^=6,this.C^=-65536,Nd(this));this.A-=this.D.Oc}function vd(){this.N|=2048;this.Ba&2048||(this.Uc^=6,this.wa^=-65536,Ed(this));this.A-=this.D.Oc}function Zc(){t(this,this.Ga());this.A-=this.D.Ac}function $c(){this.ta[this.X()].call(this,og)}function ad(){t(this,this.L());this.A-=this.D.Ac}function bd(){this.ta[this.X()].call(this,mg)} function cd(){var a=1,b=0,c=this.wa,d=5;this.Ba&192&&(a=this.F&c,b=1,this.Ba&256&&(d=4));if(a--){var e=this.I&65535;re(this,e,1)&&(e=Ob(this.na,e,1,this.da-b-1),this.Lc(this.va.hc(this.H&c,1),e),this.H=this.H&~c|this.H+(this.ca&1024?-1:1)&c,this.F=this.F&~c|this.F-b&c,this.A-=d,a&&(Yd(this),this.N|=256))}} function dd(){var a=1,b=0,c=this.wa,d=5;this.Ba&192&&(a=this.F&c,b=1,this.Ba&256&&(d=4));if(a--){var e=this.I&65535;re(this,e,this.ba)&&(e=Ob(this.na,e,this.ba,this.da-b-1),this.Ub(this.va.hc(this.H&c,this.ba),e),this.H=this.H&~c|this.H+(this.ca&1024?-this.ba:this.ba)&c,this.F=this.F&~c|this.F-b&c,this.A-=d,a&&(Yd(this),this.N|=256))}} @@ -216,7 +216,7 @@ c,b=1,d=this.D.Xg,this.Ba&256||(this.A-=this.D.Wg));a--&&(hg.call(this,this.G&th function(){this.G=this.G&-65281|this.X()<<8;this.A-=this.D.Nb},function(){this.F=this.F&-65281|this.X()<<8;this.A-=this.D.Nb},function(){this.I=this.I&-65281|this.X()<<8;this.A-=this.D.Nb},function(){this.B=this.B&-65281|this.X()<<8;this.A-=this.D.Nb},function(){this.G=this.G&~this.C|this.Ga();this.A-=this.D.Nb},function(){this.F=this.F&~this.C|this.Ga();this.A-=this.D.Nb},function(){this.I=this.I&~this.C|this.Ga();this.A-=this.D.Nb},function(){this.B=this.B&~this.C|this.Ga();this.A-=this.D.Nb},function(){n(this, r(this)&~this.C|this.Ga());this.A-=this.D.Nb},function(){this.K=this.K&~this.C|this.Ga();this.A-=this.D.Nb},function(){this.J=this.J&~this.C|this.Ga();this.A-=this.D.Nb},function(){this.H=this.H&~this.C|this.Ga();this.A-=this.D.Nb},bi,ci,bi,ci,function(){this.ta[this.X()].call(this,xg)},function(){this.ta[this.X()].call(this,vg)},function(){this.N|=1;this.wc[this.X()].call(this,ji,this.X)},function(){this.N|=1;this.vb[this.X()].call(this,ji,this.Ga)},di,ei,di,ei,function(){if(this.ca&131072&&3>this.Fb)h.call(this, 13,0);else{var a=this.D.Ci;this.Vb=-1;tg.call(this,3,null,a)}},function(){var a=this.X();if(this.ca&131072&&3>this.Fb)h.call(this,13,0);else{var b;a:{b=this.rf[a];if(void 0!==b)for(var c=0;cthis.Fb)h.call(this,13,0);else{var a=this.D.Di;this.Vb=-1;tg.call(this,4,null,a)}else this.A-=this.D.Ei},function(){if(this.ca&131072&&3>this.Fb)h.call(this,13,0);else{this.sa= -this.xa;this.A-=this.D.Ai;if(this.Ua&1&&this.ca&16384){var a=this.ma(this.la.Ea+0);Ec(this.Ia,a,!1)}else{var a=this.Fa,b=m(this),c=m(this),d=m(this);if(this.ca&131072)d=d&131071|this.ca&-131072;else if(d&131072){var e=m(this),k=m(this),l=m(this),p=m(this),q=m(this),w=m(this);Fc(this,!0,!0);Dc(this,k);n(this,e);Kc(this,l);Jc(this,p);this.Qa.load(q);this.Va.load(w)}null!=Nc(this,b,c,!1)&&(Mc(this,d,a),this.$f&&Qd(this,this.da))}this.sa=-1}},function(){this.wc[this.X()].call(this,Zh,yh)},function(){this.vb[this.X()].call(this, +this.xa;this.A-=this.D.Ai;if(this.Ua&1&&this.ca&16384){var a=this.ma(this.la.Ea+0);Ec(this.Ia,a,!1)}else{var a=this.Fa,b=m(this),c=m(this),d=m(this);if(this.ca&131072)d=d&131071|this.ca&-131072;else if(d&131072){var e=m(this),k=m(this),l=m(this),p=m(this),q=m(this),v=m(this);Fc(this,!0,!0);Dc(this,k);n(this,e);Kc(this,l);Jc(this,p);this.Qa.load(q);this.Va.load(v)}null!=Nc(this,b,c,!1)&&(Mc(this,d,a),this.$f&&Qd(this,this.da))}this.sa=-1}},function(){this.wc[this.X()].call(this,Zh,yh)},function(){this.vb[this.X()].call(this, 2==this.ba?$h:ai,yh)},function(){this.wc[this.X()].call(this,Zh,zh)},function(){this.vb[this.X()].call(this,2==this.ba?$h:ai,zh)},function(){var a=this.X();if(a){var b=this.G&255;this.G=this.G&-65536|b/a<<8|b%a;fe(this,this.G,128);this.A-=this.D.ei}else xh.call(this)},function(){var a=this.G&255,b=(this.G>>8&255)*this.X()|0,c=a+b|0;this.G=this.G&-65536|c&255;Zd(this,a,b,c,191);this.A-=this.D.di},function(){this.G=this.G&-256|($d(this)?255:0);this.A-=2},function(){this.G=this.G&-256|te(this,this.O, this.B+(this.G&255)&65535);this.A-=this.D.dj},function(){fi.call(this,216)},function(){fi.call(this,217)},function(){fi.call(this,218)},function(){fi.call(this,219)},function(){fi.call(this,220)},function(){fi.call(this,221)},function(){fi.call(this,222)},function(){fi.call(this,223)},function(){var a=this.L(),b=this.F-1&this.wa;this.F=this.F&~this.wa|b;b&&!ce(this)?(E(this,u(this)+a),this.A-=this.D.Li):this.A-=this.D.Lg},function(){var a=this.L(),b=this.F-1&this.wa;this.F=this.F&~this.wa|b;b&&ce(this)? (E(this,u(this)+a),this.A-=this.D.Mg):this.A-=this.D.Ng},function(){var a=this.L(),b=this.F-1&this.wa;this.F=this.F&~this.wa|b;b?(E(this,u(this)+a),this.A-=this.D.Ki):this.A-=this.D.Lg},function(){var a=this.L();this.F&this.wa?this.A-=this.D.Ng:(E(this,u(this)+a),this.A-=this.D.Mg)},function(){var a=this.X();re(this,a,1)&&(this.G=this.G&-256|Ob(this.na,a,1,this.da-2)&255,this.A-=this.D.Gg)},function(){var a=this.X();re(this,a,this.ba)&&(this.G=this.G&~this.C|Ob(this.na,a,this.ba,this.da-2)&this.C, @@ -239,25 +239,25 @@ this.A-=-1===this.U?this.D.Ve:this.D.Ue;return b&this.C},function(a){var b=a-1|0 function(a){if(-1===this.U)return wh.call(this,a);Nc(this,a,this.ma(this.U+this.ba));this.A-=this.D.Fi;this.N|=2;return a},function(a){var b=a;this.N&512&&(a=a-2&65535,80286>this.ia&&(b=a));t(this,b);this.A-=-1===this.U?this.D.Ac:this.D.Yi;this.N|=2;return a},wh];function wd(){this.ta[this.X()].call(this,qh);this.A-=-1===this.U?6:13}function xd(){this.Da[this.X()].call(this,ph);this.A-=-1===this.U?12:19}var nd=Array(256); nd[0]=function(){var a=this.X();16>(a&56)&&(this.N|=1);this.vb[a].call(this,this.Ah,Bh)};nd[1]=function(){var a=this.X();a&16||(this.N|=1);this.vb[a].call(this,mi,Bh)};nd[2]=function(){!(this.Ua&1)||this.ca&131072?h.call(this,6):this.ta[this.X()].call(this,ug)};nd[3]=function(){!(this.Ua&1)||this.ca&131072?h.call(this,6):this.ta[this.X()].call(this,Ag)}; nd[5]=function(){this.Fa?h.call(this,13,0,0,!0):(qe(this,this.ma(2054)),this.H=this.ma(2086),this.J=this.ma(2088),this.K=this.ma(2090),this.B=this.ma(2094),this.I=this.ma(2096),this.F=this.ma(2098),this.G=this.ma(2100),Cc(this.va,2102,this.ma(2084)),Cc(this.Ia,2108,this.ma(2082)),Cc(this.Z,2114,this.ma(2080)),Cc(this.Ca,2120,this.ma(2078)),Mc(this,this.ma(2072)),E(this,this.ma(2074)),n(this,this.ma(2092)),this.kb=this.ma(2126)|this.Lb(2128)<<16,this.xc=this.kb+this.ma(2130),this.Ab=this.ma(2138)| -this.Lb(2140)<<16,this.yc=this.Ab+this.ma(2142),Cc(this.Pb,2132,this.ma(2076)),Cc(this.la,2144,this.ma(2070)),this.A-=195)};nd[6]=function(){this.Fa?h.call(this,13,0):(this.Ua&=-9,this.A-=2)};nd[11]=Vc;nd[166]=Vc;nd[255]=Vc;var v=[];v[5]=Vc; -v[7]=function(){if(this.Fa)h.call(this,13,0,0,!0);else{var a=this.va.gc(this.H&this.wa,204);if(-1!==a){this.Ua=this.ka(a);Fc(this);this.Ua&-2147483648?Ab(this):Ad(this);var b=this.ka(a+168),c=(b&24576)>>13;Mc(this,this.ka(a+4),c);this.kb=this.ka(a+112);this.xc=this.kb+this.ka(a+116);this.Ab=this.ka(a+100);this.yc=this.Ab+this.ka(a+104);Bc(this.Pb,this.ka(a+56),this.ka(a+120),this.ka(a+124),this.ka(a+128));Bc(this.la,this.ka(a+52),this.ka(a+84),this.ka(a+88),this.ka(a+92));this.H=this.ka(a+12);this.J= +this.Lb(2140)<<16,this.yc=this.Ab+this.ma(2142),Cc(this.Pb,2132,this.ma(2076)),Cc(this.la,2144,this.ma(2070)),this.A-=195)};nd[6]=function(){this.Fa?h.call(this,13,0):(this.Ua&=-9,this.A-=2)};nd[11]=Vc;nd[166]=Vc;nd[255]=Vc;var w=[];w[5]=Vc; +w[7]=function(){if(this.Fa)h.call(this,13,0,0,!0);else{var a=this.va.gc(this.H&this.wa,204);if(-1!==a){this.Ua=this.ka(a);Fc(this);this.Ua&-2147483648?Ab(this):Ad(this);var b=this.ka(a+168),c=(b&24576)>>13;Mc(this,this.ka(a+4),c);this.kb=this.ka(a+112);this.xc=this.kb+this.ka(a+116);this.Ab=this.ka(a+100);this.yc=this.Ab+this.ka(a+104);Bc(this.Pb,this.ka(a+56),this.ka(a+120),this.ka(a+124),this.ka(a+128));Bc(this.la,this.ka(a+52),this.ka(a+84),this.ka(a+88),this.ka(a+92));this.H=this.ka(a+12);this.J= this.ka(a+16);this.K=this.ka(a+20);this.B=this.ka(a+28);this.I=this.ka(a+32);this.F=this.ka(a+36);this.G=this.ka(a+40);Bc(this.Va,this.ka(a+60),this.ka(a+132),this.ka(a+136),this.ka(a+140));Bc(this.Qa,this.ka(a+64),this.ka(a+144),this.ka(a+148),this.ka(a+152));Bc(this.Ca,this.ka(a+68),this.ka(a+156),this.ka(a+160),this.ka(a+164));Bc(this.Z,this.ka(a+72),b,this.ka(a+172),this.ka(a+176));Bc(this.Ia,this.ka(a+76),this.ka(a+180),this.ka(a+184),this.ka(a+188));Bc(this.va,this.ka(a+80),this.ka(a+192),this.ka(a+ -196),this.ka(a+200));E(this,this.ka(a+8));n(this,this.ka(a+24))}this.A-=122<<(a&3?1:0)}};v[16]=Vh;v[17]=Wh;v[18]=Xh;v[19]=Yh;v[32]=function(){if(this.Fa)h.call(this,13,0);else{var a,b=this.X();switch((b&56)>>3){case 0:a=this.Ua;break;case 2:a=this.pd;break;case 3:a=this.Zc;break;default:od.call(this);return}Cd(this,b&7,a);this.A-=6}};v[33]=function(){if(this.Fa)h.call(this,13,0);else{var a=this.X(),b=(a&56)>>3;4==b||5==b?od.call(this):(Cd(this,a&7,this.fb[b]),this.A-=22)}}; -v[34]=function(){if(this.Fa)h.call(this,13,0);else{var a=this.X(),b=Bd(this,a&7);switch((a&56)>>3){case 0:this.Ua=b;Fc(this);this.Ua&-2147483648?Ab(this):Ad(this);this.A-=10;break;case 2:this.pd=b;this.A-=4;break;case 3:Pc.call(this,b);this.A-=5;break;default:od.call(this)}}};v[35]=function(){if(this.Fa)h.call(this,13,0);else{var a=this.X(),b=(a&56)>>3;4==b||5==b?od.call(this):(a=Bd(this,a&7),a!=this.fb[b]&&(Rd(this,!1),this.fb[b]=a,Rd(this,!0)),this.A-=4>b?22:14)}}; -v[36]=function(){if(this.Fa)h.call(this,13,0);else{var a=this.X(),b=(a&56)>>3;6>b?od.call(this):(Cd(this,a&7,this.uf[b]),this.A-=12)}};v[38]=function(){if(this.Fa)h.call(this,13,0);else{var a=this.X(),b=(a&56)>>3;6>b?od.call(this):(this.uf[b]=Bd(this,a&7),this.A-=12)}};v[128]=function(){var a=this.Ga();ee(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};v[129]=function(){var a=this.Ga();ee(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)}; -v[130]=function(){var a=this.Ga();$d(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};v[131]=function(){var a=this.Ga();$d(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)};v[132]=function(){var a=this.Ga();ce(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};v[133]=function(){var a=this.Ga();ce(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)};v[134]=function(){var a=this.Ga();$d(this)||ce(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa}; -v[135]=function(){var a=this.Ga();$d(this)||ce(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)};v[136]=function(){var a=this.Ga();de(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};v[137]=function(){var a=this.Ga();de(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)};v[138]=function(){var a=this.Ga();ae(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};v[139]=function(){var a=this.Ga();ae(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)}; -v[140]=function(){var a=this.Ga();!de(this)!=!ee(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};v[141]=function(){var a=this.Ga();!de(this)==!ee(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};v[142]=function(){var a=this.Ga();ce(this)||!de(this)!=!ee(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};v[143]=function(){var a=this.Ga();ce(this)||!de(this)!=!ee(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)};v[144]=function(){Kg.call(this,Lg)}; -v[145]=function(){Kg.call(this,Lg)};v[146]=function(){Kg.call(this,Mg)};v[147]=function(){Kg.call(this,Ng)};v[148]=function(){Kg.call(this,Og)};v[149]=function(){Kg.call(this,Pg)};v[150]=function(){Kg.call(this,Qg)};v[151]=function(){Kg.call(this,Rg)};v[152]=function(){Kg.call(this,Sg)};v[153]=function(){Kg.call(this,Tg)};v[154]=function(){Kg.call(this,Ug)};v[155]=function(){Kg.call(this,Vg)};v[156]=function(){Kg.call(this,Wg)};v[157]=function(){Kg.call(this,Xg)};v[158]=function(){Kg.call(this,Yg)}; -v[159]=function(){Kg.call(this,Zg)};v[160]=function(){Ic(this,this.Qa.ra,this.ba,2);this.A-=this.D.Rd};v[161]=function(){this.sa=this.xa;var a=m(this);this.Qa.load(a);this.A-=this.D.bc;this.sa=-1};v[163]=function(){this.Da[this.X()].call(this,bg);-1!==this.U&&(this.A-=6)};v[164]=function(){this.Da[this.X()].call(this,2==this.ba?bh:ch);this.A-=-1===this.U?3:7};v[165]=function(){this.Da[this.X()].call(this,2==this.ba?dh:eh);this.A-=-1===this.U?3:7}; -v[168]=function(){Ic(this,this.Va.ra,this.ba,2);this.A-=this.D.Rd};v[169]=function(){this.sa=this.xa;var a=m(this);this.Va.load(a);this.A-=this.D.bc;this.sa=-1};v[171]=function(){this.Da[this.X()].call(this,eg);-1!==this.U&&(this.A-=5)};v[172]=function(){this.Da[this.X()].call(this,2==this.ba?hh:ih);this.A-=-1===this.U?3:7};v[173]=function(){this.Da[this.X()].call(this,2==this.ba?jh:kh);this.A-=-1===this.U?3:7};v[175]=function(){this.ta[this.X()].call(this,2==this.ba?ng:pg)}; -v[178]=function(){this.ta[this.X()].call(this,Bg)};v[179]=function(){this.Da[this.X()].call(this,dg);-1!==this.U&&(this.A-=5)};v[180]=function(){this.ta[this.X()].call(this,yg)};v[181]=function(){this.ta[this.X()].call(this,zg)}; -v[182]=function(){var a,b=this.X(),c=(b&56)>>3;switch(c){case 4:a=this.G;break;case 5:a=this.F;break;case 6:a=this.I;break;case 7:a=this.B}this.wb[b].call(this,Dg);switch(c){case 0:this.G=this.G&~this.C|this.G&255;break;case 1:this.F=this.F&~this.C|this.F&255;break;case 2:this.I=this.I&~this.C|this.I&255;break;case 3:this.B=this.B&~this.C|this.B&255;break;case 4:this.Ob=this.Ob&~this.C|this.G>>8&255;this.G=a;break;case 5:this.K=this.K&~this.C|this.F>>8&255;this.F=a;break;case 6:this.J=this.J&~this.C| -this.I>>8&255;this.I=a;break;case 7:this.H=this.H&~this.C|this.B>>8&255,this.B=a}this.A-=-1===this.U?3:6};v[183]=function(){var a=this.X();Gc(this,2);this.ta[a].call(this,Dg);switch((a&56)>>3){case 0:this.G=this.G&65535;break;case 1:this.F=this.F&65535;break;case 2:this.I=this.I&65535;break;case 3:this.B=this.B&65535;break;case 4:this.Ob=this.Ob&65535;break;case 5:this.K=this.K&65535;break;case 6:this.J=this.J&65535;break;case 7:this.H=this.H&65535}this.A-=-1===this.U?3:6}; -v[186]=function(){this.vb[this.X()].call(this,ni,this.X)};v[187]=function(){this.Da[this.X()].call(this,cg);-1!==this.U&&(this.A-=5)};v[188]=function(){this.ta[this.X()].call(this,Wf)};v[189]=function(){this.ta[this.X()].call(this,Xf)}; -v[190]=function(){var a,b=this.X(),c=(b&56)>>3;switch(c){case 4:a=this.G;break;case 5:a=this.F;break;case 6:a=this.I;break;case 7:a=this.B}this.wb[b].call(this,Dg);switch(c){case 0:this.G=this.G&~this.C|(this.G&255)<<24>>24&this.C;break;case 1:this.F=this.F&~this.C|(this.F&255)<<24>>24&this.C;break;case 2:this.I=this.I&~this.C|(this.I&255)<<24>>24&this.C;break;case 3:this.B=this.B&~this.C|(this.B&255)<<24>>24&this.C;break;case 4:this.Ob=this.Ob&~this.C|this.G<<16>>24&this.C;this.G=a;break;case 5:this.K= +196),this.ka(a+200));E(this,this.ka(a+8));n(this,this.ka(a+24))}this.A-=122<<(a&3?1:0)}};w[16]=Vh;w[17]=Wh;w[18]=Xh;w[19]=Yh;w[32]=function(){if(this.Fa)h.call(this,13,0);else{var a,b=this.X();switch((b&56)>>3){case 0:a=this.Ua;break;case 2:a=this.pd;break;case 3:a=this.Zc;break;default:od.call(this);return}Cd(this,b&7,a);this.A-=6}};w[33]=function(){if(this.Fa)h.call(this,13,0);else{var a=this.X(),b=(a&56)>>3;4==b||5==b?od.call(this):(Cd(this,a&7,this.fb[b]),this.A-=22)}}; +w[34]=function(){if(this.Fa)h.call(this,13,0);else{var a=this.X(),b=Bd(this,a&7);switch((a&56)>>3){case 0:this.Ua=b;Fc(this);this.Ua&-2147483648?Ab(this):Ad(this);this.A-=10;break;case 2:this.pd=b;this.A-=4;break;case 3:Pc.call(this,b);this.A-=5;break;default:od.call(this)}}};w[35]=function(){if(this.Fa)h.call(this,13,0);else{var a=this.X(),b=(a&56)>>3;4==b||5==b?od.call(this):(a=Bd(this,a&7),a!=this.fb[b]&&(Rd(this,!1),this.fb[b]=a,Rd(this,!0)),this.A-=4>b?22:14)}}; +w[36]=function(){if(this.Fa)h.call(this,13,0);else{var a=this.X(),b=(a&56)>>3;6>b?od.call(this):(Cd(this,a&7,this.uf[b]),this.A-=12)}};w[38]=function(){if(this.Fa)h.call(this,13,0);else{var a=this.X(),b=(a&56)>>3;6>b?od.call(this):(this.uf[b]=Bd(this,a&7),this.A-=12)}};w[128]=function(){var a=this.Ga();ee(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};w[129]=function(){var a=this.Ga();ee(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)}; +w[130]=function(){var a=this.Ga();$d(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};w[131]=function(){var a=this.Ga();$d(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)};w[132]=function(){var a=this.Ga();ce(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};w[133]=function(){var a=this.Ga();ce(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)};w[134]=function(){var a=this.Ga();$d(this)||ce(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa}; +w[135]=function(){var a=this.Ga();$d(this)||ce(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)};w[136]=function(){var a=this.Ga();de(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};w[137]=function(){var a=this.Ga();de(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)};w[138]=function(){var a=this.Ga();ae(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};w[139]=function(){var a=this.Ga();ae(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)}; +w[140]=function(){var a=this.Ga();!de(this)!=!ee(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};w[141]=function(){var a=this.Ga();!de(this)==!ee(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};w[142]=function(){var a=this.Ga();ce(this)||!de(this)!=!ee(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};w[143]=function(){var a=this.Ga();ce(this)||!de(this)!=!ee(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)};w[144]=function(){Kg.call(this,Lg)}; +w[145]=function(){Kg.call(this,Lg)};w[146]=function(){Kg.call(this,Mg)};w[147]=function(){Kg.call(this,Ng)};w[148]=function(){Kg.call(this,Og)};w[149]=function(){Kg.call(this,Pg)};w[150]=function(){Kg.call(this,Qg)};w[151]=function(){Kg.call(this,Rg)};w[152]=function(){Kg.call(this,Sg)};w[153]=function(){Kg.call(this,Tg)};w[154]=function(){Kg.call(this,Ug)};w[155]=function(){Kg.call(this,Vg)};w[156]=function(){Kg.call(this,Wg)};w[157]=function(){Kg.call(this,Xg)};w[158]=function(){Kg.call(this,Yg)}; +w[159]=function(){Kg.call(this,Zg)};w[160]=function(){Ic(this,this.Qa.ra,this.ba,2);this.A-=this.D.Rd};w[161]=function(){this.sa=this.xa;var a=m(this);this.Qa.load(a);this.A-=this.D.bc;this.sa=-1};w[163]=function(){this.Da[this.X()].call(this,bg);-1!==this.U&&(this.A-=6)};w[164]=function(){this.Da[this.X()].call(this,2==this.ba?bh:ch);this.A-=-1===this.U?3:7};w[165]=function(){this.Da[this.X()].call(this,2==this.ba?dh:eh);this.A-=-1===this.U?3:7}; +w[168]=function(){Ic(this,this.Va.ra,this.ba,2);this.A-=this.D.Rd};w[169]=function(){this.sa=this.xa;var a=m(this);this.Va.load(a);this.A-=this.D.bc;this.sa=-1};w[171]=function(){this.Da[this.X()].call(this,eg);-1!==this.U&&(this.A-=5)};w[172]=function(){this.Da[this.X()].call(this,2==this.ba?hh:ih);this.A-=-1===this.U?3:7};w[173]=function(){this.Da[this.X()].call(this,2==this.ba?jh:kh);this.A-=-1===this.U?3:7};w[175]=function(){this.ta[this.X()].call(this,2==this.ba?ng:pg)}; +w[178]=function(){this.ta[this.X()].call(this,Bg)};w[179]=function(){this.Da[this.X()].call(this,dg);-1!==this.U&&(this.A-=5)};w[180]=function(){this.ta[this.X()].call(this,yg)};w[181]=function(){this.ta[this.X()].call(this,zg)}; +w[182]=function(){var a,b=this.X(),c=(b&56)>>3;switch(c){case 4:a=this.G;break;case 5:a=this.F;break;case 6:a=this.I;break;case 7:a=this.B}this.wb[b].call(this,Dg);switch(c){case 0:this.G=this.G&~this.C|this.G&255;break;case 1:this.F=this.F&~this.C|this.F&255;break;case 2:this.I=this.I&~this.C|this.I&255;break;case 3:this.B=this.B&~this.C|this.B&255;break;case 4:this.Ob=this.Ob&~this.C|this.G>>8&255;this.G=a;break;case 5:this.K=this.K&~this.C|this.F>>8&255;this.F=a;break;case 6:this.J=this.J&~this.C| +this.I>>8&255;this.I=a;break;case 7:this.H=this.H&~this.C|this.B>>8&255,this.B=a}this.A-=-1===this.U?3:6};w[183]=function(){var a=this.X();Gc(this,2);this.ta[a].call(this,Dg);switch((a&56)>>3){case 0:this.G=this.G&65535;break;case 1:this.F=this.F&65535;break;case 2:this.I=this.I&65535;break;case 3:this.B=this.B&65535;break;case 4:this.Ob=this.Ob&65535;break;case 5:this.K=this.K&65535;break;case 6:this.J=this.J&65535;break;case 7:this.H=this.H&65535}this.A-=-1===this.U?3:6}; +w[186]=function(){this.vb[this.X()].call(this,ni,this.X)};w[187]=function(){this.Da[this.X()].call(this,cg);-1!==this.U&&(this.A-=5)};w[188]=function(){this.ta[this.X()].call(this,Wf)};w[189]=function(){this.ta[this.X()].call(this,Xf)}; +w[190]=function(){var a,b=this.X(),c=(b&56)>>3;switch(c){case 4:a=this.G;break;case 5:a=this.F;break;case 6:a=this.I;break;case 7:a=this.B}this.wb[b].call(this,Dg);switch(c){case 0:this.G=this.G&~this.C|(this.G&255)<<24>>24&this.C;break;case 1:this.F=this.F&~this.C|(this.F&255)<<24>>24&this.C;break;case 2:this.I=this.I&~this.C|(this.I&255)<<24>>24&this.C;break;case 3:this.B=this.B&~this.C|(this.B&255)<<24>>24&this.C;break;case 4:this.Ob=this.Ob&~this.C|this.G<<16>>24&this.C;this.G=a;break;case 5:this.K= this.K&~this.C|this.F<<16>>24&this.C;this.F=a;break;case 6:this.J=this.J&~this.C|this.I<<16>>24&this.C;this.I=a;break;case 7:this.H=this.H&~this.C|this.B<<16>>24&this.C,this.B=a}this.A-=-1===this.U?3:6}; -v[191]=function(){var a=this.X();Gc(this,2);this.ta[a].call(this,Dg);switch((a&56)>>3){case 0:this.G=this.G<<16>>16;break;case 1:this.F=this.F<<16>>16;break;case 2:this.I=this.I<<16>>16;break;case 3:this.B=this.B<<16>>16;break;case 4:this.Ob=this.Ob<<16>>16;break;case 5:this.K=this.K<<16>>16;break;case 6:this.J=this.J<<16>>16;break;case 7:this.H=this.H<<16>>16}this.A-=-1===this.U?3:6}; +w[191]=function(){var a=this.X();Gc(this,2);this.ta[a].call(this,Dg);switch((a&56)>>3){case 0:this.G=this.G<<16>>16;break;case 1:this.F=this.F<<16>>16;break;case 2:this.I=this.I<<16>>16;break;case 3:this.B=this.B<<16>>16;break;case 4:this.Ob=this.Ob<<16>>16;break;case 5:this.K=this.K<<16>>16;break;case 6:this.J=this.J<<16>>16;break;case 7:this.H=this.H<<16>>16}this.A-=-1===this.U?3:6}; var Sd=[function(){this.A-=2+(-1===this.U?0:1);return this.Pb.ra},function(){this.A-=2+(-1===this.U?0:1);return this.la.ra},function(a){this.N|=2;this.Pb.load(a);this.A-=17+(-1===this.U?0:2);return a},function(a){this.N|=2;-1!==this.la.load(a)&&(this.gb(this.la.fc+4,this.la.rb|=512),this.la.type|=512);this.A-=17+(-1===this.U?0:2);return a},function(a){this.N|=2;this.A-=14+(-1===this.U?0:2);if(-1!==this.Na.load(a)&&2048!=(this.Na.rb&2560)&&(this.Na.uc>=this.Fa&&this.Na.uc>=(a&3)||7168==(this.Na.rb& 7168)))return pe(this),a;ne(this);return a},function(a){this.N|=2;this.A-=14+(-1===this.U?0:2);if(-1!==this.Na.load(a)&&512==(this.Na.rb&2560)&&this.Na.uc>=this.Fa&&this.Na.uc>=(a&3))return pe(this),a;ne(this);return a},wh,wh],Uc=[ld,ld,ld,ld,ld,ld,wh,wh],mi=[function(a){if(-1===this.U)h.call(this,6);else{a=this.xc-this.kb;var b=this.kb;80286==this.ia?b|=-16777216:80386<=this.ia&&2!=this.ba&&(a|=b<<16);this.$a(this.U+2,b);this.A-=11}return a},function(a){if(-1===this.U)h.call(this,6);else{a=this.yc- this.Ab;var b=this.Ab;80286==this.ia?b|=-16777216:80386<=this.ia&&2!=this.ba&&(a|=b<<16);this.$a(this.U+2,b);this.A-=12}return a},function(a){-1===this.U||this.ca&131072?h.call(this,6):(this.kb=this.ka(this.U+2)&(this.C|this.C<<8),a&=65535,this.xc=this.kb+a,this.N|=2,this.A-=11);return a},function(a){-1===this.U||this.ca&131072?h.call(this,6):(this.Ab=this.ka(this.U+2)&(this.C|this.C<<8),a&=65535,this.yc=this.Ab+a,this.N|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.U?0:1);return this.Ua}, @@ -858,7 +858,7 @@ function fk(a,b,c,d){if(Y[b]){var e=Math.floor(b/1E3)&2;if(b=Zj[b]||0){!e||b&85| function ek(a,b,c){if(Y[b]&&a.A&&a.A.ja.Rb){Zj[b]&&a.B.length&&0e||(e==a.B.length&&(d={},d.Wd=b,d.Zb=a.Zb,ik(a,b,!0),e++),0b.ad){if(!b.Ke){gk(a,b.Wd);return}b.Ke=!1;c=a.ha}else c=1==b.ad++?500:100;b.qj=setTimeout(function(a){return function(){kk(a,b)}}(a),c)}} function mk(a,b,c){var d=b;if(65<=b&&90>=b)!(a.Zb&515)==c&&(d=b+32);else if(97<=b&&122>=b)!!(a.Zb&515)==c&&(d=b-32);else if(!!(a.Zb&3)==c){if(a=Yj[b])d=a}else if(a=Xj[b])d=a;return d}f.Rf=function(a){a||(this.Zb&=-256)}; -function dk(a,b,c){var d=!0,e=!1,k=!1,l=b.keyCode,p=mk(a,l,!0);a.mg&&p==W["`"]&&(l=p=27);if(Y[l+1E3])if(p+=1E3,2==b.location&&(p+=2E3),fk(a,p,!1,c)){if(20==l||144==l||145==l)a.W||(c=e=!0);if(!(c||91!=l&&93!=l))for(var q=0;q=b||97<=b&&122>=b;e>>>=8;){var l=0,p=e&255;224==k||225==k?d.push(k|(c?0:128)):(42==p?a.D&3||a.D&512&&b||(l=p):29==p?a.D&12||(l=p):56==p?a.D&48||(l=p):d.push(k|(c?0:128)),l&&(c?d.unshift(l):d.push(l|128)))}for(c=0;ce.Xb.length?(e.Xb.push(k),1==e.Xb.length&&e.T&&Gj(e.T,k)):20==e.Xb.length&& e.Xb.push(255));d=!0}return d}Ea(function(){for(var a=Za(document,"pcjs","keyboard"),b=0;bc.length)c=[!1,0,null,null,0,Array(5>b?Fk:Gk)];this.nb=b;this.hb=e[2];this.Hb=e[3];this.Wc=d||e[4];65536<=this.Wc&&720896<=this.hb&&(this.Hb=Math.min(this.Wc>>2,32768));this.$b=c[0];this.Kc=c[1];this.ff=c[2];this.ga=c[3];this.qc=c[4]&255;this.Uf=c[4]>>8&255;this.jb=c[5];this.tg=Fk;if(5<=b){this.tg=Gk;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==k?0:1,0,0,Array(5),0,0,0,Array(9),0,[this.hb,this.Hb,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.Ie=b[0];this.Ud=b[1];this.Jc=b[2];this.oh=b[3];this.gf=b[4];this.Wf=b[5];this.Ae=b[6];this.ze=b[7];this.hj=b[8];this.ij=b[9];this.ye=b[10];this.Dd=b[11];this.ub=b[12];d=b[13];"number"==typeof d&&(d=[this.hb,this.Hb,d]);this.hb=d[0];this.Hb=d[1];d=this.Wc>>2;if((this.sd=b[14])&&this.sd.length>2),-2147478512,0,-1,0,-1,0,-1,0,0,0,0,1,255,0,0,0,Array(256)]);this.Ie=b[0];this.Ud=b[1];this.Jc=b[2];this.oh=b[3];this.gf=b[4];this.Wf=b[5];this.Ae=b[6];this.ze=b[7];this.hj=b[8];this.ij=b[9];this.ye=b[10];this.Dd=b[11];this.ub=b[12];d=b[13];"number"==typeof d&&(d=[this.hb,this.Hb,d]);this.hb=d[0];this.Hb=d[1];d=this.Wc>>2;if((this.sd=b[14])&&this.sd.length>this.controller.jh&255};Ik[17408]=function(a){return(this.controller.ub=this.aa[(a&-4)+this.J])>>((a&3)<<3)&255};Ik[5120]=function(a){a+=this.J;var b=this.controller.ub=this.aa[a&-2];return(a&1?b>>8:b)&255}; Ik[1280]=function(a){a+=this.J;a=this.controller.ub=this.aa[a];for(var b=this.controller.vg,c=this.controller.ug&b,d=0,e=128;e;)(a&b)==c&&(d|=e),c>>>=1,b>>>=1,e>>=1;return d};Ik[0]=function(a,b){var c=a+this.J,d;d=(b|b<<8|b<<16|b<<24)&this.controller.jd|this.controller.Bd;d=d&this.controller.xb|this.controller.ub&~this.controller.xb;d=d&this.controller.eb|this.aa[c]&~this.controller.eb;this.aa[c]!=d&&(this.aa[c]=d,this.Oa=!0)}; @@ -882,7 +882,7 @@ Ik[16]=function(a,b){a+=this.J;var c,d=a&-2;c=(b|b<<8|b<<16|b<<24)&this.controll Ik[17]=function(a){a+=this.J;var b=a&-2;a=this.controller.eb&(b==a?16711935:-16711936);a=this.aa[b]&~a|this.controller.ub&a;this.aa[b]!=a&&(this.aa[b]=a,this.Oa=!0)};Ik[2]=function(a,b){var c=a+this.J,d=Bk[b&15],d=d&this.controller.xb|this.controller.ub&~this.controller.xb,d=d&this.controller.eb|this.aa[c]&~this.controller.eb;this.aa[c]!=d&&(this.aa[c]=d,this.Oa=!0)}; Ik[98]=function(a,b){var c=a+this.J,d=Bk[b&15],d=d&this.controller.ub,d=d&this.controller.xb|this.controller.ub&~this.controller.xb,d=d&this.controller.eb|this.aa[c]&~this.controller.eb;this.aa[c]!=d&&(this.aa[c]=d,this.Oa=!0)};Ik[162]=function(a,b){var c=a+this.J,d=Bk[b&15],d=d|this.controller.ub,d=d&this.controller.xb|this.controller.ub&~this.controller.xb,d=d&this.controller.eb|this.aa[c]&~this.controller.eb;this.aa[c]!=d&&(this.aa[c]=d,this.Oa=!0)}; Ik[226]=function(a,b){var c=a+this.J,d=Bk[b&15],d=d^this.controller.ub,d=d&this.controller.xb|this.controller.ub&~this.controller.xb,d=d&this.controller.eb|this.aa[c]&~this.controller.eb;this.aa[c]!=d&&(this.aa[c]=d,this.Oa=!0)};Ik[3]=function(a,b){var c=a+this.J;b=b>>this.controller.Ic|b<<8-this.controller.Ic&255;var d;d=(b|b<<8|b<<16|b<<24)&this.controller.xb;d=this.controller.Ze&d|this.controller.ub&~d;d=d&this.controller.eb|this.aa[c]&~this.controller.eb;this.aa[c]!=d&&(this.aa[c]=d,this.Oa=!0)}; -function Jk(a){var b=[];if(void 0!==a.nb){b[0]=a.$b;b[1]=a.Kc;b[2]=a.ff;b[3]=a.ga;b[4]=a.qc|a.Uf<<8;b[5]=a.jb;if(5<=a.nb){var c=[];c[0]=a.Ie;c[1]=a.Ud;c[2]=a.Jc;c[3]=a.oh;c[4]=a.gf;c[5]=a.Wf;c[6]=a.Ae;c[7]=a.ze;c[8]=a.hj;c[9]=a.ij;c[10]=a.ye;c[11]=a.Dd;c[12]=a.ub;c[13]=[a.hb,a.Hb,a.Wc];var d;a:if(d=a.sd){var e=0,k=[];if(void 0!==d[0])for(var l=0;2>l;l++)for(var p=l;p>1;k[e++]=q;p=w}if(k.lengthl;l++)for(var p=l;p>1;k[e++]=q;p=v}if(k.length>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.na,b,c|d<<8)}oc(this,!0)}};function Vk(a){a.B.gf&1?(a.la=a.jc,a.S=a.B):(a.la=a.B,a.S=a.Jb)}f.save=function(){var a=new Td(this);D(a,0,Jk(this.jc));D(a,1,Jk(this.Jb));D(a,2,[this.sa,this.qa,this.Da]);D(a,3,Jk(this.B));return a.data()}; f.restore=function(a){var b=a[2];this.sa=b[0];this.qa=b[1];this.Da=b[2];this.F=null;this.la=this.jc=new Dk(this,ok,a[0]);this.S=this.Jb=new Dk(this,3,a[1]);this.B=new Dk(this,this.nb,a[3],this.Wc);this.B.$b&&Vk(this);Wk(this);if(!Yk(this))return!1;Zk(this);return!0}; f.Aj=function(a,b,c){if(c)this.Ha("Unable to load font ROM (error "+c+": "+a+")");else{Sa(this.nf,a,b);try{var d=eval("("+b+")");if(!d.length){ra("Empty font ROM: "+a);return}if(1==d.length){ra(d[0]);return}if(8192==d.length)Kj(this,d,[6144,0]);else{this.Ha("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Ha("Font ROM data error: "+e.message);return}(this.da||this.Ta)&&ab(this)}}; -function $k(a,b){if(1==b)return a.ta[0]=xk[0],a.ta[1]=xk[7],a.ta;if(2==b){var c=a.F.ff;if(a.F===a.B){var d=a.B.Jc[0],c=d&7;d&16&&(c|=8);18!=a.B.Jc[1]&&(c|=32)}a.ta[0]=xk[c&15];c=c&32?zk:yk;for(d=0;dk;k++)l=d[k]||0,p=l<<2&252,q=l>>4&252,l=l>>10&252,a.ta[k]=[p,q,l,255];else{var w=d&&d[255];e=null!=c.Jc[15]?c.Jc:Ak;for(k=0;16>k;k++)l=e[k]&63,w?(l|= +function $k(a,b){if(1==b)return a.ta[0]=xk[0],a.ta[1]=xk[7],a.ta;if(2==b){var c=a.F.ff;if(a.F===a.B){var d=a.B.Jc[0],c=d&7;d&16&&(c|=8);18!=a.B.Jc[1]&&(c|=32)}a.ta[0]=xk[c&15];c=c&32?zk:yk;for(d=0;dk;k++)l=d[k]||0,p=l<<2&252,q=l>>4&252,l=l>>10&252,a.ta[k]=[p,q,l,255];else{var v=d&&d[255];e=null!=c.Jc[15]?c.Jc:Ak;for(k=0;16>k;k++)l=e[k]&63,v?(l|= (c.Jc[20]&12)<<4,c.Jc[16]&128&&(l&=-49,l|=(c.Jc[20]&3)<<4),l=d[l],p=l<<2&252,q=l>>4&252,l=l>>10&252):(p=(l&4?170:0)|(l&32?85:0),q=(l&2?170:0)|(l&16?85:0),l=(l&1?170:0)|(l&8?85:0)),a.ta[k]=[p,q,l,255]}a.Va=!0}return a.ta}function Kj(a,b,c,d){a.Fb=b;a.kc=c;a.Qa=d} -function Wk(a,b){var c=!1;if(window&&a.Fb&&(!b||a.K)){var d=0,e=a.Qa?a.Qa:8,k=$k(a);al(a,3,a.kc[0],d,e,8,a.Fb,k)&&(c=!0);d=a.Qa?0:2048;e=a.Qa?a.Qa:9;al(a,1,a.kc[1],d,e,14,a.Fb,vk,wk)&&(c=!0);a.Qa&&al(a,a.nb,a.kc[1],0,a.Qa,14,a.Fb,k)&&(c=!0)}return c}function al(a,b,c,d,e,k,l,p,q){var w=!1;null!=c&&(bl(a,b,c,d,e,k,l,p,q)&&(w=!0),a.Zd&&bl(a,b<<1,c,d,e,k,l,p,q)&&(w=!0));return w} -function bl(a,b,c,d,e,k,l,p,q){var w=!1,B=b&1?0:1,G=a.Fa[b],C=16>p.length?p.length:16;G||(G={sc:e<Ca||!ka?Ca:8,Mf=ej.createImageData(w.sc,w.tc),Bb=0;256>Bb;Bb++){for(bc= -0;bc=Ca-2,Km=rd[bc>(8<=Oc&&192<=Bb&&223>=Bb?7:Oc)?K:Im;cl(Mf,fj,gj,hj);X&&cl(Mf,fj+1,gj,hj)}ej.putImageData(Mf,(Bb&15)*w.sc,(Bb>>4)*w.tc)}w.ae[V]="#"+da(K[0],2)+da(K[1],2)+da(K[2],2);w.Fh[V]=K;w.eg[V]=ve;w=!0}}a.Fa[b]=G;return w}function dl(a){0a.La&&(a.La=0):a.La=-1} +function Wk(a,b){var c=!1;if(window&&a.Fb&&(!b||a.K)){var d=0,e=a.Qa?a.Qa:8,k=$k(a);al(a,3,a.kc[0],d,e,8,a.Fb,k)&&(c=!0);d=a.Qa?0:2048;e=a.Qa?a.Qa:9;al(a,1,a.kc[1],d,e,14,a.Fb,vk,wk)&&(c=!0);a.Qa&&al(a,a.nb,a.kc[1],0,a.Qa,14,a.Fb,k)&&(c=!0)}return c}function al(a,b,c,d,e,k,l,p,q){var v=!1;null!=c&&(bl(a,b,c,d,e,k,l,p,q)&&(v=!0),a.Zd&&bl(a,b<<1,c,d,e,k,l,p,q)&&(v=!0));return v} +function bl(a,b,c,d,e,k,l,p,q){var v=!1,B=b&1?0:1,G=a.Fa[b],C=16>p.length?p.length:16;G||(G={sc:e<Ca||!ka?Ca:8,Mf=ej.createImageData(v.sc,v.tc),Bb=0;256>Bb;Bb++){for(bc= +0;bc=Ca-2,Km=qd[bc>(8<=Oc&&192<=Bb&&223>=Bb?7:Oc)?K:Im;cl(Mf,fj,gj,hj);X&&cl(Mf,fj+1,gj,hj)}ej.putImageData(Mf,(Bb&15)*v.sc,(Bb>>4)*v.tc)}v.ae[V]="#"+da(K[0],2)+da(K[1],2)+da(K[2],2);v.Fh[V]=K;v.eg[V]=ve;v=!0}}a.Fa[b]=G;return v}function dl(a){0a.La&&(a.La=0):a.La=-1} function Zk(a){if(a.K){for(var b=10;15>=b;b++)if(null==a.F.jb[b])return;var c=a.F.jb[10],b=c&31,d=a.F.jb[11]&31,e=a.F.jb[9]&31,k=!1;a.F===a.B&&(k=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!k||b>e)el(a);else{c=a.F.jb[15]+((a.F.jb[14]&63)<<8);a.ha!=c&&(el(a),a.ha=c);d=d-b+1;if(a.rd!=b||a.Zc!=d)a.rd=b,a.Zc=d;a.Ka=e+1;dl(a)}}} function el(a){if(0<=a.ha){if(void 0!==a.W){var b=a.W[a.ha];if(b&131072){var b=b&-131073,c=a.ha%a.H,d=a.ha/a.H|0;a.K&&a.Fa[a.K]&&(a.Na&&fl(a,c,d,b,a.Na),fl(a,c,d,b));a.W[a.ha]=b}}a.ha=-1}} function gl(a){var b,c=a.F;a.fd=!1;var d=c.Dd[5];if(null!=d){b=1024;var e=0,k=c.Dd[3]&31;switch(d&3){case 0:if(k){e=32;switch(k&24){case 8:e=96;break;case 16:e=160;break;case 24:e=224}c.Ic=k&7}break;case 1:e=1;break;case 2:switch(k&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.nb==Lj&&(e=3,c.Ic=k&7)}d&8&&(b=1280);c=c.ze[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.fd=!0));b|=e}return b} @@ -912,11 +912,11 @@ b&&(a.fb=(a.fb<<1)+b|0,a.lc=a.fb+b>>1);a.Fa.length&&(a.ya=a.oa/a.H|0,a.Ca=a.va/a (a.Gc=b>>1,a.mc-=b),0>1,a.vc-=c),b||c)&&(a.da.fillStyle=a.ua.style.backgroundColor,a.da.fillRect(0,0,a.oa,a.va));il(a,!0);oc(a)}return!0}function cl(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 jl(a){a.Ja=-1;a.xa=!1;var b=a.ld;if(void 0===a.W||a.W.length!=b)a.W=Array(b)}function il(a,b){b||(a.Va=!1);jl(a)} function fl(a,b,c,d,e){var k=d&255,l=d>>8;d=l&15;var p=a.Fa[a.K];p.Ee&&(d=p.Ee[d]);var q=l>>4&15;p.Ee&&(q=p.Ee[q]);e?(b*=p.sc,c*=p.tc,e.fillStyle=p.ae[q],e.fillRect(b,c,p.sc,p.tc)):(b=b*a.ya+a.Gc,c=c*a.Ca+a.Hc,a.da.fillStyle=p.ae[q],a.da.fillRect(b,c,a.ya,a.Ca));l&256&&(q=(k&15)*p.sc,k=(k>>4)*p.tc,e?e.drawImage(p.eg[d],q,k,p.sc,p.tc,b,c,p.sc,p.tc):a.da.drawImage(p.eg[d],q,k,p.sc,p.tc,b,c,a.ya,a.Ca));l&512&&(k=a.rd,l=a.Zc,e?(a.Ka&&a.Ka!==p.tc&&(k=k*p.tc/a.Ka|0,l=l*p.tc/a.Ka|0),e.fillStyle=p.ae[d], e.fillRect(b,c+k,p.sc,l)):(a.Ka&&a.Ka!==a.Ca&&(k=k*a.Ca/a.Ka|0,l=l*a.Ca/a.Ka|0),a.da.fillStyle=p.ae[d],a.da.fillRect(b,c+k,a.ya,l)))} -function oc(a,b){if(a.ja.Qb){var c=!1,d=a.F;d&&(d!==a.B?d.Kc&8&&(c=!0):d.Ud&32&&(c=!0));if(c||b){if(b)jl(a);else if(void 0===a.W)return;var e=!1;!(b||++a.Ed&15)&&0<=a.La&&(a.La++,e=!0);var k=0,l=a.nd,p=a.hb,c=p,q=c+a.Hb;19<=a.Da&&(p=c=655360,q=c+65536);if(kl(a,d)&8||d.we&&d.weq&&(w=q-c,0> -w&&(w=0));q=c+w;if(d=!b&&a.xa){for(var d=a.na,B=!0,G=c>>>d.ha;0a.ha)return;k=a.ha;l=k+1}}if(a.K){if(a.Fa[a.K]){e=0;p=a.Ja=0;d=1048575;w=a.F.Kc&32;5<=a.nb&&(w=a.F.Jc[16]&8);w&&(p=32768,d&=~p,a.La&2||(d&=-65537));for(c+=k<<1;c>8|(C&255)<<8;var ka=p,Ba=16;B>=d))>>(Ba-=d);cl(a.Wa,B++,G,w[rd])}B>V&&(V=B);G=ja&&(ja=G+1)}q+=2;k++;if(B>=a.H){B=0;G+=2;if(G>a.O)break;G==a.O&&(G=1,q=c+a.lc)}}a.xa=!0;Ka.H?a.ab-a.H-C>>3:0;c>=8;w>K&&(K=w);B=X&&(X=B+1)}c+=ja;if(w>=a.H){w=0;if(++B>a.O)break;c+=ka}}C||(a.xa=!0);Ga.H?a.ab-a.H-X>>3:0;cka&&(Ba=ka)):(C<<=X,Ba-=X,a.xa=!1):(a.xa&&C===a.W[k]?(d+=Ba,Ba=0):a.W[k]=C,k++);if(Ba){dG&&(G=d);w=V&&(V=w+1)}if(d>=a.H){d=0;if(++w>a.O)break;c+=ja}}X||(a.xa=!0);Bq&&(v=q-c,0> +v&&(v=0));q=c+v;if(d=!b&&a.xa){for(var d=a.na,B=!0,G=c>>>d.ha;0a.ha)return;k=a.ha;l=k+1}}if(a.K){if(a.Fa[a.K]){e=0;p=a.Ja=0;d=1048575;v=a.F.Kc&32;5<=a.nb&&(v=a.F.Jc[16]&8);v&&(p=32768,d&=~p,a.La&2||(d&=-65537));for(c+=k<<1;c>8|(C&255)<<8;var ka=p,Ba=16;B>=d))>>(Ba-=d);cl(a.Wa,B++,G,v[qd])}B>V&&(V=B);G=ja&&(ja=G+1)}q+=2;k++;if(B>=a.H){B=0;G+=2;if(G>a.O)break;G==a.O&&(G=1,q=c+a.lc)}}a.xa=!0;Ka.H?a.ab-a.H-C>>3:0;c>=8;v>K&&(K=v);B=X&&(X=B+1)}c+=ja;if(v>=a.H){v=0;if(++B>a.O)break;c+=ka}}C||(a.xa=!0);Ga.H?a.ab-a.H-X>>3:0;cka&&(Ba=ka)):(C<<=X,Ba-=X,a.xa=!1):(a.xa&&C===a.W[k]?(d+=Ba,Ba=0):a.W[k]=C,k++);if(Ba){dG&&(G=d);v=V&&(V=v+1)}if(d>=a.H){d=0;if(++v>a.O)break;c+=ja}}X||(a.xa=!0);Bd&&(b.Ag=d,d=-d|0);d%b.wg>b.al&&(c|=1);d%b.zg>b.cl&&(c|=9);b.kh=d/b.zg|0;return c}f.Bk=function(){var a=this.la,b;a.$b&&(b=a.qc);return b};f.Ol=function(a,b){var c=this.la;c.Uf=c.qc;c.qc=b&31};f.Ak=function(){return ll(this.la)};f.Nl=function(a,b){ml(this,this.la,b)};f.Ck=function(){return this.la.Kc};f.Pl=function(a,b){this.la.Kc=b;Yk(this,!1)};f.Dk=function(){return nl(this,this.la)};f.gj=function(a,b){this.B.Wf=this.B.Wf&-4|b&3};f.$j=function(){return this.B.Ud}; f.Bj=function(){return this.B.Jc[this.B.Ud&31]};f.fj=function(a,b){var c=this.B,d=c.Ud&32;if(c.Ie){c.Ie=!1;var e=c.Ud&31;if(16<=e||!d)c.Jc[e]=b,il(this,!1)}else c.Ud=b,c.Ie=!0,b&32&&!d&&Wk(this,!0)&&oc(this,!0),c.bf=(c.jb[12]<<8)+c.jb[13]|0,c.we=0};f.Ok=function(){var a=0;if(5==this.nb)a=3-((this.B.gf&12)>>2),a=(this.Ib&1<>2;var e=d=0,a=new DataView(a,0,c);l.A=Array(l.ob);for(c=0;cb.indexOf("/api/v1/dump")&&(a=fa(b),"json"==a||"gz"==a?k=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(k=Nl(this,b),this.Ef=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):-1!==b.indexOf("/", +4)var qd=Ba[Ca]=a.getInt32(e,!0),d=d+qd&-1;ka.Dc=b;X[ja]=ka}l.T=d;b=l}else l.Ha("Unrecognized diskette format ("+c+" bytes)");l.N&&(l.N.call(l.controller,l.D,b,l.B,l.J),l.N=null)};p.readAsArrayBuffer(c)}else 0>b.indexOf("/api/v1/dump")&&(a=fa(b),"json"==a||"gz"==a?k=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(k=Nl(this,b),this.Ef=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):-1!==b.indexOf("/", b.length-1)&&(c="dir"),k=qa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.ne?"":d)+"&format=json")),pa(k,!0,null,this,this.tj)}; f.tj=function(a,b,c){var d=null;this.qe=!1;var e=0>c&&this.ua&&!this.ua.ja.Qb;if(this.Ef)c?this.controller.Ha('Unable to connect to disk "'+this.J+'" (error '+c+": "+b+")",e):(this.F=!0,d=this);else if(c)this.controller.Ha('Unable to load disk "'+this.B+'" (error '+c+": "+a+")",e);else{Sa(this.controller.nf,a,b);try{if(0k&&0b.indexOf("0x")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(l.length)if(1==l.length)ra(l[0]);else{this.ob=l.length;this.pb=l[0].length;this.ib=l[0][0].length;var p=l[0][0][0];this.tb=p&&p.length||512;for(c=b=0;c>2,w=p.pattern;void 0===w&&(w=p.pattern=0);var B=p.data; -if(void 0===B){var G=p.bytes;if(void 0!==G&&G.length){for(var C=q<<2,K=G.length;Kb.indexOf("0x")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(l.length)if(1==l.length)ra(l[0]);else{this.ob=l.length;this.pb=l[0].length;this.ib=l[0][0].length;var p=l[0][0][0];this.tb=p&&p.length||512;for(c=b=0;c>2,v=p.pattern;void 0===v&&(v=p.pattern=0);var B=p.data; +if(void 0===B){var G=p.bytes;if(void 0!==G&&G.length){for(var C=q<<2,K=G.length;Kl)break;e|=l<b&&(b=0);2E3>2,e=Array(d),k=0;k>2,e=a.data;a=a.pattern;for(var k=0;k>8&255;c[d++]=l>>16&255;c[d++]=l>>24&255}return c}f.read=function(a,b){var c=-1;if(a&&b>2,c=(d>((b&3)<<3)&255;return c}; f.write=function(a,b,c){if(this.qe)return!1;if(b>2;b=(b&3)<<3;for(var l=d.length;l<=k;l++)d[l]=e;a.Dc?k=a.Sc+a.Dc&&(a.Dc+=k-(a.Sc+a.Dc)+1):(a.Sc=k,a.Dc=1);d[k]=d[k]&~(255<=this.A.length||q>=this.A[p].length||w>=this.A[p][q].length){c="sector (CHS="+p+":"+q+":"+w+") out of range ("+ -b+" changes applied)";b=-1;break}if(this.qe){c="unable to modify write-protected disk";b=-1;break}e=l[k++];k=l[k++];l=e+k.length;if(p=this.A[p][q][w]){for(q=p.data.length;qb&&-2!=b&&this.controller.Ha("Unable to restore disk '"+this.B+": "+c);return b}; +f.save=function(){var a=0,b=[];b[a++]=[this.J,this.T,this.ob,this.pb,this.ib,this.tb];if(!this.F&&!this.qe)for(var c=this.A,d=0;d=this.A.length||q>=this.A[p].length||v>=this.A[p][q].length){c="sector (CHS="+p+":"+q+":"+v+") out of range ("+ +b+" changes applied)";b=-1;break}if(this.qe){c="unable to modify write-protected disk";b=-1;break}e=l[k++];k=l[k++];l=e+k.length;if(p=this.A[p][q][v]){for(q=p.data.length;qb&&-2!=b&&this.controller.Ha("Unable to restore disk '"+this.B+": "+c);return b}; f.toJSON=function(){var a=JSON.stringify(this.A,function(a,c){return"file"==a?void 0:c}),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 Vl(a){Ia.call(this,"FDC",a,Vl);this.dmaRead=this.uj;this.dmaWrite=this.vj;this.dmaFormat=this.Ij;this.N=a.autoMount||null;this.D=[];this.da=!xa("Mobi")&&window&&"FileReader"in window}Qa(Vl);aa={};var Wl={3:{dd:3,wd:0,name:aa.Jm},4:{dd:2,wd:1,name:aa.Hm},5:{dd:9,wd:7,name:aa.Rm},6:{dd:9,wd:7,name:aa.Cm},7:{dd:2,wd:0,name:aa.Em},8:{dd:1,wd:2,name:aa.Im},10:{dd:2,wd:7,name:aa.Dm},13:{dd:6,wd:7,name:aa.pm},15:{dd:3,wd:0,name:aa.Gm}};f=Vl.prototype; f.Eb=function(a,b,c){var d=this;switch(b){case "listDisks":return this.pa[b]=c,c.onchange=function(){var a=d.pa.descDisk,b=c.options[c.selectedIndex];if(a&&b){var l={};if(b=b.getAttribute("data-value"))try{l=eval("("+b+")")}catch(p){ra("FDC option error: "+p.message)}b=l.desc;void 0===b&&(b="");l=l.href;void 0!==l&&(b=''+b+"");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.pa[b]=c,c.onchange=function(){var a=ca(c.value,10);null!=a&&Xl(d,a)},!0; -case "loadDrive":return this.pa[b]=c,c.onclick=function(){var a=d.pa.listDisks;a&&Yl(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDrive":return this.pa[b]=c,c.onclick=function(){var a=d.pa.listDrives;if(a&&a.options&&d.B)if(a=ca(a.value,10),a=d.B[a])if(a.za){for(var b=a.za,c="",p=0,q;q=Pl(b,p++);)for(var w=0,B=q.length;wl.za.restore(C)&&(p=!1);p&&l.za&&void 0!==l.Ya&&(l.Za=l.za.seek(l.Bb,l.bb,l.sb));p||(e=!1)}a.O=b[c++]||0;a.J=b[c]||0;return e} +9;break;case 1200:l.ob=80;l.ib=15;break;case 1440:l.ob=80,l.ib=18}}var q=a,v=d,B=k[d],G=0;p=!0;l.Xa=v;l.Nc=l.le=!1;void 0===B&&(B=[192,!0,0,2,0]);"boolean"==typeof B[1]&&(B[1]=["Floppy Drive",l.ob||40,l.pb||B[3],l.ib||9,l.tb||512,B[1],l.Lf,l.Se,l.Te]);l.qb=B[G++];var C=B[G++];l.name=C[0];l.ob=C[1];l.pb=C[2];l.ib=C[3];l.tb=C[4];l.ne=C[5];(l.Lf=C[6])?(l.Se=C[7],l.Te=C[8]):(l.Lf=l.ob,l.Se=l.pb,l.Te=l.ib);l.bb=B[G++];l.ud=B[G++];l.Bb=B[G++];l.ud=100<=l.ud?l.ud-100:l.ud-l.Bb;l.sb=B[G++];l.vd=B[G++];l.zb= +B[G++];l.Ya=B[G++];l.Za=null;l.za||(l.Vd="");C=B[G++];102==C&&(C=!1);if("boolean"==typeof C){var K=C,C=B[G++],B=B[G];K?(G=C,C=q.B[v],em(q,v,!0,!0),C.le=!0,v=new Il(q,C,"preload"),q.Qh(C,v,G,B,!0)):gm(q,v,C,B,!0)?l.za&&B&&hm(q,C,B,l.za):ab(q,!1)}else void 0!==C&&l.za&&0>l.za.restore(C)&&(p=!1);p&&l.za&&void 0!==l.Ya&&(l.Za=l.za.seek(l.Bb,l.bb,l.sb));p||(e=!1)}a.O=b[c++]||0;a.J=b[c]||0;return e} function dm(a,b){b||(a.S=0);if(a.N)for(var c in a.N){var d=a.N[c],e=d.path,k;if(!(k=d.name))a:{if((k=a.pa.listDisks)&&k.options)for(var l=0;la.ob||k[1]>a.pb)&& function cm(a,b,c){if((a=a.pa.listDisks)&&a.options){for(var d=0;d=this.F&&(this.ga&=-81,this.H=this.F=0);return a}; -f.Cl=function(a,b){this.F=Wl[c].dd){var d=!1;this.H=0;var c=im(this),e,k,l,p,q,w=c&31;switch(w){case 3:im(this);im(this);jm(this);break;case 4:k=im(this);this.Xa=k&3;e=this.B[this.Xa];jm(this);km(this,(e.qb&-16777216)>>>24);break;case 5:case 6:k=im(this);d=k>>2&1;this.Xa=k&3;e=this.B[this.Xa];e.bb=d;k=e.Bb=im(this);l=im(this);p=e.sb=im(this);q=im(this);e.zb=128<>2&1;this.Xa=k&3;e=this.B[this.Xa];k=e.Bb;l=e.bb=d;p= -e.sb=1;q=0;e.qb=0;e.za&&(e.Za=e.za.seek(e.Bb,e.bb,e.sb))?q=e.Za.length>>8:e.qb=72;lm(this,e,c,d,k,l,p,q);d=!0;break;case 13:k=im(this);d=k>>2&1;this.Xa=k&3;e=this.B[this.Xa];k=e.Bb;l=e.bb=d;p=1;q=im(this);e.zb=128<>2&1,k=im(this),e.Bb+= +f.Cl=function(a,b){this.F=Wl[c].dd){var d=!1;this.H=0;var c=im(this),e,k,l,p,q,v=c&31;switch(v){case 3:im(this);im(this);jm(this);break;case 4:k=im(this);this.Xa=k&3;e=this.B[this.Xa];jm(this);km(this,(e.qb&-16777216)>>>24);break;case 5:case 6:k=im(this);d=k>>2&1;this.Xa=k&3;e=this.B[this.Xa];e.bb=d;k=e.Bb=im(this);l=im(this);p=e.sb=im(this);q=im(this);e.zb=128<>2&1;this.Xa=k&3;e=this.B[this.Xa];k=e.Bb;l=e.bb=d;p= +e.sb=1;q=0;e.qb=0;e.za&&(e.Za=e.za.seek(e.Bb,e.bb,e.sb))?q=e.Za.length>>8:e.qb=72;lm(this,e,c,d,k,l,p,q);d=!0;break;case 13:k=im(this);d=k>>2&1;this.Xa=k&3;e=this.B[this.Xa];k=e.Bb;l=e.bb=d;p=1;q=im(this);e.zb=128<>2&1,k=im(this),e.Bb+= k-e.ud,0>e.Bb&&(e.Bb=0),e.Bb>=e.ob&&(e.Bb=e.ob-1),e.ud=k,e.qb=32,e.Bb||(e.qb|=268435456),jm(this),d=!0}0>>8);km(a,(b.qb&16711680)>>>16);var q=0;if(e!=b.Bb||k!=b.bb)q=l=1;c&128&&(k^=q,d||(q=0));km(a,e+q);km(a,k);km(a,l);km(a,p)} function im(a){var b=a.K[a.H];a.H++;return b}function jm(a){a.H=a.F=0}function km(a,b){a.K[a.F++]=b}f.uj=function(a,b,c){if(void 0===b||0>b){b=-1;var d=null,e=0;if(!a.qb&&a.za){do{if(a.Za&&(e=a.Ya,0<=(b=a.za.read(a.Za,a.Ya++)))){d=a.Za;break}a.Za=a.za.seek(a.Bb,a.bb,a.sb);if(!a.Za){a.qb=1088;break}a.Ya=0;mm(a)}while(1)}c(b,!1,d,e)}else c(-1,!1)};f.vj=function(a,b){return void 0!==b&&0<=b?nm(a,b):-1}; f.Ij=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.qb)c=-1;else{a.Mc[a.he++]=c;if(a.he==a.Mc.length){a.Bb=a.Mc[0];a.bb=a.Mc[1];a.sb=a.Mc[2];a.zb=128<nm(a,a.Jh)){c=-1;break a}a.zf++}a.zf>=a.vd&&(c=-1)}else c=-1;return c};function nm(a,b){if(a.qb||!a.za)return-1;do{if(a.Za&&a.za.write(a.Za,a.Ya++,b))break;a.Za=a.za.seek(a.Bb,a.bb,a.sb);if(!a.Za){a.qb=8256;b=-1;break}a.Ya=0;mm(a)}while(1);return b} @@ -998,11 +998,11 @@ var pm=["XTC","ATC","COMPAQ"],qm=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[ 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]}];f=om.prototype;f.Eb=function(){return!1}; f.nc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.ua=a;this.T=kb(a,"ChipSet");this.J=0;this.xa=3;Nb(b,this,this.Z?rm:sm);Pb(b,this,this.Z?tm:um);this.Z&&(this.J++,this.T&&5180==this.T.ia&&this.J++,this.xa=2,b.O[496]=2,b.S[496]=2);Pd(c,19,this.Wk.bind(this));Pd(c,64,this.Xk.bind(this));this.reset();vm(this)||ab(this)};f.Tb=function(a,b){if(!b)if(!a||!this.restore)wm(this),this.ua.ng&&vm(this,!0);else if(!this.restore(a))return!1;return!0};f.Sb=function(a){return a?this.save():!0}; f.re=function(){return this.ua?this.ua.re():""};f.yd=function(){return this.ua?this.ua.yd():""};f.reset=function(){wm(this,null,!0)}; -f.save=function(){var a=new Td(this),b=0,c=[];this.Z?(c[b++]=this.N,c[b++]=this.Fa,c[b++]=this.O,c[b++]=this.sa,c[b++]=this.qa,c[b++]=this.oa,c[b++]=this.ha,c[b++]=this.ga,c[b++]=this.va,c[b++]=[this.W,this.Xa]):(c[b++]=this.la,c[b++]=this.ga,c[b++]=this.K,c[b++]=this.H,c[b++]=this.F,c[b++]=this.Da,c[b++]=this.Ca,c[b++]=this.ya,c[b++]=this.da);for(var d=0,e=[],k=0;kq.za.restore(l)&&(K=!1),K&&void 0!==q.Ya&&(q.Za=q.za.seek(q.Fd,q.bb,q.sb+q.yf))); +(b=[]);for(d=0;dq.za.restore(l)&&(K=!1),K&&void 0!==q.Ya&&(q.Za=q.za.seek(q.Fd,q.bb,q.sb+q.yf))); K||(e=!1);null!=a.la&&1>=d&&(a.la|=(k.type&3)<<(1-d<<1))}0<=a.Xa&&(a.D=a.B[a.Xa]);return e}function xm(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.ce[2])?e=b.ce[0]<<8|b.ce[1]:c=b.type);null==c||d||(d=qm[a.J][c][1],e=qm[a.J][c][0]);d&&((c=qm[a.J][b.type])&&e!=c[0]&&d!=c[1]&&a.Ha("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.ob=e,b.pb=d,null==b.za&&(b.za=new Il(a,b,b.mode)))}} function vm(a,b){b||(a.S=0);for(var c=0;c=this.F&&(this.H=this.F=0,this.ga&=-15);return a}; @@ -1012,7 +1012,7 @@ f.jl=function(a,b){Cm(this,b&255);Cm(this,b>>8&255)};f.Zj=function(){return this f.ck=function(){var a=this.ga;this.ga&64&&(this.ga&=-129);return a};f.gl=function(a,b){this.va=b;this.T&&Ke(this.T,14);Em(this)};f.ll=function(a,b){this.W&4&&!(b&4)&&(this.N=1);this.W=b}; function Em(a){var b=!1,c=a.va,d=a.ha&16?1:0,e=a.ha&15,k=a.qa|(a.oa&3)<<8,l=a.sa,p=a.O||256;a.Xa=-1;a.D=null;a.N=0;a.ga=80;var q=a.B[d];q?(q.Fd=k,q.bb=e,q.sb=l,q.zb=p*q.tb,c=144<=c?c:c&240,q.Za=null,q.Ya=0,q.errorCode=0,a.Xa=d,a.D=q):c=-1;switch(c&240){case 16:b=!0;break;case 32:a.ga=128;Am(q,function(b){0<=b&&a.T?(Bm(a),a.ga=88):(a.ga=1,a.N=16)},!1);break;case 48:a.ga=8;break;case 64:b=!0;break;case 112:b=!0;break;case 144:a.N=1;b=!0;break;case 145:q.pb=e+1,q.ib=p,b=!0}b&&Bm(a)} function Bm(a){!a.T||a.W&2||Le(a.T,14,120)} -function ym(a){a.H=0;var b=Fm(a),c=Fm(a),d=c&32,e=d>>5,k=c&31,l=Fm(a),p=Fm(a),q=l<<2&768|p,w=l&63,B=Fm(a),G=Fm(a),C=a.B[e];C&&(C.Fd=q,C.bb=k,C.sb=w,C.zb=B*C.tb);switch(b){case 3:Gm(a,C?C.errorCode:4);Hm(a,c);Hm(a,l);Hm(a,p);Hm(a,0|d);b=-1;break;case 12:for(c=0;0<=(b=Fm(a));)C&&c>5,k=c&31,l=Fm(a),p=Fm(a),q=l<<2&768|p,v=l&63,B=Fm(a),G=Fm(a),C=a.B[e];C&&(C.Fd=q,C.bb=k,C.sb=v,C.zb=B*C.tb);switch(b){case 3:Gm(a,C?C.errorCode:4);Hm(a,c);Hm(a,l);Hm(a,p);Hm(a,0|d);b=-1;break;case 12:for(c=0;0<=(b=Fm(a));)C&&cb?Am(a,c):c(-1,!1)};f.xj=function(a,b){return void 0!==b&&0<=b?Dm(a,b):-1}; f.Jj=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.YaDm(a,a.Jh)){c=-1;break a}a.zf++}a.zf>=a.vd&&(c=-1)}else c=-1;return c}; function Lm(a,b,c){b.errorCode=4;if(b.za&&(b.Za=null,a.T)){b.errorCode=0;mj(a.T,3,a,"dmaRead",b);ij(a.T,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}function Mm(a,b,c){b.errorCode=4;if(b.za&&(b.Za=null,a.T)){b.errorCode=0;mj(a.T,3,a,"dmaWrite",b);ij(a.T,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)} @@ -1032,7 +1032,7 @@ l?(this.Ha("Error: "+l),"unable to verify user"==l&&(wa("user",""),this.B=null)) function an(a,b,c,d,e){if(!b.ja.Qb){b.ja.Qb=!0;if(b.Tb){var k=null;e&&((k=Tm(c,b.id))||(k=Tm(c,b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof k&&(k=null);!b.Tb(k,d)&&k&&(ra("Unable to restore state for "+b.type),a.O&&!a.W?(c.clear(),a.rc=Vm,window&&window.location.reload()):a.S=!0,b.Tb(null),e=!1)}if(!d&&b.Dh)for(a=b.Dh.split("|"),c=0;ca[1];a=a[2];this.ja.Qb=!0;var d=this.pa.power;d&&(d.textContent="Shutdown");this.Eh||(this.pc("PCjs v"+Xm+"\nCopyright \u00a9 2012-2016 Jeff Parsons \nLicense: GPL version 3 or later "),this.Eh=!0);this.A&&(an(this,this.A,b,c,a),mc(this.A));this.S&&($m(this,b),b.clear());!c&&this.F&&(this.F.clear(),delete this.F);this.D=0}; function $m(a,b){if(sa("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.da,d=a.yd(),e=b.toString(),k={app:"PCjs"};k.ver=Xm;k.url=c;k.user=d;k.type="bug";k.data=e;pa("http://www.pcjs.org/api/v1/report",!0,k)}} -function bn(a,b,c){var d,e="none";if(a.D)return null;a.D--;var k=new Td(a,Xm),l=new Td(a,Xm,"validate"),p=la();D(l,"timestamp",p);D(k,"timestamp",p);D(k,"version","1.20.9");D(k,"url",window?window.location.href:null);D(k,"browser",window?window.navigator.userAgent:"");a.A&&a.A.Sb&&(c&&pc(a.A),d=a.A.Sb(b,c),"object"===typeof d&&D(k,a.A.id,d),c&&(a.A.ja.Qb=!1,!1===d&&(e=null)));for(var p=Ta(a.id),q=0;qp.indexOf("/")&&(p=window.location.pathname+p);d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(p?' url="'+p+'"':""))}p=null;if("<"==a.charAt(0))try{e||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(p=new window.ActiveXObject("Microsoft.XMLDOM"), p.async=!1,p.loadXML(a)):p=(new window.DOMParser).parseFromString(a,"text/xml")}catch(G){p=null,a=G.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");pa(e,!0,null,null,function(k,l,p){if(p||!l)c(a,"unable to resolve XML reference: "+d[0]+" ("+p+")");else{if(k=d[3])if(p=l.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var q=p[0],w,B=/( [a-z]+=)(['"])(.*?)\2/g;w=B.exec(k);)q=0>q.indexOf(w[1])?q.replace(">",w[0]+">"):q.replace(new RegExp(w[1]+"(['\"])(.*?)\\1"),w[0]);p[0]!=q&&(l=l.replace(p[0],q))}else{c(a,"missing <"+d[1]+"> in "+e);return}l=l.replace(/<\?xml[^>]*>[\r\n]*/, +function hn(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");pa(e,!0,null,null,function(k,l,p){if(p||!l)c(a,"unable to resolve XML reference: "+d[0]+" ("+p+")");else{if(k=d[3])if(p=l.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var q=p[0],v,B=/( [a-z]+=)(['"])(.*?)\2/g;v=B.exec(k);)q=0>q.indexOf(v[1])?q.replace(">",v[0]+">"):q.replace(new RegExp(v[1]+"(['\"])(.*?)\\1"),v[0]);p[0]!=q&&(l=l.replace(p[0],q))}else{c(a,"missing <"+d[1]+"> in "+e);return}l=l.replace(/<\?xml[^>]*>[\r\n]*/, "");a=a.replace(d[0],l);hn(a,b,c)}})}else c(a,null)} -function jn(a,b,c,d){function e(a){if(void 0===p){var b=l&&Za(l,"machine-warning");p=b&&b[0]||l}p&&(p.innerHTML=ha(a))}function k(a){e("Error: "+a);q&&(--en||Ga(!0));q=!1}var l,p,q=!0;en++;Ra[a]={};try{if(l=document.getElementById(a)){c||(c="/versions/pcjs/1.20.9/components.xsl");var w=function(d,p){p?(Sa(a,"xml",d),fn(c,null,null,!1,e,function(c,d){if(d)if(Sa(a,"xsl",c),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var q=p.transformNode(d);q?(l.outerHTML=q,--en||Ga(!0)): -k("transformNodeToObject failed")}else document.implementation&&document.implementation.createDocument?(q=new XSLTProcessor,q.importStylesheet(d),(q=q.transformToFragment(p,document))?l.parentNode?(l.parentNode.replaceChild(q,l),--en||Ga(!0)):k("invalid machine element: "+a):k("transformToFragment failed")):k("unable to transform XML: unsupported browser");else k(c)})):k(d)};"<"!=b.charAt(0)?fn(b,a,d,!0,e,w):gn(b,null,a,d,!1,e,w)}else k("missing machine element: "+a)}catch(B){k(B.message)}return q} -window.embedPC=function(a,b,c,d){Ga(!1);return jn(a,b,c,d)};window.savePC=function(a){var b=Va("Computer",a),c=Va("Debugger",a);if(b)return pa("/versions/pcjs/null/pc"+(c?"-dbg":"")+".js"),!0;ra("Unable to identify machine '"+a+"'");return!1};window.enableEvents=Ga;window.sendEvent=Ha;})(); +function jn(a,b,c,d){function e(a){if(void 0===p){var b=l&&Za(l,"machine-warning");p=b&&b[0]||l}p&&(p.innerHTML=ha(a))}function k(a){e("Error: "+a);q&&(--en||Ga(!0));q=!1}var l,p,q=!0;en++;Ra[a]={};try{if(l=document.getElementById(a)){c||(c="/versions/pcjs/1.20.9/components.xsl");var v=function(d,p){p?(Sa(a,b,d),fn(c,null,null,!1,e,function(d,q){if(q)if(Sa(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var v=p.transformNode(q);v?(l.outerHTML=v,--en||Ga(!0)):k("transformNodeToObject failed")}else document.implementation&& +document.implementation.createDocument?(v=new XSLTProcessor,v.importStylesheet(q),(v=v.transformToFragment(p,document))?l.parentNode?(l.parentNode.replaceChild(v,l),--en||Ga(!0)):k("invalid machine element: "+a):k("transformToFragment failed")):k("unable to transform XML: unsupported browser");else k(d)})):k(d)};"<"!=b.charAt(0)?fn(b,a,d,!0,e,v):gn(b,null,a,d,!1,e,v)}else k("missing machine element: "+a)}catch(B){k(B.message)}return q} +function kn(a,b,c,d){if(b&&(c=d[0],b=b.match(/^(\s*\(function\(\)\{)([\s\S]*)(}\)\(\);\s*)$/))){d=Ra[c];var e={},k;for(k in d){var l=d[k];if("xml"==k)for(var p,q=/[ \t]*]*path=(['"])(.*?)\1.*?<\/disk>\n?/g;p=q.exec(d[k]);){var v=p[2];v&&(d[v]?console.log("saving disk: '"+v):l=l.replace(p[0],""))}console.log("saving resource: '"+k+"' ("+l.length+" bytes)");e[k]=l}k=JSON.stringify(e);b=b[1]+"var resources="+k+";"+b[2]+b[3];console.log("saving machine: '"+c+"' ("+b.length+" bytes)");k="data:application/octet-stream;base64,"+ +btoa(b);c=document.createElement("a");"string"==typeof c.download?(c.href=k,c.download=ea(a,!0)+".json",document.body.appendChild(c),c.click(),document.body.removeChild(c)):window.open(k)}}window.embedPC=function(a,b,c,d){Ga(!1);return jn(a,b,c,d)};window.savePC=function(a,b){var c=Va("Computer",a),d=Va("Debugger",a);if(c)return b||(b="/versions/pcjs/1.20.9/pc"+(d?"-dbg":"")+".js"),pa(b,!0,null,null,kn,[a,c,d]),!0;ra("Unable to identify machine '"+a+"'");return!1};window.enableEvents=Ga; +window.sendEvent=Ha;})(); diff --git a/modules/shared/lib/component.js b/modules/shared/lib/component.js index b164ae1e5..c725e240c 100644 --- a/modules/shared/lib/component.js +++ b/modules/shared/lib/component.js @@ -259,23 +259,20 @@ Component.addMachineResource = function(idMachine, sName, data) { Component.assert(Component.machines[idMachine]); if (Component.machines[idMachine]) { - if (!Component.machines[idMachine][sName]) { - Component.machines[idMachine][sName] = []; - } - Component.machines[idMachine][sName].push(data); + Component.assert(Component.machines[idMachine][sName] === undefined); + Component.machines[idMachine][sName] = data; } }; /** - * Component.getMachineResources(idMachine, sName) + * Component.getMachineResources(idMachine) * * @param {string} idMachine - * @param {string} sName (name of the resource) - * @return {Array|undefined} + * @return {Object|undefined} */ -Component.getMachineResources = function(idMachine, sName) +Component.getMachineResources = function(idMachine) { - return Component.machines[idMachine] && Component.machines[idMachine][sName]; + return Component.machines[idMachine]; }; /** diff --git a/modules/shared/lib/embed.js b/modules/shared/lib/embed.js index e4d7c284d..756278c06 100644 --- a/modules/shared/lib/embed.js +++ b/modules/shared/lib/embed.js @@ -381,7 +381,7 @@ function embedMachine(sName, sVersion, idMachine, sXMLFile, sXSLFile, sParms) displayError(sXML); return; } - Component.addMachineResource(idMachine, 'xml', sXML); + Component.addMachineResource(idMachine, sXMLFile, sXML); /* * Non-COMPILED kludge to extract the version number from the stylesheet path in the machine XML file; * we don't need this code in COMPILED (non-DEBUG) releases, because APPVERSION is hard-coded into them. @@ -395,7 +395,7 @@ function embedMachine(sName, sVersion, idMachine, sXMLFile, sXSLFile, sParms) displayError(sXSL); return; } - Component.addMachineResource(idMachine, 'xsl', sXSL); + Component.addMachineResource(idMachine, sXSLFile, sXSL); /* * The template in components.xsl now generates a "machine div" that makes * the div we required the caller of embedMachine() to provide redundant, so instead @@ -501,27 +501,102 @@ function embedPC(idMachine, sXMLFile, sXSLFile, sParms) } /** - * savePC(idMachine) + * savePC(idMachine, sPCJSFile) * * @param {string} idMachine + * @param {string} [sPCJSFile] * @return {boolean} true if successful, false if error */ -function savePC(idMachine) +function savePC(idMachine, sPCJSFile) { var cmp = Component.getComponentByType("Computer", idMachine); var dbg = Component.getComponentByType("Debugger", idMachine); if (cmp) { - var sPCJSFile = "/versions/pcjs/" + XMLVERSION + "/pc" + (dbg? "-dbg" : "") + ".js"; - var sPCJSCode = web.loadResource(sPCJSFile); - /* - * Next, we need to enumerate the FDC drives and "dump" the disks in them.... - */ + if (!sPCJSFile) sPCJSFile = "/versions/pcjs/" + (XMLVERSION || APPVERSION) + "/pc" + (dbg? "-dbg" : "") + ".js"; + web.loadResource(sPCJSFile, true, null, null, downloadPC, [idMachine, cmp, dbg]); return true; } web.alertUser("Unable to identify machine '" + idMachine + "'"); return false; } +/** + * downloadPC(sURL, sPCJS, nErrorCode, aMachineInfo) + * + * @param {string} sURL + * @param {string} sPCJS + * @param {number} nErrorCode + * @param {string} aMachineInfo ([0] = idMachine, [1] = Computer component, [2] = Debugger component, if any) + */ +function downloadPC(sURL, sPCJS, nErrorCode, aMachineInfo) +{ + /* + * sPCJS is supposed to contain the entire PCjs script, which has been wrapped with: + * + * (function(){... + * + * at the top and: + * + * ...})(); + * + * at the bottom, thanks to the following Closure Compiler option: + * + * --output_wrapper "(function(){%output%})();" + * + * Immediately inside that wrapping, we want to embed all the specified machine's resources, using: + * + * var resources = {"xml": "...", "xsl": "...", ...}; + * + * Note that the "resources" variable has been added to our externs.js, to prevent it from being renamed + * by the Closure Compiler. + */ + if (sPCJS) { + var idMachine = aMachineInfo[0]; + var matchScript = sPCJS.match(/^(\s*\(function\(\)\{)([\s\S]*)(}\)\(\);\s*)$/); + if (matchScript) { + var resources = Component.getMachineResources(idMachine), resourcesNew = {}; + for (var name in resources) { + var data = resources[name]; + if (name == "xml") { + /* + * Look through this resource for entries whose paths do not appear as one of the other + * machine resources, and remove those entries. + */ + var matchDisk, reDisk = /[ \t]*]*path=(['"])(.*?)\1.*?<\/disk>\n?/g; + while (matchDisk = reDisk.exec(resources[name])) { + var path = matchDisk[2]; + if (path) { + if (resources[path]) { + console.log("saving disk: '" + path); + } else { + data = data.replace(matchDisk[0], ""); + } + } + } + } + console.log("saving resource: '" + name + "' (" + data.length + " bytes)"); + resourcesNew[name] = data; + } + + var sResources = JSON.stringify(resourcesNew); + sPCJS = matchScript[1] + "var resources=" + sResources + ";" + matchScript[2] + matchScript[3]; + console.log("saving machine: '" + idMachine + "' (" + sPCJS.length + " bytes)"); + + var uri = "data:application/octet-stream;base64," + btoa(sPCJS); + var link = document.createElement('a'); + if (typeof link.download == 'string') { + link.href = uri; + link.download = str.getBaseName(sURL, true) + ".json"; + document.body.appendChild(link); // Firefox requires the link to be in the body (?) + link.click(); + document.body.removeChild(link); + } else { + window.open(uri); + } + } + } +} + /** * Prevent the Closure Compiler from renaming functions we want to export, by adding them * as (named) properties of a global object. diff --git a/modules/shared/lib/externs.js b/modules/shared/lib/externs.js index c8521fb9d..59e536288 100644 --- a/modules/shared/lib/externs.js +++ b/modules/shared/lib/externs.js @@ -33,5 +33,6 @@ "use strict"; var global; +var resources; // var webkitAudioContext; diff --git a/modules/shared/lib/weblib.js b/modules/shared/lib/weblib.js index 0845dea7b..4614ad856 100644 --- a/modules/shared/lib/weblib.js +++ b/modules/shared/lib/weblib.js @@ -190,7 +190,20 @@ web.notice = function(s, fPrintOnly, id) */ web.loadResource = function(sURL, fAsync, data, componentNotify, fnNotify, pNotify) { - fAsync = !!fAsync; // ensure that fAsync is a valid boolean (Internet Explorer xmlHTTP functions insist on it) + var nErrorCode = 0; + var sURLData = null; + + if (resources && (sURLData = resources[sURL])) { + if (fnNotify) { + if (!componentNotify) { + fnNotify(sURL, sURLData, nErrorCode, pNotify); + } else { + fnNotify.call(componentNotify, sURL, sURLData, nErrorCode, pNotify); + } + } + return [nErrorCode, sURLData]; + } + if (NODE) { /* * We don't even need to load Component, because we can't use any of the code below @@ -201,8 +214,7 @@ web.loadResource = function(sURL, fAsync, data, componentNotify, fnNotify, pNoti var net = require("./netlib"); return net.loadResource(sURL, fAsync, data, componentNotify, fnNotify, pNotify); } - var nErrorCode = 0; - var sURLData = null; + var xmlHTTP = (window.XMLHttpRequest? new window.XMLHttpRequest() : new window.ActiveXObject("Microsoft.XMLHTTP")); if (fAsync) { xmlHTTP.onreadystatechange = function() { @@ -238,6 +250,7 @@ web.loadResource = function(sURL, fAsync, data, componentNotify, fnNotify, pNoti } }; } + if (data) { var sData = ""; for (var p in data) { @@ -247,14 +260,15 @@ web.loadResource = function(sURL, fAsync, data, componentNotify, fnNotify, pNoti } sData = sData.replace(/%20/g, '+'); if (MAXDEBUG) web.log("web.loadResource(POST " + sURL + "): " + sData.length + " bytes"); - xmlHTTP.open("POST", sURL, fAsync); + xmlHTTP.open("POST", sURL, !!fAsync); // ensure that fAsync is a valid boolean (Internet Explorer xmlHTTP functions insist on it) xmlHTTP.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xmlHTTP.send(sData); } else { if (MAXDEBUG) web.log("web.loadResource(GET " + sURL + ")"); - xmlHTTP.open("GET", sURL, fAsync); + xmlHTTP.open("GET", sURL, !!fAsync); // ensure that fAsync is a valid boolean (Internet Explorer xmlHTTP functions insist on it) xmlHTTP.send(); } + var response = []; if (!fAsync) { sURLData = xmlHTTP.responseText; diff --git a/versions/c1pjs/1.20.9/c1p-dbg.js b/versions/c1pjs/1.20.9/c1p-dbg.js index dea0e1e53..a3a2c7d2d 100644 --- a/versions/c1pjs/1.20.9/c1p-dbg.js +++ b/versions/c1pjs/1.20.9/c1p-dbg.js @@ -1,40 +1,40 @@ (function(){var f;function n(a,b){var c="";void 0===b?b=8:8=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function p(a){return"0x"+n(a,2)}function q(a){return"0x"+n(a,4)}var aa={"&":"&","<":"<",">":">",'"':""","'":"'"};function ba(a){return a.replace(/[&<>"']/g,function(a){return aa[a]})}var ca=Date.now||function(){return+new Date}; -function t(a,b,c){var d;d=!0;var e=0,g=null,h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");d&&(h.onreadystatechange=function(){4===h.readyState&&(g=h.responseText,200==h.status||!h.status&&g.length&&"file:"==(window?window.location.protocol:"file:")||(e=h.status||-1),c&&(b?c.call(b,a,g,e,void 0):c(a,g,e,void 0)))});h.open("GET",a,d);h.send();d||(g=h.responseText,200!=h.status&&(e=h.status||-1),c&&(b?c.call(b,a,g,e,void 0):c(a,g,e,void 0)))} +function t(a,b,c){var d=0,e=null;if(resources&&(e=resources[a]))c&&(b?c.call(b,a,e,d,void 0):c(a,e,d,void 0));else{var g=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");g.onreadystatechange=function(){4===g.readyState&&(e=g.responseText,200==g.status||!g.status&&e.length&&"file:"==(window?window.location.protocol:"file:")||(d=g.status||-1),c&&(b?c.call(b,a,e,d,void 0):c(a,e,d,void 0)))};g.open("GET",a,!0);g.send()}} function u(a){window&&window.alert(a)}function v(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function da(a,b,c){function d(){--a;0<=a&&(b()||(a=0));0ya(a.P,b,c,d,e)&&(a.oa>b&&(a.oa=b),a.pa=a.P[d][0]&&b<=a.P[d][1]&&a.P[d][3].call(a.P[d][2],b,c)}function N(a,b,c,d,e){0>ya(a.K,b,c,d,e)&&(a.da>b&&(a.da=b),a.ia=a.K[d][0]&&b<=a.K[d][1]&&a.K[d][3].call(a.K[d][2],b,c)}function ya(a,b,c,d,e){for(var g=0;ga.Ra&&a.ta&&(d=a.ta);d>a.Ma&&2>a.speed&&(d=a.Ma);a.kb=Math.round(1E3/30);a.ja=Math.floor(1E6/c*d);a.ra=Math.floor(1E6/30*d);a.Xa=Math.floor(1E6/a.Ja*d);a.Wa=Math.floor(1E6/a.Ia*d);b||(a.R=a.ra,a.Z=a.Xa,a.V=a.Wa);a.Aa=0} -function Ea(a){var b=ca(),c=a.kb;a.$&&(c=Math.round(c*a.$/a.ra));c=c-(b-a.lb);if(b=b-a.Oa)a.ta=Math.round(a.U/(100*b))/10,864E5<=b&&M(a);0>c?c=0:1==a.speed?a.ta<=a.Ma&&(c=0):2==a.speed&&(c=0);a.Aa+=a.$;return c} -f.va=function(){if(I(this,!0)){this.C.ma||(M(this),this.J&&this.J.start(),this.C.ma=!0,this.H.run&&(this.H.run.innerHTML="Halt"),this.ca());1E6<=this.Aa&&Ba(this,!0);this.$=0;this.lb=ca();try{do{this.step(this.ja);var a=this.L-this.D;this.U+=a;this.$+=a;this.L=this.D=0;this.Z-=this.ja;0>=this.Z&&(this.Z+=this.Xa,this.hb());this.V-=this.ja;0>=this.V&&(this.V+=this.Wa,Ca(this));this.R-=this.ja;if(0>=this.R){this.R+=this.ra;break}}while(this.C.ma)}catch(b){this.aa();this.update();I(this,!1);ra(this, -b.stack||b.message);return}setTimeout(function(a){return function(){a.va()}}(this),Ea(this))}else this.update(),this.J&&this.J.stop(this.Oa,this.U)}; -f.step=function(a){var b=!0;this.b=this.g=-1;var c;if(c=a&&this.u)c=this.u,c=0=d.xa.length&&(d.La=0));d=!!g}if(d){b=void 0;this.aa();break}this.f++;this.o[a].call(this);if(0<=this.b){this.b>=this.oa&&this.b<=this.pa&&za(this,this.b,this.f);if(d=c)d=this.u,e=!1,Fa(d,this.b,d.wa,"read")&&(e=!0),d=!!e;if(d){b=!1;this.aa(); -break}this.b=-1}else if(0<=this.g){this.g>=this.da&&this.g<=this.ia&&Aa(this,this.g,this.f);if(d=c){d=this.u;var e=this.g,g=this.a[this.g],h=!1;(g&255)!=g&&(d.l("invalid value at "+q(e)+": "+g),h=!0);Fa(d,e,d.ya,"write")&&(h=!0);d=!!h}if(d){b=!1;this.aa();break}this.g=-1}this.D-=this.fb[a]}while(0>1)&128?64:0),b=b|(a.i&128?128:0);return a.B&60|b} -function Ia(a){a.B|=8;a.o[97]=a.$b;a.o[101]=a.bc;a.o[105]=a.Zb;a.o[109]=a.Wb;a.o[113]=a.ac;a.o[117]=a.cc;a.o[121]=a.Yb;a.o[125]=a.Xb;a.o[225]=a.pe;a.o[229]=a.re;a.o[233]=a.oe;a.o[237]=a.le;a.o[241]=a.qe;a.o[245]=a.se;a.o[249]=a.ne;a.o[253]=a.me}function Ja(a){a.B&=-9;a.o[97]=a.yb;a.o[101]=a.Ab;a.o[105]=a.xb;a.o[109]=a.ub;a.o[113]=a.zb;a.o[117]=a.Bb;a.o[121]=a.wb;a.o[125]=a.vb;a.o[225]=a.Gb;a.o[229]=a.Ib;a.o[233]=a.Fb;a.o[237]=a.Cb;a.o[241]=a.Hb;a.o[245]=a.Jb;a.o[249]=a.Eb;a.o[253]=a.Db} -function P(a,b,c){var d=a.c&256?1:0,e=(b&15)+(c&15)+d;10<=e&&(e=e+6&15|16);e+=(b&240)+(c&240);a.A=b^c;a.v=e;a.i=e&255;160<=e&&(e+=96);512<=e&&(e-=256);a.c=e;a.j=b+c+d&255;a.D--;return e&255}function Q(a,b,c){var d=a.c&256?0:1,e=(b&15)-(c&15)-d;0>e&&(e=(e-6&15)-16);e+=(b&240)-(c&240);0>e&&(e-=96);a.i=a.j=(a.c=b-c-d)&255;a.A=b^c;a.v=a.c;a.c^=256;a.D--;return e&255}function va(a){a.h=0;a.w=0;a.F=0;a.G=256;a.B=0;a.i=0;a.j=0;a.A=0;a.v=0;a.c=0;a.f=0;a.b=-1;a.g=-1;a.ta=0;a.U=a.L=a.D=0} -f.yc=function(){this.f++;this.a[this.G--]=this.f>>8;this.G|=256;this.a[this.G--]=this.f&255;this.G|=256;this.B|=16;this.B=Da(this);this.a[this.G--]=this.B;this.G|=256;this.B&=239;this.b=65534;this.f=this.a[this.b]|this.a[this.b+1]<<8};f.Sd=function(){this.b=this.a[this.f++]+this.w&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.i=this.j=this.h|=this.a[this.b]};f.Ud=function(){this.b=this.a[this.f++];this.i=this.j=this.h|=this.a[this.b]}; -f.oc=function(){this.g=this.a[this.f++];this.c=this.a[this.g]<<1;this.i=this.j=this.a[this.g]=this.c&255};f.Xd=function(){this.B=Da(this);this.a[this.G--]=this.B;this.G|=256};f.Rd=function(){this.b=this.f++;this.i=this.j=this.h|=this.a[this.b]};f.nc=function(){this.c=this.h<<1;this.i=this.j=this.h=this.c&255};f.Od=function(){this.b=this.a[this.f++]|this.a[this.f++]<<8;this.i=this.j=this.h|=this.a[this.b]}; +f.ba=function(a,b,c){this.a=a;this.O=b;this.qa=c-b+1;this.Ga=this.O+this.qa;this.O?u("unsupported CPU address buffer offset ("+this.O+")"):this.X()};f.ha=function(a,b){if(a&&!this.C.M){this.J=b;(this.u=L(b,"debugger"))&&this.u.Tb();var c=L(b,"video");c&&(this.hb=function(a){return function(){va(a)}}(c),this.ca=function(a){return function(){a.ca()}}(c));this.C.M=!0;this.reset(!0);this.update()}};function wa(a,b,c,d,e){0>xa(a.P,b,c,d,e)&&(a.oa>b&&(a.oa=b),a.pa=a.P[d][0]&&b<=a.P[d][1]&&a.P[d][3].call(a.P[d][2],b,c)}function N(a,b,c,d,e){0>xa(a.K,b,c,d,e)&&(a.da>b&&(a.da=b),a.ia=a.K[d][0]&&b<=a.K[d][1]&&a.K[d][3].call(a.K[d][2],b,c)}function xa(a,b,c,d,e){for(var g=0;ga.Ra&&a.ta&&(d=a.ta);d>a.Ma&&2>a.speed&&(d=a.Ma);a.kb=Math.round(1E3/30);a.ja=Math.floor(1E6/c*d);a.ra=Math.floor(1E6/30*d);a.Xa=Math.floor(1E6/a.Ja*d);a.Wa=Math.floor(1E6/a.Ia*d);b||(a.R=a.ra,a.Z=a.Xa,a.V=a.Wa);a.Aa=0} +function Da(a){var b=ca(),c=a.kb;a.$&&(c=Math.round(c*a.$/a.ra));c=c-(b-a.lb);if(b=b-a.Oa)a.ta=Math.round(a.U/(100*b))/10,864E5<=b&&M(a);0>c?c=0:1==a.speed?a.ta<=a.Ma&&(c=0):2==a.speed&&(c=0);a.Aa+=a.$;return c} +f.va=function(){if(I(this,!0)){this.C.ma||(M(this),this.J&&this.J.start(),this.C.ma=!0,this.H.run&&(this.H.run.innerHTML="Halt"),this.ca());1E6<=this.Aa&&Aa(this,!0);this.$=0;this.lb=ca();try{do{this.step(this.ja);var a=this.L-this.D;this.U+=a;this.$+=a;this.L=this.D=0;this.Z-=this.ja;0>=this.Z&&(this.Z+=this.Xa,this.hb());this.V-=this.ja;0>=this.V&&(this.V+=this.Wa,Ba(this));this.R-=this.ja;if(0>=this.R){this.R+=this.ra;break}}while(this.C.ma)}catch(b){this.aa();this.update();I(this,!1);qa(this, +b.stack||b.message);return}setTimeout(function(a){return function(){a.va()}}(this),Da(this))}else this.update(),this.J&&this.J.stop(this.Oa,this.U)}; +f.step=function(a){var b=!0;this.b=this.g=-1;var c;if(c=a&&this.u)c=this.u,c=0=d.xa.length&&(d.La=0));d=!!g}if(d){b=void 0;this.aa();break}this.f++;this.o[a].call(this);if(0<=this.b){this.b>=this.oa&&this.b<=this.pa&&ya(this,this.b,this.f);if(d=c)d=this.u,e=!1,Ea(d,this.b,d.wa,"read")&&(e=!0),d=!!e;if(d){b=!1;this.aa(); +break}this.b=-1}else if(0<=this.g){this.g>=this.da&&this.g<=this.ia&&za(this,this.g,this.f);if(d=c){d=this.u;var e=this.g,g=this.a[this.g],h=!1;(g&255)!=g&&(d.l("invalid value at "+q(e)+": "+g),h=!0);Ea(d,e,d.ya,"write")&&(h=!0);d=!!h}if(d){b=!1;this.aa();break}this.g=-1}this.D-=this.fb[a]}while(0>1)&128?64:0),b=b|(a.i&128?128:0);return a.B&60|b} +function Ha(a){a.B|=8;a.o[97]=a.$b;a.o[101]=a.bc;a.o[105]=a.Zb;a.o[109]=a.Wb;a.o[113]=a.ac;a.o[117]=a.cc;a.o[121]=a.Yb;a.o[125]=a.Xb;a.o[225]=a.pe;a.o[229]=a.re;a.o[233]=a.oe;a.o[237]=a.le;a.o[241]=a.qe;a.o[245]=a.se;a.o[249]=a.ne;a.o[253]=a.me}function Ia(a){a.B&=-9;a.o[97]=a.yb;a.o[101]=a.Ab;a.o[105]=a.xb;a.o[109]=a.ub;a.o[113]=a.zb;a.o[117]=a.Bb;a.o[121]=a.wb;a.o[125]=a.vb;a.o[225]=a.Gb;a.o[229]=a.Ib;a.o[233]=a.Fb;a.o[237]=a.Cb;a.o[241]=a.Hb;a.o[245]=a.Jb;a.o[249]=a.Eb;a.o[253]=a.Db} +function P(a,b,c){var d=a.c&256?1:0,e=(b&15)+(c&15)+d;10<=e&&(e=e+6&15|16);e+=(b&240)+(c&240);a.A=b^c;a.v=e;a.i=e&255;160<=e&&(e+=96);512<=e&&(e-=256);a.c=e;a.j=b+c+d&255;a.D--;return e&255}function Q(a,b,c){var d=a.c&256?0:1,e=(b&15)-(c&15)-d;0>e&&(e=(e-6&15)-16);e+=(b&240)-(c&240);0>e&&(e-=96);a.i=a.j=(a.c=b-c-d)&255;a.A=b^c;a.v=a.c;a.c^=256;a.D--;return e&255}function ua(a){a.h=0;a.w=0;a.F=0;a.G=256;a.B=0;a.i=0;a.j=0;a.A=0;a.v=0;a.c=0;a.f=0;a.b=-1;a.g=-1;a.ta=0;a.U=a.L=a.D=0} +f.yc=function(){this.f++;this.a[this.G--]=this.f>>8;this.G|=256;this.a[this.G--]=this.f&255;this.G|=256;this.B|=16;this.B=Ca(this);this.a[this.G--]=this.B;this.G|=256;this.B&=239;this.b=65534;this.f=this.a[this.b]|this.a[this.b+1]<<8};f.Sd=function(){this.b=this.a[this.f++]+this.w&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.i=this.j=this.h|=this.a[this.b]};f.Ud=function(){this.b=this.a[this.f++];this.i=this.j=this.h|=this.a[this.b]}; +f.oc=function(){this.g=this.a[this.f++];this.c=this.a[this.g]<<1;this.i=this.j=this.a[this.g]=this.c&255};f.Xd=function(){this.B=Ca(this);this.a[this.G--]=this.B;this.G|=256};f.Rd=function(){this.b=this.f++;this.i=this.j=this.h|=this.a[this.b]};f.nc=function(){this.c=this.h<<1;this.i=this.j=this.h=this.c&255};f.Od=function(){this.b=this.a[this.f++]|this.a[this.f++]<<8;this.i=this.j=this.h|=this.a[this.b]}; f.lc=function(){this.g=this.a[this.f++]|this.a[this.f++]<<8;this.c=this.a[this.g]<<1;this.i=this.j=this.a[this.g]=this.c&255};f.xc=function(){this.f+=(this.i&128?0:(this.D--,this.a[this.f]<<24>>24))+1};f.Td=function(){this.b=this.a[this.f++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.F;this.i=this.j=this.h|=this.a[this.b]};f.Vd=function(){this.b=this.a[this.f++]+this.w&255;this.i=this.j=this.h|=this.a[this.b]}; f.pc=function(){this.g=this.a[this.f++]+this.w&255;this.c=this.a[this.g]<<1;this.i=this.j=this.a[this.g]=this.c&255};f.Bc=function(){this.c=0};f.Qd=function(){this.b=(this.a[this.f++]|this.a[this.f++]<<8)+this.F;this.i=this.j=this.h|=this.a[this.b]};f.Pd=function(){this.b=(this.a[this.f++]|this.a[this.f++]<<8)+this.w;this.i=this.j=this.h|=this.a[this.b]};f.mc=function(){this.g=(this.a[this.f++]|this.a[this.f++]<<8)+this.w;this.c=this.a[this.g]<<1;this.i=this.j=this.a[this.g]=this.c&255}; f.pd=function(){this.b=this.f++;this.a[this.G--]=this.f>>8;this.G|=256;this.a[this.G--]=this.f&255;this.G|=256;this.f=this.a[this.b]|this.a[this.b+1]<<8};f.hc=function(){this.b=this.a[this.f++]+this.w&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.i=this.j=this.h&=this.a[this.b]};f.uc=function(){this.b=this.a[this.f++];this.j=this.h&this.a[this.b];this.i=this.i&127|this.a[this.b]&128;this.v=0;this.A=this.a[this.b]&64?128:0};f.jc=function(){this.b=this.a[this.f++];this.i=this.j=this.h&=this.a[this.b]}; @@ -64,102 +64,102 @@ f.xd=function(){this.b=this.a[this.f++]+this.w&255;this.i=this.j=this.h=this.a[t f.rd=function(){this.b=(this.a[this.f++]|this.a[this.f++]<<8)+this.w;this.i=this.j=this.h=this.a[this.b]};f.zd=function(){this.b=(this.a[this.f++]|this.a[this.f++]<<8)+this.F;this.i=this.j=this.w=this.a[this.b]};f.Rc=function(){this.b=this.f++;this.i=this.j=this.c=this.F-this.a[this.b];this.c^=256};f.Jc=function(){this.b=this.a[this.f++]+this.w&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.i=this.j=this.c=this.h-this.a[this.b];this.c^=256}; f.Sc=function(){this.b=this.a[this.f++];this.i=this.j=this.c=this.F-this.a[this.b];this.c^=256};f.Lc=function(){this.b=this.a[this.f++];this.i=this.j=this.c=this.h-this.a[this.b];this.c^=256};f.Vc=function(){this.g=this.a[this.f++];this.i=this.j=this.a[this.g]=this.a[this.g]-1&255};f.md=function(){this.i=this.j=this.F=this.F+1&255};f.Ic=function(){this.b=this.f++;this.i=this.j=this.c=this.h-this.a[this.b];this.c^=256};f.Xc=function(){this.i=this.j=this.w=this.w-1&255}; f.Qc=function(){this.b=this.a[this.f++]|this.a[this.f++]<<8;this.i=this.j=this.c=this.F-this.a[this.b];this.c^=256};f.Fc=function(){this.b=this.a[this.f++]|this.a[this.f++]<<8;this.i=this.j=this.c=this.h-this.a[this.b];this.c^=256};f.Tc=function(){this.g=this.a[this.f++]|this.a[this.f++]<<8;this.i=this.j=this.a[this.g]=this.a[this.g]-1&255};f.wc=function(){this.f+=(this.j&255?(this.D--,this.a[this.f]<<24>>24):0)+1}; -f.Kc=function(){this.b=this.a[this.f++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.F;this.i=this.j=this.c=this.h-this.a[this.b];this.c^=256};f.Mc=function(){this.b=this.a[this.f++]+this.w&255;this.i=this.j=this.c=this.h-this.a[this.b];this.c^=256};f.Wc=function(){this.g=this.a[this.f++]+this.w&255;this.i=this.j=this.a[this.g]=this.a[this.g]-1&255};f.Cc=function(){Ja(this)}; +f.Kc=function(){this.b=this.a[this.f++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.F;this.i=this.j=this.c=this.h-this.a[this.b];this.c^=256};f.Mc=function(){this.b=this.a[this.f++]+this.w&255;this.i=this.j=this.c=this.h-this.a[this.b];this.c^=256};f.Wc=function(){this.g=this.a[this.f++]+this.w&255;this.i=this.j=this.a[this.g]=this.a[this.g]-1&255};f.Cc=function(){Ia(this)}; f.Hc=function(){this.b=(this.a[this.f++]|this.a[this.f++]<<8)+this.F;this.i=this.j=this.c=this.h-this.a[this.b];this.c^=256};f.Gc=function(){this.b=(this.a[this.f++]|this.a[this.f++]<<8)+this.w;this.i=this.j=this.c=this.h-this.a[this.b];this.c^=256};f.Uc=function(){this.g=(this.a[this.f++]|this.a[this.f++]<<8)+this.w;this.i=this.j=this.a[this.g]=this.a[this.g]-1&255};f.Oc=function(){this.b=this.f++;this.i=this.j=this.c=this.w-this.a[this.b];this.c^=256}; f.Gb=function(){this.b=this.a[this.f++]+this.w&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.c=this.h-this.a[this.b]-(this.c&256?0:1);this.A=this.h^this.a[this.b];this.v=this.c;this.i=this.j=this.h=this.c&255;this.c^=256};f.pe=function(){this.b=this.a[this.f++]+this.w&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.h=Q(this,this.h,this.a[this.b])};f.Pc=function(){this.b=this.a[this.f++];this.i=this.j=this.c=this.w-this.a[this.b];this.c^=256}; f.Ib=function(){this.b=this.a[this.f++];this.c=this.h-this.a[this.b]-(this.c&256?0:1);this.A=this.h^this.a[this.b];this.v=this.c;this.i=this.j=this.h=this.c&255;this.c^=256};f.re=function(){this.b=this.a[this.f++];this.h=Q(this,this.h,this.a[this.b])};f.jd=function(){this.g=this.a[this.f++];this.i=this.j=this.a[this.g]=this.a[this.g]+1&255};f.ld=function(){this.i=this.j=this.w=this.w+1&255}; f.Fb=function(){this.b=this.f++;this.c=this.h-this.a[this.b]-(this.c&256?0:1);this.A=this.h^this.a[this.b];this.v=this.c;this.i=this.j=this.h=this.c&255;this.c^=256};f.oe=function(){this.b=this.f++;this.h=Q(this,this.h,this.a[this.b])};f.Nd=function(){};f.Nc=function(){this.b=this.a[this.f++]|this.a[this.f++]<<8;this.i=this.j=this.c=this.w-this.a[this.b];this.c^=256}; f.Cb=function(){this.b=this.a[this.f++]|this.a[this.f++]<<8;this.c=this.h-this.a[this.b]-(this.c&256?0:1);this.A=this.h^this.a[this.b];this.v=this.c;this.i=this.j=this.h=this.c&255;this.c^=256};f.le=function(){this.b=this.a[this.f++]|this.a[this.f++]<<8;this.h=Q(this,this.h,this.a[this.b])};f.gd=function(){this.g=this.a[this.f++]|this.a[this.f++]<<8;this.i=this.j=this.a[this.g]=this.a[this.g]+1&255};f.sc=function(){this.f+=(this.j&255?0:(this.D--,this.a[this.f]<<24>>24))+1}; f.Hb=function(){this.b=this.a[this.f++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.F;this.c=this.h-this.a[this.b]-(this.c&256?0:1);this.A=this.h^this.a[this.b];this.v=this.c;this.i=this.j=this.h=this.c&255;this.c^=256};f.qe=function(){this.b=this.a[this.f++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.F;this.h=Q(this,this.h,this.a[this.b])}; -f.Jb=function(){this.b=this.a[this.f++]+this.w&255;this.c=this.h-this.a[this.b]-(this.c&256?0:1);this.A=this.h^this.a[this.b];this.v=this.c;this.i=this.j=this.h=this.c&255;this.c^=256};f.se=function(){this.b=this.a[this.f++]+this.w&255;this.h=Q(this,this.h,this.a[this.b])};f.kd=function(){this.g=this.a[this.f++]+this.w&255;this.i=this.j=this.a[this.g]=this.a[this.g]+1&255};f.ue=function(){Ia(this)}; +f.Jb=function(){this.b=this.a[this.f++]+this.w&255;this.c=this.h-this.a[this.b]-(this.c&256?0:1);this.A=this.h^this.a[this.b];this.v=this.c;this.i=this.j=this.h=this.c&255;this.c^=256};f.se=function(){this.b=this.a[this.f++]+this.w&255;this.h=Q(this,this.h,this.a[this.b])};f.kd=function(){this.g=this.a[this.f++]+this.w&255;this.i=this.j=this.a[this.g]=this.a[this.g]+1&255};f.ue=function(){Ha(this)}; f.Eb=function(){this.b=(this.a[this.f++]|this.a[this.f++]<<8)+this.F;this.c=this.h-this.a[this.b]-(this.c&256?0:1);this.A=this.h^this.a[this.b];this.v=this.c;this.i=this.j=this.h=this.c&255;this.c^=256};f.ne=function(){this.b=(this.a[this.f++]|this.a[this.f++]<<8)+this.F;this.h=Q(this,this.h,this.a[this.b])}; f.Db=function(){this.b=(this.a[this.f++]|this.a[this.f++]<<8)+this.w;this.c=this.h-this.a[this.b]-(this.c&256?0:1);this.A=this.h^this.a[this.b];this.v=this.c;this.i=this.j=this.h=this.c&255;this.c^=256};f.me=function(){this.b=(this.a[this.f++]|this.a[this.f++]<<8)+this.w;this.h=Q(this,this.h,this.a[this.b])};f.hd=function(){this.g=(this.a[this.f++]|this.a[this.f++]<<8)+this.w;this.i=this.j=this.a[this.g]=this.a[this.g]+1&255}; -f.Je=function(){var a;a=this.a[this.f++];switch(a){case 0:this.l("HALT");this.aa();break;case 1:a=this.f;for(var b="";a=c&&(c+=32);a.B=a.B.substr(1);Oa(a,c)}0=b&&(b+=32),Qa(a,b),T(a,b,!0,0)&&(a.s.speed==a.s.eb?T(a,b,!1,1):(c=!1,a.v[b]&&(clearTimeout(a.v[b]),c=!0),c=Pa(a,c),a.v[a.A=b]=setTimeout(function(a){return function(){T(a,b,!1,3)}}(a),c),a.u&&G(a.u,a.u.za)&&a.u.message("keyPressSimulate("+p(b)+"): setTimeout()")),c=!0));a.u&&G(a.u,a.u.za)&&a.u.message("keyPressSimulate("+p(b)+"): "+(c?"true":"false"));return c} -function T(a,b,c,d){var e=!1;c||(a.v[b]=null,a.A==b&&(a.A=0));var g=0,h=a.b[b];void 0===h&&(1<=b&&26>=b&&(b+=64,g=a.L),h=a.b[b]);void 0!==h&&(b=h>>12,e=h>>8&15,g||(g=h&255),c?(a.o[b]|=1<b||8192<=b));b&&(b=a.P.shift(),void 0!==b&&(a.ja=b),a.V=0,a.qa=d);for(b=d=0;8>b;b++)a.oa&1<d[g][0]&&(h=d[g][0]),k=a.V&&(d-=a.V,d=c&&(c+=32);a.B=a.B.substr(1);Na(a,c)}0=b&&(b+=32),Pa(a,b),T(a,b,!0,0)&&(a.s.speed==a.s.eb?T(a,b,!1,1):(c=!1,a.v[b]&&(clearTimeout(a.v[b]),c=!0),c=Oa(a,c),a.v[a.A=b]=setTimeout(function(a){return function(){T(a,b,!1,3)}}(a),c),a.u&&G(a.u,a.u.za)&&a.u.message("keyPressSimulate("+p(b)+"): setTimeout()")),c=!0));a.u&&G(a.u,a.u.za)&&a.u.message("keyPressSimulate("+p(b)+"): "+(c?"true":"false"));return c} +function T(a,b,c,d){var e=!1;c||(a.v[b]=null,a.A==b&&(a.A=0));var g=0,h=a.b[b];void 0===h&&(1<=b&&26>=b&&(b+=64,g=a.L),h=a.b[b]);void 0!==h&&(b=h>>12,e=h>>8&15,g||(g=h&255),c?(a.o[b]|=1<b||8192<=b));b&&(b=a.P.shift(),void 0!==b&&(a.ja=b),a.V=0,a.qa=d);for(b=d=0;8>b;b++)a.oa&1<d[g][0]&&(h=d[g][0]),k=a.V&&(d-=a.V,dMissing <canvas> support. Please try a newer web browser.";break}e.setAttribute("class","c1pjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor; -e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var g=new Image,h=e.getContext("2d"),e=new Ta(d,e,h,g);g.onload=function(a){return function(){a.X()}}(e,d.charSet);g.src=d.charSet;E(e,c)}}); -function Wa(a){z.call(this,"C1PSerialPort",a);this.C.M=!1;this.O=a.demo;this.reset()}B(Wa);f=Wa.prototype;f.reset=function(){if(2!=this.g){this.v=this.B=0;var a=1;if(this.rb){var b=this.rb.match(/\d+/);null!==b&&(a=parseInt(b[0],10))}this.o='10 PRINT "HELLO OSI #'+a+'"\n';this.g=this.A=0}};f.start=function(){this.b&&this.O&&(U(this.b," C\n\n",3E3),setTimeout(function(a){return function(){a.g=1;U(a.b,"LOAD\n")}}(this),12E3));this.O=!1}; +e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var g=new Image,h=e.getContext("2d"),e=new Sa(d,e,h,g);g.onload=function(a){return function(){a.X()}}(e,d.charSet);g.src=d.charSet;E(e,c)}}); +function Va(a){z.call(this,"C1PSerialPort",a);this.C.M=!1;this.O=a.demo;this.reset()}B(Va);f=Va.prototype;f.reset=function(){if(2!=this.g){this.v=this.B=0;var a=1;if(this.rb){var b=this.rb.match(/\d+/);null!==b&&(a=parseInt(b[0],10))}this.o='10 PRINT "HELLO OSI #'+a+'"\n';this.g=this.A=0}};f.start=function(){this.b&&this.O&&(U(this.b," C\n\n",3E3),setTimeout(function(a){return function(){a.g=1;U(a.b,"LOAD\n")}}(this),12E3));this.O=!1}; f.T=function(a,b,c){var d=this;switch(b){case "listSerial":return this.H[b]=c,!0;case "loadSerial":return this.H[b]=c,c.onclick=function(){d.H.listSerial&&t(d.H.listSerial.value,d,d.sb)},!0;case "mountSerial":return!v("Mobi")&&window&&"FileReader"in window?(this.H[b]=c,c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.onsubmit=function(a){var b=a.currentTarget[1].files[0],c=new FileReader;c.onload=function(){d.sb(b.name,c.result.toString(), -0)};c.readAsText(b);return!1}):c.parentNode.removeChild(c),!0}return!1};f.ba=function(a,b,c,d){this.a=a;this.D=b;this.L=c-b+1;this.K=this.D+this.L;if(this.s=d)xa(d,b,c,this,this.S),N(d,b,c,this,this.W);this.X()};f.ha=function(a,b){a&&!this.C.M&&(this.C.M=!0,this.J=b,this.b=L(b,"keyboard"),this.u=L(b,"debugger"))}; -f.sb=function(a,b,c){b?(this.o=b,this.g=this.A=0,this.J&&this.b&&this.s.C.ma?(this.l("auto-loading "+a),this.s.ca(),"."!=this.o.charAt(0)?(this.g=1,U(this.b,"NEW\nLOAD\n")):(this.g=2,this.J.reset(!0),U(this.b,"ML"))):this.l(a+" ready to load")):this.l(a+" load error ("+c+")")};f.S=function(a,b){void 0!==b&&(a&1?Xa(this):this.o&&!this.A&&Xa(this))};f.W=function(a,b){void 0!==b&&this.u&&S(this.u,this,a,b,this.u.Rb,!0)}; -function Xa(a){if(void 0!==a.o){a.B=0;a.v=0;if(a.A=--d.Fa&&(0=d.tb&&(d.na=d.tb),0>d.na&&(d.na=0),d.Fa=20, -a.o.update(a.o.I|128),ab(a))}this.I=c;a.D.I&4&&V(a,2,this)}}(a)};a.D={I:0,read:function(){},update:function(a){return function(c){void 0!==c&&(this.I=c&-193);V(a,3,this);a.A.update();a.L.update()}}(a)};a.P={I:0,read:function(){},update:function(a){return function(c){void 0!==c&&(3==(c&3)&&(a.v.I=14),this.I=c);a.v.update()}}(a)};a.v={I:14,read:function(){},update:function(a){return function(c){void 0===c&&(c=a.v.I);c&=-2;0<=a.b&&0<=a.g[a.b].Ea&&(c|=1);this.I=c;V(a,16,this)}}(a)};a.O={I:0,read:function(a){return function(){bb(a)}}(a), +0)};c.readAsText(b);return!1}):c.parentNode.removeChild(c),!0}return!1};f.ba=function(a,b,c,d){this.a=a;this.D=b;this.L=c-b+1;this.K=this.D+this.L;if(this.s=d)wa(d,b,c,this,this.S),N(d,b,c,this,this.W);this.X()};f.ha=function(a,b){a&&!this.C.M&&(this.C.M=!0,this.J=b,this.b=L(b,"keyboard"),this.u=L(b,"debugger"))}; +f.sb=function(a,b,c){b?(this.o=b,this.g=this.A=0,this.J&&this.b&&this.s.C.ma?(this.l("auto-loading "+a),this.s.ca(),"."!=this.o.charAt(0)?(this.g=1,U(this.b,"NEW\nLOAD\n")):(this.g=2,this.J.reset(!0),U(this.b,"ML"))):this.l(a+" ready to load")):this.l(a+" load error ("+c+")")};f.S=function(a,b){void 0!==b&&(a&1?Wa(this):this.o&&!this.A&&Wa(this))};f.W=function(a,b){void 0!==b&&this.u&&S(this.u,this,a,b,this.u.Rb,!0)}; +function Wa(a){if(void 0!==a.o){a.B=0;a.v=0;if(a.A=--d.Fa&&(0=d.tb&&(d.na=d.tb),0>d.na&&(d.na=0),d.Fa=20, +a.o.update(a.o.I|128),$a(a))}this.I=c;a.D.I&4&&V(a,2,this)}}(a)};a.D={I:0,read:function(){},update:function(a){return function(c){void 0!==c&&(this.I=c&-193);V(a,3,this);a.A.update();a.L.update()}}(a)};a.P={I:0,read:function(){},update:function(a){return function(c){void 0!==c&&(3==(c&3)&&(a.v.I=14),this.I=c);a.v.update()}}(a)};a.v={I:14,read:function(){},update:function(a){return function(c){void 0===c&&(c=a.v.I);c&=-2;0<=a.b&&0<=a.g[a.b].Ea&&(c|=1);this.I=c;V(a,16,this)}}(a)};a.O={I:0,read:function(a){return function(){ab(a)}}(a), update:function(a){return function(c){void 0!==c&&(this.I=c);V(a,17,this)}}(a)};a.R={I:0,read:function(){},update:function(){return function(){}}(a)}} f.T=function(a,b,c){switch(b){case "listDisk":return this.H[b]=c,!0;case "loadDisk":return this.H[b]=c,c.onclick=function(a){return function(){if(a.H.listDisk){var b=a.H.listDisk.value,c=b;".json"!=b.substr(b.length-5)&&(c="http://"+window.location.host+"/api/v1/dump?disk="+b);var h=b,k=b.lastIndexOf("/");0<=k&&(h=b.substr(k+1));k=h.indexOf("&");0>8&255);a.push(b&255)}function cb(a,b,c){b=b[c];if(void 0===b)throw Error("missing signature: "+c);for(c=0;cb?b&=3:32>b&&(b&=17);switch(b){case 0:a=a.B.I&4?a.o:a.K;break;case 1:a=a.B;break;case 2:a=a.D.I&4?a.A:a.L;break;case 3:a=a.D;break;case 16:a=c?a.P:a.v;break;case 17:a=a.O;break;default:a=a.R}return a}f.S=function(a,b){if(void 0!==b){var c=eb(this,a-this.J,!1);this.u&&S(this.u,this,a,b,this.u.Ha,!1,c.Kb);c.read()}}; -f.W=function(a,b){if(void 0!==b){var c=this.s.S(a),d=eb(this,a-this.J,!0);if(this.u&&G(this.u,this.u.Ha|this.u.pb)&&(S(this.u,this,a,b,this.u.Ha,!0,d.Kb),d.Pb))for(var e=128,g=d.I^c;g&&e;)g&e&&this.u.message(" changed "+d.Kb+"."+d.Pb[e]+" to "+(c&e?"1":"0")),e>>=1;d.update(c)}};function $a(a,b,c){var d=-1;void 0!==b&&void 0!==c&&(d=0,c&32||(d|=2),a.o.I&64||(d|=1));a.b!=d&&(a.b=d,a.v.update())}function ab(a){0<=a.b&&(a.g[a.b].Ea=-1,a.O.update(255),a.v.update())} -function bb(a){var b=null;if(0<=a.b){var b=a.g[a.b],c=b.Va[b.na];void 0!==c&&(0<=b.Ea&&b.Ea>8&255);a.push(b&255)}function bb(a,b,c){b=b[c];if(void 0===b)throw Error("missing signature: "+c);for(c=0;cb?b&=3:32>b&&(b&=17);switch(b){case 0:a=a.B.I&4?a.o:a.K;break;case 1:a=a.B;break;case 2:a=a.D.I&4?a.A:a.L;break;case 3:a=a.D;break;case 16:a=c?a.P:a.v;break;case 17:a=a.O;break;default:a=a.R}return a}f.S=function(a,b){if(void 0!==b){var c=db(this,a-this.J,!1);this.u&&S(this.u,this,a,b,this.u.Ha,!1,c.Kb);c.read()}}; +f.W=function(a,b){if(void 0!==b){var c=this.s.S(a),d=db(this,a-this.J,!0);if(this.u&&G(this.u,this.u.Ha|this.u.pb)&&(S(this.u,this,a,b,this.u.Ha,!0,d.Kb),d.Pb))for(var e=128,g=d.I^c;g&&e;)g&e&&this.u.message(" changed "+d.Kb+"."+d.Pb[e]+" to "+(c&e?"1":"0")),e>>=1;d.update(c)}};function Za(a,b,c){var d=-1;void 0!==b&&void 0!==c&&(d=0,c&32||(d|=2),a.o.I&64||(d|=1));a.b!=d&&(a.b=d,a.v.update())}function $a(a){0<=a.b&&(a.g[a.b].Ea=-1,a.O.update(255),a.v.update())} +function ab(a){var b=null;if(0<=a.b){var b=a.g[a.b],c=b.Va[b.na];void 0!==c&&(0<=b.Ea&&b.Ea>24)} -f.S=function(a){var b;a>=this.O&&a=this.Ga?this.l("invalid address: "+q(a)):(this.a[this.O+a]=b&255,Aa(this.s,a),this.s.update())};function nb(a,b){X(a.sa,b,void 0)||a.sa.push(b);return!0}function X(a,b,c){for(var d=!1,e=0;eh&&(m+=" ;'"+String.fromCharCode(h)+"'")}if(e==a.s.bb&& +function fb(a,b){a.P=0;a.v=1;a.o=2;a.A=3;a.Pa=4;a.ob=5;a.g=6;a.U=7;a.D=8;a.J=9;a.N=10;a.b=11;a.ea=a.Pa;var c="",d,e;if(b)for(a.ka="A #$nn $nnnn,X $nnnn,Y $nnnn ($nnnn) $nn,X $nn,Y ($nn,X) ($nn),Y $nnnn $nn".split(" "),d=0;d>24)} +f.S=function(a){var b;a>=this.O&&a=this.Ga?this.l("invalid address: "+q(a)):(this.a[this.O+a]=b&255,za(this.s,a),this.s.update())};function mb(a,b){X(a.sa,b,void 0)||a.sa.push(b);return!0}function X(a,b,c){for(var d=!1,e=0;eh&&(m+=" ;'"+String.fromCharCode(h)+"'")}if(e==a.s.bb&& (hl?m+=String.fromCharCode(h):16==l&&(m+="\u2026"),l++;m+='"'}m&&(d+=" "+m);c&&(d=(d+" ").substr(0,30),d+=";"+c.toString());a.$=b;return d} function Y(a,b){var c=a.ua;if(void 0!==b){var d=16;"$"==b.charAt(0)?b=b.substr(1):"0x"==b.substr(0,2)?b=b.substr(2):"."==b.charAt(b.length-1)&&(d=10,b=b.substr(0,b.length-1));c=parseInt(b,d);isNaN(c)&&(a.l("invalid base-"+d+" address: "+b),c=void 0)}void 0!==c&&(c=a.Ga)&&(a.l("address out of range: "+n(c)),c=void 0);return c} -function qb(a,b){if("?"==b)a.l("\nfrequency commands:"),a.l("clear\tclear all frequency counts");else{var c=0,d;if(a.B)if("clear"==b){for(d=0;da.Qb.indexOf(k)&&(e=a.N);e==a.ob&&27!=k&&(e=a.N)}else a.l("unknown operand: "+l),k=-1;if(0<=k){m=-1;for(h=0;hm)m=h;else{a.l("too many instruction matches (both "+p(m)+" and "+p(h)+")");m=-2;break}if(0<=m){if(d.push(m),void 0!==e)if(g=a.fa[m][1],l=l.match(/[0-9A-F]+/),null!==l)for(l=parseInt(l[0],16),1==g&&e==a.ea&&(l-=c+2,-128>l||127>>=8;else g&&a.l("instruction missing "+g+" bytes")}else a.l("unknown instruction: "+g+" "+l+"")}}e=d;if(e.length){for(c=0;c>>=8;else g&&a.l("instruction missing "+g+" bytes")}else a.l("unknown instruction: "+g+" "+l+"")}}e=d;if(e.length){for(c=0;ck&&em?String.fromCharCode(m):".",e++;a.l(n(h,4)+" "+g+l)}a.ua=e}break;case "e":e=c[1];if(void 0===e)a.l("missing address");else if(e=Y(a,e),void 0!==e)for(d=2;dd.length&&(a.l("note: only "+ -d.length+" available"),g=d.length);void 0!==l&&(a.mb=0,a.l(g+" instructions earlier:"));l=a.mb?a.mb:1;c-=g;for(0>c&&(c=d.length-1);e&&c!=a.La;){h=d[c];if(0>h)break;a.l(pb(a,h,l++));++c==d.length&&(c=0);e--;g--}a.Vb=g;a.mb=l}10==e&&a.l("no history available");break;case "r":kb(a,c);break;case "s":a.S(a.s.f)==a.s.Qa?(ob(a,a.s.f+3),a.Da=!0,a.va()||a.s.ca()):rb(a);break;case "t":rb(a,c[1]);break;case "u":jb(a,c[1],c[2],8);break;case "?":case "help":a.l("\ncommands:\n?\thelp\na [#]\tassemble\nb [#]\tbreakpoint\nd [#]\tdump memory\ne [#]\tedit memory\nf\tdump frequencies\ng [#]\trun to [#]\nh\thalt\no\toptions\np [#]\tdump history\nr\tdump/edit registers\ns\tstep over instruction\nt [#]\tstep instruction(s)\nu [#]\tunassemble"); -a.l("note: frequency and history commands operate only when breakpoints are set");break;default:a.l("unknown command: "+b)}}}x(function(){for(var a=F(document,"c1pjs","debugger"),b=0;bk&&em?String.fromCharCode(m):".",e++;a.l(n(h,4)+" "+g+l)}a.ua=e}break;case "e":e=c[1];if(void 0===e)a.l("missing address");else if(e=Y(a,e),void 0!==e)for(d=2;dd.length&&(a.l("note: only "+ +d.length+" available"),g=d.length);void 0!==l&&(a.mb=0,a.l(g+" instructions earlier:"));l=a.mb?a.mb:1;c-=g;for(0>c&&(c=d.length-1);e&&c!=a.La;){h=d[c];if(0>h)break;a.l(ob(a,h,l++));++c==d.length&&(c=0);e--;g--}a.Vb=g;a.mb=l}10==e&&a.l("no history available");break;case "r":jb(a,c);break;case "s":a.S(a.s.f)==a.s.Qa?(nb(a,a.s.f+3),a.Da=!0,a.va()||a.s.ca()):qb(a);break;case "t":qb(a,c[1]);break;case "u":ib(a,c[1],c[2],8);break;case "?":case "help":a.l("\ncommands:\n?\thelp\na [#]\tassemble\nb [#]\tbreakpoint\nd [#]\tdump memory\ne [#]\tedit memory\nf\tdump frequencies\ng [#]\trun to [#]\nh\thalt\no\toptions\np [#]\tdump history\nr\tdump/edit registers\ns\tstep over instruction\nt [#]\tstep instruction(s)\nu [#]\tunassemble"); +a.l("note: frequency and history commands operate only when breakpoints are set");break;default:a.l("unknown command: "+b)}}}x(function(){for(var a=F(document,"c1pjs","debugger"),b=0;b");b&&b.ha(!0,a)} -x(function(){for(var a=F(document,"c1pjs","computer"),b=0;b');return}}if(void 0===h){u(' definition must appear first in the specification'); -break}if(e=qa("debugger",d.id))g["debugger"]=[e],e.ba&&e.ba(h,k,l,g.cpu[0]);k=new Z(d,g);if(l=qa("panel",d.id))if(g.panel=[l],l.gb){e=d.id;d=void 0;g=[];e&&(e=0<(d=e.indexOf("."))?e.substr(0,d+1):"");for(d=0;dk.indexOf("/")&&(k=window.location.pathname+k);d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(k?' url="'+k+'"':""))}k=null;if("<"==a.charAt(0))try{e||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(k=new window.ActiveXObject("Microsoft.XMLDOM"), -k.async=!1,k.loadXML(a)):k=(new window.DOMParser).parseFromString(a,"text/xml")}catch(H){k=null,a=H.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");t(e,null,function(g,h,k){if(k||!h)c(a,"unable to resolve XML reference: "+d[0]+" ("+k+")");else{if(g=d[3])if(k=h.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=k[0],m,r=/( [a-z]+=)(['"])(.*?)\2/g;m=r.exec(g);)l=0>l.indexOf(m[1])?l.replace(">",m[0]+">"):l.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);k[0]!=l&&(h=h.replace(k[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}h=h.replace(/<\?xml[^>]*>[\r\n]*/, -"");a=a.replace(d[0],h);wb(a,b,c)}})}else c(a,null)} -function xb(a,b,c){function d(a){if(void 0===h){var b=g&&F(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ba(a))}function e(a){d("Error: "+a);k&&(--tb||y(!0));k=!1}var g,h,k=!0;tb++;C[a]={};try{if(g=document.getElementById(a)){c||(c="/versions/c1pjs/1.20.9/components.xsl");var l=function(h,k){k?(pa(a,"xml",h),ub(c,null,null,!1,d,function(c,h){if(h)if(pa(a,"xsl",c),d("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var l=k.transformNode(h);l?(g.outerHTML=l,--tb||y(!0)):e("transformNodeToObject failed")}else document.implementation&& -document.implementation.createDocument?(l=new XSLTProcessor,l.importStylesheet(h),(l=l.transformToFragment(k,document))?g.parentNode?(g.parentNode.replaceChild(l,g),--tb||y(!0)):e("invalid machine element: "+a):e("transformToFragment failed")):e("unable to transform XML: unsupported browser");else e(c)})):e(h)};"<"!=b.charAt(0)?ub(b,a,void 0,!0,d,l):vb(b,null,a,void 0,!1,d,l)}else e("missing machine element: "+a)}catch(m){e(m.message)}return k}window.embedC1P=function(a,b,c){y(!1);return xb(a,b,c)}; -window.enableEvents=y;window.sendEvent=ja;})(); +function rb(a){var b=null,c;for(c in a.Y)for(var d=0;d");b&&b.ha(!0,a)} +x(function(){for(var a=F(document,"c1pjs","computer"),b=0;b');return}}if(void 0===h){u(' definition must appear first in the specification'); +break}if(e=pa("debugger",d.id))g["debugger"]=[e],e.ba&&e.ba(h,k,l,g.cpu[0]);k=new Z(d,g);if(l=pa("panel",d.id))if(g.panel=[l],l.gb){e=d.id;d=void 0;g=[];e&&(e=0<(d=e.indexOf("."))?e.substr(0,d+1):"");for(d=0;dk.indexOf("/")&&(k=window.location.pathname+k);d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(k?' url="'+k+'"':""))}k=null;if("<"==a.charAt(0))try{e||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(k=new window.ActiveXObject("Microsoft.XMLDOM"), +k.async=!1,k.loadXML(a)):k=(new window.DOMParser).parseFromString(a,"text/xml")}catch(H){k=null,a=H.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");t(e,null,function(g,h,k){if(k||!h)c(a,"unable to resolve XML reference: "+d[0]+" ("+k+")");else{if(g=d[3])if(k=h.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=k[0],m,r=/( [a-z]+=)(['"])(.*?)\2/g;m=r.exec(g);)l=0>l.indexOf(m[1])?l.replace(">",m[0]+">"):l.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);k[0]!=l&&(h=h.replace(k[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}h=h.replace(/<\?xml[^>]*>[\r\n]*/, +"");a=a.replace(d[0],h);vb(a,b,c)}})}else c(a,null)} +function wb(a,b,c){function d(a){if(void 0===h){var b=g&&F(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ba(a))}function e(a){d("Error: "+a);k&&(--sb||y(!0));k=!1}var g,h,k=!0;sb++;C[a]={};try{if(g=document.getElementById(a)){c||(c="/versions/c1pjs/1.20.9/components.xsl");var l=function(h,k){k?(C[a]&&(C[a][b]=h),tb(c,null,null,!1,d,function(h,l){if(l)if(C[a]&&(C[a][c]=h),d("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var m=k.transformNode(l);m?(g.outerHTML=m,--sb||y(!0)): +e("transformNodeToObject failed")}else document.implementation&&document.implementation.createDocument?(m=new XSLTProcessor,m.importStylesheet(l),(m=m.transformToFragment(k,document))?g.parentNode?(g.parentNode.replaceChild(m,g),--sb||y(!0)):e("invalid machine element: "+a):e("transformToFragment failed")):e("unable to transform XML: unsupported browser");else e(h)})):e(h)};"<"!=b.charAt(0)?tb(b,a,void 0,!0,d,l):ub(b,null,a,void 0,!1,d,l)}else e("missing machine element: "+a)}catch(m){e(m.message)}return k} +window.embedC1P=function(a,b,c){y(!1);return wb(a,b,c)};window.enableEvents=y;window.sendEvent=ja;})(); diff --git a/versions/pcjs/1.20.9/pc-dbg.js b/versions/pcjs/1.20.9/pc-dbg.js index e0f1c639e..0883c84c0 100644 --- a/versions/pcjs/1.20.9/pc-dbg.js +++ b/versions/pcjs/1.20.9/pc-dbg.js @@ -5,15 +5,15 @@ function ia(a){return"0x"+l(a,4)}function ja(a,b){var c=a,d=a.lastIndexOf("/");0 function pa(a,b,c){return c?(" "+a).slice(-b):(a+" ").slice(0,b)}function qa(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function ra(a,b,c){var d=0,e=a.length,f=0;for(void 0===c&&(c=function(a,b){return a>b?1:a>1,k;k=c(b,a[g]);0a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}var ua=[31,28,31,30,31,30,31,31,30,31,30,31];function wa(a,b){var c=0,d=1,e;for(e in a){if(d>=arguments.length)break;var f=a[e],g=arguments[d++],c=c&~f.qh|g<>a.shift} function ya(a,b){var c;if(Array.prototype.indexOf)return a.indexOf(b,c);c=c||0;0>c&&(c+=a.length);0>c&&(c=0);for(var d=a.length;c>>0)+b>this.fc?this.Fa+a|0:this.pg()};h.pg=function(){p.call(this.M,13,0);return-1};function od(a,b,c,d,e){a.ga=b;a.Fa=d;a.Za=e;a.fc=(e>>>0)+1;a.Bb=c;a.type=c&7936;a.ext=c>>16&192;a.dc=(b&4?a.M.Bc.Fa:a.M.Ec)+(b&65528)|0;4>a.id&&ld(a,!0)}function pd(a,b,c){var d=a.M,e=d.va(b+2),f=d.va(b)|(e&255)<<16,d=d.va(b+4);a.ga=c;a.Fa=f;a.Za=d;a.fc=(d>>>0)+1;a.Bb=e;a.type=e&7936;a.ext=0;a.dc=b;4>a.id&&ld(a,!0)} function nd(a,b,c,d){var e=a.M;if(!d&&c===a.A.ga)return a.ga=c,a.Fa=a.A.Fa,a.Za=a.A.Za,a.fc=(a.A.Za>>>0)+1,a.Bb=a.A.Bb,a.type=a.A.type,a.ext=a.A.ext,a.dc=a.A.dc,a.A.ga=-1,ld(a,!0,!0,!1),a.Fa;a.A.ga=-1;var f=e.va(b+0),g=e.va(b+4),k=g&7936,q=e.va(b+2)|(g&255)<<16,r=e.va(b+6),x=c&65528;if(80386<=e.na){var B=f,q=q|(r&65280)<<16,f=f|(r&15)<<16;r&128&&(f=f<<12|4095)}switch(a.id){case 1:var y=a.R;a.bf=!1;if(y&&1==c&&a.C.length){var J=a.C[a.Uf-1];if(J&&!J())return-1}var U=c&3,F=(g&24576)>>13,J=-1,O,V;x|| b>=e.Ec&&ba.$b&&(J=-1,!1===y||F==a.$b||k&1024&&F<=a.$b))J=qd(e),rd(e,qd(e),!0),t(e,J),a.bf=!0,J=0}else{if(256==k||2304==k)return sd(a,c,y)?a.Fa:-1;if(1024==k)J=2,V=0,Uk||2048==(k&2560))return p.call(e,13,c&65532),-1;if(!(g&32768))return p.call(e,11,c&65532),-1}break;case 3:if(!x||4096>k||512!=(k&2560))return p.call(e,13,c&65532),-1;if(!(g&32768))return p.call(e,12,c&65532),-1;break;case 4:y=k&-513;if(!x||256!= y&&2304!=y)return p.call(e,13,c&65532),-1;2304==y&&(a.yi=q+e.va(q+100+2)|0,a.Kk=q+a.Za|0);break;case 6:if(!(k&4096)&&768>>0)+1,a.Bb=g,a.type=k,a.ext=r,a.dc=b,ld(a,!0,!0,!1));return q} function sd(a,b,c){var d=a.M,e=a.$b,f=d.Ya.ga,g=d.Ya.Fa;if(!c){if(!(d.Ya.type&512))return p.call(d,13,b&65532),!1;d.pb(d.Ya.dc+4,d.Ya.Bb&=-513)}if(-1===d.Ya.load(b))return!1;var k=d.Ya.Fa;if(!1!==c){if(d.Ya.type&512)return p.call(d,13,b&65532),!1;d.pb(d.Ya.dc+4,d.Ya.Bb|=512)}d.Ya.type=d.Ya.type&-513|d.Ya.Bb&512;256==d.Ya.type||768==d.Ya.type?(d.pb(g+14,v(d)),d.pb(g+16,Ed(d)),d.pb(g+18,d.F),d.pb(g+20,d.G),d.pb(g+22,d.H),d.pb(g+24,d.D),d.pb(g+26,u(d)),d.pb(g+28,d.K),d.pb(g+30,d.J),d.pb(g+32,d.I),d.pb(g+ @@ -105,14 +105,14 @@ function Lc(a,b,c,d){var e=(b&-4194304)>>>20,f=a.kd[(a.Ld+e&a.Mb)>>>a.Pa],g=f.Xd b.A=e>>2;b.Eb=g;b.C=k>>2;Ab&&gc&&c.ha&&!c.controller&&!c.Se&&!c.Te?(b.eb=c.eb,b.ce=c.ce,b.ha=c.ha,dc(b,Qc)):(b.O=c?Ec(32):0,b.Y=c?Ec(96):0,dc(b,Oc));Sb(b,a.ma,q);a.ya[d]=b;a.ie.push(d);return b}function Be(a){a.ya!==a.kd&&(a.ya=a.kd,a.le=null,a.ie=null,a.rd=null)}h=Id.prototype;h.reset=function(){this.ra.Ob&&this.bc();xe(this);Tc(this);this.ra.wd=!1}; function Ce(a,b){var c;switch(b){case 0:c=a.F;break;case 1:c=a.G;break;case 2:c=a.H;break;case 3:c=a.D;break;case 4:c=u(a);break;case 5:c=a.K;break;case 6:c=a.J;break;case 7:c=a.I}return c}function De(a,b,c){switch(b){case 0:a.F=c;break;case 1:a.G=c;break;case 2:a.H=c;break;case 3:a.D=c;break;case 4:t(a,c);break;case 5:a.K=c;break;case 6:a.J=c;break;case 7:a.I=c}} function xe(a){a.F=0;a.D=0;a.G=0;a.H=0;a.ib=0;a.K=0;a.J=0;a.I=0;a.Va=!1;a.la=a.Ba=0;a.xb=0;a.Qg=0;a.pc=0;a.hb=65520;a.Pc=0;a.Od=1023;a.ea=a.Ra=0;a.Xc=a.vd=a.Wc=a.Yc=0;a.lb=-1;a.Lc=a.td=-1;a.He=a.X=-1;a.Ca=new kd(a,1,"CS");a.Ab=new kd(a,2,"DS");a.bb=new kd(a,2,"ES");a.Aa=new kd(a,3,"SS");t(a,0);rd(a,0);if(80386<=a.na){switch(a.oc){case 80562:case 80563:a.H=771;break;case 80578:a.H=772;break;case 80594:a.H=773;break;case 80595:case 80596:a.H=776}a.hb=16;a.ni=0;a.qe=0;a.Ld=0;a.Ma=[0,0,0,0,null,null, -0,0];a.Ge=[null,null,null,null,null,null,0,0];a.Sb=new kd(a,2,"FS");a.Tb=new kd(a,2,"GS");Be(a)}a.pf=new kd(a,0,"NULL");a.P=a.Ab;a.O=a.Aa;a.V=a.La=0;a.Z=a.Y=-1;a.pd=a.pf;a.za=0;if(80286>a.na)Gd(a,0,65535);else{a.Ec=0;a.Bd=65535;a.Bc=new kd(a,5,"LDT",!0);a.Ya=new kd(a,4,"TSS",!0);a.Ea=new kd(a,6,"VER",!0);Gd(a,65520,61440);var b,c=v(a);b=a.Ca;var d=-65536;80386>b.M.na&&(d&=16777215);b=b.Fa=d;a.Na=b+c|0;a.of=b+a.Ca.Za|0}Fd(a,0);xd(a)} -function Ee(a,b){b.ga&65528&&b.Mca.na)Gd(a,0,65535);else{a.Ec=0;a.Bd=65535;a.Bc=new kd(a,5,"LDT",!0);a.Ya=new kd(a,4,"TSS",!0);a.Ea=new kd(a,6,"VER",!0);Gd(a,65520,61440);var b,c=v(a);b=a.Ca;var d=-65536;80386>b.M.na&&(d&=16777215);b=b.Fa=d;a.Na=b+c|0;a.of=b+a.Ca.Za|0}Fd(a,0);td(a)} +function Ee(a,b){b.ga&65528&&b.Mc>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.Ma[e],g=g&~(d>>2&3);b?a.ya[g>>>a.Pa].Nd(g&a.Ha,f,a):Mc(a.ya[g>>>a.Pa],f)}c>>=2;d>>=4}}function Jc(a,b,c,d){if(!(a.V&8192)&&a.Ma[7]&255){c--;var e=a.Ma[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 k=f>>2;if(b+c>=a.Ma[g]&&b<=a.Ma[g]+k){a.Ma[6]|=1<>=2;f>>=4}}} -function xd(a,b,c){void 0===b&&(b=!!(a.hb&1));void 0===c&&(c=!!(a.ea&131072));a.Pg=b&&!c?cf:Md;ld(a.Ca,!1,b,c);ld(a.Ab,!1,b,c);ld(a.Aa,!1,b,c);ld(a.bb,!1,b,c);80386<=a.na&&(ld(a.Sb,!1,b,c),ld(a.Tb,!1,b,c));Re(a)} +function td(a,b,c){void 0===b&&(b=!!(a.hb&1));void 0===c&&(c=!!(a.ea&131072));a.Pg=b&&!c?cf:Md;ld(a.Ca,!1,b,c);ld(a.Ab,!1,b,c);ld(a.Aa,!1,b,c);ld(a.bb,!1,b,c);80386<=a.na&&(ld(a.Sb,!1,b,c),ld(a.Tb,!1,b,c));Re(a)} h.save=function(){var a=new df(this);ef(a,0,[this.F,this.D,this.G,this.H,u(this),this.K,this.J,this.I]);var b=v(this),c=this.Ca.save(),d=this.Ab.save(),e=this.Aa.save(),f=this.bb.save(),g;null!=this.Ec?(g=[this.hb,this.Ec,this.Bd,this.Pc,this.Od,this.Bc.save(),this.Ya.save(),this.Ra],80386<=this.na&&(g.push(this.ni),g.push(this.qe),g.push(this.Ld),g.push(this.Ma),g.push(this.Ge))):g=null;b=[b,c,d,e,f,g,Ed(this)];80386<=this.na&&(b.push(this.Sb.save()),b.push(this.Tb.save()));ef(a,1,b);ef(a,2,[this.P.nc, this.O.nc,this.V,this.La,this.za,this.Z,this.Y]);ef(a,3,[0,this.Zb,this.ba.Td]);b=this.ja;c=!!(this.hb&-2147483648);d=0;e=[];(f=!b.ja&&b.xg==b.Mb)||Yb(b,!0);for(g=0;gc&&0<=(a.of^a.Na)&&(8088>=a.n function tf(a,b,c,d,e){a.resultType=c|26;a.Yc=b;d?uf(a):vf(a);e?wf(a):xf(a);return b}function yf(a,b,c,d){c&d?uf(a):vf(a);(b^c)&d?wf(a):xf(a)}function zf(a){return nf(a)?1:0}function nf(a){a.resultType&1&&(a.ea&=-2,(a.Xc^(a.Xc^a.vd)&(a.vd^a.Wc))&a.resultType&-2147450752&&(a.ea|=1),a.resultType&=-2);return a.ea&1}function of(a){a.resultType&2&&(a.ea&=-5,38505>>((a.Yc^a.Yc>>4)&15)&1&&(a.ea|=4),a.resultType&=-3);return a.ea&4} function pf(a){a.resultType&4&&(a.ea&=-17,(a.Wc^a.Xc^a.vd)&16&&(a.ea|=16),a.resultType&=-5);return a.ea&16}function qf(a){a.resultType&8&&(a.ea&=-65,a.Yc&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.ea|=64),a.resultType&=-9);return a.ea&64}function rf(a){a.resultType&16&&(a.ea&=-129,a.Yc&a.resultType&-2147450752&&(a.ea|=128),a.resultType&=-17);return a.ea&128} function sf(a){a.resultType&32&&(a.ea&=-2049,(a.Xc^a.Wc)&(a.vd^a.Wc)&a.resultType&-2147450752&&(a.ea|=2048),a.resultType&=-33);return a.ea&2048}function vf(a){a.resultType&=-2;a.ea&=-2}function Af(a){a.resultType&=-5;a.ea&=-17}function Bf(a){a.resultType&=-9;a.ea&=-65}function xf(a){a.resultType&=-33;a.ea&=-2049}function uf(a){a.resultType&=-2;a.ea|=1}function Cf(a){a.resultType&=-5;a.ea|=16}function Df(a){a.resultType&=-9;a.ea|=64}function wf(a){a.resultType&=-33;a.ea|=2048} -function Ed(a){return a.ea&-2262|nf(a)|of(a)|pf(a)|qf(a)|rf(a)|sf(a)}function Ef(a,b){b=b|a.hb&1|65520;a.hb=a.hb&-65536|b&65535;a.hb&1&&xd(a,!0)}function Fd(a,b,c){a.hb&1||(b&=~a.Yf);void 0===c&&(c=a.ua);c?b=b&-12289|a.ea&12288:a.Ra=(b&12288)>>12;c>a.Ra&&(b=b&-513|a.ea&512);a.resultType=128;a.ea=a.ea&~(a.cc|2261)|b&(a.cc|2261)|a.dg;a.ea&256&&(a.za|=2,a.V|=4)} +function Ed(a){return a.ea&-2262|nf(a)|of(a)|pf(a)|qf(a)|rf(a)|sf(a)}function Ef(a,b){b=b|a.hb&1|65520;a.hb=a.hb&-65536|b&65535;a.hb&1&&td(a,!0)}function Fd(a,b,c){a.hb&1||(b&=~a.Yf);void 0===c&&(c=a.ua);c?b=b&-12289|a.ea&12288:a.Ra=(b&12288)>>12;c>a.Ra&&(b=b&-513|a.ea&512);a.resultType=128;a.ea=a.ea&~(a.cc|2261)|b&(a.cc|2261)|a.dg;a.ea&256&&(a.za|=2,a.V|=4)} function Ff(a,b,c,d){var e=0;if(a.hb&1&&(a.ua>a.Ra||a.ea&131072)&&a.Ya.yi)for(var f=a.Ya.yi+(b>>>3),e=(1<>>=8,f++;return e?(n(a,256)&&sb(a,"checkIOPM("+ia(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),p.call(a,13,0),!1):!0} h.Ub=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.xa[b]=c;this.Rg++;d=!0;break;default:d=this.parent.Ub.call(this,a,b,c)}return d}; function Gf(a,b,c,d){var e=(d?a.kd:a.ya)[(b&a.qb)>>>a.Pa];e&&5==e.type&&(e=Lc(a,b,!1,!0));if(e){var f=b&a.Ha;if(!c||1==c)return e.pe(f,b);if(2==c)return f>>this.Pa].sc(a&this.Ha,a)}; @@ -174,11 +174,11 @@ function Gh(a,b,c){c>>>=0;if(!c||c<=b>>>0)return!1;var d=0,e=1;c=[c>>>0,0];for(a function Hh(a){if(this.Yb){var b=this.Yb,c=this.Qg,d=this.pc,e=d>>3&7;b.A=d&7;var f=(3>(d>>6&3)?0:48)+e;(217==c||219==c)&&52<=f&&(f=e<<4|b.A);if(e=hh[c][f]){if(0>ih.indexOf(e)){var f=b.M,g=f.He;8087==b.na&&(f.La&16&&g++,f.La&32&&g++);b.ka=f.Ca.ga;b.Y=g-f.Ca.Fa;-1!==f.Z&&(b.la=f.pd.ga,b.W=f.Z-f.pd.Fa);b.qa=(c&7)<<8|d}e.call(b)}}this.A-=-1===this.Z?2:8;return a}function Ih(a,b){var c=Jh.call(this,this.L(),b);80386>this.na&&(this.A-=12);return c} function Kh(a,b){var c;a=this.Sa();c=2==this.fa?Jh.call(this,a,b):Lh.call(this,a,b);80386>this.na&&(this.A-=12);return c}function Mh(a,b){var c=!1;0>b&&(b=-b|0,c=!c);0>a&&(a=-a|0,c=!c);Nh.call(this,a,b);c&&(this.la=~this.la+1|0,this.Ba=~this.Ba+(this.la?0:1)|0)}function Jh(a,b){var c=(a<<16>>16)*(b<<16>>16)|0;32767c?(uf(this),wf(this)):(vf(this),xf(this));this.A-=-1===this.Z?9:12;return c&65535} function Lh(a,b){Mh.call(this,a,b);this.Ba!=this.la>>31?(uf(this),wf(this)):(vf(this),xf(this));this.A-=-1===this.Z?9:12;return this.la}function Oh(a){var b=a+1|0;mf(this,a,1,b,this.Ja|62);this.A-=2;return a&~this.B|b&this.B}function Ph(a,b,c){this.A-=this.C.zj+(c||0);c=Ed(this);var d=this.Ca.ga,e=v(this);a=this.Ca.Zi(a);-1!==a&&(Dd(this,c),Dd(this,d),Dd(this,e),null!=b&&Dd(this,b),this.lb=-1,jf(this,a))} -function Qh(a,b){this.A-=14+(-1===this.Z?0:2);Bf(this);-1!==this.Ea.load(b)&&this.Ea.Mc>=this.ua&&this.Ea.Mc>=(b&3)&&(Df(this),a=this.Ea.Bb&-256,2=this.ua&&this.Ea.Mc>=(b&3)&&(Df(this),a=this.Ea.Bb&-256,2=this.ua)&&this.Ea.Mc>=(b&3))return Df(this),this.Ea.Za;Bf(this);return a}function Yh(a,b){if(-1===this.Z)return oe.call(this),a;rd(this,this.va(this.Z+this.fa));this.A-=this.C.mf;return b}function Zh(a,b){this.A-=-1===this.Y?-1===this.Z?this.C.Oj:this.C.Nj:this.C.Lj;return b}function $h(a,b){return b}function ai(){-1!==this.Y&&yd(this,2);return Zh.call(this,0,this.xb)} function Nh(a,b){if(a&-65536||b&-65536){var c=b&65535,d=b>>>16,e=a&65535,f=a>>>16,g=c*e,e=(g>>>16)+d*e,k=e>>>16,e=(e&65535)+c*f;this.la=e<<16|g&65535;this.Ba=k+((e>>>16)+d*f)|0}else this.la=a*b|0,this.Ba=0}function bi(a,b){this.A-=-1===this.Y?-1===this.Z?this.C.yc:this.C.ac:this.C.Nc;return tf(this,a|b,128)}function ci(a,b){this.A-=-1===this.Y?-1===this.Z?this.C.yc:this.C.ac:this.C.Nc;return tf(this,a|b,this.Ja)&this.B} -function di(a){this.X=this.ka;var b=qd(this),c=qd(this);a&&t(this,u(this)+a);Gd(this,b,c,!1)&&(a&&t(this,u(this)+a),Ee(this,this.Ab),Ee(this,this.bb),80386<=this.na&&(Ee(this,this.Sb),Ee(this,this.Tb)));2==a&&this.me&&Ue(this,this.Na);this.X=-1}function ei(a,b){var c=a-b-zf(this)|0;mf(this,a,b,c,191,!0);this.A-=-1===this.Y?-1===this.Z?this.C.yc:this.C.ac:this.C.Nc;return c&255} +function di(a){this.X=this.ka;var b=qd(this),c=qd(this);a&&t(this,u(this)+a);Gd(this,b,c,!1)&&(a&&t(this,u(this)+a),Ee(this,this.Ab),Ee(this,this.bb),80386<=this.na&&(Ee(this,this.Sb),Ee(this,this.Tb)));2==a&&this.me&&af(this,this.Na);this.X=-1}function ei(a,b){var c=a-b-zf(this)|0;mf(this,a,b,c,191,!0);this.A-=-1===this.Y?-1===this.Z?this.C.yc:this.C.ac:this.C.Nc;return c&255} function fi(a,b){var c=a-b-zf(this)|0;mf(this,a,b,c,this.Ja|63,!0);this.A-=-1===this.Y?-1===this.Z?this.C.yc:this.C.ac:this.C.Nc;return c&this.B}function gi(a){this.V|=1;this.Ta[this.ca()].call(this,a);this.A-=-1===this.Z?4:5}function hi(){return sf(this)?1:0}function ii(){return nf(this)?1:0}function ji(){return nf(this)?0:1}function Bi(){return qf(this)?1:0}function Ci(){return qf(this)?0:1}function Di(){return nf(this)||qf(this)?1:0}function Ei(){return nf(this)||qf(this)?0:1} function Fi(){return rf(this)?1:0}function Gi(){return rf(this)?0:1}function Hi(){return of(this)?1:0}function Ii(){return of(this)?0:1}function Ji(){return!rf(this)!=!sf(this)?1:0}function Ki(){return!rf(this)!=!sf(this)?0:1}function Li(){return qf(this)||!rf(this)!=!sf(this)?1:0}function Mi(){return qf(this)||!rf(this)!=!sf(this)?0:1}function Ni(a,b,c){if(c){16>>16-c)&65535;tf(this,a,32768,d&32768)}return a} function Oi(a,b,c){if(c){var d=a<>>32-c;tf(this,a,-2147483648,d&-2147483648)}return a}function Pi(a,b){return Ni.call(this,a,b,this.ca())}function Qi(a,b){return Oi.call(this,a,b,this.ca())}function Ri(a,b){return Ni.call(this,a,b,this.G&31)}function Si(a,b){return Oi.call(this,a,b,this.G&31)}function Ti(a,b,c){if(c){16>>c-1;a=(d>>>1|b<<16-c)&65535;tf(this,a,32768,d&1)}return a} @@ -233,8 +233,8 @@ this.P,this.J&c);this.F=this.F&~this.B|e;this.J=this.J&~c|this.J+(this.ea&1024?- this.D&-256|this.ca();this.A-=this.C.jc},function(){this.F=this.F&-65281|this.ca()<<8;this.A-=this.C.jc},function(){this.G=this.G&-65281|this.ca()<<8;this.A-=this.C.jc},function(){this.H=this.H&-65281|this.ca()<<8;this.A-=this.C.jc},function(){this.D=this.D&-65281|this.ca()<<8;this.A-=this.C.jc},function(){this.F=this.F&~this.B|this.Sa();this.A-=this.C.jc},function(){this.G=this.G&~this.B|this.Sa();this.A-=this.C.jc},function(){this.H=this.H&~this.B|this.Sa();this.A-=this.C.jc},function(){this.D= this.D&~this.B|this.Sa();this.A-=this.C.jc},function(){t(this,u(this)&~this.B|this.Sa());this.A-=this.C.jc},function(){this.K=this.K&~this.B|this.Sa();this.A-=this.C.jc},function(){this.J=this.J&~this.B|this.Sa();this.A-=this.C.jc},function(){this.I=this.I&~this.B|this.Sa();this.A-=this.C.jc},Pj,Qj,Pj,Qj,function(){this.da[this.ca()].call(this,Uh)},function(){this.da[this.ca()].call(this,Sh)},function(){this.V|=1;this.Ib[this.ca()].call(this,Xj,this.ca)},function(){this.V|=1;this.Oa[this.ca()].call(this, Xj,this.Sa)},Rj,Sj,Rj,Sj,function(){if(this.ea&131072&&3>this.Ra)p.call(this,13,0);else{var a=this.C.Aj;this.lb=-1;Ph.call(this,3,null,a)}},function(){var a=this.ca();if(this.ea&131072&&3>this.Ra)p.call(this,13,0);else{var b;a:{b=this.je[a];if(void 0!==b)for(var c=0;cthis.Ra)p.call(this,13,0);else{var a=this.C.Bj; -this.lb=-1;Ph.call(this,4,null,a)}else this.A-=this.C.Cj},function(){if(this.ea&131072&&3>this.Ra)p.call(this,13,0);else{this.X=this.ka;this.A-=this.C.yj;if(this.hb&1&&this.ea&16384){var a=this.va(this.Ya.Fa+0);sd(this.Ca,a,!1)}else{var a=this.ua,b=qd(this),c=qd(this),d=qd(this);if(this.ea&131072)d=d&131071|this.ea&-131072;else if(d&131072){var e=qd(this),f=qd(this),g=qd(this),k=qd(this),q=qd(this),r=qd(this);xd(this,!0,!0);rd(this,f);t(this,e);Cd(this,g);Bd(this,k);this.Sb.load(q);this.Tb.load(r)}null!= -Gd(this,b,c,!1)&&(Fd(this,d,a),this.me&&Ue(this,this.Na))}this.X=-1}},function(){this.Ib[this.ca()].call(this,Mj,lj)},function(){this.Oa[this.ca()].call(this,2==this.fa?Nj:Oj,lj)},function(){this.Ib[this.ca()].call(this,Mj,mj)},function(){this.Oa[this.ca()].call(this,2==this.fa?Nj:Oj,mj)},function(){var a=this.ca();if(a){var b=this.F&255;this.F=this.F&-65536|b/a<<8|b%a;tf(this,this.F,128);this.A-=this.C.dj}else kj.call(this)},function(){var a=this.F&255,b=(this.F>>8&255)*this.ca()|0,c=a+b|0;this.F= +this.lb=-1;Ph.call(this,4,null,a)}else this.A-=this.C.Cj},function(){if(this.ea&131072&&3>this.Ra)p.call(this,13,0);else{this.X=this.ka;this.A-=this.C.yj;if(this.hb&1&&this.ea&16384){var a=this.va(this.Ya.Fa+0);sd(this.Ca,a,!1)}else{var a=this.ua,b=qd(this),c=qd(this),d=qd(this);if(this.ea&131072)d=d&131071|this.ea&-131072;else if(d&131072){var e=qd(this),f=qd(this),g=qd(this),k=qd(this),q=qd(this),r=qd(this);td(this,!0,!0);rd(this,f);t(this,e);Cd(this,g);Bd(this,k);this.Sb.load(q);this.Tb.load(r)}null!= +Gd(this,b,c,!1)&&(Fd(this,d,a),this.me&&af(this,this.Na))}this.X=-1}},function(){this.Ib[this.ca()].call(this,Mj,lj)},function(){this.Oa[this.ca()].call(this,2==this.fa?Nj:Oj,lj)},function(){this.Ib[this.ca()].call(this,Mj,mj)},function(){this.Oa[this.ca()].call(this,2==this.fa?Nj:Oj,mj)},function(){var a=this.ca();if(a){var b=this.F&255;this.F=this.F&-65536|b/a<<8|b%a;tf(this,this.F,128);this.A-=this.C.dj}else kj.call(this)},function(){var a=this.F&255,b=(this.F>>8&255)*this.ca()|0,c=a+b|0;this.F= this.F&-65536|c&255;mf(this,a,b,c,191);this.A-=this.C.cj},function(){this.F=this.F&-256|(nf(this)?255:0);this.A-=2},function(){this.F=this.F&-256|Hf(this,this.P,this.D+(this.F&255)&65535);this.A-=this.C.bk},function(){Tj.call(this,216)},function(){Tj.call(this,217)},function(){Tj.call(this,218)},function(){Tj.call(this,219)},function(){Tj.call(this,220)},function(){Tj.call(this,221)},function(){Tj.call(this,222)},function(){Tj.call(this,223)},function(){var a=this.L(),b=this.G-1&this.Ga;this.G=this.G& ~this.Ga|b;b&&!qf(this)?(hf(this,v(this)+a),this.A-=this.C.Jj):this.A-=this.C.Kh},function(){var a=this.L(),b=this.G-1&this.Ga;this.G=this.G&~this.Ga|b;b&&qf(this)?(hf(this,v(this)+a),this.A-=this.C.Lh):this.A-=this.C.Mh},function(){var a=this.L(),b=this.G-1&this.Ga;this.G=this.G&~this.Ga|b;b?(hf(this,v(this)+a),this.A-=this.C.Ij):this.A-=this.C.Kh},function(){var a=this.L();this.G&this.Ga?this.A-=this.C.Mh:(hf(this,v(this)+a),this.A-=this.C.Lh)},function(){var a=this.ca();Ff(this,a,1,!0)&&(this.F= this.F&-256|oc(this.ja,a,1,this.Na-2)&255,this.A-=this.C.Fh)},function(){var a=this.ca();Ff(this,a,this.fa,!0)&&(this.F=this.F&~this.B|oc(this.ja,a,this.fa,this.Na-2)&this.B,this.A-=this.C.Fh)},function(){var a=this.ca();Ff(this,a,1,!1)&&(sc(this.ja,a,1,this.F&255,this.Na-2),this.A-=this.C.Th)},function(){var a=this.ca();Ff(this,a,this.fa,!1)&&(sc(this.ja,a,this.fa,this.F&this.B,this.Na-2),this.A-=this.C.Th)},function(){var a=this.Sa(),b=v(this),a=b+a;Dd(this,b);hf(this,a);this.A-=this.C.hj},function(){var a= @@ -364,7 +364,7 @@ R(this)),this.G>>8&255);P(this,a);this.A-=this.C.T},function(a){a=a.call(this,L( this.A-=this.C.N},function(a){a=a.call(this,K(this,this.D+this.J+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.S},function(a){a=a.call(this,K(this,this.D+this.I+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.T},function(a){a=a.call(this,L(this,this.K+this.J+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.T},function(a){a=a.call(this,L(this,this.K+this.I+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.S},function(a){a=a.call(this,K(this,this.J+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.N}, function(a){a=a.call(this,K(this,this.I+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.N},function(a){a=a.call(this,L(this,this.K+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.N},function(a){a=a.call(this,K(this,this.D+R(this)),this.H>>8&255);P(this,a);this.A-=this.C.N},function(a){a=a.call(this,K(this,this.D+this.J+R(this)),this.D>>8&255);P(this,a);this.A-=this.C.S},function(a){a=a.call(this,K(this,this.D+this.I+R(this)),this.D>>8&255);P(this,a);this.A-=this.C.T},function(a){a=a.call(this,L(this, this.K+this.J+R(this)),this.D>>8&255);P(this,a);this.A-=this.C.T},function(a){a=a.call(this,L(this,this.K+this.I+R(this)),this.D>>8&255);P(this,a);this.A-=this.C.S},function(a){a=a.call(this,K(this,this.J+R(this)),this.D>>8&255);P(this,a);this.A-=this.C.N},function(a){a=a.call(this,K(this,this.I+R(this)),this.D>>8&255);P(this,a);this.A-=this.C.N},function(a){a=a.call(this,L(this,this.K+R(this)),this.D>>8&255);P(this,a);this.A-=this.C.N},function(a){a=a.call(this,K(this,this.D+R(this)),this.D>>8&255); -P(this,a);this.A-=this.C.N},z[192],z[200],z[208],z[216],z[224],z[232],z[240],z[248],z[193],z[201],z[209],z[217],z[225],z[233],z[241],z[249],z[194],z[202],z[210],z[218],z[226],z[234],z[242],z[250],z[195],z[203],z[211],z[219],z[227],z[235],z[243],z[251],z[196],z[204],z[212],z[220],z[228],z[236],z[244],z[252],z[197],z[205],z[213],z[221],z[229],z[237],z[245],z[253],z[198],z[206],z[214],z[222],z[230],z[238],z[246],z[254],z[199],z[207],z[215],z[223],z[231],z[239],z[247],z[255]],He=[function(a,b){var c= +P(this,a);this.A-=this.C.N},z[192],z[200],z[208],z[216],z[224],z[232],z[240],z[248],z[193],z[201],z[209],z[217],z[225],z[233],z[241],z[249],z[194],z[202],z[210],z[218],z[226],z[234],z[242],z[250],z[195],z[203],z[211],z[219],z[227],z[235],z[243],z[251],z[196],z[204],z[212],z[220],z[228],z[236],z[244],z[252],z[197],z[205],z[213],z[221],z[229],z[237],z[245],z[253],z[198],z[206],z[214],z[222],z[230],z[238],z[246],z[254],z[199],z[207],z[215],z[223],z[231],z[239],z[247],z[255]],Je=[function(a,b){var c= a[0].call(this,K(this,this.D+this.J),b.call(this));P(this,c);this.A-=this.C.oa},function(a,b){var c=a[0].call(this,K(this,this.D+this.I),b.call(this));P(this,c);this.A-=this.C.pa},function(a,b){var c=a[0].call(this,L(this,this.K+this.J),b.call(this));P(this,c);this.A-=this.C.pa},function(a,b){var c=a[0].call(this,L(this,this.K+this.I),b.call(this));P(this,c);this.A-=this.C.oa},function(a,b){var c=a[0].call(this,K(this,this.J),b.call(this));P(this,c);this.A-=this.C.aa},function(a,b){var c=a[0].call(this, K(this,this.I),b.call(this));P(this,c);this.A-=this.C.aa},function(a,b){var c=a[0].call(this,K(this,R(this)),b.call(this));P(this,c);this.A-=this.C.Ka},function(a,b){var c=a[0].call(this,K(this,this.D),b.call(this));P(this,c);this.A-=this.C.aa},function(a,b){var c=a[1].call(this,K(this,this.D+this.J),b.call(this));P(this,c);this.A-=this.C.oa},function(a,b){var c=a[1].call(this,K(this,this.D+this.I),b.call(this));P(this,c);this.A-=this.C.pa},function(a,b){var c=a[1].call(this,L(this,this.K+this.J), b.call(this));P(this,c);this.A-=this.C.pa},function(a,b){var c=a[1].call(this,L(this,this.K+this.I),b.call(this));P(this,c);this.A-=this.C.oa},function(a,b){var c=a[1].call(this,K(this,this.J),b.call(this));P(this,c);this.A-=this.C.aa},function(a,b){var c=a[1].call(this,K(this,this.I),b.call(this));P(this,c);this.A-=this.C.aa},function(a,b){var c=a[1].call(this,K(this,R(this)),b.call(this));P(this,c);this.A-=this.C.Ka},function(a,b){var c=a[1].call(this,K(this,this.D),b.call(this));P(this,c);this.A-= @@ -934,7 +934,7 @@ function Ym(a,b){if(1==b)return a.Ja[0]=pm[0],a.Ja[1]=pm[7],a.Ja;if(2==b){var c= (c.Uc[20]&12)<<4,c.Uc[16]&128&&(g&=-49,g|=(c.Uc[20]&3)<<4),g=d[g],k=g<<2&252,q=g>>4&252,g=g>>10&252):(k=(g&4?170:0)|(g&32?85:0),q=(g&2?170:0)|(g&16?85:0),g=(g&1?170:0)|(g&8?85:0)),a.Ja[f]=[k,q,g,255]}a.xb=!0}return a.Ja}function Cl(a,b,c,d){a.Lc=b;a.rd=c;a.rb=d} function Um(a,b){var c=!1;if(window&&a.Lc&&(!b||a.W)){var d=0,e=a.rb?a.rb:8,f=Ym(a);Zm(a,3,a.rd[0],d,e,8,a.Lc,f)&&(c=!0);d=a.rb?0:2048;e=a.rb?a.rb:9;Zm(a,1,a.rd[1],d,e,14,a.Lc,nm,om)&&(c=!0);a.rb&&Zm(a,a.nb,a.rd[1],0,a.rb,14,a.Lc,f)&&(c=!0)}return c}function Zm(a,b,c,d,e,f,g,k,q){var r=!1;null!=c&&($m(a,b,c,d,e,f,g,k,q)&&(r=!0),a.Rg&&$m(a,b<<1,c,d,e,f,g,k,q)&&(r=!0));return r} function $m(a,b,c,d,e,f,g,k,q){var r=!1,x=b&1?0:1,B=a.Va[b],y=16>k.length?k.length:16;B||(B={Rc:e<ha||!V?ha:8,Da=oa.createImageData(r.Rc,r.Sc),Oa=0;256>Oa;Oa++){for(Ja= -0;Ja=ha-2,Uc=da[Ja>(8<=ab&&192<=Oa&&223>=Oa?7:ab)?J:eb;an(Da,Ie,Wd,Je);F&&an(Da,Ie+1,Wd,Je)}oa.putImageData(Da,(Oa&15)*r.Rc,(Oa>>4)*r.Sc)}r.Ne[U]="#"+l(J[0],2)+l(J[1],2)+l(J[2],2);r.xi[U]=J;r.Vg[U]=va;r=!0}}a.Va[b]=B;return r}function bn(a){0a.Yb&&(a.Yb=0):a.Yb=-1} +0;Ja=ha-2,Uc=da[Ja>(8<=ab&&192<=Oa&&223>=Oa?7:ab)?J:eb;an(Da,He,Wd,Ie);F&&an(Da,He+1,Wd,Ie)}oa.putImageData(Da,(Oa&15)*r.Rc,(Oa>>4)*r.Sc)}r.Ne[U]="#"+l(J[0],2)+l(J[1],2)+l(J[2],2);r.xi[U]=J;r.Vg[U]=va;r=!0}}a.Va[b]=B;return r}function bn(a){0a.Yb&&(a.Yb=0):a.Yb=-1} function Xm(a){if(a.W){for(var b=10;15>=b;b++)if(null==a.C.zb[b])return;var c=a.C.zb[10],b=c&31,d=a.C.zb[11]&31,e=a.C.zb[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)cn(a);else{c=a.C.zb[15]+((a.C.zb[14]&63)<<8);a.ua!=c&&(cn(a),a.ua=c);d=d-b+1;if(a.gg!=b||a.Be!=d)a.gg=b,a.Be=d;a.ib=e+1;bn(a)}}} function cn(a){if(0<=a.ua){if(void 0!==a.ka){var b=a.ka[a.ua];if(b&131072){var b=b&-131073,c=a.ua%a.O,d=a.ua/a.O|0;a.W&&a.Va[a.W]&&(a.qb&&dn(a,c,d,b,a.qb),dn(a,c,d,b));a.ka[a.ua]=b}}a.ua=-1}} function en(a){var b,c=a.C;a.Ge=!1;var d=c.Yd[5];if(null!=d){b=1024;var e=0,f=c.Yd[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.ed=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.nb==Dl&&(e=3,c.ed=f&7)}d&8&&(b=1280);c=c.Ie[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.Ge=!0));b|=e}return b} @@ -1185,22 +1185,22 @@ tq(a,g[1],!0);if(B)if(a.Ba=B,void 0===g[2])a.U("begin assemble at "+mq(B)),a.Ma= a.U("\tbc [a]\tclear breakpoint at addr [a]"),a.U("\tbl\tlist all breakpoints"),a.U("\tbn [n]\tbreak after [n] instruction(s)");else{var V=U.charAt(1);if("l"==V){var Y=0,Y=Y+Kq(a,a.A),Y=Y+Kq(a,a.za);(Y+=Kq(a,a.la))||a.U("no breakpoints")}else if("n"==V)a.Va=Zp(a,F),a.U("break after "+a.Va+" instruction(s)");else if(void 0===F)a.U("missing breakpoint address");else{var ha={};if("*"!=F&&(ha=tq(a,F,!0,!0),!ha))break a;F=null==ha.Xa?F:ia(ha.Xa);"c"==V?null==ha.Xa?(Ep(a),a.U("all breakpoints cleared")): lq(a,a.A,ha)||lq(a,a.za,ha)||lq(a,a.la,ha)||a.U("breakpoint missing: "+mq(ha)):"i"==V?a.U("breakpoint "+(mc(a.ja,ha.Xa)?"enabled":"cleared")+": port "+F+" (input)"):"o"==V?a.U("breakpoint "+(qc(a.ja,ha.Xa)?"enabled":"cleared")+": port "+F+" (output)"):null!=ha.Xa&&(wq(a,ha,O),"p"==V?a.Nd(a.A,ha):"r"==V?a.Nd(a.za,ha):"w"==V?a.Nd(a.la,ha):a.U("unknown breakpoint command: "+V))}}}break;case "c":$q(a);break;case "d":a:{var da=g,eb,va=da[0],oa=da[1],Oa=da[2],ab=da[3];if("?"==oa){var Ja="";for(eb in Rp)a.ib[eb]&& (Ja&&(Ja+=","),Ja+=eb);Ja+=",state,symbols";a.U("dump memory commands:");a.U("\tdb [a] [#] dump # bytes at address a");a.U("\tdw [a] [#] dump # words at address a");a.U("\tdd [a] [#] dump # dwords at address a");a.U("\tdh [#] [#] dump # instructions from history");a.U("\tds [#] dump descriptor info for selector #");Ja.length&&a.U("dump extension commands:\n\t"+Ja)}else if("state"==oa){var Vb=hr(a.ia,!0);"console"==Oa?console.log(Vb):($q(a),a.U(Vb))}else if("symbols"==oa)for(var Da= -0;Da>>20;La.zi= -a.M.Ld+La.ek;La.Db=be.ya[(La.zi&be.Mb)>>>be.Pa];La.Xi=La.Db.Xd(La.ek);La.fk=(Ve&4190208)>>>10;La.Ai=(La.Xi&-4096)+La.fk;La.Eb=be.ya[(La.Ai&be.Mb)>>>be.Pa];La.Yi=La.Eb.Xd(La.fk);La.Lk=(La.Yi&-4096)+(Ve&4095)}if(ae=La){a.U("linear PDE addr PDE PTE addr PTE physical");a.U("--------- ---------- -------- ---------- -------- ----------");var td="%"+l(Ve),td=td+(" %%"+yq(ae.zi,ae.Xi)),td=td+(" %%"+yq(ae.Ai,ae.Yi,!0)),td=td+(" %%"+l(ae.Lk));a.U(td)}else a.U("unsupported operation")}}else a.U("missing address")}else{if("d"== +0;Da>>20;La.zi= +a.M.Ld+La.ek;La.Db=be.ya[(La.zi&be.Mb)>>>be.Pa];La.Xi=La.Db.Xd(La.ek);La.fk=(Ue&4190208)>>>10;La.Ai=(La.Xi&-4096)+La.fk;La.Eb=be.ya[(La.Ai&be.Mb)>>>be.Pa];La.Yi=La.Eb.Xd(La.fk);La.Lk=(La.Yi&-4096)+(Ue&4095)}if(ae=La){a.U("linear PDE addr PDE PTE addr PTE physical");a.U("--------- ---------- -------- ---------- -------- ----------");var ud="%"+l(Ue),ud=ud+(" %%"+yq(ae.zi,ae.Xi)),ud=ud+(" %%"+yq(ae.Ai,ae.Yi,!0)),ud=ud+(" %%"+l(ae.Lk));a.U(ud)}else a.U("unsupported operation")}}else a.U("missing address")}else{if("d"== va){if("disk"==oa){da[0]="l";da[1]="json";dr(a,da);break a}for(eb in Rp)if(da[1]==eb){var gn=a.ib[eb];gn?(da.shift(),da.shift(),gn(da)):a.U("no dump registered for "+oa);break a}oa||(va=a.Lc||"db")}else a.Lc=va;if("dh"==va){var hn=oa,jn=Oa,kn="",ln=0,tb=a.Oa,wc=a.qa;if(wc.length){var Eb=+hn||a.Zb,ce=+jn||10;isNaN(Eb)?Eb=ce:kn="more ";Eb>wc.length&&(a.U("note: only "+wc.length+" available"),Eb=wc.length);tb-=Eb;0>tb&&(null==wc[wc.length-1].ga?(Eb=tb+Eb,tb=0):tb+=wc.length);var li=[];"call"==jn&&(ce= 1E5,li=["CALL"]);for(void 0!==hn&&a.U(Eb+" instructions earlier:");0=wc.length&&(tb=0);a.Zb=Eb;ln++;ce--}}ln||(a.U("no "+kn+"history available"),a.Zb=void 0)}else if("di"==va)da.shift(),a.U("no information");else{var de=tq(a,oa);if(de&&(null!=de.ga||null!=de.Ia)){var sg=0;Oa&&("l"==Oa.charAt(0)&& -(Oa=Oa.substr(1)||ab),sg=Zp(a,Oa)>>>0,65536>4||1,mi="dd"==va?4:"dw"==va?2:1,nn=0;nnpi;pi++){var ug=a.Wa(de,1),tg=tg|ug<<(ni++<<3);ni==mi&&(We+=l(tg,2*mi),We+=1==mi?7==pi?"-":" ":" ",tg=ni=0);oi+=32<=ug&&128>ug?String.fromCharCode(ug):"."}ud&&(ud+="\n");ud+=oa+" "+We+" "+oi}ud&&a.U(ud);a.Jb=de}}}}}break;case "e":if("else"==g[0])break;var vg=1,on=255,pn=a.Wa,qn=a.tc;"ew"==g[0]&&(vg=2,on=65535, -pn=a.va,qn=a.pb);var rn=vg<<1,sn=g[1];if(null==sn)a.U("edit memory commands:"),a.U("\teb [a] [...] edit bytes at address a"),a.U("\tew [a] [...] edit words at address a");else{var wg=tq(a,sn);if(wg)for(var xg=2;xgvi;){for(var xc=null,Fr=256;Wc.Xa>>>0>>0;){Ze.Xa=a.vb(Wc,!0);if(null==Wc.Ia||!Fr--)break;Ze.ga=un;if(xc=fr(a,Ze))break;Ze.ga=a.vb(Wc);if(xc=fr(a,Ze,!0)){un=a.vb(Wc,!0);0>>0,65536>4||1,mi="dd"==va?4:"dw"==va?2:1,nn=0;nnpi;pi++){var ug=a.Wa(de,1),tg=tg|ug<<(ni++<<3);ni==mi&&(Ve+=l(tg,2*mi),Ve+=1==mi?7==pi?"-":" ":" ",tg=ni=0);oi+=32<=ug&&128>ug?String.fromCharCode(ug):"."}vd&&(vd+="\n");vd+=oa+" "+Ve+" "+oi}vd&&a.U(vd);a.Jb=de}}}}}break;case "e":if("else"==g[0])break;var vg=1,on=255,pn=a.Wa,qn=a.tc;"ew"==g[0]&&(vg=2,on=65535, +pn=a.va,qn=a.pb);var rn=vg<<1,sn=g[1];if(null==sn)a.U("edit memory commands:"),a.U("\teb [a] [...] edit bytes at address a"),a.U("\tew [a] [...] edit words at address a");else{var wg=tq(a,sn);if(wg)for(var xg=2;xgvi;){for(var xc=null,Fr=256;Wc.Xa>>>0>>0;){Ye.Xa=a.vb(Wc,!0);if(null==Wc.Ia||!Fr--)break;Ye.ga=un;if(xc=fr(a,Ye))break;Ye.ga=a.vb(Wc);if(xc=fr(a,Ye,!0)){un=a.vb(Wc,!0);0/g.exec(a)){var e=d[2];b("Loading "+e+"...");za(e,!0,null,null,function(f,g,k){if(k||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+k+")");else{if(f=d[3])if(k=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var q=k[0],r,x=/( [a-z]+=)(['"])(.*?)\2/g;r=x.exec(f);)q=0>q.indexOf(r[1])?q.replace(">",r[0]+">"):q.replace(new RegExp(r[1]+"(['\"])(.*?)\\1"),r[0]);k[0]!=q&&(g=g.replace(k[0],q))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/, "");a=a.replace(d[0],g);Jr(a,b,c)}})}else c(a,null)} -function Kr(a,b,c,d){function e(a){if(void 0===k){var b=g&&qb(g,"machine-warning");k=b&&b[0]||g}k&&(k.innerHTML=na(a))}function f(a){e("Error: "+a);q&&(--xr||Ua(!0));q=!1}var g,k,q=!0;xr++;hb[a]={};try{if(g=document.getElementById(a)){c||(c="/versions/pcjs/1.20.9/components.xsl");var r=function(d,k){k?(ib(a,"xml",d),yr(c,null,null,!1,e,function(c,d){if(d)if(ib(a,"xsl",c),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var q=k.transformNode(d);q?(g.outerHTML=q,--xr||Ua(!0)): -f("transformNodeToObject failed")}else document.implementation&&document.implementation.createDocument?(q=new XSLTProcessor,q.importStylesheet(d),(q=q.transformToFragment(k,document))?g.parentNode?(g.parentNode.replaceChild(q,g),--xr||Ua(!0)):f("invalid machine element: "+a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f(c)})):f(d)};"<"!=b.charAt(0)?yr(b,a,d,!0,e,r):zr(b,null,a,d,!1,e,r)}else f("missing machine element: "+a)}catch(x){f(x.message)}return q} -window.embedPC=function(a,b,c,d){Ua(!1);return Kr(a,b,c,d)};window.savePC=function(a){var b=lb("Computer",a),c=lb("Debugger",a);if(b)return za("/versions/pcjs/null/pc"+(c?"-dbg":"")+".js"),!0;Ba("Unable to identify machine '"+a+"'");return!1};window.enableEvents=Ua;window.sendEvent=Wa;})(); +function Kr(a,b,c,d){function e(a){if(void 0===k){var b=g&&qb(g,"machine-warning");k=b&&b[0]||g}k&&(k.innerHTML=na(a))}function f(a){e("Error: "+a);q&&(--xr||Ua(!0));q=!1}var g,k,q=!0;xr++;hb[a]={};try{if(g=document.getElementById(a)){c||(c="/versions/pcjs/1.20.9/components.xsl");var r=function(d,k){k?(ib(a,b,d),yr(c,null,null,!1,e,function(d,q){if(q)if(ib(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var r=k.transformNode(q);r?(g.outerHTML=r,--xr||Ua(!0)):f("transformNodeToObject failed")}else document.implementation&& +document.implementation.createDocument?(r=new XSLTProcessor,r.importStylesheet(q),(r=r.transformToFragment(k,document))?g.parentNode?(g.parentNode.replaceChild(r,g),--xr||Ua(!0)):f("invalid machine element: "+a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f(d)})):f(d)};"<"!=b.charAt(0)?yr(b,a,d,!0,e,r):zr(b,null,a,d,!1,e,r)}else f("missing machine element: "+a)}catch(x){f(x.message)}return q} +function Lr(a,b,c,d){if(b&&(c=d[0],b=b.match(/^(\s*\(function\(\)\{)([\s\S]*)(}\)\(\);\s*)$/))){d=hb[c];var e={},f;for(f in d){var g=d[f];if("xml"==f)for(var k,q=/[ \t]*]*path=(['"])(.*?)\1.*?<\/disk>\n?/g;k=q.exec(d[f]);){var r=k[2];r&&(d[r]?console.log("saving disk: '"+r):g=g.replace(k[0],""))}console.log("saving resource: '"+f+"' ("+g.length+" bytes)");e[f]=g}f=JSON.stringify(e);b=b[1]+"var resources="+f+";"+b[2]+b[3];console.log("saving machine: '"+c+"' ("+b.length+" bytes)");f="data:application/octet-stream;base64,"+ +btoa(b);c=document.createElement("a");"string"==typeof c.download?(c.href=f,c.download=ja(a,!0)+".json",document.body.appendChild(c),c.click(),document.body.removeChild(c)):window.open(f)}}window.embedPC=function(a,b,c,d){Ua(!1);return Kr(a,b,c,d)};window.savePC=function(a,b){var c=lb("Computer",a),d=lb("Debugger",a);if(c)return b||(b="/versions/pcjs/1.20.9/pc"+(d?"-dbg":"")+".js"),za(b,!0,null,null,Lr,[a,c,d]),!0;Ba("Unable to identify machine '"+a+"'");return!1};window.enableEvents=Ua; +window.sendEvent=Wa;})();