Fixed Debugger type inspection problems following the previous refactoring

This commit is contained in:
Jeff Parsons 2016-09-14 15:52:55 -07:00
commit 522563a72b
6 changed files with 50 additions and 50 deletions

View file

@ -104,8 +104,8 @@ e>>2;b.zb=g;b.B=h>>2;xb&&ec&&c.da&&!c.controller&&!c.Te&&!c.Ue?(b.Ya=c.Ya,b.de=c
function we(a,b){var c;switch(b){case 0:c=a.G;break;case 1:c=a.I;break;case 2:c=a.M;break;case 3:c=a.H;break;case 4:c=I(a);break;case 5:c=a.P;break;case 6:c=a.K;break;case 7:c=a.J}return c}function xe(a,b,c){switch(b){case 0:a.G=c;break;case 1:a.I=c;break;case 2:a.M=c;break;case 3:a.H=c;break;case 4:G(a,c);break;case 5:a.P=c;break;case 6:a.K=c;break;case 7:a.J=c}}
function re(a){a.G=0;a.H=0;a.I=0;a.M=0;a.gb=0;a.P=0;a.K=0;a.J=0;a.cb=!1;a.ia=a.wa=0;a.aa=0;a.jg=0;a.L=0;a.Za=65520;a.Lc=0;a.Sd=1023;a.ca=a.Pa=0;a.Wc=a.sd=a.Vc=a.Xc=0;a.rb=-1;a.kc=a.sb=-1;a.qe=a.U=-1;a.va=new fd(a,1,"CS");a.vb=new fd(a,2,"DS");a.Xa=new fd(a,2,"ES");a.ta=new fd(a,3,"SS");G(a,0);ld(a,0);if(80386<=a.ja){switch(a.Uc){case 80562:case 80563:a.M=771;break;case 80578:a.M=772;break;case 80594:a.M=773;break;case 80595:case 80596:a.M=776}a.Za=16;a.li=0;a.se=0;a.Od=0;a.Ja=[0,0,0,0,null,null,0,
0];a.Ae=[null,null,null,null,null,null,0,0];a.Nb=new fd(a,2,"FS");a.Ob=new fd(a,2,"GS");ve(a)}a.pf=new fd(a,0,"NULL");a.ka=a.vb;a.Ka=a.ta;a.S=a.Ia=0;a.D=a.C=-1;a.$b=a.pf;a.ua=0;if(80286>a.ja)Ad(a,0,65535);else{a.Dc=0;a.zd=65535;a.Bc=new fd(a,5,"LDT",!0);a.Sa=new fd(a,4,"TSS",!0);a.Da=new fd(a,6,"VER",!0);Ad(a,65520,61440);var b,c=K(a);b=a.va;var d=-65536;80386>b.F.ja&&(d&=16777215);b=b.Aa=d;a.Ha=b+c|0;a.gf=(b>>>0)+(a.va.Ta>>>0)+1}zd(a,0);nd(a)}
function ye(a){2==a.Nc?(a.bc=a.na,a.Oa=ze,a.$a=Ae,a.Jb=Be,2==a.ba?(a.V=Ce,a.ea=De,a.ya=Ee):(a.V=Fe,a.ea=Ge,a.ya=He)):(a.bc=a.oa,a.Oa=Ke,a.$a=Le,a.Jb=Me,2==a.ba?(a.V=Ne,a.ea=Oe,a.ya=Pe):(a.V=Qe,a.ea=Re,a.ya=Se))}function od(a,b){a.ba!=b&&(a.Ia|=1024,a.ba=b,a.R=2==b?65535:-1,Te(a))}function Te(a){2==a.ba?(a.Ga=32768,a.tb=a.na,a.rc=a.jb,2==a.Nc?(a.V=Ce,a.ea=De,a.ya=Ee):(a.V=Ne,a.ea=Oe,a.ya=Pe)):(a.Ga=-2147483648,a.tb=a.oa,a.rc=a.nb,2==a.Nc?(a.V=Fe,a.ea=Ge,a.ya=He):(a.V=Qe,a.ea=Re,a.ya=Se))}
function df(a){a.Nc=a.va.Nc;a.Ba=a.va.Ba;ye(a);a.ba=a.va.ba;a.R=a.va.R;Te(a);a.Ia&=-3073}m.Ti=function(){var a=this.G+this.H+this.I+this.M+I(this)+this.P+this.K+this.J|0;return a=a+K(this)+this.va.Z+this.vb.Z+this.ta.Z+this.Xa.Z+yd(this)|0};function ef(a,b,c){void 0===a.Hd[b]&&(a.Hd[b]=[]);a.Hd[b].push(c)}function ff(a,b,c){void 0!==c&&(null==a.je[b]&&a.le++,a.je[b]=c)}function gf(a,b){var c=a.je[b];null!=c&&(c(--a.le),delete a.je[b])}
function ye(a){2==a.Nc?(a.bc=a.na,a.Oa=ze,a.$a=Ae,a.Jb=Be,2==a.ba?(a.V=Ce,a.ea=De,a.ya=Ee):(a.V=Fe,a.ea=Ge,a.ya=He)):(a.bc=a.oa,a.Oa=Ke,a.$a=Le,a.Jb=Me,2==a.ba?(a.V=Ne,a.ea=Oe,a.ya=Pe):(a.V=Qe,a.ea=Re,a.ya=Se))}function od(a,b){a.ba!=b&&(a.Ia|=1024,a.ba=b,a.R=2==b?65535:-1,cf(a))}function cf(a){2==a.ba?(a.Ga=32768,a.tb=a.na,a.rc=a.jb,2==a.Nc?(a.V=Ce,a.ea=De,a.ya=Ee):(a.V=Ne,a.ea=Oe,a.ya=Pe)):(a.Ga=-2147483648,a.tb=a.oa,a.rc=a.nb,2==a.Nc?(a.V=Fe,a.ea=Ge,a.ya=He):(a.V=Qe,a.ea=Re,a.ya=Se))}
function df(a){a.Nc=a.va.Nc;a.Ba=a.va.Ba;ye(a);a.ba=a.va.ba;a.R=a.va.R;cf(a);a.Ia&=-3073}m.Ti=function(){var a=this.G+this.H+this.I+this.M+I(this)+this.P+this.K+this.J|0;return a=a+K(this)+this.va.Z+this.vb.Z+this.ta.Z+this.Xa.Z+yd(this)|0};function ef(a,b,c){void 0===a.Hd[b]&&(a.Hd[b]=[]);a.Hd[b].push(c)}function ff(a,b,c){void 0!==c&&(null==a.je[b]&&a.le++,a.je[b]=c)}function gf(a,b){var c=a.je[b];null!=c&&(c(--a.le),delete a.je[b])}
function hf(a,b){for(var c=a.Ja[7],d=c>>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.Ja[e],g=g&~(d>>2&3);b?a.sa[g>>>a.La].Rd(g&a.Fa,f,a):Jc(a.sa[g>>>a.La],f)}c>>=2;d>>=4}}function Gc(a,b,c,d){if(!(a.S&8192)&&a.Ja[7]&255){c--;var e=a.Ja[7],f=e>>16;d=d?1:0==d?3:0;for(var g=0;4>g;g++){if(e&3&&(f&3)==d){var h=f>>2;if(b+c>=a.Ja[g]&&b<=a.Ja[g]+h){a.Ja[6]|=1<<g;a.ua|=2;break}}e>>=2;f>>=4}}}
function nd(a,b,c){void 0===b&&(b=!!(a.Za&1));void 0===c&&(c=!!(a.ca&131072));a.ig=b&&!c?jf:Gd;gd(a.va,!1,b,c);gd(a.vb,!1,b,c);gd(a.ta,!1,b,c);gd(a.Xa,!1,b,c);80386<=a.ja&&(gd(a.Nb,!1,b,c),gd(a.Ob,!1,b,c));df(a)}
m.save=function(){var a=new kf(this);N(a,0,[this.G,this.H,this.I,this.M,I(this),this.P,this.K,this.J]);var b=K(this),c=this.va.save(),d=this.vb.save(),e=this.ta.save(),f=this.Xa.save(),g;null!=this.Dc?(g=[this.Za,this.Dc,this.zd,this.Lc,this.Sd,this.Bc.save(),this.Sa.save(),this.Pa],80386<=this.ja&&(g.push(this.li),g.push(this.se),g.push(this.Od),g.push(this.Ja),g.push(this.Ae))):g=null;b=[b,c,d,e,f,g,yd(this)];80386<=this.ja&&(b.push(this.Nb.save()),b.push(this.Ob.save()));N(a,1,b);N(a,2,[this.ka.jc,
@ -139,7 +139,7 @@ m.Hc=function(a,b,c){this.F=c;this.N=Hb(a,"ChipSet");ub(this)};m.gc=function(a,b
m.restore=function(a){a=a[0];var b=0;this.ic=a[b++]&-57409;var c=a[b++];this.ma=c&-14337;this.B=(c&14336)>>11;cg(this);dg(this,a[b++]);for(c=0;c<this.X.length;c++)this.X[c]=a[b++];return!0};function $f(a){a.C=0;a.ic=959;a.ma=0;a.B=0;a.N&&(a=a.N,a.ja>=eg&&fg(a,13))}function cg(a){a.ma&=-129;a.ma&~a.ic&63&&(a.ma|=128);if(a.ma&128&&!(a.ic&128))return a=a.N,a.ja>=eg?gg(a,13):a.ya&0||Xf.call(a.F,2),!0;a=a.N;a.ja>=eg&&fg(a,13);return!1}function hg(a,b){80387<=a.ja||(b&=-65);a.ma|=b;return cg(a)}
function ag(a){return a.ma|a.B<<11}function ig(a,b){return isFinite(b)?!0:!hg(a,Infinity===b?8:16)}function jg(a,b,c){var d=null;null!=b&&null!=c&&(d=b+c,ig(a,d)||(d=null));return d}function kg(a,b,c){var d=null;null!=b&&null!=c&&(d=b-c,ig(a,d)||(d=null));return d}function lg(a,b,c){var d=null;null!=b&&null!=c&&(d=b*c,ig(a,d)||(d=null));return d}function mg(a,b,c){var d=null;null==b||null==c||!c&&hg(a,2)||(d=b/c,ig(a,d)||(d=null));return d}
function ng(a,b,c){if(null!=b&&null!=c){var d=0;isNaN(b)||isNaN(c)?d=17664:(b-=c,0>b?d=256:0===b&&(d=16384));a.ma=a.ma&-18177|d;return!0}return!1}function og(a,b,c){if(null==b)return null;var d=a.ic&3072;0==d?(d=Math.round(b),.5===d-b&&d%2&&d--):d=1024==d||3072==d&&0<b?Math.floor(b):Math.ceil(b);if(c){if(d>=c){if(hg(a,1))return null;d=-c}else if(d<-c){if(hg(a,1))return null;d=-c}a.L[0]=d|0;2147483648<c&&(a.L[1]=d/4294967296|0,!a.L[1]&&0>d&&(a.L[1]=-1))}return d}
function Bg(a,b){var c=3;if(a.C&1<<b){var d=a.X[b],c=0;0===d?c=1:isFinite(d)||(c=2)}return c}function bg(a){for(var b=0,c=a.X.length-1;0<=c;c--)b<<=2,b|=Bg(a,c);return b}function dg(a,b){a.C=0;for(var c=1;128>=c;c<<=1)3!=(b&3)&&(a.C|=c),b>>=2}function Cg(a){var b=a.B+0&7;return a.C&1<<b?(a.pa[0]=a.X[b],!0):hg(a,1)?!1:(a.pa[0]=a.ka[0],!0)}function Dg(a){var b=a.B+0&7;return a.C&1<<b?(a.W[0]=a.X[b],!0):hg(a,1)?!1:(a.W[0]=a.ka[0],!0)}
function pg(a,b){var c=3;if(a.C&1<<b){var d=a.X[b],c=0;0===d?c=1:isFinite(d)||(c=2)}return c}function bg(a){for(var b=0,c=a.X.length-1;0<=c;c--)b<<=2,b|=pg(a,c);return b}function dg(a,b){a.C=0;for(var c=1;128>=c;c<<=1)3!=(b&3)&&(a.C|=c),b>>=2}function Cg(a){var b=a.B+0&7;return a.C&1<<b?(a.pa[0]=a.X[b],!0):hg(a,1)?!1:(a.pa[0]=a.ka[0],!0)}function Dg(a){var b=a.B+0&7;return a.C&1<<b?(a.W[0]=a.X[b],!0):hg(a,1)?!1:(a.W[0]=a.ka[0],!0)}
function U(a,b){var c=null,d=a.B+b&7;a.C&1<<d?c=a.X[d]:hg(a,1)||(c=a.ka[0]);return c}function V(a,b,c){return null!=c&&(isNaN(c)?!hg(a,1):1)?(b=a.B+b&7,a.X[b]=c,a.C|=1<<b,!0):!1}function Eg(a,b,c){var d=null;b=a.B+b&7;if(c||a.C&1<<b||!hg(a,1))c=b<<1,d=Fg(a,a.aa[c],a.aa[c+1]);return d}function Gg(a){return a.F.na(a.F.D)<<16>>16}function Hg(a){return a.F.oa(a.F.D)}function Ig(a){a.ua[0]=a.F.oa(a.F.D);return a.pa[0]}function Jg(a){a.L[0]=a.F.oa(a.F.D);a.L[1]=a.F.oa(a.F.D+4);return a.W[0]}
function Kg(a){a.ga[0]=a.F.oa(a.F.D);a.ga[1]=a.F.oa(a.F.D+4);a.ga[2]=a.F.na(a.F.D+8);return a.ga}m.pi=function(){this.F.nb(this.F.D,this.L[0])};m.sk=function(){this.F.nb(this.F.D,this.L[0]);this.F.nb(this.F.D+4,this.L[1])};m.uk=Zf.prototype.pi;m.tk=Zf.prototype.sk;function Lg(a){a.F.nb(a.F.D,a.ga[0]);a.F.nb(a.F.D+4,a.ga[1]);a.F.jb(a.F.D+8,a.ga[2])}
function Mg(a,b){var c=b[1],d=(b[2]&32768)>>4,e=b[2]&32767,f=b[0]>>>11|c<<21,c=c>>11&1048575;32767==e?e=2047:e&&(e+=-15360,0>=e&&(e=2047,f=c=0));a.L[0]=f;a.L[1]=c|(d|e)<<20;return a.W[0]}function Fg(a,b,c){var d=c>>20&2047,e=2147483648|(c&1048575)<<11|b>>>21;2047==d?d=32767:d?d+=15360:e&=2147483647;a.ga[0]=b<<11;a.ga[1]=e;a.ga[2]=c>>16&32768|d;return a.ga}function Ng(a,b){for(var c=0,d=1;b--;)c+=(a&15)*d,d*=10,a>>=4;return c}function Og(a,b){for(var c=0,d=0;b--;)c|=a%10<<d,a/=10,d+=4;return c}
@ -151,7 +151,7 @@ function ih(){for(var a=this.F,b=Sg(this,a.D),c=0;c<this.X.length;c++){var d=Eg(
function qh(){ph.call(this)}
var rh={216:{0:function(){V(this,0,jg(this,U(this,0),Ig(this)))},1:function(){V(this,0,lg(this,U(this,0),Ig(this)))},2:function(){ng(this,U(this,0),Ig(this))},3:function(){ng(this,U(this,0),Ig(this))&&Pg(this)},4:function(){V(this,0,kg(this,U(this,0),Ig(this)))},5:function(){V(this,0,kg(this,Ig(this),U(this,0)))},6:ch,7:ch,48:function(){V(this,0,jg(this,U(this,0),U(this,this.A)))},49:function(){V(this,0,lg(this,U(this,0),U(this,this.A)))},50:$g,51:ah,52:function(){V(this,0,kg(this,U(this,0),U(this,
this.A)))},53:function(){V(this,0,kg(this,U(this,this.A),U(this,0)))},54:function(){V(this,0,mg(this,U(this,0),U(this,this.A)))},55:function(){V(this,0,mg(this,U(this,this.A),U(this,0)))}},217:{0:function(){Qg(this,Ig(this))},2:function(){Cg(this)&&this.uk()},3:function(){Cg(this)&&(this.uk(),Pg(this))},4:gh,5:fh,6:jh,7:mh,48:function(){Qg(this,U(this,this.A))},49:ph,50:function(){},51:lh,64:function(){V(this,0,-U(this,0))},65:function(){V(this,0,Math.abs(U(this,0)))},68:function(){ng(this,U(this,
0),0)},69:function(){this.ma&=-18177;this.aa[((this.B+0&7)<<1)+1]&-2147483648&&(this.ma|=512);if(3==Bg(this,this.B))this.ma|=16640;else{var a=U(this,0);this.ma=isNaN(a)?this.ma|256:0===a?this.ma|16384:Infinity===a||-Infinity===a?this.ma|1280:this.ma|1024}},80:function(){Qg(this,1)},81:function(){Qg(this,Tg)},82:function(){Qg(this,Ug)},83:function(){Qg(this,Vg)},84:function(){Qg(this,Wg)},85:function(){Qg(this,Xg)},86:function(){Qg(this,0)},96:function(){V(this,0,Math.pow(2,U(this,0))-1)},97:function(){V(this,
0),0)},69:function(){this.ma&=-18177;this.aa[((this.B+0&7)<<1)+1]&-2147483648&&(this.ma|=512);if(3==pg(this,this.B))this.ma|=16640;else{var a=U(this,0);this.ma=isNaN(a)?this.ma|256:0===a?this.ma|16384:Infinity===a||-Infinity===a?this.ma|1280:this.ma|1024}},80:function(){Qg(this,1)},81:function(){Qg(this,Tg)},82:function(){Qg(this,Ug)},83:function(){Qg(this,Vg)},84:function(){Qg(this,Wg)},85:function(){Qg(this,Xg)},86:function(){Qg(this,0)},96:function(){V(this,0,Math.pow(2,U(this,0))-1)},97:function(){V(this,
1,U(this,1)*Math.log(U(this,0))/Math.LN2)&&Pg(this)},98:function(){V(this,0,Math.tan(U(this,0)))&&Qg(this,1)},99:function(){V(this,1,Math.atan2(U(this,1),U(this,0)))&&Pg(this)},100:function(){var a=U(this,0);null!=a&&(this.W[0]=a,V(this,0,(this.L[1]>>20&2047)-1023),this.L[1]=(this.L[1]|1072693248)&-1073741825,Qg(this,this.W[0]))},102:function(){this.B=this.B-1&7;this.ma&=-513},103:function(){this.B=this.B+1&7;this.ma&=-513},112:function(){V(this,0,U(this,0)%U(this,1))},113:function(){V(this,1,U(this,
1)*Math.log(U(this,0)+1)/Math.LN2)&&Pg(this)},114:function(){var a=U(this,0),b=null;if(0<=a||!hg(this,1))b=Math.sqrt(a),ig(this,b)||(b=null);V(this,0,b)},116:function(){V(this,0,og(this,U(this,0),Yg))},117:function(){var a=U(this,0),b=U(this,1);null!=a&&null!=b&&V(this,0,a*Math.pow(2,0<b?Math.floor(b):Math.ceil(b)))}},218:{0:function(){V(this,0,jg(this,U(this,0),Hg(this)))},1:function(){V(this,0,lg(this,U(this,0),Hg(this)))},2:function(){ng(this,U(this,0),Hg(this))},3:function(){ng(this,U(this,0),
Hg(this))&&Pg(this)},4:function(){V(this,0,kg(this,U(this,0),Hg(this)))},5:function(){V(this,0,kg(this,Hg(this),U(this,0)))},6:function(){V(this,0,mg(this,U(this,0),Hg(this)))},7:function(){V(this,0,mg(this,Hg(this),U(this,0)))}},219:{0:function(){Qg(this,Hg(this))},2:function(){null!=og(this,U(this,0),2147483648)&&this.pi()},3:function(){null!=og(this,U(this,0),2147483648)&&(this.pi(),Pg(this))},5:function(){Qg(this,Mg(this,Kg(this)))},7:function(){Eg(this,0)&&(Lg(this),Pg(this))},64:function(){8087==
@ -280,7 +280,7 @@ this.D;break;case 131:c=S(this,this.H+T(this));this.C=this.D;break;case 132:c=S(
function Dj(a){var b=this.xa(),c=b>>6,d,e;switch(b>>3&7){case 0:d=this.G;break;case 1:d=this.I;break;case 2:d=this.M;break;case 3:d=this.H;break;case 4:d=0;break;case 5:d=this.P;break;case 6:d=this.K;break;case 7:d=this.J}switch(b&7){case 0:e=this.G;break;case 1:e=this.I;break;case 2:e=this.M;break;case 3:e=this.H;break;case 4:e=I(this);this.ka=this.Ka;break;case 5:a?(e=this.P,this.ka=this.Ka):e=T(this);break;case 6:e=this.K;break;case 7:e=this.J}return(d<<c)+e|0}
function ge(){this.tc[this.xa()].call(this)}function je(){J(this,I(this)&this.R);this.A-=this.B.Sc}function Id(){this.U=this.fa;var a=I(this)&this.R;J(this,this.G&this.R);J(this,this.I&this.R);J(this,this.M&this.R);J(this,this.H&this.R);J(this,a);J(this,this.P&this.R);J(this,this.K&this.R);J(this,this.J&this.R);this.A-=this.B.Wj;this.U=-1}
function Jd(){this.U=this.fa;this.J=this.J&~this.R|D(this);this.K=this.K&~this.R|D(this);this.P=this.P&~this.R|D(this);G(this,I(this)+this.ba);this.H=this.H&~this.R|D(this);this.M=this.M&~this.R|D(this);this.I=this.I&~this.R|D(this);this.G=this.G&~this.R|D(this);this.A-=this.B.Uj;this.U=-1}function Kd(){this.V.call(this,Ah)}function ke(){!(this.Za&1)||this.ca&131072?C.call(this,6):this.ea.call(this,zh)}function le(){this.S|=20;this.ka=this.Ka=this.Nb;this.A-=this.B.nd}
function me(){this.S|=20;this.ka=this.Ka=this.Ob;this.A-=this.B.nd}function ne(){this.S|=1024;this.Ia&1024||(this.ba^=6,this.R^=-65536,Te(this));this.A-=this.B.nd}function oe(){this.S|=2048;this.Ia&2048||(this.Nc^=6,this.Ba^=-65536,ye(this));this.A-=this.B.nd}function Ld(){J(this,this.Ma());this.A-=this.B.Sc}function Md(){this.V.call(this,Sh)}function Nd(){J(this,this.T());this.A-=this.B.Sc}function Od(){this.V.call(this,Qh)}
function me(){this.S|=20;this.ka=this.Ka=this.Ob;this.A-=this.B.nd}function ne(){this.S|=1024;this.Ia&1024||(this.ba^=6,this.R^=-65536,cf(this));this.A-=this.B.nd}function oe(){this.S|=2048;this.Ia&2048||(this.Nc^=6,this.Ba^=-65536,ye(this));this.A-=this.B.nd}function Ld(){J(this,this.Ma());this.A-=this.B.Sc}function Md(){this.V.call(this,Sh)}function Nd(){J(this,this.T());this.A-=this.B.Sc}function Od(){this.V.call(this,Qh)}
function Pd(){var a=1,b=0,c=this.Ba,d=5;this.Ia&192&&(a=this.I&c,b=1,this.Ia&256&&(d=4));if(a--){var e=this.M&65535;Jf(this,e,1,!0)&&(e=mc(this.ga,e,1,this.Ha-b-1),this.qc(this.Xa.nc(this.J&c,1),e),this.J=this.J&~c|this.J+(this.ca&1024?-1:1)&c,this.I=this.I&~c|this.I-b&c,this.A-=d,a&&(pf(this),this.S|=256))}}
function Qd(){var a=1,b=0,c=this.Ba,d=5;this.Ia&192&&(a=this.I&c,b=1,this.Ia&256&&(d=4));if(a--){var e=this.M&65535;Jf(this,e,this.ba,!0)&&(e=mc(this.ga,e,this.ba,this.Ha-b-1),this.rc(this.Xa.nc(this.J&c,this.ba),e),this.J=this.J&~c|this.J+(this.ca&1024?-this.ba:this.ba)&c,this.I=this.I&~c|this.I-b&c,this.A-=d,a&&(pf(this),this.S|=256))}}
function Rd(){var a=1,b=0,c=this.Ba,d=5;this.Ia&192&&(a=this.I&c,b=1,this.Ia&256&&(d=4));if(a--){var e=this.M&65535;if(Jf(this,e,1,!1)){var f=this.Qa(this.vb.mc(this.K&c,1));qc(this.ga,e,1,f,this.Ha-b-1);this.K=this.K&~c|this.K+(this.ca&1024?-1:1)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(pf(this),this.S|=256)}}}
@ -747,7 +747,7 @@ function Hr(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){
function Ir(a,b,c){var d=null;if(b=oq(a,b,!0)){a.bc(b);var e=xr(a,b,!0);if(e.length){var f,g;e[0]&&(g="",(f=b.Ra-e[1])&&(g=" + "+u(f)),f=e[0]+" ("+Rq(e[1],b.Z)+")"+g,c&&a.O(f),d=f);4<e.length&&e[4]&&(g="",(f=e[5]-b.Ra)&&(g=" - "+u(f)),f=e[4]+" ("+Rq(e[5],b.Z)+")"+g,c&&a.O(f),d||(d=f))}else c&&a.O("no symbols")}return d}
function Jr(a,b){if(b[1]&&"?"!=b[1]){var c="json"==b[1],d,e=0,f=0,g=c?{}:oq(a,b[1]);if(g&&(d=mq(a,b[2],"drive #"),void 0!==d)){if(!c){e=mq(a,b[3],"sector #");if(void 0===e)return;f=mq(a,b[4],"# of sectors");void 0===f&&(f=1)}var h=a.kc;2<=d&&a.Db&&(d-=2,h=a.Db);if(h){var k=h.Ki(d);if(k)if(k.za)if(c)Fr(a),a.O(k.za.toJSON());else if(h.qk(k,e,f)){for(var l=0,n=!1,c=ar(g);!n&&0<k.Hb--;)(function(a,b){h.He(k,function(c){0>c?(a.O("out of data at address "+ar(b)),n=!0):(a.qc(b,c,1,!0),l++)})})(a,g);Wc(a.F,
!0);a.O(l+" bytes read at "+c)}else a.O("sector "+e+" request out of range");else a.O("drive "+d+" not loaded");else a.O("invalid drive: "+d)}else a.O("disk controller not present")}}else a.O("load commands:"),a.O("\tl [address] [drive #] [sector #] [# sectors]")}
function nr(a,b){var c;if(b&&"?"==b[1])a.O("register commands:"),a.O("\tr\tdump registers"),a.Tb&&a.O("\trfp\tdump floating-point registers"),a.O("\trp\tdump all registers"),a.O("\trx [#]\tset flag or register x to [#]");else{var d;null==c&&(c=!0);if(null!=b&&1<b.length){var e=b[1];if(a.Tb&&"fp"==e){c=a.Tb;d=ag(c);for(var f=c.ic,g=0;8>g;g++){var h=c,e=null;if(g<h.X.length){var e=[],k=h.B+g&7;e[0]=k;e[1]=Bg(h,k);e[2]=h.X[k];k<<=1;e[3]=h.aa[k];e[4]=h.aa[k+1];h=Fg(h,e[3],e[4]);e[5]=h[0];e[6]=h[1];e[7]=
function nr(a,b){var c;if(b&&"?"==b[1])a.O("register commands:"),a.O("\tr\tdump registers"),a.Tb&&a.O("\trfp\tdump floating-point registers"),a.O("\trp\tdump all registers"),a.O("\trx [#]\tset flag or register x to [#]");else{var d;null==c&&(c=!0);if(null!=b&&1<b.length){var e=b[1];if(a.Tb&&"fp"==e){c=a.Tb;d=ag(c);for(var f=c.ic,g=0;8>g;g++){var h=c,e=null;if(g<h.X.length){var e=[],k=h.B+g&7;e[0]=k;e[1]=pg(h,k);e[2]=h.X[k];k<<=1;e[3]=h.aa[k];e[4]=h.aa[k+1];h=Fg(h,e[3],e[4]);e[5]=h[0];e[6]=h[1];e[7]=
h[2]}if(!e)break;a.O("ST"+g+": "+ma(e[2].toFixed(15),24,!0)+" "+r(e[4])+","+r(e[3])+" ["+e[0]+":"+Dq[e[1]]+"]")}a.O(" B3SSS210ESPUOZDI xxxIRRPPIxPUOZDI");a.O("SW: "+da(d,16)+" ("+u(d)+") CW: "+da(f,16)+" ("+u(f)+")");return}if("p"==e)d=80286<=a.F.ja;else{f=null;g=e.indexOf("=");if(0<g)f=e.substr(g+1),e=e.substr(0,g);else if(2<b.length)f=b[2];else{a.O("missing value for "+b[1]);return}g=!1;h=kq(a,f);if(void 0!==h)switch(g=!0,k=e.toUpperCase(),"E"==k.charAt(0)&&4>=a.Ja&&(k=null),
k){case "AL":a.F.G=a.F.G&-256|h&255;break;case "AH":a.F.G=a.F.G&-65281|h<<8&255;break;case "AX":a.F.G=a.F.G&-65536|h&65535;break;case "BL":a.F.H=a.F.H&-256|h&255;break;case "BH":a.F.H=a.F.H&-65281|h<<8&255;break;case "BX":a.F.H=a.F.H&-65536|h&65535;break;case "CL":a.F.I=a.F.I&-256|h&255;break;case "CH":a.F.I=a.F.I&-65281|h<<8&255;break;case "CX":a.F.I=a.F.I&-65536|h&65535;break;case "DL":a.F.M=a.F.M&-256|h&255;break;case "DH":a.F.M=a.F.M&-65281|h<<8&255;break;case "DX":a.F.M=a.F.M&-65536|h&65535;
break;case "SP":G(a.F,I(a.F)&-65536|h&65535);break;case "BP":a.F.P=a.F.P&-65536|h&65535;break;case "SI":a.F.K=a.F.K&-65536|h&65535;break;case "DI":a.F.J=a.F.J&-65536|h&65535;break;case "DS":wd(a.F,h);break;case "ES":xd(a.F,h);break;case "SS":ld(a.F,h);break;case "CS":mf(a.F,h);a.aa=tq(a,K(a.F),a.F.va.Z);break;case "IP":case "EIP":O(a.F,h);a.aa=tq(a,K(a.F),a.F.va.Z);break;case "PC":case "PS":zd(a.F,h);break;case "C":h?yf(a.F):zf(a.F);break;case "P":h?(e=a.F,e.resultType&=-3,e.ca|=4):(e=a.F,e.resultType&=
@ -762,24 +762,24 @@ oq(a,g[1],!0);if(q)if(a.ua=q,void 0===g[2])a.O("begin assemble at "+ar(q)),a.Da=
a.O("\tbc [a]\tclear breakpoint at addr [a]"),a.O("\tbl\tlist all breakpoints"),a.O("\tbn [n]\tbreak after [n] instruction(s)");else{var H=F.charAt(1);if("l"==H){var L=0,L=L+tr(a,a.A),L=L+tr(a,a.ra);(L+=tr(a,a.fa))||a.O("no breakpoints")}else if("n"==H)a.Oa=mq(a,v),a.O("break after "+a.Oa+" instruction(s)");else if(void 0===v)a.O("missing breakpoint address");else{var W={};if("*"!=v&&(W=oq(a,v,!0,!0),!W))break a;v=null==W.Ra?v:u(W.Ra);"c"==H?null==W.Ra?(uq(a),a.O("all breakpoints cleared")):$q(a,
a.A,W)||$q(a,a.ra,W)||$q(a,a.fa,W)||a.O("breakpoint missing: "+ar(W)):"i"==H?a.O("breakpoint "+(kc(a.ga,W.Ra)?"enabled":"cleared")+": port "+v+" (input)"):"o"==H?a.O("breakpoint "+(oc(a.ga,W.Ra)?"enabled":"cleared")+": port "+v+" (output)"):null!=W.Ra&&(hr(a,W,E),"p"==H?a.Rd(a.A,W):"r"==H?a.Rd(a.ra,W):"w"==H?a.Rd(a.fa,W):a.O("unknown breakpoint command: "+H))}}}break;case "c":Fr(a);break;case "d":a:{var P=g,bb,ia=P[0],ja=P[1],Ha=P[2],Xa=P[3];if("?"==ja){var Ba="";for(bb in Bb)a.$a[bb]&&(Ba&&(Ba+=
","),Ba+=bb);Ba+=",state,symbols";a.O("dump memory commands:");a.O("\tdb [a] [#] dump # bytes at address a");a.O("\tdw [a] [#] dump # words at address a");a.O("\tdd [a] [#] dump # dwords at address a");a.O("\tdh [#] [#] dump # instructions from history");a.O("\tdi [#] dump descriptor info for IDT #");a.O("\tds [#] dump descriptor info for selector #");Ba.length&&a.O("dump extension commands:\n\t"+Ba)}else if("state"==ja){var Wb=Nr(a.X,!0);"console"==Ha?console.log(Wb):(Fr(a),
a.O(Wb))}else if("symbols"==ja)for(var wa=0;wa<a.B.length;wa++){var Vd=a.B[wa],Sc;for(Sc in Vd.Qd)if("."!=Sc.charAt(0)){var Wd=Vd.Qd[Sc],Ie=Wd.o;if(void 0!==Ie){var Xd=Wd.s;void 0===Xd&&(Xd=Vd.Z);var Je=Vd.Qd[Sc].l;Je&&(Sc=Je);a.O(Rq(Ie,Xd)+" "+Sc)}}}else{if("ds"==ia||"dg"==ia||"dl"==ia)ia="d",P=[ia,"desc",ja];"d"==ia&&"page"==ja&&(ia="dp",P.shift());if("dp"==ia){P.shift();var li=P[0];if(li){var Ue=a.bc(oq(a,li));if(-1===Ue)a.O("invalid address: "+li);else{var ae,Da=null;if(80386<=a.F.ja){var be=
a.ga,Da={};Da.fk=(Ue&-4194304)>>>20;Da.xi=a.F.Od+Da.fk;Da.yb=be.sa[(Da.xi&be.Gb)>>>be.La];Da.Yi=Da.yb.Md(Da.fk);Da.gk=(Ue&4190208)>>>10;Da.yi=(Da.Yi&-4096)+Da.gk;Da.zb=be.sa[(Da.yi&be.Gb)>>>be.La];Da.Zi=Da.zb.Md(Da.gk);Da.Jk=(Da.Zi&-4096)+(Ue&4095)}if(ae=Da){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var pd="%"+r(Ue),pd=pd+(" %%"+jr(ae.xi,ae.Yi)),pd=pd+(" %%"+jr(ae.yi,ae.Zi,!0)),
a.O(Wb))}else if("symbols"==ja)for(var wa=0;wa<a.B.length;wa++){var Vd=a.B[wa],Sc;for(Sc in Vd.Qd)if("."!=Sc.charAt(0)){var Wd=Vd.Qd[Sc],Ie=Wd.o;if(void 0!==Ie){var Xd=Wd.s;void 0===Xd&&(Xd=Vd.Z);var Je=Vd.Qd[Sc].l;Je&&(Sc=Je);a.O(Rq(Ie,Xd)+" "+Sc)}}}else{if("ds"==ia||"dg"==ia||"dl"==ia)ia="d",P=[ia,"desc",ja];"d"==ia&&"page"==ja&&(ia="dp",P.shift());if("dp"==ia){P.shift();var li=P[0];if(li){var Te=a.bc(oq(a,li));if(-1===Te)a.O("invalid address: "+li);else{var ae,Da=null;if(80386<=a.F.ja){var be=
a.ga,Da={};Da.fk=(Te&-4194304)>>>20;Da.xi=a.F.Od+Da.fk;Da.yb=be.sa[(Da.xi&be.Gb)>>>be.La];Da.Yi=Da.yb.Md(Da.fk);Da.gk=(Te&4190208)>>>10;Da.yi=(Da.Yi&-4096)+Da.gk;Da.zb=be.sa[(Da.yi&be.Gb)>>>be.La];Da.Zi=Da.zb.Md(Da.gk);Da.Jk=(Da.Zi&-4096)+(Te&4095)}if(ae=Da){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var pd="%"+r(Te),pd=pd+(" %%"+jr(ae.xi,ae.Yi)),pd=pd+(" %%"+jr(ae.yi,ae.Zi,!0)),
pd=pd+(" %%"+r(ae.Jk));a.O(pd)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==ia){if("disk"==ja){P[0]="l";P[1]="json";Jr(a,P);break a}for(bb in Bb)if(P[1]==bb){var Dn=a.$a[bb];Dn?(P.shift(),P.shift(),Dn(P)):a.O("no dump registered for "+ja);break a}ja||(ia=a.uc||"db")}else a.uc=ia;if("dh"==ia){var En=ja,Fn=Ha,Gn="",Hn=0,tb=a.Fa,tc=a.ia;if(tc.length){var Eb=+En||a.Jb,ce=+Fn||10;isNaN(Eb)?Eb=ce:Gn="more ";Eb>tc.length&&(a.O("note: only "+tc.length+" available"),Eb=tc.length);
tb-=Eb;0>tb&&(null==tc[tc.length-1].Z?(Eb=tb+Eb,tb=0):tb+=tc.length);var mi=[];"call"==Fn&&(ce=1E5,mi=["CALL"]);for(void 0!==En&&a.O(Eb+" instructions earlier:");0<ce&&tb!=a.Fa;){var qd=tc[tb++];if(null==qd.Z)break;var Ve=tq(a,qd.Ra,qd.Z,qd.Ea,qd.type,qd.Rb,qd.oc),gs=Eb--,In=vr(a,Ve,"history",gs);(!mi.length||0<=In.indexOf(mi[0]))&&a.O(In);Ve.Se&&(tb+=Ve.Se,ce-=Ve.Se,Eb-=Ve.Se);tb>=tc.length&&(tb=0);a.Jb=Eb;Hn++;ce--}}Hn||(a.O("no "+Gn+"history available"),a.Jb=void 0)}else if("di"==ia){P.shift();
var ni=P[0];if(ni){var We=mq(a,ni);if(void 0===We||0>We||255<We)a.O("invalid vector: "+ni);else{var Jn="&",Kn=!!(a.F.Za&1),Ln=!1,pg=a.F.Lc+(We<<(Kn?3:2)),oi=a.F.na(pg+0),hs=a.F.na(pg+2);Kn&&(Jn="#",a.F.na(pg+4)&2048&&(Ln=!0,oi|=a.F.na(pg+6)<<16));a.O("dumpIDT("+u(We)+"): "+Jn+r(hs,4)+":"+r(oi,Ln?8:4))}}else a.O("no IDT vector")}else if("dt"==ia)P.shift(),a.O("no information");else{var de=oq(a,ja);if(de&&(null!=de.Z||null!=de.Ea)){var qg=0;Ha&&("l"==Ha.charAt(0)&&(Ha=Ha.substr(1)||Xa),qg=mq(a,Ha)>>>
0,65536<qg&&(qg=65536));for(var rd="",rg="dd"==ia?4:"dw"==ia?2:1,sg=rg*qg||128,is=sg+15>>4||1;is--&&0<sg;){var tg=0,pi=0,Xe,Ye="",qi="",ja=ar(de);for(Xe=16;0<Xe&&0<sg;Xe--){var ug=a.Qa(de,1),tg=tg|ug<<(pi++<<3);pi==rg&&(Ye+=r(tg,2*rg),Ye+=1==rg?9==Xe?"-":" ":" ",tg=pi=0);qi+=32<=ug&&128>ug?String.fromCharCode(ug):".";sg--}rd&&(rd+="\n");rd+=ja+" "+Ye+(0==Xe?" "+qi:"")}rd&&a.O(rd);a.sb=de}}}}}break;case "e":if("else"==g[0])break;var vg=1,Mn=255,Nn=a.Qa,On=a.qc;"ew"==g[0]&&(vg=2,Mn=65535,Nn=a.na,
On=a.jb);var Pn=vg<<1,Qn=g[1];if(null==Qn)a.O("edit memory commands:"),a.O("\teb [a] [...] edit bytes at address a"),a.O("\tew [a] [...] edit words at address a");else{var wg=oq(a,Qn);if(wg)for(var xg=2;xg<g.length;xg++){var Ze=kq(a,g[xg]);if(void 0===Ze){a.O("unrecognized value: "+g[xg]);break}Ze&~Mn&&a.O("warning: "+r(Ze)+" exceeds "+vg+"-byte value");var js=Nn.call(a,wg);a.O("changing "+ar(wg)+" from 0x"+r(js,Pn)+" to 0x"+r(Ze,Pn));On.call(a,wg,Ze,vg)}}break;case "f":Gr(a,g[1]);break;case "g":a:{var Rn=
g[1],ks=b;"gt"==g[0]&&(a.cb=!0);if(void 0!==Rn){var ri=oq(a,Rn,!0);if(!ri)break a;hr(a,ri,ks);a.Rd(a.A,ri,!0)}a.Je(!0)||c||a.O("cpu busy or unavailable, run command ignored")}break;case "h":a:{var si;if(a.la.Ib)si="halting",a.Wb();else{if(sb(a,!0))break a;si="already halted"}c||a.O(si)}break;case "i":if("if"==g[0]){var ti;var $e=b.substr(2),$e=na($e);kq(a,$e)?(c||a.O("true: "+$e),ti=!0):(c||a.O("false: "+$e),ti=!1);ti||(d=!1);break}if("int"==g[0]){var yg;a:switch(mq(a,g[1])){case 19:mk(a,19,a.F.Ha,
!0);a.ya=a.pa;yg=!0;break a;case 33:mk(a,33,a.F.Ha,!0);a.ya=a.pa;yg=!0;break a;default:yg=!1}yg||(d=!1);break}var ui=g[1];if(ui&&"?"!=ui){var vi=mq(a,ui);if(void 0!==vi){var ls=mc(a.ga,vi,1);a.O(u(vi)+": "+t(ls))}}else a.O("input commands:"),a.O("\ti [p]\tread port [p]"),a.O("warning: port accesses can affect hardware state");break;case "k":var ms=g[0];if("?"==g[1])a.O("stack trace commands:"),a.O("\tk\tshow frame addresses"),a.O("\tks\tshow symbol information");else{var wi=0,Sn=a.F.va.Z,af=tq(a),
Uc=tq(a,I(a.F),a.F.ta.Z);for(a.O("stack trace for "+ar(Uc));10>wi;){for(var uc=null,ns=256;Uc.Ra>>>0<a.F.Ng>>>0;){af.Ra=a.tb(Uc,!0);if(null==Uc.Ea||!ns--)break;af.Z=Sn;if(uc=Lr(a,af))break;af.Z=a.tb(Uc);if(uc=Lr(a,af,!0)){Sn=a.tb(Uc,!0);0<uc.indexOf("INT")&&a.tb(Uc,!0);break}}if(!uc||null==uc)break;var Tn=null;if("ks"==ms){var Un=uc.match(/[0-9A-F]+$/);Un&&(Tn=Ir(a,Un[0]))}uc=ma(uc,50)+" ;"+(Tn||"stack="+ar(Uc));a.O(uc);wi++}wi||a.O("no return addresses found")}break;case "l":if("ln"==g[0]){Ir(a,
g[1],!0);break}Jr(a,g);break;case "m":if("mouse"==g[0]){var xi=g[1],zg=g[2];if(a.V){var Vn=1;"-"==zg.charAt(0)&&(Vn=-1,zg=zg.substr(1));var sd=mq(a,zg,xi);if(void 0!==sd)switch(sd=sd*Vn|0,xi){case "x":a.V.Hf(sd,0);break;case "y":a.V.Hf(0,sd);break;case "click":a.V.he(sd,!0);a.V.he(sd,!1);break;default:a.O("unknown action: "+xi)}}else a.O("no mouse");break}a:{var vc,wc=null,Oa=g[1];"?"==Oa&&(Oa=void 0);if(void 0!==Oa){var td=0;if("all"==Oa)td=1610481663,Oa=null;else if("on"==Oa)wc=!0,Oa=null;else if("off"==
tb-=Eb;0>tb&&(null==tc[tc.length-1].Z?(Eb=tb+Eb,tb=0):tb+=tc.length);var mi=[];"call"==Fn&&(ce=1E5,mi=["CALL"]);for(void 0!==En&&a.O(Eb+" instructions earlier:");0<ce&&tb!=a.Fa;){var qd=tc[tb++];if(null==qd.Z)break;var Ue=tq(a,qd.Ra,qd.Z,qd.Ea,qd.type,qd.Rb,qd.oc),gs=Eb--,In=vr(a,Ue,"history",gs);(!mi.length||0<=In.indexOf(mi[0]))&&a.O(In);Ue.Se&&(tb+=Ue.Se,ce-=Ue.Se,Eb-=Ue.Se);tb>=tc.length&&(tb=0);a.Jb=Eb;Hn++;ce--}}Hn||(a.O("no "+Gn+"history available"),a.Jb=void 0)}else if("di"==ia){P.shift();
var ni=P[0];if(ni){var Ve=mq(a,ni);if(void 0===Ve||0>Ve||255<Ve)a.O("invalid vector: "+ni);else{var Jn="&",Kn=!!(a.F.Za&1),Ln=!1,qg=a.F.Lc+(Ve<<(Kn?3:2)),oi=a.F.na(qg+0),hs=a.F.na(qg+2);Kn&&(Jn="#",a.F.na(qg+4)&2048&&(Ln=!0,oi|=a.F.na(qg+6)<<16));a.O("dumpIDT("+u(Ve)+"): "+Jn+r(hs,4)+":"+r(oi,Ln?8:4))}}else a.O("no IDT vector")}else if("dt"==ia)P.shift(),a.O("no information");else{var de=oq(a,ja);if(de&&(null!=de.Z||null!=de.Ea)){var rg=0;Ha&&("l"==Ha.charAt(0)&&(Ha=Ha.substr(1)||Xa),rg=mq(a,Ha)>>>
0,65536<rg&&(rg=65536));for(var rd="",sg="dd"==ia?4:"dw"==ia?2:1,tg=sg*rg||128,is=tg+15>>4||1;is--&&0<tg;){var ug=0,pi=0,We,Xe="",qi="",ja=ar(de);for(We=16;0<We&&0<tg;We--){var vg=a.Qa(de,1),ug=ug|vg<<(pi++<<3);pi==sg&&(Xe+=r(ug,2*sg),Xe+=1==sg?9==We?"-":" ":" ",ug=pi=0);qi+=32<=vg&&128>vg?String.fromCharCode(vg):".";tg--}rd&&(rd+="\n");rd+=ja+" "+Xe+(0==We?" "+qi:"")}rd&&a.O(rd);a.sb=de}}}}}break;case "e":if("else"==g[0])break;var wg=1,Mn=255,Nn=a.Qa,On=a.qc;"ew"==g[0]&&(wg=2,Mn=65535,Nn=a.na,
On=a.jb);var Pn=wg<<1,Qn=g[1];if(null==Qn)a.O("edit memory commands:"),a.O("\teb [a] [...] edit bytes at address a"),a.O("\tew [a] [...] edit words at address a");else{var xg=oq(a,Qn);if(xg)for(var yg=2;yg<g.length;yg++){var Ye=kq(a,g[yg]);if(void 0===Ye){a.O("unrecognized value: "+g[yg]);break}Ye&~Mn&&a.O("warning: "+r(Ye)+" exceeds "+wg+"-byte value");var js=Nn.call(a,xg);a.O("changing "+ar(xg)+" from 0x"+r(js,Pn)+" to 0x"+r(Ye,Pn));On.call(a,xg,Ye,wg)}}break;case "f":Gr(a,g[1]);break;case "g":a:{var Rn=
g[1],ks=b;"gt"==g[0]&&(a.cb=!0);if(void 0!==Rn){var ri=oq(a,Rn,!0);if(!ri)break a;hr(a,ri,ks);a.Rd(a.A,ri,!0)}a.Je(!0)||c||a.O("cpu busy or unavailable, run command ignored")}break;case "h":a:{var si;if(a.la.Ib)si="halting",a.Wb();else{if(sb(a,!0))break a;si="already halted"}c||a.O(si)}break;case "i":if("if"==g[0]){var ti;var Ze=b.substr(2),Ze=na(Ze);kq(a,Ze)?(c||a.O("true: "+Ze),ti=!0):(c||a.O("false: "+Ze),ti=!1);ti||(d=!1);break}if("int"==g[0]){var zg;a:switch(mq(a,g[1])){case 19:mk(a,19,a.F.Ha,
!0);a.ya=a.pa;zg=!0;break a;case 33:mk(a,33,a.F.Ha,!0);a.ya=a.pa;zg=!0;break a;default:zg=!1}zg||(d=!1);break}var ui=g[1];if(ui&&"?"!=ui){var vi=mq(a,ui);if(void 0!==vi){var ls=mc(a.ga,vi,1);a.O(u(vi)+": "+t(ls))}}else a.O("input commands:"),a.O("\ti [p]\tread port [p]"),a.O("warning: port accesses can affect hardware state");break;case "k":var ms=g[0];if("?"==g[1])a.O("stack trace commands:"),a.O("\tk\tshow frame addresses"),a.O("\tks\tshow symbol information");else{var wi=0,Sn=a.F.va.Z,$e=tq(a),
Uc=tq(a,I(a.F),a.F.ta.Z);for(a.O("stack trace for "+ar(Uc));10>wi;){for(var uc=null,ns=256;Uc.Ra>>>0<a.F.Ng>>>0;){$e.Ra=a.tb(Uc,!0);if(null==Uc.Ea||!ns--)break;$e.Z=Sn;if(uc=Lr(a,$e))break;$e.Z=a.tb(Uc);if(uc=Lr(a,$e,!0)){Sn=a.tb(Uc,!0);0<uc.indexOf("INT")&&a.tb(Uc,!0);break}}if(!uc||null==uc)break;var Tn=null;if("ks"==ms){var Un=uc.match(/[0-9A-F]+$/);Un&&(Tn=Ir(a,Un[0]))}uc=ma(uc,50)+" ;"+(Tn||"stack="+ar(Uc));a.O(uc);wi++}wi||a.O("no return addresses found")}break;case "l":if("ln"==g[0]){Ir(a,
g[1],!0);break}Jr(a,g);break;case "m":if("mouse"==g[0]){var xi=g[1],Ag=g[2];if(a.V){var Vn=1;"-"==Ag.charAt(0)&&(Vn=-1,Ag=Ag.substr(1));var sd=mq(a,Ag,xi);if(void 0!==sd)switch(sd=sd*Vn|0,xi){case "x":a.V.Hf(sd,0);break;case "y":a.V.Hf(0,sd);break;case "click":a.V.he(sd,!0);a.V.he(sd,!1);break;default:a.O("unknown action: "+xi)}}else a.O("no mouse");break}a:{var vc,wc=null,Oa=g[1];"?"==Oa&&(Oa=void 0);if(void 0!==Oa){var td=0;if("all"==Oa)td=1610481663,Oa=null;else if("on"==Oa)wc=!0,Oa=null;else if("off"==
Oa)wc=!1,Oa=null;else{"keys"==Oa&&(Oa="key");"kbd"==Oa&&(Oa="keyboard");for(vc in Bb)if(Oa==vc){td=Bb[vc];wc=!!(a.wc&td);break}if(!td){a.O("unknown message category: "+Oa);break a}}td&&("on"==g[2]?(a.wc|=td,wc=!0):"off"==g[2]&&(a.wc&=~td,wc=!1))}var os=0,Vc="";for(vc in Bb)if(!Oa||Oa==vc){var ps=!!(a.wc&Bb[vc]);if(null===wc||wc==ps)Vc&&(Vc+=","),++os%10||(Vc+="\n\t"),"key"==vc&&(vc="keys"),Vc+=vc}void 0===Oa&&a.O("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.O((null!==wc?
wc?"messages on: ":"messages off: ":"message categories:\n\t")+(Vc||"none"));vq(a)}break;case "o":var yi=g[1],qs=g[2];if(yi&&"?"!=yi){var zi=mq(a,yi,"port #"),Ai=mq(a,qs);void 0!==zi&&void 0!==Ai&&(qc(a.ga,zi,1,Ai),a.O(u(zi)+": "+t(Ai)))}else a.O("output commands:"),a.O("\to [p] [b]\twrite byte [b] to port [p]"),a.O("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){Kr(a,b.substr(5));break}var Wn="pr"==g[0]?1:0,ee=1+Wn;if(a.N)a.O("step in progress");else{var Ag,
Xn=!1,lb=tq(a,K(a.F),a.F.va.Z);do switch(Ag=!1,a.Qa(lb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:cr(a,lb,1);Ag=!0;break;case 204:case 206:a.N=ee;cr(a,lb,1);break;case 205:case 224:case 225:case 226:a.N=ee;cr(a,lb,lb.Rb?4:2);break;case 232:a.N=ee;cr(a,lb,lb.Rb?5:3);break;case 154:a.N=ee;cr(a,lb,lb.Rb?7:5);break;case 255:var Yn=a.tb(lb)&14591;if(4351==Yn||6399==Yn)a.N=ee,vr(a,lb);break;case 243:case 242:cr(a,lb,1);Xn=Ag=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:Xn&&
(a.N=ee,cr(a,lb,1))}while(Ag);a.N?(a.Rd(a.A,lb,!0),a.Je()||(a.X&&a.X.wd(),a.N=0)):Mr(a,Wn?"tr":"t")}break;case "r":if("reset"==b){a.X&&a.X.reset();break}nr(a,g);break;case "t":Mr(a,g[0],g[1]);break;case "u":or(a,g[1],g[2],8);break;case "v":if("var"==g[0]){Hr(a,b.substr(3))||(d=!1);break}a.O("PCx86 version 1.30.0 ("+a.F.ja+",RELEASE,NOPREFETCH"+(xb?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)");a.O(za());break;case "x":a:if(g[1]&&"?"!=g[1])switch(g[1]){case "cs":var bf;void 0!==g[3]&&(bf=+g[3]);switch(g[2]){case "int":a.F.Y.hf=
bf;break;case "start":a.F.Y.Jf=bf;break;case "stop":a.F.Y.kf=bf;break;default:a.O("unknown cs option");break a}void 0!==bf&&Tc(a.F);a.O("checksums "+(a.F.la.We?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(Zc(a.F,+g[2])||a.O("warning: using 1x multiplier, previous target not reached"));a.O("target speed: "+(a.F.Y.De.toFixed(2)+"Mhz")+" ("+a.F.Y.Wd+"x)");break;default:a.O("unknown option: "+g[1])}else a.O("execution options:"),a.O("\tcs int #\tset checksum cycle interval to #"),a.O("\tcs start #\tset checksum cycle start count to #"),
a.O("\tcs stop #\tset checksum cycle stop count to #"),a.O("\tsp #\t\tset speed multiplier to #");break;case "?":if(g[1]){Kr(a,b.substr(1));break}var cf="commands:",Bi;for(Bi in Aq)cf+="\n"+ma(Bi,7)+Aq[Bi];Vf(a)||(cf+="\nnote: frequency/history disabled if no exec breakpoints");a.O(cf);break;default:a.O("unknown command: "+b),d=!1}}}catch(Zn){a.O("debugger error: "+(Zn.stack||Zn.message)),d=!1}return d}function xq(a,b,c){b=ir(a,b,c);for(var d in b)if(!ur(a,b[+d]))return!1;return!0}
Sa(function(){for(var a=pb(document,"pcx86","debugger"),b=0;b<a.length;b++){var c=a[b],d=mb(c),d=new hq(d);ob(d,c)}});
wc?"messages on: ":"messages off: ":"message categories:\n\t")+(Vc||"none"));vq(a)}break;case "o":var yi=g[1],qs=g[2];if(yi&&"?"!=yi){var zi=mq(a,yi,"port #"),Ai=mq(a,qs);void 0!==zi&&void 0!==Ai&&(qc(a.ga,zi,1,Ai),a.O(u(zi)+": "+t(Ai)))}else a.O("output commands:"),a.O("\to [p] [b]\twrite byte [b] to port [p]"),a.O("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){Kr(a,b.substr(5));break}var Wn="pr"==g[0]?1:0,ee=1+Wn;if(a.N)a.O("step in progress");else{var Bg,
Xn=!1,lb=tq(a,K(a.F),a.F.va.Z);do switch(Bg=!1,a.Qa(lb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:cr(a,lb,1);Bg=!0;break;case 204:case 206:a.N=ee;cr(a,lb,1);break;case 205:case 224:case 225:case 226:a.N=ee;cr(a,lb,lb.Rb?4:2);break;case 232:a.N=ee;cr(a,lb,lb.Rb?5:3);break;case 154:a.N=ee;cr(a,lb,lb.Rb?7:5);break;case 255:var Yn=a.tb(lb)&14591;if(4351==Yn||6399==Yn)a.N=ee,vr(a,lb);break;case 243:case 242:cr(a,lb,1);Xn=Bg=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:Xn&&
(a.N=ee,cr(a,lb,1))}while(Bg);a.N?(a.Rd(a.A,lb,!0),a.Je()||(a.X&&a.X.wd(),a.N=0)):Mr(a,Wn?"tr":"t")}break;case "r":if("reset"==b){a.X&&a.X.reset();break}nr(a,g);break;case "t":Mr(a,g[0],g[1]);break;case "u":or(a,g[1],g[2],8);break;case "v":if("var"==g[0]){Hr(a,b.substr(3))||(d=!1);break}a.O("PCx86 version 1.30.0 ("+a.F.ja+",RELEASE,NOPREFETCH"+(xb?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)");a.O(za());break;case "x":a:if(g[1]&&"?"!=g[1])switch(g[1]){case "cs":var af;void 0!==g[3]&&(af=+g[3]);switch(g[2]){case "int":a.F.Y.hf=
af;break;case "start":a.F.Y.Jf=af;break;case "stop":a.F.Y.kf=af;break;default:a.O("unknown cs option");break a}void 0!==af&&Tc(a.F);a.O("checksums "+(a.F.la.We?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(Zc(a.F,+g[2])||a.O("warning: using 1x multiplier, previous target not reached"));a.O("target speed: "+(a.F.Y.De.toFixed(2)+"Mhz")+" ("+a.F.Y.Wd+"x)");break;default:a.O("unknown option: "+g[1])}else a.O("execution options:"),a.O("\tcs int #\tset checksum cycle interval to #"),a.O("\tcs start #\tset checksum cycle start count to #"),
a.O("\tcs stop #\tset checksum cycle stop count to #"),a.O("\tsp #\t\tset speed multiplier to #");break;case "?":if(g[1]){Kr(a,b.substr(1));break}var bf="commands:",Bi;for(Bi in Aq)bf+="\n"+ma(Bi,7)+Aq[Bi];Vf(a)||(bf+="\nnote: frequency/history disabled if no exec breakpoints");a.O(bf);break;default:a.O("unknown command: "+b),d=!1}}}catch(Zn){a.O("debugger error: "+(Zn.stack||Zn.message)),d=!1}return d}function xq(a,b,c){b=ir(a,b,c);for(var d in b)if(!ur(a,b[+d]))return!1;return!0}
Sa(function(){for(var a=pb(document,"pcx86","debugger"),b=0;b<a.length;b++){var c=a[b],d=mb(c),d=new sq(d);ob(d,c)}});
function Or(a,b,c){Wa.call(this,"Computer",a,Or,67108864);this.la.hc=!1;Pr(this,b);this.fa=Qc(this,"autoPower",a);this.N=0;this.ra=a.busWidth||a.buswidth;this.A=Qr;this.aa=null;this.V=this.pa=!1;this.ua=Qc(this,"url")||"";this.ya=(Math.random()+.1).toString(36).substr(2,12);this.B=Rr(this);if(this.F=kb("CPU",this.id)){this.ha=kb("Debugger",this.id);this.L=[];for(b=null;b=Hb(this,"Video",b);)this.L.push(b);this.ga=new Ob({id:this.ce+".bus",busWidth:this.ra},this.F,this.ha);var d,e=ib(this.id);if((this.C=
kb("Panel",this.id))&&this.C.Df)for(b=0;b<e.length;b++)d=e[b],d.Na=this.C.Na,d.O=this.C.O,d.Df=this.C.Df;this.O("PCx86 v1.30.0\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.Hc&&d.Hc(this,this.ga,this.F,this.ha);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.W=d:this.A=parseInt(d,10));var f;if(a=Qc(this,"state")||(f=!0,a.state))b=this.ia=a,f||(this.V=!0,this.A=Qr),this.A&&(this.ea=new kf(this,
"1.30.0"),this.ea.load()?b=null:delete this.ea);!b&&this.A&&(b=Sr(this))&&(this.V=!0);if(b){var g=this;xa(b,null,!0,function(a,b,c){c?(g.W=null,g.V=!1,g.Na("Unable to load machine state from server (error "+c+(b?": "+na(b):"")+")")):(g.aa=b,g.pa=!0);ub(g)})}else ub(this);this.qa.power||(this.fa=!0);!c&&this.fa&&Tr(this,this.$f)}else w("Unable to find CPU component")}fb(Or);var Qr=0;m=Or.prototype;m.ff=function(){return this.ya};

View file

@ -60,7 +60,7 @@ if (DEBUGGER) {
* fTemporary:(boolean|undefined),
* sCmd:(string|undefined),
* aCmds:(Array.<string>|undefined)
* }}
* }} DbgAddr6502
*/
var DbgAddr6502;
@ -4780,7 +4780,7 @@ if (DEBUGGER) {
for (var iDbg = 0; iDbg < aeDbg.length; iDbg++) {
var eDbg = aeDbg[iDbg];
var parmsDbg = Component.getComponentParms(eDbg);
var dbg = new Debugger(parmsDbg);
var dbg = new Debugger6502(parmsDbg);
Component.bindComponentControls(dbg, eDbg, APPCLASS);
}
};

View file

@ -61,7 +61,7 @@ if (DEBUGGER) {
* fTemporary:(boolean|undefined),
* sCmd:(string|undefined),
* aCmds:(Array.<string>|undefined)
* }}
* }} DbgAddr8080
*/
var DbgAddr8080;

View file

@ -81,7 +81,7 @@ if (DEBUGGER) {
* fTempBreak:(boolean|undefined),
* sCmd:(string|undefined),
* aCmds:(Array.<string>|undefined)
* }}
* }} DbgAddrX86
*/
var DbgAddrX86;
@ -7771,7 +7771,7 @@ if (DEBUGGER) {
for (var iDbg = 0; iDbg < aeDbg.length; iDbg++) {
var eDbg = aeDbg[iDbg];
var parmsDbg = Component.getComponentParms(eDbg);
var dbg = new Debugger(parmsDbg);
var dbg = new DebuggerX86(parmsDbg);
Component.bindComponentControls(dbg, eDbg, PCX86.APPCLASS);
}
};

View file

@ -62,7 +62,7 @@ if (DEBUGGER) {
* fTemporary:(boolean|undefined),
* sCmd:(string|undefined),
* aCmds:(Array.<string>|undefined)
* }}
* }} DbgAddrPDP11
*/
var DbgAddrPDP11;

View file

@ -104,8 +104,8 @@ e>>2;b.zb=g;b.B=h>>2;xb&&ec&&c.da&&!c.controller&&!c.Te&&!c.Ue?(b.Ya=c.Ya,b.de=c
function we(a,b){var c;switch(b){case 0:c=a.G;break;case 1:c=a.I;break;case 2:c=a.M;break;case 3:c=a.H;break;case 4:c=I(a);break;case 5:c=a.P;break;case 6:c=a.K;break;case 7:c=a.J}return c}function xe(a,b,c){switch(b){case 0:a.G=c;break;case 1:a.I=c;break;case 2:a.M=c;break;case 3:a.H=c;break;case 4:G(a,c);break;case 5:a.P=c;break;case 6:a.K=c;break;case 7:a.J=c}}
function re(a){a.G=0;a.H=0;a.I=0;a.M=0;a.gb=0;a.P=0;a.K=0;a.J=0;a.cb=!1;a.ia=a.wa=0;a.aa=0;a.jg=0;a.L=0;a.Za=65520;a.Lc=0;a.Sd=1023;a.ca=a.Pa=0;a.Wc=a.sd=a.Vc=a.Xc=0;a.rb=-1;a.kc=a.sb=-1;a.qe=a.U=-1;a.va=new fd(a,1,"CS");a.vb=new fd(a,2,"DS");a.Xa=new fd(a,2,"ES");a.ta=new fd(a,3,"SS");G(a,0);ld(a,0);if(80386<=a.ja){switch(a.Uc){case 80562:case 80563:a.M=771;break;case 80578:a.M=772;break;case 80594:a.M=773;break;case 80595:case 80596:a.M=776}a.Za=16;a.li=0;a.se=0;a.Od=0;a.Ja=[0,0,0,0,null,null,0,
0];a.Ae=[null,null,null,null,null,null,0,0];a.Nb=new fd(a,2,"FS");a.Ob=new fd(a,2,"GS");ve(a)}a.pf=new fd(a,0,"NULL");a.ka=a.vb;a.Ka=a.ta;a.S=a.Ia=0;a.D=a.C=-1;a.$b=a.pf;a.ua=0;if(80286>a.ja)Ad(a,0,65535);else{a.Dc=0;a.zd=65535;a.Bc=new fd(a,5,"LDT",!0);a.Sa=new fd(a,4,"TSS",!0);a.Da=new fd(a,6,"VER",!0);Ad(a,65520,61440);var b,c=K(a);b=a.va;var d=-65536;80386>b.F.ja&&(d&=16777215);b=b.Aa=d;a.Ha=b+c|0;a.gf=(b>>>0)+(a.va.Ta>>>0)+1}zd(a,0);nd(a)}
function ye(a){2==a.Nc?(a.bc=a.na,a.Oa=ze,a.$a=Ae,a.Jb=Be,2==a.ba?(a.V=Ce,a.ea=De,a.ya=Ee):(a.V=Fe,a.ea=Ge,a.ya=He)):(a.bc=a.oa,a.Oa=Ke,a.$a=Le,a.Jb=Me,2==a.ba?(a.V=Ne,a.ea=Oe,a.ya=Pe):(a.V=Qe,a.ea=Re,a.ya=Se))}function od(a,b){a.ba!=b&&(a.Ia|=1024,a.ba=b,a.R=2==b?65535:-1,Te(a))}function Te(a){2==a.ba?(a.Ga=32768,a.tb=a.na,a.rc=a.jb,2==a.Nc?(a.V=Ce,a.ea=De,a.ya=Ee):(a.V=Ne,a.ea=Oe,a.ya=Pe)):(a.Ga=-2147483648,a.tb=a.oa,a.rc=a.nb,2==a.Nc?(a.V=Fe,a.ea=Ge,a.ya=He):(a.V=Qe,a.ea=Re,a.ya=Se))}
function df(a){a.Nc=a.va.Nc;a.Ba=a.va.Ba;ye(a);a.ba=a.va.ba;a.R=a.va.R;Te(a);a.Ia&=-3073}m.Ti=function(){var a=this.G+this.H+this.I+this.M+I(this)+this.P+this.K+this.J|0;return a=a+K(this)+this.va.Z+this.vb.Z+this.ta.Z+this.Xa.Z+yd(this)|0};function ef(a,b,c){void 0===a.Hd[b]&&(a.Hd[b]=[]);a.Hd[b].push(c)}function ff(a,b,c){void 0!==c&&(null==a.je[b]&&a.le++,a.je[b]=c)}function gf(a,b){var c=a.je[b];null!=c&&(c(--a.le),delete a.je[b])}
function ye(a){2==a.Nc?(a.bc=a.na,a.Oa=ze,a.$a=Ae,a.Jb=Be,2==a.ba?(a.V=Ce,a.ea=De,a.ya=Ee):(a.V=Fe,a.ea=Ge,a.ya=He)):(a.bc=a.oa,a.Oa=Ke,a.$a=Le,a.Jb=Me,2==a.ba?(a.V=Ne,a.ea=Oe,a.ya=Pe):(a.V=Qe,a.ea=Re,a.ya=Se))}function od(a,b){a.ba!=b&&(a.Ia|=1024,a.ba=b,a.R=2==b?65535:-1,cf(a))}function cf(a){2==a.ba?(a.Ga=32768,a.tb=a.na,a.rc=a.jb,2==a.Nc?(a.V=Ce,a.ea=De,a.ya=Ee):(a.V=Ne,a.ea=Oe,a.ya=Pe)):(a.Ga=-2147483648,a.tb=a.oa,a.rc=a.nb,2==a.Nc?(a.V=Fe,a.ea=Ge,a.ya=He):(a.V=Qe,a.ea=Re,a.ya=Se))}
function df(a){a.Nc=a.va.Nc;a.Ba=a.va.Ba;ye(a);a.ba=a.va.ba;a.R=a.va.R;cf(a);a.Ia&=-3073}m.Ti=function(){var a=this.G+this.H+this.I+this.M+I(this)+this.P+this.K+this.J|0;return a=a+K(this)+this.va.Z+this.vb.Z+this.ta.Z+this.Xa.Z+yd(this)|0};function ef(a,b,c){void 0===a.Hd[b]&&(a.Hd[b]=[]);a.Hd[b].push(c)}function ff(a,b,c){void 0!==c&&(null==a.je[b]&&a.le++,a.je[b]=c)}function gf(a,b){var c=a.je[b];null!=c&&(c(--a.le),delete a.je[b])}
function hf(a,b){for(var c=a.Ja[7],d=c>>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.Ja[e],g=g&~(d>>2&3);b?a.sa[g>>>a.La].Rd(g&a.Fa,f,a):Jc(a.sa[g>>>a.La],f)}c>>=2;d>>=4}}function Gc(a,b,c,d){if(!(a.S&8192)&&a.Ja[7]&255){c--;var e=a.Ja[7],f=e>>16;d=d?1:0==d?3:0;for(var g=0;4>g;g++){if(e&3&&(f&3)==d){var h=f>>2;if(b+c>=a.Ja[g]&&b<=a.Ja[g]+h){a.Ja[6]|=1<<g;a.ua|=2;break}}e>>=2;f>>=4}}}
function nd(a,b,c){void 0===b&&(b=!!(a.Za&1));void 0===c&&(c=!!(a.ca&131072));a.ig=b&&!c?jf:Gd;gd(a.va,!1,b,c);gd(a.vb,!1,b,c);gd(a.ta,!1,b,c);gd(a.Xa,!1,b,c);80386<=a.ja&&(gd(a.Nb,!1,b,c),gd(a.Ob,!1,b,c));df(a)}
m.save=function(){var a=new kf(this);N(a,0,[this.G,this.H,this.I,this.M,I(this),this.P,this.K,this.J]);var b=K(this),c=this.va.save(),d=this.vb.save(),e=this.ta.save(),f=this.Xa.save(),g;null!=this.Dc?(g=[this.Za,this.Dc,this.zd,this.Lc,this.Sd,this.Bc.save(),this.Sa.save(),this.Pa],80386<=this.ja&&(g.push(this.li),g.push(this.se),g.push(this.Od),g.push(this.Ja),g.push(this.Ae))):g=null;b=[b,c,d,e,f,g,yd(this)];80386<=this.ja&&(b.push(this.Nb.save()),b.push(this.Ob.save()));N(a,1,b);N(a,2,[this.ka.jc,
@ -139,7 +139,7 @@ m.Hc=function(a,b,c){this.F=c;this.N=Hb(a,"ChipSet");ub(this)};m.gc=function(a,b
m.restore=function(a){a=a[0];var b=0;this.ic=a[b++]&-57409;var c=a[b++];this.ma=c&-14337;this.B=(c&14336)>>11;cg(this);dg(this,a[b++]);for(c=0;c<this.X.length;c++)this.X[c]=a[b++];return!0};function $f(a){a.C=0;a.ic=959;a.ma=0;a.B=0;a.N&&(a=a.N,a.ja>=eg&&fg(a,13))}function cg(a){a.ma&=-129;a.ma&~a.ic&63&&(a.ma|=128);if(a.ma&128&&!(a.ic&128))return a=a.N,a.ja>=eg?gg(a,13):a.ya&0||Xf.call(a.F,2),!0;a=a.N;a.ja>=eg&&fg(a,13);return!1}function hg(a,b){80387<=a.ja||(b&=-65);a.ma|=b;return cg(a)}
function ag(a){return a.ma|a.B<<11}function ig(a,b){return isFinite(b)?!0:!hg(a,Infinity===b?8:16)}function jg(a,b,c){var d=null;null!=b&&null!=c&&(d=b+c,ig(a,d)||(d=null));return d}function kg(a,b,c){var d=null;null!=b&&null!=c&&(d=b-c,ig(a,d)||(d=null));return d}function lg(a,b,c){var d=null;null!=b&&null!=c&&(d=b*c,ig(a,d)||(d=null));return d}function mg(a,b,c){var d=null;null==b||null==c||!c&&hg(a,2)||(d=b/c,ig(a,d)||(d=null));return d}
function ng(a,b,c){if(null!=b&&null!=c){var d=0;isNaN(b)||isNaN(c)?d=17664:(b-=c,0>b?d=256:0===b&&(d=16384));a.ma=a.ma&-18177|d;return!0}return!1}function og(a,b,c){if(null==b)return null;var d=a.ic&3072;0==d?(d=Math.round(b),.5===d-b&&d%2&&d--):d=1024==d||3072==d&&0<b?Math.floor(b):Math.ceil(b);if(c){if(d>=c){if(hg(a,1))return null;d=-c}else if(d<-c){if(hg(a,1))return null;d=-c}a.L[0]=d|0;2147483648<c&&(a.L[1]=d/4294967296|0,!a.L[1]&&0>d&&(a.L[1]=-1))}return d}
function Bg(a,b){var c=3;if(a.C&1<<b){var d=a.X[b],c=0;0===d?c=1:isFinite(d)||(c=2)}return c}function bg(a){for(var b=0,c=a.X.length-1;0<=c;c--)b<<=2,b|=Bg(a,c);return b}function dg(a,b){a.C=0;for(var c=1;128>=c;c<<=1)3!=(b&3)&&(a.C|=c),b>>=2}function Cg(a){var b=a.B+0&7;return a.C&1<<b?(a.pa[0]=a.X[b],!0):hg(a,1)?!1:(a.pa[0]=a.ka[0],!0)}function Dg(a){var b=a.B+0&7;return a.C&1<<b?(a.W[0]=a.X[b],!0):hg(a,1)?!1:(a.W[0]=a.ka[0],!0)}
function pg(a,b){var c=3;if(a.C&1<<b){var d=a.X[b],c=0;0===d?c=1:isFinite(d)||(c=2)}return c}function bg(a){for(var b=0,c=a.X.length-1;0<=c;c--)b<<=2,b|=pg(a,c);return b}function dg(a,b){a.C=0;for(var c=1;128>=c;c<<=1)3!=(b&3)&&(a.C|=c),b>>=2}function Cg(a){var b=a.B+0&7;return a.C&1<<b?(a.pa[0]=a.X[b],!0):hg(a,1)?!1:(a.pa[0]=a.ka[0],!0)}function Dg(a){var b=a.B+0&7;return a.C&1<<b?(a.W[0]=a.X[b],!0):hg(a,1)?!1:(a.W[0]=a.ka[0],!0)}
function U(a,b){var c=null,d=a.B+b&7;a.C&1<<d?c=a.X[d]:hg(a,1)||(c=a.ka[0]);return c}function V(a,b,c){return null!=c&&(isNaN(c)?!hg(a,1):1)?(b=a.B+b&7,a.X[b]=c,a.C|=1<<b,!0):!1}function Eg(a,b,c){var d=null;b=a.B+b&7;if(c||a.C&1<<b||!hg(a,1))c=b<<1,d=Fg(a,a.aa[c],a.aa[c+1]);return d}function Gg(a){return a.F.na(a.F.D)<<16>>16}function Hg(a){return a.F.oa(a.F.D)}function Ig(a){a.ua[0]=a.F.oa(a.F.D);return a.pa[0]}function Jg(a){a.L[0]=a.F.oa(a.F.D);a.L[1]=a.F.oa(a.F.D+4);return a.W[0]}
function Kg(a){a.ga[0]=a.F.oa(a.F.D);a.ga[1]=a.F.oa(a.F.D+4);a.ga[2]=a.F.na(a.F.D+8);return a.ga}m.pi=function(){this.F.nb(this.F.D,this.L[0])};m.sk=function(){this.F.nb(this.F.D,this.L[0]);this.F.nb(this.F.D+4,this.L[1])};m.uk=Zf.prototype.pi;m.tk=Zf.prototype.sk;function Lg(a){a.F.nb(a.F.D,a.ga[0]);a.F.nb(a.F.D+4,a.ga[1]);a.F.jb(a.F.D+8,a.ga[2])}
function Mg(a,b){var c=b[1],d=(b[2]&32768)>>4,e=b[2]&32767,f=b[0]>>>11|c<<21,c=c>>11&1048575;32767==e?e=2047:e&&(e+=-15360,0>=e&&(e=2047,f=c=0));a.L[0]=f;a.L[1]=c|(d|e)<<20;return a.W[0]}function Fg(a,b,c){var d=c>>20&2047,e=2147483648|(c&1048575)<<11|b>>>21;2047==d?d=32767:d?d+=15360:e&=2147483647;a.ga[0]=b<<11;a.ga[1]=e;a.ga[2]=c>>16&32768|d;return a.ga}function Ng(a,b){for(var c=0,d=1;b--;)c+=(a&15)*d,d*=10,a>>=4;return c}function Og(a,b){for(var c=0,d=0;b--;)c|=a%10<<d,a/=10,d+=4;return c}
@ -151,7 +151,7 @@ function ih(){for(var a=this.F,b=Sg(this,a.D),c=0;c<this.X.length;c++){var d=Eg(
function qh(){ph.call(this)}
var rh={216:{0:function(){V(this,0,jg(this,U(this,0),Ig(this)))},1:function(){V(this,0,lg(this,U(this,0),Ig(this)))},2:function(){ng(this,U(this,0),Ig(this))},3:function(){ng(this,U(this,0),Ig(this))&&Pg(this)},4:function(){V(this,0,kg(this,U(this,0),Ig(this)))},5:function(){V(this,0,kg(this,Ig(this),U(this,0)))},6:ch,7:ch,48:function(){V(this,0,jg(this,U(this,0),U(this,this.A)))},49:function(){V(this,0,lg(this,U(this,0),U(this,this.A)))},50:$g,51:ah,52:function(){V(this,0,kg(this,U(this,0),U(this,
this.A)))},53:function(){V(this,0,kg(this,U(this,this.A),U(this,0)))},54:function(){V(this,0,mg(this,U(this,0),U(this,this.A)))},55:function(){V(this,0,mg(this,U(this,this.A),U(this,0)))}},217:{0:function(){Qg(this,Ig(this))},2:function(){Cg(this)&&this.uk()},3:function(){Cg(this)&&(this.uk(),Pg(this))},4:gh,5:fh,6:jh,7:mh,48:function(){Qg(this,U(this,this.A))},49:ph,50:function(){},51:lh,64:function(){V(this,0,-U(this,0))},65:function(){V(this,0,Math.abs(U(this,0)))},68:function(){ng(this,U(this,
0),0)},69:function(){this.ma&=-18177;this.aa[((this.B+0&7)<<1)+1]&-2147483648&&(this.ma|=512);if(3==Bg(this,this.B))this.ma|=16640;else{var a=U(this,0);this.ma=isNaN(a)?this.ma|256:0===a?this.ma|16384:Infinity===a||-Infinity===a?this.ma|1280:this.ma|1024}},80:function(){Qg(this,1)},81:function(){Qg(this,Tg)},82:function(){Qg(this,Ug)},83:function(){Qg(this,Vg)},84:function(){Qg(this,Wg)},85:function(){Qg(this,Xg)},86:function(){Qg(this,0)},96:function(){V(this,0,Math.pow(2,U(this,0))-1)},97:function(){V(this,
0),0)},69:function(){this.ma&=-18177;this.aa[((this.B+0&7)<<1)+1]&-2147483648&&(this.ma|=512);if(3==pg(this,this.B))this.ma|=16640;else{var a=U(this,0);this.ma=isNaN(a)?this.ma|256:0===a?this.ma|16384:Infinity===a||-Infinity===a?this.ma|1280:this.ma|1024}},80:function(){Qg(this,1)},81:function(){Qg(this,Tg)},82:function(){Qg(this,Ug)},83:function(){Qg(this,Vg)},84:function(){Qg(this,Wg)},85:function(){Qg(this,Xg)},86:function(){Qg(this,0)},96:function(){V(this,0,Math.pow(2,U(this,0))-1)},97:function(){V(this,
1,U(this,1)*Math.log(U(this,0))/Math.LN2)&&Pg(this)},98:function(){V(this,0,Math.tan(U(this,0)))&&Qg(this,1)},99:function(){V(this,1,Math.atan2(U(this,1),U(this,0)))&&Pg(this)},100:function(){var a=U(this,0);null!=a&&(this.W[0]=a,V(this,0,(this.L[1]>>20&2047)-1023),this.L[1]=(this.L[1]|1072693248)&-1073741825,Qg(this,this.W[0]))},102:function(){this.B=this.B-1&7;this.ma&=-513},103:function(){this.B=this.B+1&7;this.ma&=-513},112:function(){V(this,0,U(this,0)%U(this,1))},113:function(){V(this,1,U(this,
1)*Math.log(U(this,0)+1)/Math.LN2)&&Pg(this)},114:function(){var a=U(this,0),b=null;if(0<=a||!hg(this,1))b=Math.sqrt(a),ig(this,b)||(b=null);V(this,0,b)},116:function(){V(this,0,og(this,U(this,0),Yg))},117:function(){var a=U(this,0),b=U(this,1);null!=a&&null!=b&&V(this,0,a*Math.pow(2,0<b?Math.floor(b):Math.ceil(b)))}},218:{0:function(){V(this,0,jg(this,U(this,0),Hg(this)))},1:function(){V(this,0,lg(this,U(this,0),Hg(this)))},2:function(){ng(this,U(this,0),Hg(this))},3:function(){ng(this,U(this,0),
Hg(this))&&Pg(this)},4:function(){V(this,0,kg(this,U(this,0),Hg(this)))},5:function(){V(this,0,kg(this,Hg(this),U(this,0)))},6:function(){V(this,0,mg(this,U(this,0),Hg(this)))},7:function(){V(this,0,mg(this,Hg(this),U(this,0)))}},219:{0:function(){Qg(this,Hg(this))},2:function(){null!=og(this,U(this,0),2147483648)&&this.pi()},3:function(){null!=og(this,U(this,0),2147483648)&&(this.pi(),Pg(this))},5:function(){Qg(this,Mg(this,Kg(this)))},7:function(){Eg(this,0)&&(Lg(this),Pg(this))},64:function(){8087==
@ -280,7 +280,7 @@ this.D;break;case 131:c=S(this,this.H+T(this));this.C=this.D;break;case 132:c=S(
function Dj(a){var b=this.xa(),c=b>>6,d,e;switch(b>>3&7){case 0:d=this.G;break;case 1:d=this.I;break;case 2:d=this.M;break;case 3:d=this.H;break;case 4:d=0;break;case 5:d=this.P;break;case 6:d=this.K;break;case 7:d=this.J}switch(b&7){case 0:e=this.G;break;case 1:e=this.I;break;case 2:e=this.M;break;case 3:e=this.H;break;case 4:e=I(this);this.ka=this.Ka;break;case 5:a?(e=this.P,this.ka=this.Ka):e=T(this);break;case 6:e=this.K;break;case 7:e=this.J}return(d<<c)+e|0}
function ge(){this.tc[this.xa()].call(this)}function je(){J(this,I(this)&this.R);this.A-=this.B.Sc}function Id(){this.U=this.fa;var a=I(this)&this.R;J(this,this.G&this.R);J(this,this.I&this.R);J(this,this.M&this.R);J(this,this.H&this.R);J(this,a);J(this,this.P&this.R);J(this,this.K&this.R);J(this,this.J&this.R);this.A-=this.B.Wj;this.U=-1}
function Jd(){this.U=this.fa;this.J=this.J&~this.R|D(this);this.K=this.K&~this.R|D(this);this.P=this.P&~this.R|D(this);G(this,I(this)+this.ba);this.H=this.H&~this.R|D(this);this.M=this.M&~this.R|D(this);this.I=this.I&~this.R|D(this);this.G=this.G&~this.R|D(this);this.A-=this.B.Uj;this.U=-1}function Kd(){this.V.call(this,Ah)}function ke(){!(this.Za&1)||this.ca&131072?C.call(this,6):this.ea.call(this,zh)}function le(){this.S|=20;this.ka=this.Ka=this.Nb;this.A-=this.B.nd}
function me(){this.S|=20;this.ka=this.Ka=this.Ob;this.A-=this.B.nd}function ne(){this.S|=1024;this.Ia&1024||(this.ba^=6,this.R^=-65536,Te(this));this.A-=this.B.nd}function oe(){this.S|=2048;this.Ia&2048||(this.Nc^=6,this.Ba^=-65536,ye(this));this.A-=this.B.nd}function Ld(){J(this,this.Ma());this.A-=this.B.Sc}function Md(){this.V.call(this,Sh)}function Nd(){J(this,this.T());this.A-=this.B.Sc}function Od(){this.V.call(this,Qh)}
function me(){this.S|=20;this.ka=this.Ka=this.Ob;this.A-=this.B.nd}function ne(){this.S|=1024;this.Ia&1024||(this.ba^=6,this.R^=-65536,cf(this));this.A-=this.B.nd}function oe(){this.S|=2048;this.Ia&2048||(this.Nc^=6,this.Ba^=-65536,ye(this));this.A-=this.B.nd}function Ld(){J(this,this.Ma());this.A-=this.B.Sc}function Md(){this.V.call(this,Sh)}function Nd(){J(this,this.T());this.A-=this.B.Sc}function Od(){this.V.call(this,Qh)}
function Pd(){var a=1,b=0,c=this.Ba,d=5;this.Ia&192&&(a=this.I&c,b=1,this.Ia&256&&(d=4));if(a--){var e=this.M&65535;Jf(this,e,1,!0)&&(e=mc(this.ga,e,1,this.Ha-b-1),this.qc(this.Xa.nc(this.J&c,1),e),this.J=this.J&~c|this.J+(this.ca&1024?-1:1)&c,this.I=this.I&~c|this.I-b&c,this.A-=d,a&&(pf(this),this.S|=256))}}
function Qd(){var a=1,b=0,c=this.Ba,d=5;this.Ia&192&&(a=this.I&c,b=1,this.Ia&256&&(d=4));if(a--){var e=this.M&65535;Jf(this,e,this.ba,!0)&&(e=mc(this.ga,e,this.ba,this.Ha-b-1),this.rc(this.Xa.nc(this.J&c,this.ba),e),this.J=this.J&~c|this.J+(this.ca&1024?-this.ba:this.ba)&c,this.I=this.I&~c|this.I-b&c,this.A-=d,a&&(pf(this),this.S|=256))}}
function Rd(){var a=1,b=0,c=this.Ba,d=5;this.Ia&192&&(a=this.I&c,b=1,this.Ia&256&&(d=4));if(a--){var e=this.M&65535;if(Jf(this,e,1,!1)){var f=this.Qa(this.vb.mc(this.K&c,1));qc(this.ga,e,1,f,this.Ha-b-1);this.K=this.K&~c|this.K+(this.ca&1024?-1:1)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(pf(this),this.S|=256)}}}
@ -747,7 +747,7 @@ function Hr(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){
function Ir(a,b,c){var d=null;if(b=oq(a,b,!0)){a.bc(b);var e=xr(a,b,!0);if(e.length){var f,g;e[0]&&(g="",(f=b.Ra-e[1])&&(g=" + "+u(f)),f=e[0]+" ("+Rq(e[1],b.Z)+")"+g,c&&a.O(f),d=f);4<e.length&&e[4]&&(g="",(f=e[5]-b.Ra)&&(g=" - "+u(f)),f=e[4]+" ("+Rq(e[5],b.Z)+")"+g,c&&a.O(f),d||(d=f))}else c&&a.O("no symbols")}return d}
function Jr(a,b){if(b[1]&&"?"!=b[1]){var c="json"==b[1],d,e=0,f=0,g=c?{}:oq(a,b[1]);if(g&&(d=mq(a,b[2],"drive #"),void 0!==d)){if(!c){e=mq(a,b[3],"sector #");if(void 0===e)return;f=mq(a,b[4],"# of sectors");void 0===f&&(f=1)}var h=a.kc;2<=d&&a.Db&&(d-=2,h=a.Db);if(h){var k=h.Ki(d);if(k)if(k.za)if(c)Fr(a),a.O(k.za.toJSON());else if(h.qk(k,e,f)){for(var l=0,n=!1,c=ar(g);!n&&0<k.Hb--;)(function(a,b){h.He(k,function(c){0>c?(a.O("out of data at address "+ar(b)),n=!0):(a.qc(b,c,1,!0),l++)})})(a,g);Wc(a.F,
!0);a.O(l+" bytes read at "+c)}else a.O("sector "+e+" request out of range");else a.O("drive "+d+" not loaded");else a.O("invalid drive: "+d)}else a.O("disk controller not present")}}else a.O("load commands:"),a.O("\tl [address] [drive #] [sector #] [# sectors]")}
function nr(a,b){var c;if(b&&"?"==b[1])a.O("register commands:"),a.O("\tr\tdump registers"),a.Tb&&a.O("\trfp\tdump floating-point registers"),a.O("\trp\tdump all registers"),a.O("\trx [#]\tset flag or register x to [#]");else{var d;null==c&&(c=!0);if(null!=b&&1<b.length){var e=b[1];if(a.Tb&&"fp"==e){c=a.Tb;d=ag(c);for(var f=c.ic,g=0;8>g;g++){var h=c,e=null;if(g<h.X.length){var e=[],k=h.B+g&7;e[0]=k;e[1]=Bg(h,k);e[2]=h.X[k];k<<=1;e[3]=h.aa[k];e[4]=h.aa[k+1];h=Fg(h,e[3],e[4]);e[5]=h[0];e[6]=h[1];e[7]=
function nr(a,b){var c;if(b&&"?"==b[1])a.O("register commands:"),a.O("\tr\tdump registers"),a.Tb&&a.O("\trfp\tdump floating-point registers"),a.O("\trp\tdump all registers"),a.O("\trx [#]\tset flag or register x to [#]");else{var d;null==c&&(c=!0);if(null!=b&&1<b.length){var e=b[1];if(a.Tb&&"fp"==e){c=a.Tb;d=ag(c);for(var f=c.ic,g=0;8>g;g++){var h=c,e=null;if(g<h.X.length){var e=[],k=h.B+g&7;e[0]=k;e[1]=pg(h,k);e[2]=h.X[k];k<<=1;e[3]=h.aa[k];e[4]=h.aa[k+1];h=Fg(h,e[3],e[4]);e[5]=h[0];e[6]=h[1];e[7]=
h[2]}if(!e)break;a.O("ST"+g+": "+ma(e[2].toFixed(15),24,!0)+" "+r(e[4])+","+r(e[3])+" ["+e[0]+":"+Dq[e[1]]+"]")}a.O(" B3SSS210ESPUOZDI xxxIRRPPIxPUOZDI");a.O("SW: "+da(d,16)+" ("+u(d)+") CW: "+da(f,16)+" ("+u(f)+")");return}if("p"==e)d=80286<=a.F.ja;else{f=null;g=e.indexOf("=");if(0<g)f=e.substr(g+1),e=e.substr(0,g);else if(2<b.length)f=b[2];else{a.O("missing value for "+b[1]);return}g=!1;h=kq(a,f);if(void 0!==h)switch(g=!0,k=e.toUpperCase(),"E"==k.charAt(0)&&4>=a.Ja&&(k=null),
k){case "AL":a.F.G=a.F.G&-256|h&255;break;case "AH":a.F.G=a.F.G&-65281|h<<8&255;break;case "AX":a.F.G=a.F.G&-65536|h&65535;break;case "BL":a.F.H=a.F.H&-256|h&255;break;case "BH":a.F.H=a.F.H&-65281|h<<8&255;break;case "BX":a.F.H=a.F.H&-65536|h&65535;break;case "CL":a.F.I=a.F.I&-256|h&255;break;case "CH":a.F.I=a.F.I&-65281|h<<8&255;break;case "CX":a.F.I=a.F.I&-65536|h&65535;break;case "DL":a.F.M=a.F.M&-256|h&255;break;case "DH":a.F.M=a.F.M&-65281|h<<8&255;break;case "DX":a.F.M=a.F.M&-65536|h&65535;
break;case "SP":G(a.F,I(a.F)&-65536|h&65535);break;case "BP":a.F.P=a.F.P&-65536|h&65535;break;case "SI":a.F.K=a.F.K&-65536|h&65535;break;case "DI":a.F.J=a.F.J&-65536|h&65535;break;case "DS":wd(a.F,h);break;case "ES":xd(a.F,h);break;case "SS":ld(a.F,h);break;case "CS":mf(a.F,h);a.aa=tq(a,K(a.F),a.F.va.Z);break;case "IP":case "EIP":O(a.F,h);a.aa=tq(a,K(a.F),a.F.va.Z);break;case "PC":case "PS":zd(a.F,h);break;case "C":h?yf(a.F):zf(a.F);break;case "P":h?(e=a.F,e.resultType&=-3,e.ca|=4):(e=a.F,e.resultType&=
@ -762,24 +762,24 @@ oq(a,g[1],!0);if(q)if(a.ua=q,void 0===g[2])a.O("begin assemble at "+ar(q)),a.Da=
a.O("\tbc [a]\tclear breakpoint at addr [a]"),a.O("\tbl\tlist all breakpoints"),a.O("\tbn [n]\tbreak after [n] instruction(s)");else{var H=F.charAt(1);if("l"==H){var L=0,L=L+tr(a,a.A),L=L+tr(a,a.ra);(L+=tr(a,a.fa))||a.O("no breakpoints")}else if("n"==H)a.Oa=mq(a,v),a.O("break after "+a.Oa+" instruction(s)");else if(void 0===v)a.O("missing breakpoint address");else{var W={};if("*"!=v&&(W=oq(a,v,!0,!0),!W))break a;v=null==W.Ra?v:u(W.Ra);"c"==H?null==W.Ra?(uq(a),a.O("all breakpoints cleared")):$q(a,
a.A,W)||$q(a,a.ra,W)||$q(a,a.fa,W)||a.O("breakpoint missing: "+ar(W)):"i"==H?a.O("breakpoint "+(kc(a.ga,W.Ra)?"enabled":"cleared")+": port "+v+" (input)"):"o"==H?a.O("breakpoint "+(oc(a.ga,W.Ra)?"enabled":"cleared")+": port "+v+" (output)"):null!=W.Ra&&(hr(a,W,E),"p"==H?a.Rd(a.A,W):"r"==H?a.Rd(a.ra,W):"w"==H?a.Rd(a.fa,W):a.O("unknown breakpoint command: "+H))}}}break;case "c":Fr(a);break;case "d":a:{var P=g,bb,ia=P[0],ja=P[1],Ha=P[2],Xa=P[3];if("?"==ja){var Ba="";for(bb in Bb)a.$a[bb]&&(Ba&&(Ba+=
","),Ba+=bb);Ba+=",state,symbols";a.O("dump memory commands:");a.O("\tdb [a] [#] dump # bytes at address a");a.O("\tdw [a] [#] dump # words at address a");a.O("\tdd [a] [#] dump # dwords at address a");a.O("\tdh [#] [#] dump # instructions from history");a.O("\tdi [#] dump descriptor info for IDT #");a.O("\tds [#] dump descriptor info for selector #");Ba.length&&a.O("dump extension commands:\n\t"+Ba)}else if("state"==ja){var Wb=Nr(a.X,!0);"console"==Ha?console.log(Wb):(Fr(a),
a.O(Wb))}else if("symbols"==ja)for(var wa=0;wa<a.B.length;wa++){var Vd=a.B[wa],Sc;for(Sc in Vd.Qd)if("."!=Sc.charAt(0)){var Wd=Vd.Qd[Sc],Ie=Wd.o;if(void 0!==Ie){var Xd=Wd.s;void 0===Xd&&(Xd=Vd.Z);var Je=Vd.Qd[Sc].l;Je&&(Sc=Je);a.O(Rq(Ie,Xd)+" "+Sc)}}}else{if("ds"==ia||"dg"==ia||"dl"==ia)ia="d",P=[ia,"desc",ja];"d"==ia&&"page"==ja&&(ia="dp",P.shift());if("dp"==ia){P.shift();var li=P[0];if(li){var Ue=a.bc(oq(a,li));if(-1===Ue)a.O("invalid address: "+li);else{var ae,Da=null;if(80386<=a.F.ja){var be=
a.ga,Da={};Da.fk=(Ue&-4194304)>>>20;Da.xi=a.F.Od+Da.fk;Da.yb=be.sa[(Da.xi&be.Gb)>>>be.La];Da.Yi=Da.yb.Md(Da.fk);Da.gk=(Ue&4190208)>>>10;Da.yi=(Da.Yi&-4096)+Da.gk;Da.zb=be.sa[(Da.yi&be.Gb)>>>be.La];Da.Zi=Da.zb.Md(Da.gk);Da.Jk=(Da.Zi&-4096)+(Ue&4095)}if(ae=Da){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var pd="%"+r(Ue),pd=pd+(" %%"+jr(ae.xi,ae.Yi)),pd=pd+(" %%"+jr(ae.yi,ae.Zi,!0)),
a.O(Wb))}else if("symbols"==ja)for(var wa=0;wa<a.B.length;wa++){var Vd=a.B[wa],Sc;for(Sc in Vd.Qd)if("."!=Sc.charAt(0)){var Wd=Vd.Qd[Sc],Ie=Wd.o;if(void 0!==Ie){var Xd=Wd.s;void 0===Xd&&(Xd=Vd.Z);var Je=Vd.Qd[Sc].l;Je&&(Sc=Je);a.O(Rq(Ie,Xd)+" "+Sc)}}}else{if("ds"==ia||"dg"==ia||"dl"==ia)ia="d",P=[ia,"desc",ja];"d"==ia&&"page"==ja&&(ia="dp",P.shift());if("dp"==ia){P.shift();var li=P[0];if(li){var Te=a.bc(oq(a,li));if(-1===Te)a.O("invalid address: "+li);else{var ae,Da=null;if(80386<=a.F.ja){var be=
a.ga,Da={};Da.fk=(Te&-4194304)>>>20;Da.xi=a.F.Od+Da.fk;Da.yb=be.sa[(Da.xi&be.Gb)>>>be.La];Da.Yi=Da.yb.Md(Da.fk);Da.gk=(Te&4190208)>>>10;Da.yi=(Da.Yi&-4096)+Da.gk;Da.zb=be.sa[(Da.yi&be.Gb)>>>be.La];Da.Zi=Da.zb.Md(Da.gk);Da.Jk=(Da.Zi&-4096)+(Te&4095)}if(ae=Da){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var pd="%"+r(Te),pd=pd+(" %%"+jr(ae.xi,ae.Yi)),pd=pd+(" %%"+jr(ae.yi,ae.Zi,!0)),
pd=pd+(" %%"+r(ae.Jk));a.O(pd)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==ia){if("disk"==ja){P[0]="l";P[1]="json";Jr(a,P);break a}for(bb in Bb)if(P[1]==bb){var Dn=a.$a[bb];Dn?(P.shift(),P.shift(),Dn(P)):a.O("no dump registered for "+ja);break a}ja||(ia=a.uc||"db")}else a.uc=ia;if("dh"==ia){var En=ja,Fn=Ha,Gn="",Hn=0,tb=a.Fa,tc=a.ia;if(tc.length){var Eb=+En||a.Jb,ce=+Fn||10;isNaN(Eb)?Eb=ce:Gn="more ";Eb>tc.length&&(a.O("note: only "+tc.length+" available"),Eb=tc.length);
tb-=Eb;0>tb&&(null==tc[tc.length-1].Z?(Eb=tb+Eb,tb=0):tb+=tc.length);var mi=[];"call"==Fn&&(ce=1E5,mi=["CALL"]);for(void 0!==En&&a.O(Eb+" instructions earlier:");0<ce&&tb!=a.Fa;){var qd=tc[tb++];if(null==qd.Z)break;var Ve=tq(a,qd.Ra,qd.Z,qd.Ea,qd.type,qd.Rb,qd.oc),gs=Eb--,In=vr(a,Ve,"history",gs);(!mi.length||0<=In.indexOf(mi[0]))&&a.O(In);Ve.Se&&(tb+=Ve.Se,ce-=Ve.Se,Eb-=Ve.Se);tb>=tc.length&&(tb=0);a.Jb=Eb;Hn++;ce--}}Hn||(a.O("no "+Gn+"history available"),a.Jb=void 0)}else if("di"==ia){P.shift();
var ni=P[0];if(ni){var We=mq(a,ni);if(void 0===We||0>We||255<We)a.O("invalid vector: "+ni);else{var Jn="&",Kn=!!(a.F.Za&1),Ln=!1,pg=a.F.Lc+(We<<(Kn?3:2)),oi=a.F.na(pg+0),hs=a.F.na(pg+2);Kn&&(Jn="#",a.F.na(pg+4)&2048&&(Ln=!0,oi|=a.F.na(pg+6)<<16));a.O("dumpIDT("+u(We)+"): "+Jn+r(hs,4)+":"+r(oi,Ln?8:4))}}else a.O("no IDT vector")}else if("dt"==ia)P.shift(),a.O("no information");else{var de=oq(a,ja);if(de&&(null!=de.Z||null!=de.Ea)){var qg=0;Ha&&("l"==Ha.charAt(0)&&(Ha=Ha.substr(1)||Xa),qg=mq(a,Ha)>>>
0,65536<qg&&(qg=65536));for(var rd="",rg="dd"==ia?4:"dw"==ia?2:1,sg=rg*qg||128,is=sg+15>>4||1;is--&&0<sg;){var tg=0,pi=0,Xe,Ye="",qi="",ja=ar(de);for(Xe=16;0<Xe&&0<sg;Xe--){var ug=a.Qa(de,1),tg=tg|ug<<(pi++<<3);pi==rg&&(Ye+=r(tg,2*rg),Ye+=1==rg?9==Xe?"-":" ":" ",tg=pi=0);qi+=32<=ug&&128>ug?String.fromCharCode(ug):".";sg--}rd&&(rd+="\n");rd+=ja+" "+Ye+(0==Xe?" "+qi:"")}rd&&a.O(rd);a.sb=de}}}}}break;case "e":if("else"==g[0])break;var vg=1,Mn=255,Nn=a.Qa,On=a.qc;"ew"==g[0]&&(vg=2,Mn=65535,Nn=a.na,
On=a.jb);var Pn=vg<<1,Qn=g[1];if(null==Qn)a.O("edit memory commands:"),a.O("\teb [a] [...] edit bytes at address a"),a.O("\tew [a] [...] edit words at address a");else{var wg=oq(a,Qn);if(wg)for(var xg=2;xg<g.length;xg++){var Ze=kq(a,g[xg]);if(void 0===Ze){a.O("unrecognized value: "+g[xg]);break}Ze&~Mn&&a.O("warning: "+r(Ze)+" exceeds "+vg+"-byte value");var js=Nn.call(a,wg);a.O("changing "+ar(wg)+" from 0x"+r(js,Pn)+" to 0x"+r(Ze,Pn));On.call(a,wg,Ze,vg)}}break;case "f":Gr(a,g[1]);break;case "g":a:{var Rn=
g[1],ks=b;"gt"==g[0]&&(a.cb=!0);if(void 0!==Rn){var ri=oq(a,Rn,!0);if(!ri)break a;hr(a,ri,ks);a.Rd(a.A,ri,!0)}a.Je(!0)||c||a.O("cpu busy or unavailable, run command ignored")}break;case "h":a:{var si;if(a.la.Ib)si="halting",a.Wb();else{if(sb(a,!0))break a;si="already halted"}c||a.O(si)}break;case "i":if("if"==g[0]){var ti;var $e=b.substr(2),$e=na($e);kq(a,$e)?(c||a.O("true: "+$e),ti=!0):(c||a.O("false: "+$e),ti=!1);ti||(d=!1);break}if("int"==g[0]){var yg;a:switch(mq(a,g[1])){case 19:mk(a,19,a.F.Ha,
!0);a.ya=a.pa;yg=!0;break a;case 33:mk(a,33,a.F.Ha,!0);a.ya=a.pa;yg=!0;break a;default:yg=!1}yg||(d=!1);break}var ui=g[1];if(ui&&"?"!=ui){var vi=mq(a,ui);if(void 0!==vi){var ls=mc(a.ga,vi,1);a.O(u(vi)+": "+t(ls))}}else a.O("input commands:"),a.O("\ti [p]\tread port [p]"),a.O("warning: port accesses can affect hardware state");break;case "k":var ms=g[0];if("?"==g[1])a.O("stack trace commands:"),a.O("\tk\tshow frame addresses"),a.O("\tks\tshow symbol information");else{var wi=0,Sn=a.F.va.Z,af=tq(a),
Uc=tq(a,I(a.F),a.F.ta.Z);for(a.O("stack trace for "+ar(Uc));10>wi;){for(var uc=null,ns=256;Uc.Ra>>>0<a.F.Ng>>>0;){af.Ra=a.tb(Uc,!0);if(null==Uc.Ea||!ns--)break;af.Z=Sn;if(uc=Lr(a,af))break;af.Z=a.tb(Uc);if(uc=Lr(a,af,!0)){Sn=a.tb(Uc,!0);0<uc.indexOf("INT")&&a.tb(Uc,!0);break}}if(!uc||null==uc)break;var Tn=null;if("ks"==ms){var Un=uc.match(/[0-9A-F]+$/);Un&&(Tn=Ir(a,Un[0]))}uc=ma(uc,50)+" ;"+(Tn||"stack="+ar(Uc));a.O(uc);wi++}wi||a.O("no return addresses found")}break;case "l":if("ln"==g[0]){Ir(a,
g[1],!0);break}Jr(a,g);break;case "m":if("mouse"==g[0]){var xi=g[1],zg=g[2];if(a.V){var Vn=1;"-"==zg.charAt(0)&&(Vn=-1,zg=zg.substr(1));var sd=mq(a,zg,xi);if(void 0!==sd)switch(sd=sd*Vn|0,xi){case "x":a.V.Hf(sd,0);break;case "y":a.V.Hf(0,sd);break;case "click":a.V.he(sd,!0);a.V.he(sd,!1);break;default:a.O("unknown action: "+xi)}}else a.O("no mouse");break}a:{var vc,wc=null,Oa=g[1];"?"==Oa&&(Oa=void 0);if(void 0!==Oa){var td=0;if("all"==Oa)td=1610481663,Oa=null;else if("on"==Oa)wc=!0,Oa=null;else if("off"==
tb-=Eb;0>tb&&(null==tc[tc.length-1].Z?(Eb=tb+Eb,tb=0):tb+=tc.length);var mi=[];"call"==Fn&&(ce=1E5,mi=["CALL"]);for(void 0!==En&&a.O(Eb+" instructions earlier:");0<ce&&tb!=a.Fa;){var qd=tc[tb++];if(null==qd.Z)break;var Ue=tq(a,qd.Ra,qd.Z,qd.Ea,qd.type,qd.Rb,qd.oc),gs=Eb--,In=vr(a,Ue,"history",gs);(!mi.length||0<=In.indexOf(mi[0]))&&a.O(In);Ue.Se&&(tb+=Ue.Se,ce-=Ue.Se,Eb-=Ue.Se);tb>=tc.length&&(tb=0);a.Jb=Eb;Hn++;ce--}}Hn||(a.O("no "+Gn+"history available"),a.Jb=void 0)}else if("di"==ia){P.shift();
var ni=P[0];if(ni){var Ve=mq(a,ni);if(void 0===Ve||0>Ve||255<Ve)a.O("invalid vector: "+ni);else{var Jn="&",Kn=!!(a.F.Za&1),Ln=!1,qg=a.F.Lc+(Ve<<(Kn?3:2)),oi=a.F.na(qg+0),hs=a.F.na(qg+2);Kn&&(Jn="#",a.F.na(qg+4)&2048&&(Ln=!0,oi|=a.F.na(qg+6)<<16));a.O("dumpIDT("+u(Ve)+"): "+Jn+r(hs,4)+":"+r(oi,Ln?8:4))}}else a.O("no IDT vector")}else if("dt"==ia)P.shift(),a.O("no information");else{var de=oq(a,ja);if(de&&(null!=de.Z||null!=de.Ea)){var rg=0;Ha&&("l"==Ha.charAt(0)&&(Ha=Ha.substr(1)||Xa),rg=mq(a,Ha)>>>
0,65536<rg&&(rg=65536));for(var rd="",sg="dd"==ia?4:"dw"==ia?2:1,tg=sg*rg||128,is=tg+15>>4||1;is--&&0<tg;){var ug=0,pi=0,We,Xe="",qi="",ja=ar(de);for(We=16;0<We&&0<tg;We--){var vg=a.Qa(de,1),ug=ug|vg<<(pi++<<3);pi==sg&&(Xe+=r(ug,2*sg),Xe+=1==sg?9==We?"-":" ":" ",ug=pi=0);qi+=32<=vg&&128>vg?String.fromCharCode(vg):".";tg--}rd&&(rd+="\n");rd+=ja+" "+Xe+(0==We?" "+qi:"")}rd&&a.O(rd);a.sb=de}}}}}break;case "e":if("else"==g[0])break;var wg=1,Mn=255,Nn=a.Qa,On=a.qc;"ew"==g[0]&&(wg=2,Mn=65535,Nn=a.na,
On=a.jb);var Pn=wg<<1,Qn=g[1];if(null==Qn)a.O("edit memory commands:"),a.O("\teb [a] [...] edit bytes at address a"),a.O("\tew [a] [...] edit words at address a");else{var xg=oq(a,Qn);if(xg)for(var yg=2;yg<g.length;yg++){var Ye=kq(a,g[yg]);if(void 0===Ye){a.O("unrecognized value: "+g[yg]);break}Ye&~Mn&&a.O("warning: "+r(Ye)+" exceeds "+wg+"-byte value");var js=Nn.call(a,xg);a.O("changing "+ar(xg)+" from 0x"+r(js,Pn)+" to 0x"+r(Ye,Pn));On.call(a,xg,Ye,wg)}}break;case "f":Gr(a,g[1]);break;case "g":a:{var Rn=
g[1],ks=b;"gt"==g[0]&&(a.cb=!0);if(void 0!==Rn){var ri=oq(a,Rn,!0);if(!ri)break a;hr(a,ri,ks);a.Rd(a.A,ri,!0)}a.Je(!0)||c||a.O("cpu busy or unavailable, run command ignored")}break;case "h":a:{var si;if(a.la.Ib)si="halting",a.Wb();else{if(sb(a,!0))break a;si="already halted"}c||a.O(si)}break;case "i":if("if"==g[0]){var ti;var Ze=b.substr(2),Ze=na(Ze);kq(a,Ze)?(c||a.O("true: "+Ze),ti=!0):(c||a.O("false: "+Ze),ti=!1);ti||(d=!1);break}if("int"==g[0]){var zg;a:switch(mq(a,g[1])){case 19:mk(a,19,a.F.Ha,
!0);a.ya=a.pa;zg=!0;break a;case 33:mk(a,33,a.F.Ha,!0);a.ya=a.pa;zg=!0;break a;default:zg=!1}zg||(d=!1);break}var ui=g[1];if(ui&&"?"!=ui){var vi=mq(a,ui);if(void 0!==vi){var ls=mc(a.ga,vi,1);a.O(u(vi)+": "+t(ls))}}else a.O("input commands:"),a.O("\ti [p]\tread port [p]"),a.O("warning: port accesses can affect hardware state");break;case "k":var ms=g[0];if("?"==g[1])a.O("stack trace commands:"),a.O("\tk\tshow frame addresses"),a.O("\tks\tshow symbol information");else{var wi=0,Sn=a.F.va.Z,$e=tq(a),
Uc=tq(a,I(a.F),a.F.ta.Z);for(a.O("stack trace for "+ar(Uc));10>wi;){for(var uc=null,ns=256;Uc.Ra>>>0<a.F.Ng>>>0;){$e.Ra=a.tb(Uc,!0);if(null==Uc.Ea||!ns--)break;$e.Z=Sn;if(uc=Lr(a,$e))break;$e.Z=a.tb(Uc);if(uc=Lr(a,$e,!0)){Sn=a.tb(Uc,!0);0<uc.indexOf("INT")&&a.tb(Uc,!0);break}}if(!uc||null==uc)break;var Tn=null;if("ks"==ms){var Un=uc.match(/[0-9A-F]+$/);Un&&(Tn=Ir(a,Un[0]))}uc=ma(uc,50)+" ;"+(Tn||"stack="+ar(Uc));a.O(uc);wi++}wi||a.O("no return addresses found")}break;case "l":if("ln"==g[0]){Ir(a,
g[1],!0);break}Jr(a,g);break;case "m":if("mouse"==g[0]){var xi=g[1],Ag=g[2];if(a.V){var Vn=1;"-"==Ag.charAt(0)&&(Vn=-1,Ag=Ag.substr(1));var sd=mq(a,Ag,xi);if(void 0!==sd)switch(sd=sd*Vn|0,xi){case "x":a.V.Hf(sd,0);break;case "y":a.V.Hf(0,sd);break;case "click":a.V.he(sd,!0);a.V.he(sd,!1);break;default:a.O("unknown action: "+xi)}}else a.O("no mouse");break}a:{var vc,wc=null,Oa=g[1];"?"==Oa&&(Oa=void 0);if(void 0!==Oa){var td=0;if("all"==Oa)td=1610481663,Oa=null;else if("on"==Oa)wc=!0,Oa=null;else if("off"==
Oa)wc=!1,Oa=null;else{"keys"==Oa&&(Oa="key");"kbd"==Oa&&(Oa="keyboard");for(vc in Bb)if(Oa==vc){td=Bb[vc];wc=!!(a.wc&td);break}if(!td){a.O("unknown message category: "+Oa);break a}}td&&("on"==g[2]?(a.wc|=td,wc=!0):"off"==g[2]&&(a.wc&=~td,wc=!1))}var os=0,Vc="";for(vc in Bb)if(!Oa||Oa==vc){var ps=!!(a.wc&Bb[vc]);if(null===wc||wc==ps)Vc&&(Vc+=","),++os%10||(Vc+="\n\t"),"key"==vc&&(vc="keys"),Vc+=vc}void 0===Oa&&a.O("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.O((null!==wc?
wc?"messages on: ":"messages off: ":"message categories:\n\t")+(Vc||"none"));vq(a)}break;case "o":var yi=g[1],qs=g[2];if(yi&&"?"!=yi){var zi=mq(a,yi,"port #"),Ai=mq(a,qs);void 0!==zi&&void 0!==Ai&&(qc(a.ga,zi,1,Ai),a.O(u(zi)+": "+t(Ai)))}else a.O("output commands:"),a.O("\to [p] [b]\twrite byte [b] to port [p]"),a.O("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){Kr(a,b.substr(5));break}var Wn="pr"==g[0]?1:0,ee=1+Wn;if(a.N)a.O("step in progress");else{var Ag,
Xn=!1,lb=tq(a,K(a.F),a.F.va.Z);do switch(Ag=!1,a.Qa(lb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:cr(a,lb,1);Ag=!0;break;case 204:case 206:a.N=ee;cr(a,lb,1);break;case 205:case 224:case 225:case 226:a.N=ee;cr(a,lb,lb.Rb?4:2);break;case 232:a.N=ee;cr(a,lb,lb.Rb?5:3);break;case 154:a.N=ee;cr(a,lb,lb.Rb?7:5);break;case 255:var Yn=a.tb(lb)&14591;if(4351==Yn||6399==Yn)a.N=ee,vr(a,lb);break;case 243:case 242:cr(a,lb,1);Xn=Ag=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:Xn&&
(a.N=ee,cr(a,lb,1))}while(Ag);a.N?(a.Rd(a.A,lb,!0),a.Je()||(a.X&&a.X.wd(),a.N=0)):Mr(a,Wn?"tr":"t")}break;case "r":if("reset"==b){a.X&&a.X.reset();break}nr(a,g);break;case "t":Mr(a,g[0],g[1]);break;case "u":or(a,g[1],g[2],8);break;case "v":if("var"==g[0]){Hr(a,b.substr(3))||(d=!1);break}a.O("PCx86 version 1.30.0 ("+a.F.ja+",RELEASE,NOPREFETCH"+(xb?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)");a.O(za());break;case "x":a:if(g[1]&&"?"!=g[1])switch(g[1]){case "cs":var bf;void 0!==g[3]&&(bf=+g[3]);switch(g[2]){case "int":a.F.Y.hf=
bf;break;case "start":a.F.Y.Jf=bf;break;case "stop":a.F.Y.kf=bf;break;default:a.O("unknown cs option");break a}void 0!==bf&&Tc(a.F);a.O("checksums "+(a.F.la.We?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(Zc(a.F,+g[2])||a.O("warning: using 1x multiplier, previous target not reached"));a.O("target speed: "+(a.F.Y.De.toFixed(2)+"Mhz")+" ("+a.F.Y.Wd+"x)");break;default:a.O("unknown option: "+g[1])}else a.O("execution options:"),a.O("\tcs int #\tset checksum cycle interval to #"),a.O("\tcs start #\tset checksum cycle start count to #"),
a.O("\tcs stop #\tset checksum cycle stop count to #"),a.O("\tsp #\t\tset speed multiplier to #");break;case "?":if(g[1]){Kr(a,b.substr(1));break}var cf="commands:",Bi;for(Bi in Aq)cf+="\n"+ma(Bi,7)+Aq[Bi];Vf(a)||(cf+="\nnote: frequency/history disabled if no exec breakpoints");a.O(cf);break;default:a.O("unknown command: "+b),d=!1}}}catch(Zn){a.O("debugger error: "+(Zn.stack||Zn.message)),d=!1}return d}function xq(a,b,c){b=ir(a,b,c);for(var d in b)if(!ur(a,b[+d]))return!1;return!0}
Sa(function(){for(var a=pb(document,"pcx86","debugger"),b=0;b<a.length;b++){var c=a[b],d=mb(c),d=new hq(d);ob(d,c)}});
wc?"messages on: ":"messages off: ":"message categories:\n\t")+(Vc||"none"));vq(a)}break;case "o":var yi=g[1],qs=g[2];if(yi&&"?"!=yi){var zi=mq(a,yi,"port #"),Ai=mq(a,qs);void 0!==zi&&void 0!==Ai&&(qc(a.ga,zi,1,Ai),a.O(u(zi)+": "+t(Ai)))}else a.O("output commands:"),a.O("\to [p] [b]\twrite byte [b] to port [p]"),a.O("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){Kr(a,b.substr(5));break}var Wn="pr"==g[0]?1:0,ee=1+Wn;if(a.N)a.O("step in progress");else{var Bg,
Xn=!1,lb=tq(a,K(a.F),a.F.va.Z);do switch(Bg=!1,a.Qa(lb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:cr(a,lb,1);Bg=!0;break;case 204:case 206:a.N=ee;cr(a,lb,1);break;case 205:case 224:case 225:case 226:a.N=ee;cr(a,lb,lb.Rb?4:2);break;case 232:a.N=ee;cr(a,lb,lb.Rb?5:3);break;case 154:a.N=ee;cr(a,lb,lb.Rb?7:5);break;case 255:var Yn=a.tb(lb)&14591;if(4351==Yn||6399==Yn)a.N=ee,vr(a,lb);break;case 243:case 242:cr(a,lb,1);Xn=Bg=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:Xn&&
(a.N=ee,cr(a,lb,1))}while(Bg);a.N?(a.Rd(a.A,lb,!0),a.Je()||(a.X&&a.X.wd(),a.N=0)):Mr(a,Wn?"tr":"t")}break;case "r":if("reset"==b){a.X&&a.X.reset();break}nr(a,g);break;case "t":Mr(a,g[0],g[1]);break;case "u":or(a,g[1],g[2],8);break;case "v":if("var"==g[0]){Hr(a,b.substr(3))||(d=!1);break}a.O("PCx86 version 1.30.0 ("+a.F.ja+",RELEASE,NOPREFETCH"+(xb?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)");a.O(za());break;case "x":a:if(g[1]&&"?"!=g[1])switch(g[1]){case "cs":var af;void 0!==g[3]&&(af=+g[3]);switch(g[2]){case "int":a.F.Y.hf=
af;break;case "start":a.F.Y.Jf=af;break;case "stop":a.F.Y.kf=af;break;default:a.O("unknown cs option");break a}void 0!==af&&Tc(a.F);a.O("checksums "+(a.F.la.We?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(Zc(a.F,+g[2])||a.O("warning: using 1x multiplier, previous target not reached"));a.O("target speed: "+(a.F.Y.De.toFixed(2)+"Mhz")+" ("+a.F.Y.Wd+"x)");break;default:a.O("unknown option: "+g[1])}else a.O("execution options:"),a.O("\tcs int #\tset checksum cycle interval to #"),a.O("\tcs start #\tset checksum cycle start count to #"),
a.O("\tcs stop #\tset checksum cycle stop count to #"),a.O("\tsp #\t\tset speed multiplier to #");break;case "?":if(g[1]){Kr(a,b.substr(1));break}var bf="commands:",Bi;for(Bi in Aq)bf+="\n"+ma(Bi,7)+Aq[Bi];Vf(a)||(bf+="\nnote: frequency/history disabled if no exec breakpoints");a.O(bf);break;default:a.O("unknown command: "+b),d=!1}}}catch(Zn){a.O("debugger error: "+(Zn.stack||Zn.message)),d=!1}return d}function xq(a,b,c){b=ir(a,b,c);for(var d in b)if(!ur(a,b[+d]))return!1;return!0}
Sa(function(){for(var a=pb(document,"pcx86","debugger"),b=0;b<a.length;b++){var c=a[b],d=mb(c),d=new sq(d);ob(d,c)}});
function Or(a,b,c){Wa.call(this,"Computer",a,Or,67108864);this.la.hc=!1;Pr(this,b);this.fa=Qc(this,"autoPower",a);this.N=0;this.ra=a.busWidth||a.buswidth;this.A=Qr;this.aa=null;this.V=this.pa=!1;this.ua=Qc(this,"url")||"";this.ya=(Math.random()+.1).toString(36).substr(2,12);this.B=Rr(this);if(this.F=kb("CPU",this.id)){this.ha=kb("Debugger",this.id);this.L=[];for(b=null;b=Hb(this,"Video",b);)this.L.push(b);this.ga=new Ob({id:this.ce+".bus",busWidth:this.ra},this.F,this.ha);var d,e=ib(this.id);if((this.C=
kb("Panel",this.id))&&this.C.Df)for(b=0;b<e.length;b++)d=e[b],d.Na=this.C.Na,d.O=this.C.O,d.Df=this.C.Df;this.O("PCx86 v1.30.0\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.Hc&&d.Hc(this,this.ga,this.F,this.ha);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.W=d:this.A=parseInt(d,10));var f;if(a=Qc(this,"state")||(f=!0,a.state))b=this.ia=a,f||(this.V=!0,this.A=Qr),this.A&&(this.ea=new kf(this,
"1.30.0"),this.ea.load()?b=null:delete this.ea);!b&&this.A&&(b=Sr(this))&&(this.V=!0);if(b){var g=this;xa(b,null,!0,function(a,b,c){c?(g.W=null,g.V=!1,g.Na("Unable to load machine state from server (error "+c+(b?": "+na(b):"")+")")):(g.aa=b,g.pa=!0);ub(g)})}else ub(this);this.qa.power||(this.fa=!0);!c&&this.fa&&Tr(this,this.$f)}else w("Unable to find CPU component")}fb(Or);var Qr=0;m=Or.prototype;m.ff=function(){return this.ya};