Fixed fault generation on invalid memory accesses; PDP-11 BASIC now starts up!
This commit is contained in:
parent
22e24697fe
commit
5f05913036
9 changed files with 360 additions and 351 deletions
|
|
@ -88,11 +88,11 @@ Hb.prototype.contains=function(a,b){return a>=this.x&&a<this.x+this.ad&&b>=this.
|
|||
l.Ic=function(a,b,c,d){this.X=a;this.ga=b;this.F=c;this.ha=d;this.B=Jb(a,"Keyboard")};l.hc=function(a,b){b||Kb();return!0};l.gc=function(){return!0};l.he=function(a,b){a.button||(this.ea=b?0:-1,Mb(this,a,b))};l.Kf=function(a){Mb(this,a)};
|
||||
function Mb(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.ea||(a.ea=Math.abs(a.L-d)>Math.abs(a.V-b)?1:2),1==a.ea?b=a.V:2==a.ea&&(d=a.L));a.L=d;a.V=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.A&&a.A.Se)for(f=0;f<a.A.Se.length;f++)if(e=a.A.Se[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.A.Bf[f],g=xa(Nb.Hk,a.A.Yg[d.El]),f=g*a.ga.Sb,d=(g+d.Td)*a.ga.Sb-1;0<b&&(f+=e.ad*(b-1)*a.ya);f+=c*a.ya;f|=0;
|
||||
f>d&&(f=d);c=f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.Ca)){b=c;if(a.context&&a.ia&&a.ka){e=a.ia.width;a.ka.fillStyle="black";a.ka.fillRect(0,360,e,360);Ob(a,378,a.ia,a.ka);a.pa=a.Da.width/24|0;if(null==b)Pb(a,"Mouse over memory to dump");else for(Pb(a,r(b,8,!0),null,0,1),f=1;16>=f;f++){d="";for(g=1;8>=g;g++){var h;h=a.ga;var k=b++;h=h.sa[(k&h.Gb)>>>h.La].re(k&h.A,k);Pb(a,r(h,2),null,1);d+=32<=h&&128>h?String.fromCharCode(h):"."}Pb(a,d,null,0,1)}a.context.drawImage(a.ia,0,360,e,360,a.qb,a.Db,a.Pa,a.cb)}a.Ca=
|
||||
c}}}l.pd=function(){};function Qb(a,b,c,d){a.A.Bf[a.A.fj++]={El:b,Td:c,type:d};return wa(Nb,b,c,0,d)}function Ob(a,b,c,d){var e,f=null.style.color,g=a.Oa=10;a.C=g;a.U=b;a.W=a.va=18;e||(e=a.ua||a.va+"px Monaco, Lucida Console, Courier New");a.fa=a.ua=e;c&&(a.Da=c);d&&(a.N=d,a.Fa=f||"white")}
|
||||
function Pb(a,b,c,d,e){a.N.font=a.fa;a.N.fillStyle=a.Fa;a.N.fillText(b,a.C,a.U);a.C+=a.pa;null!=c&&(16!=a.Tb?b=c.toString():(b=8>a.Ka?"0x":"",b+=r(c,a.Ka)),a.N.fillText(b,a.C,a.U),a.C+=a.pa);d&&(a.C+=a.pa*d);e&&(a.C=a.Oa,a.U+=(a.W+2)*(e||1))}function Kb(){for(var a=!1,b=tb(document,"pcx86","panel"),c=0;c<b.length;c++){var d=b[c],e=qb(d),f=ob(e.id);f||(a=!0,f=new Fb(e));sb(f,d);a&&xb(f)}}Xa(Kb);
|
||||
function Rb(a,b,c){bb.call(this,"Bus",a,Rb);this.F=b;this.ha=c;this.N=a.busWidth||20;this.W=Math.pow(2,this.N);this.Dg=this.Gb=this.W-1|0;this.La=32==this.N||20>=this.N?12:24>=this.N?14:15;this.Sb=1<<this.La;this.fa=this.Sb>>2;this.A=this.Sb-1;this.U=this.W/this.Sb|0;this.ga=this.U-1;this.B=[];this.C=[];this.L=this.V=!1;this.aa=[];this.ea=[];a=new B;Sb(a,this.ha);this.sa=Array(this.U);for(b=0;b<this.U;b++)this.sa[b]=a;a=this.F;b=this.sa;c=this.La;a.kd=a.sa=b;a.La=c;a.Sb=1<<a.La;a.Fa=a.Sb-1;a.Fd=b.length;
|
||||
c}}}l.pd=function(){};function Qb(a,b,c,d){a.A.Bf[a.A.fj++]={El:b,Td:c,type:d};return wa(Nb,b,c,0,d)}function Ob(a,b,c,d){var e,f=null.style.color,g=a.Oa=10;a.C=g;a.U=b;a.W=a.va=18;e||(e=a.ua||a.va+"px Monaco, Lucida Console, Courier New");a.fa=a.ua=e;c&&(a.Da=c);d&&(a.N=d,a.Ea=f||"white")}
|
||||
function Pb(a,b,c,d,e){a.N.font=a.fa;a.N.fillStyle=a.Ea;a.N.fillText(b,a.C,a.U);a.C+=a.pa;null!=c&&(16!=a.Tb?b=c.toString():(b=8>a.Ka?"0x":"",b+=r(c,a.Ka)),a.N.fillText(b,a.C,a.U),a.C+=a.pa);d&&(a.C+=a.pa*d);e&&(a.C=a.Oa,a.U+=(a.W+2)*(e||1))}function Kb(){for(var a=!1,b=tb(document,"pcx86","panel"),c=0;c<b.length;c++){var d=b[c],e=qb(d),f=ob(e.id);f||(a=!0,f=new Fb(e));sb(f,d);a&&xb(f)}}Xa(Kb);
|
||||
function Rb(a,b,c){bb.call(this,"Bus",a,Rb);this.F=b;this.ha=c;this.N=a.busWidth||20;this.W=Math.pow(2,this.N);this.Dg=this.Gb=this.W-1|0;this.La=32==this.N||20>=this.N?12:24>=this.N?14:15;this.Sb=1<<this.La;this.fa=this.Sb>>2;this.A=this.Sb-1;this.U=this.W/this.Sb|0;this.ga=this.U-1;this.B=[];this.C=[];this.L=this.V=!1;this.aa=[];this.ea=[];a=new B;Sb(a,this.ha);this.sa=Array(this.U);for(b=0;b<this.U;b++)this.sa[b]=a;a=this.F;b=this.sa;c=this.La;a.kd=a.sa=b;a.La=c;a.Sb=1<<a.La;a.Ea=a.Sb-1;a.Fd=b.length;
|
||||
a.hd=a.Fd-1;a=this.F;a.Gb=a.Db=this.Gb;xb(this)}jb(Rb);Rb.prototype.reset=function(){Tb(this,!0)};Rb.prototype.hc=function(a,b){b||this.reset();return!0};
|
||||
function Ub(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.La;0<g&&h<a.sa.length;){var k=a.sa[h],m=h*a.Sb,n=a.Sb-(f-m);n>g&&(n=g);if(k&&k.size){if(k.type==d&&k.controller==e){if(f+g<=k.Ea)return k.Qe+=k.Ea-f,k.Ea=f,!0;if(f>=k.Ea+k.Qe){n=k.size-(f-m);n>g&&(n=g);k.Qe=f-k.Ea+n;f=m+a.Sb;g-=n;h++;continue}}return Wb(a,1,f,g)}f=new B(f,n,a.Sb,d,e);Sb(f,a.ha,k);a.sa[h++]=f;f=m+a.Sb;g-=n}return 0>=g?(Xb(a.F),a.F.la.Ib||a.status(Math.floor(c/1024)+"Kb "+Yb[d]+" at "+r(b)),!0):Wb(a,2,b,c)}
|
||||
function Ub(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.La;0<g&&h<a.sa.length;){var k=a.sa[h],m=h*a.Sb,n=a.Sb-(f-m);n>g&&(n=g);if(k&&k.size){if(k.type==d&&k.controller==e){if(f+g<=k.Fa)return k.Qe+=k.Fa-f,k.Fa=f,!0;if(f>=k.Fa+k.Qe){n=k.size-(f-m);n>g&&(n=g);k.Qe=f-k.Fa+n;f=m+a.Sb;g-=n;h++;continue}}return Wb(a,1,f,g)}f=new B(f,n,a.Sb,d,e);Sb(f,a.ha,k);a.sa[h++]=f;f=m+a.Sb;g-=n}return 0>=g?(Xb(a.F),a.F.la.Ib||a.status(Math.floor(c/1024)+"Kb "+Yb[d]+" at "+r(b)),!0):Wb(a,2,b,c)}
|
||||
var Nb,$b={Hk:20,count:8,Ko:1,type:3},ac=0,bc;for(bc in $b){var cc=$b[bc];$b[bc]={vh:(1<<cc)-1<<ac,shift:ac};ac+=cc}Nb=$b;function Tb(a,b){32==a.N?b?a.X&&(dc(a,1048576,1048576,a.X),a.X=null):a.X||(a.X=ec(a,1048576,1048576),dc(a,1048576,1048576,ec(a,0,1048576))):20<a.N&&(b=a.Gb&-1048577|(b?1048576:0),b!=a.Gb&&(a.Gb=b,a.F&&(a=a.F,a.Gb=a.Db=b)))}l=Rb.prototype;
|
||||
l.Vg=function(a,b,c,d){if(!(a&this.A||!b||b&this.A)){for(var e=a>>>this.La;0<b;){var f=this.sa[e];if(!f.controller)return Wb(this,3,a,b,d);fc(f,c,!0);b-=this.Sb;e++}return!0}return Wb(this,4,a,b)};function gc(a,b,c){if(!(b&a.A||!c||c&a.A)){for(var d=b>>>a.La;0<c;){var e=a.sa[d];b=new B(b);Sb(b,a.ha,e);a.sa[d++]=b;b=d*a.Sb;c-=a.Sb}Xb(a.F);return!0}return Wb(a,5,b,c)}function ec(a,b,c){var d=[];for(b>>>=a.La;0<c&&b<a.sa.length;)d.push(a.sa[b++]),c-=a.Sb;return d}
|
||||
function dc(a,b,c,d,e){for(var f=0,g=b>>>a.La;0<c&&g<a.sa.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new B(b),m=k,n=e,t=a.ha;m.id=h.id|1;m.Qe=h.Qe;m.size=h.size;n&&(m.type=n,m.N=n==hc);Ab?(m.X=h.X,m.qa=h.qa,m.Za=h.Za,m.de=h.de,m.da=h.da,fc(m,ic?jc:kc)):(m.da=h.da,fc(m,lc));Sb(m,t,h);h=k}a.sa[g++]=h;c-=a.Sb}}l.Qa=function(a){return this.sa[(a&this.Gb)>>>this.La].pc(a&this.A,a)};
|
||||
|
|
@ -103,20 +103,20 @@ function oc(a,b){var c=0,d=[],e=!a.X&&a.Dg==a.Gb;e||Tb(a,!0);for(var f=0;f<a.U;f
|
|||
function qc(a,b,c,d){void 0===d&&(d=0);for(var e in c){var f=a,g=+e+d,h=c[e].bind(b);if(h)for(var k=+e+d;k<=g;k++)void 0!==f.B[k]?w("Input port "+v(k)+" already registered"):f.B[k]=[h,!1]}}function rc(a,b,c,d){for(var e=0,f=0;0<c;){var g=a.B[b],h=a.aa[b]||1,k=1==h?255:2==h?65535:-1,m=k;void 0!==g?(g[0]&&(m=g[0](b,d),void 0===m?m=k:m&=k),a.ha&&a.L!=g[1]&&wc(a.ha,b,m)):a.ha&&(ub(a.ha,a,b,null,d),a.L&&wc(a.ha,b,m));e|=m<<f;f+=h<<3;b+=h;c-=h}return e}
|
||||
function xc(a,b){if(void 0===b)return a.V=!a.V,a.V;void 0===a.C[b]&&(a.C[b]=[null,!1]);a.C[b][1]=!a.C[b][1];return a.C[b][1]}function yc(a,b,c,d){void 0===d&&(d=0);for(var e in c){var f=a,g=+e+d,h=c[e].bind(b);if(h)for(var k=+e+d;k<=g;k++)void 0!==f.C[k]?w("Output port "+v(k)+" already registered"):f.C[k]=[h,!1]}}
|
||||
function zc(a,b,c,d,e){for(var f=0;0<c;){var g=a.C[b],h=a.ea[b]||1,k=1==h?255:2==h?65535:-1,k=(d>>>=f)&k;if(void 0!==g){if(g[0])g[0](b,k,e);a.ha&&a.V!=g[1]&&Ac(a.ha,b,k)}else a.ha&&(ub(a.ha,a,b,k,e),a.V&&Ac(a.ha,b,k));f+=h<<3;b+=h;c-=h}}function Wb(a,b,c,d,e){b="Memory block error ("+b+": "+r(c)+","+r(d)+")";e?a.ha?a.ha.message(b):a.log(b):w(b);return!1}var Bc;if(Ab){var Cc=new ArrayBuffer(2);(new DataView(Cc)).setUint16(0,256,!0);Bc=256===(new Uint16Array(Cc))[0]}else Bc=!1;var ic=Bc;
|
||||
function B(a,b,c,d,e,f){this.id=Dc+=2;this.da=null;this.C=0;this.Ea=a;this.Qe=b;this.size=c||0;this.type=d||Ec;this.N=d==hc;this.controller=null;this.F=f;Sb(this);this.Wa=this.tj=!1;if(c)if(e)this.controller=e,a=e.wj(a),this.da=a[0],this.C=a[1],fc(this,e.nh());else if(Ab)this.X=new ArrayBuffer(c),this.qa=new DataView(this.X,0,c),this.Za=new Uint8Array(this.X,0,c),this.de=new Uint16Array(this.X,0,c>>1),this.da=new Int32Array(this.X,0,c>>2),fc(this,ic?jc:kc);else{this.da=Array(c>>2);for(e=0;e<this.da.length;e++)this.da[e]=
|
||||
function B(a,b,c,d,e,f){this.id=Dc+=2;this.da=null;this.C=0;this.Fa=a;this.Qe=b;this.size=c||0;this.type=d||Ec;this.N=d==hc;this.controller=null;this.F=f;Sb(this);this.Wa=this.tj=!1;if(c)if(e)this.controller=e,a=e.wj(a),this.da=a[0],this.C=a[1],fc(this,e.nh());else if(Ab)this.X=new ArrayBuffer(c),this.qa=new DataView(this.X,0,c),this.Za=new Uint8Array(this.X,0,c),this.de=new Uint16Array(this.X,0,c>>1),this.da=new Int32Array(this.X,0,c>>2),fc(this,ic?jc:kc);else{this.da=Array(c>>2);for(e=0;e<this.da.length;e++)this.da[e]=
|
||||
0;fc(this,lc)}else fc(this)}var Ec=0,hc=2,Fc=["black","blue","green","cyan"],Yb="NONE RAM ROM VIDEO H/W UNPAGED PAGED".split(" "),Dc=0;function Gc(a){Ab&&!ic&&(a=a<<24|a<<8&16711680|a>>8&65280|a>>>24);return a}
|
||||
B.prototype={constructor:B,parent:null,qh:function(a){this.Ea=a},save:function(){var a,b;if(this.controller)a=null;else if(Ab)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.qa.getInt32(b<<2,!0);else a=this.da;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(Ab)for(b=0;b<a.length;b++)this.qa.setInt32(b<<2,a[b],!0);else this.da=a;return this.Wa=!0}return!1},Rd:function(a,b,c){b?this.Ae++||(c&&(this.F=c),Jc(this,Ic,!1)):this.ze++||(c&&(this.F=c),
|
||||
Hc(this,Ic,!1))},ia:function(){this.ha&&z(this.ha,129)&&this.ha.message("attempt to read invalid block %"+r(this.Ea),!0);return 255},L:function(a,b){this.ha&&z(this.ha,129)&&this.ha.message("attempt to write "+v(b)+" to invalid block %"+r(this.Ea),!0)},ka:function(a,b){return this.pc(a++,b++)|this.pc(a,b)<<8},ea:function(a,b){return this.pc(a++,b++)|this.pc(a++,b++)<<8|this.pc(a++,b++)<<16|this.pc(a,b)<<24},W:function(a,b,c){this.sc(a++,b&255,c++);this.sc(a,b>>8,c)},U:function(a,b,c){this.sc(a++,
|
||||
b&255,c++);this.sc(a++,b>>8&255,c++);this.sc(a++,b>>16&255,c++);this.sc(a,b>>>24,c)},Fa:function(a){return this.da[a>>2]>>>((a&3)<<3)&255},sb:function(a){var b=a>>2;a=(a&3)<<3;var c=this.da[b]>>a;return 24>a?c&65535:c&255|(this.da[b+1]&255)<<8},Ya:function(a){var b=a>>2;a=(a&3)<<3;var c=this.da[b];a&&(c=c>>>a|this.da[b+1]<<32-a);return c},tc:function(a,b){var c=a>>2;a=(a&3)<<3;this.da[c]=this.da[c]&~(255<<a)|b<<a;this.Wa=!0},Cd:function(a,b){var c=a>>2;a=(a&3)<<3;24>a?this.da[c]=this.da[c]&~(65535<<
|
||||
a)|b<<a:(this.da[c]=this.da[c]&16777215|b<<24,c++,this.da[c]=this.da[c]&-256|b>>8);this.Wa=!0},Wc:function(a,b){var c=a>>2;if(a=(a&3)<<3){var d=-1<<a;this.da[c]=this.da[c]&~d|b<<a;c++;this.da[c]=this.da[c]&d|b>>>32-a}else this.da[c]=b;this.Wa=!0},Da:function(a,b){this.ha&&null!=this.Ea&&Kc(this.ha,this.Ea+a)||this.F&&Lc(this.F,b,1,!1);return this.re(a,b)},qb:function(a,b){this.ha&&null!=this.Ea&&Kc(this.ha,this.Ea+a,2)||this.F&&Lc(this.F,b,2,!1);return this.fg(a,b)},Pa:function(a,b){this.ha&&null!=
|
||||
this.Ea&&Kc(this.ha,this.Ea+a,4)||this.F&&Lc(this.F,b,4,!1);return this.si(a,b)},bc:function(a,b,c){this.ha&&null!=this.Ea&&Mc(this.ha,this.Ea+a)||this.F&&Lc(this.F,c,1,!0);this.N?this.L(a,b,c):this.xf(a,b,c)},sd:function(a,b,c){this.ha&&null!=this.Ea&&Mc(this.ha,this.Ea+a,2)||this.F&&Lc(this.F,c,2,!0);this.N?this.L(a,b,c):this.zi(a,b,c)},Vc:function(a,b,c){this.ha&&null!=this.Ea&&Mc(this.ha,this.Ea+a,4)||this.F&&Lc(this.F,c,4,!0);this.N?this.L(a,b,c):this.ua(a,b,c)},Ja:function(a,b){this.yb.da[this.A]|=
|
||||
this.ga;this.zb.da[this.B]|=this.ga;return this.Bd.pc(a,b)},Jb:function(a,b){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.ga;return this.Bd.sf(a,b)},fb:function(a,b){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.ga;return this.Bd.Md(a,b)},Cc:function(a,b,c){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.V;this.Bd.sc(a,b,c)},Gd:function(a,b,c){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.V;this.Bd.zf(a,b,c)},hd:function(a,b,c){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=
|
||||
this.V;this.Bd.yf(a,b,c)},Ka:function(a,b){return Nc(this.F,b,!1).pc(a,b)},xd:function(a,b){return Nc(this.F,b,!1).sf(a,b)},gb:function(a,b){return Nc(this.F,b,!1).Md(a,b)},Uc:function(a,b,c){Nc(this.F,c,!0).sc(a,b,c)},Hd:function(a,b,c){Nc(this.F,c,!0).zf(a,b,c)},jd:function(a,b,c){Nc(this.F,c,!0).yf(a,b,c)},Ca:function(a){return this.Za[a]},aa:function(a){return this.Za[a]},Ga:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.pc=this.aa;return this.Za[a]},Tb:function(a){return this.qa.getUint16(a,
|
||||
B.prototype={constructor:B,parent:null,qh:function(a){this.Fa=a},save:function(){var a,b;if(this.controller)a=null;else if(Ab)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.qa.getInt32(b<<2,!0);else a=this.da;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(Ab)for(b=0;b<a.length;b++)this.qa.setInt32(b<<2,a[b],!0);else this.da=a;return this.Wa=!0}return!1},Rd:function(a,b,c){b?this.Ae++||(c&&(this.F=c),Jc(this,Ic,!1)):this.ze++||(c&&(this.F=c),
|
||||
Hc(this,Ic,!1))},ia:function(a,b){this.ha&&z(this.ha,129)&&this.ha.message("attempt to read invalid block %"+r(b),!0);return 255},L:function(a,b,c){this.ha&&z(this.ha,129)&&this.ha.message("attempt to write "+v(b)+" to invalid block %"+r(c),!0)},ka:function(a,b){return this.pc(a++,b++)|this.pc(a,b)<<8},ea:function(a,b){return this.pc(a++,b++)|this.pc(a++,b++)<<8|this.pc(a++,b++)<<16|this.pc(a,b)<<24},W:function(a,b,c){this.sc(a++,b&255,c++);this.sc(a,b>>8,c)},U:function(a,b,c){this.sc(a++,b&255,c++);
|
||||
this.sc(a++,b>>8&255,c++);this.sc(a++,b>>16&255,c++);this.sc(a,b>>>24,c)},Ea:function(a){return this.da[a>>2]>>>((a&3)<<3)&255},sb:function(a){var b=a>>2;a=(a&3)<<3;var c=this.da[b]>>a;return 24>a?c&65535:c&255|(this.da[b+1]&255)<<8},Ya:function(a){var b=a>>2;a=(a&3)<<3;var c=this.da[b];a&&(c=c>>>a|this.da[b+1]<<32-a);return c},tc:function(a,b){var c=a>>2;a=(a&3)<<3;this.da[c]=this.da[c]&~(255<<a)|b<<a;this.Wa=!0},Cd:function(a,b){var c=a>>2;a=(a&3)<<3;24>a?this.da[c]=this.da[c]&~(65535<<a)|b<<a:
|
||||
(this.da[c]=this.da[c]&16777215|b<<24,c++,this.da[c]=this.da[c]&-256|b>>8);this.Wa=!0},Wc:function(a,b){var c=a>>2;if(a=(a&3)<<3){var d=-1<<a;this.da[c]=this.da[c]&~d|b<<a;c++;this.da[c]=this.da[c]&d|b>>>32-a}else this.da[c]=b;this.Wa=!0},Da:function(a,b){this.ha&&null!=this.Fa&&Kc(this.ha,this.Fa+a)||this.F&&Lc(this.F,b,1,!1);return this.re(a,b)},qb:function(a,b){this.ha&&null!=this.Fa&&Kc(this.ha,this.Fa+a,2)||this.F&&Lc(this.F,b,2,!1);return this.fg(a,b)},Pa:function(a,b){this.ha&&null!=this.Fa&&
|
||||
Kc(this.ha,this.Fa+a,4)||this.F&&Lc(this.F,b,4,!1);return this.si(a,b)},bc:function(a,b,c){this.ha&&null!=this.Fa&&Mc(this.ha,this.Fa+a)||this.F&&Lc(this.F,c,1,!0);this.N?this.L(a,b,c):this.xf(a,b,c)},sd:function(a,b,c){this.ha&&null!=this.Fa&&Mc(this.ha,this.Fa+a,2)||this.F&&Lc(this.F,c,2,!0);this.N?this.L(a,b,c):this.zi(a,b,c)},Vc:function(a,b,c){this.ha&&null!=this.Fa&&Mc(this.ha,this.Fa+a,4)||this.F&&Lc(this.F,c,4,!0);this.N?this.L(a,b,c):this.ua(a,b,c)},Ja:function(a,b){this.yb.da[this.A]|=this.ga;
|
||||
this.zb.da[this.B]|=this.ga;return this.Bd.pc(a,b)},Jb:function(a,b){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.ga;return this.Bd.sf(a,b)},fb:function(a,b){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.ga;return this.Bd.Md(a,b)},Cc:function(a,b,c){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.V;this.Bd.sc(a,b,c)},Gd:function(a,b,c){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.V;this.Bd.zf(a,b,c)},hd:function(a,b,c){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.V;
|
||||
this.Bd.yf(a,b,c)},Ka:function(a,b){return Nc(this.F,b,!1).pc(a,b)},xd:function(a,b){return Nc(this.F,b,!1).sf(a,b)},gb:function(a,b){return Nc(this.F,b,!1).Md(a,b)},Uc:function(a,b,c){Nc(this.F,c,!0).sc(a,b,c)},Hd:function(a,b,c){Nc(this.F,c,!0).zf(a,b,c)},jd:function(a,b,c){Nc(this.F,c,!0).yf(a,b,c)},Ca:function(a){return this.Za[a]},aa:function(a){return this.Za[a]},Ga:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.pc=this.aa;return this.Za[a]},Tb:function(a){return this.qa.getUint16(a,
|
||||
!0)},pa:function(a){return a&1?this.Za[a]|this.Za[a+1]<<8:this.de[a>>1]},Db:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.sf=this.pa;return a&1?this.Za[a]|this.Za[a+1]<<8:this.de[a>>1]},Oa:function(a){return this.qa.getInt32(a,!0)},fa:function(a){return a&3?this.Za[a]|this.Za[a+1]<<8|this.Za[a+2]<<16|this.Za[a+3]<<24:this.da[a>>2]},cb:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.Md=this.fa;return a&3?this.Za[a]|this.Za[a+1]<<8|this.Za[a+2]<<16|this.Za[a+3]<<24:this.da[a>>
|
||||
2]},Ub:function(a,b){this.Za[a]=b;this.Wa=!0},ra:function(a,b){this.Za[a]=b;this.Wa=!0},uc:function(a,b){this.Za[a]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.sc=this.ra;this.Bd.Wa=!0},qd:function(a,b){this.qa.setUint16(a,b,!0);this.Wa=!0},ya:function(a,b){a&1?(this.Za[a]=b,this.Za[a+1]=b>>8):this.de[a>>1]=b;this.Wa=!0},Fd:function(a,b){a&1?(this.Za[a]=b,this.Za[a+1]=b>>8):this.de[a>>1]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.zf=this.ya;this.Bd.Wa=!0},ce:function(a,b){this.qa.setInt32(a,
|
||||
b,!0);this.Wa=!0},va:function(a,b){a&3?(this.Za[a]=b,this.Za[a+1]=b>>8,this.Za[a+2]=b>>16,this.Za[a+3]=b>>24):this.da[a>>2]=b;this.Wa=!0},Xc:function(a,b){a&3?(this.Za[a]=b,this.Za[a+1]=b>>8,this.Za[a+2]=b>>16,this.Za[a+3]=b>>24):this.da[a>>2]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.yf=this.va;this.Bd.Wa=!0}};function Sb(a,b,c){a.ha=b;a.ze=a.Ae=0;c&&(c.F&&(a.F=c.F),(a.ze=c.ze)&&Hc(a,Ic,!1),(a.Ae=c.Ae)&&Jc(a,Ic,!1))}
|
||||
function Oc(a){a.sc=a.N?a.L:a.xf;a.zf=a.N?a.W:a.zi;a.yf=a.N?a.U:a.ua}function Pc(a){a.pc=a.re;a.sf=a.fg;a.Md=a.si}function Jc(a,b,c){c&&a.Ae||(a.sc=!a.N&&b[1]||a.L,a.zf=!a.N&&b[3]||a.W,a.yf=!a.N&&b[5]||a.U);if(c||void 0===c)a.xf=b[1]||a.L,a.zi=b[3]||a.W,a.ua=b[5]||a.U}function Hc(a,b,c){c&&a.ze||(a.pc=b[0]||a.ia,a.sf=b[2]||a.ka,a.Md=b[4]||a.ea);if(c||void 0===c)a.re=b[0]||a.ia,a.fg=b[2]||a.ka,a.si=b[4]||a.ea}function fc(a,b,c){b||(b=5==a.type?Qc:6==a.type?Sc:Tc);Hc(a,b,c);Jc(a,b,c)}
|
||||
var Tc=[],lc=[B.prototype.Fa,B.prototype.tc,B.prototype.sb,B.prototype.Cd,B.prototype.Ya,B.prototype.Wc],Ic=[B.prototype.Da,B.prototype.bc,B.prototype.qb,B.prototype.sd,B.prototype.Pa,B.prototype.Vc],Sc=[B.prototype.Ja,B.prototype.Cc,B.prototype.Jb,B.prototype.Gd,B.prototype.fb,B.prototype.hd],Qc=[B.prototype.Ka,B.prototype.Uc,B.prototype.xd,B.prototype.Hd,B.prototype.gb,B.prototype.jd];
|
||||
var Tc=[],lc=[B.prototype.Ea,B.prototype.tc,B.prototype.sb,B.prototype.Cd,B.prototype.Ya,B.prototype.Wc],Ic=[B.prototype.Da,B.prototype.bc,B.prototype.qb,B.prototype.sd,B.prototype.Pa,B.prototype.Vc],Sc=[B.prototype.Ja,B.prototype.Cc,B.prototype.Jb,B.prototype.Gd,B.prototype.fb,B.prototype.hd],Qc=[B.prototype.Ka,B.prototype.Uc,B.prototype.xd,B.prototype.Hd,B.prototype.gb,B.prototype.jd];
|
||||
if(Ab)var kc=[B.prototype.Ca,B.prototype.Ub,B.prototype.Tb,B.prototype.qd,B.prototype.Oa,B.prototype.ce],jc=[B.prototype.aa,B.prototype.ra,B.prototype.pa,B.prototype.ya,B.prototype.fa,B.prototype.va],Vc=[B.prototype.Ga,B.prototype.uc,B.prototype.Db,B.prototype.Fd,B.prototype.cb,B.prototype.Xc];
|
||||
function Wc(a,b){bb.call(this,"CPU",a,Wc,1);b=a.cycles||b;var c=a.multiplier||1;this.Y={};this.Y.Id=b;this.Y.Wd=c;this.Y.Ag=Math.round(this.Y.Id/1E4)/100;this.Y.He=this.Y.Ag*this.Y.Wd;this.la.Ib=!1;this.la.yi=!1;this.la.Cf=a.autoStart;this.la.oj=!1;this.la.Xe=!1;this.Y.Lf=this.Y.kf=0;this.Y.Mf=a.csStart;this.Y.jf=a.csInterval;this.Y.lf=a.csStop;this.Ai=this.Ne.bind(this);xb(this)}jb(Wc);var Xc=["power","reset"];l=Wc.prototype;
|
||||
l.Ic=function(a,b,c,d){this.X=a;this.ga=b;this.ha=d;for(b=0;b<Xc.length;b++)(c=this.qa[Xc[b]])&&this.X.Pb(null,Xc[b],c);this.Tb=Jb(a,"FPU");this.N=Jb(a,"ChipSet");a=Yc(a,"autoStart");null!=a&&(this.la.Cf="true"==a?!0:"false"==a?!1:!!a);xb(this)};l.reset=function(){};l.save=function(){return null};l.restore=function(){return!1};
|
||||
|
|
@ -147,7 +147,7 @@ function ld(a,b,c,d){void 0===c&&(c=!!(a.F.$a&1));a.bd=!1;if(c)if(a.load=a.zg,a.
|
|||
a.Xb+5,d=a.F.Qa(c),d&1||a.F.qc(c,d|1))}b&&(a.Lb=a.Z&3,a.Gc=(a.wb&24576)>>13,80386>a.F.ja||!(a.ext&64)?(a.ba=2,a.R=65535):(a.ba=4,a.R=-1),a.Tc=a.ba,a.Ba=a.R)}else a.load=a.uh,a.Cj=a.Xm,a.mc=a.ij,a.nc=a.kj,a.Lb=a.Gc=0,a.Xb=-1,a.df=!1}
|
||||
function Gd(a){this.ja=+a.model||8088;var b=a.stepping;this.Uc=this.ja+(b?ea(b,16):0);switch(this.ja){default:b=4772727;break;case 80286:b=6E6;break;case 80386:b=16E6}Wc.call(this,a,b);this.ag=61442;this.Cc=1792;this.Zf=28672;this.Cd=4;this.ra=255;this.B=80286<=this.ja?Cb:Bb;this.W=Hd;this.eg=Id;this.kg=Jd;this.lg=Kd;if(80186<=this.ja&&(this.W=Hd.slice(),this.eg=Id.slice(),this.kg=Jd.slice(),this.ra=31,this.W[15]=Ld,this.W[96]=Md,this.W[97]=Nd,this.W[98]=Od,this.W[99]=Ld,this.W[100]=Ld,this.W[101]=
|
||||
Ld,this.W[102]=Ld,this.W[103]=Ld,this.W[104]=Pd,this.W[105]=Qd,this.W[106]=Rd,this.W[107]=Sd,this.W[108]=Td,this.W[109]=Xd,this.W[110]=Yd,this.W[111]=Zd,this.W[192]=ee,this.W[193]=fe,this.W[200]=ge,this.W[201]=he,this.W[241]=ie,this.eg[7]=je,this.kg[7]=je,80286<=this.ja)){this.ag=2;this.Cc|=28672;this.Cd=0;this.W[15]=ke;this.tc=le.slice();for(a=0;a<this.tc.length;a++)this.tc[a]||(this.tc[a]=me);this.W[84]=ne;this.W[99]=oe;if(80386<=this.ja){var c;this.Zf=0;this.Cc|=196608;this.W[100]=pe;this.W[101]=
|
||||
qe;this.W[102]=re;this.W[103]=se;for(c in N)this.tc[+c]=N[+c];80546<=this.Uc&&80562>=this.Uc&&(this.tc[166]=te,this.tc[167]=ue)}}this.Hd=[];this.je=[];this.le=0;Zc(this);this.la.complete=this.la.nj=!1;this.Wg=0;this.kd=this.sa=[];this.La=this.Sb=this.Fa=this.Fd=this.hd=this.Gb=this.Db=0;ve(this)}jb(Gd,Wc);function we(a,b,c,d){b=(d?a.kd:a.sa)[b>>>a.La];c?--b.Ae||Oc(b):--b.ze||Pc(b);d&&Xb(a)}
|
||||
qe;this.W[102]=re;this.W[103]=se;for(c in N)this.tc[+c]=N[+c];80546<=this.Uc&&80562>=this.Uc&&(this.tc[166]=te,this.tc[167]=ue)}}this.Hd=[];this.je=[];this.le=0;Zc(this);this.la.complete=this.la.nj=!1;this.Wg=0;this.kd=this.sa=[];this.La=this.Sb=this.Ea=this.Fd=this.hd=this.Gb=this.Db=0;ve(this)}jb(Gd,Wc);function we(a,b,c,d){b=(d?a.kd:a.sa)[b>>>a.La];c?--b.Ae||Oc(b):--b.ze||Pc(b);d&&Xb(a)}
|
||||
function xe(a){var b;if(a.sa===a.kd){a.sa=Array(a.Fd);a.ke=new B(null,0,0,5,null,a);Sb(a.ke,a.ha);for(b=0;b<a.Fd;b++)a.sa[b]=a.ke;a.jd=new B;a.dg=Array(512);a.me=0}else for(var c=0;c<a.Gd.length;c++){b=a.Gd[c];var d=a.sa[b];512>a.me&&(a.dg[a.me++]=d);a.sa[b]=a.ke}a.Gd=[]}function Xb(a){a.$a&-2147483648&&xe(a)}
|
||||
function Nc(a,b,c,d){var e=(b&-4194304)>>>20,f=a.kd[(a.Od+e&a.Gb)>>>a.La],g=f.Md(e);if(!(g&1))return d||ye.call(a,b,!1,c),a.jd;if(!(g&4)&&3==a.pa)return d||ye.call(a,b,!0,c),a.jd;var h=(b&4190208)>>>10,g=a.kd[((g&-4096)+h&a.Gb)>>>a.La],k=g.Md(h);if(!(k&1))return d||ye.call(a,b,!1,c),a.jd;if(!(k&4)&&3==a.pa)return d||ye.call(a,b,!0,c),a.jd;c=a.kd[((k&-4096)+(b&4095)&a.Gb)>>>a.La];if(d)return c;d=b>>>a.La;k=a.sa[d];b&=-4096;var m;0<a.me?(m=a.dg[--a.me],m.qh(b)):m=new B(b,0,0,6);b=m;b.Bd=c;b.yb=f;b.A=
|
||||
e>>2;b.zb=g;b.B=h>>2;Ab&&ic&&c.da&&!c.controller&&!c.ze&&!c.Ae?(b.Za=c.Za,b.de=c.de,b.da=c.da,fc(b,Vc)):(b.ga=c?Gc(32):0,b.V=c?Gc(96):0,fc(b,Sc));Sb(b,a.ha,k);a.sa[d]=b;a.Gd.push(d);return b}function ze(a){a.sa!==a.kd&&(a.sa=a.kd,a.ke=null,a.Gd=null,a.jd=null)}l=Gd.prototype;l.reset=function(){this.la.Ib&&this.Wb();ve(this);Zc(this);this.la.error=!1};
|
||||
|
|
@ -156,7 +156,7 @@ function ve(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.v
|
|||
0];a.Ee=[null,null,null,null,null,null,0,0];a.Nb=new kd(a,2,"FS");a.Ob=new kd(a,2,"GS");ze(a)}a.rf=new kd(a,0,"NULL");a.ka=a.vb;a.Ka=a.ta;a.S=a.Ia=0;a.D=a.C=-1;a.$b=a.rf;a.ua=0;if(80286>a.ja)Ed(a,0,65535);else{a.Ec=0;a.zd=65535;a.Bc=new kd(a,5,"LDT",!0);a.Sa=new kd(a,4,"TSS",!0);a.Da=new kd(a,6,"VER",!0);Ed(a,65520,61440);var b,c=M(a);b=a.wa;var d=-65536;80386>b.F.ja&&(d&=16777215);b=b.Aa=d;a.Ha=b+c|0;a.hf=(b>>>0)+(a.wa.Ta>>>0)+1}Dd(a,0);wd(a)}
|
||||
function Ce(a){2==a.Tc?(a.cc=a.na,a.Oa=De,a.Ya=Ee,a.Jb=Fe,2==a.ba?(a.V=Ie,a.ea=Je,a.ya=Ke):(a.V=Le,a.ea=Me,a.ya=Ne)):(a.cc=a.oa,a.Oa=Oe,a.Ya=Pe,a.Jb=Qe,2==a.ba?(a.V=cf,a.ea=df,a.ya=ef):(a.V=ff,a.ea=gf,a.ya=hf))}function xd(a,b){a.ba!=b&&(a.Ia|=1024,a.ba=b,a.R=2==b?65535:-1,jf(a))}function jf(a){2==a.ba?(a.Ga=32768,a.tb=a.na,a.rc=a.jb,2==a.Tc?(a.V=Ie,a.ea=Je,a.ya=Ke):(a.V=cf,a.ea=df,a.ya=ef)):(a.Ga=-2147483648,a.tb=a.oa,a.rc=a.nb,2==a.Tc?(a.V=Le,a.ea=Me,a.ya=Ne):(a.V=ff,a.ea=gf,a.ya=hf))}
|
||||
function kf(a){a.Tc=a.wa.Tc;a.Ba=a.wa.Ba;Ce(a);a.ba=a.wa.ba;a.R=a.wa.R;jf(a);a.Ia&=-3073}l.vj=function(){var a=this.G+this.H+this.I+this.M+J(this)+this.P+this.K+this.J|0;return a=a+M(this)+this.wa.Z+this.vb.Z+this.ta.Z+this.Xa.Z+Cd(this)|0};function lf(a,b,c){void 0===a.Hd[b]&&(a.Hd[b]=[]);a.Hd[b].push(c)}function mf(a,b,c){c&&(null==a.je[b]&&a.le++,a.je[b]=c)}function nf(a,b){var c=a.je[b];null!=c&&(c(--a.le),delete a.je[b])}
|
||||
function of(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):(g=a.sa[g>>>a.La],f?--g.Ae||Oc(g):--g.ze||Pc(g))}c>>=2;d>>=4}}function Lc(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 of(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.Ea,f,a):(g=a.sa[g>>>a.La],f?--g.Ae||Oc(g):--g.ze||Pc(g))}c>>=2;d>>=4}}function Lc(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 wd(a,b,c){void 0===b&&(b=!!(a.$a&1));void 0===c&&(c=!!(a.ca&131072));a.lg=b&&!c?pf:Kd;ld(a.wa,!1,b,c);ld(a.vb,!1,b,c);ld(a.ta,!1,b,c);ld(a.Xa,!1,b,c);80386<=a.ja&&(ld(a.Nb,!1,b,c),ld(a.Ob,!1,b,c));kf(a)}
|
||||
l.save=function(){var a=new qf(this);a.set(0,[this.G,this.H,this.I,this.M,J(this),this.P,this.K,this.J]);var b=M(this),c=this.wa.save(),d=this.vb.save(),e=this.ta.save(),f=this.Xa.save(),g;null!=this.Ec?(g=[this.$a,this.Ec,this.zd,this.Mc,this.Sd,this.Bc.save(),this.Sa.save(),this.Pa],80386<=this.ja&&(g.push(this.ti),g.push(this.se),g.push(this.Od),g.push(this.Ja),g.push(this.Ee))):g=null;b=[b,c,d,e,f,g,Cd(this)];80386<=this.ja&&(b.push(this.Nb.save()),b.push(this.Ob.save()));a.set(1,b);a.set(2,[this.ka.kc,
|
||||
this.Ka.kc,this.S,this.Ia,this.ua,this.D,this.C]);a.set(3,[0,this.uc,this.Y.Wd]);a.set(4,oc(this.ga,!!(this.$a&-2147483648)));return a.data()};
|
||||
|
|
@ -171,9 +171,9 @@ function Cf(a){a.resultType&32&&(a.ca&=-2049,(a.Wc^a.Vc)&(a.sd^a.Vc)&a.resultTyp
|
|||
function Cd(a){return a.ca&-2262|xf(a)|yf(a)|zf(a)|Af(a)|Bf(a)|Cf(a)}function Of(a,b){b|=a.$a&1|65520;a.$a=a.$a&-65536|b&65535;a.$a&1&&wd(a,!0)}function Dd(a,b,c){a.$a&1||(b&=~a.Zf);void 0===c&&(c=a.pa);c?b=b&-12289|a.ca&12288:a.Pa=(b&12288)>>12;c>a.Pa&&(b=b&-513|a.ca&512);a.resultType=128;a.ca=a.ca&~(a.Cc|2261)|b&(a.Cc|2261)|a.ag;a.ca&256&&(a.ua|=2,a.S|=4)}
|
||||
function Pf(a,b,c,d){var e=0;if(a.$a&1&&(a.pa>a.Pa||a.ca&131072)&&a.Sa.Zi)for(var f=a.Sa.Zi+(b>>>3),e=(1<<c)-1<<(b&7);e&&f<=a.Sa.ml&&!(a.Qa(f)&e);)e>>>=8,f++;return e?(z(a,256)&&y(a,"checkIOPM("+v(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),E.call(a,13,0),!1):!0}
|
||||
l.Pb=function(a,b,c){switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case "ESP":case "EBP":case "ESI":case "EDI":case "EIP":case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "IP":case "PC":case "CS":case "DS":case "SS":case "ES":case "FS":case "GS":case "CR0":case "CR2":case "CR3":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "V":this.qa[b]=c;this.Wg++;a=!0;break;default:a=this.parent.Pb.call(this,a,b,c)}return a};
|
||||
function Qf(a,b,c,d){var e=(d?a.kd:a.sa)[(b&a.Db)>>>a.La];e&&5==e.type&&(e=Nc(a,b,!1,!0));if(e){var f=b&a.Fa;if(!c||1==c)return e.re(f,b);if(2==c)return f<a.Fa?e.fg(f,b):e.re(f,b)|Qf(a,b+1,1,d)<<8;if(4==c)return f<a.Fa-2?e.si(f,b):f==a.Fa-1?e.fg(f,b)|Qf(a,b+2,2,d)<<16:e.re(f,b)|Qf(a,b+1,1,d)<<8|Qf(a,b+2,1,d)<<16|Qf(a,b+3,1,d)<<24}return null}l.Qa=function(a){return this.sa[(a&this.Db)>>>this.La].pc(a&this.Fa,a)};
|
||||
l.na=function(a){var b=a&this.Fa,c=(a&this.Db)>>>this.La;this.A-=this.B.Kg;if(b<this.Fa)return this.sa[c].sf(b,a);b=this.sa[c].pc(b,a);this.S&4096||(b|=this.sa[c+1&this.hd].pc(0,a+1)<<8);return b};l.oa=function(a){var b=a&this.Fa,c=(a&this.Db)>>>this.La;if(b<this.Fa-2)return this.sa[c].Md(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;){d|=this.sa[c].pc(b++,a++)<<f;if(this.S&4096)break;--g||(c=c+1&this.hd,b=0);f+=8}return d};l.qc=function(a,b){this.sa[(a&this.Db)>>>this.La].sc(a&this.Fa,b&255,a)};
|
||||
l.jb=function(a,b){var c=a&this.Fa,d=(a&this.Db)>>>this.La;this.A-=this.B.Kg;c<this.Fa?this.sa[d].zf(c,b&65535,a):(this.sa[d++].sc(c,b&255,a),this.S&4096||this.sa[d&this.hd].sc(0,b>>8&255,a+1))};l.nb=function(a,b){var c=a&this.Fa,d=(a&this.Db)>>>this.La;this.A-=this.B.Kg;if(c<this.Fa-2)this.sa[d].yf(c,b,a);else for(var e=4,f=4-(c&3);e--;){this.sa[d].sc(c++,b&255,a++);if(this.S&4096)break;--f||(d=d+1&this.hd,c=0);b>>>=8}};
|
||||
function Qf(a,b,c,d){var e=(d?a.kd:a.sa)[(b&a.Db)>>>a.La];e&&5==e.type&&(e=Nc(a,b,!1,!0));if(e){var f=b&a.Ea;if(!c||1==c)return e.re(f,b);if(2==c)return f<a.Ea?e.fg(f,b):e.re(f,b)|Qf(a,b+1,1,d)<<8;if(4==c)return f<a.Ea-2?e.si(f,b):f==a.Ea-1?e.fg(f,b)|Qf(a,b+2,2,d)<<16:e.re(f,b)|Qf(a,b+1,1,d)<<8|Qf(a,b+2,1,d)<<16|Qf(a,b+3,1,d)<<24}return null}l.Qa=function(a){return this.sa[(a&this.Db)>>>this.La].pc(a&this.Ea,a)};
|
||||
l.na=function(a){var b=a&this.Ea,c=(a&this.Db)>>>this.La;this.A-=this.B.Kg;if(b<this.Ea)return this.sa[c].sf(b,a);b=this.sa[c].pc(b,a);this.S&4096||(b|=this.sa[c+1&this.hd].pc(0,a+1)<<8);return b};l.oa=function(a){var b=a&this.Ea,c=(a&this.Db)>>>this.La;if(b<this.Ea-2)return this.sa[c].Md(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;){d|=this.sa[c].pc(b++,a++)<<f;if(this.S&4096)break;--g||(c=c+1&this.hd,b=0);f+=8}return d};l.qc=function(a,b){this.sa[(a&this.Db)>>>this.La].sc(a&this.Ea,b&255,a)};
|
||||
l.jb=function(a,b){var c=a&this.Ea,d=(a&this.Db)>>>this.La;this.A-=this.B.Kg;c<this.Ea?this.sa[d].zf(c,b&65535,a):(this.sa[d++].sc(c,b&255,a),this.S&4096||this.sa[d&this.hd].sc(0,b>>8&255,a+1))};l.nb=function(a,b){var c=a&this.Ea,d=(a&this.Db)>>>this.La;this.A-=this.B.Kg;if(c<this.Ea-2)this.sa[d].yf(c,b,a);else for(var e=4,f=4-(c&3);e--;){this.sa[d].sc(c++,b&255,a++);if(this.S&4096)break;--f||(d=d+1&this.hd,c=0);b>>>=8}};
|
||||
function Rf(a,b,c){a.$b=b;a.Ca=c&a.Ba;a.D=b.mc(a.Ca,1);return a.S&1?0:a.Qa(a.D)}function P(a,b){return Rf(a,a.ka,b)}function Sf(a,b){return Rf(a,a.Ka,b)}function Tf(a,b,c){a.$b=b;a.Ca=c&a.Ba;a.D=b.mc(a.Ca,a.ba);return a.S&1?0:a.tb(a.D)}function Q(a,b){a.$b=a.ka;a.Ca=b&a.Ba;a.D=a.$b.mc(a.Ca,2);return a.S&1?0:a.na(a.D)}function Uf(a,b){a.$b=a.Ka;a.Ca=b&a.Ba;a.D=a.$b.mc(a.Ca,2);return a.S&1?0:a.na(a.D)}function R(a,b){a.$b=a.ka;a.Ca=b&a.Ba;a.D=a.$b.mc(a.Ca,4);return a.S&1?0:a.oa(a.D)}
|
||||
function Vf(a,b){a.$b=a.Ka;a.Ca=b&a.Ba;a.D=a.$b.mc(a.Ca,4);return a.S&1?0:a.oa(a.D)}function Wf(a,b){a.S&2||a.qc(a.$b.nc(a.Ca,1),b)}function Xf(a,b){a.S&2||a.jb(a.$b.nc(a.Ca,2),b)}function Yf(a,b){a.S&2||a.nb(a.$b.nc(a.Ca,4),b)}function yd(a,b,c){return a.tb(b.mc(c,a.ba))}l.xa=function(){var a=uf(this,1),b=this.Qa(this.Ha);this.Ha=a;return b};function Zf(a){var b=uf(a,2),c=a.na(a.Ha);a.Ha=b;return c}function T(a){var b=uf(a,a.Tc),c=a.cc(a.Ha);a.Ha=b;return c}
|
||||
l.Ma=function(){var a=uf(this,this.ba),b=this.tb(this.Ha);this.Ha=a;return b};l.T=function(){var a=uf(this,1),b=this.Qa(this.Ha)<<24>>24;this.Ha=a;return b};function H(a){var b=a.tb(a.fa);a.fa=a.fa+a.ba|0;var c=a.Sg-a.fa|0;0>c&&0<=(a.Sg^a.fa)&&(8088>=a.ja||!a.ta.bd&&a.ta.Ta==a.ta.Ba||a.ta.bd&&!a.ta.Ta?I(a,a.fa-a.ta.Aa&a.ta.Ba):-1>c&&E.call(a,12,0));return b}
|
||||
|
|
@ -414,8 +414,8 @@ var pf=[function(){this.A-=2+(-1===this.D?0:1);return this.Bc.Z},function(){this
|
|||
a;Lf(this);return a},function(a){this.S|=2;this.A-=14+(-1===this.D?0:2);if(-1!==this.Da.load(a)&&512==(this.Da.wb&2560)&&this.Da.Gc>=this.pa&&this.Da.Gc>=(a&3))return Nf(this),a;Lf(this);return a},W,W],Kd=[je,je,je,je,je,je,W,W],sk=[function(a){if(-1===this.D)E.call(this,6);else{a=this.zd-this.Ec;var b=this.Ec;80286==this.ja?b|=-16777216:80386<=this.ja&&2!=this.ba&&(a|=b<<16);this.nb(this.D+2,b);this.A-=11}return a},function(a){if(-1===this.D)E.call(this,6);else{a=this.Sd-this.Mc;var b=this.Mc;80286==
|
||||
this.ja?b|=-16777216:80386<=this.ja&&2!=this.ba&&(a|=b<<16);this.nb(this.D+2,b);this.A-=12}return a},function(a){-1===this.D||this.ca&131072?E.call(this,6):(this.Ec=this.oa(this.D+2)&(this.R|this.R<<8),a&=65535,this.zd=this.Ec+a,this.S|=2,this.A-=11);return a},function(a){-1===this.D||this.ca&131072?E.call(this,6):(this.Mc=this.oa(this.D+2)&(this.R|this.R<<8),a&=65535,this.Sd=this.Mc+a,this.S|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.D?0:1);return this.$a},W,function(a){this.ca&131072?
|
||||
E.call(this,6):(Of(this,a),this.A-=-1===this.D?3:6,this.S|=2);return a},W],tk=[W,W,W,W,Hh,Kh,Jh,Ih];
|
||||
function X(a){bb.call(this,"ChipSet",a,X,32768);var b=a.model;b&&!uk[b]&&w("Unrecognized ChipSet model: "+b);this.ja=uk[b]||vk;this.C=[];b=wk(a[xk]);this.C[0]=[b,b];null==b&&(this.ia=[360,360],(b=a.floppies)&&b.length&&(this.ia=b),yk(this,zk,this.ia.length),yk(this,Ak,a.monitor||(this.ja<kg?"mono":"ega")));b=wk(a[Bk]);this.C[1]=[b,b];this.cb=this.Da=1;this.ja>=kg&&(this.cb=this.Da=2);this.ka=a.scaleTimers||!1;this.Ub=a.rtcDate;this.Db=!1;a.sound&&(this.sb=this.Fa=null,window&&(this.sb=window.AudioContext||
|
||||
window.webkitAudioContext),this.sb&&(this.Fa=new this.sb));this.reset(!0);xb(this)}jb(X);var vk=5150.9,kg=5170,uk={5150:5150,5160:5160,5170:kg,att6300:5160.101,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:vk,deskpro386:5180},xk="sw1",Bk="sw2",Ck={jl:1,ONE:0,Io:64,Go:128,xo:192,Lc:192,Xg:6},Dk={Ho:16,to:32,yo:48,Lc:48,Xg:4},zk=1,Ak=4,Ek={5150:[{},{}]};Ek[5150][0][zk]={Lc:192,gd:{1:0,2:64,3:128,4:192},Pd:"Number of Floppy Drives"};Ek[5150][0][3]={Lc:2,gd:{0:0,1:2},Pd:"FPU"};
|
||||
function X(a){bb.call(this,"ChipSet",a,X,32768);var b=a.model;b&&!uk[b]&&w("Unrecognized ChipSet model: "+b);this.ja=uk[b]||vk;this.C=[];b=wk(a[xk]);this.C[0]=[b,b];null==b&&(this.ia=[360,360],(b=a.floppies)&&b.length&&(this.ia=b),yk(this,zk,this.ia.length),yk(this,Ak,a.monitor||(this.ja<kg?"mono":"ega")));b=wk(a[Bk]);this.C[1]=[b,b];this.cb=this.Da=1;this.ja>=kg&&(this.cb=this.Da=2);this.ka=a.scaleTimers||!1;this.Ub=a.rtcDate;this.Db=!1;a.sound&&(this.sb=this.Ea=null,window&&(this.sb=window.AudioContext||
|
||||
window.webkitAudioContext),this.sb&&(this.Ea=new this.sb));this.reset(!0);xb(this)}jb(X);var vk=5150.9,kg=5170,uk={5150:5150,5160:5160,5170:kg,att6300:5160.101,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:vk,deskpro386:5180},xk="sw1",Bk="sw2",Ck={jl:1,ONE:0,Io:64,Go:128,xo:192,Lc:192,Xg:6},Dk={Ho:16,to:32,yo:48,Lc:48,Xg:4},zk=1,Ak=4,Ek={5150:[{},{}]};Ek[5150][0][zk]={Lc:192,gd:{1:0,2:64,3:128,4:192},Pd:"Number of Floppy Drives"};Ek[5150][0][3]={Lc:2,gd:{0:0,1:2},Pd:"FPU"};
|
||||
Ek[5150][0][Ak]={Lc:48,gd:{0:0,1:16,2:32,3:48,none:0,tv:16,color:32,cga:32,mda:48,mono:48,ega:0,vga:0},Pd:"Monitor Type"};Ek[5150][0][5]={Lc:12,gd:{16:0,32:4,48:8,64:12},Pd:"Base Memory (16Kb Increments)"};Ek[5150][1][6]={Lc:31,gd:{0:0,32:1,64:2,96:3,128:4,160:5,192:6,224:7,256:8,288:9,320:10,352:11,384:12,416:13,448:14,480:15,512:16,544:17,576:18},Pd:"Expansion Memory (32Kb Increments)"};Ek[5160]=[{},{}];Ek[5160][0][zk]=Ek[5150][0][zk];Ek[5160][0][3]=Ek[5150][0][3];Ek[5160][0][Ak]=Ek[5150][0][Ak];
|
||||
Ek[5160][0][5]={Lc:12,gd:{64:0,128:4,192:8,256:12},Pd:"Base Memory (64Kb Increments)"};Ek[5160][1][6]=Ek[5150][1][6];Ek[5160.101]=[{},{}];Ek[5160.101][0][5]={Lc:143,gd:{128:1,256:130,512:8,640:141},Pd:"Base Memory (128Kb Increments)"};Ek[5160.101][0][3]={Lc:16,gd:{0:0,1:16},Pd:"FPU"};Ek[5160.101][1][2]={Lc:1,gd:{0:0,1:1},Pd:"Floppy Type"};Ek[5160.101][1][zk]=Ek[5150][0][zk];Ek[5160.101][1][Ak]=Ek[5150][0][Ak];l=X.prototype;
|
||||
l.Pb=function(a,b,c){switch(b){case xk:return this.qa[b]=c,Fk(this,0,b),!0;case Bk:if(5150==(this.ja|0)||5160.101==this.ja)return this.qa[b]=c,Fk(this,1,b),!0;break;case "swdesc":return this.qa[b]=c,!0}return!1};
|
||||
|
|
@ -465,8 +465,8 @@ l.jn=function(a,b,c){x(this,a,b,c,"8042_INBUFF.CMD",null,16384);this.ea=b;this.N
|
|||
l.An=function(a,b,c){x(this,a,b,c,"CMOS.ADDR",null,4096);this.pa=b;this.ya=b&128?0:128};l.cm=function(a,b){var c=this.pa&63,d=13>=c?Sk(this,c):this.A[c];z(this,4352)&&x(this,a,null,b,"CMOS.DATA["+u(c)+"]",d,!0);null!=b&&12==c&&(this.A[c]&=15,d&128&&lg(this,8),d&64&&this.A[11]&64&&bl(this));return d};
|
||||
l.Bn=function(a,b,c){var d=this.pa&63;z(this,4352)&&x(this,a,b,c,"CMOS.DATA["+u(d)+"]",null,!0);a=b^this.A[d];if(13>=d){if(c=b,10>d){var e=!1;this.A[11]&4||(c=10*(c>>4)+(c&15),e=!0);if(4==d||5==d)e&&23<c&&(c+=48),this.A[11]&2||(12>=c?c=12==c?0:c:(c-=116,c=24==c?12:c))}}else c=b;this.A[d]=c;11==d&&a&64&&b&64&&bl(this)};l.Nk=function(a,b,c){x(this,a,b,c,"NMI");this.ya=b};l.Ln=function(a,b,c){x(this,a,b,c,"FPU.CLEAR")};l.Mn=function(a,b,c){x(this,a,b,c,"FPU.RESET");this.Tb&&fg(this.Tb)};
|
||||
l.Pm=function(a){if(z(this,16)&&pk(this.ha,26,a)){var b=this.F.G>>8;mf(this.F,a,function(a,d){return function(c){d=cd(a.F)-d;var e,g=a.F.M&255,h=a.F.M>>8,k=a.F.M&255,m=a.F.M>>8;if(2==b||3==b)e=" CH(hour)="+v(h)+" CL(min)="+u(g)+" DH(sec)="+u(m);else if(4==b||5==b)e=" CX(year)="+v(a.F.I)+" DH(month)="+u(m)+" DL(day)="+u(k);g=a.ha;h=d;g.message("INT "+u(26)+": C="+(xf(g.F)?1:0)+(e||"")+" (cycles="+h+(c?",level="+(c+1):"")+")")}}(this,cd(this.F)))}return!0};
|
||||
function cl(a,b){if(a.Fa)try{void 0!==b?a.Db=b:b=a.Db&&a.F&&a.F.la.Ib;var c=Math.round(1193181/Nl(a,2));if(20>c||2E4<c)b=!1;b?a.U?(a.U.frequency.value=c,z(a,33554432)&&y(a,"speaker set to "+c+"hz",!0)):(a.U=a.Fa.createOscillator(),a.U&&(a.U.type="number"==typeof a.U.type?1:"square",a.U.connect(a.Fa.destination),a.U.frequency.value=c,"start"in a.U?a.U.start(0):a.U.noteOn(0),z(a,33554432)&&y(a,"speaker on at "+c+"hz",!0))):a.U&&("stop"in a.U?a.U.stop(0):a.U.noteOff(0),a.U.disconnect(),delete a.U,z(a,
|
||||
33554432)&&y(a,"speaker off at "+c+"hz",!0))}catch(d){a.Na("AudioContext exception: "+d.message),a.Fa=null}else b&&y(a,"BEEP",33554432)}
|
||||
function cl(a,b){if(a.Ea)try{void 0!==b?a.Db=b:b=a.Db&&a.F&&a.F.la.Ib;var c=Math.round(1193181/Nl(a,2));if(20>c||2E4<c)b=!1;b?a.U?(a.U.frequency.value=c,z(a,33554432)&&y(a,"speaker set to "+c+"hz",!0)):(a.U=a.Ea.createOscillator(),a.U&&(a.U.type="number"==typeof a.U.type?1:"square",a.U.connect(a.Ea.destination),a.U.frequency.value=c,"start"in a.U?a.U.start(0):a.U.noteOn(0),z(a,33554432)&&y(a,"speaker on at "+c+"hz",!0))):a.U&&("stop"in a.U?a.U.stop(0):a.U.noteOff(0),a.U.disconnect(),delete a.U,z(a,
|
||||
33554432)&&y(a,"speaker off at "+c+"hz",!0))}catch(d){a.Na("AudioContext exception: "+d.message),a.Ea=null}else b&&y(a,"BEEP",33554432)}
|
||||
var Gk={0:function(a,b){return nl(this,0,0,a,b)},1:function(a,b){return pl(this,0,0,a,b)},2:function(a,b){return nl(this,0,1,a,b)},3:function(a,b){return pl(this,0,1,a,b)},4:function(a,b){return nl(this,0,2,a,b)},5:function(a,b){return pl(this,0,2,a,b)},6:function(a,b){return nl(this,0,3,a,b)},7:function(a,b){return pl(this,0,3,a,b)},8:function(a,b){return rl(this,0,a,b)},13:function(a,b){return wl(this,0,a,b)},32:function(a,b){return Fl(this,0,b)},33:function(a,b){return Il(this,0,b)},64:function(a,
|
||||
b){return Kl(this,0,0,a,b)},65:function(a,b){return Kl(this,0,1,a,b)},66:function(a,b){return Kl(this,0,2,a,b)},67:function(a,b){return Ol(this,0,a,b)},129:function(a,b){return yl(this,0,2,a,b)},130:function(a,b){return yl(this,0,3,a,b)},131:function(a,b){return yl(this,0,1,a,b)},135:function(a,b){return yl(this,0,0,a,b)}},Ik={96:X.prototype.ym,97:X.prototype.zm,98:X.prototype.Am,99:X.prototype.Bm},Mk={96:X.prototype.Ml,97:X.prototype.Nl,100:X.prototype.Ol,112:X.prototype.bm,113:X.prototype.cm,128:function(a,
|
||||
b){return Al(this,7,a,b)},132:function(a,b){return Al(this,0,a,b)},133:function(a,b){return Al(this,1,a,b)},134:function(a,b){return Al(this,2,a,b)},136:function(a,b){return Al(this,3,a,b)},137:function(a,b){return yl(this,1,2,a,b)},138:function(a,b){return yl(this,1,3,a,b)},139:function(a,b){return yl(this,1,1,a,b)},140:function(a,b){return Al(this,4,a,b)},141:function(a,b){return Al(this,5,a,b)},142:function(a,b){return Al(this,6,a,b)},143:function(a,b){return yl(this,1,0,a,b)},160:function(a,b){return Fl(this,
|
||||
|
|
@ -567,14 +567,14 @@ function Zn(a,b){var c,d=a.Ga,e=a.C;if(e)if(1==e.Ua)d=7;else if(5<=e.Ua){var d=n
|
|||
m?13:14:480<=f&&(d=3==a.ya?17:18):d=m?7-d:6:d-=m?2:0);c=io(a)}}else e.fd&8&&(e.fd&2?(d=e.fd&16?6:5,e.fd&4||--d):(d=e.fd&1?3:1,e.fd&4&&--d));else a.Ga=null,null==d&&(d=a.va);if(!Yn(a,d,b))return!1;jo(a,c);return!0}
|
||||
function Yn(a,b,c){if(null!=b&&(b!=a.Ga||c)){a.Wg=0;a.Ga=b;a.qb=!1;b=a.C||(7==b?a.pa:a.aa);if(b!=a.C||b.ob!=a.ob||b.ac!=a.ac){go(a);if(a.ob){if(!gc(a.ga,a.ob,a.ac))return!1;a.C&&(a.C.Hc=!1)}a.C=b;b.Hc=!0;a.ob=b.ob;a.ac=b.ac;if(!Ub(a.ga,b.ob,b.ac,3,b===a.A?b:null))return!1}a:{a.U=0;a.L=a.jd;a.W=a.je;a.Db=a.L;a.hd=Jm[7][2];b=0;if(c=Jm[a.Ga])a.L=c[0],a.W=c[1],a.hd=c[2],b=c[3],a.U=c[4],4!=a.ya&&7!=a.ya||a.C!==a.A||3!=a.U||(7==(a.A.mb[9]&31)?a.W=350>kn(a.A,18)?43:50:a.U=a.Ua);a.dg=a.L*a.W|0;a.ag=a.dg/
|
||||
a.hd|0;a.Ub=a.ag;a.sd=0;void 0!==b&&(a.Ub=(a.Ub<<1)+b|0,a.sd=a.Ub+b>>1);if(a.Oa.length){a.Ja=a.ra/a.L|0;a.Ka=a.Da/a.W|0;if(a.U){b=a.Oa[a.U];if(!b)break a;c=a.Oa[a.U<<1];a.Zf&&80==a.L?c&&a.Ja>=3*c.Pc>>2&&(a.U<<=1,b=c):(c&&a.Ja>=c.Pc&&(a.U<<=1,b=c),a.Zf||(a.Ja=b.Pc,a.Ka=b.Qc));a.bc=a.tc=0;b&&(a.bc=a.L*b.Pc,a.tc=a.W*b.Qc)}else a.Ja=a.Ka=1,a.bc=a.L,a.tc=a.W;a.sb=a.ea.createImageData(a.bc,a.tc);a.fb=document.createElement("canvas");a.fb.width=a.bc;a.fb.height=a.tc;a.gb=a.fb.getContext("2d");a.le=a.me=
|
||||
0;a.Cd=a.ra;a.Fd=a.Da;b=a.ra-a.L*a.Ja;c=a.Da-a.W*a.Ka;0<b&&(a.le=b>>1,a.Cd-=b);0<c&&(a.me=c>>1,a.Fd-=c);if(b||c)a.ea.fillStyle=a.ka.style.backgroundColor,a.ea.fillRect(0,0,a.ra,a.Da)}}ko(a,!0);un(a)}return!0}function eo(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 lo(a){a.Pa=-1;a.Fa=!1;var b=a.ag;if(void 0===a.fa||a.fa.length!=b)a.fa=Array(b)}function ko(a,b){b||(a.qb=!1);lo(a)}
|
||||
0;a.Cd=a.ra;a.Fd=a.Da;b=a.ra-a.L*a.Ja;c=a.Da-a.W*a.Ka;0<b&&(a.le=b>>1,a.Cd-=b);0<c&&(a.me=c>>1,a.Fd-=c);if(b||c)a.ea.fillStyle=a.ka.style.backgroundColor,a.ea.fillRect(0,0,a.ra,a.Da)}}ko(a,!0);un(a)}return!0}function eo(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 lo(a){a.Pa=-1;a.Ea=!1;var b=a.ag;if(void 0===a.fa||a.fa.length!=b)a.fa=Array(b)}function ko(a,b){b||(a.qb=!1);lo(a)}
|
||||
function ho(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Oa[a.U];h.Af&&(d=h.Af[d]);var k=g>>4&15;h.Af&&(k=h.Af[k]);e?(b*=h.Pc,c*=h.Qc,e.fillStyle=h.Re[k],e.fillRect(b,c,h.Pc,h.Qc)):(b=b*a.Ja+a.le,c=c*a.Ka+a.me,a.ea.fillStyle=h.Re[k],a.ea.fillRect(b,c,a.Ja,a.Ka));g&256&&(k=(f&15)*h.Pc,f=(f>>4)*h.Qc,e?e.drawImage(h.Zg[d],k,f,h.Pc,h.Qc,b,c,h.Pc,h.Qc):a.ea.drawImage(h.Zg[d],k,f,h.Pc,h.Qc,b,c,a.Ja,a.Ka));g&512&&(f=a.mg,g=a.Ee,e?(a.Ya&&a.Ya!==h.Qc&&(f=f*h.Qc/a.Ya|0,g=g*h.Qc/a.Ya|0),e.fillStyle=h.Re[d],
|
||||
e.fillRect(b,c+f,h.Pc,g)):(a.Ya&&a.Ya!==a.Ka&&(f=f*a.Ka/a.Ya|0,g=g*a.Ka/a.Ya|0),a.ea.fillStyle=h.Re[d],a.ea.fillRect(b,c+f,a.Ja,g)))}
|
||||
function un(a,b){if(a.la.ic){var c=!1,d=a.C;d&&(d!==a.A?d.fd&8&&(c=!0):d.Nd&32&&(c=!0));if(c||b){if(b)lo(a);else if(void 0===a.fa)return;var e=!1;!(b||++a.Wg&15)&&0<=a.cb&&(a.cb++,e=!0);var f=0,g=a.dg,h=a.ob,c=h,k=c+a.ac;19<=a.Ga&&(h=c=655360,k=c+65536);if(mo(a,d)&8||d.qf&&d.qf<d.ni){var m=(d.mb[12]<<8)+d.mb[13]|0;d.Ld!==m&&(d.Ld=m,ko(a));d.qf=0}m=d.Ld;a.U&&(m<<=1);c+=m;m=a.Ub;5<=a.Ua&&d.mb[19]&&d.mb[19]<<1!=d.mb[1]+1&&(a.Db=d.mb[19]<<(a.U?1:d.mb[20]&64?3:4),m=(a.Db*(a.W-1)+a.L)/a.hd|0,7>=a.Ga&&(m<<=
|
||||
1));c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(b=!b&&a.Fa){b=a.ga;for(var n=!0,t=c>>>b.La;0<m&&t<b.sa.length;)b.sa[t].Wa&&(b.sa[t].Wa=n=!1,b.sa[t].tj=!0),m-=b.Sb,t++;b=n}if(b){if(!e)return;if(!a.Pa){f=a.ua-d.Ld;if(0>f)return;g=f+1}}if(a.U){if(a.Oa[a.U]){d=f;f=0;e=a.Pa=0;h=1048575;m=a.C.fd&32;5<=a.Ua&&(m=a.C.Sc[16]&8);b=a.ua-a.C.Ld;m&&(e=32768,h&=~e,a.cb&2||(h&=-65537));for(c+=d<<1;c<k&&d<g;)m=mc(a.ga,c),m|=65536,m&e&&(a.Pa++,m&=h),d==b&&(m|=a.cb&1?131072:0),a.Fa&&m===a.fa[d]||(ho(a,d%a.L,d/a.L|0,m,a.gb),
|
||||
a.fa[d]=m,f++),c+=2,d++;a.Fa=!0;f&&a.gb&&a.ea.drawImage(a.fb,0,0,a.bc,a.tc,a.le,a.me,a.Cd,a.Fd);fo(a)}}else if(a.sd){var g=k,q,k=c,d=a.Pa=0,f=a.hd,e=16==f?65536:196608,h=16==f?1:2;b=ao(a,h);for(var n=m=0,t=a.L,A=0,F=a.W,C=0;k<g;){q=mc(a.ga,k);if(a.Fa&&q===a.fa[d])m+=f;else{a.fa[d]=q;q=q>>8|(q&255)<<8;var D=e,L=16;m<t&&(t=m);for(var G=0;G<f;G++){var ga=(q&(D>>=h))>>(L-=h);eo(a.sb,m++,n,b[ga])}m>A&&(A=m);n<F&&(F=n);n>=C&&(C=n+1)}k+=2;d++;if(m>=a.L){m=0;n+=2;if(n>a.W)break;n==a.W&&(n=1,k=c+a.sd)}}a.Fa=
|
||||
!0;t<a.L&&(a.gb.putImageData(a.sb,0,0,t,F,A-t,C-F),a.ea.drawImage(a.fb,0,0,a.L,a.W,0,0,a.ra,a.Da))}else if(a.hf){g=h;f=a.Pa=0;e=ao(a,8);h=a.C.rd;m=b=0;n=a.L;t=0;A=a.W;F=0;C=a.C.Me[4]&8?4:1;q=a.C.Sc[19]&15;for(D=a.Db>a.L?a.Db-a.L-q>>3:0;c<k;){d=h[c-g];G=4;q||(a.Fa&&d===a.fa[f]?(b+=G,G=0):a.fa[f]=d,f++);if(G){b<n&&(n=b);for(L=0;L<G;L++)eo(a.sb,b++,m,e[d&255]),d>>=8;b>t&&(t=b);m<A&&(A=m);m>=F&&(F=m+1)}c+=C;if(b>=a.L){b=0;if(++m>a.W)break;c+=D}}q||(a.Fa=!0);n<a.L&&(a.gb.putImageData(a.sb,0,0,n,A,t-n,
|
||||
F-A),a.ea.drawImage(a.fb,0,0,a.L,a.W,0,0,a.ra,a.Da))}else{g=h;d=a.Pa=0;f=ao(a);e=a.C.rd;b=h=0;m=a.L;n=0;t=a.W;A=0;F=a.C.Sc[19]&15;for(C=a.Db>a.L?a.Db-a.L-F>>3:0;c<k;){q=c++-g;q=e[q];L=8;F?h?(D=a.L-h,L>D&&(L=D)):(q<<=F,L-=F,a.Fa=!1):(a.Fa&&q===a.fa[d]?(h+=L,L=0):a.fa[d]=q,d++);if(L){h<m&&(m=h);for(D=0;D<L;D++)G=Wm[q&2155905152]||0,eo(a.sb,h++,b,f[G]),q<<=1;h>n&&(n=h);b<t&&(t=b);b>=A&&(A=b+1)}if(h>=a.L){h=0;if(++b>a.W)break;c+=C}}F||(a.Fa=!0);m<a.L&&(a.gb.putImageData(a.sb,0,0,m,t,n-m,A-t),a.ea.drawImage(a.fb,
|
||||
1));c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(b=!b&&a.Ea){b=a.ga;for(var n=!0,t=c>>>b.La;0<m&&t<b.sa.length;)b.sa[t].Wa&&(b.sa[t].Wa=n=!1,b.sa[t].tj=!0),m-=b.Sb,t++;b=n}if(b){if(!e)return;if(!a.Pa){f=a.ua-d.Ld;if(0>f)return;g=f+1}}if(a.U){if(a.Oa[a.U]){d=f;f=0;e=a.Pa=0;h=1048575;m=a.C.fd&32;5<=a.Ua&&(m=a.C.Sc[16]&8);b=a.ua-a.C.Ld;m&&(e=32768,h&=~e,a.cb&2||(h&=-65537));for(c+=d<<1;c<k&&d<g;)m=mc(a.ga,c),m|=65536,m&e&&(a.Pa++,m&=h),d==b&&(m|=a.cb&1?131072:0),a.Ea&&m===a.fa[d]||(ho(a,d%a.L,d/a.L|0,m,a.gb),
|
||||
a.fa[d]=m,f++),c+=2,d++;a.Ea=!0;f&&a.gb&&a.ea.drawImage(a.fb,0,0,a.bc,a.tc,a.le,a.me,a.Cd,a.Fd);fo(a)}}else if(a.sd){var g=k,q,k=c,d=a.Pa=0,f=a.hd,e=16==f?65536:196608,h=16==f?1:2;b=ao(a,h);for(var n=m=0,t=a.L,A=0,F=a.W,C=0;k<g;){q=mc(a.ga,k);if(a.Ea&&q===a.fa[d])m+=f;else{a.fa[d]=q;q=q>>8|(q&255)<<8;var D=e,L=16;m<t&&(t=m);for(var G=0;G<f;G++){var ga=(q&(D>>=h))>>(L-=h);eo(a.sb,m++,n,b[ga])}m>A&&(A=m);n<F&&(F=n);n>=C&&(C=n+1)}k+=2;d++;if(m>=a.L){m=0;n+=2;if(n>a.W)break;n==a.W&&(n=1,k=c+a.sd)}}a.Ea=
|
||||
!0;t<a.L&&(a.gb.putImageData(a.sb,0,0,t,F,A-t,C-F),a.ea.drawImage(a.fb,0,0,a.L,a.W,0,0,a.ra,a.Da))}else if(a.hf){g=h;f=a.Pa=0;e=ao(a,8);h=a.C.rd;m=b=0;n=a.L;t=0;A=a.W;F=0;C=a.C.Me[4]&8?4:1;q=a.C.Sc[19]&15;for(D=a.Db>a.L?a.Db-a.L-q>>3:0;c<k;){d=h[c-g];G=4;q||(a.Ea&&d===a.fa[f]?(b+=G,G=0):a.fa[f]=d,f++);if(G){b<n&&(n=b);for(L=0;L<G;L++)eo(a.sb,b++,m,e[d&255]),d>>=8;b>t&&(t=b);m<A&&(A=m);m>=F&&(F=m+1)}c+=C;if(b>=a.L){b=0;if(++m>a.W)break;c+=D}}q||(a.Ea=!0);n<a.L&&(a.gb.putImageData(a.sb,0,0,n,A,t-n,
|
||||
F-A),a.ea.drawImage(a.fb,0,0,a.L,a.W,0,0,a.ra,a.Da))}else{g=h;d=a.Pa=0;f=ao(a);e=a.C.rd;b=h=0;m=a.L;n=0;t=a.W;A=0;F=a.C.Sc[19]&15;for(C=a.Db>a.L?a.Db-a.L-F>>3:0;c<k;){q=c++-g;q=e[q];L=8;F?h?(D=a.L-h,L>D&&(L=D)):(q<<=F,L-=F,a.Ea=!1):(a.Ea&&q===a.fa[d]?(h+=L,L=0):a.fa[d]=q,d++);if(L){h<m&&(m=h);for(D=0;D<L;D++)G=Wm[q&2155905152]||0,eo(a.sb,h++,b,f[G]),q<<=1;h>n&&(n=h);b<t&&(t=b);b>=A&&(A=b+1)}if(h>=a.L){h=0;if(++b>a.W)break;c+=C}}F||(a.Ea=!0);m<a.L&&(a.gb.putImageData(a.sb,0,0,m,t,n-m,A-t),a.ea.drawImage(a.fb,
|
||||
0,0,a.L,a.W,0,0,a.ra,a.Da))}}}}function mo(a,b){var c=0;a=cd(a.F)-b.Eh;0>a&&(b.Eh=a,a=-a|0);a%b.zh>b.an&&(c|=1);a%b.Ch>b.cn&&(c|=9);b.ni=a/b.Ch|0;return c}l.um=function(a,b){return no(this,this.pa,a,b)};l.Vn=function(a,b,c){var d=this.pa;d.Qg=d.Ac;d.Ac=b&31;x(this,a,b,c,"CRTC.INDX")};l.tm=function(a,b){return oo(this,this.pa,a,b)};l.Un=function(a,b,c){po(this,this.pa,a,b,c)};l.vm=function(a,b){return qo(this,this.pa,b)};l.Wn=function(a,b,c){a=this.pa;x(this,a.port+4,b,c,"MODE");a.fd=b;Zn(this,!1)};
|
||||
l.wm=function(a,b){return ro(this,this.pa,b)};l.Mk=function(a,b,c){this.A.hg=this.A.hg&-4|b&3;x(this,a,b,c,"FEAT")};l.Tl=function(a,b){a=this.A.Nd;b&&!z(this)||x(this,960,null,b,"ATC.INDX",a);return a};l.kl=function(a,b){a=this.A.Sc[this.A.Nd&31];b&&!z(this)||x(this,960,null,b,"ATC."+this.A.$g[this.A.Nd&31],a);return a};
|
||||
l.Lk=function(a,b,c){var d=this.A,e=d.Nd&32;if(d.Ze){d.Ze=!1;var f=d.Nd&31;if(16<=f||!e)c&&!z(this)||x(this,a,b,c,"ATC."+d.$g[f]),d.Sc[f]=b,ko(this,!1)}else d.Nd=b,x(this,a,b,c,"ATC.INDX"),d.Ze=!0,b&32&&!e&&Xn(this,!0)&&un(this,!0),a=(d.mb[12]<<8)+d.mb[13]|0,d.Ld!=a&&(d.Ld=a,ko(this)),d.qf=0};
|
||||
|
|
@ -596,14 +596,14 @@ l.Ic=function(a,b,c,d){this.ga=b;this.F=c;this.ha=d;this.N=Jb(a,"ChipSet");qc(b,
|
|||
function wo(a,b){var c=0;b||(b=[0,0,0]);a.L=b[c++];a.Yb=b[c++];a.Df=b[c];return!0}l.hm=function(a,b){var c=this.L;x(this,a,null,b,"DATA",c);return c};l.Fm=function(a,b){var c=this.Yb;x(this,a,null,b,"STAT",c);return c};l.dm=function(a,b){var c=this.Df;x(this,a,null,b,"CTRL",c);return c};
|
||||
l.Hn=function(a,b,c){x(this,a,b,c,"DATA");this.L=b;this.Yb|=64;a=!1;y(this,"transmitByte("+u(b)+")");this.A&&(8==b?this.A.value=this.A.value.slice(0,-1):(this.A.value+=String.fromCharCode(b),this.A.scrollTop=this.A.scrollHeight),a=!0);if(null!=this.B){if(10==b||1024<=this.B.length)this.O(this.B),this.B="";10!=b&&(this.B+=String.fromCharCode(b));a=!0}a&&(this.Yb&=-65);xo(this)};l.Cn=function(a,b,c){x(this,a,b,c,"CTRL");this.Df=b;xo(this)};
|
||||
function xo(a){a.N&&a.C&&(a.Df&16&&!(a.Yb&64)?mg(a.N,a.C):lg(a.N,a.C))}var uo={0:so.prototype.hm,1:so.prototype.Fm,2:so.prototype.dm},vo={0:so.prototype.Hn,2:so.prototype.Cn};Xa(function(){for(var a=tb(document,"pcx86","parallel"),b=0;b<a.length;b++){var c=a[b],d=qb(c),d=new so(d);sb(d,c)}});
|
||||
function yo(a){this.ya=a.adapter;switch(this.ya){case 1:this.ua=1016;this.ka=4;break;case 2:this.ua=760;this.ka=3;break;default:w("Unrecognized serial adapter #"+this.ya);return}this.L=this.W=null;this.Ga=a.tabSize;this.Fa=a.charBOL;this.ea=0;bb.call(this,"SerialPort",a,yo,8388608);a=a.binding;"console"==a?this.W="":rb(this,a,zo);this.ia=this.ra=null;this.exports={connect:this.zj,receiveData:this.gg}}jb(yo);var zo="buffer";l=yo.prototype;l.bj=function(a,b){return a==this.xd?(this.V=b,this):null};
|
||||
function yo(a){this.ya=a.adapter;switch(this.ya){case 1:this.ua=1016;this.ka=4;break;case 2:this.ua=760;this.ka=3;break;default:w("Unrecognized serial adapter #"+this.ya);return}this.L=this.W=null;this.Ga=a.tabSize;this.Ea=a.charBOL;this.ea=0;bb.call(this,"SerialPort",a,yo,8388608);a=a.binding;"console"==a?this.W="":rb(this,a,zo);this.ia=this.ra=null;this.exports={connect:this.zj,receiveData:this.gg}}jb(yo);var zo="buffer";l=yo.prototype;l.bj=function(a,b){return a==this.xd?(this.V=b,this):null};
|
||||
l.Pb=function(a,b,c){var d=this;switch(b){case zo:return this.qa[b]=this.L=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),d.gg(b);return!0},c.onkeypress=function(a){a=a||window.event;d.gg(a.which||a.keyCode);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
|
||||
l.Ic=function(a,b,c,d){this.X=a;this.ga=b;this.F=c;this.ha=d;this.N=Jb(a,"ChipSet");qc(b,this,Ao,this.ua);yc(b,this,Bo,this.ua);xb(this)};l.zj=function(){if(!this.ia){var a=Yc(this.X,"connection");if(a){var b=a.split("->");if(2==b.length){var c=qa(b[0]);if(c!=this.xd)return;b=qa(b[1]);if(this.ia=ob(b)){var d=this.ia.exports;if(d){var e=d.connect;e&&e.call(this.ia);if(this.ra=d.receiveData){this.status(this.ce+"."+c+" connected to "+b);return}}}}this.status("Unable to establish connection: "+a)}}};
|
||||
l.hc=function(a,b){if(!b)if(this.zj(),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.gc=function(a){return a?this.save():!0};l.reset=function(){Co(this)};l.save=function(){var a=new qf(this),b=0,c=[];c[b++]=this.va;c[b++]=this.Da;c[b++]=this.fa;c[b++]=this.pa;c[b++]=this.U;c[b++]=this.B;c[b++]=this.C;c[b++]=this.A;c[b++]=this.Ca;c[b]=this.aa;a.set(0,c);return a.data()};l.restore=function(a){return Co(this,a[0])};
|
||||
function Co(a,b){var c=0;b||(b=[0,0,384,0,1,0,0,96,48,[]]);a.va=b[c++];a.Da=b[c++];a.fa=b[c++];a.pa=b[c++];a.U=b[c++];a.B=b[c++];a.C=b[c++];a.A=b[c++];a.Ca=b[c++];a.aa=b[c];return!0}l.gg=function(a){if("number"==typeof a)this.aa.push(a);else if("string"==typeof a)for(var b=0;b<a.length;b++)this.aa.push(a.charCodeAt(b));else this.aa=this.aa.concat(a);Do(this);return!0};
|
||||
function Do(a){0<a.aa.length&&!(a.A&1)&&(a.va=a.aa.shift(),a.A|=1);var b=-1;a.A&1&&a.pa&1&&(b=4);0<=b?(a.U&=-8,a.U|=b,a.N&&a.ka&&mg(a.N,a.ka,100)):(a.U|=1,a.N&&a.ka&&lg(a.N,a.ka))}l.Cm=function(a,b){var c=this.B&128?this.fa&255:this.va;x(this,a,null,b,this.B&128?"DLL":"RBR",c);this.A&=-2;Do(this);return c};l.om=function(a,b){var c=this.B&128?this.fa>>8:this.pa;x(this,a,null,b,this.B&128?"DLM":"IER",c);return c};l.pm=function(a,b){var c=this.U;x(this,a,null,b,"IIR",c);return c};
|
||||
l.qm=function(a,b){var c=this.B;x(this,a,null,b,"LCR",c);return c};l.sm=function(a,b){var c=this.C;x(this,a,null,b,"MCR",c);return c};l.rm=function(a,b){var c=this.A;x(this,a,null,b,"LSR",c);return c};l.xm=function(a,b){var c=this.Ca;x(this,a,null,b,"MSR",c);return c};
|
||||
l.eo=function(a,b,c){x(this,a,b,c,this.B&128?"DLL":"THR");if(this.B&128)this.fa=this.fa&-256|b;else{this.Da=b;this.A&=-97;a=!1;y(this,"transmitByte("+u(b)+")");this.ra&&this.ra.call(this.ia,b)&&(a=!0);if(this.L)13==b?this.ea=0:8==b?(this.L.value=this.L.value.slice(0,-1),0<this.ea&&this.ea--):(a=(a=ra[b])?"<"+a+">":String.fromCharCode(b),c=a.length,32>b&&1==c&&(c=0),9==b&&(b=this.Ga||8,c=b-this.ea%b,this.Ga&&(a=pa("",c))),this.Fa&&!this.ea&&c&&(a=String.fromCharCode(this.Fa)+a),this.L.value+=a,this.L.scrollTop=
|
||||
l.eo=function(a,b,c){x(this,a,b,c,this.B&128?"DLL":"THR");if(this.B&128)this.fa=this.fa&-256|b;else{this.Da=b;this.A&=-97;a=!1;y(this,"transmitByte("+u(b)+")");this.ra&&this.ra.call(this.ia,b)&&(a=!0);if(this.L)13==b?this.ea=0:8==b?(this.L.value=this.L.value.slice(0,-1),0<this.ea&&this.ea--):(a=(a=ra[b])?"<"+a+">":String.fromCharCode(b),c=a.length,32>b&&1==c&&(c=0),9==b&&(b=this.Ga||8,c=b-this.ea%b,this.Ga&&(a=pa("",c))),this.Ea&&!this.ea&&c&&(a=String.fromCharCode(this.Ea)+a),this.L.value+=a,this.L.scrollTop=
|
||||
this.L.scrollHeight,this.ea+=c),a=!0;else if(null!=this.W){if(10==b||1024<=this.W.length)this.O(this.W),this.W="";10!=b&&(this.W+=String.fromCharCode(b));a=!0}a&&(this.A|=96)}};l.Rn=function(a,b,c){x(this,a,b,c,this.B&128?"DLM":"IER");this.B&128?this.fa=this.fa&255|b<<8:this.pa=b};l.Sn=function(a,b,c){x(this,a,b,c,"LCR");this.B=b};
|
||||
l.Tn=function(a,b,c){var d=this.C;x(this,a,b,c,"MCR");this.C=b;this.V&&(d^b)&3&&(a=this.V,b=this.C,(c=3==(b&3))?a.Hc||(d=!1,a.C&2||(a.reset(),y(a,"serial mouse reset"),d=!0),a.C&1||(y(a,"serial mouse ID requested"),d=!0),d&&(a.N.gg([77,77]),y(a,"serial mouse ID sent")),Eo(a),a.Hc=c):a.Hc&&(y(a,"serial mouse inactive"),Fo(a),a.Hc=c),a.C=b)};
|
||||
var Ao={0:yo.prototype.Cm,1:yo.prototype.om,2:yo.prototype.pm,3:yo.prototype.qm,4:yo.prototype.sm,5:yo.prototype.rm,6:yo.prototype.xm},Bo={0:yo.prototype.eo,1:yo.prototype.Rn,3:yo.prototype.Sn,4:yo.prototype.Tn};Xa(function(){for(var a=tb(document,"pcx86","serial"),b=0;b<a.length;b++){var c=a[b],d=qb(c),d=new yo(d);sb(d,c)}});function Go(a){bb.call(this,"Mouse",a,Go,16777216);if(this.ka=a.serial)this.pa="SerialPort";this.ia=this.fa=this.Hc=!1;this.B=[];this.A=[];xb(this)}jb(Go);var wn=0;l=Go.prototype;
|
||||
|
|
@ -671,11 +671,11 @@ d.kb=c>>2&1,c=Jp(this),d.Qb+=c-d.ee,0>d.Qb&&(d.Qb=0),d.Qb>=d.Bb&&(d.Qb=d.Bb-1),d
|
|||
function Mp(a,b,c,d,e,f,g,h){Kp(a);Lp(a,b.hb|b.kb<<2|b.Cb&255);Lp(a,(b.Cb&65280)>>>8);Lp(a,(b.Cb&16711680)>>>16);var k=0;if(e!=b.Qb||f!=b.kb)k=g=1;c&128&&(f^=k,d||(k=0));Lp(a,e+k);Lp(a,f);Lp(a,g);Lp(a,h)}function Jp(a){var b=a.V[a.L];a.L++;return b}function Kp(a){a.L=a.C=0}function Lp(a,b){a.V[a.C++]=b}l.el=function(a,b,c){void 0===b||0>b?this.Le(a,c):c(-1,!1)};l.fl=function(a,b){return void 0!==b&&0<=b?Np(a,b):-1};
|
||||
l.vl=function(a,b){if(void 0!==b&&0<=b)a:if(a.Cb)a=-1;else{a.ld[a.We++]=b;if(a.We==a.ld.length){a.Qb=a.ld[0];a.kb=a.ld[1];a.xb=a.ld[2];a.Hb=128<<a.ld[3];for(var c=a.We=0;c<a.Hb;c++)if(0>Np(a,a.cj)){a=-1;break a}a.sg++}a.sg>=a.fe&&(b=-1);a=b}else a=-1;return a};l.Le=function(a,b){var c=-1,d=null,e=0;if(!a.Cb&&a.za){do{if(a.pb&&(e=a.eb,0<=(c=a.za.read(a.pb,a.eb++)))){d=a.pb;break}a.pb=a.za.seek(a.Qb,a.kb,a.xb);if(!a.pb){a.Cb=1088;break}a.eb=0;Op(a)}while(1)}b(c,!1,d,e)};
|
||||
function Np(a,b){if(a.Cb||!a.za)return-1;do{if(a.pb&&a.za.write(a.pb,a.eb++,b))break;a.pb=a.za.seek(a.Qb,a.kb,a.xb);if(!a.pb){a.Cb=8256;b=-1;break}a.eb=0;Op(a)}while(1);return b}function Op(a){a.xb++;a.xb>=a.Rf+1&&(a.xb=1,a.kb++,a.kb>=a.Qf&&(a.kb=0,a.Qb++))}var Ap={1009:vp.prototype.jm,1012:vp.prototype.lm,1013:vp.prototype.im,1015:vp.prototype.km},Bp={1010:vp.prototype.Kn,1013:vp.prototype.Jn,1015:vp.prototype.In};
|
||||
Xa(function(){for(var a=tb(document,"pcx86","fdc"),b=0;b<a.length;b++){var c=a[b],d=qb(c),d=new vp(d);sb(d,c)}});function Pp(a){bb.call(this,"HDC",a,Pp,1048576);this.dmaRead=this.gl;this.dmaWrite=this.hl;this.dmaWriteBuffer=this.wl;this.dmaWriteFormat=this.xl;this.ua=[];this.Fa=a.drives;this.ia="at"==a.type}jb(Pp);
|
||||
Xa(function(){for(var a=tb(document,"pcx86","fdc"),b=0;b<a.length;b++){var c=a[b],d=qb(c),d=new vp(d);sb(d,c)}});function Pp(a){bb.call(this,"HDC",a,Pp,1048576);this.dmaRead=this.gl;this.dmaWrite=this.hl;this.dmaWriteBuffer=this.wl;this.dmaWriteFormat=this.xl;this.ua=[];this.Ea=a.drives;this.ia="at"==a.type}jb(Pp);
|
||||
var Qp=["XTC","ATC","COMPAQ"],Rp=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966,6],19:[1023,
|
||||
8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}];l=Pp.prototype;
|
||||
l.Pb=function(a,b,c){var d=this;switch(b){case "saveHD0":case "saveHD1":return this.qa[b]=c,c.onclick=function(a){return function(){var b=d.A&&d.A[a];b&&b.za?(b=b.za,b=Na(tp(b),"octet-stream",!0,b.Ug.replace(".json",".img")),w(b)):d.Na("Hard drive "+a+" is not available.")}}(+b.slice(-1)),!0}return!1};
|
||||
l.Ic=function(a,b,c,d){this.ga=b;this.F=c;this.ha=d;this.X=a;if(d=Yc(a,"drives"))this.ua=d;else if(this.Fa)try{this.ua=eval("("+this.Fa+")")}catch(e){w("HDC drive configuration error: "+e.message+" ("+this.Fa+")")}this.N=Jb(a,"ChipSet");this.U=0;this.Ga=3;qc(b,this,this.ia?Sp:Tp);yc(b,this,this.ia?Up:Vp);this.ia&&(this.U++,this.N&&5180==this.N.ja&&this.U++,this.Ga=2,b.aa[496]=2,b.ea[496]=2);lf(c,19,this.Nm.bind(this));lf(c,64,this.Om.bind(this));this.reset();Wp(this)||xb(this)};
|
||||
l.Ic=function(a,b,c,d){this.ga=b;this.F=c;this.ha=d;this.X=a;if(d=Yc(a,"drives"))this.ua=d;else if(this.Ea)try{this.ua=eval("("+this.Ea+")")}catch(e){w("HDC drive configuration error: "+e.message+" ("+this.Ea+")")}this.N=Jb(a,"ChipSet");this.U=0;this.Ga=3;qc(b,this,this.ia?Sp:Tp);yc(b,this,this.ia?Up:Vp);this.ia&&(this.U++,this.N&&5180==this.N.ja&&this.U++,this.Ga=2,b.aa[496]=2,b.ea[496]=2);lf(c,19,this.Nm.bind(this));lf(c,64,this.Om.bind(this));this.reset();Wp(this)||xb(this)};
|
||||
l.hc=function(a,b){if(!b)if(!a||!this.restore)Xp(this),this.X.lh&&Wp(this,!0);else if(!this.restore(a))return!1;return!0};l.gc=function(a){return a?this.save():!0};l.gf=function(){return this.X?this.X.gf():""};l.ie=function(){return this.X?this.X.ie():""};l.reset=function(){Xp(this,null,!0)};l.save=function(){var a=new qf(this);a.set(0,Yp(this));return a.data()};l.restore=function(a){return Xp(this,a[0])};
|
||||
function Xp(a,b,c){var d=0,e=!0;a.hb=-1;if(a.ia){if(b||(b=[0,0,0,0,0,0,0,64,0,[0,-1]]),a.W=b[d++],a.Pa=b[d++],a.aa=b[d++],a.Ca=b[d++],a.ya=b[d++],a.va=b[d++],a.ra=b[d++],a.ma=b[d++],a.Da=b[d++],a.fa=b[d++],"object"==typeof a.fa){var f=a.fa;a.fa=f[0];a.hb=f[1]}}else b||(b=[0,0,Array(14),0,0]),a.pa=b[d++],a.ma=b[d++],a.V=b[d++],a.L=b[d++],a.C=b[d++],a.Oa=b[d++],a.Ka=b[d++],a.Ja=b[d++],f=b[d++],void 0!==f?a.ka=f:void 0===a.ka&&(a.ka=-1);void 0===a.A&&(a.A=Array(a.ua.length));b=b[d];void 0===b&&(b=[]);
|
||||
for(d=0;d<a.A.length;d++){void 0===a.A[d]&&(a.A[d]={});var f=a.A[d],g=a,h=d,k=f,m=a.ua[d],n=b[d],t=c,q=0,A=!0;n||(n=[0,0,!1,Array(8)]);k.hb=h;k.errorCode=n[q++];k.Vk=n[q++];k.cf=n[q++];k.Te=n[q++];k.Ue=n[q++];k.kb=n[q++];k.ub=n[q++];k.be=n[q++];k.xb=n[q++];k.fe=n[q++];k.Hb=n[q++];k.rg=g.ia?0:1;k.name=m.name;void 0===k.name&&(k.name="Hard Drive");k.path=m.path;k.mode=m.mode||(k.path?"preload":"local");"demandro"!=k.mode&&"demandrw"!=k.mode||g.ie()||(k.mode="local");k.type=m.type;if(void 0===k.type||
|
||||
|
|
@ -744,15 +744,15 @@ l.Sm=function(a){var b=this.F,c=b.G&255,d=b.G>>8&255,e=b.H&65535,f=b.I&65535,g=b
|
|||
l.Pb=function(a,b,c){var d=this;switch(b){case "debugInput":return this.Ka=this.qa[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",Aq(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.A<d.C.length-1&&(b=d.C[++d.A])):40==a.keyCode&&(0<d.A?b=d.C[--d.A]:(b="",d.A=-1)),null!=b){var e=b.length;c.value=b;c.setSelectionRange(e,e)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.qa[b]=c,Qa(c,function(){if(d.Ka){var a=d.Ka.value;
|
||||
d.Ka.value="";Aq(d,a,!0);return!0}return!1}),!0;case "step":return this.qa[b]=c,Qa(c,function(a){var b=!1;wb(d,!0)||(vb(d,!0),b=d.wf(a?1:0),vb(d,!1));return b}),!0}return!1};l.wd=function(){this.Ka&&this.Ka.focus()};function er(a){return a.F&&!!(a.F.$a&1)&&!(a.F.ca&131072)}
|
||||
function Rq(a,b,c){var d=er(a)?2:1;c||(c=d);if(c==d){if(b===a.F.wa.Z)return a.F.wa;if(b===a.F.vb.Z)return a.F.vb;if(b===a.F.Xa.Z)return a.F.Xa;if(b===a.F.ta.Z)return a.F.ta;if(80386<=a.F.ja){if(b===a.F.Nb.Z)return a.F.Nb;if(b===a.F.Ob.Z)return a.F.Ob}if(a.gb&&2==c||!a.bc)return null}a=a.bc;if(2!=c)a.uh(b),a.Ta=65535,a.Zb=65536;else{var e;c=a.F;b&=65535;b&4?(d=c.Bc.Aa,e=d+c.Bc.Ta|0):(d=c.Ec,e=c.zd);d=d+(b&65528)|0;if(e-d|0){e=Qf(c,d+0,2);var f=Qf(c,d+4,2),g=f&7936,h=Qf(c,d+2,2)|(f&255)<<16,k=Qf(c,
|
||||
d+6,2);80386<=c.ja&&(h|=(k&65280)<<16,e|=(k&15)<<16,k&128&&(e=e<<12|4095));a.Z=b;a.Aa=h;a.Ta=e;a.Zb=(e>>>0)+1;a.wb=f;a.type=g;a.ext=k;a.Xb=d;ld(a,!0,!0,!1)}}return a}l.cc=function(a,b,c){var d=a&&a.Ea;if(null==d&&(d=-1,a)){var e=Rq(this,a.Z,a.type);e&&(b=a.Ra||0,c=c||1,d=e=-1===e.Xb||e.bd&&(b>>>0)+c>e.Zb||!e.bd&&(b>>>0)+c<=e.Zb?e.Aa+b|0:-1,a.Ea=d)}return d};l.Qa=function(a,b){var c=255,d=this.cc(a,!1,1);-1!==d&&(c=Qf(this.F,d,1,5==a.type)|0,b&&fr(this,a,b));return c};
|
||||
d+6,2);80386<=c.ja&&(h|=(k&65280)<<16,e|=(k&15)<<16,k&128&&(e=e<<12|4095));a.Z=b;a.Aa=h;a.Ta=e;a.Zb=(e>>>0)+1;a.wb=f;a.type=g;a.ext=k;a.Xb=d;ld(a,!0,!0,!1)}}return a}l.cc=function(a,b,c){var d=a&&a.Fa;if(null==d&&(d=-1,a)){var e=Rq(this,a.Z,a.type);e&&(b=a.Ra||0,c=c||1,d=e=-1===e.Xb||e.bd&&(b>>>0)+c>e.Zb||!e.bd&&(b>>>0)+c<=e.Zb?e.Aa+b|0:-1,a.Fa=d)}return d};l.Qa=function(a,b){var c=255,d=this.cc(a,!1,1);-1!==d&&(c=Qf(this.F,d,1,5==a.type)|0,b&&fr(this,a,b));return c};
|
||||
l.tb=function(a,b){return a.Rb?this.oa(a,b?4:0):this.na(a,b?2:0)};l.na=function(a,b){var c=65535,d=this.cc(a,!1,2);-1!==d&&(c=Qf(this.F,d,2,5==a.type),b&&fr(this,a,b));return c};l.oa=function(a,b){var c=-1,d=this.cc(a,!1,4);-1!==d&&(c=Qf(this.F,d,4,5==a.type),b&&fr(this,a,b));return c};l.qc=function(a,b,c,d){var e=this.cc(a,!0,1);if(-1!==e){if(5!=a.type)this.F.qc(e,b);else{var f=this.ga;f.sa[(e&f.Gb)>>>f.La].xf(e&f.A,b&255,e)}c&&fr(this,a,c);d||ad(this.F,!0)}};
|
||||
l.jb=function(a,b,c){var d=this.cc(a,!0,2);-1!==d&&(5!=a.type?this.F.jb(d,b):nc(this.ga,d,b),c&&fr(this,a,c),ad(this.F,!0))};function wq(a,b,c,d,e,f,g){return gr(a,{},b,c,d,e,f,g)}function gr(a,b,c,d,e,f,g,h){b.Ra=c||0;b.Z=d;b.Ea=e;b.type=f||(er(a)?2:1);b.Rb=null!=g?g:a.F&&4==a.F.wa.ba;b.oc=null!=h?h:a.F&&4==a.F.wa.Tc;b.Vd=!1;return b}function hr(a){return[a.Ra,a.Z,a.Ea,a.Vd,a.Rb,a.oc,a.Ve,a.jh]}function ir(a){return{Ra:a[0],Z:a[1],Ea:a[2],Vd:a[3],Rb:a[4],oc:a[5],Ve:a[6],jh:a[7]}}
|
||||
l.jb=function(a,b,c){var d=this.cc(a,!0,2);-1!==d&&(5!=a.type?this.F.jb(d,b):nc(this.ga,d,b),c&&fr(this,a,c),ad(this.F,!0))};function wq(a,b,c,d,e,f,g){return gr(a,{},b,c,d,e,f,g)}function gr(a,b,c,d,e,f,g,h){b.Ra=c||0;b.Z=d;b.Fa=e;b.type=f||(er(a)?2:1);b.Rb=null!=g?g:a.F&&4==a.F.wa.ba;b.oc=null!=h?h:a.F&&4==a.F.wa.Tc;b.Vd=!1;return b}function hr(a){return[a.Ra,a.Z,a.Fa,a.Vd,a.Rb,a.oc,a.Ve,a.jh]}function ir(a){return{Ra:a[0],Z:a[1],Fa:a[2],Vd:a[3],Rb:a[4],oc:a[5],Ve:a[6],jh:a[7]}}
|
||||
function jr(a,b,c){if(null!=b.Z&&(a=Rq(a,b.Z,b.type))){var d=b.Ra&a.Ba;if(!a.bd){if(d>>>0>=a.Zb)return!1}else if(d>>>0<a.Zb)return!1;c&&(b.Ra=d,b.Rb=4==a.ba,b.oc=4==a.Tc)}return!0}
|
||||
function kr(a,b,c,d){var e,f=c?a.aa:a.Db;c=d?0:f.type;var g=f.Ra,h=f.Z,f=f.Ea;if(void 0!==b){b=qq(a,b);e=b.charAt(0);f=b.indexOf(":");switch(e){case "&":c=1;break;case "#":c=2;break;case "%":c=4;e=b.charAt(1);"%"==e&&(c=5,e+=e);g=0;h=null;break;default:0<=f&&(c=0),e=""}e&&(b=b.substr(e.length),f-=e.length);e=b;var k;if(e.match(/^[a-z_][a-z0-9_]*$/i))for(var m=e.toUpperCase(),n=0;n<a.N.length;n++){e=a.N[n];var t=e.Qd[m];if(void 0!==t){m=t.o;void 0!==m&&(k=t.s,void 0===k&&(k=e.Z),k=wq(a,m,k,t.p));break}}if(e=
|
||||
function kr(a,b,c,d){var e,f=c?a.aa:a.Db;c=d?0:f.type;var g=f.Ra,h=f.Z,f=f.Fa;if(void 0!==b){b=qq(a,b);e=b.charAt(0);f=b.indexOf(":");switch(e){case "&":c=1;break;case "#":c=2;break;case "%":c=4;e=b.charAt(1);"%"==e&&(c=5,e+=e);g=0;h=null;break;default:0<=f&&(c=0),e=""}e&&(b=b.substr(e.length),f-=e.length);e=b;var k;if(e.match(/^[a-z_][a-z0-9_]*$/i))for(var m=e.toUpperCase(),n=0;n<a.N.length;n++){e=a.N[n];var t=e.Qd[m];if(void 0!==t){m=t.o;void 0!==m&&(k=t.s,void 0===k&&(k=e.Z),k=wq(a,m,k,t.p));break}}if(e=
|
||||
k)return e;0>f?null!=h?(g=pq(a,b,void 0),f=null):(f=pq(a,b,void 0),null==f&&(g=null)):(h=pq(a,b.substring(0,f),void 0),g=pq(a,b.substring(f+1),void 0),f=null)}null!=g&&(e=wq(a,g,h,f,c),d||jr(a,e,!0)||(a.O("invalid offset: "+dr(e)),e=null));return e}function lr(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.ll=a.Ng(b.Sk=c[2]))}l.Pk=function(a,b){var c=kr(this,b);return a.replace("["+b+"]",c?r(this.tb(c),c.Rb?8:4):"undefined")};
|
||||
function fr(a,b,c){c=c||1;null!=b.Ea&&(b.Ea+=c);null!=b.Z&&(b.Ra+=c,jr(a,b)||(b.Ra=0,b.Ea=null))}function Uq(a,b,c){return null!=b?r(b,4)+":"+r(a,a&-65536||c?8:4):r(a)}function dr(a){var b;switch(a.type){case 1:case 3:b="&";break;case 2:b="#";break;case 4:b="%";break;case 5:b="%%";break;default:b=a.Z?"":"%"}return 4<=a.type||null==a.Z?b+r(a.Ea):b+Uq(a.Ra,a.Z,a.oc)}
|
||||
function fr(a,b,c){c=c||1;null!=b.Fa&&(b.Fa+=c);null!=b.Z&&(b.Ra+=c,jr(a,b)||(b.Ra=0,b.Fa=null))}function Uq(a,b,c){return null!=b?r(b,4)+":"+r(a,a&-65536||c?8:4):r(a)}function dr(a){var b;switch(a.type){case 1:case 3:b="&";break;case 2:b="#";break;case 4:b="%";break;case 5:b="%%";break;default:b=a.Z?"":"%"}return 4<=a.type||null==a.Z?b+r(a.Fa):b+Uq(a.Ra,a.Z,a.oc)}
|
||||
function Vq(a,b,c){var d="";for(c=c||256;d.length<c;){var e=a.Qa(b,1);if(!e||36==e||127<=e)break;d+=32<=e?String.fromCharCode(e):"."}return d}
|
||||
function Qq(a,b,c,d){var e=0,f=0,g=b.length;if(c){e=a.cc(kr(a,c));if(-1===e){a.O("invalid address: "+c);return}f=e>>>a.F.La;g=1}a.O("blockid "+(d?"linear ":"physical")+" blockaddr used size type");a.O("-------- --------- ---------- ------ ------ ----");c=-1;for(var h=0;g--;)(d=b[f])&&5==d.type&&(d=Nc(a.F,e,!1,!0)),d.type==c?h++||a.O("..."):(c=d.type,h=Yb[c],6==c&&(d=d.Bd,h+=" -> "+Yb[d.type]),d&&a.O(r(d.id,8)+" %"+r(f<<a.F.La,8)+" %%"+r(d.Ea,8)+" "+v(d.Qe)+" "+v(d.size)+" "+
|
||||
function Qq(a,b,c,d){var e=0,f=0,g=b.length;if(c){e=a.cc(kr(a,c));if(-1===e){a.O("invalid address: "+c);return}f=e>>>a.F.La;g=1}a.O("blockid "+(d?"linear ":"physical")+" blockaddr used size type");a.O("-------- --------- ---------- ------ ------ ----");c=-1;for(var h=0;g--;)(d=b[f])&&5==d.type&&(d=Nc(a.F,e,!1,!0)),d.type==c?h++||a.O("..."):(c=d.type,h=Yb[c],6==c&&(d=d.Bd,h+=" -> "+Yb[d.type]),d&&a.O(r(d.id,8)+" %"+r(f<<a.F.La,8)+" %%"+r(d.Fa,8)+" "+v(d.Qe)+" "+v(d.size)+" "+
|
||||
h),c!=Ec&&5!=c&&(c=-1),h=0),e+=a.F.Sb,f++}function mr(a,b,c){a=r(a)+" "+r(b)+" ";a=a+(c&&b&64?"D":"-")+(b&32?"A":"-")+(b&4?"U":"S");a+=b&2?"W":"R";return a+=b&1?"P":"N"}
|
||||
var Sq={256:["tss286",!1],512:["ldt",!1],768:["busy tss286",!1],1024:["call gate",!0],1280:["task gate",!0],1536:["int gate286",!0],1792:["trap gate286",!0],2304:["tss386",!1],2816:["busy tss386",!1],3072:["call gate386",!0],3584:["int gate386",!0],3840:["trap gate386",!0]},Wq={PREV_TSS:0,CPL0_SP:2,CPL0_SS:4,CPL1_SP:6,CPL1_SS:8,CPL2_SP:10,CPL2_SS:12,TASK_IP:14,TASK_PS:16,TASK_AX:18,TASK_CX:20,TASK_DX:22,TASK_BX:24,TASK_SP:26,TASK_BP:28,TASK_SI:30,TASK_DI:32,TASK_ES:34,TASK_CS:36,TASK_SS:38,TASK_DS:40,
|
||||
TASK_LDT:42},Xq={PREV_TSS:0,CPL0_ESP:4,CPL0_SS:8,CPL1_ESP:12,CPL1_SS:16,CPL2_ESP:20,CPL2_SS:24,TASK_CR3:28,TASK_EIP:32,TASK_PS:36,TASK_EAX:40,TASK_ECX:44,TASK_EDX:48,TASK_EBX:52,TASK_ESP:56,TASK_EBP:60,TASK_ESI:64,TASK_EDI:68,TASK_ES:72,TASK_CS:76,TASK_SS:80,TASK_DS:84,TASK_FS:88,TASK_GS:92,TASK_LDT:96,TASK_IOPM:100};
|
||||
|
|
@ -765,30 +765,30 @@ function or(a,b){b=qq(a,b);for(var c=0,d,e;0<=(c=b.indexOf("@",c));)e=a.oh(b,c+1
|
|||
e+' "'+Vq(a,d,11)+'"',b=b.replace("^"+e,d),c+=d.length):c++;return b}l.message=function(a,b){b&&(a+=" at "+dr(wq(this,M(this.F),this.F.wa.Z))+" (%"+r(this.F.Ha)+")");this.Pa&&a==this.Pa||(this.Pa=a,this.wc&-2147483648&&(this.Wb(),a+=" (cpu halted)"),this.O(a),this.F&&(a=this.F,a.fb-=a.A,a.A=0,a.Y.mf=0,ad(a)))};
|
||||
function pk(a,b,c,d){var e,f;if(!d&&(d=z(a,1)&&0>Cq.indexOf(b),!d)){var g=Bq[b];g&&(d=z(a,g)?!0:524288==g&&z(a,g=1048576))}d&&(e=a.F.G>>8&255,f=a.F.M&255,33==b&&11==e||524288==g&&128<=f||1048576==g&&128>f)&&(d=!1);d&&((g=(g=Db[b])&&g[e]||"")&&(g=" "+or(a,g)),a.message("INT "+u(b)+": AH="+u(e)+" at "+Uq(c-2-a.F.wa.Aa,a.F.wa.Z)+g));return d}
|
||||
function ub(a,b,c,d,e,f,g,h){h|=256;if(null==e||(a.wc&h)==h)h=null,null!=e&&(h=a.F.wa.Z,e-=a.F.wa.Aa),a.message(b.xd+"."+(null!=d?"outPort":"inPort")+"("+v(c)+","+(f?f:"unknown")+(null!=d?","+u(d):"")+")"+(null!=g?": "+u(g):"")+(null!=e?" at "+Uq(e,h):""))}l.qh=function(){this.O("Type ? for help with PCx86 Debugger commands");this.pd();if(this.qb){var a=this.qb;this.qb=null;Aq(this,a)}};
|
||||
function yq(a,b){var c;if(ag(a)){if(!a.ia||!a.ia.length){a.ia=Array(1E3);for(c=0;c<a.ia.length;c++)a.ia[c]=wq(a);a.Fa=0;b||a.O("instruction history buffer allocated")}if(!a.W||!a.W.length)for(a.W=Array(256),c=0;c<a.W.length;c++)a.W[c]=[c,0]}else a.ia&&a.ia.length&&!b&&a.O("instruction history buffer freed"),a.Fa=0,a.ia=[],a.W=[]}l.Ne=function(a){if(!pr(this))return!1;this.F.Ne(a);return!0};
|
||||
function yq(a,b){var c;if(ag(a)){if(!a.ia||!a.ia.length){a.ia=Array(1E3);for(c=0;c<a.ia.length;c++)a.ia[c]=wq(a);a.Ea=0;b||a.O("instruction history buffer allocated")}if(!a.W||!a.W.length)for(a.W=Array(256),c=0;c<a.W.length;c++)a.W[c]=[c,0]}else a.ia&&a.ia.length&&!b&&a.O("instruction history buffer freed"),a.Ea=0,a.ia=[],a.W=[]}l.Ne=function(a){if(!pr(this))return!1;this.F.Ne(a);return!0};
|
||||
l.wf=function(a,b,c){if(!pr(this))return!1;this.ea=0;do{a||ag(this)&&dg(this,this.F.Ha,0);try{var d=this.F.wf(a);0<d&&(this.ea+=d,fd(this.F,d,!0),bd(this.F,d),this.pa++)}catch(f){if("number"!=typeof f){var e=f;this.ea=0;zb(this.F,e.stack||e.message)}}}while(this.F.S&3312);!1!==c&&ad(this.F);this.pd(b||!1);return 0<this.ea};l.Wb=function(a){this.F&&this.F.Wb(a)};l.pd=function(a){void 0===a&&(a=!0);this.aa=wq(this,M(this.F),this.F.wa.Z);a&&1!=this.U?qr(this):rr(this)};
|
||||
function pr(a){var b;if(b=a.F&&yb(a.F))b=a.F,b.la.ic?b=!0:(b.O(b.toString()+" not powered"),b=!1);b&&!wb(a.F)?(a=a.F,a.la.error?(a.O(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}l.hc=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};l.gc=function(a,b){b&&this.O(a?"suspending":"shutting down");return a?this.save():!0};l.reset=function(a){yq(this);this.pa=this.Ca=0;this.Pa=null;this.ea=0;this.aa=wq(this,M(this.F),this.F.wa.Z);this.la.Ib=!1;sr(this);a||this.pd()};
|
||||
l.save=function(){var a=new qf(this);a.set(0,hr(this.aa));a.set(1,hr(this.ua));a.set(2,[this.C,this.va,this.wc]);a.set(3,this.N);return a.data()};l.restore=function(a){var b=0;void 0!==a[2]&&(this.aa=ir(a[b++]),this.ua=ir(a[b++]),this.C=a[b][0],"string"==typeof this.C&&(this.C=[this.C]),this.va=a[b][1],this.wc|=a[b][2]);a[3]&&(this.N=a[3]);return!0};l.start=function(a,b){this.U||this.O("running");this.la.Ib=!0;this.uc=a;this.vd=b};
|
||||
l.stop=function(a,b){if(this.la.Ib){this.la.Ib=!1;this.ea=b-this.vd;if(!this.U){b="stopped";if(this.ea){a-=this.uc;var c=0<a?Math.round(1E3*this.ea/a):0;b+=" (";ag(this)&&(b+=this.pa+" opcodes, ",this.Ca-=this.pa,this.pa=0);b+=this.ea+" cycles, "+a+" ms, "+c+" hz)"}else z(this,-2147483648)&&(b+=" (use the 't' command to execute blocked faults)");this.O(b)}this.pd(!0);this.wd();sr(this,this.F.Ha)}};function ag(a){return 1<a.B.length||!!a.Oa||z(a,16)}
|
||||
function dg(a,b,c){var d=a.F;if(0<c&&(a.Oa&&!--a.Oa||tr(a,b,1,a.B)))return!0;0<=c&&a.W.length&&(a.pa++,b=Qf(d,b),null!=b&&(a.W[b][1]++,gr(a,a.ia[a.Fa],M(d),d.wa.Z),++a.Fa==a.ia.length&&(a.Fa=0)));return!1}function Kc(a,b,c){return tr(a,b,c||1,a.ra)?(a.Wb(!0),!0):!1}function Mc(a,b,c){return tr(a,b,c||1,a.fa)?(a.Wb(!0),!0):!1}function wc(a,b,c){a.O("break on input from port "+v(b)+": "+r(c));a.Wb(!0)}function Ac(a,b,c){a.O("break on output to port "+v(b)+": "+r(c));a.Wb(!0)}
|
||||
function dg(a,b,c){var d=a.F;if(0<c&&(a.Oa&&!--a.Oa||tr(a,b,1,a.B)))return!0;0<=c&&a.W.length&&(a.pa++,b=Qf(d,b),null!=b&&(a.W[b][1]++,gr(a,a.ia[a.Ea],M(d),d.wa.Z),++a.Ea==a.ia.length&&(a.Ea=0)));return!1}function Kc(a,b,c){return tr(a,b,c||1,a.ra)?(a.Wb(!0),!0):!1}function Mc(a,b,c){return tr(a,b,c||1,a.fa)?(a.Wb(!0),!0):!1}function wc(a,b,c){a.O("break on input from port "+v(b)+": "+r(c));a.Wb(!0)}function Ac(a,b,c){a.O("break on output to port "+v(b)+": "+r(c));a.Wb(!0)}
|
||||
function xq(a){var b,c;a.B=["bp"];if(a.ra)for(b=1;b<a.ra.length;b++)c=a.ra[b],we(a.F,a.cc(c),!1,5==c.type);a.ra=["br"];if(a.fa)for(b=1;b<a.fa.length;b++)c=a.fa[b],we(a.F,a.cc(c),!0,5==c.type);a.fa=["bw"];a.gb=0}
|
||||
l.Rd=function(a,b,c){var d=!0;c||cr(this,a,b,!1,!0);if(a!=this.B){var e=this.cc(b);if(-1===e)this.O("invalid address: "+dr(b)),d=!1;else{var f=this.F,g=5==b.type;(g?f.kd:f.sa)[e>>>f.La].Rd(e&f.Fa,a==this.fa);g&&Xb(f)}}d&&(a.push(b),c?(null!=b.Ea&&(b.Z=null),b.Vd=!0):(ur(this,a,a.length-1,"set"),yq(this)));return d};
|
||||
l.Rd=function(a,b,c){var d=!0;c||cr(this,a,b,!1,!0);if(a!=this.B){var e=this.cc(b);if(-1===e)this.O("invalid address: "+dr(b)),d=!1;else{var f=this.F,g=5==b.type;(g?f.kd:f.sa)[e>>>f.La].Rd(e&f.Ea,a==this.fa);g&&Xb(f)}}d&&(a.push(b),c?(null!=b.Fa&&(b.Z=null),b.Vd=!0):(ur(this,a,a.length-1,"set"),yq(this)));return d};
|
||||
function cr(a,b,c,d,e){for(var f=!1,g=vr(a,a.cc(c)),h=1;h<b.length;h++){var k=b[h];if(-1!==g&&g==vr(a,a.cc(k))||-1===g&&c.Z==k.Z&&c.Ra==k.Ra)if(!d||k.Vd){f=!0;k.Vd||e||ur(a,b,h,"cleared");b.splice(h,1);b!=a.B&&we(a.F,g,b==a.fa,5==k.type);k.Vd||yq(a);break}}return f}function wr(a,b){for(var c=1;c<b.length;c++)ur(a,b,c);return b.length-1}function ur(a,b,c,d){c=b[c];a.O(b[0]+" "+dr(c)+(d?" "+d:c.Sk?' "'+c.Sk+'"':""))}
|
||||
function sr(a,b){if(void 0!==b)tr(a,b,1,a.B,!0),a.U=0;else for(b=1;b<a.B.length;b++){var c=a.B[b];if(c.Vd){if(!cr(a,a.B,c,!0))break;b=0}}}function vr(a,b){-1!==b&&(a=a.Ba&-65536,(b&a)==a&&(b&=1048575));return b}
|
||||
function tr(a,b,c,d,e){var f=!1;if(!a.gb++){b=vr(a,b);z(a,-2147483632)&&204==Qf(a.F,b)&&(f=!0);for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.Vd){null!=h.Z&&(h.Ea=null);for(var k=vr(a,a.cc(h)),m=0;m<c;m++)if(b+m==k){var n,f=!0;h.Vd&&(cr(a,d,h,!0),e=!0);if(n=h.ll){for(var f=!1,t=0;t<n.length;t++)if(!xr(a,n[t],!0)){if(n[t].indexOf("if")){f=!0;break}for(var q=t+1;q<n.length&&n[q].indexOf("else");q++)t++;if(q==n.length){f=!0;break}}a.F.la.Ib||(f=!0)}if(f){e||ur(a,d,g,"hit");break}}}}}a.gb--;return f}
|
||||
function yr(a,b,c,d){for(var e=wq(a,b.Ra,b.Z,b.Ea,b.type),f=a.Qa(b,1),g=4,h=0,k=!1,m=!1;(102==f||103==f)&&g--;)102==f?k||(b.Rb=!b.Rb,k=!0):m||(b.oc=!b.oc,m=!0),h++,f=a.Qa(b,1);var g=-1,n=Eq,k=a.Ga[f],m=k[0];176==m&&(m=a.Qa(b,1),k=Nq[m]||Kq,f|=m<<8,m=k[0]);if(36==m){var g=a.Qa(b,1),t;t=null;var q=g>>3&7,A=(3>(g>>6&3)?0:48)+q;(217==f||219==f)&&52<=A&&(A=q<<4|g&7);(q=Oq[f])&&(t=q[A]);t&&(n=Fq,k=t,m=k[0])}m>=n.length&&(g=a.Qa(b,1),k=Pq[m-n.length][g>>3&7],m=k[0]);n=n[m];q=k.length-1;t="";b.Rb&&(18==m?
|
||||
function tr(a,b,c,d,e){var f=!1;if(!a.gb++){b=vr(a,b);z(a,-2147483632)&&204==Qf(a.F,b)&&(f=!0);for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.Vd){null!=h.Z&&(h.Fa=null);for(var k=vr(a,a.cc(h)),m=0;m<c;m++)if(b+m==k){var n,f=!0;h.Vd&&(cr(a,d,h,!0),e=!0);if(n=h.ll){for(var f=!1,t=0;t<n.length;t++)if(!xr(a,n[t],!0)){if(n[t].indexOf("if")){f=!0;break}for(var q=t+1;q<n.length&&n[q].indexOf("else");q++)t++;if(q==n.length){f=!0;break}}a.F.la.Ib||(f=!0)}if(f){e||ur(a,d,g,"hit");break}}}}}a.gb--;return f}
|
||||
function yr(a,b,c,d){for(var e=wq(a,b.Ra,b.Z,b.Fa,b.type),f=a.Qa(b,1),g=4,h=0,k=!1,m=!1;(102==f||103==f)&&g--;)102==f?k||(b.Rb=!b.Rb,k=!0):m||(b.oc=!b.oc,m=!0),h++,f=a.Qa(b,1);var g=-1,n=Eq,k=a.Ga[f],m=k[0];176==m&&(m=a.Qa(b,1),k=Nq[m]||Kq,f|=m<<8,m=k[0]);if(36==m){var g=a.Qa(b,1),t;t=null;var q=g>>3&7,A=(3>(g>>6&3)?0:48)+q;(217==f||219==f)&&52<=A&&(A=q<<4|g&7);(q=Oq[f])&&(t=q[A]);t&&(n=Fq,k=t,m=k[0])}m>=n.length&&(g=a.Qa(b,1),k=Pq[m-n.length][g>>3&7],m=k[0]);n=n[m];q=k.length-1;t="";b.Rb&&(18==m?
|
||||
n="CWDE":28==m?n="CDQ":104<=m&&107>=m&&(n+="D"));if(164<=f&&167>=f||170<=f&&175>=f)q=0,b.Rb&&"W"==n.slice(-1)&&(n=n.slice(0,-1)+"D");for(var f=-1,A=!0,F=1;F<=q;F++){var C,D;C="";D=k[F];if(void 0!==D){0>f&&(f=D>>14);80==m&&(2==f?t="[%800]":3==f&&(t="ES:["+(b.oc?"E":"")+"DI]"));var L=D&15;if(L)if(8==L)A=!1;else{var G=D&240;if(128<=G)if(0>g&&(g=a.Qa(b,1)),160>G){G=a;C=D;var ga=q;D=b;var S="",ab=g>>6,la=g&7;if(3>ab){L=!n.indexOf("FI");if(!ab&&(!D.oc&&6==la||D.oc&&5==la))ab=2;else{if(D.oc)if(4!=la)la+=
|
||||
8;else{var S=G,Ja=ab,Da=D,Wa=S.Qa(Da,1),Ka=Wa>>6,Vb=Wa>>3&7,Wa=Wa&7,Pa="";if(Ja||5!=Wa)Pa=Jq[Wa+8];4!=Vb&&(Pa&&(Pa+="+"),Pa+=Jq[Vb+8],Ka&&(Pa+="*"+(1<<Ka)));Ja||5!=Wa||(Pa&&(Pa+="+"),Pa+=r(S.oa(Da,4)));S=Pa}S||(S=Jq[la])}1==ab?(G=G.Qa(D,1),S=G&128?S+("-"+r(-(G<<24>>24),2)):S+("+"+r(G,2))):2==ab&&(S&&(S+="+"),D.oc?(G=G.oa(D,4),S+=r(G)):(G=G.na(D,2),S+=r(G,4)));S="["+S+"]";if(1==ga){G="";C&=15;4==C&&(C=D.Rb?5:3);switch(C){case 7:G="FAR";break;case 1:G="BYTE";break;case 3:if(L){G="INT16";break}G="WORD";
|
||||
break;case 5:G="DWORD";break;case 11:if(L){G="INT32";break}case 11:G="REAL32";break;case 12:if(L){G="INT64";break}case 12:G="REAL64";break;case 13:G="REAL80";break;case 14:G="BCD80"}G&&(S=G+" "+S)}}else S=zr(G,la,C,D);C=S}else C=160==G?zr(a,g&7,D,b):zr(a,g>>3&7,D,b);else if(16==G)C="1";else if(G)32==G?(b.oc?(C=8,D=a.oa(b,4)):(C=4,D=a.na(b,2)),C="["+r(D,C)+"]"):48==G?(C=1==L?a.Qa(b,1)<<24>>24:a.tb(b,!0),D=b.Ra+C&(b.Rb?-1:65535),C=r(D,b.Rb?8:4),D=Ar(a,wq(a,D,b.Z)),D[0]&&(C+=" ("+D[0]+")")):96==G?C=
|
||||
9==L?"ST":10==L?"ST("+(g&7)+")":zr(a,(D&3840)>>8,D,b):112==G?C=zr(a,(D&3840)>>8,192,b):64==G?C="DS:[SI]":80==G&&(C="ES:[DI]");else{C=a;L=D;G=b;D=" ";switch(L&15){case 1:L&12288&&(D=r(C.Qa(G,1),2));break;case 2:D=r(C.Qa(G,1)<<24>>24,G.Rb?8:4);break;case 4:if(G.Rb){D=r(C.oa(G,4));break}case 3:D=r(C.na(G,2),4);break;case 7:G=wq(C,C.tb(G,!0),C.na(G,2),null,G.type,G.Rb,G.oc);D=dr(G);C=Ar(C,G);C[0]&&(D+=" ("+C[0]+")");break;default:D="imm("+v(L)+")"}C=D}if(!C||!C.length){t="INVALID";break}0<t.length&&(t+=
|
||||
",");t+=C||"???"}}}g="";k=dr(e)+" ";if(-1!==e.Ea&&-1!==b.Ea){do if(g+=r(a.Qa(e,1),2),null==e.Ea)break;while(e.Ea!=b.Ea)}k+=pa(g,e.oc?24:16);k+=pa(n,8);t&&(k+=" "+t);a.F.ja<Hq[f]&&(c=Hq[f]+" CPU only");c&&A&&(k=pa(k,e.oc?74:56)+";"+c,k=a.F.la.Xe?k+("cycles="+cd(a.F).toString()+" cs="+r(a.F.Y.Lf)):k+(null!=d?"="+d.toString():""));Br(b,A,h);return k}
|
||||
",");t+=C||"???"}}}g="";k=dr(e)+" ";if(-1!==e.Fa&&-1!==b.Fa){do if(g+=r(a.Qa(e,1),2),null==e.Fa)break;while(e.Fa!=b.Fa)}k+=pa(g,e.oc?24:16);k+=pa(n,8);t&&(k+=" "+t);a.F.ja<Hq[f]&&(c=Hq[f]+" CPU only");c&&A&&(k=pa(k,e.oc?74:56)+";"+c,k=a.F.la.Xe?k+("cycles="+cd(a.F).toString()+" cs="+r(a.F.Y.Lf)):k+(null!=d?"="+d.toString():""));Br(b,A,h);return k}
|
||||
function zr(a,b,c,d){var e=c&240;if(192==e){if(5<b||4<=b&&80386>a.F.ja)return"??";b+=16}else if(208==e)b+=32;else if(224==e)b+=40;else if(240==e)b+=48;else if(a=c&15,3<=a&&(8>b&&(b+=8),5==a||4==a&&d.Rb))b+=16;return Iq[b]}
|
||||
function Cr(a,b){switch(b){case "V":a=Cf(a.F);break;case "D":a=a.F.ca&1024;break;case "I":a=a.F.ca&512;break;case "T":a=a.F.ca&256;break;case "S":a=Bf(a.F);break;case "Z":a=Af(a.F);break;case "A":a=zf(a.F);break;case "P":a=yf(a.F);break;case "C":a=xf(a.F);break;default:a=0}return b+(a?"1":"0")+" "}function Tq(a){return r(a,a&-65536?8:4)}function Dr(a,b){8<=b&&15>=b&&4<a.Ja&&(b+=16);var c=Iq[b];32==b&&80286==a.F.ja&&(c="MS");return c+"="+nr(a,b)+" "}
|
||||
function Er(a,b,c){return b.kc+"="+r(b.Z,4)+(c?"["+r(b.Aa,a.Da)+","+Tq(b.Ta)+"]":"")}function Fr(a,b,c,d,e){return b+"="+(null!=c?r(c,4):"")+"["+r(d,a.Da)+","+r(e-d,4)+"]"}
|
||||
function Gr(a,b){var c;void 0===b&&(b=er(a));c=Dr(a,8)+Dr(a,11)+Dr(a,9)+Dr(a,10)+(4<a.Ja?"\n":"")+Dr(a,12)+Dr(a,13)+Dr(a,14)+Dr(a,15)+"\n"+Er(a,a.F.ta,b)+" "+Er(a,a.F.vb,b)+" "+Er(a,a.F.Xa,b)+" ";if(b){var d="TR="+r(a.F.Sa.Z,4),e=a.ga,e="A20="+(e.X||e.Dg!=e.Gb?"OFF ":"ON ");80386>a.F.ja&&(d="\n"+d,c+=e,e="");c+="\n"+Er(a,a.F.wa,b)+" ";80386<=a.F.ja&&(e+="\n",c+=Er(a,a.F.Nb,b)+" "+Er(a,a.F.Ob,b)+"\n");c+=Fr(a,"LD",a.F.Bc.Z,a.F.Bc.Aa,a.F.Bc.Aa+a.F.Bc.Ta)+" "+Fr(a,"GD",null,a.F.Ec,a.F.zd)+" "+Fr(a,"ID",
|
||||
null,a.F.Mc,a.F.Sd)+" ";c=c+(d+" "+e)+Dr(a,32);80386<=a.F.ja&&(c+=Dr(a,34)+Dr(a,35))}else 80386<=a.F.ja&&(c+=Er(a,a.F.Nb,b)+" "+Er(a,a.F.Ob,b)+" ");return c+=Dr(a,23)+Cr(a,"V")+Cr(a,"D")+Cr(a,"I")+Cr(a,"T")+Cr(a,"S")+Cr(a,"Z")+Cr(a,"A")+Cr(a,"P")+Cr(a,"C")}l.lj=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0};
|
||||
function fm(a,b,c,d,e,f,g,h){var k={},m=[],n;for(n in h){var t=h[n];"number"==typeof t&&(h[n]=t={o:t});var q=t.o,A=t.s,F=t.a;if(void 0!==q){void 0!==A&&(k.Ra=q,k.Z=A,k.Ea=null,a.cc(k),(k.Ea&-65536)==(a.ga.Dg&-65536)&&(k.Ea&=1048575),t.p=k.Ea);var A=m,q=[q>>>0,n],C=sa(A,q,a.lj);0>C&&A.splice(-(C+1),0,q)}F&&(t.a=F.replace(/''/g,'"'))}a.N.push({jg:b,dn:c,Z:d,Ra:e,Ea:f,Vm:g,Qd:h,Xi:m})}
|
||||
function br(a,b,c){for(var d=0;d<a.N.length;d++){var e=a.N[d];if(!b||e.jg==b)if(b&&c==e.dn||!b&&c==e.Z){a.N.splice(d,1);break}}}function Ar(a,b,c){for(var d=[],e=b.Ra>>>0,f=a.cc(b)>>>0,g=0;g<a.N.length;g++){var h=a.N[g],k=h.Z,m=h.Ra>>>0,n=h.Ea;null!=n&&(n>>>=0);var t=h.Vm;48==k&&(k=40);if(k==b.Z&&e>=m&&e<m+t||null!=n&&f>=n&&f<n+t){b=sa(h.Xi,[e],a.lj);0<=b?Hr(a,g,b,d):c&&(b=~b,Hr(a,g,b-1,d),Hr(a,g,b,d));break}}!d.length&&(a=a.ga.xj(f,!0))&&(d.push(a),d.push(f));return d}
|
||||
function fm(a,b,c,d,e,f,g,h){var k={},m=[],n;for(n in h){var t=h[n];"number"==typeof t&&(h[n]=t={o:t});var q=t.o,A=t.s,F=t.a;if(void 0!==q){void 0!==A&&(k.Ra=q,k.Z=A,k.Fa=null,a.cc(k),(k.Fa&-65536)==(a.ga.Dg&-65536)&&(k.Fa&=1048575),t.p=k.Fa);var A=m,q=[q>>>0,n],C=sa(A,q,a.lj);0>C&&A.splice(-(C+1),0,q)}F&&(t.a=F.replace(/''/g,'"'))}a.N.push({jg:b,dn:c,Z:d,Ra:e,Fa:f,Vm:g,Qd:h,Xi:m})}
|
||||
function br(a,b,c){for(var d=0;d<a.N.length;d++){var e=a.N[d];if(!b||e.jg==b)if(b&&c==e.dn||!b&&c==e.Z){a.N.splice(d,1);break}}}function Ar(a,b,c){for(var d=[],e=b.Ra>>>0,f=a.cc(b)>>>0,g=0;g<a.N.length;g++){var h=a.N[g],k=h.Z,m=h.Ra>>>0,n=h.Fa;null!=n&&(n>>>=0);var t=h.Vm;48==k&&(k=40);if(k==b.Z&&e>=m&&e<m+t||null!=n&&f>=n&&f<n+t){b=sa(h.Xi,[e],a.lj);0<=b?Hr(a,g,b,d):c&&(b=~b,Hr(a,g,b-1,d),Hr(a,g,b,d));break}}!d.length&&(a=a.ga.xj(f,!0))&&(d.push(a),d.push(f));return d}
|
||||
function Hr(a,b,c,d){var e={},f=a.N[b].Xi,g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.N[b].Qd[h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}function Ir(a){a.Gf&&(a.Gf.value="")}
|
||||
function Jr(a,b){if("?"==b)a.O("frequency commands:"),a.O("\tclear\tclear all frequency counts");else{var c=0;if(a.W)if("clear"==b){for(b=0;b<a.W.length;b++)a.W[b]=[b,0];a.O("frequency data cleared");c++}else if(void 0!==b)a.O("unknown frequency command: "+b),c++;else{var d=a.W.slice();d.sort(function(a,b){return b[1]-a[1]});for(b=0;b<d.length;b++){var e=d[b][0],f=d[b][1];f&&(a.O((Eq[a.Ga[e][0]]+" ").substr(0,5)+" ("+u(e)+"): "+f+" times"),c++)}}c||a.O("no frequency data available")}}
|
||||
function Kr(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return uq(a)||a.O("no variables"),!0;if(!c[2])return uq(a,c[1]);if(!c[3])return delete a.ya[c[1]],!0;b=pq(a,c[3]);return void 0!==b?(a.ya[c[1]]=b,!0):!1}a.O("invalid assignment:"+b);return!1}
|
||||
|
|
@ -801,9 +801,9 @@ a.O("ST"+f+": "+pa(e[2].toFixed(15),24,!0)+" "+r(e[4])+","+r(e[3])+" ["+e[0]+"
|
|||
-65536|g&65535);break;case "BP":a.F.P=a.F.P&-65536|g&65535;break;case "SI":a.F.K=a.F.K&-65536|g&65535;break;case "DI":a.F.J=a.F.J&-65536|g&65535;break;case "DS":Ad(a.F,g);break;case "ES":Bd(a.F,g);break;case "SS":ud(a.F,g);break;case "CS":sf(a.F,g);a.aa=wq(a,M(a.F),a.F.wa.Z);break;case "IP":case "EIP":O(a.F,g);a.aa=wq(a,M(a.F),a.F.wa.Z);break;case "PC":case "PS":Dd(a.F,g);break;case "C":g?Ef(a.F):Ff(a.F);break;case "P":g?(e=a.F,e.resultType&=-3,e.ca|=4):(e=a.F,e.resultType&=-3,e.ca&=-5);break;case "A":g?
|
||||
Mf(a.F):Kf(a.F);break;case "Z":g?Nf(a.F):Lf(a.F);break;case "S":g?(e=a.F,e.resultType&=-17,e.ca|=128):(e=a.F,e.resultType&=-17,e.ca&=-129);break;case "I":g?(e=a.F,e.ca|=512):(e=a.F,e.ca&=-513);break;case "D":g?(e=a.F,e.ca|=1024):(e=a.F,e.ca&=-1025);break;case "V":g?Gf(a.F):Hf(a.F);break;default:var k=!0;if(80286<=a.F.ja)switch(k=!1,h){case "MS":Of(a.F,g);break;case "TR":-1===a.F.Sa.load(g)&&(f=!1);break;default:if(k=!0,80386<=a.F.ja)switch(k=!1,h){case "EAX":a.F.G=g;break;case "EBX":a.F.H=g;break;
|
||||
case "ECX":a.F.I=g;break;case "EDX":a.F.M=g;break;case "ESP":I(a.F,g);break;case "EBP":a.F.P=g;break;case "ESI":a.F.K=g;break;case "EDI":a.F.J=g;break;case "FS":a.F.Nb.load(g);break;case "GS":a.F.Ob.load(g);break;case "CR0":a.F.$a=g;uj.call(a.F,g);break;case "CR2":a.F.se=g;break;case "CR3":a.F.Od=g;Fd.call(a.F,g);break;default:k=!0}}if(k){a.O("unknown register: "+e);return}}if(!f){a.O("invalid value: "+b);return}ad(a.F);a.O("updated registers:")}}a.O(Gr(a,d));c&&(a.aa=wq(a,M(a.F),a.F.wa.Z),rr(a,dr(a.aa)))}}
|
||||
function Nr(a,b){b=qa(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.O(or(a,c[2])):pq(a,b,!0)}function Or(a,b,c){for(var d=null,e=b.Ra,f=e,g=1;6>=g&&e;g++){if(2<g){b.Ra=e;b.Ea=null;var h=yr(a,b);if(0<=h.indexOf("CALL")||c&&0<=h.indexOf("INT")){var k=h.indexOf(" ");if(e+(h.indexOf(" ",k+1)-k-1)/2==f){d=h;break}}}e--}b.Ra=f;return d}function Pr(a,b,c){var d="t"!=b;c=rq(a,c,null,!0)||1;var e=1==c?0:1;"tc"==b&&(e=c,c=1);Oa(c,function(){return vb(a,!0)&&a.wf(e,d,!1)},function(){ad(a.F);vb(a,!1)})}
|
||||
function Nr(a,b){b=qa(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.O(or(a,c[2])):pq(a,b,!0)}function Or(a,b,c){for(var d=null,e=b.Ra,f=e,g=1;6>=g&&e;g++){if(2<g){b.Ra=e;b.Fa=null;var h=yr(a,b);if(0<=h.indexOf("CALL")||c&&0<=h.indexOf("INT")){var k=h.indexOf(" ");if(e+(h.indexOf(" ",k+1)-k-1)/2==f){d=h;break}}}e--}b.Ra=f;return d}function Pr(a,b,c){var d="t"!=b;c=rq(a,c,null,!0)||1;var e=1==c?0:1;"tc"==b&&(e=c,c=1);Oa(c,function(){return vb(a,!0)&&a.wf(e,d,!1)},function(){ad(a.F);vb(a,!1)})}
|
||||
function Br(a,b,c){if(a.jh=b)null!=a.sj&&(a.Rb=a.sj),null!=a.rj&&(a.oc=a.rj),a.sj=a.Rb,a.rj=a.oc;a.Ve=c||0}
|
||||
function rr(a,b,c,d){if(b=kr(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c){d=kr(a,c,!0);if(!d||d.Ra<b.Ra)return;e=d.Ra-b.Ra;if(256<e){a.O("range too large");return}d=-1}c=0;var f;for(Br(b,!0);0<e&&d--;){f=wb(a,!1)||a.U?a.ea:null;var g=null!=f?"cycles":null,h=Ar(a,b),k=b.Ea;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.O(m)}h[3]&&(g=h[3],f=null);f=yr(a,b,g,f);b.jh||d||d++;a.O(f);a.aa=b;e-=b.Ea-k;c++}}}
|
||||
function rr(a,b,c,d){if(b=kr(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c){d=kr(a,c,!0);if(!d||d.Ra<b.Ra)return;e=d.Ra-b.Ra;if(256<e){a.O("range too large");return}d=-1}c=0;var f;for(Br(b,!0);0<e&&d--;){f=wb(a,!1)||a.U?a.ea:null;var g=null!=f?"cycles":null,h=Ar(a,b),k=b.Fa;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.O(m)}h[3]&&(g=h[3],f=null);f=yr(a,b,g,f);b.jh||d||d++;a.O(f);a.aa=b;e-=b.Fa-k;c++}}}
|
||||
l.Ng=function(a,b,c){if(b)if(a){0>this.A&&this.C.length&&(this.A=0);if(0>this.A||a!=this.C[this.A])this.C.splice(0,0,a),this.A=0;this.A--}else a=this.C[this.A+1];b=[];if(a){a=a.toLowerCase().replace(/""/g,"'");var d=0,e=null;c=c||";";for(var f=0;f<=a.length;f++){var g=a.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==c&&!e||!g)b.push(qa(a.substring(d,f))),d=f+1}}return b};
|
||||
function xr(a,b,c){var d=!0;try{if(!b.length||"end"==b)a.va&&(a.O("ended assemble at "+dr(a.ua)),a.aa=a.ua,a.va=!1),b="";else if(!c){var e=">> ";a.F.$a&1&&(e=a.F.ca&131072?"-- ":"## ");a.O(e+b)}var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.Pa=null;if(yb(a)&&0<b.length){a.va&&(b="a "+dr(a.ua)+" "+b);var g=b.replace(/ +/g," ").split(" ");if(g&&g.length)for(var h=g[0],k=h.charAt(0),m=1;m<h.length;m++){var n=h.charAt(m);if("?"==k||"r"==k||"a">n||"z"<n){g[0]=h.substr(m);g.unshift(h.substr(0,m));break}}switch(g[0].charAt(0)){case "a":var t=
|
||||
kr(a,g[1],!0);if(t)if(a.ua=t,void 0===g[2])a.O("begin assemble at "+dr(t)),a.va=!0,ad(a.F);else{var q;a.O("not supported yet");q=[];if(q.length){for(var A=0;A<q.length;A++)a.qc(t,q[A],1);a.O(yr(a,a.ua))}}break;case "b":a:{var F=g[0],C=g[1],D=b;if("?"==C)a.O("breakpoint commands:"),a.O("\tbi [p]\ttoggle break on input port [p]"),a.O("\tbo [p]\ttoggle break on output port [p]"),a.O("\tbp [a]\tset exec breakpoint at addr [a]"),a.O("\tbr [a]\tset read breakpoint at addr [a]"),a.O("\tbw [a]\tset write breakpoint at addr [a]"),
|
||||
|
|
@ -812,14 +812,14 @@ a.B,ga)||cr(a,a.ra,ga)||cr(a,a.fa,ga)||a.O("breakpoint missing: "+dr(ga)):"i"==L
|
|||
(Ka&&(Ka+=","),Ka+=ab);Ka+=",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 #");Ka.length&&a.O("dump extension commands:\n\t"+Ka)}else if("state"==Ja){var Vb=Qr(a.X,!0);"console"==Da?console.log(Vb):
|
||||
(Ir(a),a.O(Vb))}else if("symbols"==Ja)for(var Pa=0;Pa<a.N.length;Pa++){var Ud=a.N[Pa],Rc;for(Rc in Ud.Qd)if("."!=Rc.charAt(0)){var Vd=Ud.Qd[Rc],Ge=Vd.o;if(void 0!==Ge){var Wd=Vd.s;void 0===Wd&&(Wd=Ud.Z);var He=Ud.Qd[Rc].l;He&&(Rc=He);a.O(Uq(Ge,Wd)+" "+Rc)}}}else{if("ds"==la||"dg"==la||"dl"==la)la="d",S=[la,"desc",Ja];"d"==la&&"page"==Ja&&(la="dp",S.shift());if("dp"==la){S.shift();var hi=S[0];if(hi){var Re=a.cc(kr(a,hi));if(-1===Re)a.O("invalid address: "+hi);else{var $d,za=null;if(80386<=a.F.ja){var ae=
|
||||
a.ga,za={};za.Jk=(Re&-4194304)>>>20;za.$i=a.F.Od+za.Jk;za.yb=ae.sa[(za.$i&ae.Gb)>>>ae.La];za.Aj=za.yb.Md(za.Jk);za.Kk=(Re&4190208)>>>10;za.aj=(za.Aj&-4096)+za.Kk;za.zb=ae.sa[(za.aj&ae.Gb)>>>ae.La];za.Bj=za.zb.Md(za.Kk);za.nl=(za.Bj&-4096)+(Re&4095)}if($d=za){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var od="%"+r(Re),od=od+(" %%"+mr($d.$i,$d.Aj)),od=od+(" %%"+mr($d.aj,$d.Bj,!0)),
|
||||
od=od+(" %%"+r($d.nl));a.O(od)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==la){if("disk"==Ja){S[0]="l";S[1]="json";Mr(a,S);break a}for(ab in Eb)if(S[1]==ab){var yn=a.cb[ab];yn?(S.shift(),S.shift(),yn(S)):a.O("no dump registered for "+Ja);break a}Ja||(la=a.Cc||"db")}else a.Cc=la;if("dh"==la){var zn=Ja,An=Da,Bn="",Cn=0,Zb=a.Fa,sc=a.ia;if(sc.length){var Lb=+zn||a.Ub,Se=+An||10;isNaN(Lb)?Lb=Se:Bn="more ";Lb>sc.length&&(a.O("note: only "+sc.length+" available"),Lb=sc.length);
|
||||
Zb-=Lb;0>Zb&&(null==sc[sc.length-1].Z?(Lb=Zb+Lb,Zb=0):Zb+=sc.length);var ii=[];"call"==An&&(Se=1E5,ii=["CALL"]);for(void 0!==zn&&a.O(Lb+" instructions earlier:");0<Se&&Zb!=a.Fa;){var pd=sc[Zb++];if(null==pd.Z)break;var Te=wq(a,pd.Ra,pd.Z,pd.Ea,pd.type,pd.Rb,pd.oc),is=Lb--,Dn=yr(a,Te,"history",is);(!ii.length||0<=Dn.indexOf(ii[0]))&&a.O(Dn);Te.Ve&&(Zb+=Te.Ve,Se-=Te.Ve,Lb-=Te.Ve);Zb>=sc.length&&(Zb=0);a.Ub=Lb;Cn++;Se--}}Cn||(a.O("no "+Bn+"history available"),a.Ub=void 0)}else if("di"==la){S.shift();
|
||||
var ji=S[0];if(ji){var Ue=rq(a,ji);if(void 0===Ue||0>Ue||255<Ue)a.O("invalid vector: "+ji);else{var En="&",Fn=!!(a.F.$a&1),Gn=!1,ng=a.F.Mc+(Ue<<(Fn?3:2)),Hn=a.F.na(ng+0),js=a.F.na(ng+2);Fn&&(En="#",a.F.na(ng+4)&2048&&(Gn=!0,Hn|=a.F.na(ng+6)<<16));a.O("dumpIDT("+v(Ue)+"): "+En+r(js,4)+":"+r(Hn,Gn?8:4))}}else a.O("no IDT vector")}else if("dt"==la)S.shift(),a.O("no information");else{var be=kr(a,Ja);if(be&&(null!=be.Z||null!=be.Ea)){var og=0;Da&&("l"==Da.charAt(0)&&(Da=Da.substr(1)||Wa),og=rq(a,Da)>>>
|
||||
od=od+(" %%"+r($d.nl));a.O(od)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==la){if("disk"==Ja){S[0]="l";S[1]="json";Mr(a,S);break a}for(ab in Eb)if(S[1]==ab){var yn=a.cb[ab];yn?(S.shift(),S.shift(),yn(S)):a.O("no dump registered for "+Ja);break a}Ja||(la=a.Cc||"db")}else a.Cc=la;if("dh"==la){var zn=Ja,An=Da,Bn="",Cn=0,Zb=a.Ea,sc=a.ia;if(sc.length){var Lb=+zn||a.Ub,Se=+An||10;isNaN(Lb)?Lb=Se:Bn="more ";Lb>sc.length&&(a.O("note: only "+sc.length+" available"),Lb=sc.length);
|
||||
Zb-=Lb;0>Zb&&(null==sc[sc.length-1].Z?(Lb=Zb+Lb,Zb=0):Zb+=sc.length);var ii=[];"call"==An&&(Se=1E5,ii=["CALL"]);for(void 0!==zn&&a.O(Lb+" instructions earlier:");0<Se&&Zb!=a.Ea;){var pd=sc[Zb++];if(null==pd.Z)break;var Te=wq(a,pd.Ra,pd.Z,pd.Fa,pd.type,pd.Rb,pd.oc),is=Lb--,Dn=yr(a,Te,"history",is);(!ii.length||0<=Dn.indexOf(ii[0]))&&a.O(Dn);Te.Ve&&(Zb+=Te.Ve,Se-=Te.Ve,Lb-=Te.Ve);Zb>=sc.length&&(Zb=0);a.Ub=Lb;Cn++;Se--}}Cn||(a.O("no "+Bn+"history available"),a.Ub=void 0)}else if("di"==la){S.shift();
|
||||
var ji=S[0];if(ji){var Ue=rq(a,ji);if(void 0===Ue||0>Ue||255<Ue)a.O("invalid vector: "+ji);else{var En="&",Fn=!!(a.F.$a&1),Gn=!1,ng=a.F.Mc+(Ue<<(Fn?3:2)),Hn=a.F.na(ng+0),js=a.F.na(ng+2);Fn&&(En="#",a.F.na(ng+4)&2048&&(Gn=!0,Hn|=a.F.na(ng+6)<<16));a.O("dumpIDT("+v(Ue)+"): "+En+r(js,4)+":"+r(Hn,Gn?8:4))}}else a.O("no IDT vector")}else if("dt"==la)S.shift(),a.O("no information");else{var be=kr(a,Ja);if(be&&(null!=be.Z||null!=be.Fa)){var og=0;Da&&("l"==Da.charAt(0)&&(Da=Da.substr(1)||Wa),og=rq(a,Da)>>>
|
||||
0,65536<og&&(og=65536));for(var Ve="",ce="dd"==la?4:"dw"==la?2:1,pg=ce*og||128,ks=pg+15>>4||1;ks--&&0<pg;){var We=0,ki=0,Xe,li="",In="",Ja=dr(be);for(Xe=4==ce?16:a.Ya;0<Xe&&0<pg;Xe--){var qg=a.Qa(be,1),We=We|qg<<(ki++<<3);ki==ce&&(li+=8==a.Ya?ia(We,3*ce):r(We,2*ce),li+=1==ce?9==Xe?"-":" ":" ",We=ki=0);In+=32<=qg&&128>qg?String.fromCharCode(qg):".";pg--}Ve&&(Ve+="\n");Ve+=Ja+" "+li+(0==Xe?" "+In:"")}Ve&&a.O(Ve);a.Db=be}}}}}break;case "e":if("else"==g[0])break;var rg=1,Jn=255,Kn=a.Qa,Ln=a.qc;"ew"==
|
||||
g[0]&&(rg=2,Jn=65535,Kn=a.na,Ln=a.jb);var Mn=rg<<1,Nn=g[1];if(null==Nn)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 sg=kr(a,Nn);if(sg)for(var tg=2;tg<g.length;tg++){var Ye=pq(a,g[tg]);if(void 0===Ye){a.O("unrecognized value: "+g[tg]);break}Ye&~Jn&&a.O("warning: "+r(Ye)+" exceeds "+rg+"-byte value");var ls=Kn.call(a,sg);a.O("changing "+dr(sg)+" from "+r(ls,Mn,!0)+" to "+r(Ye,Mn,!0));Ln.call(a,sg,Ye,rg)}}break;case "f":Jr(a,
|
||||
g[1]);break;case "g":a:{var On=g[1],ms=b;"gt"==g[0]&&(a.fb=!0);if(void 0!==On){var mi=kr(a,On,!0);if(!mi)break a;lr(a,mi,ms);a.Rd(a.B,mi,!0)}a.Ne(!0)||c||a.O("cpu busy or unavailable, run command ignored")}break;case "h":a:{var ni;if(a.la.Ib)ni="halting",a.Wb();else{if(wb(a,!0))break a;ni="already halted"}c||a.O(ni)}break;case "i":if("if"==g[0]){var oi;var Ze=b.substr(2),Ze=qa(Ze);pq(a,Ze)?(c||a.O("true: "+Ze),oi=!0):(c||a.O("false: "+Ze),oi=!1);oi||(d=!1);break}if("int"==g[0]){var ug;a:switch(rq(a,
|
||||
g[1])){case 19:pk(a,19,a.F.Ha,!0);a.Ca=a.pa;ug=!0;break a;case 33:pk(a,33,a.F.Ha,!0);a.Ca=a.pa;ug=!0;break a;default:ug=!1}ug||(d=!1);break}var pi=g[1];if(pi&&"?"!=pi){var qi=rq(a,pi);if(void 0!==qi){var ns=rc(a.ga,qi,1);a.O(v(qi)+": "+u(ns))}}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 os=g[0];if("?"==g[1])a.O("stack trace commands:"),a.O("\tk\tshow frame addresses"),a.O("\tks\tshow symbol information");else{var ri=
|
||||
0,Pn=a.F.wa.Z,$e=wq(a),Uc=wq(a,J(a.F),a.F.ta.Z);for(a.O("stack trace for "+dr(Uc));10>ri;){for(var tc=null,ps=256;Uc.Ra>>>0<a.F.Sg>>>0;){$e.Ra=a.tb(Uc,!0);if(null==Uc.Ea||!ps--)break;$e.Z=Pn;if(tc=Or(a,$e))break;$e.Z=a.tb(Uc);if(tc=Or(a,$e,!0)){Pn=a.tb(Uc,!0);0<tc.indexOf("INT")&&a.tb(Uc,!0);break}}if(!tc||null==tc)break;var Qn=null;if("ks"==os){var Rn=tc.match(/[0-9A-F]+$/);Rn&&(Qn=Lr(a,Rn[0]))}tc=pa(tc,50)+" ;"+(Qn||"stack="+dr(Uc));a.O(tc);ri++}ri||a.O("no return addresses found")}break;case "l":if("ln"==
|
||||
0,Pn=a.F.wa.Z,$e=wq(a),Uc=wq(a,J(a.F),a.F.ta.Z);for(a.O("stack trace for "+dr(Uc));10>ri;){for(var tc=null,ps=256;Uc.Ra>>>0<a.F.Sg>>>0;){$e.Ra=a.tb(Uc,!0);if(null==Uc.Fa||!ps--)break;$e.Z=Pn;if(tc=Or(a,$e))break;$e.Z=a.tb(Uc);if(tc=Or(a,$e,!0)){Pn=a.tb(Uc,!0);0<tc.indexOf("INT")&&a.tb(Uc,!0);break}}if(!tc||null==tc)break;var Qn=null;if("ks"==os){var Rn=tc.match(/[0-9A-F]+$/);Rn&&(Qn=Lr(a,Rn[0]))}tc=pa(tc,50)+" ;"+(Qn||"stack="+dr(Uc));a.O(tc);ri++}ri||a.O("no return addresses found")}break;case "l":if("ln"==
|
||||
g[0]){Lr(a,g[1],!0);break}Mr(a,g);break;case "m":if("mouse"==g[0]){var si=g[1],vg=g[2];if(a.V){var Sn=1;"-"==vg.charAt(0)&&(Sn=-1,vg=vg.substr(1));var qd=rq(a,vg,si);if(void 0!==qd)switch(qd=qd*Sn|0,si){case "x":a.V.Kf(qd,0);break;case "y":a.V.Kf(0,qd);break;case "click":a.V.he(qd,!0);a.V.he(qd,!1);break;default:a.O("unknown action: "+si)}}else a.O("no mouse");break}a:{var uc,vc=null,Ma=g[1];"?"==Ma&&(Ma=void 0);if(void 0!==Ma){var rd=0;if("all"==Ma)rd=1610481663,Ma=null;else if("on"==Ma)vc=!0,Ma=
|
||||
null;else if("off"==Ma)vc=!1,Ma=null;else{"keys"==Ma&&(Ma="key");"kbd"==Ma&&(Ma="keyboard");for(uc in Eb)if(Ma==uc){rd=Eb[uc];vc=!!(a.wc&rd);break}if(!rd){a.O("unknown message category: "+Ma);break a}}rd&&("on"==g[2]?(a.wc|=rd,vc=!0):"off"==g[2]&&(a.wc&=~rd,vc=!1))}var qs=0,af="";for(uc in Eb)if(!Ma||Ma==uc){var rs=!!(a.wc&Eb[uc]);if(null===vc||vc==rs)af&&(af+=","),++qs%10||(af+="\n\t"),"key"==uc&&(uc="keys"),af+=uc}void 0===Ma&&a.O("message commands:\n\tm [category] [on|off]\tturn categories on/off");
|
||||
a.O((null!==vc?vc?"messages on: ":"messages off: ":"message categories:\n\t")+(af||"none"));yq(a)}break;case "o":var ti=g[1],ss=g[2];if(ti&&"?"!=ti){var ui=rq(a,ti,"port #"),vi=rq(a,ss);void 0!==ui&&void 0!==vi&&(zc(a.ga,ui,1,vi),a.O(v(ui)+": "+u(vi)))}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]){Nr(a,b.substr(5));break}var Tn="pr"==g[0]?1:0,de=1+Tn;if(a.U)a.O("step in progress");
|
||||
|
|
|
|||
|
|
@ -667,7 +667,7 @@ Memory.prototype = {
|
|||
*/
|
||||
readNone: function readNone(off, addr) {
|
||||
if (DEBUGGER && this.dbg && this.dbg.messageEnabled(Messages.CPU | Messages.MEM) /* && !off */) {
|
||||
this.dbg.message("attempt to read invalid block %" + str.toHex(this.addr), true);
|
||||
this.dbg.message("attempt to read invalid block %" + str.toHex(addr), true);
|
||||
}
|
||||
return 0xff;
|
||||
},
|
||||
|
|
@ -681,7 +681,7 @@ Memory.prototype = {
|
|||
*/
|
||||
writeNone: function writeNone(off, v, addr) {
|
||||
if (DEBUGGER && this.dbg && this.dbg.messageEnabled(Messages.CPU | Messages.MEM) /* && !off */) {
|
||||
this.dbg.message("attempt to write " + str.toHexWord(v) + " to invalid block %" + str.toHex(this.addr), true);
|
||||
this.dbg.message("attempt to write " + str.toHexWord(v) + " to invalid block %" + str.toHex(addr), true);
|
||||
}
|
||||
},
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -556,7 +556,7 @@ BusPDP11.prototype.unknownAccess = function(addr, fByte, data)
|
|||
* TODO: For 22-bit machines, let's display addr as a 3-byte value (for a total of 9 octal digits)
|
||||
*/
|
||||
this.dbg.printMessage("warning: unknown I/O access (" + this.dbg.toStrBase(addr) + "," + this.dbg.toStrBase(data, fByte?1:2) + ")", true, true);
|
||||
if (this.dbg.stopInstruction()) return 0;
|
||||
this.dbg.stopInstruction();
|
||||
}
|
||||
if (!this.nDisableFaults) {
|
||||
this.cpu.trap(PDP11.TRAP.BUS_ERROR, addr);
|
||||
|
|
@ -1255,18 +1255,20 @@ BusPDP11.prototype.addResetHandler = function(fnReset)
|
|||
};
|
||||
|
||||
/**
|
||||
* fault(addr)
|
||||
* fault(addr, access)
|
||||
*
|
||||
* Memory interface for signaling alignment errors.
|
||||
* Memory interface for signaling alignment errors, invalid memory
|
||||
*
|
||||
* @this {BusPDP11}
|
||||
* @param {number} addr
|
||||
* @param {number} [access] (for diagnostic purposes only)
|
||||
*/
|
||||
BusPDP11.prototype.fault = function(addr)
|
||||
BusPDP11.prototype.fault = function(addr, access)
|
||||
{
|
||||
if (!this.nDisableFaults) {
|
||||
if (DEBUGGER && this.dbg && this.dbg.messageEnabled(MessagesPDP11.WARN)) {
|
||||
this.dbg.printMessage("memory fault on address " + this.dbg.toStrBase(addr), true, true);
|
||||
if (DEBUGGER && this.dbg && this.dbg.messageEnabled(MessagesPDP11.BUS)) {
|
||||
this.dbg.printMessage("memory fault (" + access + ") on address " + this.dbg.toStrBase(addr), true, true);
|
||||
this.dbg.stopInstruction();
|
||||
}
|
||||
this.cpu.trap(PDP11.TRAP.BUS_ERROR, addr);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1664,7 +1664,12 @@ if (DEBUGGER) {
|
|||
if (cpu.isRunning()) {
|
||||
cpu.setPC(this.cpu.getLastPC());
|
||||
this.stopCPU();
|
||||
throw -1; // TODO: Review the appropriate-ness of throwing a bogus vector number in order to immediately stop the instruction
|
||||
/*
|
||||
* TODO: Review the appropriate-ness of throwing a bogus vector number in order to immediately stop
|
||||
* the instruction. It's handy, but it also means that we no longer actually return true, so callers
|
||||
* of either stopInstruction() or undefinedInstruction() may have unreachable code paths.
|
||||
*/
|
||||
throw -1;
|
||||
}
|
||||
return false;
|
||||
};
|
||||
|
|
@ -2091,8 +2096,8 @@ if (DEBUGGER) {
|
|||
|
||||
/*
|
||||
* If getOperand() returns an Array rather than a string, then the first element is the original
|
||||
* operand, and the second element contains an alternate representation of the operand (eg, target address,
|
||||
* memory contents, etc).
|
||||
* operand, and the second element contains an alternate representation of the operand (eg, target
|
||||
* address, memory contents, etc).
|
||||
*/
|
||||
if (typeof sOperand != "string") {
|
||||
sTarget = sOperand[1];
|
||||
|
|
@ -2278,7 +2283,7 @@ if (DEBUGGER) {
|
|||
/**
|
||||
* parseInstruction(sOp, sOperand, addr)
|
||||
*
|
||||
* TODO: Unimplemented. See parseInstruction() in modules/c1pjs/lib/debugger.js for a working implementation.
|
||||
* TODO: Unimplemented. See parseInstruction() in modules/c1pjs/lib/debugger.js for a sample implementation.
|
||||
*
|
||||
* @this {DebuggerPDP11}
|
||||
* @param {string} sOp
|
||||
|
|
|
|||
|
|
@ -248,7 +248,7 @@ var PDP11 = {
|
|||
*/
|
||||
TRAP: {
|
||||
UNDEFINED: 0x00, // 000 (reserved)
|
||||
BUS_ERROR: 0x04, // 004 illegal instructions, bus errors, stack limit, illegal internal address, microbreak
|
||||
BUS_ERROR: 0x04, // 004 illegal instruction, unaligned address, invalid memory, stack limit, microbreak
|
||||
RESERVED: 0x08, // 010 reserved instructions
|
||||
BPT: 0x0C, // 014 BPT: breakpoint trap (trace)
|
||||
IOT: 0x10, // 020 IOT: input/output trap
|
||||
|
|
|
|||
|
|
@ -587,9 +587,10 @@ MemoryPDP11.prototype = {
|
|||
*/
|
||||
readNone: function readNone(off, addr) {
|
||||
if (DEBUGGER && this.dbg && this.dbg.messageEnabled(MessagesPDP11.MEMORY) /* && !off */) {
|
||||
this.dbg.printMessage("attempt to read invalid block %" + str.toHex(this.addr), true);
|
||||
this.dbg.stopCPU();
|
||||
this.dbg.printMessage("attempt to read invalid address " + this.dbg.toStrBase(addr), true);
|
||||
this.dbg.stopInstruction();
|
||||
}
|
||||
this.bus.fault(addr, PDP11.ACCESS.READ);
|
||||
return 0xff;
|
||||
},
|
||||
/**
|
||||
|
|
@ -602,9 +603,10 @@ MemoryPDP11.prototype = {
|
|||
*/
|
||||
writeNone: function writeNone(off, v, addr) {
|
||||
if (DEBUGGER && this.dbg && this.dbg.messageEnabled(MessagesPDP11.MEMORY) /* && !off */) {
|
||||
this.dbg.printMessage("attempt to write " + str.toHexWord(v) + " to invalid block %" + str.toHex(this.addr), true);
|
||||
this.dbg.stopCPU();
|
||||
this.dbg.printMessage("attempt to write " + this.dbg.toStrBase(v) + " to invalid addresses " + this.dbg.toStrBase(addr), true);
|
||||
this.dbg.stopInstruction();
|
||||
}
|
||||
this.bus.fault(addr, PDP11.ACCESS.WRITE);
|
||||
},
|
||||
/**
|
||||
* readWordDefault(off, addr)
|
||||
|
|
@ -653,7 +655,7 @@ MemoryPDP11.prototype = {
|
|||
*/
|
||||
readWordMemory: function readWordMemory(off, addr) {
|
||||
if (PDP11.MEMFAULT && (off & 0x1)) {
|
||||
this.bus.fault(addr);
|
||||
this.bus.fault(addr, PDP11.ACCESS.READ_WORD);
|
||||
}
|
||||
if (BYTEARRAYS) {
|
||||
return this.ab[off] | (this.ab[off + 1] << 8);
|
||||
|
|
@ -697,7 +699,7 @@ MemoryPDP11.prototype = {
|
|||
*/
|
||||
writeWordMemory: function writeWordMemory(off, w, addr) {
|
||||
if (PDP11.MEMFAULT && (off & 0x1)) {
|
||||
this.bus.fault(addr);
|
||||
this.bus.fault(addr, PDP11.ACCESS.WRITE_WORD);
|
||||
}
|
||||
if (BYTEARRAYS) {
|
||||
this.ab[off] = (w & 0xff);
|
||||
|
|
@ -807,7 +809,7 @@ MemoryPDP11.prototype = {
|
|||
*/
|
||||
readWordBE: function readWordBE(off, addr) {
|
||||
if (PDP11.MEMFAULT && (off & 0x1)) {
|
||||
this.bus.fault(addr);
|
||||
this.bus.fault(addr, PDP11.ACCESS.READ_WORD);
|
||||
}
|
||||
return this.dv.getUint16(off, true);
|
||||
},
|
||||
|
|
@ -822,7 +824,7 @@ MemoryPDP11.prototype = {
|
|||
readWordLE: function readWordLE(off, addr) {
|
||||
var w;
|
||||
if (PDP11.MEMFAULT && (off & 0x1)) {
|
||||
this.bus.fault(addr);
|
||||
this.bus.fault(addr, PDP11.ACCESS.READ_WORD);
|
||||
}
|
||||
/*
|
||||
* TODO: For non-WORDBUS machines, it remains to be seen if there's any advantage to checking the offset
|
||||
|
|
@ -875,7 +877,7 @@ MemoryPDP11.prototype = {
|
|||
*/
|
||||
writeWordBE: function writeWordBE(off, w, addr) {
|
||||
if (PDP11.MEMFAULT && (off & 0x1)) {
|
||||
this.bus.fault(addr);
|
||||
this.bus.fault(addr, PDP11.ACCESS.WRITE_WORD);
|
||||
}
|
||||
this.dv.setUint16(off, w, true);
|
||||
this.fDirty = true;
|
||||
|
|
@ -890,7 +892,7 @@ MemoryPDP11.prototype = {
|
|||
*/
|
||||
writeWordLE: function writeWordLE(off, w, addr) {
|
||||
if (PDP11.MEMFAULT && (off & 0x1)) {
|
||||
this.bus.fault(addr);
|
||||
this.bus.fault(addr, PDP11.ACCESS.WRITE_WORD);
|
||||
}
|
||||
/*
|
||||
* TODO: For non-WORDBUS machines, it remains to be seen if there's any advantage to checking the offset
|
||||
|
|
|
|||
|
|
@ -88,11 +88,11 @@ Hb.prototype.contains=function(a,b){return a>=this.x&&a<this.x+this.ad&&b>=this.
|
|||
l.Ic=function(a,b,c,d){this.X=a;this.ga=b;this.F=c;this.ha=d;this.B=Jb(a,"Keyboard")};l.hc=function(a,b){b||Kb();return!0};l.gc=function(){return!0};l.he=function(a,b){a.button||(this.ea=b?0:-1,Mb(this,a,b))};l.Kf=function(a){Mb(this,a)};
|
||||
function Mb(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.ea||(a.ea=Math.abs(a.L-d)>Math.abs(a.V-b)?1:2),1==a.ea?b=a.V:2==a.ea&&(d=a.L));a.L=d;a.V=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.A&&a.A.Se)for(f=0;f<a.A.Se.length;f++)if(e=a.A.Se[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.A.Bf[f],g=xa(Nb.Hk,a.A.Yg[d.El]),f=g*a.ga.Sb,d=(g+d.Td)*a.ga.Sb-1;0<b&&(f+=e.ad*(b-1)*a.ya);f+=c*a.ya;f|=0;
|
||||
f>d&&(f=d);c=f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.Ca)){b=c;if(a.context&&a.ia&&a.ka){e=a.ia.width;a.ka.fillStyle="black";a.ka.fillRect(0,360,e,360);Ob(a,378,a.ia,a.ka);a.pa=a.Da.width/24|0;if(null==b)Pb(a,"Mouse over memory to dump");else for(Pb(a,r(b,8,!0),null,0,1),f=1;16>=f;f++){d="";for(g=1;8>=g;g++){var h;h=a.ga;var k=b++;h=h.sa[(k&h.Gb)>>>h.La].re(k&h.A,k);Pb(a,r(h,2),null,1);d+=32<=h&&128>h?String.fromCharCode(h):"."}Pb(a,d,null,0,1)}a.context.drawImage(a.ia,0,360,e,360,a.qb,a.Db,a.Pa,a.cb)}a.Ca=
|
||||
c}}}l.pd=function(){};function Qb(a,b,c,d){a.A.Bf[a.A.fj++]={El:b,Td:c,type:d};return wa(Nb,b,c,0,d)}function Ob(a,b,c,d){var e,f=null.style.color,g=a.Oa=10;a.C=g;a.U=b;a.W=a.va=18;e||(e=a.ua||a.va+"px Monaco, Lucida Console, Courier New");a.fa=a.ua=e;c&&(a.Da=c);d&&(a.N=d,a.Fa=f||"white")}
|
||||
function Pb(a,b,c,d,e){a.N.font=a.fa;a.N.fillStyle=a.Fa;a.N.fillText(b,a.C,a.U);a.C+=a.pa;null!=c&&(16!=a.Tb?b=c.toString():(b=8>a.Ka?"0x":"",b+=r(c,a.Ka)),a.N.fillText(b,a.C,a.U),a.C+=a.pa);d&&(a.C+=a.pa*d);e&&(a.C=a.Oa,a.U+=(a.W+2)*(e||1))}function Kb(){for(var a=!1,b=tb(document,"pcx86","panel"),c=0;c<b.length;c++){var d=b[c],e=qb(d),f=ob(e.id);f||(a=!0,f=new Fb(e));sb(f,d);a&&xb(f)}}Xa(Kb);
|
||||
function Rb(a,b,c){bb.call(this,"Bus",a,Rb);this.F=b;this.ha=c;this.N=a.busWidth||20;this.W=Math.pow(2,this.N);this.Dg=this.Gb=this.W-1|0;this.La=32==this.N||20>=this.N?12:24>=this.N?14:15;this.Sb=1<<this.La;this.fa=this.Sb>>2;this.A=this.Sb-1;this.U=this.W/this.Sb|0;this.ga=this.U-1;this.B=[];this.C=[];this.L=this.V=!1;this.aa=[];this.ea=[];a=new B;Sb(a,this.ha);this.sa=Array(this.U);for(b=0;b<this.U;b++)this.sa[b]=a;a=this.F;b=this.sa;c=this.La;a.kd=a.sa=b;a.La=c;a.Sb=1<<a.La;a.Fa=a.Sb-1;a.Fd=b.length;
|
||||
c}}}l.pd=function(){};function Qb(a,b,c,d){a.A.Bf[a.A.fj++]={El:b,Td:c,type:d};return wa(Nb,b,c,0,d)}function Ob(a,b,c,d){var e,f=null.style.color,g=a.Oa=10;a.C=g;a.U=b;a.W=a.va=18;e||(e=a.ua||a.va+"px Monaco, Lucida Console, Courier New");a.fa=a.ua=e;c&&(a.Da=c);d&&(a.N=d,a.Ea=f||"white")}
|
||||
function Pb(a,b,c,d,e){a.N.font=a.fa;a.N.fillStyle=a.Ea;a.N.fillText(b,a.C,a.U);a.C+=a.pa;null!=c&&(16!=a.Tb?b=c.toString():(b=8>a.Ka?"0x":"",b+=r(c,a.Ka)),a.N.fillText(b,a.C,a.U),a.C+=a.pa);d&&(a.C+=a.pa*d);e&&(a.C=a.Oa,a.U+=(a.W+2)*(e||1))}function Kb(){for(var a=!1,b=tb(document,"pcx86","panel"),c=0;c<b.length;c++){var d=b[c],e=qb(d),f=ob(e.id);f||(a=!0,f=new Fb(e));sb(f,d);a&&xb(f)}}Xa(Kb);
|
||||
function Rb(a,b,c){bb.call(this,"Bus",a,Rb);this.F=b;this.ha=c;this.N=a.busWidth||20;this.W=Math.pow(2,this.N);this.Dg=this.Gb=this.W-1|0;this.La=32==this.N||20>=this.N?12:24>=this.N?14:15;this.Sb=1<<this.La;this.fa=this.Sb>>2;this.A=this.Sb-1;this.U=this.W/this.Sb|0;this.ga=this.U-1;this.B=[];this.C=[];this.L=this.V=!1;this.aa=[];this.ea=[];a=new B;Sb(a,this.ha);this.sa=Array(this.U);for(b=0;b<this.U;b++)this.sa[b]=a;a=this.F;b=this.sa;c=this.La;a.kd=a.sa=b;a.La=c;a.Sb=1<<a.La;a.Ea=a.Sb-1;a.Fd=b.length;
|
||||
a.hd=a.Fd-1;a=this.F;a.Gb=a.Db=this.Gb;xb(this)}jb(Rb);Rb.prototype.reset=function(){Tb(this,!0)};Rb.prototype.hc=function(a,b){b||this.reset();return!0};
|
||||
function Ub(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.La;0<g&&h<a.sa.length;){var k=a.sa[h],m=h*a.Sb,n=a.Sb-(f-m);n>g&&(n=g);if(k&&k.size){if(k.type==d&&k.controller==e){if(f+g<=k.Ea)return k.Qe+=k.Ea-f,k.Ea=f,!0;if(f>=k.Ea+k.Qe){n=k.size-(f-m);n>g&&(n=g);k.Qe=f-k.Ea+n;f=m+a.Sb;g-=n;h++;continue}}return Wb(a,1,f,g)}f=new B(f,n,a.Sb,d,e);Sb(f,a.ha,k);a.sa[h++]=f;f=m+a.Sb;g-=n}return 0>=g?(Xb(a.F),a.F.la.Ib||a.status(Math.floor(c/1024)+"Kb "+Yb[d]+" at "+r(b)),!0):Wb(a,2,b,c)}
|
||||
function Ub(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.La;0<g&&h<a.sa.length;){var k=a.sa[h],m=h*a.Sb,n=a.Sb-(f-m);n>g&&(n=g);if(k&&k.size){if(k.type==d&&k.controller==e){if(f+g<=k.Fa)return k.Qe+=k.Fa-f,k.Fa=f,!0;if(f>=k.Fa+k.Qe){n=k.size-(f-m);n>g&&(n=g);k.Qe=f-k.Fa+n;f=m+a.Sb;g-=n;h++;continue}}return Wb(a,1,f,g)}f=new B(f,n,a.Sb,d,e);Sb(f,a.ha,k);a.sa[h++]=f;f=m+a.Sb;g-=n}return 0>=g?(Xb(a.F),a.F.la.Ib||a.status(Math.floor(c/1024)+"Kb "+Yb[d]+" at "+r(b)),!0):Wb(a,2,b,c)}
|
||||
var Nb,$b={Hk:20,count:8,Ko:1,type:3},ac=0,bc;for(bc in $b){var cc=$b[bc];$b[bc]={vh:(1<<cc)-1<<ac,shift:ac};ac+=cc}Nb=$b;function Tb(a,b){32==a.N?b?a.X&&(dc(a,1048576,1048576,a.X),a.X=null):a.X||(a.X=ec(a,1048576,1048576),dc(a,1048576,1048576,ec(a,0,1048576))):20<a.N&&(b=a.Gb&-1048577|(b?1048576:0),b!=a.Gb&&(a.Gb=b,a.F&&(a=a.F,a.Gb=a.Db=b)))}l=Rb.prototype;
|
||||
l.Vg=function(a,b,c,d){if(!(a&this.A||!b||b&this.A)){for(var e=a>>>this.La;0<b;){var f=this.sa[e];if(!f.controller)return Wb(this,3,a,b,d);fc(f,c,!0);b-=this.Sb;e++}return!0}return Wb(this,4,a,b)};function gc(a,b,c){if(!(b&a.A||!c||c&a.A)){for(var d=b>>>a.La;0<c;){var e=a.sa[d];b=new B(b);Sb(b,a.ha,e);a.sa[d++]=b;b=d*a.Sb;c-=a.Sb}Xb(a.F);return!0}return Wb(a,5,b,c)}function ec(a,b,c){var d=[];for(b>>>=a.La;0<c&&b<a.sa.length;)d.push(a.sa[b++]),c-=a.Sb;return d}
|
||||
function dc(a,b,c,d,e){for(var f=0,g=b>>>a.La;0<c&&g<a.sa.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new B(b),m=k,n=e,t=a.ha;m.id=h.id|1;m.Qe=h.Qe;m.size=h.size;n&&(m.type=n,m.N=n==hc);Ab?(m.X=h.X,m.qa=h.qa,m.Za=h.Za,m.de=h.de,m.da=h.da,fc(m,ic?jc:kc)):(m.da=h.da,fc(m,lc));Sb(m,t,h);h=k}a.sa[g++]=h;c-=a.Sb}}l.Qa=function(a){return this.sa[(a&this.Gb)>>>this.La].pc(a&this.A,a)};
|
||||
|
|
@ -103,20 +103,20 @@ function oc(a,b){var c=0,d=[],e=!a.X&&a.Dg==a.Gb;e||Tb(a,!0);for(var f=0;f<a.U;f
|
|||
function qc(a,b,c,d){void 0===d&&(d=0);for(var e in c){var f=a,g=+e+d,h=c[e].bind(b);if(h)for(var k=+e+d;k<=g;k++)void 0!==f.B[k]?w("Input port "+v(k)+" already registered"):f.B[k]=[h,!1]}}function rc(a,b,c,d){for(var e=0,f=0;0<c;){var g=a.B[b],h=a.aa[b]||1,k=1==h?255:2==h?65535:-1,m=k;void 0!==g?(g[0]&&(m=g[0](b,d),void 0===m?m=k:m&=k),a.ha&&a.L!=g[1]&&wc(a.ha,b,m)):a.ha&&(ub(a.ha,a,b,null,d),a.L&&wc(a.ha,b,m));e|=m<<f;f+=h<<3;b+=h;c-=h}return e}
|
||||
function xc(a,b){if(void 0===b)return a.V=!a.V,a.V;void 0===a.C[b]&&(a.C[b]=[null,!1]);a.C[b][1]=!a.C[b][1];return a.C[b][1]}function yc(a,b,c,d){void 0===d&&(d=0);for(var e in c){var f=a,g=+e+d,h=c[e].bind(b);if(h)for(var k=+e+d;k<=g;k++)void 0!==f.C[k]?w("Output port "+v(k)+" already registered"):f.C[k]=[h,!1]}}
|
||||
function zc(a,b,c,d,e){for(var f=0;0<c;){var g=a.C[b],h=a.ea[b]||1,k=1==h?255:2==h?65535:-1,k=(d>>>=f)&k;if(void 0!==g){if(g[0])g[0](b,k,e);a.ha&&a.V!=g[1]&&Ac(a.ha,b,k)}else a.ha&&(ub(a.ha,a,b,k,e),a.V&&Ac(a.ha,b,k));f+=h<<3;b+=h;c-=h}}function Wb(a,b,c,d,e){b="Memory block error ("+b+": "+r(c)+","+r(d)+")";e?a.ha?a.ha.message(b):a.log(b):w(b);return!1}var Bc;if(Ab){var Cc=new ArrayBuffer(2);(new DataView(Cc)).setUint16(0,256,!0);Bc=256===(new Uint16Array(Cc))[0]}else Bc=!1;var ic=Bc;
|
||||
function B(a,b,c,d,e,f){this.id=Dc+=2;this.da=null;this.C=0;this.Ea=a;this.Qe=b;this.size=c||0;this.type=d||Ec;this.N=d==hc;this.controller=null;this.F=f;Sb(this);this.Wa=this.tj=!1;if(c)if(e)this.controller=e,a=e.wj(a),this.da=a[0],this.C=a[1],fc(this,e.nh());else if(Ab)this.X=new ArrayBuffer(c),this.qa=new DataView(this.X,0,c),this.Za=new Uint8Array(this.X,0,c),this.de=new Uint16Array(this.X,0,c>>1),this.da=new Int32Array(this.X,0,c>>2),fc(this,ic?jc:kc);else{this.da=Array(c>>2);for(e=0;e<this.da.length;e++)this.da[e]=
|
||||
function B(a,b,c,d,e,f){this.id=Dc+=2;this.da=null;this.C=0;this.Fa=a;this.Qe=b;this.size=c||0;this.type=d||Ec;this.N=d==hc;this.controller=null;this.F=f;Sb(this);this.Wa=this.tj=!1;if(c)if(e)this.controller=e,a=e.wj(a),this.da=a[0],this.C=a[1],fc(this,e.nh());else if(Ab)this.X=new ArrayBuffer(c),this.qa=new DataView(this.X,0,c),this.Za=new Uint8Array(this.X,0,c),this.de=new Uint16Array(this.X,0,c>>1),this.da=new Int32Array(this.X,0,c>>2),fc(this,ic?jc:kc);else{this.da=Array(c>>2);for(e=0;e<this.da.length;e++)this.da[e]=
|
||||
0;fc(this,lc)}else fc(this)}var Ec=0,hc=2,Fc=["black","blue","green","cyan"],Yb="NONE RAM ROM VIDEO H/W UNPAGED PAGED".split(" "),Dc=0;function Gc(a){Ab&&!ic&&(a=a<<24|a<<8&16711680|a>>8&65280|a>>>24);return a}
|
||||
B.prototype={constructor:B,parent:null,qh:function(a){this.Ea=a},save:function(){var a,b;if(this.controller)a=null;else if(Ab)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.qa.getInt32(b<<2,!0);else a=this.da;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(Ab)for(b=0;b<a.length;b++)this.qa.setInt32(b<<2,a[b],!0);else this.da=a;return this.Wa=!0}return!1},Rd:function(a,b,c){b?this.Ae++||(c&&(this.F=c),Jc(this,Ic,!1)):this.ze++||(c&&(this.F=c),
|
||||
Hc(this,Ic,!1))},ia:function(){this.ha&&z(this.ha,129)&&this.ha.message("attempt to read invalid block %"+r(this.Ea),!0);return 255},L:function(a,b){this.ha&&z(this.ha,129)&&this.ha.message("attempt to write "+v(b)+" to invalid block %"+r(this.Ea),!0)},ka:function(a,b){return this.pc(a++,b++)|this.pc(a,b)<<8},ea:function(a,b){return this.pc(a++,b++)|this.pc(a++,b++)<<8|this.pc(a++,b++)<<16|this.pc(a,b)<<24},W:function(a,b,c){this.sc(a++,b&255,c++);this.sc(a,b>>8,c)},U:function(a,b,c){this.sc(a++,
|
||||
b&255,c++);this.sc(a++,b>>8&255,c++);this.sc(a++,b>>16&255,c++);this.sc(a,b>>>24,c)},Fa:function(a){return this.da[a>>2]>>>((a&3)<<3)&255},sb:function(a){var b=a>>2;a=(a&3)<<3;var c=this.da[b]>>a;return 24>a?c&65535:c&255|(this.da[b+1]&255)<<8},Ya:function(a){var b=a>>2;a=(a&3)<<3;var c=this.da[b];a&&(c=c>>>a|this.da[b+1]<<32-a);return c},tc:function(a,b){var c=a>>2;a=(a&3)<<3;this.da[c]=this.da[c]&~(255<<a)|b<<a;this.Wa=!0},Cd:function(a,b){var c=a>>2;a=(a&3)<<3;24>a?this.da[c]=this.da[c]&~(65535<<
|
||||
a)|b<<a:(this.da[c]=this.da[c]&16777215|b<<24,c++,this.da[c]=this.da[c]&-256|b>>8);this.Wa=!0},Wc:function(a,b){var c=a>>2;if(a=(a&3)<<3){var d=-1<<a;this.da[c]=this.da[c]&~d|b<<a;c++;this.da[c]=this.da[c]&d|b>>>32-a}else this.da[c]=b;this.Wa=!0},Da:function(a,b){this.ha&&null!=this.Ea&&Kc(this.ha,this.Ea+a)||this.F&&Lc(this.F,b,1,!1);return this.re(a,b)},qb:function(a,b){this.ha&&null!=this.Ea&&Kc(this.ha,this.Ea+a,2)||this.F&&Lc(this.F,b,2,!1);return this.fg(a,b)},Pa:function(a,b){this.ha&&null!=
|
||||
this.Ea&&Kc(this.ha,this.Ea+a,4)||this.F&&Lc(this.F,b,4,!1);return this.si(a,b)},bc:function(a,b,c){this.ha&&null!=this.Ea&&Mc(this.ha,this.Ea+a)||this.F&&Lc(this.F,c,1,!0);this.N?this.L(a,b,c):this.xf(a,b,c)},sd:function(a,b,c){this.ha&&null!=this.Ea&&Mc(this.ha,this.Ea+a,2)||this.F&&Lc(this.F,c,2,!0);this.N?this.L(a,b,c):this.zi(a,b,c)},Vc:function(a,b,c){this.ha&&null!=this.Ea&&Mc(this.ha,this.Ea+a,4)||this.F&&Lc(this.F,c,4,!0);this.N?this.L(a,b,c):this.ua(a,b,c)},Ja:function(a,b){this.yb.da[this.A]|=
|
||||
this.ga;this.zb.da[this.B]|=this.ga;return this.Bd.pc(a,b)},Jb:function(a,b){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.ga;return this.Bd.sf(a,b)},fb:function(a,b){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.ga;return this.Bd.Md(a,b)},Cc:function(a,b,c){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.V;this.Bd.sc(a,b,c)},Gd:function(a,b,c){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.V;this.Bd.zf(a,b,c)},hd:function(a,b,c){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=
|
||||
this.V;this.Bd.yf(a,b,c)},Ka:function(a,b){return Nc(this.F,b,!1).pc(a,b)},xd:function(a,b){return Nc(this.F,b,!1).sf(a,b)},gb:function(a,b){return Nc(this.F,b,!1).Md(a,b)},Uc:function(a,b,c){Nc(this.F,c,!0).sc(a,b,c)},Hd:function(a,b,c){Nc(this.F,c,!0).zf(a,b,c)},jd:function(a,b,c){Nc(this.F,c,!0).yf(a,b,c)},Ca:function(a){return this.Za[a]},aa:function(a){return this.Za[a]},Ga:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.pc=this.aa;return this.Za[a]},Tb:function(a){return this.qa.getUint16(a,
|
||||
B.prototype={constructor:B,parent:null,qh:function(a){this.Fa=a},save:function(){var a,b;if(this.controller)a=null;else if(Ab)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.qa.getInt32(b<<2,!0);else a=this.da;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(Ab)for(b=0;b<a.length;b++)this.qa.setInt32(b<<2,a[b],!0);else this.da=a;return this.Wa=!0}return!1},Rd:function(a,b,c){b?this.Ae++||(c&&(this.F=c),Jc(this,Ic,!1)):this.ze++||(c&&(this.F=c),
|
||||
Hc(this,Ic,!1))},ia:function(a,b){this.ha&&z(this.ha,129)&&this.ha.message("attempt to read invalid block %"+r(b),!0);return 255},L:function(a,b,c){this.ha&&z(this.ha,129)&&this.ha.message("attempt to write "+v(b)+" to invalid block %"+r(c),!0)},ka:function(a,b){return this.pc(a++,b++)|this.pc(a,b)<<8},ea:function(a,b){return this.pc(a++,b++)|this.pc(a++,b++)<<8|this.pc(a++,b++)<<16|this.pc(a,b)<<24},W:function(a,b,c){this.sc(a++,b&255,c++);this.sc(a,b>>8,c)},U:function(a,b,c){this.sc(a++,b&255,c++);
|
||||
this.sc(a++,b>>8&255,c++);this.sc(a++,b>>16&255,c++);this.sc(a,b>>>24,c)},Ea:function(a){return this.da[a>>2]>>>((a&3)<<3)&255},sb:function(a){var b=a>>2;a=(a&3)<<3;var c=this.da[b]>>a;return 24>a?c&65535:c&255|(this.da[b+1]&255)<<8},Ya:function(a){var b=a>>2;a=(a&3)<<3;var c=this.da[b];a&&(c=c>>>a|this.da[b+1]<<32-a);return c},tc:function(a,b){var c=a>>2;a=(a&3)<<3;this.da[c]=this.da[c]&~(255<<a)|b<<a;this.Wa=!0},Cd:function(a,b){var c=a>>2;a=(a&3)<<3;24>a?this.da[c]=this.da[c]&~(65535<<a)|b<<a:
|
||||
(this.da[c]=this.da[c]&16777215|b<<24,c++,this.da[c]=this.da[c]&-256|b>>8);this.Wa=!0},Wc:function(a,b){var c=a>>2;if(a=(a&3)<<3){var d=-1<<a;this.da[c]=this.da[c]&~d|b<<a;c++;this.da[c]=this.da[c]&d|b>>>32-a}else this.da[c]=b;this.Wa=!0},Da:function(a,b){this.ha&&null!=this.Fa&&Kc(this.ha,this.Fa+a)||this.F&&Lc(this.F,b,1,!1);return this.re(a,b)},qb:function(a,b){this.ha&&null!=this.Fa&&Kc(this.ha,this.Fa+a,2)||this.F&&Lc(this.F,b,2,!1);return this.fg(a,b)},Pa:function(a,b){this.ha&&null!=this.Fa&&
|
||||
Kc(this.ha,this.Fa+a,4)||this.F&&Lc(this.F,b,4,!1);return this.si(a,b)},bc:function(a,b,c){this.ha&&null!=this.Fa&&Mc(this.ha,this.Fa+a)||this.F&&Lc(this.F,c,1,!0);this.N?this.L(a,b,c):this.xf(a,b,c)},sd:function(a,b,c){this.ha&&null!=this.Fa&&Mc(this.ha,this.Fa+a,2)||this.F&&Lc(this.F,c,2,!0);this.N?this.L(a,b,c):this.zi(a,b,c)},Vc:function(a,b,c){this.ha&&null!=this.Fa&&Mc(this.ha,this.Fa+a,4)||this.F&&Lc(this.F,c,4,!0);this.N?this.L(a,b,c):this.ua(a,b,c)},Ja:function(a,b){this.yb.da[this.A]|=this.ga;
|
||||
this.zb.da[this.B]|=this.ga;return this.Bd.pc(a,b)},Jb:function(a,b){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.ga;return this.Bd.sf(a,b)},fb:function(a,b){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.ga;return this.Bd.Md(a,b)},Cc:function(a,b,c){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.V;this.Bd.sc(a,b,c)},Gd:function(a,b,c){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.V;this.Bd.zf(a,b,c)},hd:function(a,b,c){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.V;
|
||||
this.Bd.yf(a,b,c)},Ka:function(a,b){return Nc(this.F,b,!1).pc(a,b)},xd:function(a,b){return Nc(this.F,b,!1).sf(a,b)},gb:function(a,b){return Nc(this.F,b,!1).Md(a,b)},Uc:function(a,b,c){Nc(this.F,c,!0).sc(a,b,c)},Hd:function(a,b,c){Nc(this.F,c,!0).zf(a,b,c)},jd:function(a,b,c){Nc(this.F,c,!0).yf(a,b,c)},Ca:function(a){return this.Za[a]},aa:function(a){return this.Za[a]},Ga:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.pc=this.aa;return this.Za[a]},Tb:function(a){return this.qa.getUint16(a,
|
||||
!0)},pa:function(a){return a&1?this.Za[a]|this.Za[a+1]<<8:this.de[a>>1]},Db:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.sf=this.pa;return a&1?this.Za[a]|this.Za[a+1]<<8:this.de[a>>1]},Oa:function(a){return this.qa.getInt32(a,!0)},fa:function(a){return a&3?this.Za[a]|this.Za[a+1]<<8|this.Za[a+2]<<16|this.Za[a+3]<<24:this.da[a>>2]},cb:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.Md=this.fa;return a&3?this.Za[a]|this.Za[a+1]<<8|this.Za[a+2]<<16|this.Za[a+3]<<24:this.da[a>>
|
||||
2]},Ub:function(a,b){this.Za[a]=b;this.Wa=!0},ra:function(a,b){this.Za[a]=b;this.Wa=!0},uc:function(a,b){this.Za[a]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.sc=this.ra;this.Bd.Wa=!0},qd:function(a,b){this.qa.setUint16(a,b,!0);this.Wa=!0},ya:function(a,b){a&1?(this.Za[a]=b,this.Za[a+1]=b>>8):this.de[a>>1]=b;this.Wa=!0},Fd:function(a,b){a&1?(this.Za[a]=b,this.Za[a+1]=b>>8):this.de[a>>1]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.zf=this.ya;this.Bd.Wa=!0},ce:function(a,b){this.qa.setInt32(a,
|
||||
b,!0);this.Wa=!0},va:function(a,b){a&3?(this.Za[a]=b,this.Za[a+1]=b>>8,this.Za[a+2]=b>>16,this.Za[a+3]=b>>24):this.da[a>>2]=b;this.Wa=!0},Xc:function(a,b){a&3?(this.Za[a]=b,this.Za[a+1]=b>>8,this.Za[a+2]=b>>16,this.Za[a+3]=b>>24):this.da[a>>2]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.yf=this.va;this.Bd.Wa=!0}};function Sb(a,b,c){a.ha=b;a.ze=a.Ae=0;c&&(c.F&&(a.F=c.F),(a.ze=c.ze)&&Hc(a,Ic,!1),(a.Ae=c.Ae)&&Jc(a,Ic,!1))}
|
||||
function Oc(a){a.sc=a.N?a.L:a.xf;a.zf=a.N?a.W:a.zi;a.yf=a.N?a.U:a.ua}function Pc(a){a.pc=a.re;a.sf=a.fg;a.Md=a.si}function Jc(a,b,c){c&&a.Ae||(a.sc=!a.N&&b[1]||a.L,a.zf=!a.N&&b[3]||a.W,a.yf=!a.N&&b[5]||a.U);if(c||void 0===c)a.xf=b[1]||a.L,a.zi=b[3]||a.W,a.ua=b[5]||a.U}function Hc(a,b,c){c&&a.ze||(a.pc=b[0]||a.ia,a.sf=b[2]||a.ka,a.Md=b[4]||a.ea);if(c||void 0===c)a.re=b[0]||a.ia,a.fg=b[2]||a.ka,a.si=b[4]||a.ea}function fc(a,b,c){b||(b=5==a.type?Qc:6==a.type?Sc:Tc);Hc(a,b,c);Jc(a,b,c)}
|
||||
var Tc=[],lc=[B.prototype.Fa,B.prototype.tc,B.prototype.sb,B.prototype.Cd,B.prototype.Ya,B.prototype.Wc],Ic=[B.prototype.Da,B.prototype.bc,B.prototype.qb,B.prototype.sd,B.prototype.Pa,B.prototype.Vc],Sc=[B.prototype.Ja,B.prototype.Cc,B.prototype.Jb,B.prototype.Gd,B.prototype.fb,B.prototype.hd],Qc=[B.prototype.Ka,B.prototype.Uc,B.prototype.xd,B.prototype.Hd,B.prototype.gb,B.prototype.jd];
|
||||
var Tc=[],lc=[B.prototype.Ea,B.prototype.tc,B.prototype.sb,B.prototype.Cd,B.prototype.Ya,B.prototype.Wc],Ic=[B.prototype.Da,B.prototype.bc,B.prototype.qb,B.prototype.sd,B.prototype.Pa,B.prototype.Vc],Sc=[B.prototype.Ja,B.prototype.Cc,B.prototype.Jb,B.prototype.Gd,B.prototype.fb,B.prototype.hd],Qc=[B.prototype.Ka,B.prototype.Uc,B.prototype.xd,B.prototype.Hd,B.prototype.gb,B.prototype.jd];
|
||||
if(Ab)var kc=[B.prototype.Ca,B.prototype.Ub,B.prototype.Tb,B.prototype.qd,B.prototype.Oa,B.prototype.ce],jc=[B.prototype.aa,B.prototype.ra,B.prototype.pa,B.prototype.ya,B.prototype.fa,B.prototype.va],Vc=[B.prototype.Ga,B.prototype.uc,B.prototype.Db,B.prototype.Fd,B.prototype.cb,B.prototype.Xc];
|
||||
function Wc(a,b){bb.call(this,"CPU",a,Wc,1);b=a.cycles||b;var c=a.multiplier||1;this.Y={};this.Y.Id=b;this.Y.Wd=c;this.Y.Ag=Math.round(this.Y.Id/1E4)/100;this.Y.He=this.Y.Ag*this.Y.Wd;this.la.Ib=!1;this.la.yi=!1;this.la.Cf=a.autoStart;this.la.oj=!1;this.la.Xe=!1;this.Y.Lf=this.Y.kf=0;this.Y.Mf=a.csStart;this.Y.jf=a.csInterval;this.Y.lf=a.csStop;this.Ai=this.Ne.bind(this);xb(this)}jb(Wc);var Xc=["power","reset"];l=Wc.prototype;
|
||||
l.Ic=function(a,b,c,d){this.X=a;this.ga=b;this.ha=d;for(b=0;b<Xc.length;b++)(c=this.qa[Xc[b]])&&this.X.Pb(null,Xc[b],c);this.Tb=Jb(a,"FPU");this.N=Jb(a,"ChipSet");a=Yc(a,"autoStart");null!=a&&(this.la.Cf="true"==a?!0:"false"==a?!1:!!a);xb(this)};l.reset=function(){};l.save=function(){return null};l.restore=function(){return!1};
|
||||
|
|
@ -147,7 +147,7 @@ function ld(a,b,c,d){void 0===c&&(c=!!(a.F.$a&1));a.bd=!1;if(c)if(a.load=a.zg,a.
|
|||
a.Xb+5,d=a.F.Qa(c),d&1||a.F.qc(c,d|1))}b&&(a.Lb=a.Z&3,a.Gc=(a.wb&24576)>>13,80386>a.F.ja||!(a.ext&64)?(a.ba=2,a.R=65535):(a.ba=4,a.R=-1),a.Tc=a.ba,a.Ba=a.R)}else a.load=a.uh,a.Cj=a.Xm,a.mc=a.ij,a.nc=a.kj,a.Lb=a.Gc=0,a.Xb=-1,a.df=!1}
|
||||
function Gd(a){this.ja=+a.model||8088;var b=a.stepping;this.Uc=this.ja+(b?ea(b,16):0);switch(this.ja){default:b=4772727;break;case 80286:b=6E6;break;case 80386:b=16E6}Wc.call(this,a,b);this.ag=61442;this.Cc=1792;this.Zf=28672;this.Cd=4;this.ra=255;this.B=80286<=this.ja?Cb:Bb;this.W=Hd;this.eg=Id;this.kg=Jd;this.lg=Kd;if(80186<=this.ja&&(this.W=Hd.slice(),this.eg=Id.slice(),this.kg=Jd.slice(),this.ra=31,this.W[15]=Ld,this.W[96]=Md,this.W[97]=Nd,this.W[98]=Od,this.W[99]=Ld,this.W[100]=Ld,this.W[101]=
|
||||
Ld,this.W[102]=Ld,this.W[103]=Ld,this.W[104]=Pd,this.W[105]=Qd,this.W[106]=Rd,this.W[107]=Sd,this.W[108]=Td,this.W[109]=Xd,this.W[110]=Yd,this.W[111]=Zd,this.W[192]=ee,this.W[193]=fe,this.W[200]=ge,this.W[201]=he,this.W[241]=ie,this.eg[7]=je,this.kg[7]=je,80286<=this.ja)){this.ag=2;this.Cc|=28672;this.Cd=0;this.W[15]=ke;this.tc=le.slice();for(a=0;a<this.tc.length;a++)this.tc[a]||(this.tc[a]=me);this.W[84]=ne;this.W[99]=oe;if(80386<=this.ja){var c;this.Zf=0;this.Cc|=196608;this.W[100]=pe;this.W[101]=
|
||||
qe;this.W[102]=re;this.W[103]=se;for(c in N)this.tc[+c]=N[+c];80546<=this.Uc&&80562>=this.Uc&&(this.tc[166]=te,this.tc[167]=ue)}}this.Hd=[];this.je=[];this.le=0;Zc(this);this.la.complete=this.la.nj=!1;this.Wg=0;this.kd=this.sa=[];this.La=this.Sb=this.Fa=this.Fd=this.hd=this.Gb=this.Db=0;ve(this)}jb(Gd,Wc);function we(a,b,c,d){b=(d?a.kd:a.sa)[b>>>a.La];c?--b.Ae||Oc(b):--b.ze||Pc(b);d&&Xb(a)}
|
||||
qe;this.W[102]=re;this.W[103]=se;for(c in N)this.tc[+c]=N[+c];80546<=this.Uc&&80562>=this.Uc&&(this.tc[166]=te,this.tc[167]=ue)}}this.Hd=[];this.je=[];this.le=0;Zc(this);this.la.complete=this.la.nj=!1;this.Wg=0;this.kd=this.sa=[];this.La=this.Sb=this.Ea=this.Fd=this.hd=this.Gb=this.Db=0;ve(this)}jb(Gd,Wc);function we(a,b,c,d){b=(d?a.kd:a.sa)[b>>>a.La];c?--b.Ae||Oc(b):--b.ze||Pc(b);d&&Xb(a)}
|
||||
function xe(a){var b;if(a.sa===a.kd){a.sa=Array(a.Fd);a.ke=new B(null,0,0,5,null,a);Sb(a.ke,a.ha);for(b=0;b<a.Fd;b++)a.sa[b]=a.ke;a.jd=new B;a.dg=Array(512);a.me=0}else for(var c=0;c<a.Gd.length;c++){b=a.Gd[c];var d=a.sa[b];512>a.me&&(a.dg[a.me++]=d);a.sa[b]=a.ke}a.Gd=[]}function Xb(a){a.$a&-2147483648&&xe(a)}
|
||||
function Nc(a,b,c,d){var e=(b&-4194304)>>>20,f=a.kd[(a.Od+e&a.Gb)>>>a.La],g=f.Md(e);if(!(g&1))return d||ye.call(a,b,!1,c),a.jd;if(!(g&4)&&3==a.pa)return d||ye.call(a,b,!0,c),a.jd;var h=(b&4190208)>>>10,g=a.kd[((g&-4096)+h&a.Gb)>>>a.La],k=g.Md(h);if(!(k&1))return d||ye.call(a,b,!1,c),a.jd;if(!(k&4)&&3==a.pa)return d||ye.call(a,b,!0,c),a.jd;c=a.kd[((k&-4096)+(b&4095)&a.Gb)>>>a.La];if(d)return c;d=b>>>a.La;k=a.sa[d];b&=-4096;var m;0<a.me?(m=a.dg[--a.me],m.qh(b)):m=new B(b,0,0,6);b=m;b.Bd=c;b.yb=f;b.A=
|
||||
e>>2;b.zb=g;b.B=h>>2;Ab&&ic&&c.da&&!c.controller&&!c.ze&&!c.Ae?(b.Za=c.Za,b.de=c.de,b.da=c.da,fc(b,Vc)):(b.ga=c?Gc(32):0,b.V=c?Gc(96):0,fc(b,Sc));Sb(b,a.ha,k);a.sa[d]=b;a.Gd.push(d);return b}function ze(a){a.sa!==a.kd&&(a.sa=a.kd,a.ke=null,a.Gd=null,a.jd=null)}l=Gd.prototype;l.reset=function(){this.la.Ib&&this.Wb();ve(this);Zc(this);this.la.error=!1};
|
||||
|
|
@ -156,7 +156,7 @@ function ve(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.v
|
|||
0];a.Ee=[null,null,null,null,null,null,0,0];a.Nb=new kd(a,2,"FS");a.Ob=new kd(a,2,"GS");ze(a)}a.rf=new kd(a,0,"NULL");a.ka=a.vb;a.Ka=a.ta;a.S=a.Ia=0;a.D=a.C=-1;a.$b=a.rf;a.ua=0;if(80286>a.ja)Ed(a,0,65535);else{a.Ec=0;a.zd=65535;a.Bc=new kd(a,5,"LDT",!0);a.Sa=new kd(a,4,"TSS",!0);a.Da=new kd(a,6,"VER",!0);Ed(a,65520,61440);var b,c=M(a);b=a.wa;var d=-65536;80386>b.F.ja&&(d&=16777215);b=b.Aa=d;a.Ha=b+c|0;a.hf=(b>>>0)+(a.wa.Ta>>>0)+1}Dd(a,0);wd(a)}
|
||||
function Ce(a){2==a.Tc?(a.cc=a.na,a.Oa=De,a.Ya=Ee,a.Jb=Fe,2==a.ba?(a.V=Ie,a.ea=Je,a.ya=Ke):(a.V=Le,a.ea=Me,a.ya=Ne)):(a.cc=a.oa,a.Oa=Oe,a.Ya=Pe,a.Jb=Qe,2==a.ba?(a.V=cf,a.ea=df,a.ya=ef):(a.V=ff,a.ea=gf,a.ya=hf))}function xd(a,b){a.ba!=b&&(a.Ia|=1024,a.ba=b,a.R=2==b?65535:-1,jf(a))}function jf(a){2==a.ba?(a.Ga=32768,a.tb=a.na,a.rc=a.jb,2==a.Tc?(a.V=Ie,a.ea=Je,a.ya=Ke):(a.V=cf,a.ea=df,a.ya=ef)):(a.Ga=-2147483648,a.tb=a.oa,a.rc=a.nb,2==a.Tc?(a.V=Le,a.ea=Me,a.ya=Ne):(a.V=ff,a.ea=gf,a.ya=hf))}
|
||||
function kf(a){a.Tc=a.wa.Tc;a.Ba=a.wa.Ba;Ce(a);a.ba=a.wa.ba;a.R=a.wa.R;jf(a);a.Ia&=-3073}l.vj=function(){var a=this.G+this.H+this.I+this.M+J(this)+this.P+this.K+this.J|0;return a=a+M(this)+this.wa.Z+this.vb.Z+this.ta.Z+this.Xa.Z+Cd(this)|0};function lf(a,b,c){void 0===a.Hd[b]&&(a.Hd[b]=[]);a.Hd[b].push(c)}function mf(a,b,c){c&&(null==a.je[b]&&a.le++,a.je[b]=c)}function nf(a,b){var c=a.je[b];null!=c&&(c(--a.le),delete a.je[b])}
|
||||
function of(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):(g=a.sa[g>>>a.La],f?--g.Ae||Oc(g):--g.ze||Pc(g))}c>>=2;d>>=4}}function Lc(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 of(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.Ea,f,a):(g=a.sa[g>>>a.La],f?--g.Ae||Oc(g):--g.ze||Pc(g))}c>>=2;d>>=4}}function Lc(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 wd(a,b,c){void 0===b&&(b=!!(a.$a&1));void 0===c&&(c=!!(a.ca&131072));a.lg=b&&!c?pf:Kd;ld(a.wa,!1,b,c);ld(a.vb,!1,b,c);ld(a.ta,!1,b,c);ld(a.Xa,!1,b,c);80386<=a.ja&&(ld(a.Nb,!1,b,c),ld(a.Ob,!1,b,c));kf(a)}
|
||||
l.save=function(){var a=new qf(this);a.set(0,[this.G,this.H,this.I,this.M,J(this),this.P,this.K,this.J]);var b=M(this),c=this.wa.save(),d=this.vb.save(),e=this.ta.save(),f=this.Xa.save(),g;null!=this.Ec?(g=[this.$a,this.Ec,this.zd,this.Mc,this.Sd,this.Bc.save(),this.Sa.save(),this.Pa],80386<=this.ja&&(g.push(this.ti),g.push(this.se),g.push(this.Od),g.push(this.Ja),g.push(this.Ee))):g=null;b=[b,c,d,e,f,g,Cd(this)];80386<=this.ja&&(b.push(this.Nb.save()),b.push(this.Ob.save()));a.set(1,b);a.set(2,[this.ka.kc,
|
||||
this.Ka.kc,this.S,this.Ia,this.ua,this.D,this.C]);a.set(3,[0,this.uc,this.Y.Wd]);a.set(4,oc(this.ga,!!(this.$a&-2147483648)));return a.data()};
|
||||
|
|
@ -171,9 +171,9 @@ function Cf(a){a.resultType&32&&(a.ca&=-2049,(a.Wc^a.Vc)&(a.sd^a.Vc)&a.resultTyp
|
|||
function Cd(a){return a.ca&-2262|xf(a)|yf(a)|zf(a)|Af(a)|Bf(a)|Cf(a)}function Of(a,b){b|=a.$a&1|65520;a.$a=a.$a&-65536|b&65535;a.$a&1&&wd(a,!0)}function Dd(a,b,c){a.$a&1||(b&=~a.Zf);void 0===c&&(c=a.pa);c?b=b&-12289|a.ca&12288:a.Pa=(b&12288)>>12;c>a.Pa&&(b=b&-513|a.ca&512);a.resultType=128;a.ca=a.ca&~(a.Cc|2261)|b&(a.Cc|2261)|a.ag;a.ca&256&&(a.ua|=2,a.S|=4)}
|
||||
function Pf(a,b,c,d){var e=0;if(a.$a&1&&(a.pa>a.Pa||a.ca&131072)&&a.Sa.Zi)for(var f=a.Sa.Zi+(b>>>3),e=(1<<c)-1<<(b&7);e&&f<=a.Sa.ml&&!(a.Qa(f)&e);)e>>>=8,f++;return e?(z(a,256)&&y(a,"checkIOPM("+v(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),E.call(a,13,0),!1):!0}
|
||||
l.Pb=function(a,b,c){switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case "ESP":case "EBP":case "ESI":case "EDI":case "EIP":case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "IP":case "PC":case "CS":case "DS":case "SS":case "ES":case "FS":case "GS":case "CR0":case "CR2":case "CR3":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "V":this.qa[b]=c;this.Wg++;a=!0;break;default:a=this.parent.Pb.call(this,a,b,c)}return a};
|
||||
function Qf(a,b,c,d){var e=(d?a.kd:a.sa)[(b&a.Db)>>>a.La];e&&5==e.type&&(e=Nc(a,b,!1,!0));if(e){var f=b&a.Fa;if(!c||1==c)return e.re(f,b);if(2==c)return f<a.Fa?e.fg(f,b):e.re(f,b)|Qf(a,b+1,1,d)<<8;if(4==c)return f<a.Fa-2?e.si(f,b):f==a.Fa-1?e.fg(f,b)|Qf(a,b+2,2,d)<<16:e.re(f,b)|Qf(a,b+1,1,d)<<8|Qf(a,b+2,1,d)<<16|Qf(a,b+3,1,d)<<24}return null}l.Qa=function(a){return this.sa[(a&this.Db)>>>this.La].pc(a&this.Fa,a)};
|
||||
l.na=function(a){var b=a&this.Fa,c=(a&this.Db)>>>this.La;this.A-=this.B.Kg;if(b<this.Fa)return this.sa[c].sf(b,a);b=this.sa[c].pc(b,a);this.S&4096||(b|=this.sa[c+1&this.hd].pc(0,a+1)<<8);return b};l.oa=function(a){var b=a&this.Fa,c=(a&this.Db)>>>this.La;if(b<this.Fa-2)return this.sa[c].Md(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;){d|=this.sa[c].pc(b++,a++)<<f;if(this.S&4096)break;--g||(c=c+1&this.hd,b=0);f+=8}return d};l.qc=function(a,b){this.sa[(a&this.Db)>>>this.La].sc(a&this.Fa,b&255,a)};
|
||||
l.jb=function(a,b){var c=a&this.Fa,d=(a&this.Db)>>>this.La;this.A-=this.B.Kg;c<this.Fa?this.sa[d].zf(c,b&65535,a):(this.sa[d++].sc(c,b&255,a),this.S&4096||this.sa[d&this.hd].sc(0,b>>8&255,a+1))};l.nb=function(a,b){var c=a&this.Fa,d=(a&this.Db)>>>this.La;this.A-=this.B.Kg;if(c<this.Fa-2)this.sa[d].yf(c,b,a);else for(var e=4,f=4-(c&3);e--;){this.sa[d].sc(c++,b&255,a++);if(this.S&4096)break;--f||(d=d+1&this.hd,c=0);b>>>=8}};
|
||||
function Qf(a,b,c,d){var e=(d?a.kd:a.sa)[(b&a.Db)>>>a.La];e&&5==e.type&&(e=Nc(a,b,!1,!0));if(e){var f=b&a.Ea;if(!c||1==c)return e.re(f,b);if(2==c)return f<a.Ea?e.fg(f,b):e.re(f,b)|Qf(a,b+1,1,d)<<8;if(4==c)return f<a.Ea-2?e.si(f,b):f==a.Ea-1?e.fg(f,b)|Qf(a,b+2,2,d)<<16:e.re(f,b)|Qf(a,b+1,1,d)<<8|Qf(a,b+2,1,d)<<16|Qf(a,b+3,1,d)<<24}return null}l.Qa=function(a){return this.sa[(a&this.Db)>>>this.La].pc(a&this.Ea,a)};
|
||||
l.na=function(a){var b=a&this.Ea,c=(a&this.Db)>>>this.La;this.A-=this.B.Kg;if(b<this.Ea)return this.sa[c].sf(b,a);b=this.sa[c].pc(b,a);this.S&4096||(b|=this.sa[c+1&this.hd].pc(0,a+1)<<8);return b};l.oa=function(a){var b=a&this.Ea,c=(a&this.Db)>>>this.La;if(b<this.Ea-2)return this.sa[c].Md(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;){d|=this.sa[c].pc(b++,a++)<<f;if(this.S&4096)break;--g||(c=c+1&this.hd,b=0);f+=8}return d};l.qc=function(a,b){this.sa[(a&this.Db)>>>this.La].sc(a&this.Ea,b&255,a)};
|
||||
l.jb=function(a,b){var c=a&this.Ea,d=(a&this.Db)>>>this.La;this.A-=this.B.Kg;c<this.Ea?this.sa[d].zf(c,b&65535,a):(this.sa[d++].sc(c,b&255,a),this.S&4096||this.sa[d&this.hd].sc(0,b>>8&255,a+1))};l.nb=function(a,b){var c=a&this.Ea,d=(a&this.Db)>>>this.La;this.A-=this.B.Kg;if(c<this.Ea-2)this.sa[d].yf(c,b,a);else for(var e=4,f=4-(c&3);e--;){this.sa[d].sc(c++,b&255,a++);if(this.S&4096)break;--f||(d=d+1&this.hd,c=0);b>>>=8}};
|
||||
function Rf(a,b,c){a.$b=b;a.Ca=c&a.Ba;a.D=b.mc(a.Ca,1);return a.S&1?0:a.Qa(a.D)}function P(a,b){return Rf(a,a.ka,b)}function Sf(a,b){return Rf(a,a.Ka,b)}function Tf(a,b,c){a.$b=b;a.Ca=c&a.Ba;a.D=b.mc(a.Ca,a.ba);return a.S&1?0:a.tb(a.D)}function Q(a,b){a.$b=a.ka;a.Ca=b&a.Ba;a.D=a.$b.mc(a.Ca,2);return a.S&1?0:a.na(a.D)}function Uf(a,b){a.$b=a.Ka;a.Ca=b&a.Ba;a.D=a.$b.mc(a.Ca,2);return a.S&1?0:a.na(a.D)}function R(a,b){a.$b=a.ka;a.Ca=b&a.Ba;a.D=a.$b.mc(a.Ca,4);return a.S&1?0:a.oa(a.D)}
|
||||
function Vf(a,b){a.$b=a.Ka;a.Ca=b&a.Ba;a.D=a.$b.mc(a.Ca,4);return a.S&1?0:a.oa(a.D)}function Wf(a,b){a.S&2||a.qc(a.$b.nc(a.Ca,1),b)}function Xf(a,b){a.S&2||a.jb(a.$b.nc(a.Ca,2),b)}function Yf(a,b){a.S&2||a.nb(a.$b.nc(a.Ca,4),b)}function yd(a,b,c){return a.tb(b.mc(c,a.ba))}l.xa=function(){var a=uf(this,1),b=this.Qa(this.Ha);this.Ha=a;return b};function Zf(a){var b=uf(a,2),c=a.na(a.Ha);a.Ha=b;return c}function T(a){var b=uf(a,a.Tc),c=a.cc(a.Ha);a.Ha=b;return c}
|
||||
l.Ma=function(){var a=uf(this,this.ba),b=this.tb(this.Ha);this.Ha=a;return b};l.T=function(){var a=uf(this,1),b=this.Qa(this.Ha)<<24>>24;this.Ha=a;return b};function H(a){var b=a.tb(a.fa);a.fa=a.fa+a.ba|0;var c=a.Sg-a.fa|0;0>c&&0<=(a.Sg^a.fa)&&(8088>=a.ja||!a.ta.bd&&a.ta.Ta==a.ta.Ba||a.ta.bd&&!a.ta.Ta?I(a,a.fa-a.ta.Aa&a.ta.Ba):-1>c&&E.call(a,12,0));return b}
|
||||
|
|
@ -414,8 +414,8 @@ var pf=[function(){this.A-=2+(-1===this.D?0:1);return this.Bc.Z},function(){this
|
|||
a;Lf(this);return a},function(a){this.S|=2;this.A-=14+(-1===this.D?0:2);if(-1!==this.Da.load(a)&&512==(this.Da.wb&2560)&&this.Da.Gc>=this.pa&&this.Da.Gc>=(a&3))return Nf(this),a;Lf(this);return a},W,W],Kd=[je,je,je,je,je,je,W,W],sk=[function(a){if(-1===this.D)E.call(this,6);else{a=this.zd-this.Ec;var b=this.Ec;80286==this.ja?b|=-16777216:80386<=this.ja&&2!=this.ba&&(a|=b<<16);this.nb(this.D+2,b);this.A-=11}return a},function(a){if(-1===this.D)E.call(this,6);else{a=this.Sd-this.Mc;var b=this.Mc;80286==
|
||||
this.ja?b|=-16777216:80386<=this.ja&&2!=this.ba&&(a|=b<<16);this.nb(this.D+2,b);this.A-=12}return a},function(a){-1===this.D||this.ca&131072?E.call(this,6):(this.Ec=this.oa(this.D+2)&(this.R|this.R<<8),a&=65535,this.zd=this.Ec+a,this.S|=2,this.A-=11);return a},function(a){-1===this.D||this.ca&131072?E.call(this,6):(this.Mc=this.oa(this.D+2)&(this.R|this.R<<8),a&=65535,this.Sd=this.Mc+a,this.S|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.D?0:1);return this.$a},W,function(a){this.ca&131072?
|
||||
E.call(this,6):(Of(this,a),this.A-=-1===this.D?3:6,this.S|=2);return a},W],tk=[W,W,W,W,Hh,Kh,Jh,Ih];
|
||||
function X(a){bb.call(this,"ChipSet",a,X,32768);var b=a.model;b&&!uk[b]&&w("Unrecognized ChipSet model: "+b);this.ja=uk[b]||vk;this.C=[];b=wk(a[xk]);this.C[0]=[b,b];null==b&&(this.ia=[360,360],(b=a.floppies)&&b.length&&(this.ia=b),yk(this,zk,this.ia.length),yk(this,Ak,a.monitor||(this.ja<kg?"mono":"ega")));b=wk(a[Bk]);this.C[1]=[b,b];this.cb=this.Da=1;this.ja>=kg&&(this.cb=this.Da=2);this.ka=a.scaleTimers||!1;this.Ub=a.rtcDate;this.Db=!1;a.sound&&(this.sb=this.Fa=null,window&&(this.sb=window.AudioContext||
|
||||
window.webkitAudioContext),this.sb&&(this.Fa=new this.sb));this.reset(!0);xb(this)}jb(X);var vk=5150.9,kg=5170,uk={5150:5150,5160:5160,5170:kg,att6300:5160.101,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:vk,deskpro386:5180},xk="sw1",Bk="sw2",Ck={jl:1,ONE:0,Io:64,Go:128,xo:192,Lc:192,Xg:6},Dk={Ho:16,to:32,yo:48,Lc:48,Xg:4},zk=1,Ak=4,Ek={5150:[{},{}]};Ek[5150][0][zk]={Lc:192,gd:{1:0,2:64,3:128,4:192},Pd:"Number of Floppy Drives"};Ek[5150][0][3]={Lc:2,gd:{0:0,1:2},Pd:"FPU"};
|
||||
function X(a){bb.call(this,"ChipSet",a,X,32768);var b=a.model;b&&!uk[b]&&w("Unrecognized ChipSet model: "+b);this.ja=uk[b]||vk;this.C=[];b=wk(a[xk]);this.C[0]=[b,b];null==b&&(this.ia=[360,360],(b=a.floppies)&&b.length&&(this.ia=b),yk(this,zk,this.ia.length),yk(this,Ak,a.monitor||(this.ja<kg?"mono":"ega")));b=wk(a[Bk]);this.C[1]=[b,b];this.cb=this.Da=1;this.ja>=kg&&(this.cb=this.Da=2);this.ka=a.scaleTimers||!1;this.Ub=a.rtcDate;this.Db=!1;a.sound&&(this.sb=this.Ea=null,window&&(this.sb=window.AudioContext||
|
||||
window.webkitAudioContext),this.sb&&(this.Ea=new this.sb));this.reset(!0);xb(this)}jb(X);var vk=5150.9,kg=5170,uk={5150:5150,5160:5160,5170:kg,att6300:5160.101,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:vk,deskpro386:5180},xk="sw1",Bk="sw2",Ck={jl:1,ONE:0,Io:64,Go:128,xo:192,Lc:192,Xg:6},Dk={Ho:16,to:32,yo:48,Lc:48,Xg:4},zk=1,Ak=4,Ek={5150:[{},{}]};Ek[5150][0][zk]={Lc:192,gd:{1:0,2:64,3:128,4:192},Pd:"Number of Floppy Drives"};Ek[5150][0][3]={Lc:2,gd:{0:0,1:2},Pd:"FPU"};
|
||||
Ek[5150][0][Ak]={Lc:48,gd:{0:0,1:16,2:32,3:48,none:0,tv:16,color:32,cga:32,mda:48,mono:48,ega:0,vga:0},Pd:"Monitor Type"};Ek[5150][0][5]={Lc:12,gd:{16:0,32:4,48:8,64:12},Pd:"Base Memory (16Kb Increments)"};Ek[5150][1][6]={Lc:31,gd:{0:0,32:1,64:2,96:3,128:4,160:5,192:6,224:7,256:8,288:9,320:10,352:11,384:12,416:13,448:14,480:15,512:16,544:17,576:18},Pd:"Expansion Memory (32Kb Increments)"};Ek[5160]=[{},{}];Ek[5160][0][zk]=Ek[5150][0][zk];Ek[5160][0][3]=Ek[5150][0][3];Ek[5160][0][Ak]=Ek[5150][0][Ak];
|
||||
Ek[5160][0][5]={Lc:12,gd:{64:0,128:4,192:8,256:12},Pd:"Base Memory (64Kb Increments)"};Ek[5160][1][6]=Ek[5150][1][6];Ek[5160.101]=[{},{}];Ek[5160.101][0][5]={Lc:143,gd:{128:1,256:130,512:8,640:141},Pd:"Base Memory (128Kb Increments)"};Ek[5160.101][0][3]={Lc:16,gd:{0:0,1:16},Pd:"FPU"};Ek[5160.101][1][2]={Lc:1,gd:{0:0,1:1},Pd:"Floppy Type"};Ek[5160.101][1][zk]=Ek[5150][0][zk];Ek[5160.101][1][Ak]=Ek[5150][0][Ak];l=X.prototype;
|
||||
l.Pb=function(a,b,c){switch(b){case xk:return this.qa[b]=c,Fk(this,0,b),!0;case Bk:if(5150==(this.ja|0)||5160.101==this.ja)return this.qa[b]=c,Fk(this,1,b),!0;break;case "swdesc":return this.qa[b]=c,!0}return!1};
|
||||
|
|
@ -465,8 +465,8 @@ l.jn=function(a,b,c){x(this,a,b,c,"8042_INBUFF.CMD",null,16384);this.ea=b;this.N
|
|||
l.An=function(a,b,c){x(this,a,b,c,"CMOS.ADDR",null,4096);this.pa=b;this.ya=b&128?0:128};l.cm=function(a,b){var c=this.pa&63,d=13>=c?Sk(this,c):this.A[c];z(this,4352)&&x(this,a,null,b,"CMOS.DATA["+u(c)+"]",d,!0);null!=b&&12==c&&(this.A[c]&=15,d&128&&lg(this,8),d&64&&this.A[11]&64&&bl(this));return d};
|
||||
l.Bn=function(a,b,c){var d=this.pa&63;z(this,4352)&&x(this,a,b,c,"CMOS.DATA["+u(d)+"]",null,!0);a=b^this.A[d];if(13>=d){if(c=b,10>d){var e=!1;this.A[11]&4||(c=10*(c>>4)+(c&15),e=!0);if(4==d||5==d)e&&23<c&&(c+=48),this.A[11]&2||(12>=c?c=12==c?0:c:(c-=116,c=24==c?12:c))}}else c=b;this.A[d]=c;11==d&&a&64&&b&64&&bl(this)};l.Nk=function(a,b,c){x(this,a,b,c,"NMI");this.ya=b};l.Ln=function(a,b,c){x(this,a,b,c,"FPU.CLEAR")};l.Mn=function(a,b,c){x(this,a,b,c,"FPU.RESET");this.Tb&&fg(this.Tb)};
|
||||
l.Pm=function(a){if(z(this,16)&&pk(this.ha,26,a)){var b=this.F.G>>8;mf(this.F,a,function(a,d){return function(c){d=cd(a.F)-d;var e,g=a.F.M&255,h=a.F.M>>8,k=a.F.M&255,m=a.F.M>>8;if(2==b||3==b)e=" CH(hour)="+v(h)+" CL(min)="+u(g)+" DH(sec)="+u(m);else if(4==b||5==b)e=" CX(year)="+v(a.F.I)+" DH(month)="+u(m)+" DL(day)="+u(k);g=a.ha;h=d;g.message("INT "+u(26)+": C="+(xf(g.F)?1:0)+(e||"")+" (cycles="+h+(c?",level="+(c+1):"")+")")}}(this,cd(this.F)))}return!0};
|
||||
function cl(a,b){if(a.Fa)try{void 0!==b?a.Db=b:b=a.Db&&a.F&&a.F.la.Ib;var c=Math.round(1193181/Nl(a,2));if(20>c||2E4<c)b=!1;b?a.U?(a.U.frequency.value=c,z(a,33554432)&&y(a,"speaker set to "+c+"hz",!0)):(a.U=a.Fa.createOscillator(),a.U&&(a.U.type="number"==typeof a.U.type?1:"square",a.U.connect(a.Fa.destination),a.U.frequency.value=c,"start"in a.U?a.U.start(0):a.U.noteOn(0),z(a,33554432)&&y(a,"speaker on at "+c+"hz",!0))):a.U&&("stop"in a.U?a.U.stop(0):a.U.noteOff(0),a.U.disconnect(),delete a.U,z(a,
|
||||
33554432)&&y(a,"speaker off at "+c+"hz",!0))}catch(d){a.Na("AudioContext exception: "+d.message),a.Fa=null}else b&&y(a,"BEEP",33554432)}
|
||||
function cl(a,b){if(a.Ea)try{void 0!==b?a.Db=b:b=a.Db&&a.F&&a.F.la.Ib;var c=Math.round(1193181/Nl(a,2));if(20>c||2E4<c)b=!1;b?a.U?(a.U.frequency.value=c,z(a,33554432)&&y(a,"speaker set to "+c+"hz",!0)):(a.U=a.Ea.createOscillator(),a.U&&(a.U.type="number"==typeof a.U.type?1:"square",a.U.connect(a.Ea.destination),a.U.frequency.value=c,"start"in a.U?a.U.start(0):a.U.noteOn(0),z(a,33554432)&&y(a,"speaker on at "+c+"hz",!0))):a.U&&("stop"in a.U?a.U.stop(0):a.U.noteOff(0),a.U.disconnect(),delete a.U,z(a,
|
||||
33554432)&&y(a,"speaker off at "+c+"hz",!0))}catch(d){a.Na("AudioContext exception: "+d.message),a.Ea=null}else b&&y(a,"BEEP",33554432)}
|
||||
var Gk={0:function(a,b){return nl(this,0,0,a,b)},1:function(a,b){return pl(this,0,0,a,b)},2:function(a,b){return nl(this,0,1,a,b)},3:function(a,b){return pl(this,0,1,a,b)},4:function(a,b){return nl(this,0,2,a,b)},5:function(a,b){return pl(this,0,2,a,b)},6:function(a,b){return nl(this,0,3,a,b)},7:function(a,b){return pl(this,0,3,a,b)},8:function(a,b){return rl(this,0,a,b)},13:function(a,b){return wl(this,0,a,b)},32:function(a,b){return Fl(this,0,b)},33:function(a,b){return Il(this,0,b)},64:function(a,
|
||||
b){return Kl(this,0,0,a,b)},65:function(a,b){return Kl(this,0,1,a,b)},66:function(a,b){return Kl(this,0,2,a,b)},67:function(a,b){return Ol(this,0,a,b)},129:function(a,b){return yl(this,0,2,a,b)},130:function(a,b){return yl(this,0,3,a,b)},131:function(a,b){return yl(this,0,1,a,b)},135:function(a,b){return yl(this,0,0,a,b)}},Ik={96:X.prototype.ym,97:X.prototype.zm,98:X.prototype.Am,99:X.prototype.Bm},Mk={96:X.prototype.Ml,97:X.prototype.Nl,100:X.prototype.Ol,112:X.prototype.bm,113:X.prototype.cm,128:function(a,
|
||||
b){return Al(this,7,a,b)},132:function(a,b){return Al(this,0,a,b)},133:function(a,b){return Al(this,1,a,b)},134:function(a,b){return Al(this,2,a,b)},136:function(a,b){return Al(this,3,a,b)},137:function(a,b){return yl(this,1,2,a,b)},138:function(a,b){return yl(this,1,3,a,b)},139:function(a,b){return yl(this,1,1,a,b)},140:function(a,b){return Al(this,4,a,b)},141:function(a,b){return Al(this,5,a,b)},142:function(a,b){return Al(this,6,a,b)},143:function(a,b){return yl(this,1,0,a,b)},160:function(a,b){return Fl(this,
|
||||
|
|
@ -567,14 +567,14 @@ function Zn(a,b){var c,d=a.Ga,e=a.C;if(e)if(1==e.Ua)d=7;else if(5<=e.Ua){var d=n
|
|||
m?13:14:480<=f&&(d=3==a.ya?17:18):d=m?7-d:6:d-=m?2:0);c=io(a)}}else e.fd&8&&(e.fd&2?(d=e.fd&16?6:5,e.fd&4||--d):(d=e.fd&1?3:1,e.fd&4&&--d));else a.Ga=null,null==d&&(d=a.va);if(!Yn(a,d,b))return!1;jo(a,c);return!0}
|
||||
function Yn(a,b,c){if(null!=b&&(b!=a.Ga||c)){a.Wg=0;a.Ga=b;a.qb=!1;b=a.C||(7==b?a.pa:a.aa);if(b!=a.C||b.ob!=a.ob||b.ac!=a.ac){go(a);if(a.ob){if(!gc(a.ga,a.ob,a.ac))return!1;a.C&&(a.C.Hc=!1)}a.C=b;b.Hc=!0;a.ob=b.ob;a.ac=b.ac;if(!Ub(a.ga,b.ob,b.ac,3,b===a.A?b:null))return!1}a:{a.U=0;a.L=a.jd;a.W=a.je;a.Db=a.L;a.hd=Jm[7][2];b=0;if(c=Jm[a.Ga])a.L=c[0],a.W=c[1],a.hd=c[2],b=c[3],a.U=c[4],4!=a.ya&&7!=a.ya||a.C!==a.A||3!=a.U||(7==(a.A.mb[9]&31)?a.W=350>kn(a.A,18)?43:50:a.U=a.Ua);a.dg=a.L*a.W|0;a.ag=a.dg/
|
||||
a.hd|0;a.Ub=a.ag;a.sd=0;void 0!==b&&(a.Ub=(a.Ub<<1)+b|0,a.sd=a.Ub+b>>1);if(a.Oa.length){a.Ja=a.ra/a.L|0;a.Ka=a.Da/a.W|0;if(a.U){b=a.Oa[a.U];if(!b)break a;c=a.Oa[a.U<<1];a.Zf&&80==a.L?c&&a.Ja>=3*c.Pc>>2&&(a.U<<=1,b=c):(c&&a.Ja>=c.Pc&&(a.U<<=1,b=c),a.Zf||(a.Ja=b.Pc,a.Ka=b.Qc));a.bc=a.tc=0;b&&(a.bc=a.L*b.Pc,a.tc=a.W*b.Qc)}else a.Ja=a.Ka=1,a.bc=a.L,a.tc=a.W;a.sb=a.ea.createImageData(a.bc,a.tc);a.fb=document.createElement("canvas");a.fb.width=a.bc;a.fb.height=a.tc;a.gb=a.fb.getContext("2d");a.le=a.me=
|
||||
0;a.Cd=a.ra;a.Fd=a.Da;b=a.ra-a.L*a.Ja;c=a.Da-a.W*a.Ka;0<b&&(a.le=b>>1,a.Cd-=b);0<c&&(a.me=c>>1,a.Fd-=c);if(b||c)a.ea.fillStyle=a.ka.style.backgroundColor,a.ea.fillRect(0,0,a.ra,a.Da)}}ko(a,!0);un(a)}return!0}function eo(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 lo(a){a.Pa=-1;a.Fa=!1;var b=a.ag;if(void 0===a.fa||a.fa.length!=b)a.fa=Array(b)}function ko(a,b){b||(a.qb=!1);lo(a)}
|
||||
0;a.Cd=a.ra;a.Fd=a.Da;b=a.ra-a.L*a.Ja;c=a.Da-a.W*a.Ka;0<b&&(a.le=b>>1,a.Cd-=b);0<c&&(a.me=c>>1,a.Fd-=c);if(b||c)a.ea.fillStyle=a.ka.style.backgroundColor,a.ea.fillRect(0,0,a.ra,a.Da)}}ko(a,!0);un(a)}return!0}function eo(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 lo(a){a.Pa=-1;a.Ea=!1;var b=a.ag;if(void 0===a.fa||a.fa.length!=b)a.fa=Array(b)}function ko(a,b){b||(a.qb=!1);lo(a)}
|
||||
function ho(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Oa[a.U];h.Af&&(d=h.Af[d]);var k=g>>4&15;h.Af&&(k=h.Af[k]);e?(b*=h.Pc,c*=h.Qc,e.fillStyle=h.Re[k],e.fillRect(b,c,h.Pc,h.Qc)):(b=b*a.Ja+a.le,c=c*a.Ka+a.me,a.ea.fillStyle=h.Re[k],a.ea.fillRect(b,c,a.Ja,a.Ka));g&256&&(k=(f&15)*h.Pc,f=(f>>4)*h.Qc,e?e.drawImage(h.Zg[d],k,f,h.Pc,h.Qc,b,c,h.Pc,h.Qc):a.ea.drawImage(h.Zg[d],k,f,h.Pc,h.Qc,b,c,a.Ja,a.Ka));g&512&&(f=a.mg,g=a.Ee,e?(a.Ya&&a.Ya!==h.Qc&&(f=f*h.Qc/a.Ya|0,g=g*h.Qc/a.Ya|0),e.fillStyle=h.Re[d],
|
||||
e.fillRect(b,c+f,h.Pc,g)):(a.Ya&&a.Ya!==a.Ka&&(f=f*a.Ka/a.Ya|0,g=g*a.Ka/a.Ya|0),a.ea.fillStyle=h.Re[d],a.ea.fillRect(b,c+f,a.Ja,g)))}
|
||||
function un(a,b){if(a.la.ic){var c=!1,d=a.C;d&&(d!==a.A?d.fd&8&&(c=!0):d.Nd&32&&(c=!0));if(c||b){if(b)lo(a);else if(void 0===a.fa)return;var e=!1;!(b||++a.Wg&15)&&0<=a.cb&&(a.cb++,e=!0);var f=0,g=a.dg,h=a.ob,c=h,k=c+a.ac;19<=a.Ga&&(h=c=655360,k=c+65536);if(mo(a,d)&8||d.qf&&d.qf<d.ni){var m=(d.mb[12]<<8)+d.mb[13]|0;d.Ld!==m&&(d.Ld=m,ko(a));d.qf=0}m=d.Ld;a.U&&(m<<=1);c+=m;m=a.Ub;5<=a.Ua&&d.mb[19]&&d.mb[19]<<1!=d.mb[1]+1&&(a.Db=d.mb[19]<<(a.U?1:d.mb[20]&64?3:4),m=(a.Db*(a.W-1)+a.L)/a.hd|0,7>=a.Ga&&(m<<=
|
||||
1));c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(b=!b&&a.Fa){b=a.ga;for(var n=!0,t=c>>>b.La;0<m&&t<b.sa.length;)b.sa[t].Wa&&(b.sa[t].Wa=n=!1,b.sa[t].tj=!0),m-=b.Sb,t++;b=n}if(b){if(!e)return;if(!a.Pa){f=a.ua-d.Ld;if(0>f)return;g=f+1}}if(a.U){if(a.Oa[a.U]){d=f;f=0;e=a.Pa=0;h=1048575;m=a.C.fd&32;5<=a.Ua&&(m=a.C.Sc[16]&8);b=a.ua-a.C.Ld;m&&(e=32768,h&=~e,a.cb&2||(h&=-65537));for(c+=d<<1;c<k&&d<g;)m=mc(a.ga,c),m|=65536,m&e&&(a.Pa++,m&=h),d==b&&(m|=a.cb&1?131072:0),a.Fa&&m===a.fa[d]||(ho(a,d%a.L,d/a.L|0,m,a.gb),
|
||||
a.fa[d]=m,f++),c+=2,d++;a.Fa=!0;f&&a.gb&&a.ea.drawImage(a.fb,0,0,a.bc,a.tc,a.le,a.me,a.Cd,a.Fd);fo(a)}}else if(a.sd){var g=k,q,k=c,d=a.Pa=0,f=a.hd,e=16==f?65536:196608,h=16==f?1:2;b=ao(a,h);for(var n=m=0,t=a.L,A=0,F=a.W,C=0;k<g;){q=mc(a.ga,k);if(a.Fa&&q===a.fa[d])m+=f;else{a.fa[d]=q;q=q>>8|(q&255)<<8;var D=e,L=16;m<t&&(t=m);for(var G=0;G<f;G++){var ga=(q&(D>>=h))>>(L-=h);eo(a.sb,m++,n,b[ga])}m>A&&(A=m);n<F&&(F=n);n>=C&&(C=n+1)}k+=2;d++;if(m>=a.L){m=0;n+=2;if(n>a.W)break;n==a.W&&(n=1,k=c+a.sd)}}a.Fa=
|
||||
!0;t<a.L&&(a.gb.putImageData(a.sb,0,0,t,F,A-t,C-F),a.ea.drawImage(a.fb,0,0,a.L,a.W,0,0,a.ra,a.Da))}else if(a.hf){g=h;f=a.Pa=0;e=ao(a,8);h=a.C.rd;m=b=0;n=a.L;t=0;A=a.W;F=0;C=a.C.Me[4]&8?4:1;q=a.C.Sc[19]&15;for(D=a.Db>a.L?a.Db-a.L-q>>3:0;c<k;){d=h[c-g];G=4;q||(a.Fa&&d===a.fa[f]?(b+=G,G=0):a.fa[f]=d,f++);if(G){b<n&&(n=b);for(L=0;L<G;L++)eo(a.sb,b++,m,e[d&255]),d>>=8;b>t&&(t=b);m<A&&(A=m);m>=F&&(F=m+1)}c+=C;if(b>=a.L){b=0;if(++m>a.W)break;c+=D}}q||(a.Fa=!0);n<a.L&&(a.gb.putImageData(a.sb,0,0,n,A,t-n,
|
||||
F-A),a.ea.drawImage(a.fb,0,0,a.L,a.W,0,0,a.ra,a.Da))}else{g=h;d=a.Pa=0;f=ao(a);e=a.C.rd;b=h=0;m=a.L;n=0;t=a.W;A=0;F=a.C.Sc[19]&15;for(C=a.Db>a.L?a.Db-a.L-F>>3:0;c<k;){q=c++-g;q=e[q];L=8;F?h?(D=a.L-h,L>D&&(L=D)):(q<<=F,L-=F,a.Fa=!1):(a.Fa&&q===a.fa[d]?(h+=L,L=0):a.fa[d]=q,d++);if(L){h<m&&(m=h);for(D=0;D<L;D++)G=Wm[q&2155905152]||0,eo(a.sb,h++,b,f[G]),q<<=1;h>n&&(n=h);b<t&&(t=b);b>=A&&(A=b+1)}if(h>=a.L){h=0;if(++b>a.W)break;c+=C}}F||(a.Fa=!0);m<a.L&&(a.gb.putImageData(a.sb,0,0,m,t,n-m,A-t),a.ea.drawImage(a.fb,
|
||||
1));c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(b=!b&&a.Ea){b=a.ga;for(var n=!0,t=c>>>b.La;0<m&&t<b.sa.length;)b.sa[t].Wa&&(b.sa[t].Wa=n=!1,b.sa[t].tj=!0),m-=b.Sb,t++;b=n}if(b){if(!e)return;if(!a.Pa){f=a.ua-d.Ld;if(0>f)return;g=f+1}}if(a.U){if(a.Oa[a.U]){d=f;f=0;e=a.Pa=0;h=1048575;m=a.C.fd&32;5<=a.Ua&&(m=a.C.Sc[16]&8);b=a.ua-a.C.Ld;m&&(e=32768,h&=~e,a.cb&2||(h&=-65537));for(c+=d<<1;c<k&&d<g;)m=mc(a.ga,c),m|=65536,m&e&&(a.Pa++,m&=h),d==b&&(m|=a.cb&1?131072:0),a.Ea&&m===a.fa[d]||(ho(a,d%a.L,d/a.L|0,m,a.gb),
|
||||
a.fa[d]=m,f++),c+=2,d++;a.Ea=!0;f&&a.gb&&a.ea.drawImage(a.fb,0,0,a.bc,a.tc,a.le,a.me,a.Cd,a.Fd);fo(a)}}else if(a.sd){var g=k,q,k=c,d=a.Pa=0,f=a.hd,e=16==f?65536:196608,h=16==f?1:2;b=ao(a,h);for(var n=m=0,t=a.L,A=0,F=a.W,C=0;k<g;){q=mc(a.ga,k);if(a.Ea&&q===a.fa[d])m+=f;else{a.fa[d]=q;q=q>>8|(q&255)<<8;var D=e,L=16;m<t&&(t=m);for(var G=0;G<f;G++){var ga=(q&(D>>=h))>>(L-=h);eo(a.sb,m++,n,b[ga])}m>A&&(A=m);n<F&&(F=n);n>=C&&(C=n+1)}k+=2;d++;if(m>=a.L){m=0;n+=2;if(n>a.W)break;n==a.W&&(n=1,k=c+a.sd)}}a.Ea=
|
||||
!0;t<a.L&&(a.gb.putImageData(a.sb,0,0,t,F,A-t,C-F),a.ea.drawImage(a.fb,0,0,a.L,a.W,0,0,a.ra,a.Da))}else if(a.hf){g=h;f=a.Pa=0;e=ao(a,8);h=a.C.rd;m=b=0;n=a.L;t=0;A=a.W;F=0;C=a.C.Me[4]&8?4:1;q=a.C.Sc[19]&15;for(D=a.Db>a.L?a.Db-a.L-q>>3:0;c<k;){d=h[c-g];G=4;q||(a.Ea&&d===a.fa[f]?(b+=G,G=0):a.fa[f]=d,f++);if(G){b<n&&(n=b);for(L=0;L<G;L++)eo(a.sb,b++,m,e[d&255]),d>>=8;b>t&&(t=b);m<A&&(A=m);m>=F&&(F=m+1)}c+=C;if(b>=a.L){b=0;if(++m>a.W)break;c+=D}}q||(a.Ea=!0);n<a.L&&(a.gb.putImageData(a.sb,0,0,n,A,t-n,
|
||||
F-A),a.ea.drawImage(a.fb,0,0,a.L,a.W,0,0,a.ra,a.Da))}else{g=h;d=a.Pa=0;f=ao(a);e=a.C.rd;b=h=0;m=a.L;n=0;t=a.W;A=0;F=a.C.Sc[19]&15;for(C=a.Db>a.L?a.Db-a.L-F>>3:0;c<k;){q=c++-g;q=e[q];L=8;F?h?(D=a.L-h,L>D&&(L=D)):(q<<=F,L-=F,a.Ea=!1):(a.Ea&&q===a.fa[d]?(h+=L,L=0):a.fa[d]=q,d++);if(L){h<m&&(m=h);for(D=0;D<L;D++)G=Wm[q&2155905152]||0,eo(a.sb,h++,b,f[G]),q<<=1;h>n&&(n=h);b<t&&(t=b);b>=A&&(A=b+1)}if(h>=a.L){h=0;if(++b>a.W)break;c+=C}}F||(a.Ea=!0);m<a.L&&(a.gb.putImageData(a.sb,0,0,m,t,n-m,A-t),a.ea.drawImage(a.fb,
|
||||
0,0,a.L,a.W,0,0,a.ra,a.Da))}}}}function mo(a,b){var c=0;a=cd(a.F)-b.Eh;0>a&&(b.Eh=a,a=-a|0);a%b.zh>b.an&&(c|=1);a%b.Ch>b.cn&&(c|=9);b.ni=a/b.Ch|0;return c}l.um=function(a,b){return no(this,this.pa,a,b)};l.Vn=function(a,b,c){var d=this.pa;d.Qg=d.Ac;d.Ac=b&31;x(this,a,b,c,"CRTC.INDX")};l.tm=function(a,b){return oo(this,this.pa,a,b)};l.Un=function(a,b,c){po(this,this.pa,a,b,c)};l.vm=function(a,b){return qo(this,this.pa,b)};l.Wn=function(a,b,c){a=this.pa;x(this,a.port+4,b,c,"MODE");a.fd=b;Zn(this,!1)};
|
||||
l.wm=function(a,b){return ro(this,this.pa,b)};l.Mk=function(a,b,c){this.A.hg=this.A.hg&-4|b&3;x(this,a,b,c,"FEAT")};l.Tl=function(a,b){a=this.A.Nd;b&&!z(this)||x(this,960,null,b,"ATC.INDX",a);return a};l.kl=function(a,b){a=this.A.Sc[this.A.Nd&31];b&&!z(this)||x(this,960,null,b,"ATC."+this.A.$g[this.A.Nd&31],a);return a};
|
||||
l.Lk=function(a,b,c){var d=this.A,e=d.Nd&32;if(d.Ze){d.Ze=!1;var f=d.Nd&31;if(16<=f||!e)c&&!z(this)||x(this,a,b,c,"ATC."+d.$g[f]),d.Sc[f]=b,ko(this,!1)}else d.Nd=b,x(this,a,b,c,"ATC.INDX"),d.Ze=!0,b&32&&!e&&Xn(this,!0)&&un(this,!0),a=(d.mb[12]<<8)+d.mb[13]|0,d.Ld!=a&&(d.Ld=a,ko(this)),d.qf=0};
|
||||
|
|
@ -596,14 +596,14 @@ l.Ic=function(a,b,c,d){this.ga=b;this.F=c;this.ha=d;this.N=Jb(a,"ChipSet");qc(b,
|
|||
function wo(a,b){var c=0;b||(b=[0,0,0]);a.L=b[c++];a.Yb=b[c++];a.Df=b[c];return!0}l.hm=function(a,b){var c=this.L;x(this,a,null,b,"DATA",c);return c};l.Fm=function(a,b){var c=this.Yb;x(this,a,null,b,"STAT",c);return c};l.dm=function(a,b){var c=this.Df;x(this,a,null,b,"CTRL",c);return c};
|
||||
l.Hn=function(a,b,c){x(this,a,b,c,"DATA");this.L=b;this.Yb|=64;a=!1;y(this,"transmitByte("+u(b)+")");this.A&&(8==b?this.A.value=this.A.value.slice(0,-1):(this.A.value+=String.fromCharCode(b),this.A.scrollTop=this.A.scrollHeight),a=!0);if(null!=this.B){if(10==b||1024<=this.B.length)this.O(this.B),this.B="";10!=b&&(this.B+=String.fromCharCode(b));a=!0}a&&(this.Yb&=-65);xo(this)};l.Cn=function(a,b,c){x(this,a,b,c,"CTRL");this.Df=b;xo(this)};
|
||||
function xo(a){a.N&&a.C&&(a.Df&16&&!(a.Yb&64)?mg(a.N,a.C):lg(a.N,a.C))}var uo={0:so.prototype.hm,1:so.prototype.Fm,2:so.prototype.dm},vo={0:so.prototype.Hn,2:so.prototype.Cn};Xa(function(){for(var a=tb(document,"pcx86","parallel"),b=0;b<a.length;b++){var c=a[b],d=qb(c),d=new so(d);sb(d,c)}});
|
||||
function yo(a){this.ya=a.adapter;switch(this.ya){case 1:this.ua=1016;this.ka=4;break;case 2:this.ua=760;this.ka=3;break;default:w("Unrecognized serial adapter #"+this.ya);return}this.L=this.W=null;this.Ga=a.tabSize;this.Fa=a.charBOL;this.ea=0;bb.call(this,"SerialPort",a,yo,8388608);a=a.binding;"console"==a?this.W="":rb(this,a,zo);this.ia=this.ra=null;this.exports={connect:this.zj,receiveData:this.gg}}jb(yo);var zo="buffer";l=yo.prototype;l.bj=function(a,b){return a==this.xd?(this.V=b,this):null};
|
||||
function yo(a){this.ya=a.adapter;switch(this.ya){case 1:this.ua=1016;this.ka=4;break;case 2:this.ua=760;this.ka=3;break;default:w("Unrecognized serial adapter #"+this.ya);return}this.L=this.W=null;this.Ga=a.tabSize;this.Ea=a.charBOL;this.ea=0;bb.call(this,"SerialPort",a,yo,8388608);a=a.binding;"console"==a?this.W="":rb(this,a,zo);this.ia=this.ra=null;this.exports={connect:this.zj,receiveData:this.gg}}jb(yo);var zo="buffer";l=yo.prototype;l.bj=function(a,b){return a==this.xd?(this.V=b,this):null};
|
||||
l.Pb=function(a,b,c){var d=this;switch(b){case zo:return this.qa[b]=this.L=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),d.gg(b);return!0},c.onkeypress=function(a){a=a||window.event;d.gg(a.which||a.keyCode);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
|
||||
l.Ic=function(a,b,c,d){this.X=a;this.ga=b;this.F=c;this.ha=d;this.N=Jb(a,"ChipSet");qc(b,this,Ao,this.ua);yc(b,this,Bo,this.ua);xb(this)};l.zj=function(){if(!this.ia){var a=Yc(this.X,"connection");if(a){var b=a.split("->");if(2==b.length){var c=qa(b[0]);if(c!=this.xd)return;b=qa(b[1]);if(this.ia=ob(b)){var d=this.ia.exports;if(d){var e=d.connect;e&&e.call(this.ia);if(this.ra=d.receiveData){this.status(this.ce+"."+c+" connected to "+b);return}}}}this.status("Unable to establish connection: "+a)}}};
|
||||
l.hc=function(a,b){if(!b)if(this.zj(),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.gc=function(a){return a?this.save():!0};l.reset=function(){Co(this)};l.save=function(){var a=new qf(this),b=0,c=[];c[b++]=this.va;c[b++]=this.Da;c[b++]=this.fa;c[b++]=this.pa;c[b++]=this.U;c[b++]=this.B;c[b++]=this.C;c[b++]=this.A;c[b++]=this.Ca;c[b]=this.aa;a.set(0,c);return a.data()};l.restore=function(a){return Co(this,a[0])};
|
||||
function Co(a,b){var c=0;b||(b=[0,0,384,0,1,0,0,96,48,[]]);a.va=b[c++];a.Da=b[c++];a.fa=b[c++];a.pa=b[c++];a.U=b[c++];a.B=b[c++];a.C=b[c++];a.A=b[c++];a.Ca=b[c++];a.aa=b[c];return!0}l.gg=function(a){if("number"==typeof a)this.aa.push(a);else if("string"==typeof a)for(var b=0;b<a.length;b++)this.aa.push(a.charCodeAt(b));else this.aa=this.aa.concat(a);Do(this);return!0};
|
||||
function Do(a){0<a.aa.length&&!(a.A&1)&&(a.va=a.aa.shift(),a.A|=1);var b=-1;a.A&1&&a.pa&1&&(b=4);0<=b?(a.U&=-8,a.U|=b,a.N&&a.ka&&mg(a.N,a.ka,100)):(a.U|=1,a.N&&a.ka&&lg(a.N,a.ka))}l.Cm=function(a,b){var c=this.B&128?this.fa&255:this.va;x(this,a,null,b,this.B&128?"DLL":"RBR",c);this.A&=-2;Do(this);return c};l.om=function(a,b){var c=this.B&128?this.fa>>8:this.pa;x(this,a,null,b,this.B&128?"DLM":"IER",c);return c};l.pm=function(a,b){var c=this.U;x(this,a,null,b,"IIR",c);return c};
|
||||
l.qm=function(a,b){var c=this.B;x(this,a,null,b,"LCR",c);return c};l.sm=function(a,b){var c=this.C;x(this,a,null,b,"MCR",c);return c};l.rm=function(a,b){var c=this.A;x(this,a,null,b,"LSR",c);return c};l.xm=function(a,b){var c=this.Ca;x(this,a,null,b,"MSR",c);return c};
|
||||
l.eo=function(a,b,c){x(this,a,b,c,this.B&128?"DLL":"THR");if(this.B&128)this.fa=this.fa&-256|b;else{this.Da=b;this.A&=-97;a=!1;y(this,"transmitByte("+u(b)+")");this.ra&&this.ra.call(this.ia,b)&&(a=!0);if(this.L)13==b?this.ea=0:8==b?(this.L.value=this.L.value.slice(0,-1),0<this.ea&&this.ea--):(a=(a=ra[b])?"<"+a+">":String.fromCharCode(b),c=a.length,32>b&&1==c&&(c=0),9==b&&(b=this.Ga||8,c=b-this.ea%b,this.Ga&&(a=pa("",c))),this.Fa&&!this.ea&&c&&(a=String.fromCharCode(this.Fa)+a),this.L.value+=a,this.L.scrollTop=
|
||||
l.eo=function(a,b,c){x(this,a,b,c,this.B&128?"DLL":"THR");if(this.B&128)this.fa=this.fa&-256|b;else{this.Da=b;this.A&=-97;a=!1;y(this,"transmitByte("+u(b)+")");this.ra&&this.ra.call(this.ia,b)&&(a=!0);if(this.L)13==b?this.ea=0:8==b?(this.L.value=this.L.value.slice(0,-1),0<this.ea&&this.ea--):(a=(a=ra[b])?"<"+a+">":String.fromCharCode(b),c=a.length,32>b&&1==c&&(c=0),9==b&&(b=this.Ga||8,c=b-this.ea%b,this.Ga&&(a=pa("",c))),this.Ea&&!this.ea&&c&&(a=String.fromCharCode(this.Ea)+a),this.L.value+=a,this.L.scrollTop=
|
||||
this.L.scrollHeight,this.ea+=c),a=!0;else if(null!=this.W){if(10==b||1024<=this.W.length)this.O(this.W),this.W="";10!=b&&(this.W+=String.fromCharCode(b));a=!0}a&&(this.A|=96)}};l.Rn=function(a,b,c){x(this,a,b,c,this.B&128?"DLM":"IER");this.B&128?this.fa=this.fa&255|b<<8:this.pa=b};l.Sn=function(a,b,c){x(this,a,b,c,"LCR");this.B=b};
|
||||
l.Tn=function(a,b,c){var d=this.C;x(this,a,b,c,"MCR");this.C=b;this.V&&(d^b)&3&&(a=this.V,b=this.C,(c=3==(b&3))?a.Hc||(d=!1,a.C&2||(a.reset(),y(a,"serial mouse reset"),d=!0),a.C&1||(y(a,"serial mouse ID requested"),d=!0),d&&(a.N.gg([77,77]),y(a,"serial mouse ID sent")),Eo(a),a.Hc=c):a.Hc&&(y(a,"serial mouse inactive"),Fo(a),a.Hc=c),a.C=b)};
|
||||
var Ao={0:yo.prototype.Cm,1:yo.prototype.om,2:yo.prototype.pm,3:yo.prototype.qm,4:yo.prototype.sm,5:yo.prototype.rm,6:yo.prototype.xm},Bo={0:yo.prototype.eo,1:yo.prototype.Rn,3:yo.prototype.Sn,4:yo.prototype.Tn};Xa(function(){for(var a=tb(document,"pcx86","serial"),b=0;b<a.length;b++){var c=a[b],d=qb(c),d=new yo(d);sb(d,c)}});function Go(a){bb.call(this,"Mouse",a,Go,16777216);if(this.ka=a.serial)this.pa="SerialPort";this.ia=this.fa=this.Hc=!1;this.B=[];this.A=[];xb(this)}jb(Go);var wn=0;l=Go.prototype;
|
||||
|
|
@ -671,11 +671,11 @@ d.kb=c>>2&1,c=Jp(this),d.Qb+=c-d.ee,0>d.Qb&&(d.Qb=0),d.Qb>=d.Bb&&(d.Qb=d.Bb-1),d
|
|||
function Mp(a,b,c,d,e,f,g,h){Kp(a);Lp(a,b.hb|b.kb<<2|b.Cb&255);Lp(a,(b.Cb&65280)>>>8);Lp(a,(b.Cb&16711680)>>>16);var k=0;if(e!=b.Qb||f!=b.kb)k=g=1;c&128&&(f^=k,d||(k=0));Lp(a,e+k);Lp(a,f);Lp(a,g);Lp(a,h)}function Jp(a){var b=a.V[a.L];a.L++;return b}function Kp(a){a.L=a.C=0}function Lp(a,b){a.V[a.C++]=b}l.el=function(a,b,c){void 0===b||0>b?this.Le(a,c):c(-1,!1)};l.fl=function(a,b){return void 0!==b&&0<=b?Np(a,b):-1};
|
||||
l.vl=function(a,b){if(void 0!==b&&0<=b)a:if(a.Cb)a=-1;else{a.ld[a.We++]=b;if(a.We==a.ld.length){a.Qb=a.ld[0];a.kb=a.ld[1];a.xb=a.ld[2];a.Hb=128<<a.ld[3];for(var c=a.We=0;c<a.Hb;c++)if(0>Np(a,a.cj)){a=-1;break a}a.sg++}a.sg>=a.fe&&(b=-1);a=b}else a=-1;return a};l.Le=function(a,b){var c=-1,d=null,e=0;if(!a.Cb&&a.za){do{if(a.pb&&(e=a.eb,0<=(c=a.za.read(a.pb,a.eb++)))){d=a.pb;break}a.pb=a.za.seek(a.Qb,a.kb,a.xb);if(!a.pb){a.Cb=1088;break}a.eb=0;Op(a)}while(1)}b(c,!1,d,e)};
|
||||
function Np(a,b){if(a.Cb||!a.za)return-1;do{if(a.pb&&a.za.write(a.pb,a.eb++,b))break;a.pb=a.za.seek(a.Qb,a.kb,a.xb);if(!a.pb){a.Cb=8256;b=-1;break}a.eb=0;Op(a)}while(1);return b}function Op(a){a.xb++;a.xb>=a.Rf+1&&(a.xb=1,a.kb++,a.kb>=a.Qf&&(a.kb=0,a.Qb++))}var Ap={1009:vp.prototype.jm,1012:vp.prototype.lm,1013:vp.prototype.im,1015:vp.prototype.km},Bp={1010:vp.prototype.Kn,1013:vp.prototype.Jn,1015:vp.prototype.In};
|
||||
Xa(function(){for(var a=tb(document,"pcx86","fdc"),b=0;b<a.length;b++){var c=a[b],d=qb(c),d=new vp(d);sb(d,c)}});function Pp(a){bb.call(this,"HDC",a,Pp,1048576);this.dmaRead=this.gl;this.dmaWrite=this.hl;this.dmaWriteBuffer=this.wl;this.dmaWriteFormat=this.xl;this.ua=[];this.Fa=a.drives;this.ia="at"==a.type}jb(Pp);
|
||||
Xa(function(){for(var a=tb(document,"pcx86","fdc"),b=0;b<a.length;b++){var c=a[b],d=qb(c),d=new vp(d);sb(d,c)}});function Pp(a){bb.call(this,"HDC",a,Pp,1048576);this.dmaRead=this.gl;this.dmaWrite=this.hl;this.dmaWriteBuffer=this.wl;this.dmaWriteFormat=this.xl;this.ua=[];this.Ea=a.drives;this.ia="at"==a.type}jb(Pp);
|
||||
var Qp=["XTC","ATC","COMPAQ"],Rp=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966,6],19:[1023,
|
||||
8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}];l=Pp.prototype;
|
||||
l.Pb=function(a,b,c){var d=this;switch(b){case "saveHD0":case "saveHD1":return this.qa[b]=c,c.onclick=function(a){return function(){var b=d.A&&d.A[a];b&&b.za?(b=b.za,b=Na(tp(b),"octet-stream",!0,b.Ug.replace(".json",".img")),w(b)):d.Na("Hard drive "+a+" is not available.")}}(+b.slice(-1)),!0}return!1};
|
||||
l.Ic=function(a,b,c,d){this.ga=b;this.F=c;this.ha=d;this.X=a;if(d=Yc(a,"drives"))this.ua=d;else if(this.Fa)try{this.ua=eval("("+this.Fa+")")}catch(e){w("HDC drive configuration error: "+e.message+" ("+this.Fa+")")}this.N=Jb(a,"ChipSet");this.U=0;this.Ga=3;qc(b,this,this.ia?Sp:Tp);yc(b,this,this.ia?Up:Vp);this.ia&&(this.U++,this.N&&5180==this.N.ja&&this.U++,this.Ga=2,b.aa[496]=2,b.ea[496]=2);lf(c,19,this.Nm.bind(this));lf(c,64,this.Om.bind(this));this.reset();Wp(this)||xb(this)};
|
||||
l.Ic=function(a,b,c,d){this.ga=b;this.F=c;this.ha=d;this.X=a;if(d=Yc(a,"drives"))this.ua=d;else if(this.Ea)try{this.ua=eval("("+this.Ea+")")}catch(e){w("HDC drive configuration error: "+e.message+" ("+this.Ea+")")}this.N=Jb(a,"ChipSet");this.U=0;this.Ga=3;qc(b,this,this.ia?Sp:Tp);yc(b,this,this.ia?Up:Vp);this.ia&&(this.U++,this.N&&5180==this.N.ja&&this.U++,this.Ga=2,b.aa[496]=2,b.ea[496]=2);lf(c,19,this.Nm.bind(this));lf(c,64,this.Om.bind(this));this.reset();Wp(this)||xb(this)};
|
||||
l.hc=function(a,b){if(!b)if(!a||!this.restore)Xp(this),this.X.lh&&Wp(this,!0);else if(!this.restore(a))return!1;return!0};l.gc=function(a){return a?this.save():!0};l.gf=function(){return this.X?this.X.gf():""};l.ie=function(){return this.X?this.X.ie():""};l.reset=function(){Xp(this,null,!0)};l.save=function(){var a=new qf(this);a.set(0,Yp(this));return a.data()};l.restore=function(a){return Xp(this,a[0])};
|
||||
function Xp(a,b,c){var d=0,e=!0;a.hb=-1;if(a.ia){if(b||(b=[0,0,0,0,0,0,0,64,0,[0,-1]]),a.W=b[d++],a.Pa=b[d++],a.aa=b[d++],a.Ca=b[d++],a.ya=b[d++],a.va=b[d++],a.ra=b[d++],a.ma=b[d++],a.Da=b[d++],a.fa=b[d++],"object"==typeof a.fa){var f=a.fa;a.fa=f[0];a.hb=f[1]}}else b||(b=[0,0,Array(14),0,0]),a.pa=b[d++],a.ma=b[d++],a.V=b[d++],a.L=b[d++],a.C=b[d++],a.Oa=b[d++],a.Ka=b[d++],a.Ja=b[d++],f=b[d++],void 0!==f?a.ka=f:void 0===a.ka&&(a.ka=-1);void 0===a.A&&(a.A=Array(a.ua.length));b=b[d];void 0===b&&(b=[]);
|
||||
for(d=0;d<a.A.length;d++){void 0===a.A[d]&&(a.A[d]={});var f=a.A[d],g=a,h=d,k=f,m=a.ua[d],n=b[d],t=c,q=0,A=!0;n||(n=[0,0,!1,Array(8)]);k.hb=h;k.errorCode=n[q++];k.Vk=n[q++];k.cf=n[q++];k.Te=n[q++];k.Ue=n[q++];k.kb=n[q++];k.ub=n[q++];k.be=n[q++];k.xb=n[q++];k.fe=n[q++];k.Hb=n[q++];k.rg=g.ia?0:1;k.name=m.name;void 0===k.name&&(k.name="Hard Drive");k.path=m.path;k.mode=m.mode||(k.path?"preload":"local");"demandro"!=k.mode&&"demandrw"!=k.mode||g.ie()||(k.mode="local");k.type=m.type;if(void 0===k.type||
|
||||
|
|
@ -744,15 +744,15 @@ l.Sm=function(a){var b=this.F,c=b.G&255,d=b.G>>8&255,e=b.H&65535,f=b.I&65535,g=b
|
|||
l.Pb=function(a,b,c){var d=this;switch(b){case "debugInput":return this.Ka=this.qa[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",Aq(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.A<d.C.length-1&&(b=d.C[++d.A])):40==a.keyCode&&(0<d.A?b=d.C[--d.A]:(b="",d.A=-1)),null!=b){var e=b.length;c.value=b;c.setSelectionRange(e,e)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.qa[b]=c,Qa(c,function(){if(d.Ka){var a=d.Ka.value;
|
||||
d.Ka.value="";Aq(d,a,!0);return!0}return!1}),!0;case "step":return this.qa[b]=c,Qa(c,function(a){var b=!1;wb(d,!0)||(vb(d,!0),b=d.wf(a?1:0),vb(d,!1));return b}),!0}return!1};l.wd=function(){this.Ka&&this.Ka.focus()};function er(a){return a.F&&!!(a.F.$a&1)&&!(a.F.ca&131072)}
|
||||
function Rq(a,b,c){var d=er(a)?2:1;c||(c=d);if(c==d){if(b===a.F.wa.Z)return a.F.wa;if(b===a.F.vb.Z)return a.F.vb;if(b===a.F.Xa.Z)return a.F.Xa;if(b===a.F.ta.Z)return a.F.ta;if(80386<=a.F.ja){if(b===a.F.Nb.Z)return a.F.Nb;if(b===a.F.Ob.Z)return a.F.Ob}if(a.gb&&2==c||!a.bc)return null}a=a.bc;if(2!=c)a.uh(b),a.Ta=65535,a.Zb=65536;else{var e;c=a.F;b&=65535;b&4?(d=c.Bc.Aa,e=d+c.Bc.Ta|0):(d=c.Ec,e=c.zd);d=d+(b&65528)|0;if(e-d|0){e=Qf(c,d+0,2);var f=Qf(c,d+4,2),g=f&7936,h=Qf(c,d+2,2)|(f&255)<<16,k=Qf(c,
|
||||
d+6,2);80386<=c.ja&&(h|=(k&65280)<<16,e|=(k&15)<<16,k&128&&(e=e<<12|4095));a.Z=b;a.Aa=h;a.Ta=e;a.Zb=(e>>>0)+1;a.wb=f;a.type=g;a.ext=k;a.Xb=d;ld(a,!0,!0,!1)}}return a}l.cc=function(a,b,c){var d=a&&a.Ea;if(null==d&&(d=-1,a)){var e=Rq(this,a.Z,a.type);e&&(b=a.Ra||0,c=c||1,d=e=-1===e.Xb||e.bd&&(b>>>0)+c>e.Zb||!e.bd&&(b>>>0)+c<=e.Zb?e.Aa+b|0:-1,a.Ea=d)}return d};l.Qa=function(a,b){var c=255,d=this.cc(a,!1,1);-1!==d&&(c=Qf(this.F,d,1,5==a.type)|0,b&&fr(this,a,b));return c};
|
||||
d+6,2);80386<=c.ja&&(h|=(k&65280)<<16,e|=(k&15)<<16,k&128&&(e=e<<12|4095));a.Z=b;a.Aa=h;a.Ta=e;a.Zb=(e>>>0)+1;a.wb=f;a.type=g;a.ext=k;a.Xb=d;ld(a,!0,!0,!1)}}return a}l.cc=function(a,b,c){var d=a&&a.Fa;if(null==d&&(d=-1,a)){var e=Rq(this,a.Z,a.type);e&&(b=a.Ra||0,c=c||1,d=e=-1===e.Xb||e.bd&&(b>>>0)+c>e.Zb||!e.bd&&(b>>>0)+c<=e.Zb?e.Aa+b|0:-1,a.Fa=d)}return d};l.Qa=function(a,b){var c=255,d=this.cc(a,!1,1);-1!==d&&(c=Qf(this.F,d,1,5==a.type)|0,b&&fr(this,a,b));return c};
|
||||
l.tb=function(a,b){return a.Rb?this.oa(a,b?4:0):this.na(a,b?2:0)};l.na=function(a,b){var c=65535,d=this.cc(a,!1,2);-1!==d&&(c=Qf(this.F,d,2,5==a.type),b&&fr(this,a,b));return c};l.oa=function(a,b){var c=-1,d=this.cc(a,!1,4);-1!==d&&(c=Qf(this.F,d,4,5==a.type),b&&fr(this,a,b));return c};l.qc=function(a,b,c,d){var e=this.cc(a,!0,1);if(-1!==e){if(5!=a.type)this.F.qc(e,b);else{var f=this.ga;f.sa[(e&f.Gb)>>>f.La].xf(e&f.A,b&255,e)}c&&fr(this,a,c);d||ad(this.F,!0)}};
|
||||
l.jb=function(a,b,c){var d=this.cc(a,!0,2);-1!==d&&(5!=a.type?this.F.jb(d,b):nc(this.ga,d,b),c&&fr(this,a,c),ad(this.F,!0))};function wq(a,b,c,d,e,f,g){return gr(a,{},b,c,d,e,f,g)}function gr(a,b,c,d,e,f,g,h){b.Ra=c||0;b.Z=d;b.Ea=e;b.type=f||(er(a)?2:1);b.Rb=null!=g?g:a.F&&4==a.F.wa.ba;b.oc=null!=h?h:a.F&&4==a.F.wa.Tc;b.Vd=!1;return b}function hr(a){return[a.Ra,a.Z,a.Ea,a.Vd,a.Rb,a.oc,a.Ve,a.jh]}function ir(a){return{Ra:a[0],Z:a[1],Ea:a[2],Vd:a[3],Rb:a[4],oc:a[5],Ve:a[6],jh:a[7]}}
|
||||
l.jb=function(a,b,c){var d=this.cc(a,!0,2);-1!==d&&(5!=a.type?this.F.jb(d,b):nc(this.ga,d,b),c&&fr(this,a,c),ad(this.F,!0))};function wq(a,b,c,d,e,f,g){return gr(a,{},b,c,d,e,f,g)}function gr(a,b,c,d,e,f,g,h){b.Ra=c||0;b.Z=d;b.Fa=e;b.type=f||(er(a)?2:1);b.Rb=null!=g?g:a.F&&4==a.F.wa.ba;b.oc=null!=h?h:a.F&&4==a.F.wa.Tc;b.Vd=!1;return b}function hr(a){return[a.Ra,a.Z,a.Fa,a.Vd,a.Rb,a.oc,a.Ve,a.jh]}function ir(a){return{Ra:a[0],Z:a[1],Fa:a[2],Vd:a[3],Rb:a[4],oc:a[5],Ve:a[6],jh:a[7]}}
|
||||
function jr(a,b,c){if(null!=b.Z&&(a=Rq(a,b.Z,b.type))){var d=b.Ra&a.Ba;if(!a.bd){if(d>>>0>=a.Zb)return!1}else if(d>>>0<a.Zb)return!1;c&&(b.Ra=d,b.Rb=4==a.ba,b.oc=4==a.Tc)}return!0}
|
||||
function kr(a,b,c,d){var e,f=c?a.aa:a.Db;c=d?0:f.type;var g=f.Ra,h=f.Z,f=f.Ea;if(void 0!==b){b=qq(a,b);e=b.charAt(0);f=b.indexOf(":");switch(e){case "&":c=1;break;case "#":c=2;break;case "%":c=4;e=b.charAt(1);"%"==e&&(c=5,e+=e);g=0;h=null;break;default:0<=f&&(c=0),e=""}e&&(b=b.substr(e.length),f-=e.length);e=b;var k;if(e.match(/^[a-z_][a-z0-9_]*$/i))for(var m=e.toUpperCase(),n=0;n<a.N.length;n++){e=a.N[n];var t=e.Qd[m];if(void 0!==t){m=t.o;void 0!==m&&(k=t.s,void 0===k&&(k=e.Z),k=wq(a,m,k,t.p));break}}if(e=
|
||||
function kr(a,b,c,d){var e,f=c?a.aa:a.Db;c=d?0:f.type;var g=f.Ra,h=f.Z,f=f.Fa;if(void 0!==b){b=qq(a,b);e=b.charAt(0);f=b.indexOf(":");switch(e){case "&":c=1;break;case "#":c=2;break;case "%":c=4;e=b.charAt(1);"%"==e&&(c=5,e+=e);g=0;h=null;break;default:0<=f&&(c=0),e=""}e&&(b=b.substr(e.length),f-=e.length);e=b;var k;if(e.match(/^[a-z_][a-z0-9_]*$/i))for(var m=e.toUpperCase(),n=0;n<a.N.length;n++){e=a.N[n];var t=e.Qd[m];if(void 0!==t){m=t.o;void 0!==m&&(k=t.s,void 0===k&&(k=e.Z),k=wq(a,m,k,t.p));break}}if(e=
|
||||
k)return e;0>f?null!=h?(g=pq(a,b,void 0),f=null):(f=pq(a,b,void 0),null==f&&(g=null)):(h=pq(a,b.substring(0,f),void 0),g=pq(a,b.substring(f+1),void 0),f=null)}null!=g&&(e=wq(a,g,h,f,c),d||jr(a,e,!0)||(a.O("invalid offset: "+dr(e)),e=null));return e}function lr(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.ll=a.Ng(b.Sk=c[2]))}l.Pk=function(a,b){var c=kr(this,b);return a.replace("["+b+"]",c?r(this.tb(c),c.Rb?8:4):"undefined")};
|
||||
function fr(a,b,c){c=c||1;null!=b.Ea&&(b.Ea+=c);null!=b.Z&&(b.Ra+=c,jr(a,b)||(b.Ra=0,b.Ea=null))}function Uq(a,b,c){return null!=b?r(b,4)+":"+r(a,a&-65536||c?8:4):r(a)}function dr(a){var b;switch(a.type){case 1:case 3:b="&";break;case 2:b="#";break;case 4:b="%";break;case 5:b="%%";break;default:b=a.Z?"":"%"}return 4<=a.type||null==a.Z?b+r(a.Ea):b+Uq(a.Ra,a.Z,a.oc)}
|
||||
function fr(a,b,c){c=c||1;null!=b.Fa&&(b.Fa+=c);null!=b.Z&&(b.Ra+=c,jr(a,b)||(b.Ra=0,b.Fa=null))}function Uq(a,b,c){return null!=b?r(b,4)+":"+r(a,a&-65536||c?8:4):r(a)}function dr(a){var b;switch(a.type){case 1:case 3:b="&";break;case 2:b="#";break;case 4:b="%";break;case 5:b="%%";break;default:b=a.Z?"":"%"}return 4<=a.type||null==a.Z?b+r(a.Fa):b+Uq(a.Ra,a.Z,a.oc)}
|
||||
function Vq(a,b,c){var d="";for(c=c||256;d.length<c;){var e=a.Qa(b,1);if(!e||36==e||127<=e)break;d+=32<=e?String.fromCharCode(e):"."}return d}
|
||||
function Qq(a,b,c,d){var e=0,f=0,g=b.length;if(c){e=a.cc(kr(a,c));if(-1===e){a.O("invalid address: "+c);return}f=e>>>a.F.La;g=1}a.O("blockid "+(d?"linear ":"physical")+" blockaddr used size type");a.O("-------- --------- ---------- ------ ------ ----");c=-1;for(var h=0;g--;)(d=b[f])&&5==d.type&&(d=Nc(a.F,e,!1,!0)),d.type==c?h++||a.O("..."):(c=d.type,h=Yb[c],6==c&&(d=d.Bd,h+=" -> "+Yb[d.type]),d&&a.O(r(d.id,8)+" %"+r(f<<a.F.La,8)+" %%"+r(d.Ea,8)+" "+v(d.Qe)+" "+v(d.size)+" "+
|
||||
function Qq(a,b,c,d){var e=0,f=0,g=b.length;if(c){e=a.cc(kr(a,c));if(-1===e){a.O("invalid address: "+c);return}f=e>>>a.F.La;g=1}a.O("blockid "+(d?"linear ":"physical")+" blockaddr used size type");a.O("-------- --------- ---------- ------ ------ ----");c=-1;for(var h=0;g--;)(d=b[f])&&5==d.type&&(d=Nc(a.F,e,!1,!0)),d.type==c?h++||a.O("..."):(c=d.type,h=Yb[c],6==c&&(d=d.Bd,h+=" -> "+Yb[d.type]),d&&a.O(r(d.id,8)+" %"+r(f<<a.F.La,8)+" %%"+r(d.Fa,8)+" "+v(d.Qe)+" "+v(d.size)+" "+
|
||||
h),c!=Ec&&5!=c&&(c=-1),h=0),e+=a.F.Sb,f++}function mr(a,b,c){a=r(a)+" "+r(b)+" ";a=a+(c&&b&64?"D":"-")+(b&32?"A":"-")+(b&4?"U":"S");a+=b&2?"W":"R";return a+=b&1?"P":"N"}
|
||||
var Sq={256:["tss286",!1],512:["ldt",!1],768:["busy tss286",!1],1024:["call gate",!0],1280:["task gate",!0],1536:["int gate286",!0],1792:["trap gate286",!0],2304:["tss386",!1],2816:["busy tss386",!1],3072:["call gate386",!0],3584:["int gate386",!0],3840:["trap gate386",!0]},Wq={PREV_TSS:0,CPL0_SP:2,CPL0_SS:4,CPL1_SP:6,CPL1_SS:8,CPL2_SP:10,CPL2_SS:12,TASK_IP:14,TASK_PS:16,TASK_AX:18,TASK_CX:20,TASK_DX:22,TASK_BX:24,TASK_SP:26,TASK_BP:28,TASK_SI:30,TASK_DI:32,TASK_ES:34,TASK_CS:36,TASK_SS:38,TASK_DS:40,
|
||||
TASK_LDT:42},Xq={PREV_TSS:0,CPL0_ESP:4,CPL0_SS:8,CPL1_ESP:12,CPL1_SS:16,CPL2_ESP:20,CPL2_SS:24,TASK_CR3:28,TASK_EIP:32,TASK_PS:36,TASK_EAX:40,TASK_ECX:44,TASK_EDX:48,TASK_EBX:52,TASK_ESP:56,TASK_EBP:60,TASK_ESI:64,TASK_EDI:68,TASK_ES:72,TASK_CS:76,TASK_SS:80,TASK_DS:84,TASK_FS:88,TASK_GS:92,TASK_LDT:96,TASK_IOPM:100};
|
||||
|
|
@ -765,30 +765,30 @@ function or(a,b){b=qq(a,b);for(var c=0,d,e;0<=(c=b.indexOf("@",c));)e=a.oh(b,c+1
|
|||
e+' "'+Vq(a,d,11)+'"',b=b.replace("^"+e,d),c+=d.length):c++;return b}l.message=function(a,b){b&&(a+=" at "+dr(wq(this,M(this.F),this.F.wa.Z))+" (%"+r(this.F.Ha)+")");this.Pa&&a==this.Pa||(this.Pa=a,this.wc&-2147483648&&(this.Wb(),a+=" (cpu halted)"),this.O(a),this.F&&(a=this.F,a.fb-=a.A,a.A=0,a.Y.mf=0,ad(a)))};
|
||||
function pk(a,b,c,d){var e,f;if(!d&&(d=z(a,1)&&0>Cq.indexOf(b),!d)){var g=Bq[b];g&&(d=z(a,g)?!0:524288==g&&z(a,g=1048576))}d&&(e=a.F.G>>8&255,f=a.F.M&255,33==b&&11==e||524288==g&&128<=f||1048576==g&&128>f)&&(d=!1);d&&((g=(g=Db[b])&&g[e]||"")&&(g=" "+or(a,g)),a.message("INT "+u(b)+": AH="+u(e)+" at "+Uq(c-2-a.F.wa.Aa,a.F.wa.Z)+g));return d}
|
||||
function ub(a,b,c,d,e,f,g,h){h|=256;if(null==e||(a.wc&h)==h)h=null,null!=e&&(h=a.F.wa.Z,e-=a.F.wa.Aa),a.message(b.xd+"."+(null!=d?"outPort":"inPort")+"("+v(c)+","+(f?f:"unknown")+(null!=d?","+u(d):"")+")"+(null!=g?": "+u(g):"")+(null!=e?" at "+Uq(e,h):""))}l.qh=function(){this.O("Type ? for help with PCx86 Debugger commands");this.pd();if(this.qb){var a=this.qb;this.qb=null;Aq(this,a)}};
|
||||
function yq(a,b){var c;if(ag(a)){if(!a.ia||!a.ia.length){a.ia=Array(1E3);for(c=0;c<a.ia.length;c++)a.ia[c]=wq(a);a.Fa=0;b||a.O("instruction history buffer allocated")}if(!a.W||!a.W.length)for(a.W=Array(256),c=0;c<a.W.length;c++)a.W[c]=[c,0]}else a.ia&&a.ia.length&&!b&&a.O("instruction history buffer freed"),a.Fa=0,a.ia=[],a.W=[]}l.Ne=function(a){if(!pr(this))return!1;this.F.Ne(a);return!0};
|
||||
function yq(a,b){var c;if(ag(a)){if(!a.ia||!a.ia.length){a.ia=Array(1E3);for(c=0;c<a.ia.length;c++)a.ia[c]=wq(a);a.Ea=0;b||a.O("instruction history buffer allocated")}if(!a.W||!a.W.length)for(a.W=Array(256),c=0;c<a.W.length;c++)a.W[c]=[c,0]}else a.ia&&a.ia.length&&!b&&a.O("instruction history buffer freed"),a.Ea=0,a.ia=[],a.W=[]}l.Ne=function(a){if(!pr(this))return!1;this.F.Ne(a);return!0};
|
||||
l.wf=function(a,b,c){if(!pr(this))return!1;this.ea=0;do{a||ag(this)&&dg(this,this.F.Ha,0);try{var d=this.F.wf(a);0<d&&(this.ea+=d,fd(this.F,d,!0),bd(this.F,d),this.pa++)}catch(f){if("number"!=typeof f){var e=f;this.ea=0;zb(this.F,e.stack||e.message)}}}while(this.F.S&3312);!1!==c&&ad(this.F);this.pd(b||!1);return 0<this.ea};l.Wb=function(a){this.F&&this.F.Wb(a)};l.pd=function(a){void 0===a&&(a=!0);this.aa=wq(this,M(this.F),this.F.wa.Z);a&&1!=this.U?qr(this):rr(this)};
|
||||
function pr(a){var b;if(b=a.F&&yb(a.F))b=a.F,b.la.ic?b=!0:(b.O(b.toString()+" not powered"),b=!1);b&&!wb(a.F)?(a=a.F,a.la.error?(a.O(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}l.hc=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};l.gc=function(a,b){b&&this.O(a?"suspending":"shutting down");return a?this.save():!0};l.reset=function(a){yq(this);this.pa=this.Ca=0;this.Pa=null;this.ea=0;this.aa=wq(this,M(this.F),this.F.wa.Z);this.la.Ib=!1;sr(this);a||this.pd()};
|
||||
l.save=function(){var a=new qf(this);a.set(0,hr(this.aa));a.set(1,hr(this.ua));a.set(2,[this.C,this.va,this.wc]);a.set(3,this.N);return a.data()};l.restore=function(a){var b=0;void 0!==a[2]&&(this.aa=ir(a[b++]),this.ua=ir(a[b++]),this.C=a[b][0],"string"==typeof this.C&&(this.C=[this.C]),this.va=a[b][1],this.wc|=a[b][2]);a[3]&&(this.N=a[3]);return!0};l.start=function(a,b){this.U||this.O("running");this.la.Ib=!0;this.uc=a;this.vd=b};
|
||||
l.stop=function(a,b){if(this.la.Ib){this.la.Ib=!1;this.ea=b-this.vd;if(!this.U){b="stopped";if(this.ea){a-=this.uc;var c=0<a?Math.round(1E3*this.ea/a):0;b+=" (";ag(this)&&(b+=this.pa+" opcodes, ",this.Ca-=this.pa,this.pa=0);b+=this.ea+" cycles, "+a+" ms, "+c+" hz)"}else z(this,-2147483648)&&(b+=" (use the 't' command to execute blocked faults)");this.O(b)}this.pd(!0);this.wd();sr(this,this.F.Ha)}};function ag(a){return 1<a.B.length||!!a.Oa||z(a,16)}
|
||||
function dg(a,b,c){var d=a.F;if(0<c&&(a.Oa&&!--a.Oa||tr(a,b,1,a.B)))return!0;0<=c&&a.W.length&&(a.pa++,b=Qf(d,b),null!=b&&(a.W[b][1]++,gr(a,a.ia[a.Fa],M(d),d.wa.Z),++a.Fa==a.ia.length&&(a.Fa=0)));return!1}function Kc(a,b,c){return tr(a,b,c||1,a.ra)?(a.Wb(!0),!0):!1}function Mc(a,b,c){return tr(a,b,c||1,a.fa)?(a.Wb(!0),!0):!1}function wc(a,b,c){a.O("break on input from port "+v(b)+": "+r(c));a.Wb(!0)}function Ac(a,b,c){a.O("break on output to port "+v(b)+": "+r(c));a.Wb(!0)}
|
||||
function dg(a,b,c){var d=a.F;if(0<c&&(a.Oa&&!--a.Oa||tr(a,b,1,a.B)))return!0;0<=c&&a.W.length&&(a.pa++,b=Qf(d,b),null!=b&&(a.W[b][1]++,gr(a,a.ia[a.Ea],M(d),d.wa.Z),++a.Ea==a.ia.length&&(a.Ea=0)));return!1}function Kc(a,b,c){return tr(a,b,c||1,a.ra)?(a.Wb(!0),!0):!1}function Mc(a,b,c){return tr(a,b,c||1,a.fa)?(a.Wb(!0),!0):!1}function wc(a,b,c){a.O("break on input from port "+v(b)+": "+r(c));a.Wb(!0)}function Ac(a,b,c){a.O("break on output to port "+v(b)+": "+r(c));a.Wb(!0)}
|
||||
function xq(a){var b,c;a.B=["bp"];if(a.ra)for(b=1;b<a.ra.length;b++)c=a.ra[b],we(a.F,a.cc(c),!1,5==c.type);a.ra=["br"];if(a.fa)for(b=1;b<a.fa.length;b++)c=a.fa[b],we(a.F,a.cc(c),!0,5==c.type);a.fa=["bw"];a.gb=0}
|
||||
l.Rd=function(a,b,c){var d=!0;c||cr(this,a,b,!1,!0);if(a!=this.B){var e=this.cc(b);if(-1===e)this.O("invalid address: "+dr(b)),d=!1;else{var f=this.F,g=5==b.type;(g?f.kd:f.sa)[e>>>f.La].Rd(e&f.Fa,a==this.fa);g&&Xb(f)}}d&&(a.push(b),c?(null!=b.Ea&&(b.Z=null),b.Vd=!0):(ur(this,a,a.length-1,"set"),yq(this)));return d};
|
||||
l.Rd=function(a,b,c){var d=!0;c||cr(this,a,b,!1,!0);if(a!=this.B){var e=this.cc(b);if(-1===e)this.O("invalid address: "+dr(b)),d=!1;else{var f=this.F,g=5==b.type;(g?f.kd:f.sa)[e>>>f.La].Rd(e&f.Ea,a==this.fa);g&&Xb(f)}}d&&(a.push(b),c?(null!=b.Fa&&(b.Z=null),b.Vd=!0):(ur(this,a,a.length-1,"set"),yq(this)));return d};
|
||||
function cr(a,b,c,d,e){for(var f=!1,g=vr(a,a.cc(c)),h=1;h<b.length;h++){var k=b[h];if(-1!==g&&g==vr(a,a.cc(k))||-1===g&&c.Z==k.Z&&c.Ra==k.Ra)if(!d||k.Vd){f=!0;k.Vd||e||ur(a,b,h,"cleared");b.splice(h,1);b!=a.B&&we(a.F,g,b==a.fa,5==k.type);k.Vd||yq(a);break}}return f}function wr(a,b){for(var c=1;c<b.length;c++)ur(a,b,c);return b.length-1}function ur(a,b,c,d){c=b[c];a.O(b[0]+" "+dr(c)+(d?" "+d:c.Sk?' "'+c.Sk+'"':""))}
|
||||
function sr(a,b){if(void 0!==b)tr(a,b,1,a.B,!0),a.U=0;else for(b=1;b<a.B.length;b++){var c=a.B[b];if(c.Vd){if(!cr(a,a.B,c,!0))break;b=0}}}function vr(a,b){-1!==b&&(a=a.Ba&-65536,(b&a)==a&&(b&=1048575));return b}
|
||||
function tr(a,b,c,d,e){var f=!1;if(!a.gb++){b=vr(a,b);z(a,-2147483632)&&204==Qf(a.F,b)&&(f=!0);for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.Vd){null!=h.Z&&(h.Ea=null);for(var k=vr(a,a.cc(h)),m=0;m<c;m++)if(b+m==k){var n,f=!0;h.Vd&&(cr(a,d,h,!0),e=!0);if(n=h.ll){for(var f=!1,t=0;t<n.length;t++)if(!xr(a,n[t],!0)){if(n[t].indexOf("if")){f=!0;break}for(var q=t+1;q<n.length&&n[q].indexOf("else");q++)t++;if(q==n.length){f=!0;break}}a.F.la.Ib||(f=!0)}if(f){e||ur(a,d,g,"hit");break}}}}}a.gb--;return f}
|
||||
function yr(a,b,c,d){for(var e=wq(a,b.Ra,b.Z,b.Ea,b.type),f=a.Qa(b,1),g=4,h=0,k=!1,m=!1;(102==f||103==f)&&g--;)102==f?k||(b.Rb=!b.Rb,k=!0):m||(b.oc=!b.oc,m=!0),h++,f=a.Qa(b,1);var g=-1,n=Eq,k=a.Ga[f],m=k[0];176==m&&(m=a.Qa(b,1),k=Nq[m]||Kq,f|=m<<8,m=k[0]);if(36==m){var g=a.Qa(b,1),t;t=null;var q=g>>3&7,A=(3>(g>>6&3)?0:48)+q;(217==f||219==f)&&52<=A&&(A=q<<4|g&7);(q=Oq[f])&&(t=q[A]);t&&(n=Fq,k=t,m=k[0])}m>=n.length&&(g=a.Qa(b,1),k=Pq[m-n.length][g>>3&7],m=k[0]);n=n[m];q=k.length-1;t="";b.Rb&&(18==m?
|
||||
function tr(a,b,c,d,e){var f=!1;if(!a.gb++){b=vr(a,b);z(a,-2147483632)&&204==Qf(a.F,b)&&(f=!0);for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.Vd){null!=h.Z&&(h.Fa=null);for(var k=vr(a,a.cc(h)),m=0;m<c;m++)if(b+m==k){var n,f=!0;h.Vd&&(cr(a,d,h,!0),e=!0);if(n=h.ll){for(var f=!1,t=0;t<n.length;t++)if(!xr(a,n[t],!0)){if(n[t].indexOf("if")){f=!0;break}for(var q=t+1;q<n.length&&n[q].indexOf("else");q++)t++;if(q==n.length){f=!0;break}}a.F.la.Ib||(f=!0)}if(f){e||ur(a,d,g,"hit");break}}}}}a.gb--;return f}
|
||||
function yr(a,b,c,d){for(var e=wq(a,b.Ra,b.Z,b.Fa,b.type),f=a.Qa(b,1),g=4,h=0,k=!1,m=!1;(102==f||103==f)&&g--;)102==f?k||(b.Rb=!b.Rb,k=!0):m||(b.oc=!b.oc,m=!0),h++,f=a.Qa(b,1);var g=-1,n=Eq,k=a.Ga[f],m=k[0];176==m&&(m=a.Qa(b,1),k=Nq[m]||Kq,f|=m<<8,m=k[0]);if(36==m){var g=a.Qa(b,1),t;t=null;var q=g>>3&7,A=(3>(g>>6&3)?0:48)+q;(217==f||219==f)&&52<=A&&(A=q<<4|g&7);(q=Oq[f])&&(t=q[A]);t&&(n=Fq,k=t,m=k[0])}m>=n.length&&(g=a.Qa(b,1),k=Pq[m-n.length][g>>3&7],m=k[0]);n=n[m];q=k.length-1;t="";b.Rb&&(18==m?
|
||||
n="CWDE":28==m?n="CDQ":104<=m&&107>=m&&(n+="D"));if(164<=f&&167>=f||170<=f&&175>=f)q=0,b.Rb&&"W"==n.slice(-1)&&(n=n.slice(0,-1)+"D");for(var f=-1,A=!0,F=1;F<=q;F++){var C,D;C="";D=k[F];if(void 0!==D){0>f&&(f=D>>14);80==m&&(2==f?t="[%800]":3==f&&(t="ES:["+(b.oc?"E":"")+"DI]"));var L=D&15;if(L)if(8==L)A=!1;else{var G=D&240;if(128<=G)if(0>g&&(g=a.Qa(b,1)),160>G){G=a;C=D;var ga=q;D=b;var S="",ab=g>>6,la=g&7;if(3>ab){L=!n.indexOf("FI");if(!ab&&(!D.oc&&6==la||D.oc&&5==la))ab=2;else{if(D.oc)if(4!=la)la+=
|
||||
8;else{var S=G,Ja=ab,Da=D,Wa=S.Qa(Da,1),Ka=Wa>>6,Vb=Wa>>3&7,Wa=Wa&7,Pa="";if(Ja||5!=Wa)Pa=Jq[Wa+8];4!=Vb&&(Pa&&(Pa+="+"),Pa+=Jq[Vb+8],Ka&&(Pa+="*"+(1<<Ka)));Ja||5!=Wa||(Pa&&(Pa+="+"),Pa+=r(S.oa(Da,4)));S=Pa}S||(S=Jq[la])}1==ab?(G=G.Qa(D,1),S=G&128?S+("-"+r(-(G<<24>>24),2)):S+("+"+r(G,2))):2==ab&&(S&&(S+="+"),D.oc?(G=G.oa(D,4),S+=r(G)):(G=G.na(D,2),S+=r(G,4)));S="["+S+"]";if(1==ga){G="";C&=15;4==C&&(C=D.Rb?5:3);switch(C){case 7:G="FAR";break;case 1:G="BYTE";break;case 3:if(L){G="INT16";break}G="WORD";
|
||||
break;case 5:G="DWORD";break;case 11:if(L){G="INT32";break}case 11:G="REAL32";break;case 12:if(L){G="INT64";break}case 12:G="REAL64";break;case 13:G="REAL80";break;case 14:G="BCD80"}G&&(S=G+" "+S)}}else S=zr(G,la,C,D);C=S}else C=160==G?zr(a,g&7,D,b):zr(a,g>>3&7,D,b);else if(16==G)C="1";else if(G)32==G?(b.oc?(C=8,D=a.oa(b,4)):(C=4,D=a.na(b,2)),C="["+r(D,C)+"]"):48==G?(C=1==L?a.Qa(b,1)<<24>>24:a.tb(b,!0),D=b.Ra+C&(b.Rb?-1:65535),C=r(D,b.Rb?8:4),D=Ar(a,wq(a,D,b.Z)),D[0]&&(C+=" ("+D[0]+")")):96==G?C=
|
||||
9==L?"ST":10==L?"ST("+(g&7)+")":zr(a,(D&3840)>>8,D,b):112==G?C=zr(a,(D&3840)>>8,192,b):64==G?C="DS:[SI]":80==G&&(C="ES:[DI]");else{C=a;L=D;G=b;D=" ";switch(L&15){case 1:L&12288&&(D=r(C.Qa(G,1),2));break;case 2:D=r(C.Qa(G,1)<<24>>24,G.Rb?8:4);break;case 4:if(G.Rb){D=r(C.oa(G,4));break}case 3:D=r(C.na(G,2),4);break;case 7:G=wq(C,C.tb(G,!0),C.na(G,2),null,G.type,G.Rb,G.oc);D=dr(G);C=Ar(C,G);C[0]&&(D+=" ("+C[0]+")");break;default:D="imm("+v(L)+")"}C=D}if(!C||!C.length){t="INVALID";break}0<t.length&&(t+=
|
||||
",");t+=C||"???"}}}g="";k=dr(e)+" ";if(-1!==e.Ea&&-1!==b.Ea){do if(g+=r(a.Qa(e,1),2),null==e.Ea)break;while(e.Ea!=b.Ea)}k+=pa(g,e.oc?24:16);k+=pa(n,8);t&&(k+=" "+t);a.F.ja<Hq[f]&&(c=Hq[f]+" CPU only");c&&A&&(k=pa(k,e.oc?74:56)+";"+c,k=a.F.la.Xe?k+("cycles="+cd(a.F).toString()+" cs="+r(a.F.Y.Lf)):k+(null!=d?"="+d.toString():""));Br(b,A,h);return k}
|
||||
",");t+=C||"???"}}}g="";k=dr(e)+" ";if(-1!==e.Fa&&-1!==b.Fa){do if(g+=r(a.Qa(e,1),2),null==e.Fa)break;while(e.Fa!=b.Fa)}k+=pa(g,e.oc?24:16);k+=pa(n,8);t&&(k+=" "+t);a.F.ja<Hq[f]&&(c=Hq[f]+" CPU only");c&&A&&(k=pa(k,e.oc?74:56)+";"+c,k=a.F.la.Xe?k+("cycles="+cd(a.F).toString()+" cs="+r(a.F.Y.Lf)):k+(null!=d?"="+d.toString():""));Br(b,A,h);return k}
|
||||
function zr(a,b,c,d){var e=c&240;if(192==e){if(5<b||4<=b&&80386>a.F.ja)return"??";b+=16}else if(208==e)b+=32;else if(224==e)b+=40;else if(240==e)b+=48;else if(a=c&15,3<=a&&(8>b&&(b+=8),5==a||4==a&&d.Rb))b+=16;return Iq[b]}
|
||||
function Cr(a,b){switch(b){case "V":a=Cf(a.F);break;case "D":a=a.F.ca&1024;break;case "I":a=a.F.ca&512;break;case "T":a=a.F.ca&256;break;case "S":a=Bf(a.F);break;case "Z":a=Af(a.F);break;case "A":a=zf(a.F);break;case "P":a=yf(a.F);break;case "C":a=xf(a.F);break;default:a=0}return b+(a?"1":"0")+" "}function Tq(a){return r(a,a&-65536?8:4)}function Dr(a,b){8<=b&&15>=b&&4<a.Ja&&(b+=16);var c=Iq[b];32==b&&80286==a.F.ja&&(c="MS");return c+"="+nr(a,b)+" "}
|
||||
function Er(a,b,c){return b.kc+"="+r(b.Z,4)+(c?"["+r(b.Aa,a.Da)+","+Tq(b.Ta)+"]":"")}function Fr(a,b,c,d,e){return b+"="+(null!=c?r(c,4):"")+"["+r(d,a.Da)+","+r(e-d,4)+"]"}
|
||||
function Gr(a,b){var c;void 0===b&&(b=er(a));c=Dr(a,8)+Dr(a,11)+Dr(a,9)+Dr(a,10)+(4<a.Ja?"\n":"")+Dr(a,12)+Dr(a,13)+Dr(a,14)+Dr(a,15)+"\n"+Er(a,a.F.ta,b)+" "+Er(a,a.F.vb,b)+" "+Er(a,a.F.Xa,b)+" ";if(b){var d="TR="+r(a.F.Sa.Z,4),e=a.ga,e="A20="+(e.X||e.Dg!=e.Gb?"OFF ":"ON ");80386>a.F.ja&&(d="\n"+d,c+=e,e="");c+="\n"+Er(a,a.F.wa,b)+" ";80386<=a.F.ja&&(e+="\n",c+=Er(a,a.F.Nb,b)+" "+Er(a,a.F.Ob,b)+"\n");c+=Fr(a,"LD",a.F.Bc.Z,a.F.Bc.Aa,a.F.Bc.Aa+a.F.Bc.Ta)+" "+Fr(a,"GD",null,a.F.Ec,a.F.zd)+" "+Fr(a,"ID",
|
||||
null,a.F.Mc,a.F.Sd)+" ";c=c+(d+" "+e)+Dr(a,32);80386<=a.F.ja&&(c+=Dr(a,34)+Dr(a,35))}else 80386<=a.F.ja&&(c+=Er(a,a.F.Nb,b)+" "+Er(a,a.F.Ob,b)+" ");return c+=Dr(a,23)+Cr(a,"V")+Cr(a,"D")+Cr(a,"I")+Cr(a,"T")+Cr(a,"S")+Cr(a,"Z")+Cr(a,"A")+Cr(a,"P")+Cr(a,"C")}l.lj=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0};
|
||||
function fm(a,b,c,d,e,f,g,h){var k={},m=[],n;for(n in h){var t=h[n];"number"==typeof t&&(h[n]=t={o:t});var q=t.o,A=t.s,F=t.a;if(void 0!==q){void 0!==A&&(k.Ra=q,k.Z=A,k.Ea=null,a.cc(k),(k.Ea&-65536)==(a.ga.Dg&-65536)&&(k.Ea&=1048575),t.p=k.Ea);var A=m,q=[q>>>0,n],C=sa(A,q,a.lj);0>C&&A.splice(-(C+1),0,q)}F&&(t.a=F.replace(/''/g,'"'))}a.N.push({jg:b,dn:c,Z:d,Ra:e,Ea:f,Vm:g,Qd:h,Xi:m})}
|
||||
function br(a,b,c){for(var d=0;d<a.N.length;d++){var e=a.N[d];if(!b||e.jg==b)if(b&&c==e.dn||!b&&c==e.Z){a.N.splice(d,1);break}}}function Ar(a,b,c){for(var d=[],e=b.Ra>>>0,f=a.cc(b)>>>0,g=0;g<a.N.length;g++){var h=a.N[g],k=h.Z,m=h.Ra>>>0,n=h.Ea;null!=n&&(n>>>=0);var t=h.Vm;48==k&&(k=40);if(k==b.Z&&e>=m&&e<m+t||null!=n&&f>=n&&f<n+t){b=sa(h.Xi,[e],a.lj);0<=b?Hr(a,g,b,d):c&&(b=~b,Hr(a,g,b-1,d),Hr(a,g,b,d));break}}!d.length&&(a=a.ga.xj(f,!0))&&(d.push(a),d.push(f));return d}
|
||||
function fm(a,b,c,d,e,f,g,h){var k={},m=[],n;for(n in h){var t=h[n];"number"==typeof t&&(h[n]=t={o:t});var q=t.o,A=t.s,F=t.a;if(void 0!==q){void 0!==A&&(k.Ra=q,k.Z=A,k.Fa=null,a.cc(k),(k.Fa&-65536)==(a.ga.Dg&-65536)&&(k.Fa&=1048575),t.p=k.Fa);var A=m,q=[q>>>0,n],C=sa(A,q,a.lj);0>C&&A.splice(-(C+1),0,q)}F&&(t.a=F.replace(/''/g,'"'))}a.N.push({jg:b,dn:c,Z:d,Ra:e,Fa:f,Vm:g,Qd:h,Xi:m})}
|
||||
function br(a,b,c){for(var d=0;d<a.N.length;d++){var e=a.N[d];if(!b||e.jg==b)if(b&&c==e.dn||!b&&c==e.Z){a.N.splice(d,1);break}}}function Ar(a,b,c){for(var d=[],e=b.Ra>>>0,f=a.cc(b)>>>0,g=0;g<a.N.length;g++){var h=a.N[g],k=h.Z,m=h.Ra>>>0,n=h.Fa;null!=n&&(n>>>=0);var t=h.Vm;48==k&&(k=40);if(k==b.Z&&e>=m&&e<m+t||null!=n&&f>=n&&f<n+t){b=sa(h.Xi,[e],a.lj);0<=b?Hr(a,g,b,d):c&&(b=~b,Hr(a,g,b-1,d),Hr(a,g,b,d));break}}!d.length&&(a=a.ga.xj(f,!0))&&(d.push(a),d.push(f));return d}
|
||||
function Hr(a,b,c,d){var e={},f=a.N[b].Xi,g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.N[b].Qd[h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}function Ir(a){a.Gf&&(a.Gf.value="")}
|
||||
function Jr(a,b){if("?"==b)a.O("frequency commands:"),a.O("\tclear\tclear all frequency counts");else{var c=0;if(a.W)if("clear"==b){for(b=0;b<a.W.length;b++)a.W[b]=[b,0];a.O("frequency data cleared");c++}else if(void 0!==b)a.O("unknown frequency command: "+b),c++;else{var d=a.W.slice();d.sort(function(a,b){return b[1]-a[1]});for(b=0;b<d.length;b++){var e=d[b][0],f=d[b][1];f&&(a.O((Eq[a.Ga[e][0]]+" ").substr(0,5)+" ("+u(e)+"): "+f+" times"),c++)}}c||a.O("no frequency data available")}}
|
||||
function Kr(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return uq(a)||a.O("no variables"),!0;if(!c[2])return uq(a,c[1]);if(!c[3])return delete a.ya[c[1]],!0;b=pq(a,c[3]);return void 0!==b?(a.ya[c[1]]=b,!0):!1}a.O("invalid assignment:"+b);return!1}
|
||||
|
|
@ -801,9 +801,9 @@ a.O("ST"+f+": "+pa(e[2].toFixed(15),24,!0)+" "+r(e[4])+","+r(e[3])+" ["+e[0]+"
|
|||
-65536|g&65535);break;case "BP":a.F.P=a.F.P&-65536|g&65535;break;case "SI":a.F.K=a.F.K&-65536|g&65535;break;case "DI":a.F.J=a.F.J&-65536|g&65535;break;case "DS":Ad(a.F,g);break;case "ES":Bd(a.F,g);break;case "SS":ud(a.F,g);break;case "CS":sf(a.F,g);a.aa=wq(a,M(a.F),a.F.wa.Z);break;case "IP":case "EIP":O(a.F,g);a.aa=wq(a,M(a.F),a.F.wa.Z);break;case "PC":case "PS":Dd(a.F,g);break;case "C":g?Ef(a.F):Ff(a.F);break;case "P":g?(e=a.F,e.resultType&=-3,e.ca|=4):(e=a.F,e.resultType&=-3,e.ca&=-5);break;case "A":g?
|
||||
Mf(a.F):Kf(a.F);break;case "Z":g?Nf(a.F):Lf(a.F);break;case "S":g?(e=a.F,e.resultType&=-17,e.ca|=128):(e=a.F,e.resultType&=-17,e.ca&=-129);break;case "I":g?(e=a.F,e.ca|=512):(e=a.F,e.ca&=-513);break;case "D":g?(e=a.F,e.ca|=1024):(e=a.F,e.ca&=-1025);break;case "V":g?Gf(a.F):Hf(a.F);break;default:var k=!0;if(80286<=a.F.ja)switch(k=!1,h){case "MS":Of(a.F,g);break;case "TR":-1===a.F.Sa.load(g)&&(f=!1);break;default:if(k=!0,80386<=a.F.ja)switch(k=!1,h){case "EAX":a.F.G=g;break;case "EBX":a.F.H=g;break;
|
||||
case "ECX":a.F.I=g;break;case "EDX":a.F.M=g;break;case "ESP":I(a.F,g);break;case "EBP":a.F.P=g;break;case "ESI":a.F.K=g;break;case "EDI":a.F.J=g;break;case "FS":a.F.Nb.load(g);break;case "GS":a.F.Ob.load(g);break;case "CR0":a.F.$a=g;uj.call(a.F,g);break;case "CR2":a.F.se=g;break;case "CR3":a.F.Od=g;Fd.call(a.F,g);break;default:k=!0}}if(k){a.O("unknown register: "+e);return}}if(!f){a.O("invalid value: "+b);return}ad(a.F);a.O("updated registers:")}}a.O(Gr(a,d));c&&(a.aa=wq(a,M(a.F),a.F.wa.Z),rr(a,dr(a.aa)))}}
|
||||
function Nr(a,b){b=qa(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.O(or(a,c[2])):pq(a,b,!0)}function Or(a,b,c){for(var d=null,e=b.Ra,f=e,g=1;6>=g&&e;g++){if(2<g){b.Ra=e;b.Ea=null;var h=yr(a,b);if(0<=h.indexOf("CALL")||c&&0<=h.indexOf("INT")){var k=h.indexOf(" ");if(e+(h.indexOf(" ",k+1)-k-1)/2==f){d=h;break}}}e--}b.Ra=f;return d}function Pr(a,b,c){var d="t"!=b;c=rq(a,c,null,!0)||1;var e=1==c?0:1;"tc"==b&&(e=c,c=1);Oa(c,function(){return vb(a,!0)&&a.wf(e,d,!1)},function(){ad(a.F);vb(a,!1)})}
|
||||
function Nr(a,b){b=qa(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.O(or(a,c[2])):pq(a,b,!0)}function Or(a,b,c){for(var d=null,e=b.Ra,f=e,g=1;6>=g&&e;g++){if(2<g){b.Ra=e;b.Fa=null;var h=yr(a,b);if(0<=h.indexOf("CALL")||c&&0<=h.indexOf("INT")){var k=h.indexOf(" ");if(e+(h.indexOf(" ",k+1)-k-1)/2==f){d=h;break}}}e--}b.Ra=f;return d}function Pr(a,b,c){var d="t"!=b;c=rq(a,c,null,!0)||1;var e=1==c?0:1;"tc"==b&&(e=c,c=1);Oa(c,function(){return vb(a,!0)&&a.wf(e,d,!1)},function(){ad(a.F);vb(a,!1)})}
|
||||
function Br(a,b,c){if(a.jh=b)null!=a.sj&&(a.Rb=a.sj),null!=a.rj&&(a.oc=a.rj),a.sj=a.Rb,a.rj=a.oc;a.Ve=c||0}
|
||||
function rr(a,b,c,d){if(b=kr(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c){d=kr(a,c,!0);if(!d||d.Ra<b.Ra)return;e=d.Ra-b.Ra;if(256<e){a.O("range too large");return}d=-1}c=0;var f;for(Br(b,!0);0<e&&d--;){f=wb(a,!1)||a.U?a.ea:null;var g=null!=f?"cycles":null,h=Ar(a,b),k=b.Ea;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.O(m)}h[3]&&(g=h[3],f=null);f=yr(a,b,g,f);b.jh||d||d++;a.O(f);a.aa=b;e-=b.Ea-k;c++}}}
|
||||
function rr(a,b,c,d){if(b=kr(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c){d=kr(a,c,!0);if(!d||d.Ra<b.Ra)return;e=d.Ra-b.Ra;if(256<e){a.O("range too large");return}d=-1}c=0;var f;for(Br(b,!0);0<e&&d--;){f=wb(a,!1)||a.U?a.ea:null;var g=null!=f?"cycles":null,h=Ar(a,b),k=b.Fa;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.O(m)}h[3]&&(g=h[3],f=null);f=yr(a,b,g,f);b.jh||d||d++;a.O(f);a.aa=b;e-=b.Fa-k;c++}}}
|
||||
l.Ng=function(a,b,c){if(b)if(a){0>this.A&&this.C.length&&(this.A=0);if(0>this.A||a!=this.C[this.A])this.C.splice(0,0,a),this.A=0;this.A--}else a=this.C[this.A+1];b=[];if(a){a=a.toLowerCase().replace(/""/g,"'");var d=0,e=null;c=c||";";for(var f=0;f<=a.length;f++){var g=a.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==c&&!e||!g)b.push(qa(a.substring(d,f))),d=f+1}}return b};
|
||||
function xr(a,b,c){var d=!0;try{if(!b.length||"end"==b)a.va&&(a.O("ended assemble at "+dr(a.ua)),a.aa=a.ua,a.va=!1),b="";else if(!c){var e=">> ";a.F.$a&1&&(e=a.F.ca&131072?"-- ":"## ");a.O(e+b)}var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.Pa=null;if(yb(a)&&0<b.length){a.va&&(b="a "+dr(a.ua)+" "+b);var g=b.replace(/ +/g," ").split(" ");if(g&&g.length)for(var h=g[0],k=h.charAt(0),m=1;m<h.length;m++){var n=h.charAt(m);if("?"==k||"r"==k||"a">n||"z"<n){g[0]=h.substr(m);g.unshift(h.substr(0,m));break}}switch(g[0].charAt(0)){case "a":var t=
|
||||
kr(a,g[1],!0);if(t)if(a.ua=t,void 0===g[2])a.O("begin assemble at "+dr(t)),a.va=!0,ad(a.F);else{var q;a.O("not supported yet");q=[];if(q.length){for(var A=0;A<q.length;A++)a.qc(t,q[A],1);a.O(yr(a,a.ua))}}break;case "b":a:{var F=g[0],C=g[1],D=b;if("?"==C)a.O("breakpoint commands:"),a.O("\tbi [p]\ttoggle break on input port [p]"),a.O("\tbo [p]\ttoggle break on output port [p]"),a.O("\tbp [a]\tset exec breakpoint at addr [a]"),a.O("\tbr [a]\tset read breakpoint at addr [a]"),a.O("\tbw [a]\tset write breakpoint at addr [a]"),
|
||||
|
|
@ -812,14 +812,14 @@ a.B,ga)||cr(a,a.ra,ga)||cr(a,a.fa,ga)||a.O("breakpoint missing: "+dr(ga)):"i"==L
|
|||
(Ka&&(Ka+=","),Ka+=ab);Ka+=",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 #");Ka.length&&a.O("dump extension commands:\n\t"+Ka)}else if("state"==Ja){var Vb=Qr(a.X,!0);"console"==Da?console.log(Vb):
|
||||
(Ir(a),a.O(Vb))}else if("symbols"==Ja)for(var Pa=0;Pa<a.N.length;Pa++){var Ud=a.N[Pa],Rc;for(Rc in Ud.Qd)if("."!=Rc.charAt(0)){var Vd=Ud.Qd[Rc],Ge=Vd.o;if(void 0!==Ge){var Wd=Vd.s;void 0===Wd&&(Wd=Ud.Z);var He=Ud.Qd[Rc].l;He&&(Rc=He);a.O(Uq(Ge,Wd)+" "+Rc)}}}else{if("ds"==la||"dg"==la||"dl"==la)la="d",S=[la,"desc",Ja];"d"==la&&"page"==Ja&&(la="dp",S.shift());if("dp"==la){S.shift();var hi=S[0];if(hi){var Re=a.cc(kr(a,hi));if(-1===Re)a.O("invalid address: "+hi);else{var $d,za=null;if(80386<=a.F.ja){var ae=
|
||||
a.ga,za={};za.Jk=(Re&-4194304)>>>20;za.$i=a.F.Od+za.Jk;za.yb=ae.sa[(za.$i&ae.Gb)>>>ae.La];za.Aj=za.yb.Md(za.Jk);za.Kk=(Re&4190208)>>>10;za.aj=(za.Aj&-4096)+za.Kk;za.zb=ae.sa[(za.aj&ae.Gb)>>>ae.La];za.Bj=za.zb.Md(za.Kk);za.nl=(za.Bj&-4096)+(Re&4095)}if($d=za){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var od="%"+r(Re),od=od+(" %%"+mr($d.$i,$d.Aj)),od=od+(" %%"+mr($d.aj,$d.Bj,!0)),
|
||||
od=od+(" %%"+r($d.nl));a.O(od)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==la){if("disk"==Ja){S[0]="l";S[1]="json";Mr(a,S);break a}for(ab in Eb)if(S[1]==ab){var yn=a.cb[ab];yn?(S.shift(),S.shift(),yn(S)):a.O("no dump registered for "+Ja);break a}Ja||(la=a.Cc||"db")}else a.Cc=la;if("dh"==la){var zn=Ja,An=Da,Bn="",Cn=0,Zb=a.Fa,sc=a.ia;if(sc.length){var Lb=+zn||a.Ub,Se=+An||10;isNaN(Lb)?Lb=Se:Bn="more ";Lb>sc.length&&(a.O("note: only "+sc.length+" available"),Lb=sc.length);
|
||||
Zb-=Lb;0>Zb&&(null==sc[sc.length-1].Z?(Lb=Zb+Lb,Zb=0):Zb+=sc.length);var ii=[];"call"==An&&(Se=1E5,ii=["CALL"]);for(void 0!==zn&&a.O(Lb+" instructions earlier:");0<Se&&Zb!=a.Fa;){var pd=sc[Zb++];if(null==pd.Z)break;var Te=wq(a,pd.Ra,pd.Z,pd.Ea,pd.type,pd.Rb,pd.oc),is=Lb--,Dn=yr(a,Te,"history",is);(!ii.length||0<=Dn.indexOf(ii[0]))&&a.O(Dn);Te.Ve&&(Zb+=Te.Ve,Se-=Te.Ve,Lb-=Te.Ve);Zb>=sc.length&&(Zb=0);a.Ub=Lb;Cn++;Se--}}Cn||(a.O("no "+Bn+"history available"),a.Ub=void 0)}else if("di"==la){S.shift();
|
||||
var ji=S[0];if(ji){var Ue=rq(a,ji);if(void 0===Ue||0>Ue||255<Ue)a.O("invalid vector: "+ji);else{var En="&",Fn=!!(a.F.$a&1),Gn=!1,ng=a.F.Mc+(Ue<<(Fn?3:2)),Hn=a.F.na(ng+0),js=a.F.na(ng+2);Fn&&(En="#",a.F.na(ng+4)&2048&&(Gn=!0,Hn|=a.F.na(ng+6)<<16));a.O("dumpIDT("+v(Ue)+"): "+En+r(js,4)+":"+r(Hn,Gn?8:4))}}else a.O("no IDT vector")}else if("dt"==la)S.shift(),a.O("no information");else{var be=kr(a,Ja);if(be&&(null!=be.Z||null!=be.Ea)){var og=0;Da&&("l"==Da.charAt(0)&&(Da=Da.substr(1)||Wa),og=rq(a,Da)>>>
|
||||
od=od+(" %%"+r($d.nl));a.O(od)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==la){if("disk"==Ja){S[0]="l";S[1]="json";Mr(a,S);break a}for(ab in Eb)if(S[1]==ab){var yn=a.cb[ab];yn?(S.shift(),S.shift(),yn(S)):a.O("no dump registered for "+Ja);break a}Ja||(la=a.Cc||"db")}else a.Cc=la;if("dh"==la){var zn=Ja,An=Da,Bn="",Cn=0,Zb=a.Ea,sc=a.ia;if(sc.length){var Lb=+zn||a.Ub,Se=+An||10;isNaN(Lb)?Lb=Se:Bn="more ";Lb>sc.length&&(a.O("note: only "+sc.length+" available"),Lb=sc.length);
|
||||
Zb-=Lb;0>Zb&&(null==sc[sc.length-1].Z?(Lb=Zb+Lb,Zb=0):Zb+=sc.length);var ii=[];"call"==An&&(Se=1E5,ii=["CALL"]);for(void 0!==zn&&a.O(Lb+" instructions earlier:");0<Se&&Zb!=a.Ea;){var pd=sc[Zb++];if(null==pd.Z)break;var Te=wq(a,pd.Ra,pd.Z,pd.Fa,pd.type,pd.Rb,pd.oc),is=Lb--,Dn=yr(a,Te,"history",is);(!ii.length||0<=Dn.indexOf(ii[0]))&&a.O(Dn);Te.Ve&&(Zb+=Te.Ve,Se-=Te.Ve,Lb-=Te.Ve);Zb>=sc.length&&(Zb=0);a.Ub=Lb;Cn++;Se--}}Cn||(a.O("no "+Bn+"history available"),a.Ub=void 0)}else if("di"==la){S.shift();
|
||||
var ji=S[0];if(ji){var Ue=rq(a,ji);if(void 0===Ue||0>Ue||255<Ue)a.O("invalid vector: "+ji);else{var En="&",Fn=!!(a.F.$a&1),Gn=!1,ng=a.F.Mc+(Ue<<(Fn?3:2)),Hn=a.F.na(ng+0),js=a.F.na(ng+2);Fn&&(En="#",a.F.na(ng+4)&2048&&(Gn=!0,Hn|=a.F.na(ng+6)<<16));a.O("dumpIDT("+v(Ue)+"): "+En+r(js,4)+":"+r(Hn,Gn?8:4))}}else a.O("no IDT vector")}else if("dt"==la)S.shift(),a.O("no information");else{var be=kr(a,Ja);if(be&&(null!=be.Z||null!=be.Fa)){var og=0;Da&&("l"==Da.charAt(0)&&(Da=Da.substr(1)||Wa),og=rq(a,Da)>>>
|
||||
0,65536<og&&(og=65536));for(var Ve="",ce="dd"==la?4:"dw"==la?2:1,pg=ce*og||128,ks=pg+15>>4||1;ks--&&0<pg;){var We=0,ki=0,Xe,li="",In="",Ja=dr(be);for(Xe=4==ce?16:a.Ya;0<Xe&&0<pg;Xe--){var qg=a.Qa(be,1),We=We|qg<<(ki++<<3);ki==ce&&(li+=8==a.Ya?ia(We,3*ce):r(We,2*ce),li+=1==ce?9==Xe?"-":" ":" ",We=ki=0);In+=32<=qg&&128>qg?String.fromCharCode(qg):".";pg--}Ve&&(Ve+="\n");Ve+=Ja+" "+li+(0==Xe?" "+In:"")}Ve&&a.O(Ve);a.Db=be}}}}}break;case "e":if("else"==g[0])break;var rg=1,Jn=255,Kn=a.Qa,Ln=a.qc;"ew"==
|
||||
g[0]&&(rg=2,Jn=65535,Kn=a.na,Ln=a.jb);var Mn=rg<<1,Nn=g[1];if(null==Nn)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 sg=kr(a,Nn);if(sg)for(var tg=2;tg<g.length;tg++){var Ye=pq(a,g[tg]);if(void 0===Ye){a.O("unrecognized value: "+g[tg]);break}Ye&~Jn&&a.O("warning: "+r(Ye)+" exceeds "+rg+"-byte value");var ls=Kn.call(a,sg);a.O("changing "+dr(sg)+" from "+r(ls,Mn,!0)+" to "+r(Ye,Mn,!0));Ln.call(a,sg,Ye,rg)}}break;case "f":Jr(a,
|
||||
g[1]);break;case "g":a:{var On=g[1],ms=b;"gt"==g[0]&&(a.fb=!0);if(void 0!==On){var mi=kr(a,On,!0);if(!mi)break a;lr(a,mi,ms);a.Rd(a.B,mi,!0)}a.Ne(!0)||c||a.O("cpu busy or unavailable, run command ignored")}break;case "h":a:{var ni;if(a.la.Ib)ni="halting",a.Wb();else{if(wb(a,!0))break a;ni="already halted"}c||a.O(ni)}break;case "i":if("if"==g[0]){var oi;var Ze=b.substr(2),Ze=qa(Ze);pq(a,Ze)?(c||a.O("true: "+Ze),oi=!0):(c||a.O("false: "+Ze),oi=!1);oi||(d=!1);break}if("int"==g[0]){var ug;a:switch(rq(a,
|
||||
g[1])){case 19:pk(a,19,a.F.Ha,!0);a.Ca=a.pa;ug=!0;break a;case 33:pk(a,33,a.F.Ha,!0);a.Ca=a.pa;ug=!0;break a;default:ug=!1}ug||(d=!1);break}var pi=g[1];if(pi&&"?"!=pi){var qi=rq(a,pi);if(void 0!==qi){var ns=rc(a.ga,qi,1);a.O(v(qi)+": "+u(ns))}}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 os=g[0];if("?"==g[1])a.O("stack trace commands:"),a.O("\tk\tshow frame addresses"),a.O("\tks\tshow symbol information");else{var ri=
|
||||
0,Pn=a.F.wa.Z,$e=wq(a),Uc=wq(a,J(a.F),a.F.ta.Z);for(a.O("stack trace for "+dr(Uc));10>ri;){for(var tc=null,ps=256;Uc.Ra>>>0<a.F.Sg>>>0;){$e.Ra=a.tb(Uc,!0);if(null==Uc.Ea||!ps--)break;$e.Z=Pn;if(tc=Or(a,$e))break;$e.Z=a.tb(Uc);if(tc=Or(a,$e,!0)){Pn=a.tb(Uc,!0);0<tc.indexOf("INT")&&a.tb(Uc,!0);break}}if(!tc||null==tc)break;var Qn=null;if("ks"==os){var Rn=tc.match(/[0-9A-F]+$/);Rn&&(Qn=Lr(a,Rn[0]))}tc=pa(tc,50)+" ;"+(Qn||"stack="+dr(Uc));a.O(tc);ri++}ri||a.O("no return addresses found")}break;case "l":if("ln"==
|
||||
0,Pn=a.F.wa.Z,$e=wq(a),Uc=wq(a,J(a.F),a.F.ta.Z);for(a.O("stack trace for "+dr(Uc));10>ri;){for(var tc=null,ps=256;Uc.Ra>>>0<a.F.Sg>>>0;){$e.Ra=a.tb(Uc,!0);if(null==Uc.Fa||!ps--)break;$e.Z=Pn;if(tc=Or(a,$e))break;$e.Z=a.tb(Uc);if(tc=Or(a,$e,!0)){Pn=a.tb(Uc,!0);0<tc.indexOf("INT")&&a.tb(Uc,!0);break}}if(!tc||null==tc)break;var Qn=null;if("ks"==os){var Rn=tc.match(/[0-9A-F]+$/);Rn&&(Qn=Lr(a,Rn[0]))}tc=pa(tc,50)+" ;"+(Qn||"stack="+dr(Uc));a.O(tc);ri++}ri||a.O("no return addresses found")}break;case "l":if("ln"==
|
||||
g[0]){Lr(a,g[1],!0);break}Mr(a,g);break;case "m":if("mouse"==g[0]){var si=g[1],vg=g[2];if(a.V){var Sn=1;"-"==vg.charAt(0)&&(Sn=-1,vg=vg.substr(1));var qd=rq(a,vg,si);if(void 0!==qd)switch(qd=qd*Sn|0,si){case "x":a.V.Kf(qd,0);break;case "y":a.V.Kf(0,qd);break;case "click":a.V.he(qd,!0);a.V.he(qd,!1);break;default:a.O("unknown action: "+si)}}else a.O("no mouse");break}a:{var uc,vc=null,Ma=g[1];"?"==Ma&&(Ma=void 0);if(void 0!==Ma){var rd=0;if("all"==Ma)rd=1610481663,Ma=null;else if("on"==Ma)vc=!0,Ma=
|
||||
null;else if("off"==Ma)vc=!1,Ma=null;else{"keys"==Ma&&(Ma="key");"kbd"==Ma&&(Ma="keyboard");for(uc in Eb)if(Ma==uc){rd=Eb[uc];vc=!!(a.wc&rd);break}if(!rd){a.O("unknown message category: "+Ma);break a}}rd&&("on"==g[2]?(a.wc|=rd,vc=!0):"off"==g[2]&&(a.wc&=~rd,vc=!1))}var qs=0,af="";for(uc in Eb)if(!Ma||Ma==uc){var rs=!!(a.wc&Eb[uc]);if(null===vc||vc==rs)af&&(af+=","),++qs%10||(af+="\n\t"),"key"==uc&&(uc="keys"),af+=uc}void 0===Ma&&a.O("message commands:\n\tm [category] [on|off]\tturn categories on/off");
|
||||
a.O((null!==vc?vc?"messages on: ":"messages off: ":"message categories:\n\t")+(af||"none"));yq(a)}break;case "o":var ti=g[1],ss=g[2];if(ti&&"?"!=ti){var ui=rq(a,ti,"port #"),vi=rq(a,ss);void 0!==ui&&void 0!==vi&&(zc(a.ga,ui,1,vi),a.O(v(ui)+": "+u(vi)))}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]){Nr(a,b.substr(5));break}var Tn="pr"==g[0]?1:0,de=1+Tn;if(a.U)a.O("step in progress");
|
||||
|
|
|
|||
|
|
@ -32,51 +32,51 @@ for(var k,aa="function"==typeof Object.defineProperties?Object.defineProperty:fu
|
|||
ia!=ha&&null!=ia&&aa(ba,ga,{configurable:!0,writable:!0,value:ia});function na(a,b,c){var d="";b?11<b&&(b=11):b=a&-65536?11:6;if(null==a||isNaN(a))for(;0<b--;)d="?"+d;else for(;0<b--;)d=String.fromCharCode((a&7)+48)+d,a>>=3;return(c?"0o":"")+d}function l(a,b,c){var d="";b?8<b&&(b=8):b=a&-65536?8:4;if(null==a||isNaN(a))for(;0<b--;)d="?"+d;else for(;0<b--;){var e=a&15,e=e+(0<=e&&9>=e?48:55),d=String.fromCharCode(e)+d;a>>=4}return(c?"0x":"")+d}
|
||||
function oa(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));d=c.indexOf("&");0<d&&(c=c.substr(0,d));b&&(d=c.lastIndexOf("."),0<d&&(c=c.substring(0,d)));return c}function pa(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}function qa(){var a=ra();return-1!==a.indexOf("pcjs.org",a.length-8)}var sa={"&":"&","<":"<",">":">",'"':""","'":"'"};function ta(a){return a.replace(/[&<>"']/g,function(a){return sa[a]})}
|
||||
function ua(a,b){return(a+" ").slice(0,b)}function va(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}var wa={0:"NUL",1:"SOH",2:"STX",3:"ETX",4:"EOT",5:"ENQ",6:"ACK",7:"BEL",8:"BS",9:"TAB",11:"VT",12:"FF",13:"CR",14:"SO",15:"SI",16:"DLE",17:"XON",18:"DC2",19:"XOFF",20:"DC4",21:"NAK",22:"SYN",23:"ETB",24:"CAN",25:"EM",26:"SUB",27:"ESC",28:"FS",29:"GS",30:"RS",31:"US"};
|
||||
function ya(a,b,c){var d=0,e=a.length,f=0;for(c||(c=function(a,b){return a>b?1:a<b?-1:0});d<e;){var g=d+e>>1,h;h=c(b,a[g]);0<h?d=g+1:(e=g,f=!h)}return f?d:~d}var za=Date.now||function(){return+new Date};function Aa(){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())}
|
||||
function xa(a,b,c){var d=0,e=a.length,f=0;for(c||(c=function(a,b){return a>b?1:a<b?-1:0});d<e;){var g=d+e>>1,h;h=c(b,a[g]);0<h?d=g+1:(e=g,f=!h)}return f?d:~d}var za=Date.now||function(){return+new Date};function Aa(){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())}
|
||||
function Ba(a,b,c,d){var e=0,f=null,g=null;if("object"==typeof resources&&(f=resources[a]))return d&&d(a,f,e),[f,e];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),g;var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(f=h.responseText,200==h.status||!h.status&&f.length&&"file:"==(window?window.location.protocol:"file:")||(e=h.status||-1),d&&d(a,f,e))});if(b&&"object"==
|
||||
typeof b){var m="",p;for(p in b)b.hasOwnProperty(p)&&(m&&(m+="&"),m+=p+"="+encodeURIComponent(b[p]));m=m.replace(/%20/g,"+");h.open("POST",a,!!c);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.send(m)}else h.open("GET",a,!!c),"bytes"==b&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send();c||(f=h.responseText,200!=h.status&&(e=h.status||-1),d&&d(a,f,e),g=[f,e]);return g}
|
||||
function Ca(a,b){var c,d={la:null,fa:null,Ia:null,Ha:null};if("["==b.charAt(0)||"{"==b.charAt(0))try{var e,f,g;if("<"==b.substr(0,1))throw Error(b);g=0>b.indexOf("0x")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");d.Ia=g.load;d.Ha=g.exec;if(e=g.bytes)d.la=e;else if(e=g.words)for(d.la=Array(2*e.length),f=c=0;c<e.length;c++)d.la[f++]=e[c]&255,d.la[f++]=e[c]>>8&255;else if(e=g.data)for(d.la=Array(4*e.length),f=c=0;c<e.length;c++)d.la[f++]=
|
||||
e[c]&255,d.la[f++]=e[c]>>8&255,d.la[f++]=e[c]>>16&255,d.la[f++]=e[c]>>24&255;else d.la=g;d.fa=g.symbols;d.la.length?1==d.la.length&&(n(d.la[0]),d=null):(n("Empty resource: "+a),d=null)}catch(h){n("Resource data error ("+a+"): "+h.message),d=null}else{e=[];b=b.replace(/\n/gm," ").replace(/ +$/,"").split(" ");for(c=0;c<b.length;c++){f=parseInt(b[c],16);if(isNaN(f)){n("Resource data error ("+a+"): invalid hex byte ("+b[c]+")");break}e.push(f&255)}c==b.length&&(d.la=e)}return d}
|
||||
function Ca(a,b){var c,d={la:null,ea:null,Ia:null,Ha:null};if("["==b.charAt(0)||"{"==b.charAt(0))try{var e,f,g;if("<"==b.substr(0,1))throw Error(b);g=0>b.indexOf("0x")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");d.Ia=g.load;d.Ha=g.exec;if(e=g.bytes)d.la=e;else if(e=g.words)for(d.la=Array(2*e.length),f=c=0;c<e.length;c++)d.la[f++]=e[c]&255,d.la[f++]=e[c]>>8&255;else if(e=g.data)for(d.la=Array(4*e.length),f=c=0;c<e.length;c++)d.la[f++]=
|
||||
e[c]&255,d.la[f++]=e[c]>>8&255,d.la[f++]=e[c]>>16&255,d.la[f++]=e[c]>>24&255;else d.la=g;d.ea=g.symbols;d.la.length?1==d.la.length&&(n(d.la[0]),d=null):(n("Empty resource: "+a),d=null)}catch(h){n("Resource data error ("+a+"): "+h.message),d=null}else{e=[];b=b.replace(/\n/gm," ").replace(/ +$/,"").split(" ");for(c=0;c<b.length;c++){f=parseInt(b[c],16);if(isNaN(f)){n("Resource data error ("+a+"): invalid hex byte ("+b[c]+")");break}e.push(f&255)}c==b.length&&(d.la=e)}return d}
|
||||
function ra(){return"http://"+(window?window.location.host:"www.pcjs.org")}function n(a){window&&window.alert(a)}function Da(a){var b=!1;window&&(b=window.confirm(a));return b}var Ea=null;function Fa(){if(null==Ea){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}Ea=a}return Ea}
|
||||
function Ja(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b}function Ka(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function La(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 Ma(a,b,c){function d(){--a;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}
|
||||
function Ga(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b}function Ka(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function La(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 Ma(a,b,c){function d(){--a;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}
|
||||
function Na(a,b){function c(){b(100===d)&&(e=setTimeout(c,d),d=100)}var d=0,e=null,f=!1;a.onmousedown=function(){f||e||(d=500,c())};a.ontouchstart=function(){e||(d=500,c())};a.onmouseup=a.onmouseout=function(){e&&(clearTimeout(e),e=null)};a.ontouchend=a.ontouchcancel=function(){e&&(clearTimeout(e),e=null);f=!0}}var Oa={init:[],show:[],exit:[]},Pa=!1,Qa=!1,Ra=!0;function Sa(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Ta(a){Oa.init.push(a)}
|
||||
function Ua(a){if(Ra)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){n(""+("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks."))}}function Va(a){!Ra&&a?(Ra=!0,Pa&&Wa("init"),Qa&&Wa("show")):Ra=a}function Wa(a){Oa[a]&&Ua(Oa[a])}Sa("onload",function(){Pa=!0;Ua(Oa.init)});Sa("onpageshow",function(){Qa=!0;Ua(Oa.show)});Sa(La("Opera")||La("iOS")?"onunload":"onbeforeunload",function(){Ua(Oa.exit)});
|
||||
function r(a,b,c,d){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.Xb=b.comment;this.uc=b;b=this.id.indexOf(".");0>b?this.$a=this.id:(this.Sa=this.id.substr(0,b),this.$a=this.id.substr(b+1));this[a]=c;this.v={ready:!1,Ja:!1,Kb:!1,ja:!1,error:!1};this.Cb=null;this.v.error=!1;this.I={};this.i=null;this.ma=d||0;t.push(this)}var cb=void 0,db={};
|
||||
if(window){cb||(cb=window.location.search.substr(1));for(var eb,fb=/\+/g,gb=/([^&=]+)=?([^&]*)/g;eb=gb.exec(cb);)db[decodeURIComponent(eb[1].replace(fb," "))]=decodeURIComponent(eb[2].replace(fb," "))}function hb(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}
|
||||
function r(a,b,c,d){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.Xb=b.comment;this.uc=b;b=this.id.indexOf(".");0>b?this.$a=this.id:(this.Sa=this.id.substr(0,b),this.$a=this.id.substr(b+1));this[a]=c;this.v={ready:!1,Ja:!1,Kb:!1,ja:!1,error:!1};this.Cb=null;this.v.error=!1;this.I={};this.i=null;this.ma=d||0;t.push(this)}var Xa=void 0,db={};
|
||||
if(window){Xa||(Xa=window.location.search.substr(1));for(var eb,fb=/\+/g,gb=/([^&=]+)=?([^&]*)/g;eb=gb.exec(Xa);)db[decodeURIComponent(eb[1].replace(fb," "))]=decodeURIComponent(eb[2].replace(fb," "))}function hb(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}
|
||||
function u(a,b){b||(b=r);a.prototype=hb(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}if(window){window.PCjs||(window.PCjs={});var ib=window.PCjs.Machines||(window.PCjs.Machines={}),t=window.PCjs.Components||(window.PCjs.Components=[])}else ib={},t=[];function jb(a,b,c){ib[a]&&b&&(ib[a][b]=c)}function kb(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<t.length;b++){var d=t[b];a&&d.id.indexOf(a)||c.push(d)}return c}
|
||||
function lb(a){if(void 0!==a){var b;for(b=0;b<t.length;b++)if(t[b].id===a)return t[b]}return null}function mb(a,b){var c;if(void 0!==a){var d;b&&(b=0<(d=b.indexOf("."))?b.substr(0,d+1):"");for(d=0;d<t.length;d++)if(c)c==t[d]&&(c=null);else if(!(a!=t[d].type||b&&t[d].id.indexOf(b)))return t[d]}return null}function z(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){n(c.message+" ("+a+")")}return b}
|
||||
function A(a,b){b=C(b.parentNode,"pdp11-control");for(var c=0;c<b.length;c++)for(var d=b[c].childNodes,e=0;e<d.length;e++){var f=d[e];if(1===f.nodeType){var g=f.getAttribute("class");if(g)for(var h=g.split(" "),m=0;m<h.length;m++)switch(g=h[m],g){case "pdp11-binding":(g=z(f))&&g.binding&&a.qa(g.type,g.binding,f,g.value),m=h.length}}}}
|
||||
function B(a,b){b=C(b.parentNode,"pdp11-control");for(var c=0;c<b.length;c++)for(var d=b[c].childNodes,e=0;e<d.length;e++){var f=d[e];if(1===f.nodeType){var g=f.getAttribute("class");if(g)for(var h=g.split(" "),m=0;m<h.length;m++)switch(g=h[m],g){case "pdp11-binding":(g=z(f))&&g.binding&&a.qa(g.type,g.binding,f,g.value),m=h.length}}}}
|
||||
function C(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var e=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)e.test(a[b].className)&&c.push(a[b]);return c}
|
||||
r.prototype={constructor:r,parent:null,toString:function(){return this.name?this.name:this.id||this.type},qa:function(a,b,c){switch(b){case "clear":return this.I[b]||(this.I[b]=c,c.onclick=function(a){return function(){a.I.print&&(a.I.print.value="")}}(this)),!0;case "print":return this.I[b]||(this.Da=this.I[b]=c,c.value="",this.j=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(c),
|
||||
this.ia=function(a){this.j(a,this.$a)}),!0;default:return!1}},log:function(){},j:function(){},status:function(a){this.j(this.$a+": "+a)},ia:function(a,b,c){c=c||this.type;b||n((c?c+": ":"")+a)},ya:function(){return this.v.ja=!0},xa:function(a,b){b&&(this.v.ja=!1);return!0}};function D(a,b,c,d){a.i&&(!0===c||E(a,c|0))&&a.i.message(b,d)}function E(a,b){if(a.i){a===a.i?b|=0:b=b||a.ma;var c=a.i.ma&b;return!!b&&c===b||!!(c&a.i.oc)}return!1}
|
||||
this.ia=function(a){this.j(a,this.$a)}),!0;default:return!1}},log:function(){},j:function(){},status:function(a){this.j(this.$a+": "+a)},ia:function(a,b,c){c=c||this.type;b||n((c?c+": ":"")+a)},ya:function(){return this.v.ja=!0},xa:function(a,b){b&&(this.v.ja=!1);return!0}};function D(a,b,c,d){a.i&&(!0===c||F(a,c|0))&&a.i.message(b,d)}function F(a,b){if(a.i){a===a.i?b|=0:b=b||a.ma;var c=a.i.ma&b;return!!b&&c===b||!!(c&a.i.oc)}return!1}
|
||||
function nb(a,b){if(a.v.Kb)return a.v.Ja=!1,a.v.Kb=!1;if(a.v.error)return a.j(a.toString()+" error"),!1;a.v.Ja=b;return a.v.Ja}function ob(a,b){a.v.Ja&&(b?a.v.Kb=!0:void 0===b&&a.j(a.toString()+" busy"));return a.v.Ja}function H(a){if(!a.v.error&&(a.v.ready=!0,a.v.ready)){var b=a.Cb;a.Cb=null;b&&b()}}function pb(a,b){b&&(a.v.ready?b():a.Cb=b);return a.v.ready}function qb(a){return a.v.error?(a.j(a.toString()+" error"),!0):!1}function rb(a,b){a.v.error=!0;a.ia(b)}
|
||||
Array.prototype.indexOf||(Array.prototype.indexOf=function(a,b){b=b||0;for(var c=this.length;b<c;b++)if(this[b]===a)return b;return-1});
|
||||
Function.prototype.bind||(Function.prototype.bind=function(a){function b(){return e.apply(this instanceof c&&a?this:a,d.concat(Array.prototype.slice.call(arguments)))}function c(){}if("function"!=typeof this)throw new TypeError("Function.prototype.bind: non-callable object");var d=Array.prototype.slice.call(arguments,1),e=this;c.prototype=this.prototype;b.prototype=new c;return b});
|
||||
var sb="undefined"!==typeof ArrayBuffer,tb={cpu:1,trap:16,bus:64,memory:128,device:256,keyboard:65536,key:131072,disk:2097152,serial:8388608,speaker:33554432,computer:67108864,log:268435456,warn:536870912,buffer:1073741824,halt:-2147483648};function ub(a){r.call(this,"Panel",a,ub);this.f=0;this.v.Vb=!0}u(ub);k=ub.prototype;
|
||||
k.qa=function(a,b,c,d){if(this.B&&this.B.qa(a,b,c,d)||this.b&&this.b.qa(a,b,c,d)||this.i&&this.i.qa(a,b,c,d))return!0;switch(b){case "R0":case "R1":case "R2":case "R3":case "R4":case "R5":case "R6":case "R7":case "NF":case "ZF":case "VF":case "CF":case "PS":return this.I[b]=c,this.f++,!0;default:return"rled"==a?(this.I[b]=c,this.f++,!0):this.parent.qa.call(this,a,b,c,d)}};k.Ca=function(a,b,c,d){this.B=a;this.A=b;this.b=c;this.i=d};k.ya=function(a,b){b||vb();return!0};k.xa=function(){return!0};
|
||||
function wb(a,b,c,d){if(a.I[b]){void 0===c&&(rb(a,"Value for "+b+" is invalid"),a.b.ca());var e=a.i&&a.i.Y||8;c=!a.b.v.da||a.v.Vb?8==e?na(c,d):l(c,d):"--------".substr(0,d||4);a.I[b].textContent!=c&&(a.I[b].textContent=c)}}function Kb(a,b,c,d){for(var e=0;e<d;e++){var f=a.I[b+e];f&&(f.style.backgroundColor=c&1<<e?"#ff0000":"#000000")}}
|
||||
k.ba=function(a){if(this.f&&(a||!this.b.v.da||this.v.Vb)){for(a=0;a<this.b.u.length;a++)wb(this,"R"+a,this.b.u[a]);a=Lb(this.b);wb(this,"PS",a);wb(this,"NF",a&8?1:0,1);wb(this,"ZF",a&4?1:0,1);wb(this,"VF",a&2?1:0,1);wb(this,"CF",a&1?1:0,1);Kb(this,"D",this.b.u[0],16);Kb(this,"A",this.b.u[7],22)}};function vb(){for(var a=!1,b=C(document,"pdp11","panel"),c=0;c<b.length;c++){var d=b[c],e=z(d),f=lb(e.id);f||(a=!0,f=new ub(e));A(f,d);a&&H(f)}}Ta(vb);
|
||||
function Mb(a,b,c){r.call(this,"Bus",a,Mb,64);this.b=b;this.i=c;this.L=a.busWidth||16;this.B=0;this.K=[];this.F=null;this.H=Math.pow(2,this.L);this.g=this.H-1|0;this.ua=Nb;this.ha=Math.log2(this.ua);this.J=this.ua>>2;this.A=this.ua-1;this.D=this.H/this.ua|0;this.Ga=[];this.f=0;this.w=[];this.nc=[Ob,Pb,Qb,Rb];a=new I(this);Sb(a,this.i);this.V=Array(this.D);for(b=0;b<this.D;b++)this.V[b]=a;H(this)}u(Mb);var Nb=8192,Tb=Nb-1;
|
||||
function Ob(a,b){var c=-1,d=this.controller,e=d.Ga[a];e?e[0]?c=e[0](b):e[2]&&(c=b&1?e[2](b&-2)>>8:e[2](b)&255):b&1&&(e=d.Ga[a&-2])&&e[2]&&(c=e[2](b&-2)>>8);if(0<=c)return this.i&&E(this.i,64)&&D(this.i,e[4]+".readByte("+J(this.i,b)+"): "+J(this.i,c),!0,!0),c;c=Ub(d,b,!0);this.i&&E(this.i,64)&&D(this.i,"warning: unconverted read access to byte @"+J(this.i,b)+": "+J(this.i,c),!0,!0);return c}
|
||||
function Pb(a,b,c){var d=!1,e=this.controller,f=e.Ga[a];if(f)if(f[1])f[1](b,c),d=!0;else{if(f[3]){a=f[2]?f[2](0):0;if(c&1)f[3](a&255|b<<8,c&-2);else f[3](a&-256|b,c);d=!0}}else c&1&&(f=e.Ga[a&-2])&&f[3]&&(c&=-2,a=f[2]?f[2](0):0,f[3](a&255|b<<8,c),d=!0);d?this.i&&E(this.i,64)&&D(this.i,f[4]+".writeByte("+J(this.i,c)+","+J(this.i,b)+")",!0,!0):(Ub(e,c,!0,b),this.i&&E(this.i,64)&&D(this.i,"warning: unconverted write access to byte @"+J(this.i,c)+": "+J(this.i,b),!0,!0))}
|
||||
function Qb(a,b){var c=-1,d=this.controller;(a=d.Ga[a])&&(a[2]?c=a[2](b):a[0]&&(c=a[0](b)|a[0](b+1)<<8));if(0<=c)return this.i&&E(this.i,64)&&D(this.i,a[4]+".readWord("+J(this.i,b)+"): "+J(this.i,c),!0,!0),c;c=Ub(d,b,!1);this.i&&E(this.i,64)&&D(this.i,"warning: unconverted read access to word @"+J(this.i,b)+": "+J(this.i,c),!0,!0);return c}
|
||||
function Rb(a,b,c){var d=!1,e=this.controller;if(a=e.Ga[a])a[3]?(a[3](b,c),d=!0):a[1]&&(a[1](b&255,c),a[1](b>>8,c+1),d=!0);d?this.i&&E(this.i,64)&&D(this.i,a[4]+".writeWord("+J(this.i,c)+","+J(this.i,b)+")",!0,!0):(Ub(e,c,!1,b),this.i&&E(this.i,64)&&D(this.i,"warning: unconverted write access to word @"+J(this.i,c)+": "+J(this.i,b),!0,!0))}
|
||||
function Vb(a,b){if(b!=a.B){var c;a.B&&(c=(1<<a.B)-Nb,Wb(a,c,Nb,a.K),a.B=0);b&&(a.B=b,c=(1<<b)-Nb,a.K=Xb(a,c,Nb),a.F?Wb(a,c,Nb,a.F):(Yb(a,c,Nb,Zb,a),a.F=Xb(a,c,Nb)))}}k=Mb.prototype;k.reset=function(){for(var a=0;a<this.w.length;a++)this.w[a]();Vb(this,16)};function Ub(a,b,c,d){if(a.i&&E(a.i,536870912)&&(D(a.i,"warning: unknown I/O access ("+J(a.i,b)+","+J(a.i,d,c?1:2)+")",!0,!0),$b(a.i)))return 0;a.f||a.b.ga(4,b);return 0}k.ya=function(a,b){b||this.reset();return!0};
|
||||
k.qa=function(a,b,c,d){if(this.B&&this.B.qa(a,b,c,d)||this.b&&this.b.qa(a,b,c,d)||this.i&&this.i.qa(a,b,c,d))return!0;switch(b){case "R0":case "R1":case "R2":case "R3":case "R4":case "R5":case "R6":case "R7":case "NF":case "ZF":case "VF":case "CF":case "PS":return this.I[b]=c,this.f++,!0;default:return"rled"==a?(this.I[b]=c,this.f++,!0):this.parent.qa.call(this,a,b,c,d)}};k.Ca=function(a,b,c,d){this.B=a;this.w=b;this.b=c;this.i=d};k.ya=function(a,b){b||vb();return!0};k.xa=function(){return!0};
|
||||
function wb(a,b,c,d){if(a.I[b]){void 0===c&&(rb(a,"Value for "+b+" is invalid"),a.b.fa());var e=a.i&&a.i.Y||8;c=!a.b.v.ca||a.v.Vb?8==e?na(c,d):l(c,d):"--------".substr(0,d||4);a.I[b].textContent!=c&&(a.I[b].textContent=c)}}function xb(a,b,c,d){for(var e=0;e<d;e++){var f=a.I[b+e];f&&(f.style.backgroundColor=c&1<<e?"#ff0000":"#000000")}}
|
||||
k.ba=function(a){if(this.f&&(a||!this.b.v.ca||this.v.Vb)){for(a=0;a<this.b.u.length;a++)wb(this,"R"+a,this.b.u[a]);a=Lb(this.b);wb(this,"PS",a);wb(this,"NF",a&8?1:0,1);wb(this,"ZF",a&4?1:0,1);wb(this,"VF",a&2?1:0,1);wb(this,"CF",a&1?1:0,1);xb(this,"D",this.b.u[0],16);xb(this,"A",this.b.u[7],22)}};function vb(){for(var a=!1,b=C(document,"pdp11","panel"),c=0;c<b.length;c++){var d=b[c],e=z(d),f=lb(e.id);f||(a=!0,f=new ub(e));B(f,d);a&&H(f)}}Ta(vb);
|
||||
function Mb(a,b,c){r.call(this,"Bus",a,Mb,64);this.b=b;this.i=c;this.L=a.busWidth||16;this.B=0;this.K=[];this.F=null;this.H=Math.pow(2,this.L);this.g=this.H-1|0;this.ua=Nb;this.ha=Math.log2(this.ua);this.J=this.ua>>2;this.w=this.ua-1;this.D=this.H/this.ua|0;this.Ga=[];this.f=0;this.A=[];this.nc=[Ob,Pb,Qb,Rb];a=new I(this);Sb(a,this.i);this.V=Array(this.D);for(b=0;b<this.D;b++)this.V[b]=a;H(this)}u(Mb);var Nb=8192,Tb=Nb-1;
|
||||
function Ob(a,b){var c=-1,d=this.controller,e=d.Ga[a];e?e[0]?c=e[0](b):e[2]&&(c=b&1?e[2](b&-2)>>8:e[2](b)&255):b&1&&(e=d.Ga[a&-2])&&e[2]&&(c=e[2](b&-2)>>8);if(0<=c)return this.i&&F(this.i,64)&&D(this.i,e[4]+".readByte("+J(this.i,b)+"): "+J(this.i,c),!0,!0),c;c=Ub(d,b,!0);this.i&&F(this.i,64)&&D(this.i,"warning: unconverted read access to byte @"+J(this.i,b)+": "+J(this.i,c),!0,!0);return c}
|
||||
function Pb(a,b,c){var d=!1,e=this.controller,f=e.Ga[a];if(f)if(f[1])f[1](b,c),d=!0;else{if(f[3]){a=f[2]?f[2](0):0;if(c&1)f[3](a&255|b<<8,c&-2);else f[3](a&-256|b,c);d=!0}}else c&1&&(f=e.Ga[a&-2])&&f[3]&&(c&=-2,a=f[2]?f[2](0):0,f[3](a&255|b<<8,c),d=!0);d?this.i&&F(this.i,64)&&D(this.i,f[4]+".writeByte("+J(this.i,c)+","+J(this.i,b)+")",!0,!0):(Ub(e,c,!0,b),this.i&&F(this.i,64)&&D(this.i,"warning: unconverted write access to byte @"+J(this.i,c)+": "+J(this.i,b),!0,!0))}
|
||||
function Qb(a,b){var c=-1,d=this.controller;(a=d.Ga[a])&&(a[2]?c=a[2](b):a[0]&&(c=a[0](b)|a[0](b+1)<<8));if(0<=c)return this.i&&F(this.i,64)&&D(this.i,a[4]+".readWord("+J(this.i,b)+"): "+J(this.i,c),!0,!0),c;c=Ub(d,b,!1);this.i&&F(this.i,64)&&D(this.i,"warning: unconverted read access to word @"+J(this.i,b)+": "+J(this.i,c),!0,!0);return c}
|
||||
function Rb(a,b,c){var d=!1,e=this.controller;if(a=e.Ga[a])a[3]?(a[3](b,c),d=!0):a[1]&&(a[1](b&255,c),a[1](b>>8,c+1),d=!0);d?this.i&&F(this.i,64)&&D(this.i,a[4]+".writeWord("+J(this.i,c)+","+J(this.i,b)+")",!0,!0):(Ub(e,c,!1,b),this.i&&F(this.i,64)&&D(this.i,"warning: unconverted write access to word @"+J(this.i,c)+": "+J(this.i,b),!0,!0))}
|
||||
function Vb(a,b){if(b!=a.B){var c;a.B&&(c=(1<<a.B)-Nb,Wb(a,c,Nb,a.K),a.B=0);b&&(a.B=b,c=(1<<b)-Nb,a.K=Xb(a,c,Nb),a.F?Wb(a,c,Nb,a.F):(Yb(a,c,Nb,Zb,a),a.F=Xb(a,c,Nb)))}}k=Mb.prototype;k.reset=function(){for(var a=0;a<this.A.length;a++)this.A[a]();Vb(this,16)};function Ub(a,b,c,d){a.i&&F(a.i,536870912)&&(D(a.i,"warning: unknown I/O access ("+J(a.i,b)+","+J(a.i,d,c?1:2)+")",!0,!0),$b(a.i));a.f||a.b.ga(4,b);return 0}k.ya=function(a,b){b||this.reset();return!0};
|
||||
function Yb(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.ha;0<g&&h<a.V.length;){var m=a.V[h],p=h*a.ua,q=a.ua-(f-p);q>g&&(q=g);if(!e&&m&&m.size){if(m.type==d){if(f+g<=m.C)return m.yb+=m.C-f,m.C=f,!0;if(f>=m.C+m.yb){q=m.size-(f-p);q>g&&(q=g);m.yb=f-m.C+q;f=p+a.ua;g-=q;h++;continue}}return ac(1,f,g)}f=new I(a,f,q,a.ua,d,e);Sb(f,a.i,m);a.V[h++]=f;f=p+a.ua;g-=q}if(0>=g){c/=1024;var v;e="";v?10<v&&(v=10):v=c&-65536?10:5;if(null==c||isNaN(c))for(;0<v--;)e="?"+e;else for(;0<v--;)e=String.fromCharCode(c%10+48)+e,c/=
|
||||
10;a.status(e+"Kb "+bc[d]+" at "+na(b));return!0}return ac(2,b,c)}function Xb(a,b,c){var d=[];for(b>>>=a.ha;0<c&&b<a.V.length;)d.push(a.V[b++]),c-=a.ua;return d}function Wb(a,b,c,d){var e=0;for(b>>>=a.ha;0<c&&b<a.V.length;){var f=d[e++];if(!f)break;a.V[b++]=f;c-=a.ua}}k.tb=function(a){return this.V[(a&this.g)>>>this.ha].Fb(a&this.A,a)};k.Db=function(a){this.f++;a=this.V[(a&this.g)>>>this.ha].Mb(a&this.A,a);this.f--;return a};k.na=function(a){return this.V[(a&this.g)>>>this.ha].oa(a&this.A,a)};
|
||||
k.eb=function(a){var b=a&this.A,c=(a&this.g)>>>this.ha;this.f++;a=this.V[c].Nb(b,a);this.f--;return a};k.Gb=function(a,b){this.V[(a&this.g)>>>this.ha].Ib(a&this.A,b&255,a)};k.Ya=function(a,b){this.f++;this.V[(a&this.g)>>>this.ha].Jb(a&this.A,b&255,a);this.f--};k.Za=function(a,b){this.V[(a&this.g)>>>this.ha].zb(a&this.A,b&65535,a)};k.Hb=function(a,b){var c=a&this.A,d=(a&this.g)>>>this.ha;this.f++;this.V[d].Sb(c,b&65535,a);this.f--};
|
||||
10;a.status(e+"Kb "+bc[d]+" at "+na(b));return!0}return ac(2,b,c)}function Xb(a,b,c){var d=[];for(b>>>=a.ha;0<c&&b<a.V.length;)d.push(a.V[b++]),c-=a.ua;return d}function Wb(a,b,c,d){var e=0;for(b>>>=a.ha;0<c&&b<a.V.length;){var f=d[e++];if(!f)break;a.V[b++]=f;c-=a.ua}}k.tb=function(a){return this.V[(a&this.g)>>>this.ha].Fb(a&this.w,a)};k.Db=function(a){this.f++;a=this.V[(a&this.g)>>>this.ha].Mb(a&this.w,a);this.f--;return a};k.na=function(a){return this.V[(a&this.g)>>>this.ha].oa(a&this.w,a)};
|
||||
k.eb=function(a){var b=a&this.w,c=(a&this.g)>>>this.ha;this.f++;a=this.V[c].Nb(b,a);this.f--;return a};k.Gb=function(a,b){this.V[(a&this.g)>>>this.ha].Ib(a&this.w,b&255,a)};k.Ya=function(a,b){this.f++;this.V[(a&this.g)>>>this.ha].Jb(a&this.w,b&255,a);this.f--};k.Za=function(a,b){this.V[(a&this.g)>>>this.ha].zb(a&this.w,b&65535,a)};k.Hb=function(a,b){var c=a&this.w,d=(a&this.g)>>>this.ha;this.f++;this.V[d].Sb(c,b&65535,a);this.f--};
|
||||
function cc(a){for(var b=0,c=[],d=0;d<a.D;d++){var e=a.V[d];if(e.Ka||e.qc){c[b++]=d;var f=b++;if(e=e.save()){for(var g=0,h=0,m=[];g<e.length;){for(var p=e[g],q=g+1;q<e.length&&e[q]===p;)q++;m[h++]=q-g;m[h++]=p;g=q}m.length<e.length&&(e=m)}c[f]=e}}return c}function dc(a,b,c,d,e,f,g,h){for(;b<=c;b+=2){var m=b&Tb;void 0!==a.Ga[m]?n("I/O address already registered: "+l(b,8,!0)):a.Ga[m]=[d,e,f,g,h||"unknown",!1]}}
|
||||
function ec(a,b,c){for(var d in c){var e=+d,f=c[d];if(!(f[5]&&f[5]>a.b.fb)){var g=f[0]?f[0].bind(b):null,h=f[1]?f[1].bind(b):null,m=f[2]?f[2].bind(b):null,p=f[3]?f[3].bind(b):null;65472<=e&&65487>=e&&(!g&&m&&(g=function(a){return function(b){return a(b)&255}.bind(b)}(m)),!h&&p&&(h=function(a){return function(b,c){return a(b,c)}.bind(b)}(p)));dc(a,e,e,g,h,m,p,f[4])}}}function fc(a,b){a.w.push(b)}
|
||||
function gc(a,b){a.f||(a.i&&E(a.i,536870912)&&D(a.i,"memory fault on address "+J(a.i,b),!0,!0),a.b.ga(4,b))}function ac(a,b,c){n("Memory block error ("+a+": "+l(b)+","+l(c)+")");return!1}function K(a){r.call(this,"Device",a,K,256);this.g={data:0,Td:0,Eb:20,hd:0};this.f={Ud:0,Rb:-1}}u(K);k=K.prototype;
|
||||
k.Ca=function(a,b,c,d){this.A=b;this.b=c;this.i=d;var e=this;this.f.Rb=hc(c,function(){e.f.La|=128;e.f.La&64&&(ic(e.b,e.f.jd),jc(e.b,e.f.Rb,1E3/60))});this.f.jd=kc(64,6);ec(b,this,L);fc(b,this.reset.bind(this));H(this)};k.reset=function(){this.g.Eb=this.g.Eb&-120|20;this.f.La=0};k.Ec=function(){var a=this.f.La;this.f.La&=-129;return a};k.sd=function(a){this.f.La=a;a&64&&jc(this.b,this.f.Rb,1E3/60);this.f.La=a&-129};k.xc=function(a){return(a?this.g.hd:this.g.data)&65535};
|
||||
k.ld=function(a){this.g.data=a};k.Gc=function(){var a=this.b;return a.D&62337|a.za<<5|a.Aa<<1};k.ud=function(a){var b=this.b;a&=62337;if(b.D!=a){b.D=a;b.za=a>>5&3;b.Aa=a>>1&15;var c=0;a&257&&(c=4,a&1&&(c|=2));b.Ma!=c&&(b.Ma=c,uc(b))}vc(this)};k.Hc=function(){var a=this.b.Oa;a&65280&&(a=(a<<8|a>>8)&65535);return a};k.Ic=function(){return this.b.xb};k.Jc=function(){return this.b.Pa};
|
||||
k.vd=function(a){var b=this.b;1170>b.fb&&(a&=-49);b.Pa!=a&&(b.Pa=a,a&16?(b.rb=4194303,b.Ta=3915776):(b.rb=262143,b.Ta=253952),uc(b));vc(this)};function vc(a){a.g.Eb=a.g.Eb&-8|(a.b.Ma?a.b.Pa&16?1:2:4)}k.Xc=function(a){return this.b.U[1][a>>1&7]};k.Jd=function(a,b){this.b.U[1][b>>1&7]=a&65295};k.Vc=function(a){return this.b.U[1][(a>>1&7)+8]};k.Hd=function(a,b){this.b.U[1][(b>>1&7)+8]=a&65295};k.Wc=function(a){return this.b.ta[1][a>>1&7]};
|
||||
function ec(a,b,c){for(var d in c){var e=+d,f=c[d];if(!(f[5]&&f[5]>a.b.fb)){var g=f[0]?f[0].bind(b):null,h=f[1]?f[1].bind(b):null,m=f[2]?f[2].bind(b):null,p=f[3]?f[3].bind(b):null;65472<=e&&65487>=e&&(!g&&m&&(g=function(a){return function(b){return a(b)&255}.bind(b)}(m)),!h&&p&&(h=function(a){return function(b,c){return a(b,c)}.bind(b)}(p)));dc(a,e,e,g,h,m,p,f[4])}}}function fc(a,b){a.A.push(b)}
|
||||
function gc(a,b,c){a.f||(a.i&&F(a.i,64)&&(D(a.i,"memory fault ("+c+") on address "+J(a.i,b),!0,!0),$b(a.i)),a.b.ga(4,b))}function ac(a,b,c){n("Memory block error ("+a+": "+l(b)+","+l(c)+")");return!1}function K(a){r.call(this,"Device",a,K,256);this.g={data:0,Td:0,Eb:20,hd:0};this.f={Ud:0,Rb:-1}}u(K);k=K.prototype;
|
||||
k.Ca=function(a,b,c,d){this.w=b;this.b=c;this.i=d;var e=this;this.f.Rb=hc(c,function(){e.f.La|=128;e.f.La&64&&(ic(e.b,e.f.jd),jc(e.b,e.f.Rb,1E3/60))});this.f.jd=kc(64,6);ec(b,this,L);fc(b,this.reset.bind(this));H(this)};k.reset=function(){this.g.Eb=this.g.Eb&-120|20;this.f.La=0};k.Ec=function(){var a=this.f.La;this.f.La&=-129;return a};k.sd=function(a){this.f.La=a;a&64&&jc(this.b,this.f.Rb,1E3/60);this.f.La=a&-129};k.xc=function(a){return(a?this.g.hd:this.g.data)&65535};
|
||||
k.ld=function(a){this.g.data=a};k.Gc=function(){var a=this.b;return a.D&62337|a.za<<5|a.Aa<<1};k.ud=function(a){var b=this.b;a&=62337;if(b.D!=a){b.D=a;b.za=a>>5&3;b.Aa=a>>1&15;var c=0;a&257&&(c=4,a&1&&(c|=2));b.Ma!=c&&(b.Ma=c,lc(b))}vc(this)};k.Hc=function(){var a=this.b.Oa;a&65280&&(a=(a<<8|a>>8)&65535);return a};k.Ic=function(){return this.b.xb};k.Jc=function(){return this.b.Pa};
|
||||
k.vd=function(a){var b=this.b;1170>b.fb&&(a&=-49);b.Pa!=a&&(b.Pa=a,a&16?(b.rb=4194303,b.Ta=3915776):(b.rb=262143,b.Ta=253952),lc(b));vc(this)};function vc(a){a.g.Eb=a.g.Eb&-8|(a.b.Ma?a.b.Pa&16?1:2:4)}k.Xc=function(a){return this.b.U[1][a>>1&7]};k.Jd=function(a,b){this.b.U[1][b>>1&7]=a&65295};k.Vc=function(a){return this.b.U[1][(a>>1&7)+8]};k.Hd=function(a,b){this.b.U[1][(b>>1&7)+8]=a&65295};k.Wc=function(a){return this.b.ta[1][a>>1&7]};
|
||||
k.Id=function(a,b){b=b>>1&7;this.b.ta[1][b]=a;this.b.U[1][b]&=65295};k.Uc=function(a){return this.b.ta[1][(a>>1&7)+8]};k.Gd=function(a,b){b=(b>>1&7)+8;this.b.ta[1][b]=a;this.b.U[1][b]&=65295};k.Dc=function(a){return this.b.U[0][a>>1&7]};k.rd=function(a,b){this.b.U[0][b>>1&7]=a&65295};k.Bc=function(a){return this.b.U[0][(a>>1&7)+8]};k.pd=function(a,b){this.b.U[0][(b>>1&7)+8]=a&65295};k.Cc=function(a){return this.b.ta[0][a>>1&7]};k.qd=function(a,b){b=b>>1&7;this.b.ta[0][b]=a;this.b.U[0][b]&=65295};
|
||||
k.Ac=function(a){return this.b.ta[0][(a>>1&7)+8]};k.od=function(a,b){b=(b>>1&7)+8;this.b.ta[0][b]=a;this.b.U[0][b]&=65295};k.cd=function(a){return this.b.U[3][a>>1&7]};k.Pd=function(a,b){this.b.U[3][b>>1&7]=a&65295};k.ad=function(a){return this.b.U[3][(a>>1&7)+8]};k.Nd=function(a,b){this.b.U[3][(b>>1&7)+8]=a&65295};k.bd=function(a){return this.b.ta[3][a>>1&7]};k.Od=function(a,b){b=b>>1&7;this.b.ta[3][b]=a;this.b.U[3][b]&=65295};k.$c=function(a){return this.b.ta[3][(a>>1&7)+8]};
|
||||
k.Md=function(a,b){b=(b>>1&7)+8;this.b.ta[3][b]=a;this.b.U[3][b]&=65295};k.jb=function(a){a&=7;return this.b.M&2048?this.b.Fa[a]:this.b.u[a]};k.ob=function(a,b){b&=7;this.b.M&2048?this.b.Fa[b]=a:this.b.u[b]=a};k.Oc=function(){return this.b.M&49152?this.b.wa[0]:this.b.u[6]};k.Ad=function(a){this.b.M&49152?this.b.wa[0]=a:this.b.u[6]=a};k.Rc=function(){return this.b.u[7]};k.Dd=function(a){this.b.u[7]=a};k.kb=function(a){a&=7;return this.b.M&2048?this.b.u[a]:this.b.Fa[a]};
|
||||
k.pb=function(a,b){b&=7;this.b.M&2048?this.b.u[b]=a:this.b.Fa[b]=a};k.Pc=function(){return 1==(this.b.M&49152)>>14?this.b.u[6]:this.b.wa[1]};k.Bd=function(a){1==(this.b.M&49152)>>14?this.b.u[6]=a:this.b.wa[1]=a};k.Qc=function(){return 3==(this.b.M&49152)>>14?this.b.u[6]:this.b.wa[3]};k.Cd=function(a){3==(this.b.M&49152)>>14?this.b.u[6]=a:this.b.wa[3]=a};k.zc=function(a){return this.b.hc[a-65504>>1]};k.nd=function(a,b){this.b.hc[b-65504>>1]=a};k.ec=function(a){return 65520==a?61183:0};k.kc=function(){};
|
||||
k.Zc=function(){return 1};k.Ld=function(){};k.yc=function(){return this.b.aa};k.md=function(){this.b.aa=0};k.Fc=function(){return this.b.gc};k.td=function(a,b){b&1||(a&=255);this.b.gc=a};k.Kc=function(a){return a?this.b.Pb:0};k.wd=function(a){var b=this.b;if(a&=65024){var c=a>>9;do a+=34;while(c>>=1)}b.Pb=a;b.G|=2};k.Yc=function(a){return a?this.b.Qa&65280:0};k.Kd=function(a){this.b.Qa=a|255};k.Nc=function(){return Lb(this.b)};k.zd=function(a){wc(this.b,a&-1809|Lb(this.b)&1808);this.b.G|=128};
|
||||
k.jc=function(a,b){E(this)&&D(this,"writeIgnored("+na(b)+"): "+na(a),!0,!0)};
|
||||
k.jc=function(a,b){F(this)&&D(this,"writeIgnored("+na(b)+"): "+na(a),!0,!0)};
|
||||
var M={},L=(M[62592]=[null,null,K.prototype.Xc,K.prototype.Jd,"SISDR",1145],M[62608]=[null,null,K.prototype.Vc,K.prototype.Hd,"SDSDR",1145],M[62624]=[null,null,K.prototype.Wc,K.prototype.Id,"SISAR",1145],M[62640]=[null,null,K.prototype.Uc,K.prototype.Gd,"SDSAR",1145],M[62656]=[null,null,K.prototype.Dc,K.prototype.rd,"KISDR",1145],M[62672]=[null,null,K.prototype.Bc,K.prototype.pd,"KDSDR",1145],M[62688]=[null,null,K.prototype.Cc,K.prototype.qd,"KISAR",1145],M[62704]=[null,null,K.prototype.Ac,K.prototype.od,
|
||||
"KDSAR",1145],M[62798]=[null,null,K.prototype.Jc,K.prototype.vd,"MMR3",1145],M[65382]=[null,null,K.prototype.Ec,K.prototype.sd,"LKS"],M[65400]=[null,null,K.prototype.xc,K.prototype.ld,"CNSL"],M[65402]=[null,null,K.prototype.Gc,K.prototype.ud,"MMR0",1145],M[65404]=[null,null,K.prototype.Hc,K.prototype.jc,"MMR1",1145],M[65406]=[null,null,K.prototype.Ic,K.prototype.jc,"MMR2",1145],M[65408]=[null,null,K.prototype.cd,K.prototype.Pd,"UISDR",1145],M[65424]=[null,null,K.prototype.ad,K.prototype.Nd,"UDSDR",
|
||||
1145],M[65440]=[null,null,K.prototype.bd,K.prototype.Od,"UISAR",1145],M[65456]=[null,null,K.prototype.$c,K.prototype.Md,"UDSAR",1145],M[65472]=[null,null,K.prototype.jb,K.prototype.ob,"R0SET0"],M[65473]=[null,null,K.prototype.jb,K.prototype.ob,"R1SET0"],M[65474]=[null,null,K.prototype.jb,K.prototype.ob,"R2SET0"],M[65475]=[null,null,K.prototype.jb,K.prototype.ob,"R3SET0"],M[65476]=[null,null,K.prototype.jb,K.prototype.ob,"R4SET0"],M[65477]=[null,null,K.prototype.jb,K.prototype.ob,"R5SET0"],M[65478]=
|
||||
|
|
@ -85,47 +85,47 @@ M[65486]=[null,null,K.prototype.Pc,K.prototype.Bd,"R6SUPER",1145],M[65487]=[null
|
|||
"MB",1170],M[65530]=[null,null,K.prototype.Kc,K.prototype.wd,"PIR"],M[65532]=[null,null,K.prototype.Yc,K.prototype.Kd,"SL"],M[65534]=[null,null,K.prototype.Nc,K.prototype.zd,"PSW"],M);L[62594]=L[62592];L[62596]=L[62592];L[62598]=L[62592];L[62600]=L[62592];L[62602]=L[62592];L[62604]=L[62592];L[62606]=L[62592];L[62610]=L[62608];L[62612]=L[62608];L[62614]=L[62608];L[62616]=L[62608];L[62618]=L[62608];L[62620]=L[62608];L[62622]=L[62608];L[62626]=L[62624];L[62628]=L[62624];L[62630]=L[62624];L[62632]=L[62624];
|
||||
L[62634]=L[62624];L[62636]=L[62624];L[62638]=L[62624];L[62642]=L[62640];L[62644]=L[62640];L[62646]=L[62640];L[62648]=L[62640];L[62650]=L[62640];L[62652]=L[62640];L[62654]=L[62640];L[62658]=L[62656];L[62660]=L[62656];L[62662]=L[62656];L[62664]=L[62656];L[62666]=L[62656];L[62668]=L[62656];L[62670]=L[62656];L[62674]=L[62672];L[62676]=L[62672];L[62678]=L[62672];L[62680]=L[62672];L[62682]=L[62672];L[62684]=L[62672];L[62686]=L[62672];L[62690]=L[62688];L[62692]=L[62688];L[62694]=L[62688];L[62696]=L[62688];
|
||||
L[62698]=L[62688];L[62700]=L[62688];L[62702]=L[62688];L[62706]=L[62704];L[62708]=L[62704];L[62710]=L[62704];L[62712]=L[62704];L[62714]=L[62704];L[62716]=L[62704];L[62718]=L[62704];L[65410]=L[65408];L[65412]=L[65408];L[65414]=L[65408];L[65416]=L[65408];L[65418]=L[65408];L[65420]=L[65408];L[65422]=L[65408];L[65426]=L[65424];L[65428]=L[65424];L[65430]=L[65424];L[65432]=L[65424];L[65434]=L[65424];L[65436]=L[65424];L[65438]=L[65424];L[65442]=L[65440];L[65444]=L[65440];L[65446]=L[65440];L[65448]=L[65440];
|
||||
L[65450]=L[65440];L[65452]=L[65440];L[65454]=L[65440];L[65458]=L[65456];L[65460]=L[65456];L[65462]=L[65456];L[65464]=L[65456];L[65466]=L[65456];L[65468]=L[65456];L[65470]=L[65456];L[65506]=L[65504];L[65508]=L[65504];L[65510]=L[65504];L[65512]=L[65504];L[65514]=L[65504];L[65516]=L[65504];L[65518]=L[65504];Ta(function(){for(var a=C(document,"pdp11","device"),b=0;b<a.length;b++){var c,d=a[b];c=z(d);switch(c.type){case "default":c=new K(c);A(c,d);break;case "pc11":c=new xc(c),A(c,d)}}});var yc;
|
||||
L[65450]=L[65440];L[65452]=L[65440];L[65454]=L[65440];L[65458]=L[65456];L[65460]=L[65456];L[65462]=L[65456];L[65464]=L[65456];L[65466]=L[65456];L[65468]=L[65456];L[65470]=L[65456];L[65506]=L[65504];L[65508]=L[65504];L[65510]=L[65504];L[65512]=L[65504];L[65514]=L[65504];L[65516]=L[65504];L[65518]=L[65504];Ta(function(){for(var a=C(document,"pdp11","device"),b=0;b<a.length;b++){var c,d=a[b];c=z(d);switch(c.type){case "default":c=new K(c);B(c,d);break;case "pc11":c=new xc(c),B(c,d)}}});var yc;
|
||||
if(sb){var zc=new ArrayBuffer(2);(new DataView(zc)).setUint16(0,256,!0);yc=256===(new Uint16Array(zc))[0]}else yc=!1;var Ac=yc;
|
||||
function I(a,b,c,d,e,f){this.A=a;this.id=Bc+=2;this.b=null;this.C=b;this.yb=c;this.size=d||0;this.type=e||Cc;this.g=e==Dc;this.controller=null;Sb(this);this.Ka=this.qc=!1;if(this.size)if(f)this.controller=f,a=[null,0],this.b=a[0],Ec(this,f.nc);else if(sb)this.D=new ArrayBuffer(this.size),this.F=new DataView(this.D,0,this.size),this.f=new Uint8Array(this.D,0,this.size),this.J=new Uint16Array(this.D,0,this.size>>1),this.b=new Int32Array(this.D,0,this.size>>2),Ec(this,Ac?Fc:Gc);else{a=this.b=Array(this.size>>
|
||||
function I(a,b,c,d,e,f){this.w=a;this.id=Bc+=2;this.b=null;this.C=b;this.yb=c;this.size=d||0;this.type=e||Cc;this.g=e==Dc;this.controller=null;Sb(this);this.Ka=this.qc=!1;if(this.size)if(f)this.controller=f,a=[null,0],this.b=a[0],Ec(this,f.nc);else if(sb)this.D=new ArrayBuffer(this.size),this.F=new DataView(this.D,0,this.size),this.f=new Uint8Array(this.D,0,this.size),this.J=new Uint16Array(this.D,0,this.size>>1),this.b=new Int32Array(this.D,0,this.size>>2),Ec(this,Ac?Fc:Gc);else{a=this.b=Array(this.size>>
|
||||
2);for(f=0;f<a.length;f++)a[f]=0;Ec(this,Hc)}else Ec(this)}var Cc=0,Dc=2,Zb=4,bc=["NONE","RAM","ROM","VID","H/W"],Bc=0;
|
||||
I.prototype={constructor:I,parent:null,save:function(){var a,b;if(this.controller)a=null;else if(sb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.F.getInt32(b<<2,!0);else a=this.b;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(sb)for(b=0;b<a.length;b++)this.F.setInt32(b<<2,a[b],!0);else this.b=a;return this.Ka=!0}return!1},Wa:function(a,b){b?this.B++||Ic(this,Jc,!1):this.I++||Kc(this,Jc,!1)},K:function(){this.i&&E(this.i,128)&&(D(this.i,"attempt to read invalid block %"+
|
||||
l(this.C),!0),this.i.ca());return 255},w:function(a,b){this.i&&E(this.i,128)&&(D(this.i,"attempt to write "+l(b,4,!0)+" to invalid block %"+l(this.C),!0),this.i.ca())},L:function(a,b){return this.Fb(a++,b++)|this.Fb(a,b)<<8},H:function(a,b,c){this.Ib(a++,b&255,c++);this.Ib(a,b>>8,c)},R:function(a){return this.b[a>>2]>>>((a&3)<<3)&255},ka:function(a,b){a&1&&gc(this.A,b);b=a>>2;a=(a&3)<<3;var c=this.b[b]>>a;return 24>a?c&65535:c&255|(this.b[b+1]&255)<<8},Sa:function(a,b){var c=a>>2;a=(a&3)<<3;this.b[c]=
|
||||
this.b[c]&~(255<<a)|b<<a;this.Ka=!0},Aa:function(a,b,c){a&1&&gc(this.A,c);c=a>>2;a=(a&3)<<3;24>a?this.b[c]=this.b[c]&~(65535<<a)|b<<a:(this.b[c]=this.b[c]&16777215|b<<24,c++,this.b[c]=this.b[c]&-256|b>>8);this.Ka=!0},O:function(a,b){if(this.i&&null!=this.C){var c=this.i;Lc(c,this.C+a,1,c.L)&&c.ca(!0)}return this.Mb(a,b)},Y:function(a,b){if(this.i&&null!=this.C){var c=this.i;Lc(c,this.C+a,2,c.L)&&c.ca(!0)}return this.Nb(a,b)},ra:function(a,b,c){if(this.i&&null!=this.C){var d=this.i;Lc(d,this.C+a,1,
|
||||
d.D)&&d.ca(!0)}this.g?this.w(a,b,c):this.Jb(a,b,c)},$a:function(a,b,c){if(this.i&&null!=this.C){var d=this.i;Lc(d,this.C+a,2,d.D)&&d.ca(!0)}this.g?this.w(a,b,c):this.Sb(a,b,c)},N:function(a){return this.f[a]},P:function(a,b){a=this.f[a];this.i&&E(this.i,128)&&D(this.i,"Memory.readByte("+J(this.i,b)+"): "+J(this.i,a),!0);return a},X:function(a,b){a&1&&gc(this.A,b);return this.F.getUint16(a,!0)},ea:function(a,b){a&1&&gc(this.A,b);a=this.J[a>>1];this.i&&E(this.i,128)&&D(this.i,"Memory.readWord("+J(this.i,
|
||||
b)+"): "+J(this.i,a),!0);return a},pa:function(a,b){this.f[a]=b;this.Ka=!0},sa:function(a,b,c){this.f[a]=b;this.Ka=!0;this.i&&E(this.i,128)&&D(this.i,"Memory.writeByte("+J(this.i,c)+","+J(this.i,b)+")",!0)},va:function(a,b,c){a&1&&gc(this.A,c);this.F.setUint16(a,b,!0);this.Ka=!0},za:function(a,b,c){a&1&&gc(this.A,c);this.J[a>>1]=b;this.Ka=!0;this.i&&E(this.i,128)&&D(this.i,"Memory.writeWord("+J(this.i,c)+","+J(this.i,b)+")",!0)}};
|
||||
function Sb(a,b,c){a.i=b;a.I=a.B=0;c&&((a.I=c.I)&&Kc(a,Jc,!1),(a.B=c.B)&&Ic(a,Jc,!1))}function Mc(a,b){b?--a.B||(a.Ib=a.g?a.w:a.Jb,a.zb=a.g?a.H:a.Sb):--a.I||(a.Fb=a.Mb,a.oa=a.Nb)}function Ic(a,b,c){c&&a.B||(a.Ib=!a.g&&b[1]||a.w,a.zb=!a.g&&b[3]||a.H);if(c||void 0===c)a.Jb=b[1]||a.w,a.Sb=b[3]||a.H}function Kc(a,b,c){c&&a.I||(a.Fb=b[0]||a.K,a.oa=b[2]||a.L);if(c||void 0===c)a.Mb=b[0]||a.K,a.Nb=b[2]||a.L}function Ec(a,b){b||(b=Nc);Kc(a,b,void 0);Ic(a,b,void 0)}
|
||||
var Nc=[],Hc=[I.prototype.R,I.prototype.Sa,I.prototype.ka,I.prototype.Aa],Jc=[I.prototype.O,I.prototype.ra,I.prototype.Y,I.prototype.$a];if(sb)var Gc=[I.prototype.N,I.prototype.pa,I.prototype.X,I.prototype.va],Fc=[I.prototype.P,I.prototype.sa,I.prototype.ea,I.prototype.za];
|
||||
function Oc(a,b){r.call(this,"CPU",a,Oc,1);var c=a.multiplier||1;this.Ra=a.cycles||b;this.Na=c;this.qb=Math.round(this.Ra/1E4)/100;this.Xa=this.qb*this.Na;this.v.da=!1;this.v.Qb=!1;this.v.ab=a.autoStart;this.v.cb=!1;this.ub=this.pa=0;this.vb=a.csStart;this.gb=a.csInterval;this.hb=a.csStop;this.K=[];this.dc=this.gd.bind(this);H(this)}u(Oc);var Pc=["power","reset"];k=Oc.prototype;
|
||||
k.Ca=function(a,b,c,d){this.B=a;this.A=b;this.i=d;for(b=0;b<Pc.length;b++)(c=this.I[Pc[b]])&&this.B.qa(null,Pc[b],c);a=Qc(a,"autoStart");null!=a&&(this.v.ab="true"==a?!0:"false"==a?!1:!!a);H(this)};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};
|
||||
I.prototype={constructor:I,parent:null,save:function(){var a,b;if(this.controller)a=null;else if(sb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.F.getInt32(b<<2,!0);else a=this.b;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(sb)for(b=0;b<a.length;b++)this.F.setInt32(b<<2,a[b],!0);else this.b=a;return this.Ka=!0}return!1},Wa:function(a,b){b?this.B++||Ic(this,Jc,!1):this.I++||Kc(this,Jc,!1)},K:function(a,b){this.i&&F(this.i,128)&&(D(this.i,
|
||||
"attempt to read invalid address "+J(this.i,b),!0),$b(this.i));gc(this.w,b,2);return 255},A:function(a,b,c){this.i&&F(this.i,128)&&(D(this.i,"attempt to write "+J(this.i,b)+" to invalid addresses "+J(this.i,c),!0),$b(this.i));gc(this.w,c,4)},L:function(a,b){return this.Fb(a++,b++)|this.Fb(a,b)<<8},H:function(a,b,c){this.Ib(a++,b&255,c++);this.Ib(a,b>>8,c)},R:function(a){return this.b[a>>2]>>>((a&3)<<3)&255},ka:function(a,b){a&1&&gc(this.w,b,2);b=a>>2;a=(a&3)<<3;var c=this.b[b]>>a;return 24>a?c&65535:
|
||||
c&255|(this.b[b+1]&255)<<8},Sa:function(a,b){var c=a>>2;a=(a&3)<<3;this.b[c]=this.b[c]&~(255<<a)|b<<a;this.Ka=!0},Aa:function(a,b,c){a&1&&gc(this.w,c,4);c=a>>2;a=(a&3)<<3;24>a?this.b[c]=this.b[c]&~(65535<<a)|b<<a:(this.b[c]=this.b[c]&16777215|b<<24,c++,this.b[c]=this.b[c]&-256|b>>8);this.Ka=!0},O:function(a,b){if(this.i&&null!=this.C){var c=this.i;Lc(c,this.C+a,1,c.L)&&c.fa(!0)}return this.Mb(a,b)},Y:function(a,b){if(this.i&&null!=this.C){var c=this.i;Lc(c,this.C+a,2,c.L)&&c.fa(!0)}return this.Nb(a,
|
||||
b)},ra:function(a,b,c){if(this.i&&null!=this.C){var d=this.i;Lc(d,this.C+a,1,d.D)&&d.fa(!0)}this.g?this.A(a,b,c):this.Jb(a,b,c)},$a:function(a,b,c){if(this.i&&null!=this.C){var d=this.i;Lc(d,this.C+a,2,d.D)&&d.fa(!0)}this.g?this.A(a,b,c):this.Sb(a,b,c)},N:function(a){return this.f[a]},P:function(a,b){a=this.f[a];this.i&&F(this.i,128)&&D(this.i,"Memory.readByte("+J(this.i,b)+"): "+J(this.i,a),!0);return a},X:function(a,b){a&1&&gc(this.w,b,2);return this.F.getUint16(a,!0)},da:function(a,b){a&1&&gc(this.w,
|
||||
b,2);a=this.J[a>>1];this.i&&F(this.i,128)&&D(this.i,"Memory.readWord("+J(this.i,b)+"): "+J(this.i,a),!0);return a},pa:function(a,b){this.f[a]=b;this.Ka=!0},sa:function(a,b,c){this.f[a]=b;this.Ka=!0;this.i&&F(this.i,128)&&D(this.i,"Memory.writeByte("+J(this.i,c)+","+J(this.i,b)+")",!0)},va:function(a,b,c){a&1&&gc(this.w,c,4);this.F.setUint16(a,b,!0);this.Ka=!0},za:function(a,b,c){a&1&&gc(this.w,c,4);this.J[a>>1]=b;this.Ka=!0;this.i&&F(this.i,128)&&D(this.i,"Memory.writeWord("+J(this.i,c)+","+J(this.i,
|
||||
b)+")",!0)}};function Sb(a,b,c){a.i=b;a.I=a.B=0;c&&((a.I=c.I)&&Kc(a,Jc,!1),(a.B=c.B)&&Ic(a,Jc,!1))}function Mc(a,b){b?--a.B||(a.Ib=a.g?a.A:a.Jb,a.zb=a.g?a.H:a.Sb):--a.I||(a.Fb=a.Mb,a.oa=a.Nb)}function Ic(a,b,c){c&&a.B||(a.Ib=!a.g&&b[1]||a.A,a.zb=!a.g&&b[3]||a.H);if(c||void 0===c)a.Jb=b[1]||a.A,a.Sb=b[3]||a.H}function Kc(a,b,c){c&&a.I||(a.Fb=b[0]||a.K,a.oa=b[2]||a.L);if(c||void 0===c)a.Mb=b[0]||a.K,a.Nb=b[2]||a.L}function Ec(a,b){b||(b=Nc);Kc(a,b,void 0);Ic(a,b,void 0)}
|
||||
var Nc=[],Hc=[I.prototype.R,I.prototype.Sa,I.prototype.ka,I.prototype.Aa],Jc=[I.prototype.O,I.prototype.ra,I.prototype.Y,I.prototype.$a];if(sb)var Gc=[I.prototype.N,I.prototype.pa,I.prototype.X,I.prototype.va],Fc=[I.prototype.P,I.prototype.sa,I.prototype.da,I.prototype.za];
|
||||
function Oc(a,b){r.call(this,"CPU",a,Oc,1);var c=a.multiplier||1;this.Ra=a.cycles||b;this.Na=c;this.qb=Math.round(this.Ra/1E4)/100;this.Xa=this.qb*this.Na;this.v.ca=!1;this.v.Qb=!1;this.v.ab=a.autoStart;this.v.cb=!1;this.ub=this.pa=0;this.vb=a.csStart;this.gb=a.csInterval;this.hb=a.csStop;this.K=[];this.dc=this.gd.bind(this);H(this)}u(Oc);var Pc=["power","reset"];k=Oc.prototype;
|
||||
k.Ca=function(a,b,c,d){this.B=a;this.w=b;this.i=d;for(b=0;b<Pc.length;b++)(c=this.I[Pc[b]])&&this.B.qa(null,Pc[b],c);a=Qc(a,"autoStart");null!=a&&(this.v.ab="true"==a?!0:"false"==a?!1:!!a);H(this)};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};
|
||||
k.ya=function(a,b){if(!b){if(a&&this.restore){Rc(this);if(!this.restore(a))return!1;Sc(this)}else this.reset();this.i?(a=this.i,b=this.v.ab,a.Ua=!0,a.j("Type ? for help with PDP11 Debugger commands"),a.ba(),b||a.lb(),a.Aa&&(b=a.Aa,a.Aa=null,Tc(a,b))):this.j("No debugger detected")}this.B.ba();return!0};k.xa=function(a){return a?this.save():!0};k.ab=function(){return this.v.ab||!this.i&&void 0===this.I.run?(this.mb(!0),!0):!1};k.Yb=function(){return 0};
|
||||
function Sc(a){void 0===a.vb&&(a.vb=0);void 0===a.gb&&(a.gb=-1);void 0===a.hb&&(a.hb=-1);a.v.cb=0<=a.vb&&0<a.gb;a.v.cb&&(a.ub=0,a.pa=a.vb-a.ka)}function Uc(a,b){if(a.v.cb){var c=!1;a.ub=a.ub+a.Yb()|0;a.pa-=b;0>=a.pa&&(a.pa+=a.gb,c=!0);0<=a.hb&&a.hb<=Vc(a)&&(a.gb=a.hb=-1,Sc(a),a.ca(),c=!0);c&&a.j(Vc(a)+" cycles: checksum="+l(a.ub))}}
|
||||
k.qa=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.I[b]=c,!0;case "run":return this.I[b]=c,c.onclick=function(){var a;if(a=d.B)if(a=d.B,a.v.ja)a=!0;else{var b=null,c,h=kb(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.v.ready);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.v.ja);c++);c==h.length&&(b=a);n("The "+b.type+" component ("+b.id+") is not "+(b.v.ready?"powered yet":"ready yet"+(b.Cb?" (waiting for notification)":""))+".");a=!1}a&&(d.v.da?d.ca():d.mb())},
|
||||
!0;case "speed":return this.I[b]=c,!0;case "setSpeed":return this.I[b]=c,c.onclick=function(){Wc(d,d.Na<<1,!0)},c.textContent=this.Xa.toFixed(2)+"Mhz",!0}return!1};k.ba=function(){var a=this.I.speed;a&&(a.textContent=this.v.da&&this.X?this.X.toFixed(2)+"Mhz":"Stopped")};function Xc(a,b,c){a.ka+=b;c&&(a.ea=a.b=a.J=0)}function Yc(a,b){var c=1;b&&1<a.Na&&a.X&&(c=a.X/a.qb);a.ac=Math.round(1E3/30);a.Va=Math.floor(a.Ra/30*c);b||(a.ra=a.Va);a.sb=0}function Vc(a){return a.ka+a.P+a.ea-a.b}
|
||||
function Rc(a){a.X=0;a.bc=0;a.ka=a.P=a.ea=a.b=a.J=0;Sc(a);Wc(a,1)}function Wc(a,b,c){var d=!1;if(void 0!==b){.8>a.X/a.Xa?b=1:d=!0;a.Na=b;b=a.qb*a.Na;if(a.Xa!=b){a.Xa=b;b=a.Xa.toFixed(2)+"Mhz";var e=a.I.setSpeed;e&&(e.textContent=b);a.j("target speed: "+b)}c&&a.B&&a.B.lb()}Xc(a,a.P);a.P=0;a.O=za();a.Y=0;Yc(a);return d}function hc(a,b){var c=a.K.length;a.K.push([-1,b]);return c}function jc(a,b,c){0<=b&&b<a.K.length&&0>a.K[b][0]&&(c=a.Ra*a.Na/1E3*c|0,a.K[b][0]=c+Zc(a))}
|
||||
function $c(a,b){for(var c=a.K.length-1;0<=c;c--){var d=a.K[c];0>d[0]||b>d[0]&&(b=d[0])}return b}function ad(a,b){for(var c=a.K.length-1;0<=c;c--){var d=a.K[c];0>d[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function Zc(a,b){var c=a.ea-=a.b;a.b=a.J=0;b&&(a.ea=0);return c}
|
||||
k.gd=function(){if(this.v.da){this.sb>=this.Ra&&Yc(this,!0);this.va=0;this.Ua=za();if(this.Y){var a=this.Ua-this.Y;a>this.ac&&(this.O+=a,this.O>this.Ua&&(this.O=this.Ua))}try{do{var b=$c(this,this.v.cb?1:this.Va);try{this.nb(b)}catch(e){if("number"!=typeof e)throw e;}b=Zc(this,!0);this.va+=b;this.P+=b;Uc(this,b);ad(this,b);this.ra-=b;if(0>=this.ra){this.ra+=this.Va;15<=++this.bc&&(this.B&&this.B.ba(),this.bc=0);break}}while(this.v.da)}catch(e){this.ca();this.B&&this.B.stop(za(),Vc(this));rb(this,
|
||||
e.stack||e.message);return}if(this.v.da){a=setTimeout;b=this.dc;this.Y=za();var c=this.ac;this.va&&(c=Math.round(c*this.va/this.Va));var c=c-(this.Y-this.Ua),d=this.Y-this.O;d&&(this.X=Math.round(this.P/(10*d))/100,864E5<=d&&(this.ka=0,Wc(this)));if(0>c||this.X<this.Xa)-1E3>c&&(this.O-=c),c=0;this.sb+=this.va;this.Y+=c;a(b,c)}}};
|
||||
k.mb=function(a){if(qb(this))return!1;if(this.v.da)return this.j(this.toString()+" busy"),!1;Wc(this);this.v.da=!0;this.v.Qb=!0;var b=this.I.run;b&&(b.textContent="Halt");this.B&&(a&&this.B.lb(!0),this.B.start(this.O,Vc(this)));setTimeout(this.dc,0);return!0};k.nb=function(){return 0};k.ca=function(a){if(this.v.da){Zc(this);Xc(this,this.P);this.P=0;this.v.da=!1;var b=this.I.run;b&&(b.textContent="Run");this.B&&this.B.stop(za(),Vc(this))}this.v.complete=a};
|
||||
function bd(a){this.fb=+a.model||1170;this.Bb=a.addrReset||0;Oc.call(this,a,6666667);this.decode=1120==this.fb?cd.bind(this):dd.bind(this);ed(this);this.L=0;this.R=null;this.v.complete=this.v.pc=!1}u(bd,Oc);k=bd.prototype;k.reset=function(){this.status("model "+this.fb);this.v.da&&this.ca();ed(this);Rc(this);this.v.error=!1;this.parent.reset.call(this)};
|
||||
function ed(a){a.S=65536;a.T=32768;a.Z=65535;a.W=32768;a.M=15;a.u=[0,0,0,0,0,0,0,a.Bb];a.Fa=[0,0,0,0,0,0];a.wa=[0,0,0,0];a.w=0;a.Aa=0;a.tc=[4,2,0,1];a.U=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.ta=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.wc=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];a.hc=[0,0,0,0,0,0,0,0];a.gc=0;a.G=0;a.F=a.H=0;a.g=a.f=a.bb=0;a.sa=-1;fd(a)}function fd(a){a.Qa=255;a.aa=0;a.Pb=0;a.D=0;a.Oa=0;a.xb=0;a.Pa=0;a.Ma=0;a.za=0;a.rb=262143;a.Ta=253952;a.G|=2;a.A&&uc(a)}function uc(a){a.Ma?(a.N=65536,a.$=a.sc,a.oa=a.dd,a.zb=a.Qd,Vb(a.A,a.Pa&16?22:18)):(a.N=0,a.$=a.rc,a.oa=a.fc,a.zb=a.lc,Vb(a.A,16))}function gd(a,b,c){a.Bb=b;N(a,b);!c&&a.i&&(a.ca(),a.i.ba())}k.Yb=function(){return 0};
|
||||
k.save=function(){var a=new O(this);a.set(0,[]);a.set(1,[this.ka,this.Na]);a.set(2,cc(this.A));return a.data()};k.restore=function(a){var b=a[1];this.ka=b[1];Wc(this,b[3]);a:{b=this.A;a=a[2];var c;for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.J){for(var f=0,g=Array(b.J),h=0;h<e.length-1;)for(var m=e[h++],p=e[h++];m--;)g[f++]=p;e=g}f=b.V[d];if(!f||!f.restore(e)){n("Unable to restore memory block "+d);b=!1;break a}}b=!0}return b};function hd(a){return a.S&65536?1:0}
|
||||
function Sc(a){void 0===a.vb&&(a.vb=0);void 0===a.gb&&(a.gb=-1);void 0===a.hb&&(a.hb=-1);a.v.cb=0<=a.vb&&0<a.gb;a.v.cb&&(a.ub=0,a.pa=a.vb-a.ka)}function Uc(a,b){if(a.v.cb){var c=!1;a.ub=a.ub+a.Yb()|0;a.pa-=b;0>=a.pa&&(a.pa+=a.gb,c=!0);0<=a.hb&&a.hb<=Vc(a)&&(a.gb=a.hb=-1,Sc(a),a.fa(),c=!0);c&&a.j(Vc(a)+" cycles: checksum="+l(a.ub))}}
|
||||
k.qa=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.I[b]=c,!0;case "run":return this.I[b]=c,c.onclick=function(){var a;if(a=d.B)if(a=d.B,a.v.ja)a=!0;else{var b=null,c,h=kb(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.v.ready);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.v.ja);c++);c==h.length&&(b=a);n("The "+b.type+" component ("+b.id+") is not "+(b.v.ready?"powered yet":"ready yet"+(b.Cb?" (waiting for notification)":""))+".");a=!1}a&&(d.v.ca?d.fa():d.mb())},
|
||||
!0;case "speed":return this.I[b]=c,!0;case "setSpeed":return this.I[b]=c,c.onclick=function(){Wc(d,d.Na<<1,!0)},c.textContent=this.Xa.toFixed(2)+"Mhz",!0}return!1};k.ba=function(){var a=this.I.speed;a&&(a.textContent=this.v.ca&&this.X?this.X.toFixed(2)+"Mhz":"Stopped")};function Xc(a,b,c){a.ka+=b;c&&(a.da=a.b=a.J=0)}function Yc(a,b){var c=1;b&&1<a.Na&&a.X&&(c=a.X/a.qb);a.ac=Math.round(1E3/30);a.Va=Math.floor(a.Ra/30*c);b||(a.ra=a.Va);a.sb=0}function Vc(a){return a.ka+a.P+a.da-a.b}
|
||||
function Rc(a){a.X=0;a.bc=0;a.ka=a.P=a.da=a.b=a.J=0;Sc(a);Wc(a,1)}function Wc(a,b,c){var d=!1;if(void 0!==b){.8>a.X/a.Xa?b=1:d=!0;a.Na=b;b=a.qb*a.Na;if(a.Xa!=b){a.Xa=b;b=a.Xa.toFixed(2)+"Mhz";var e=a.I.setSpeed;e&&(e.textContent=b);a.j("target speed: "+b)}c&&a.B&&a.B.lb()}Xc(a,a.P);a.P=0;a.O=za();a.Y=0;Yc(a);return d}function hc(a,b){var c=a.K.length;a.K.push([-1,b]);return c}function jc(a,b,c){0<=b&&b<a.K.length&&0>a.K[b][0]&&(c=a.Ra*a.Na/1E3*c|0,a.K[b][0]=c+Zc(a))}
|
||||
function $c(a,b){for(var c=a.K.length-1;0<=c;c--){var d=a.K[c];0>d[0]||b>d[0]&&(b=d[0])}return b}function ad(a,b){for(var c=a.K.length-1;0<=c;c--){var d=a.K[c];0>d[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function Zc(a,b){var c=a.da-=a.b;a.b=a.J=0;b&&(a.da=0);return c}
|
||||
k.gd=function(){if(this.v.ca){this.sb>=this.Ra&&Yc(this,!0);this.va=0;this.Ua=za();if(this.Y){var a=this.Ua-this.Y;a>this.ac&&(this.O+=a,this.O>this.Ua&&(this.O=this.Ua))}try{do{var b=$c(this,this.v.cb?1:this.Va);try{this.nb(b)}catch(e){if("number"!=typeof e)throw e;}b=Zc(this,!0);this.va+=b;this.P+=b;Uc(this,b);ad(this,b);this.ra-=b;if(0>=this.ra){this.ra+=this.Va;15<=++this.bc&&(this.B&&this.B.ba(),this.bc=0);break}}while(this.v.ca)}catch(e){this.fa();this.B&&this.B.stop(za(),Vc(this));rb(this,
|
||||
e.stack||e.message);return}if(this.v.ca){a=setTimeout;b=this.dc;this.Y=za();var c=this.ac;this.va&&(c=Math.round(c*this.va/this.Va));var c=c-(this.Y-this.Ua),d=this.Y-this.O;d&&(this.X=Math.round(this.P/(10*d))/100,864E5<=d&&(this.ka=0,Wc(this)));if(0>c||this.X<this.Xa)-1E3>c&&(this.O-=c),c=0;this.sb+=this.va;this.Y+=c;a(b,c)}}};
|
||||
k.mb=function(a){if(qb(this))return!1;if(this.v.ca)return this.j(this.toString()+" busy"),!1;Wc(this);this.v.ca=!0;this.v.Qb=!0;var b=this.I.run;b&&(b.textContent="Halt");this.B&&(a&&this.B.lb(!0),this.B.start(this.O,Vc(this)));setTimeout(this.dc,0);return!0};k.nb=function(){return 0};k.fa=function(a){if(this.v.ca){Zc(this);Xc(this,this.P);this.P=0;this.v.ca=!1;var b=this.I.run;b&&(b.textContent="Run");this.B&&this.B.stop(za(),Vc(this))}this.v.complete=a};
|
||||
function bd(a){this.fb=+a.model||1170;this.Bb=a.addrReset||0;Oc.call(this,a,6666667);this.decode=1120==this.fb?cd.bind(this):dd.bind(this);ed(this);this.L=0;this.R=null;this.v.complete=this.v.pc=!1}u(bd,Oc);k=bd.prototype;k.reset=function(){this.status("model "+this.fb);this.v.ca&&this.fa();ed(this);Rc(this);this.v.error=!1;this.parent.reset.call(this)};
|
||||
function ed(a){a.S=65536;a.T=32768;a.Z=65535;a.W=32768;a.M=15;a.u=[0,0,0,0,0,0,0,a.Bb];a.Fa=[0,0,0,0,0,0];a.wa=[0,0,0,0];a.A=0;a.Aa=0;a.tc=[4,2,0,1];a.U=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.ta=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.wc=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];a.hc=[0,0,0,0,0,0,0,0];a.gc=0;a.G=0;a.F=a.H=0;a.g=a.f=a.bb=0;a.sa=-1;fd(a)}function fd(a){a.Qa=255;a.aa=0;a.Pb=0;a.D=0;a.Oa=0;a.xb=0;a.Pa=0;a.Ma=0;a.za=0;a.rb=262143;a.Ta=253952;a.G|=2;a.w&&lc(a)}function lc(a){a.Ma?(a.N=65536,a.$=a.sc,a.oa=a.dd,a.zb=a.Qd,Vb(a.w,a.Pa&16?22:18)):(a.N=0,a.$=a.rc,a.oa=a.fc,a.zb=a.lc,Vb(a.w,16))}function gd(a,b,c){a.Bb=b;N(a,b);!c&&a.i&&(a.fa(),a.i.ba())}k.Yb=function(){return 0};
|
||||
k.save=function(){var a=new O(this);a.set(0,[]);a.set(1,[this.ka,this.Na]);a.set(2,cc(this.w));return a.data()};k.restore=function(a){var b=a[1];this.ka=b[1];Wc(this,b[3]);a:{b=this.w;a=a[2];var c;for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.J){for(var f=0,g=Array(b.J),h=0;h<e.length-1;)for(var m=e[h++],p=e[h++];m--;)g[f++]=p;e=g}f=b.V[d];if(!f||!f.restore(e)){n("Unable to restore memory block "+d);b=!1;break a}}b=!0}return b};function hd(a){return a.S&65536?1:0}
|
||||
function id(a){return a.T&32768?2:0}function jd(a){return a.Z&65535?0:4}k.Ea=function(){return this.W&32768?8:0};function kd(a){var b=a.u[7];a.D&57344||(a.Oa=0,a.xb=b);a.u[7]=b+2&65535;return a.oa(b)}function ld(a,b){var c=a.u[7];a.u[7]=c+b&65535;return c}function N(a,b){a.u[7]=b&65535}function kc(a,b){return{kd:a,ib:b,next:null}}function ic(a,b){if(b!=a.R){var c=a.R;if(!c||c.ib<=b.ib)b.next=c,a.R=b;else{do{var d=c.next;if(!d||d.ib<=b.ib){b.next=d;c.next=b;break}c=d}while(c)}}a.G|=2}
|
||||
function Lb(a){return a.M=a.M&63728|a.Ea()|jd(a)|id(a)|hd(a)}function wc(a,b){a.W=b<<12;a.Z=~b&4;a.T=b<<14;a.S=b<<16;if((b^a.M)&2048)for(var c=a.Fa.length;0<=--c;){var d=a.u[c];a.u[c]=a.Fa[c];a.Fa[c]=d}a.w=b>>14&3;c=a.M>>14&3;a.w!=c&&(a.wa[c]=a.u[6],a.u[6]=a.wa[a.w]);a.M=b;a.G|=2}function P(a,b){a.G&128||(a.W=a.Z=b,a.T=0)}function Ed(a,b,c){a.G&128||(a.W=a.Z=a.S=b,a.T=c||0)}function Fd(a,b,c,d){a.G&128||(a.W=a.Z=a.S=b,a.T=(c^b)&(d^b))}function Gd(a,b){a.G&128||(a.W=a.Z=a.S=b,a.T=a.W^a.S>>1)}
|
||||
function Hd(a,b,c,d){a.G&128||(a.W=a.Z=a.S=b,a.T=(c^d)&(d^b))}k.ga=function(a,b){if(!this.L){var c=!1;0>this.sa?this.sa=Lb(this):this.w||(a=4,c=!0);this.D&57344||(this.Oa=63222,this.xb=a);this.w=0;var d=this.oa(a|this.N),e=this.oa(a+2&65535|this.N);wc(this,e&-12289|this.sa>>2&12288);c&&(this.aa|=4,this.u[6]=4);Id(this,this.sa);Id(this,this.u[7]);N(this,d);this.G&=-113;this.sa=-1;if(26!=b)throw a;}};function Jd(a){var b=Kd(a),c=Kd(a)&-1793;a.M&49152&&(c=c&-225|a.M&63712);N(a,b);wc(a,c);a.G&=-17}
|
||||
function Ld(a,b,c){var d,e,f,g=0;d=b>>13;a.Pa&a.tc[a.w]||(d&=7);e=a.U[a.w][d];f=(a.ta[a.w][d]<<6)+(b&8191)&a.rb;if(f<a.Ta)f&1&&!(c&1)&&(a.aa|=64,a.ga(4,10));else if(a.Pa&16||253952<=f&&(f|=4186112),4186112>f){if(3932160<=f){f&=262143;var h=f>>13&31;31>h?a.Pa&32&&(f=a.wc[h]+(f&8190)&4194302,3932160<=f&&4186112>f&&console.log("panic(898)")):f|=4186112}f>=a.Ta&&4186112>f&&(a.aa|=32,a.ga(4,12))}switch(e&7){case 1:g=4096;case 2:e|=128;c&4&&(g=8192);break;case 4:g=4096;case 5:c&4&&(g=4096);case 6:e|=c&
|
||||
4?192:128;break;default:g=32768}32512!==(e&32520)&&(e&8?e&32512&&(b&8128)<(e>>2&8128)&&(g|=16384):(b&8128)>(e>>2&8128)&&(g|=16384));a.U[a.w][d]=e;if(4194170!==f||a.w)a.za=a.w,a.Aa=d;g&&(g&57344&&(0<=a.sa&&(g|=128),a.D&57344||(a.D=a.D|g|a.za<<5|a.Aa<<1),a.ga(168,16)),a.D&61440||!(4191360>f||4194239<f)||(a.D|=4096,a.D&512&&(a.G|=32)));return f}function Md(a,b){return a.A.tb(b)}function Nd(a,b,c){b&1&&a.b--;a.A.Gb(b,c&255)}function Kd(a){var b=a.oa(a.u[6]|a.N);a.u[6]=a.u[6]+2&65535;return b}
|
||||
function Id(a,b){var c=a.u[6]-2&65535;a.u[6]=c;a.D&57344||(a.Oa=a.Oa<<8|246);!a.w&&c<=a.Qa&&4<c&&(c<=a.Qa-32?(a.aa|=4,a.u[6]=4,a.ga(4,18)):(a.aa|=8,a.G|=4));a.zb(c,b)}
|
||||
function Od(a,b,c,d){var e,f,g=d&8?0:a.N;switch(b){case 0:return a.ga(4,20),0;case 1:return 6===c&&!a.w&&d&4&&(a.u[6]<=a.Qa||65534<=a.u[6])&&(a.u[6]<=a.Qa-32||65534<=a.u[6]?(a.aa|=4,a.u[6]=4,a.ga(4,22)):(a.aa|=8,a.G|=64)),a.b-=3,7===c?a.u[c]:a.u[c]|g;case 2:f=2;e=a.u[c];7!==c&&(e|=g,6>c&&d&1&&(f=1));a.b-=3;break;case 3:f=2;e=a.u[c];7!==c&&(e|=g);e=a.oa(e);e|=g;a.b-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.u[c]+f&65535;7!==c&&(e|=g);a.b-=4;break;case 5:f=-2;e=a.u[c]-2&65535;7!==c&&(e|=g);e=a.oa(e)|
|
||||
g;a.b-=8;break;case 6:return e=a.oa(ld(a,2)),e=e+a.u[c]&65535|g,a.b-=6,e;case 7:return e=a.oa(ld(a,2)),e=e+a.u[c]&65535,e=a.oa(e|a.N)|g,a.b-=10,e}a.u[c]=a.u[c]+f&65535;!g||a.D&57344||(a.Oa=a.Oa<<8|f<<3&248|c);6==c&&!a.w&&d&4&&0>=f&&(a.u[6]<=a.Qa||65534<=a.u[6])&&(a.u[6]<=a.Qa-32?(a.aa|=4,a.u[6]=4,a.ga(4,24)):(a.aa|=8,a.G|=64));return e}k.Db=function(a){if(!this.Ma)return this.A.Db(a);this.L++;a=Md(this,Ld(this,a,3));this.L--;return a};
|
||||
k.eb=function(a){if(!this.Ma)return this.A.eb(a);this.L++;a=this.fc(Ld(this,a,2));this.L--;return a};k.Ya=function(a,b){this.Ma?(this.L++,Nd(this,Ld(this,a,5),b),this.L--):this.A.Ya(a,b)};k.Hb=function(a,b){this.Ma?(this.L++,this.lc(Ld(this,a,4),b),this.L--):this.A.Hb(a,b)};k.rc=function(a,b,c){return Od(this,a,b,c)};k.sc=function(a,b,c){return Ld(this,Od(this,a,b,c),c)};k.fc=function(a){return this.A.na(a)};k.dd=function(a){return this.A.na(Ld(this,a,2))};k.lc=function(a,b){this.A.Za(a,b&65535)};
|
||||
k.Qd=function(a,b){this.A.Za(Ld(this,a,4),b)};function Pd(a,b,c){var d=a.f=b&7;(b=a.g=(b&56)>>3)?(d=Od(a,b,d,2),c&65536||61440!==(a.M&61440)&&(d&=65535),a.w=a.M>>12&3,c=a.oa(d|c&a.N),a.w=a.M>>14&3):c=6!=d||(a.M>>2&12288)===(a.M&12288)?a.u[d]:a.wa[a.M>>12&3];return c}function Qd(a,b,c,d){a.D&57344||(a.Oa=22);var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=Od(a,b,e,4),c&65536||(e&=65535),a.w=a.M>>12&3,e=Ld(a,e|c&65536,4),a.w=a.M>>14&3,a.A.Za(e,d)):6!=e||(a.M>>2&12288)===(a.M&12288)?a.u[e]=d:a.wa[a.M>>12&3]=d}
|
||||
function Rd(a,b){b>>=6;var c=a.H=b&7;return(b=a.F=(b&56)>>3)?Md(a,a.$(b,c,3)):a.u[c]&255}function Sd(a,b){b>>=6;var c=a.H=b&7;return(b=a.F=(b&56)>>3)?a.A.na(a.$(b,c,2)):a.u[c]}function Td(a,b){var c=a.f=b&7;b=a.g=(b&56)>>3;return Od(a,b,c,8)}function Ud(a,b){var c=a.f=b&7;return(b=a.g=(b&56)>>3)?Md(a,a.$(b,c,3)):a.u[c]&255}function Vd(a,b){var c=a.f=b&7;return(b=a.g=(b&56)>>3)?a.A.na(a.$(b,c,2)):a.u[c]}
|
||||
function Q(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=a.bb=a.$(b,e,7),Nd(a,e,d.call(a,c,Md(a,e)))):a.u[e]=a.u[e]&65280|d.call(a,c,a.u[e])}function R(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=a.$(b,e,6),a.A.Za(e,d.call(a,c,a.A.na(e)))):a.u[e]=d.call(a,c,a.u[e])}function Wd(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?Nd(a,a.$(b,e,5),c):a.u[e]=c?d&1?c<<24>>24&65535:a.u[e]&-256|c&255:a.u[e]&-256;return c}function Xd(a,b,c){var d=a.f=b&7;(b=a.g=(b&56)>>3)?a.A.Za(a.$(b,d,4),c):a.u[d]=c&65535;return c}
|
||||
function Lb(a){return a.M=a.M&63728|a.Ea()|jd(a)|id(a)|hd(a)}function wc(a,b){a.W=b<<12;a.Z=~b&4;a.T=b<<14;a.S=b<<16;if((b^a.M)&2048)for(var c=a.Fa.length;0<=--c;){var d=a.u[c];a.u[c]=a.Fa[c];a.Fa[c]=d}a.A=b>>14&3;c=a.M>>14&3;a.A!=c&&(a.wa[c]=a.u[6],a.u[6]=a.wa[a.A]);a.M=b;a.G|=2}function P(a,b){a.G&128||(a.W=a.Z=b,a.T=0)}function Ed(a,b,c){a.G&128||(a.W=a.Z=a.S=b,a.T=c||0)}function Fd(a,b,c,d){a.G&128||(a.W=a.Z=a.S=b,a.T=(c^b)&(d^b))}function Gd(a,b){a.G&128||(a.W=a.Z=a.S=b,a.T=a.W^a.S>>1)}
|
||||
function Hd(a,b,c,d){a.G&128||(a.W=a.Z=a.S=b,a.T=(c^d)&(d^b))}k.ga=function(a,b){if(!this.L){var c=!1;0>this.sa?this.sa=Lb(this):this.A||(a=4,c=!0);this.D&57344||(this.Oa=63222,this.xb=a);this.A=0;var d=this.oa(a|this.N),e=this.oa(a+2&65535|this.N);wc(this,e&-12289|this.sa>>2&12288);c&&(this.aa|=4,this.u[6]=4);Id(this,this.sa);Id(this,this.u[7]);N(this,d);this.G&=-113;this.sa=-1;if(26!=b)throw a;}};function Jd(a){var b=Kd(a),c=Kd(a)&-1793;a.M&49152&&(c=c&-225|a.M&63712);N(a,b);wc(a,c);a.G&=-17}
|
||||
function Ld(a,b,c){var d,e,f,g=0;d=b>>13;a.Pa&a.tc[a.A]||(d&=7);e=a.U[a.A][d];f=(a.ta[a.A][d]<<6)+(b&8191)&a.rb;if(f<a.Ta)f&1&&!(c&1)&&(a.aa|=64,a.ga(4,10));else if(a.Pa&16||253952<=f&&(f|=4186112),4186112>f){if(3932160<=f){f&=262143;var h=f>>13&31;31>h?a.Pa&32&&(f=a.wc[h]+(f&8190)&4194302,3932160<=f&&4186112>f&&console.log("panic(898)")):f|=4186112}f>=a.Ta&&4186112>f&&(a.aa|=32,a.ga(4,12))}switch(e&7){case 1:g=4096;case 2:e|=128;c&4&&(g=8192);break;case 4:g=4096;case 5:c&4&&(g=4096);case 6:e|=c&
|
||||
4?192:128;break;default:g=32768}32512!==(e&32520)&&(e&8?e&32512&&(b&8128)<(e>>2&8128)&&(g|=16384):(b&8128)>(e>>2&8128)&&(g|=16384));a.U[a.A][d]=e;if(4194170!==f||a.A)a.za=a.A,a.Aa=d;g&&(g&57344&&(0<=a.sa&&(g|=128),a.D&57344||(a.D=a.D|g|a.za<<5|a.Aa<<1),a.ga(168,16)),a.D&61440||!(4191360>f||4194239<f)||(a.D|=4096,a.D&512&&(a.G|=32)));return f}function Md(a,b){return a.w.tb(b)}function Nd(a,b,c){b&1&&a.b--;a.w.Gb(b,c&255)}function Kd(a){var b=a.oa(a.u[6]|a.N);a.u[6]=a.u[6]+2&65535;return b}
|
||||
function Id(a,b){var c=a.u[6]-2&65535;a.u[6]=c;a.D&57344||(a.Oa=a.Oa<<8|246);!a.A&&c<=a.Qa&&4<c&&(c<=a.Qa-32?(a.aa|=4,a.u[6]=4,a.ga(4,18)):(a.aa|=8,a.G|=4));a.zb(c,b)}
|
||||
function Od(a,b,c,d){var e,f,g=d&8?0:a.N;switch(b){case 0:return a.ga(4,20),0;case 1:return 6===c&&!a.A&&d&4&&(a.u[6]<=a.Qa||65534<=a.u[6])&&(a.u[6]<=a.Qa-32||65534<=a.u[6]?(a.aa|=4,a.u[6]=4,a.ga(4,22)):(a.aa|=8,a.G|=64)),a.b-=3,7===c?a.u[c]:a.u[c]|g;case 2:f=2;e=a.u[c];7!==c&&(e|=g,6>c&&d&1&&(f=1));a.b-=3;break;case 3:f=2;e=a.u[c];7!==c&&(e|=g);e=a.oa(e);e|=g;a.b-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.u[c]+f&65535;7!==c&&(e|=g);a.b-=4;break;case 5:f=-2;e=a.u[c]-2&65535;7!==c&&(e|=g);e=a.oa(e)|
|
||||
g;a.b-=8;break;case 6:return e=a.oa(ld(a,2)),e=e+a.u[c]&65535|g,a.b-=6,e;case 7:return e=a.oa(ld(a,2)),e=e+a.u[c]&65535,e=a.oa(e|a.N)|g,a.b-=10,e}a.u[c]=a.u[c]+f&65535;!g||a.D&57344||(a.Oa=a.Oa<<8|f<<3&248|c);6==c&&!a.A&&d&4&&0>=f&&(a.u[6]<=a.Qa||65534<=a.u[6])&&(a.u[6]<=a.Qa-32?(a.aa|=4,a.u[6]=4,a.ga(4,24)):(a.aa|=8,a.G|=64));return e}k.Db=function(a){if(!this.Ma)return this.w.Db(a);this.L++;a=Md(this,Ld(this,a,3));this.L--;return a};
|
||||
k.eb=function(a){if(!this.Ma)return this.w.eb(a);this.L++;a=this.fc(Ld(this,a,2));this.L--;return a};k.Ya=function(a,b){this.Ma?(this.L++,Nd(this,Ld(this,a,5),b),this.L--):this.w.Ya(a,b)};k.Hb=function(a,b){this.Ma?(this.L++,this.lc(Ld(this,a,4),b),this.L--):this.w.Hb(a,b)};k.rc=function(a,b,c){return Od(this,a,b,c)};k.sc=function(a,b,c){return Ld(this,Od(this,a,b,c),c)};k.fc=function(a){return this.w.na(a)};k.dd=function(a){return this.w.na(Ld(this,a,2))};k.lc=function(a,b){this.w.Za(a,b&65535)};
|
||||
k.Qd=function(a,b){this.w.Za(Ld(this,a,4),b)};function Pd(a,b,c){var d=a.f=b&7;(b=a.g=(b&56)>>3)?(d=Od(a,b,d,2),c&65536||61440!==(a.M&61440)&&(d&=65535),a.A=a.M>>12&3,c=a.oa(d|c&a.N),a.A=a.M>>14&3):c=6!=d||(a.M>>2&12288)===(a.M&12288)?a.u[d]:a.wa[a.M>>12&3];return c}function Qd(a,b,c,d){a.D&57344||(a.Oa=22);var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=Od(a,b,e,4),c&65536||(e&=65535),a.A=a.M>>12&3,e=Ld(a,e|c&65536,4),a.A=a.M>>14&3,a.w.Za(e,d)):6!=e||(a.M>>2&12288)===(a.M&12288)?a.u[e]=d:a.wa[a.M>>12&3]=d}
|
||||
function Rd(a,b){b>>=6;var c=a.H=b&7;return(b=a.F=(b&56)>>3)?Md(a,a.$(b,c,3)):a.u[c]&255}function Sd(a,b){b>>=6;var c=a.H=b&7;return(b=a.F=(b&56)>>3)?a.w.na(a.$(b,c,2)):a.u[c]}function Td(a,b){var c=a.f=b&7;b=a.g=(b&56)>>3;return Od(a,b,c,8)}function Ud(a,b){var c=a.f=b&7;return(b=a.g=(b&56)>>3)?Md(a,a.$(b,c,3)):a.u[c]&255}function Vd(a,b){var c=a.f=b&7;return(b=a.g=(b&56)>>3)?a.w.na(a.$(b,c,2)):a.u[c]}
|
||||
function Q(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=a.bb=a.$(b,e,7),Nd(a,e,d.call(a,c,Md(a,e)))):a.u[e]=a.u[e]&65280|d.call(a,c,a.u[e])}function R(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=a.$(b,e,6),a.w.Za(e,d.call(a,c,a.w.na(e)))):a.u[e]=d.call(a,c,a.u[e])}function Wd(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?Nd(a,a.$(b,e,5),c):a.u[e]=c?d&1?c<<24>>24&65535:a.u[e]&-256|c&255:a.u[e]&-256;return c}function Xd(a,b,c){var d=a.f=b&7;(b=a.g=(b&56)>>3)?a.w.Za(a.$(b,d,4),c):a.u[d]=c&65535;return c}
|
||||
function S(a,b,c){c&&(N(a,a.u[7]+(b<<24>>23)),a.b-=2);a.b-=3}
|
||||
k.nb=function(a){this.v.complete=!0;var b=this.v.pc=this.i&&Yd(this.i),c=a?this.v.Qb?0:1:-1;this.v.Qb=!1;this.ea=this.b=a;do{if(b){if(Zd(this.i,this.u[7],c)){this.ca();break}c=1}if(this.G&&(this.G&112&&(this.G&32?this.ga(168,28):this.G&64?this.ga(4,30):this.G&16&&this.ga(12,32),this.G&=-113),this.G&7))if(this.G&2){this.G&=-3;var d=160,e=(this.Pb&224)>>5;if(a=this.R&&this.R.ib>e?this.R:null)d=a.kd,e=a.ib;e>(this.M&224)>>5?(this.G&4&&(ld(this,2),this.G&=-5),this.ga(d,26),e=!0):e=!1;if(e&&a)if(e=this.R,
|
||||
e==a)this.R=a.next;else for(;e;){d=e.next;if(d==a){e.next=d.next;break}e=d}}else this.G&1&&this.G++;this.G=this.G&7|this.M&16;this.decode(kd(this))}while(0<this.b);return this.v.complete?this.ea-this.b:void 0===this.v.complete?0:-1};Ta(function(){for(var a=C(document,"pdp11","cpu"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new bd(d);A(d,c)}});function $d(a,b){var c=b+a;Fd(this,c,a,b);return c&65535}function ae(a,b){var c=b+a;Fd(this,c<<8,a<<8,b<<8);return c&255}
|
||||
k.nb=function(a){this.v.complete=!0;var b=this.v.pc=this.i&&Yd(this.i),c=a?this.v.Qb?0:1:-1;this.v.Qb=!1;this.da=this.b=a;do{if(b){if(Zd(this.i,this.u[7],c)){this.fa();break}c=1}if(this.G&&(this.G&112&&(this.G&32?this.ga(168,28):this.G&64?this.ga(4,30):this.G&16&&this.ga(12,32),this.G&=-113),this.G&7))if(this.G&2){this.G&=-3;var d=160,e=(this.Pb&224)>>5;if(a=this.R&&this.R.ib>e?this.R:null)d=a.kd,e=a.ib;e>(this.M&224)>>5?(this.G&4&&(ld(this,2),this.G&=-5),this.ga(d,26),e=!0):e=!1;if(e&&a)if(e=this.R,
|
||||
e==a)this.R=a.next;else for(;e;){d=e.next;if(d==a){e.next=d.next;break}e=d}}else this.G&1&&this.G++;this.G=this.G&7|this.M&16;this.decode(kd(this))}while(0<this.b);return this.v.complete?this.da-this.b:void 0===this.v.complete?0:-1};Ta(function(){for(var a=C(document,"pdp11","cpu"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new bd(d);B(d,c)}});function $d(a,b){var c=b+a;Fd(this,c,a,b);return c&65535}function ae(a,b){var c=b+a;Fd(this,c<<8,a<<8,b<<8);return c&255}
|
||||
function be(a,b){a=b<<1;Gd(this,a);return a&65535}function ce(a,b){a=b<<1;Gd(this,a<<8);return a&255}function de(a,b){a=b&32768|b>>1|b<<16;Gd(this,a);return a&65535}function ee(a,b){a=b&2048|b>>1|b<<8;Gd(this,a<<8);return a&255}function fe(a,b){a=b&~a;P(this,a);return a}function ge(a,b){a=b&~a;P(this,a<<8);return a}function he(a,b){a|=b;P(this,a);return a}function ie(a,b){a|=b;P(this,a<<8);return a}function je(a,b){a=~b|65536;Ed(this,a);return a&65535}
|
||||
function ke(a,b){a=~b|256;Ed(this,a<<8);return a&255}function le(a,b){a=b-a;this.G&128||(this.W=this.Z=a,this.T=b&(b^a));return a&65535}function me(a,b){a=b-a;var c=a<<8;b<<=8;this.G&128||(this.W=this.Z=c,this.T=b&(b^c));return a&255}function ne(a,b){a=b+a;this.G&128||(this.W=this.Z=a,this.T=a&(b^a));return a&65535}function oe(a,b){a=b+a;var c=a<<8;this.G&128||(this.W=this.Z=c,this.T=c&(b<<8^c));return a&255}function pe(a,b){a=-b;Ed(this,a,a&b&32768);return a&65535}
|
||||
function qe(a,b){a=-b;Ed(this,a<<8,(a&b&128)<<8);return a&255}function re(a,b){a=b<<1|this.S>>16&1;Gd(this,a);return a&65535}function se(a,b){a=b<<1|this.S>>16&1;Gd(this,a<<8);return a&255}function te(a,b){a=(this.S&65536|b)>>1|b<<16;Gd(this,a);return a&65535}function ue(a,b){a=((this.S&65536)>>8|b)>>1|b<<8;Gd(this,a<<8);return a&255}function ve(a,b){var c=b-a;Hd(this,c,a,b);return c&65535}function we(a,b){var c=b-a;Hd(this,c<<8,a<<8,b<<8);return c&255}
|
||||
|
|
@ -137,9 +137,9 @@ function Ie(a){P(this,Sd(this,a)&Vd(this,a));this.b-=this.g?4+(this.H&&6<=this.f
|
|||
function Pe(a){S(this,a,hd(this)||jd(this))}function Qe(a){S(this,a,!this.Ea()!=!id(this))}function Re(a){S(this,a,this.Ea())}function Se(a){S(this,a,!jd(this))}function Te(a){S(this,a,!this.Ea())}function Ue(){this.ga(12,1);this.b-=5}function Ve(a){S(this,a,!0)}function We(a){S(this,a,!id(this))}function Xe(a){S(this,a,id(this))}function T(a){a&1&&(this.S=0);a&2&&(this.T=0);a&4&&(this.Z=1);a&8&&(this.W=0);this.b-=5}
|
||||
function Ye(a){var b=Sd(this,a);a=Vd(this,a);Hd(this,b-a,a,b);this.b-=this.g?4+(this.H&&6<=this.f?1:0):(this.F?4:3)+(7==this.f?2:0)}function Ze(a){var b=Rd(this,a)<<8;a=Ud(this,a)<<8;Hd(this,b-a,a,b);this.b-=this.g?4+(this.H&&6<=this.f?1:0):(this.F?4:3)+(7==this.f?2:0)}
|
||||
function $e(a){var b=Vd(this,a);if(b){a=a>>6&7;var c=this.u[a]<<16|this.u[a|1];this.S=this.T=0;b&32768&&(b|=-65536);var d=~~(c/b);-32768<=d&&32767>=d?(this.u[a]=d&65535,this.u[a|1]=c-d*b&65535,this.Z=d>>16|d,this.W=d>>16):(this.T=32768,this.Z=d>>15|d,this.W=c>>16,-1===b&&65534===this.u[a]&&(this.u[a]=this.u[a|1]=1));this.b-=53}else this.Z=this.W=0,this.T=32768,this.S=65536,this.b-=7}function af(){this.ga(24,2);this.b-=25}
|
||||
function bf(){this.M&49152?(this.aa|=128,this.ga(4,3)):this.i?$b(this.i):this.ca();this.b-=7}function cf(){this.ga(16,4);this.b-=25}var df=[0,7,7,10,7,11,9,13];function ef(a){this.J=this.b;N(this,Td(this,a));this.b=this.J-df[this.g]}var ff=[0,14,14,17,14,18,16,20];function gf(a){this.J=this.b;var b=Td(this,a);a=a>>6&7;Id(this,this.u[a]);this.u[a]=this.u[7];N(this,b);this.b=this.J-ff[this.g]}var hf=[3,9,9,13,10,14,12,16,4,9,9,13,10,14,13,17];
|
||||
function bf(){this.M&49152?(this.aa|=128,this.ga(4,3)):this.i?$b(this.i):this.fa();this.b-=7}function cf(){this.ga(16,4);this.b-=25}var df=[0,7,7,10,7,11,9,13];function ef(a){this.J=this.b;N(this,Td(this,a));this.b=this.J-df[this.g]}var ff=[0,14,14,17,14,18,16,20];function gf(a){this.J=this.b;var b=Td(this,a);a=a>>6&7;Id(this,this.u[a]);this.u[a]=this.u[7];N(this,b);this.b=this.J-ff[this.g]}var hf=[3,9,9,13,10,14,12,16,4,9,9,13,10,14,13,17];
|
||||
function jf(a){var b=Sd(this,a);this.J=this.b;P(this,Xd(this,a,b));this.b=this.J-hf[(this.F?8:0)+this.g]+(7!=this.f||this.g?0:2)}function kf(a){var b=Rd(this,a);P(this,Wd(this,a,b,1)<<8);this.b-=this.g?9+(this.H&&6<=this.f?1:0):(this.F?5:3)+(7==this.f?2:0)}var lf=[7,13,13,17,14,18,17,21];
|
||||
function mf(a){var b=Vd(this,a);a=a>>6&7;b&32768&&(b|=-65536);var c=this.u[a];c&32768&&(c|=-65536);b=~~(b*c);this.u[a]=b>>16&65535;this.u[a|1]=b&65535;this.G&128||(this.W=b>>16,this.Z=this.W|b,this.T=0,this.S=-32768>b||32767<b?65536:0);this.b-=23}function nf(){this.b-=5}function of(){this.M&49152||(fd(this),this.A.reset());this.b-=667}function pf(){Jd(this);this.G|=this.M&16;this.b-=13}
|
||||
function mf(a){var b=Vd(this,a);a=a>>6&7;b&32768&&(b|=-65536);var c=this.u[a];c&32768&&(c|=-65536);b=~~(b*c);this.u[a]=b>>16&65535;this.u[a|1]=b&65535;this.G&128||(this.W=b>>16,this.Z=this.W|b,this.T=0,this.S=-32768>b||32767<b?65536:0);this.b-=23}function nf(){this.b-=5}function of(){this.M&49152||(fd(this),this.w.reset());this.b-=667}function pf(){Jd(this);this.G|=this.M&16;this.b-=13}
|
||||
function qf(a){if(a&8)U.call(this,a);else{var b=Kd(this);a&=7;7==a?N(this,b):(N(this,this.u[a]),this.u[a]=b);this.b-=9}}function W(a){a&1&&(this.S=65536);a&2&&(this.T=32768);a&4&&(this.Z=0);a&8&&(this.W=32768);this.b-=5}function rf(a){var b=(a&448)>>6;if(this.u[b]=this.u[b]-1&65535)N(this,this.u[7]-((a&63)<<1)),this.b+=1;this.b-=6}function sf(a){R(this,a,Sd(this,a),ve);this.b-=this.g?9+(this.H&&6<=this.f?1:0):(this.F?5:3)+(7==this.f?2:0)}
|
||||
function tf(a){R(this,a,0,xe);this.b-=this.g?9:3+(7==this.f?2:0)}function uf(){this.ga(28,5);this.b-=5}function vf(){this.G&4||this.B.ba();this.G|=4;ld(this,-2);this.b-=3}function wf(a){R(this,a,Sd(this,a),ye);this.b-=this.g?9:3+(7==this.f?2:0)}function U(a){var b;if(b=this.i)b=this.i,D(b,"undefined opcode "+J(b,a),!0,!0),b=$b(b);b||this.ga(8,6)}function cd(a){xf[a>>12].call(this,a)}function yf(a){zf[a>>6&3].call(this,a)}function Af(a){Bf[a>>6&3].call(this,a)}
|
||||
function Cf(a){Df[a>>6&3].call(this,a)}function Ef(a){Ff[a&15].call(this,a)}function Gf(a){Hf[a&15].call(this,a)}function If(a){Jf[a>>6&3].call(this,a)}function Kf(a){Lf[a>>6&3].call(this,a)}function Mf(a){Nf[a>>6&3].call(this,a)}
|
||||
|
|
@ -151,37 +151,37 @@ this.f?2:0)}],Nf=[function(a){Q(this,a,0,ue);this.b-=this.g?9+(this.bb&1):3+(7==
|
|||
var Sf=[function(a){lg[a>>8&15].call(this,a)},jf,Ye,Ie,Ee,Ge,ze,function(a){mg[a>>8&15].call(this,a)},function(a){ng[a>>8&15].call(this,a)},kf,Ze,Je,Fe,He,sf,U],lg=[function(a){og[a>>4&15].call(this,a)},Ve,Se,Ke,Le,Qe,Me,Oe,gf,gf,yf,Af,Cf,function(a){pg[a>>6&3].call(this,a)},U,U],pg=[function(a){a=this.u[7]+((a&63)<<1)&65535;var b=this.oa(a|this.N);N(this,this.u[5]);this.u[6]=a+2&65535;this.u[5]=b;this.b-=8},function(a){a=Pd(this,a,0);Id(this,a);P(this,a);this.b-=11},function(a){var b=Kd(this);this.J=
|
||||
this.b;Qd(this,a,0,b);P(this,b);this.b=this.J-lf[this.g]},function(a){P(this,Xd(this,a,this.Ea?65535:0));this.b-=this.g?9:3+(7==this.f?2:0)}],og=[function(a){qg[a&15].call(this,a)},U,U,U,ef,ef,ef,ef,qf,function(a){a&8?(this.M&49152||(this.M=this.M&-2017|(a&7)<<5,this.G|=1),this.b-=5):U.call(this,a)},Ef,Gf,tf,tf,tf,tf],qg=[bf,vf,pf,Ue,cf,of,function(){Jd(this);this.b-=13},U,U,U,U,U,U,U,U,U],mg=[mf,mf,$e,$e,Ae,Ae,Be,Be,wf,wf,U,U,U,U,rf,rf],ng=[Te,Re,Ne,Pe,We,Xe,Ce,De,af,uf,If,Kf,Mf,function(a){rg[a>>
|
||||
6&3].call(this,a)},U,U],rg=[U,function(a){a=Pd(this,a,65536);Id(this,a);P(this,a);this.b-=11},function(a){var b=Kd(this);this.J=this.b;Qd(this,a,65536,b);P(this,b);this.b=this.J-lf[this.g]},U];
|
||||
function sg(a){r.call(this,"ROM",a,sg);this.fa=this.f=null;this.D=a.addr;this.g=a.size;this.w=a.alias;this.B=a.file;this.F=oa(this.B);if(this.B){a=this.B;var b=pa(this.F);"json"!=b&&"hex"!=b&&(a=ra()+"/api/v1/dump?file="+this.B+"&format=bytes&decimal=true");var c=this;Ba(a,null,!0,function(a,b,f){f?c.ia("Unable to load ROM resource (error "+f+": "+a+")"):(jb(c.Sa,a,b),(a=Ca(a,b))?(c.f=a.la,c.fa=a.fa):c.B=null,tg(c))})}}u(sg);sg.prototype.Ca=function(a,b,c,d){this.A=b;this.b=c;this.i=d;tg(this)};
|
||||
sg.prototype.ya=function(){this.fa&&(this.i&&ug(this.i,this.id,this.D,this.g,this.fa),delete this.fa);return!0};sg.prototype.xa=function(){return!0};
|
||||
function tg(a){if(!pb(a)){if(a.B){if(!a.f||!a.A)return;a.g||(a.g=a.f.length);if(a.f.length!=a.g)rb(a,"ROM size ("+l(a.f.length,8,!0)+") does not match specified size ("+l(a.g,8,!0)+")");else{var b;b=a.D;if(Yb(a.A,b,a.g,Dc)){var c;for(c=0;c<a.f.length;c++)a.A.Ya(b+c,a.f[c]);b=!0}else b=!1;if(b){b=[];"number"==typeof a.w?b.push(a.w):null!=a.w&&a.w.length&&(b=a.w);for(c=0;c<b.length;c++){var d=a,e=b[c],f=Xb(d.A,d.D,d.g);Wb(d.A,e,d.g,f)}delete a.f}}}H(a)}}
|
||||
Ta(function(){for(var a=C(document,"pdp11","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new sg(d);A(d,c)}});
|
||||
function vg(a){r.call(this,"RAM",a,vg);this.fa=this.g=null;this.B=a.addr;this.D=a.size;this.Ia=a.load;this.Ha=a.exec;this.w=!1;this.f=a.file;this.F=oa(this.f);if(this.f){a=this.f;var b=pa(this.F);"json"!=b&&"hex"!=b&&(a=ra()+"/api/v1/dump?file="+this.f+"&format=bytes&decimal=true");var c=this;Ba(a,null,!0,function(a,b,f){f?c.ia("Unable to load RAM resource (error "+f+": "+a+")"):(jb(c.Sa,a,b),(a=Ca(a,b))?(c.g=a.la,c.fa=a.fa,null==c.Ia&&(c.Ia=a.Ia),null==c.Ha&&(c.Ha=a.Ha)):c.f=null,wg(c))})}}u(vg);
|
||||
vg.prototype.Ca=function(a,b,c,d){this.A=b;this.b=c;this.i=d;wg(this)};vg.prototype.ya=function(){this.fa&&(this.i&&ug(this.i,this.id,this.B,this.D,this.fa),delete this.fa);return!0};vg.prototype.xa=function(){return!0};function wg(a){if(a.A&&(!a.w&&a.D&&Yb(a.A,a.B,a.D,1)&&(a.w=!0),!pb(a))){if(!a.w)n("No RAM allocated");else if(a.f){if(!a.g||!a.A)return;xg(a,a.g,a.Ia,a.Ha,a.B)}H(a)}}
|
||||
vg.prototype.reset=function(){if(this.w){for(var a=this.A,b=this.B,c=this.D,d=b&a.A,b=b>>>a.ha;0<c&&b<a.V.length;){var e=a.V[b],f=c,g,d=d||0;void 0===f&&(f=e.size);if(sb)for(g=d;f--&&g<e.f.length;g++)e.f[g]=0;else for(g=d;f--&&g<e.size;g++)e.Jb(d,0,e.C+d);c-=a.ua;b++;d=0}this.g&&xg(this,this.g,this.Ia,this.Ha,this.B,!0)}};
|
||||
function xg(a,b,c,d,e,f){var g=!1;if(null==c)for(var h=0;h<b.length-1;){var m=b[h]&255|(b[h+1]&255)<<8;if(m)if(m&255){if(1!=m)break;if(h+6>=b.length)break;for(var h=h+2,p=b[h++]&255|(b[h++]&255)<<8,q=b[h++]&255|(b[h++]&255)<<8,m=m+((p&255)+(p>>8)+(q&255)+(q>>8)),v=h,w=p-=6;0<p&&h<b.length;)m+=b[h++]&255,p--;if(p||h>=b.length)break;m+=b[h++]&255;if(m&255)break;if(w)for(;w--;)a.b.Ya(q++,b[v++]&255);else q&1?a.b.ca():gd(a.b,q,f);g=!0}else h++;else h+=2}if(!g&&(null==c&&(c=e),null!=c)){for(e=0;e<b.length;e++)a.b.Ya(c+
|
||||
e,b[e]);null!=d&&gd(a.b,d,f);g=!0}return g}Ta(function(){for(var a=C(document,"pdp11","ram"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new vg(d);A(d,c)}});function yg(a){r.call(this,"Keyboard",a,yg,65536);H(this)}u(yg);yg.prototype.qa=function(){return!1};yg.prototype.Ca=function(a,b,c,d){this.B=a;this.b=c;this.i=d};Ta(function(){for(var a=C(document,"pdp11","keyboard"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new yg(d);A(d,c)}});
|
||||
function X(a){this.L=a.baudReceive||9600;this.O=a.baudTransmit||9600;this.w=this.F=null;this.R=a.tabSize;this.N=a.charBOL;this.H=0;r.call(this,"SerialPort",a,X,8388608);var b=a.binding;if("console"==b)this.F="";else{var c;a=zg;b&&(void 0===c&&(c="Panel"),(c=mb(c,this.id))&&(b=c.I[b])&&this.qa(null,a,b))}this.J=this.K=null;this.exports={connect:this.cc,receiveData:this.Ob}}u(X);var zg="buffer";k=X.prototype;
|
||||
k.qa=function(a,b,c){var d=this;switch(b){case zg:return this.I[b]=this.w=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),d.Ob(b);return!0},c.onkeypress=function(a){a=a||window.event;d.Ob(a.which||a.keyCode);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
|
||||
k.Ca=function(a,b,c,d){this.B=a;this.A=b;this.b=c;this.i=d;var e=this;this.ea=kc(48,4);this.X=hc(this.b,function(){e.f&128||!e.D.length||(e.P=e.D.shift()&255,e.f|=128,e.f&64&&ic(e.b,e.ea))});this.ka=kc(52,4);this.Y=hc(this.b,function(){e.g|=128;e.g&64&&ic(e.b,e.ka)});ec(b,this,Ag);H(this)};
|
||||
function sg(a){r.call(this,"ROM",a,sg);this.ea=this.f=null;this.D=a.addr;this.g=a.size;this.A=a.alias;this.B=a.file;this.F=oa(this.B);if(this.B){a=this.B;var b=pa(this.F);"json"!=b&&"hex"!=b&&(a=ra()+"/api/v1/dump?file="+this.B+"&format=bytes&decimal=true");var c=this;Ba(a,null,!0,function(a,b,f){f?c.ia("Unable to load ROM resource (error "+f+": "+a+")"):(jb(c.Sa,a,b),(a=Ca(a,b))?(c.f=a.la,c.ea=a.ea):c.B=null,tg(c))})}}u(sg);sg.prototype.Ca=function(a,b,c,d){this.w=b;this.b=c;this.i=d;tg(this)};
|
||||
sg.prototype.ya=function(){this.ea&&(this.i&&ug(this.i,this.id,this.D,this.g,this.ea),delete this.ea);return!0};sg.prototype.xa=function(){return!0};
|
||||
function tg(a){if(!pb(a)){if(a.B){if(!a.f||!a.w)return;a.g||(a.g=a.f.length);if(a.f.length!=a.g)rb(a,"ROM size ("+l(a.f.length,8,!0)+") does not match specified size ("+l(a.g,8,!0)+")");else{var b;b=a.D;if(Yb(a.w,b,a.g,Dc)){var c;for(c=0;c<a.f.length;c++)a.w.Ya(b+c,a.f[c]);b=!0}else b=!1;if(b){b=[];"number"==typeof a.A?b.push(a.A):null!=a.A&&a.A.length&&(b=a.A);for(c=0;c<b.length;c++){var d=a,e=b[c],f=Xb(d.w,d.D,d.g);Wb(d.w,e,d.g,f)}delete a.f}}}H(a)}}
|
||||
Ta(function(){for(var a=C(document,"pdp11","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new sg(d);B(d,c)}});
|
||||
function vg(a){r.call(this,"RAM",a,vg);this.ea=this.g=null;this.B=a.addr;this.D=a.size;this.Ia=a.load;this.Ha=a.exec;this.A=!1;this.f=a.file;this.F=oa(this.f);if(this.f){a=this.f;var b=pa(this.F);"json"!=b&&"hex"!=b&&(a=ra()+"/api/v1/dump?file="+this.f+"&format=bytes&decimal=true");var c=this;Ba(a,null,!0,function(a,b,f){f?c.ia("Unable to load RAM resource (error "+f+": "+a+")"):(jb(c.Sa,a,b),(a=Ca(a,b))?(c.g=a.la,c.ea=a.ea,null==c.Ia&&(c.Ia=a.Ia),null==c.Ha&&(c.Ha=a.Ha)):c.f=null,wg(c))})}}u(vg);
|
||||
vg.prototype.Ca=function(a,b,c,d){this.w=b;this.b=c;this.i=d;wg(this)};vg.prototype.ya=function(){this.ea&&(this.i&&ug(this.i,this.id,this.B,this.D,this.ea),delete this.ea);return!0};vg.prototype.xa=function(){return!0};function wg(a){if(a.w&&(!a.A&&a.D&&Yb(a.w,a.B,a.D,1)&&(a.A=!0),!pb(a))){if(!a.A)n("No RAM allocated");else if(a.f){if(!a.g||!a.w)return;xg(a,a.g,a.Ia,a.Ha,a.B)}H(a)}}
|
||||
vg.prototype.reset=function(){if(this.A){for(var a=this.w,b=this.B,c=this.D,d=b&a.w,b=b>>>a.ha;0<c&&b<a.V.length;){var e=a.V[b],f=c,g,d=d||0;void 0===f&&(f=e.size);if(sb)for(g=d;f--&&g<e.f.length;g++)e.f[g]=0;else for(g=d;f--&&g<e.size;g++)e.Jb(d,0,e.C+d);c-=a.ua;b++;d=0}this.g&&xg(this,this.g,this.Ia,this.Ha,this.B,!0)}};
|
||||
function xg(a,b,c,d,e,f){var g=!1;if(null==c)for(var h=0;h<b.length-1;){var m=b[h]&255|(b[h+1]&255)<<8;if(m)if(m&255){if(1!=m)break;if(h+6>=b.length)break;for(var h=h+2,p=b[h++]&255|(b[h++]&255)<<8,q=b[h++]&255|(b[h++]&255)<<8,m=m+((p&255)+(p>>8)+(q&255)+(q>>8)),v=h,w=p-=6;0<p&&h<b.length;)m+=b[h++]&255,p--;if(p||h>=b.length)break;m+=b[h++]&255;if(m&255)break;if(w)for(;w--;)a.b.Ya(q++,b[v++]&255);else q&1?a.b.fa():gd(a.b,q,f);g=!0}else h++;else h+=2}if(!g&&(null==c&&(c=e),null!=c)){for(e=0;e<b.length;e++)a.b.Ya(c+
|
||||
e,b[e]);null!=d&&gd(a.b,d,f);g=!0}return g}Ta(function(){for(var a=C(document,"pdp11","ram"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new vg(d);B(d,c)}});function yg(a){r.call(this,"Keyboard",a,yg,65536);H(this)}u(yg);yg.prototype.qa=function(){return!1};yg.prototype.Ca=function(a,b,c,d){this.B=a;this.b=c;this.i=d};Ta(function(){for(var a=C(document,"pdp11","keyboard"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new yg(d);B(d,c)}});
|
||||
function X(a){this.L=a.baudReceive||9600;this.O=a.baudTransmit||9600;this.A=this.F=null;this.R=a.tabSize;this.N=a.charBOL;this.H=0;r.call(this,"SerialPort",a,X,8388608);var b=a.binding;if("console"==b)this.F="";else{var c;a=zg;b&&(void 0===c&&(c="Panel"),(c=mb(c,this.id))&&(b=c.I[b])&&this.qa(null,a,b))}this.J=this.K=null;this.exports={connect:this.cc,receiveData:this.Ob}}u(X);var zg="buffer";k=X.prototype;
|
||||
k.qa=function(a,b,c){var d=this;switch(b){case zg:return this.I[b]=this.A=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),d.Ob(b);return!0},c.onkeypress=function(a){a=a||window.event;d.Ob(a.which||a.keyCode);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
|
||||
k.Ca=function(a,b,c,d){this.B=a;this.w=b;this.b=c;this.i=d;var e=this;this.da=kc(48,4);this.X=hc(this.b,function(){e.f&128||!e.D.length||(e.P=e.D.shift()&255,e.f|=128,e.f&64&&ic(e.b,e.da))});this.ka=kc(52,4);this.Y=hc(this.b,function(){e.g|=128;e.g&64&&ic(e.b,e.ka)});ec(b,this,Ag);H(this)};
|
||||
k.cc=function(){if(!this.J){var a=Qc(this.B,"connection");if(a){var b=a.split("->");if(2==b.length){var c=va(b[0]);if(c!=this.$a)return;b=va(b[1]);if(this.J=lb(b)){var d=this.J.exports;if(d){var e=d.connect;e&&e.call(this.J);if(this.K=d.receiveData){this.status(this.Sa+"."+c+" connected to "+b);return}}}}this.status("Unable to establish connection: "+a)}}};k.ya=function(a,b){if(!b)if(this.cc(),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};
|
||||
k.xa=function(a){return a?this.save():!0};k.reset=function(){Bg(this)};k.save=function(){var a=new O(this);a.set(0,[]);return a.data()};k.restore=function(){return Bg(this)};function Bg(a){a.P=0;a.f=0;a.g=128;a.D=[];return!0}k.Ob=function(a){if("number"==typeof a)this.D.push(a);else if("string"==typeof a)for(var b=0;b<a.length;b++)this.D.push(a.charCodeAt(b));else this.D=this.D.concat(a);jc(this.b,this.X,1E3/Math.round(this.L/10));return!0};k.Tc=function(){return this.f&65534};
|
||||
k.Fd=function(a){this.f=this.f&-112|a&111};k.Sc=function(){this.f&=-129;0<this.D.length&&jc(this.b,this.X,1E3/Math.round(this.L/10));return this.P};k.Ed=function(){};k.fd=function(){return this.g};k.Sd=function(a){128==(this.g&192)&&a&64&&jc(this.b,this.Y,1E3/Math.round(this.O/10));this.g=this.g&-70|a&69};k.ed=function(){return 0};
|
||||
k.Rd=function(a){if(a&=255){D(this,"transmitByte("+l(a,2,!0)+")");this.K&&this.K.call(this.J,a);if(this.w)if(13==a)this.H=0;else if(8==a)this.w.value=this.w.value.slice(0,-1),0<this.H&&this.H--;else{var b;b=(b=wa[a])?"<"+b+">":String.fromCharCode(a);var c=b.length;32>a&&1==c&&(c=0);9==a&&(a=this.R||8,c=a-this.H%a,this.R&&(b=ua("",c)));this.N&&!this.H&&c&&(b=String.fromCharCode(this.N)+b);this.w.value+=b;this.w.scrollTop=this.w.scrollHeight;this.H+=c}else if(null!=this.F){if(10==a||1024<=this.F.length)this.j(this.F),
|
||||
this.F="";10!=a&&(this.F+=String.fromCharCode(a))}this.g&=-129;jc(this.b,this.Y,1E3/Math.round(this.O/10))}};var Cg={},Ag=(Cg[65392]=[null,null,X.prototype.Tc,X.prototype.Fd,"RCSR"],Cg[65394]=[null,null,X.prototype.Sc,X.prototype.Ed,"RBUF"],Cg[65396]=[null,null,X.prototype.fd,X.prototype.Sd,"XCSR"],Cg[65398]=[null,null,X.prototype.ed,X.prototype.Rd,"XBUF"],Cg);Ta(function(){for(var a=C(document,"pdp11","serial"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new X(d);A(d,c)}});
|
||||
function xc(a){r.call(this,"PC11",a,xc);this.g=a.autoMount||null;this.D=0;this.X=a.baudReceive||3600;this.K=this.L=this.f=0;this.J=[];this.H=Dg;this.w=Eg;this.F="";this.O=-1;this.N=!La("Mobi")&&window&&"FileReader"in window}u(xc);var Dg="",Eg=0;k=xc.prototype;
|
||||
k.Rd=function(a){if(a&=255){D(this,"transmitByte("+l(a,2,!0)+")");this.K&&this.K.call(this.J,a);if(this.A)if(13==a)this.H=0;else if(8==a)this.A.value=this.A.value.slice(0,-1),0<this.H&&this.H--;else{var b;b=(b=wa[a])?"<"+b+">":String.fromCharCode(a);var c=b.length;32>a&&1==c&&(c=0);9==a&&(a=this.R||8,c=a-this.H%a,this.R&&(b=ua("",c)));this.N&&!this.H&&c&&(b=String.fromCharCode(this.N)+b);this.A.value+=b;this.A.scrollTop=this.A.scrollHeight;this.H+=c}else if(null!=this.F){if(10==a||1024<=this.F.length)this.j(this.F),
|
||||
this.F="";10!=a&&(this.F+=String.fromCharCode(a))}this.g&=-129;jc(this.b,this.Y,1E3/Math.round(this.O/10))}};var Cg={},Ag=(Cg[65392]=[null,null,X.prototype.Tc,X.prototype.Fd,"RCSR"],Cg[65394]=[null,null,X.prototype.Sc,X.prototype.Ed,"RBUF"],Cg[65396]=[null,null,X.prototype.fd,X.prototype.Sd,"XCSR"],Cg[65398]=[null,null,X.prototype.ed,X.prototype.Rd,"XBUF"],Cg);Ta(function(){for(var a=C(document,"pdp11","serial"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new X(d);B(d,c)}});
|
||||
function xc(a){r.call(this,"PC11",a,xc);this.g=a.autoMount||null;this.D=0;this.X=a.baudReceive||3600;this.K=this.L=this.f=0;this.J=[];this.H=Dg;this.A=Eg;this.F="";this.O=-1;this.N=!La("Mobi")&&window&&"FileReader"in window}u(xc);var Dg="",Eg=0;k=xc.prototype;
|
||||
k.qa=function(a,b,c){var d=this,e=Eg;switch(b){case "listTapes":return this.I[b]=c,c.onchange=function(){var a=d.I.descTape,b=c.options[c.selectedIndex];if(a&&b){var e={};if(b=b.getAttribute("data-value"))try{e=eval("("+b+")")}catch(m){n("PC11 option error: "+m.message)}b=e.desc;void 0===b&&(b="");e=e.href;void 0!==e&&(b='<a href="'+e+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descTape":return this.I[b]=c,!0;case "loadTape":e=2;case "attachTape":return e||(e=1),this.I[b]=c,c.onclick=
|
||||
function(){var a=d.I.listTapes;a&&Fg(d,a.options[a.selectedIndex].text,a.value,e)},!0;case "mountTape":if(!this.N){c.parentNode.removeChild(c);break}this.I[b]=c;c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length});c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Fg(d,oa(b,!0),b,1,a)}return!1};return!0;case "readProgress":return this.I[b]=c,!0}return!1};
|
||||
k.Ca=function(a,b,c,d){this.B=a;this.A=b;this.b=c;this.i=d;this.P=Gg(a);var e=this;if((this.g=Qc(this.B,"autoMount")||this.g)&&"string"==typeof this.g)try{this.g=eval("("+this.g+")")}catch(f){n("PC11 auto-mount error: "+f.message+" ("+this.g+")"),this.g=null}this.R=kc(56,4);this.Y=hc(this.b,function(){1==(e.f&32769)&&!(e.f&128)&&e.K<e.J.length&&(e.L=e.J[e.K++]&255,Hg(e,e.K/e.J.length*100),e.f|=128,e.f&=-2049,e.f&64&&ic(e.b,e.R))});ec(b,this,Ig);Jg(this,"None",Dg,!0);this.N&&Jg(this,"Local Tape","?");
|
||||
k.Ca=function(a,b,c,d){this.B=a;this.w=b;this.b=c;this.i=d;this.P=Gg(a);var e=this;if((this.g=Qc(this.B,"autoMount")||this.g)&&"string"==typeof this.g)try{this.g=eval("("+this.g+")")}catch(f){n("PC11 auto-mount error: "+f.message+" ("+this.g+")"),this.g=null}this.R=kc(56,4);this.Y=hc(this.b,function(){1==(e.f&32769)&&!(e.f&128)&&e.K<e.J.length&&(e.L=e.J[e.K++]&255,Hg(e,e.K/e.J.length*100),e.f|=128,e.f&=-2049,e.f&64&&ic(e.b,e.R))});ec(b,this,Ig);Jg(this,"None",Dg,!0);this.N&&Jg(this,"Local Tape","?");
|
||||
Jg(this,"Remote Tape","??");Kg(this)||H(this)};k.ya=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.xa=function(a){return a?this.save():!0};k.reset=function(){this.f&=-2241;this.L=0};function Kg(a){a.D=0;if(a.g){var b=a.g.path||"",c;if(!(c=a.g.name))a:{if((c=a.I.listTapes)&&c.options)for(var d=0;d<c.options.length;d++){var e=c.options[d];if(e.value==b){c=e.text;break a}}c=oa(b,!0)}b&&c?Lg(a,c,b,1,!0):Mg(a)}return!!a.D}
|
||||
function Fg(a,b,c,d,e){if(c)if("?"==c)a.ia('Use "Choose File" and "Mount" to select and load a local tape.');else{if("??"==c){c=window.prompt("Enter the URL of a remote tape image.","")||"";if(!c)return;b=oa(c);a.status("Attempting to load "+c+' as "'+b+'"');a.H="??"}else a.H=c;Lg(a,b,c,d,!1,e)}else Ng(a,!1)}
|
||||
function Lg(a,b,c,d,e,f){var g=-1;if(a.F.toLowerCase()!=c.toLowerCase()||a.w!=d)g++,Ng(a,!0),a.v.Ja?a.ia("PC11 busy"):(e&&(a.D++,E(a)&&D(a,"auto-loading tape: "+b)),Og(a,b,c,d,f)?g++:a.v.Ja=!0);g&&a.status(1==a.w?"tape attached":"tape loaded")}
|
||||
function Lg(a,b,c,d,e,f){var g=-1;if(a.F.toLowerCase()!=c.toLowerCase()||a.A!=d)g++,Ng(a,!0),a.v.Ja?a.ia("PC11 busy"):(e&&(a.D++,F(a)&&D(a,"auto-loading tape: "+b)),Og(a,b,c,d,f)?g++:a.v.Ja=!0);g&&a.status(1==a.A?"tape attached":"tape loaded")}
|
||||
function Og(a,b,c,d,e){var f=c;if(e){var g=new FileReader;g.onload=function(){var e=g.result;e&&(e=new Uint8Array(e,0,e.byteLength),Pg(a,b,c,d,e),a.H="?");Mg(a)};g.readAsArrayBuffer(e);return!0}0>c.indexOf("/api/v1/dump")&&(e=pa(c),f="json"==e||"gz"==e?encodeURI(c):ra()+"/api/v1/dump?path="+encodeURIComponent(c)+"&format=json");return!!Ba(f,null,!0,function(e,f,g){var h=0>g&&a.B&&!a.B.v.ja;g?a.ia('Unable to load tape "'+b+'" (error '+g+": "+e+")",h):(jb(a.Sa,e,f),(e=Ca(e,f))&&Pg(a,b,c,d,e.la,e.Ia,
|
||||
e.Ha));a.v.Ja=!1;a.D&&(a.D--,a.D||H(a));Mg(a)})}function Jg(a,b,c,d){if((a=a.I.listTapes)&&a.options){for(var e=0;e<a.options.length;e++)if(a.options[e].value==c)return;e=document.createElement("option");e.text=b;e.value=c;d&&a.childNodes[0]?a.insertBefore(e,a.childNodes[0]):a.appendChild(e)}}
|
||||
function Mg(a){var b=a.I.listTapes;if(b&&b.options){a=a.H||a.F;for(var c=0;c<b.options.length;c++)if(b.options[c].value==a){b.selectedIndex!=c&&(b.selectedIndex=c);break}c==b.options.length&&(b.selectedIndex=0)}}function Hg(a,b){b|=0;if(b!==a.O){var c=a.I.readProgress;c&&(c=(c=C(c,"pcjs-progress-bar"))&&c[0])&&c.style&&(c.style.width=b+"%");a.O=b}}
|
||||
function Pg(a,b,c,d,e,f,g){a.F=c;a.w=d;2==d?a.P&&xg(a.P,e,f,g)?a.status("tape loaded: "+b):(a.F="",a.H=Dg,a.w=Eg,a.ia("No load address available for tape: "+b)):(a.K=0,a.J=e,a.status("tape attached: "+b),Hg(a,0))}function Ng(a,b){if(a.F||!1===b)a.F="",b||(a.w&&a.status(1==a.w?"tape detached":"tape unloaded"),a.H=Dg,a.w=Eg,Mg(a))}k.save=function(){return(new O(this)).data()};k.restore=function(){return!0};k.Mc=function(){return this.f&65534};
|
||||
function Pg(a,b,c,d,e,f,g){a.F=c;a.A=d;2==d?a.P&&xg(a.P,e,f,g)?a.status("tape loaded: "+b):(a.F="",a.H=Dg,a.A=Eg,a.ia("No load address available for tape: "+b)):(a.K=0,a.J=e,a.status("tape attached: "+b),Hg(a,0))}function Ng(a,b){if(a.F||!1===b)a.F="",b||(a.A&&a.status(1==a.A?"tape detached":"tape unloaded"),a.H=Dg,a.A=Eg,Mg(a))}k.save=function(){return(new O(this)).data()};k.restore=function(){return!0};k.Mc=function(){return this.f&65534};
|
||||
k.yd=function(a){a&1&&(this.f&32768?(a&=-2,this.f&64&&ic(this.b,this.R)):(this.f&=-129,this.f|=2048,this.L=0,jc(this.b,this.Y,1E3/Math.round(this.X/10))));this.f=this.f&-66|a&65};k.Lc=function(){this.f&=-129;this.f|=2048;return this.L};k.xd=function(){};var Qg={},Ig=(Qg[65384]=[null,null,xc.prototype.Mc,xc.prototype.yd,"PRS"],Qg[65386]=[null,null,xc.prototype.Lc,xc.prototype.xd,"PRB"],Qg);
|
||||
function Rg(a){r.call(this,"Debugger",a,Rg);this.Y=a.base||16;this.va=!1;this.J=0;this.O=!1;this.w=-1;this.g=[];this.R={}}u(Rg);var Sg={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9};Rg.prototype.Zb=function(){return-1};Rg.prototype.$b=function(){};
|
||||
function Tg(a,b,c,d){if(c)if(b){0>a.w&&a.g.length&&(a.w=0);if(0>a.w||b!=a.g[a.w])a.g.splice(0,0,b),a.w=0;a.w--}else a.O?b="end":b=a.g[a.w+1];a=[];if(b){b=b.replace(/""/g,"'");c=0;var e=null;d=d||";";for(var f=0;f<=b.length;f++){var g=b.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==d&&!e||!g)a.push(va(b.substring(c,f))),c=f+1}}return a}
|
||||
function Rg(a){r.call(this,"Debugger",a,Rg);this.Y=a.base||16;this.va=!1;this.J=0;this.O=!1;this.A=-1;this.g=[];this.R={}}u(Rg);var Sg={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9};Rg.prototype.Zb=function(){return-1};Rg.prototype.$b=function(){};
|
||||
function Tg(a,b,c,d){if(c)if(b){0>a.A&&a.g.length&&(a.A=0);if(0>a.A||b!=a.g[a.A])a.g.splice(0,0,b),a.A=0;a.A--}else a.O?b="end":b=a.g[a.A+1];a=[];if(b){b=b.replace(/""/g,"'");c=0;var e=null;d=d||";";for(var f=0;f<=b.length;f++){var g=b.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==d&&!e||!g)a.push(va(b.substring(c,f))),c=f+1}}return a}
|
||||
function Ug(a,b,c){for(c=c||-1;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e=a.pop(),f=a.pop();switch(d){case "*":d=f*e;break;case "/":if(!e)return!1;d=f/e;break;case "%":if(!e)return!1;d=f%e;break;case "+":d=f+e;break;case "-":d=f-e;break;case "<<":d=f<<e;break;case ">>":d=f>>e;break;case ">>>":d=f>>>e;break;case "<":d=f<e?1:0;break;case "<=":d=f<=e?1:0;break;case ">":d=f>e?1:0;break;case ">=":d=f>=e?1:0;break;case "==":d=f==e?1:0;break;case "!=":d=f!=e?1:0;break;case "&":d=f&e;break;
|
||||
case "^":d=f^e;break;case "|":d=f|e;break;case "&&":d=f&&e?1:0;break;case "||":d=f||e?1:0;break;default:return!1}a.push(d|0)}return!0}
|
||||
function Vg(a,b,c){var d;if(b){b=Wg(a,b);for(var e=0,f=!1,g=b,h=[],m=[],p=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);e<p.length;){var q=p[e++],v=q.length,q=va(q);if(!q){f=!0;break}q=Xg(a,q,null,!1===c);if(void 0===q){f=!0;c=!1;break}h.push(q);if(e==p.length)break;var q=p[e++],w=q.length;m.length&&Sg[q]<Sg[m[m.length-1]]&&Ug(h,m,1);m.push(q);b=b.substr(v+w)}Ug(h,m)&&1==h.length||(f=!0);f?c&&a.j("error parsing '"+g+"' at character "+(g.length-b.length)):(d=h.pop(),c&&Yg(a,null,
|
||||
|
|
@ -196,74 +196,74 @@ fh={61440:{4096:[62,4032,63],8192:[47,4032,63],12288:[18,4032,63],16384:[14,4032
|
|||
33024:[23,4096],33280:[13,4096],33536:[21,4096],33792:[28,4096],34048:[29,4096],34304:[8,4096],34560:[9,4096],34816:[106,32768],35072:[107,32768]},65472:{64:[56,63],192:[95,63],2560:[39,63],2624:[49,63],2688:[53,63],2752:[51,63],2816:[67,63],2880:[1,63],2944:[77,63],3008:[97,63],3072:[73,63],3136:[71,63],3200:[6,63],3264:[4,63],3328:[58,24576],3392:[60,63],3456:[65,63],3520:[96,63],35328:[40,63],35392:[50,63],35456:[54,63],35520:[52,63],35584:[68,63],35648:[2,63],35712:[78,63],35776:[98,63],35840:[74,
|
||||
63],35904:[72,63],35968:[7,63],36032:[5,63],36096:[66,63],36160:[59,63],36224:[64,63],36288:[61,63]},65528:{128:[76,7],152:[108,12288]},65535:{0:[55],1:[99],2:[75],3:[26],4:[109],5:[70],6:[110],7:[111],160:[69],161:[31],162:[41],163:[33],164:[45],165:[36],166:[43],167:[35],168:[38],169:[32],170:[42],171:[34],172:[46],173:[37],174:[44],175:[30],176:[69],177:[80],178:[88],179:[82],180:[92],181:[85],182:[90],183:[84],184:[87],185:[81],186:[89],187:[83],188:[93],189:[86],190:[91],191:[79]}},gh=[0],hh=
|
||||
[58,60,65,96,108,110,100,101,102,103,104,105,59,64];k=$g.prototype;
|
||||
k.Ca=function(a,b,c,d){this.A=b;this.b=c;this.B=a;(a=Qc(a,"messages"))&&ch(this,a);this.bb=fh;this.qb=1145>this.b.fb?hh:[];ih(this,function(a){a:{var b=d.A.V,c=a[0],e=a=0,m=b.length;if(c){a=d.$(jh(d,c));if(-1===a){d.j("invalid address: "+c);break a}e=a>>>d.A.ha;m=1}d.j("blockid physical blockaddr used size type");d.j("-------- --------- ---------- ------ ------ ----");for(var c=-1,p=0;m--;){var q=b[e];q.type==c?p++||d.j("..."):(c=q.type,p=bc[c],q&&d.j(l(q.id,8)+" %"+l(e<<d.A.ha,
|
||||
8)+" %%"+l(q.C,8)+" "+l(q.yb,4,!0)+" "+l(q.size,4,!0)+" "+p),c!=Cc&&(c=-1),p=0);a+=d.A.ua;e++}}});H(this)};
|
||||
k.qa=function(a,b,c){var d=this;switch(b){case "debugInput":return this.ea=this.I[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",Tc(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.w<d.g.length-1&&(b=d.g[++d.w])):40==a.keyCode&&(0<d.w?b=d.g[--d.w]:(b="",d.w=-1)),null!=b){var e=b.length;c.value=b;c.setSelectionRange(e,e)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.I[b]=c,Na(c,function(){if(d.ea){var a=d.ea.value;
|
||||
d.ea.value="";Tc(d,a,!0);return!0}return!1}),!0;case "step":return this.I[b]=c,Na(c,function(a){var b=!1;ob(d,!0)||(nb(d,!0),b=d.nb(a?1:0),nb(d,!1));return b}),!0}return!1};k.lb=function(){this.ea&&this.ea.focus()};k.$=function(a){a=a&&a.C;null==a&&(a=-1);return a};k.tb=function(a,b){var c=255,d=this.$(a,!1,1);-1!==d&&(c=a.Ab?this.A.Db(d):this.b.Db(d),b&&kh(a,b));return c};k.na=function(a,b){var c=65535,d=this.$(a,!1,2);-1!==d&&(c=a.Ab?this.A.eb(d):this.b.eb(d),b&&kh(a,b));return c};
|
||||
k.Gb=function(a,b,c){var d=this.$(a,!0,1);-1!==d&&(a.Ab?this.A.Ya(d,b):this.b.Ya(d,b),c&&kh(a,c),this.B.ba(!0))};k.Za=function(a,b,c){var d=this.$(a,!0,2);-1!==d&&(a.Ab?this.A.Hb(d,b):this.b.Hb(d,b),c&&kh(a,c),this.B.ba(!0))};function Z(a,b){return{C:a,Ab:b,Ba:!1}}function lh(a){return[a.C,a.Ba]}function mh(a){return{C:a[0],Ba:a[1]}}
|
||||
function jh(a,b,c){var d,e=(c?a.K:a.Ta).C;c=!1;if(void 0!==b){b=Wg(a,b);"%"==b.charAt(0)&&(c=!0,b=b.substr(1));d=b;var f;if(d.match(/^[a-z_][a-z0-9_]*$/i))for(d=d.toUpperCase(),e=0;e<a.H.length;e++){var g=a.H[e].fa[d];if(void 0!==g){d=g.o;void 0!==d&&(f=Z(d));break}}if(d=f)return d;e=Vg(a,b,void 0)}null!=e&&(d=Z(e,c));return d}function nh(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.mc=Tg(a,b.ic=c[2]))}function kh(a,b){null!=a.C&&(a.C+=b||1)}
|
||||
k.Ca=function(a,b,c,d){this.w=b;this.b=c;this.B=a;(a=Qc(a,"messages"))&&ch(this,a);this.bb=fh;this.qb=1145>this.b.fb?hh:[];ih(this,function(a){a:{var b=d.w.V,c=a[0],e=a=0,m=b.length;if(c){a=d.$(jh(d,c));if(-1===a){d.j("invalid address: "+c);break a}e=a>>>d.w.ha;m=1}d.j("blockid physical blockaddr used size type");d.j("-------- --------- ---------- ------ ------ ----");for(var c=-1,p=0;m--;){var q=b[e];q.type==c?p++||d.j("..."):(c=q.type,p=bc[c],q&&d.j(l(q.id,8)+" %"+l(e<<d.w.ha,
|
||||
8)+" %%"+l(q.C,8)+" "+l(q.yb,4,!0)+" "+l(q.size,4,!0)+" "+p),c!=Cc&&(c=-1),p=0);a+=d.w.ua;e++}}});H(this)};
|
||||
k.qa=function(a,b,c){var d=this;switch(b){case "debugInput":return this.da=this.I[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",Tc(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.A<d.g.length-1&&(b=d.g[++d.A])):40==a.keyCode&&(0<d.A?b=d.g[--d.A]:(b="",d.A=-1)),null!=b){var e=b.length;c.value=b;c.setSelectionRange(e,e)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.I[b]=c,Na(c,function(){if(d.da){var a=d.da.value;
|
||||
d.da.value="";Tc(d,a,!0);return!0}return!1}),!0;case "step":return this.I[b]=c,Na(c,function(a){var b=!1;ob(d,!0)||(nb(d,!0),b=d.nb(a?1:0),nb(d,!1));return b}),!0}return!1};k.lb=function(){this.da&&this.da.focus()};k.$=function(a){a=a&&a.C;null==a&&(a=-1);return a};k.tb=function(a,b){var c=255,d=this.$(a,!1,1);-1!==d&&(c=a.Ab?this.w.Db(d):this.b.Db(d),b&&kh(a,b));return c};k.na=function(a,b){var c=65535,d=this.$(a,!1,2);-1!==d&&(c=a.Ab?this.w.eb(d):this.b.eb(d),b&&kh(a,b));return c};
|
||||
k.Gb=function(a,b,c){var d=this.$(a,!0,1);-1!==d&&(a.Ab?this.w.Ya(d,b):this.b.Ya(d,b),c&&kh(a,c),this.B.ba(!0))};k.Za=function(a,b,c){var d=this.$(a,!0,2);-1!==d&&(a.Ab?this.w.Hb(d,b):this.b.Hb(d,b),c&&kh(a,c),this.B.ba(!0))};function Z(a,b){return{C:a,Ab:b,Ba:!1}}function lh(a){return[a.C,a.Ba]}function mh(a){return{C:a[0],Ba:a[1]}}
|
||||
function jh(a,b,c){var d,e=(c?a.K:a.Ta).C;c=!1;if(void 0!==b){b=Wg(a,b);"%"==b.charAt(0)&&(c=!0,b=b.substr(1));d=b;var f;if(d.match(/^[a-z_][a-z0-9_]*$/i))for(d=d.toUpperCase(),e=0;e<a.H.length;e++){var g=a.H[e].ea[d];if(void 0!==g){d=g.o;void 0!==d&&(f=Z(d));break}}if(d=f)return d;e=Vg(a,b,void 0)}null!=e&&(d=Z(e,c));return d}function nh(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.mc=Tg(a,b.ic=c[2]))}function kh(a,b){null!=a.C&&(a.C+=b||1)}
|
||||
function ch(a,b){a.i=a;a.ma=a.oc=536870912;a.pa=null;a.ra=[];b=Tg(a,b.replace("keys","key").replace("kbd","keyboard"),!1,"|");if(b.length)for(var c in tb){var d;a:if(d=void 0,Array.prototype.indexOf)d=b.indexOf(c,d);else{d=d||0;0>d&&(d+=b.length);0>d&&(d=0);for(var e=b.length;d<e;d++)if(d in b&&b[d]===c)break a;d=-1}0<=d&&(a.ma|=tb[c],a.j(c+" messages enabled"))}}function ih(a,b){for(var c in tb)if(64==tb[c]){a.za[c]=b;break}}
|
||||
k.Zb=function(a){var b=-1;a=a.toUpperCase();switch(a){case "SP":b=6;break;case "PC":b=7;break;default:"R"==a.charAt(0)&&(b=+a.charAt(1),0>b||7<b)&&(b=-1)}return b};function oh(a){return 6>a?"R"+a:6==a?"SP":"PC"}k.$b=function(a){var b;0<=a&&(8>a?b=this.b.u[a]:16>a?b=this.b.Fa[a-8]:20>a?b=this.b.wa[a-16]:20==a&&(b=Lb(this.b)));return b};
|
||||
k.message=function(a,b){b&&(a+=" @"+J(this,Z(this.b.xb).C));this.ma&1073741824?this.ra.push(a):this.pa&&a==this.pa||(this.pa=a,this.ma&-2147483648&&(this.ca(),a+=" (cpu halted)"),this.j(a),this.b&&(a=this.b,Zc(a),a.ra=0,a.B.ba()))};function bh(a){var b;if(!Yd(a))a.F&&a.F.length&&a.j("instruction history buffer freed"),a.X=0,a.F=[];else if(!a.F||!a.F.length){a.F=Array(1E3);for(b=0;b<a.F.length;b++)a.F[b]=Z();a.X=0;a.j("instruction history buffer allocated")}}
|
||||
k.mb=function(a,b){if(!ph(this,b))return!1;this.b.mb(a);return!0};k.nb=function(a,b,c){if(!ph(this))return!1;this.J=0;a||Yd(this)&&Zd(this,this.b.u[7],0);try{a=$c(this.b,a);var d=this.b.nb(a);0<d&&(ad(this.b,a),this.J+=d,Xc(this.b,d,!0),Uc(this.b,d),this.sa++)}catch(e){"number"!=typeof e&&(this.J=0,rb(this.b,e.stack||e.message))}!1!==c&&this.B.ba();this.ba(b||!1);return 0<this.J};k.ca=function(a){this.b&&this.b.ca(a)};
|
||||
k.ba=function(a){this.Ua&&(void 0===a&&(a=!0),this.K=Z(this.b.u[7]),a&&1!=this.P?qh(this):rh(this))};function ph(a,b){var c;(c=!a.b||!pb(a.b))||(c=a.b,c.v.ja?c=!0:(c.j(c.toString()+" not powered"),c=!1),c=!c);return c||a.b.v.da?(b||a.j("cpu busy or unavailable, command ignored"),!1):!qb(a.b)}k.ya=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};k.xa=function(a,b){b&&this.j(a?"suspending":"shutting down");return a?this.save():!0};
|
||||
k.reset=function(a){bh(this);this.sa=0;this.pa=null;this.J=0;this.K=Z(this.b.u[7]);this.v.da=!1;sh(this);a||this.ba()};k.save=function(){var a=new O(this);a.set(0,lh(this.K));a.set(1,lh(this.N));a.set(2,[this.g,this.O,this.ma]);a.set(3,this.H);return a.data()};k.restore=function(a){var b=0;void 0!==a[2]&&(this.K=mh(a[b++]),this.N=mh(a[b++]),this.g=a[b][0],"string"==typeof this.g&&(this.g=[this.g]),this.O=a[b][1],this.ma|=a[b][2]);a[3]&&(this.H=a[3]);return!0};
|
||||
k.start=function(a,b){this.P||this.j("running");this.v.da=!0;this.rb=a;this.sb=b};k.stop=function(a,b){if(this.v.da){this.v.da=!1;this.J=b-this.sb;if(!this.P){b="stopped";if(this.J){a-=this.rb;var c=0<a?Math.round(1E3*this.J/a):0;b+=" (";Yd(this)&&(b+=this.sa+" instructions, ",this.sa=0);b+=this.J+" cycles, "+a+" ms, "+c+" hz)"}else E(this,-2147483648)&&(b+=" (use the 't' command to execute blocked faults)");this.j(b)}this.ba(!0);this.lb();sh(this,this.b.u[7])}};
|
||||
function Yd(a){return 1<a.f.length||!!a.ka}function Zd(a,b,c){var d=-1;c||(d=a.b.eb(b),0==d&&(b=ld(a.b,2)));if(0<c&&(a.ka&&!--a.ka||Lc(a,b,1,a.f)))return!0;0<=c&&a.F.length&&(a.sa++,0>d&&(d=a.b.eb(b)),65535!=(d&65535)&&(c=a.F[a.X],c.C=b,c.Ba=!1,++a.X==a.F.length&&(a.X=0)));return!1}function $b(a){var b=a.b;if(b.v.da)throw N(b,a.b.xb),a.ca(),-1;return!1}
|
||||
function ah(a){var b,c;a.f=["bp"];if(a.L)for(b=1;b<a.L.length;b++){c=a.L[b];var d=a.A;c=a.$(c);Mc(d.V[c>>>d.ha],!1)}a.L=["br"];if(a.D)for(b=1;b<a.D.length;b++)c=a.D[b],d=a.A,c=a.$(c),Mc(d.V[c>>>d.ha],!0);a.D=["bw"];a.Ra=0}k.Wa=function(a,b,c){var d=!0;c||th(this,a,b,!1,!0);if(a!=this.f){var e=this.$(b);if(-1===e)this.j("invalid address: "+J(this,b.C)),d=!1;else{var f=this.A;f.V[e>>>f.ha].Wa(e&f.A,a==this.D)}}d&&(a.push(b),c?b.Ba=!0:(uh(this,a,a.length-1,"set"),bh(this)));return d};
|
||||
function th(a,b,c,d,e){var f=!1;c=a.$(c);for(var g=1;g<b.length;g++){var h=b[g];if(c==a.$(h)&&(!d||h.Ba)){f=!0;h.Ba||e||uh(a,b,g,"cleared");b.splice(g,1);b!=a.f&&(d=a.A,Mc(d.V[c>>>d.ha],b==a.D));h.Ba||bh(a);break}}return f}function vh(a,b){for(var c=1;c<b.length;c++)uh(a,b,c);return b.length-1}function uh(a,b,c,d){c=b[c];a.j(b[0]+" "+J(a,c.C)+(d?" "+d:c.ic?' "'+c.ic+'"':""))}
|
||||
k.message=function(a,b){b&&(a+=" @"+J(this,Z(this.b.xb).C));this.ma&1073741824?this.ra.push(a):this.pa&&a==this.pa||(this.pa=a,this.ma&-2147483648&&(this.fa(),a+=" (cpu halted)"),this.j(a),this.b&&(a=this.b,Zc(a),a.ra=0,a.B.ba()))};function bh(a){var b;if(!Yd(a))a.F&&a.F.length&&a.j("instruction history buffer freed"),a.X=0,a.F=[];else if(!a.F||!a.F.length){a.F=Array(1E3);for(b=0;b<a.F.length;b++)a.F[b]=Z();a.X=0;a.j("instruction history buffer allocated")}}
|
||||
k.mb=function(a,b){if(!ph(this,b))return!1;this.b.mb(a);return!0};k.nb=function(a,b,c){if(!ph(this))return!1;this.J=0;a||Yd(this)&&Zd(this,this.b.u[7],0);try{a=$c(this.b,a);var d=this.b.nb(a);0<d&&(ad(this.b,a),this.J+=d,Xc(this.b,d,!0),Uc(this.b,d),this.sa++)}catch(e){"number"!=typeof e&&(this.J=0,rb(this.b,e.stack||e.message))}!1!==c&&this.B.ba();this.ba(b||!1);return 0<this.J};k.fa=function(a){this.b&&this.b.fa(a)};
|
||||
k.ba=function(a){this.Ua&&(void 0===a&&(a=!0),this.K=Z(this.b.u[7]),a&&1!=this.P?qh(this):rh(this))};function ph(a,b){var c;(c=!a.b||!pb(a.b))||(c=a.b,c.v.ja?c=!0:(c.j(c.toString()+" not powered"),c=!1),c=!c);return c||a.b.v.ca?(b||a.j("cpu busy or unavailable, command ignored"),!1):!qb(a.b)}k.ya=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};k.xa=function(a,b){b&&this.j(a?"suspending":"shutting down");return a?this.save():!0};
|
||||
k.reset=function(a){bh(this);this.sa=0;this.pa=null;this.J=0;this.K=Z(this.b.u[7]);this.v.ca=!1;sh(this);a||this.ba()};k.save=function(){var a=new O(this);a.set(0,lh(this.K));a.set(1,lh(this.N));a.set(2,[this.g,this.O,this.ma]);a.set(3,this.H);return a.data()};k.restore=function(a){var b=0;void 0!==a[2]&&(this.K=mh(a[b++]),this.N=mh(a[b++]),this.g=a[b][0],"string"==typeof this.g&&(this.g=[this.g]),this.O=a[b][1],this.ma|=a[b][2]);a[3]&&(this.H=a[3]);return!0};
|
||||
k.start=function(a,b){this.P||this.j("running");this.v.ca=!0;this.rb=a;this.sb=b};k.stop=function(a,b){if(this.v.ca){this.v.ca=!1;this.J=b-this.sb;if(!this.P){b="stopped";if(this.J){a-=this.rb;var c=0<a?Math.round(1E3*this.J/a):0;b+=" (";Yd(this)&&(b+=this.sa+" instructions, ",this.sa=0);b+=this.J+" cycles, "+a+" ms, "+c+" hz)"}else F(this,-2147483648)&&(b+=" (use the 't' command to execute blocked faults)");this.j(b)}this.ba(!0);this.lb();sh(this,this.b.u[7])}};
|
||||
function Yd(a){return 1<a.f.length||!!a.ka}function Zd(a,b,c){var d=-1;c||(d=a.b.eb(b),0==d&&(b=ld(a.b,2)));if(0<c&&(a.ka&&!--a.ka||Lc(a,b,1,a.f)))return!0;0<=c&&a.F.length&&(a.sa++,0>d&&(d=a.b.eb(b)),65535!=(d&65535)&&(c=a.F[a.X],c.C=b,c.Ba=!1,++a.X==a.F.length&&(a.X=0)));return!1}function $b(a){var b=a.b;if(b.v.ca)throw N(b,a.b.xb),a.fa(),-1;return!1}
|
||||
function ah(a){var b,c;a.f=["bp"];if(a.L)for(b=1;b<a.L.length;b++){c=a.L[b];var d=a.w;c=a.$(c);Mc(d.V[c>>>d.ha],!1)}a.L=["br"];if(a.D)for(b=1;b<a.D.length;b++)c=a.D[b],d=a.w,c=a.$(c),Mc(d.V[c>>>d.ha],!0);a.D=["bw"];a.Ra=0}k.Wa=function(a,b,c){var d=!0;c||th(this,a,b,!1,!0);if(a!=this.f){var e=this.$(b);if(-1===e)this.j("invalid address: "+J(this,b.C)),d=!1;else{var f=this.w;f.V[e>>>f.ha].Wa(e&f.w,a==this.D)}}d&&(a.push(b),c?b.Ba=!0:(uh(this,a,a.length-1,"set"),bh(this)));return d};
|
||||
function th(a,b,c,d,e){var f=!1;c=a.$(c);for(var g=1;g<b.length;g++){var h=b[g];if(c==a.$(h)&&(!d||h.Ba)){f=!0;h.Ba||e||uh(a,b,g,"cleared");b.splice(g,1);b!=a.f&&(d=a.w,Mc(d.V[c>>>d.ha],b==a.D));h.Ba||bh(a);break}}return f}function vh(a,b){for(var c=1;c<b.length;c++)uh(a,b,c);return b.length-1}function uh(a,b,c,d){c=b[c];a.j(b[0]+" "+J(a,c.C)+(d?" "+d:c.ic?' "'+c.ic+'"':""))}
|
||||
function sh(a,b){if(void 0!==b)Lc(a,b,1,a.f,!0),a.P=0;else for(b=1;b<a.f.length;b++){var c=a.f[b];if(c.Ba){if(!th(a,a.f,c,!0))break;b=0}}}
|
||||
function Lc(a,b,c,d,e){var f=!1;if(!a.Ra++)for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.Ba)for(var m=a.$(h),p=0;p<c;p++)if(b+p==m){var q,f=!0;h.Ba&&(th(a,d,h,!0),e=!0);if(q=h.mc){for(var f=!1,v=0;v<q.length;v++)if(!wh(a,q[v],!0)){if(q[v].indexOf("if")){f=!0;break}for(var w=v+1;w<q.length&&q[w].indexOf("else");w++)v++;if(w==q.length){f=!0;break}}a.b.v.da||(f=!0)}if(f){e||uh(a,d,g,"hit");break}}}a.Ra--;return f}
|
||||
function xh(a,b,c,d){var e=Z(b.C),f=a.na(b,2),g,h;for(h in a.bb)if(g=a.bb[h][f&h])break;g||(g=gh);var m=g[0];0<=a.qb.indexOf(m)&&(g=gh,m=g[0]);var p=h="",q=eh[m],v=g.length-1;m||v||(h=J(a,f));for(m=1;m<=v;m++){var w=g[m];if(void 0!==w){var x;x=a;var F=w,w=b,y="",B=F&61440;if(4096==B)w=w.C+((f&255)<<24>>23)&65535,y=J(x,w);else if(8192==B)w=w.C-((f&63)<<1)&65535,y=J(x,w);else if(12288==B)y=J(x,f&7,1);else if(24576==B)y=J(x,f&63,1);else if(32768==B)y=J(x,f&255,1);else if(B=f&F,F&4032&&(B>>=6,F>>=6),
|
||||
F&63)switch(F=B&7,B&56){case 0:y=oh(F);break;case 8:y="@"+oh(F);break;case 16:7>F?y="("+oh(F)+")+":(B=x.na(w,2),y="#"+J(x,B,0,!0));break;case 24:7>F?y="@("+oh(F)+")+":(B=x.na(w,2),y="@#"+J(x,B,0,!0));break;case 32:y="-("+oh(F)+")";break;case 40:y="@-("+oh(F)+")";break;case 48:B=x.na(w,2);y=J(x,B,0,!0)+"("+oh(F)+")";7==F&&(y=J(x,B+w.C&65535));break;case 56:B=x.na(w,2),y="@"+J(x,B)+"("+oh(F)+")",7==F&&(y="@"+J(x,B+w.C&65535))}x=y;if(!x||!x.length){h="INVALID";break}"string"!=typeof x&&(p=x[1],x=x[0]);
|
||||
function Lc(a,b,c,d,e){var f=!1;if(!a.Ra++)for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.Ba)for(var m=a.$(h),p=0;p<c;p++)if(b+p==m){var q,f=!0;h.Ba&&(th(a,d,h,!0),e=!0);if(q=h.mc){for(var f=!1,v=0;v<q.length;v++)if(!wh(a,q[v],!0)){if(q[v].indexOf("if")){f=!0;break}for(var w=v+1;w<q.length&&q[w].indexOf("else");w++)v++;if(w==q.length){f=!0;break}}a.b.v.ca||(f=!0)}if(f){e||uh(a,d,g,"hit");break}}}a.Ra--;return f}
|
||||
function xh(a,b,c,d){var e=Z(b.C),f=a.na(b,2),g,h;for(h in a.bb)if(g=a.bb[h][f&h])break;g||(g=gh);var m=g[0];0<=a.qb.indexOf(m)&&(g=gh,m=g[0]);var p=h="",q=eh[m],v=g.length-1;m||v||(h=J(a,f));for(m=1;m<=v;m++){var w=g[m];if(void 0!==w){var x;x=a;var E=w,w=b,y="",A=E&61440;if(4096==A)w=w.C+((f&255)<<24>>23)&65535,y=J(x,w);else if(8192==A)w=w.C-((f&63)<<1)&65535,y=J(x,w);else if(12288==A)y=J(x,f&7,1);else if(24576==A)y=J(x,f&63,1);else if(32768==A)y=J(x,f&255,1);else if(A=f&E,E&4032&&(A>>=6,E>>=6),
|
||||
E&63)switch(E=A&7,A&56){case 0:y=oh(E);break;case 8:y="@"+oh(E);break;case 16:7>E?y="("+oh(E)+")+":(A=x.na(w,2),y="#"+J(x,A,0,!0));break;case 24:7>E?y="@("+oh(E)+")+":(A=x.na(w,2),y="@#"+J(x,A,0,!0));break;case 32:y="-("+oh(E)+")";break;case 40:y="@-("+oh(E)+")";break;case 48:A=x.na(w,2);y=J(x,A,0,!0)+"("+oh(E)+")";7==E&&(y=J(x,A+w.C&65535));break;case 56:A=x.na(w,2),y="@"+J(x,A)+"("+oh(E)+")",7==E&&(y="@"+J(x,A+w.C&65535))}x=y;if(!x||!x.length){h="INVALID";break}"string"!=typeof x&&(p=x[1],x=x[0]);
|
||||
0<h.length&&(h+=",");h+=x||"???"}}f="";g=J(a,e.C)+":";if(-1!==e.C&&-1!==b.C){do if(f+=" "+J(a,a.na(e,2)),null==e.C)break;while(e.C!=b.C)}g+=ua(f,24);g+=ua(q,5);h&&(g+=" "+h);if(c||p)g=ua(g,60)+";"+(c||""),g=a.b.v.cb?g+("cycles="+Vc(a.b).toString()+" cs="+l(a.b.ub)):g+(null!=d?"="+d.toString():""),p&&(g+=" @"+p);return g}function yh(a,b){switch(b){case "N":a=a.b.Ea();break;case "Z":a=jd(a.b);break;case "V":a=id(a.b);break;case "C":a=hd(a.b);break;default:a=0}return b.charAt(0)+(a?"1":"0")+" "}
|
||||
function zh(a,b){var c="",d=a.b;8>b?(c=oh(b),c+="="+J(a,d.u[b])):13>b?c="A"+(b-8)+"="+J(a,d.Fa[b-8]):16<=b&&20>b?c="S"+(b-16)+"="+J(a,d.wa[b-16]):20==b&&(c="PS="+J(a,Lb(d)));c&&(c+=" ");return c}function Ah(a){var b,c="";for(b=0;6>b;b++)c+=zh(a,b);c=c+"\n"+(zh(a,6)+zh(a,7)+zh(a,20));return c+=yh(a,"T")+yh(a,"N")+yh(a,"Z")+yh(a,"V")+yh(a,"C")}k.Ub=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0};
|
||||
function ug(a,b,c,d,e){var f=[],g;for(g in e){var h=e[g];"number"==typeof h&&(e[g]=h={o:h});var m=h.o,p=h.a;if(void 0!==m){var q=f,m=[m>>>0,g],v=ya(q,m,a.Ub);0>v&&q.splice(-(v+1),0,m)}p&&(h.a=p.replace(/''/g,'"'))}a.H.push({Vd:b,C:c,vc:d,fa:e,Tb:f})}function Bh(a,b,c){var d=[],e=a.$(b)>>>0;for(b=0;b<a.H.length;b++){var f=a.H[b],g=f.C>>>0,h=f.vc;if(e>=g&&e<g+h){e=ya(f.Tb,[e-g],a.Ub);0<=e?Ch(a,b,e,d):c&&(e=~e,Ch(a,b,e-1,d),Ch(a,b,e,d));break}}return d}
|
||||
function Ch(a,b,c,d){var e={},f=a.H[b].Tb,g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.H[b].fa[h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}function Dh(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return Zg(a)||a.j("no variables"),!0;if(!c[2])return Zg(a,c[1]);if(!c[3])return delete a.R[c[1]],!0;b=Vg(a,c[3]);return void 0!==b?(a.R[c[1]]=b,!0):!1}a.j("invalid assignment:"+b);return!1}
|
||||
function ug(a,b,c,d,e){var f=[],g;for(g in e){var h=e[g];"number"==typeof h&&(e[g]=h={o:h});var m=h.o,p=h.a;if(void 0!==m){var q=f,m=[m>>>0,g],v=xa(q,m,a.Ub);0>v&&q.splice(-(v+1),0,m)}p&&(h.a=p.replace(/''/g,'"'))}a.H.push({Vd:b,C:c,vc:d,ea:e,Tb:f})}function Bh(a,b,c){var d=[],e=a.$(b)>>>0;for(b=0;b<a.H.length;b++){var f=a.H[b],g=f.C>>>0,h=f.vc;if(e>=g&&e<g+h){e=xa(f.Tb,[e-g],a.Ub);0<=e?Ch(a,b,e,d):c&&(e=~e,Ch(a,b,e-1,d),Ch(a,b,e,d));break}}return d}
|
||||
function Ch(a,b,c,d){var e={},f=a.H[b].Tb,g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.H[b].ea[h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}function Dh(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return Zg(a)||a.j("no variables"),!0;if(!c[2])return Zg(a,c[1]);if(!c[3])return delete a.R[c[1]],!0;b=Vg(a,c[3]);return void 0!==b?(a.R[c[1]]=b,!0):!1}a.j("invalid assignment:"+b);return!1}
|
||||
function Eh(a,b,c){var d=null;if(b=jh(a,b,!0)){a.$(b);var e=Bh(a,b,!0);if(e.length){var f,g;e[0]&&(g="",(f=b.C-e[1])&&(g=" + "+l(f,4,!0)),f=e[0]+" ("+J(a,e[1])+")"+g,c&&a.j(f),d=f);4<e.length&&e[4]&&(g="",(f=e[5]-b.C)&&(g=" - "+l(f,4,!0)),f=e[4]+" ("+J(a,e[5])+")"+g,c&&a.j(f),d||(d=f))}else c&&a.j("no symbols")}return d}
|
||||
function qh(a,b){var c;if(b&&"?"==b[1])a.j("register commands:"),a.j("\tr\tdump registers"),a.j("\trx [#]\tset flag or register x to [#]");else{var d=a.b;null==c&&(c=!0);if(b&&1<b.length){var e=b[1],f=e.indexOf("=");if(0<f)b=e.substr(f+1),e=e.substr(0,f);else if(2<b.length)b=b[2];else{a.j("missing value for "+b[1]);return}f=Vg(a,b);if(void 0===f)return;b=e.toUpperCase();switch(b){case "SP":case "R6":d.u[6]=f&65535;break;case "PC":case "R7":N(d,f);a.K=Z(d.u[7]);break;case "N":d.W=f?32768:0;break;case "Z":d.Z=
|
||||
f?0:1;break;case "V":d.T=f?32768:0;break;case "C":d.S=f?65536:0;break;default:if("R"==b.charAt(0)&&(b=+b.charAt(1),0<=b&&6>b)){d.u[b]=f&65535;break}a.j("unknown register: "+e);return}a.B.ba();a.j("updated registers:")}a.j(Ah(a));c&&(a.K=Z(d.u[7]),rh(a,J(a,a.K.C)))}}function Fh(a,b){b=va(b);var c=b.match(/^(['"])(.*?)\1$/);c?1<c[2].length?a.j(c[2]):Yg(a,null,c[2].charCodeAt(0)):Vg(a,b,!0)}
|
||||
function Gh(a,b,c){var d="t"!=b;c=Xg(a,c,null,!0)||1;var e=1==c?0:1;"tc"==b&&(e=c,c=1);Ma(c,function(){return nb(a,!0)&&a.nb(e,d,!1)},function(){a.B.ba();nb(a,!1)})}
|
||||
function rh(a,b,c,d){if(b=jh(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c)if("l"==c.charAt(0))c=Xg(a,c.substr(1)),null!=c&&(d=c);else{d=jh(a,c,!0);if(!d||d.C<b.C)return;e=d.C-b.C;if(256<e){a.j("range too large");return}d=-1}c=0;for(var f;0<e&&d--;){f=ob(a,!1)||a.P?a.J:null;var g=null!=f?"cycles":null,h=Bh(a,b),m=b.C;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var p=h[0]+":";h[2]&&(p+=" "+h[2]);a.j(p)}h[3]&&(g=h[3],f=null);f=xh(a,b,g,f);a.j(f);a.K=b;e-=b.C-m;c++}}}
|
||||
function wh(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.j(">> "+b):(a.O&&(a.j("ended assemble at "+J(a,a.N.C)),a.K=a.N,a.O=!1),b="");var e=b.charAt(0);if('"'==e||"'"==e)return!0;a.pa=null;if(pb(a)&&0<b.length){a.O&&(b="a "+J(a,a.N.C)+" "+b);var f=!1,g=b.replace(/ +/g," ").split(" ");g[0]=g[0].toLowerCase();if(g&&g.length)for(var h=g[0],m=h.charAt(0),p=1;p<h.length;p++){var q=h.charAt(p);if("?"==m||"r"==m||"a">q||"z"<q){g[0]=h.substr(p);g.unshift(h.substr(0,p));break}}switch(g[0].charAt(0)){case "a":var v=
|
||||
jh(a,g[1],!0);if(v)if(a.N=v,void 0===g[2])a.j("begin assemble at "+J(a,v.C)),a.O=!0,a.B.ba();else{var w;a.j("not supported yet");w=[];if(w.length){for(var x=0;x<w.length;x++)a.Gb(v,w[x],1);a.j(xh(a,a.N))}}break;case "b":a:{var F=g[0],y=g[1],B=b;if("?"==y)a.j("breakpoint commands:"),a.j("\tbp [a]\tset exec breakpoint at addr [a]"),a.j("\tbr [a]\tset read breakpoint at addr [a]"),a.j("\tbw [a]\tset write breakpoint at addr [a]"),a.j("\tbc [a]\tclear breakpoint at addr [a]"),a.j("\tbl\tlist all breakpoints"),
|
||||
a.j("\tbn [n]\tbreak after [n] instruction(s)");else{var Ga=F.charAt(1);if("l"==Ga){var md;md=0+vh(a,a.f);md+=vh(a,a.L);(md+=vh(a,a.D))||a.j("no breakpoints")}else if("n"==Ga)a.ka=Xg(a,y),a.j("break after "+a.ka+" instruction(s)");else if(void 0===y)a.j("missing breakpoint address");else{var V=Z();if("*"!=y&&(V=jh(a,y,!0),!V))break a;"c"==Ga?null==V.C?(ah(a),a.j("all breakpoints cleared")):th(a,a.f,V)||th(a,a.L,V)||th(a,a.D,V)||a.j("breakpoint missing: "+J(a,V.C)):null!=V.C&&(nh(a,V,B),"p"==Ga?a.Wa(a.f,
|
||||
V):"r"==Ga?a.Wa(a.L,V):"w"==Ga?a.Wa(a.D,V):a.j("unknown breakpoint command: "+Ga))}}}break;case "c":a.Da&&(a.Da.value="");break;case "d":a:{var Xa,Ya=g[0],ja=g[1],Ha=g[2],Zh=g[3];if("?"==ja){var Za="";for(Xa in tb)a.za[Xa]&&(Za&&(Za+=","),Za+=Xa);Za+=",state,symbols";a.j("dump memory commands:");a.j("\tdb [a] [#] dump # bytes at address a");a.j("\tdw [a] [#] dump # words at address a");a.j("\tdd [a] [#] dump # dwords at address a");a.j("\tdh [#] [#] dump # instructions from history");
|
||||
Za.length&&a.j("dump extension commands:\n\t"+Za)}else if("state"==ja){var Tf=Hh(a.B,!0);"console"==Ha?console.log(Tf):(a.Da&&(a.Da.value=""),a.j(Tf))}else if("symbols"==ja)for(var nd=0;nd<a.H.length;nd++){var od=a.H[nd],$a;for($a in od.fa)if("."!=$a.charAt(0)){var Uf=od.fa[$a].o;if(void 0!==Uf){var Vf=od.fa[$a].l;Vf&&($a=Vf);a.j(J(a,Uf)+" "+$a)}}}else{if("d"==Ya){for(Xa in tb)if(g[1]==Xa){var Wf=a.za[Xa];Wf?(g.shift(),g.shift(),Wf(g)):a.j("no dump registered for "+ja);break a}ja||(Ya=a.Bb||"db")}else a.Bb=
|
||||
Ya;if("dh"==Ya){var Xf=ja,Yf=Ha,Zf="",$f=0,ca=a.X,ka=a.F;if(ka.length){var Y=+Xf||a.Va,xb=+Yf||10;isNaN(Y)?Y=xb:Zf="more ";Y>ka.length&&(a.j("note: only "+ka.length+" available"),Y=ka.length);ca-=Y;0>ca&&(null==ka[ka.length-1].C?(Y=ca+Y,ca=0):ca+=ka.length);var pd=[];"call"==Yf&&(xb=1E5,pd=["CALL"]);for(void 0!==Xf&&a.j(Y+" instructions earlier:");0<xb&&ca!=a.X;){var ag=ka[ca++];if(null==ag.C)break;var yb=Z(ag.C),$h=Y--,bg=xh(a,yb,"history",$h);(!pd.length||0<=bg.indexOf(pd[0]))&&a.j(bg);yb.Lb&&(ca+=
|
||||
yb.Lb,xb-=yb.Lb,Y-=yb.Lb);ca>=ka.length&&(ca=0);a.Va=Y;$f++;xb--}}$f||(a.j("no "+Zf+"history available"),a.Va=void 0)}else{var zb=jh(a,ja);if(zb){var lc=0;Ha&&("l"==Ha.charAt(0)&&(Ha=Ha.substr(1)||Zh),lc=Xg(a,Ha)>>>0,65536<lc&&(lc=65536));for(var Ab="",ab="dd"==Ya?4:"dw"==Ya?2:1,mc=ab*lc||128,ai=mc+15>>4||1;ai--&&0<mc;){var nc=0,Bb=0,Cb,qd="",cg="",ja=J(a,zb.C);for(Cb=4==ab?16:a.Y;0<Cb&&0<mc;Cb--){var oc=1,pc=1==ab?a.tb(zb,oc):a.na(zb,oc=2),nc=nc|pc<<(Bb<<3),Bb=Bb+oc;Bb==ab&&(qd+=J(a,nc,ab),qd+=1==
|
||||
ab?9==Cb?"-":" ":" ",nc=Bb=0);cg+=32<=pc&&128>pc?String.fromCharCode(pc):".";mc-=oc}Ab&&(Ab+="\n");Ab+=ja+" "+qd+(0==Cb?" "+cg:"")}Ab&&a.j(Ab);a.Ta=zb}}}}break;case "e":if("else"==g[0])break;var bb,rd,sd,td,ud=g[0],vd=g[1];"eb"==ud?(bb=1,rd=255,sd=a.tb,td=a.Gb):"e"==ud||"ew"==ud?(bb=2,rd=65535,sd=a.na,td=a.Za):vd=null;if(null==vd)a.j("edit memory commands:"),a.j("\teb [a] [...] edit bytes at address a"),a.j("\tew [a] [...] edit words at address a");else{var qc=jh(a,vd);if(qc)for(var rc=2;rc<g.length;rc++){var Db=
|
||||
Vg(a,g[rc]);if(void 0===Db){a.j("unrecognized value: "+g[rc]);break}Db&~rd&&a.j("warning: "+l(Db)+" exceeds "+bb+"-byte value");var bi=sd.call(a,qc);a.j("changing "+J(a,qc.C)+" from "+J(a,bi,bb)+" to "+J(a,Db,bb));td.call(a,qc,Db,bb)}}break;case "g":a:{var dg=g[1],ci=b;if(void 0!==dg){var wd=jh(a,dg,!0);if(!wd)break a;nh(a,wd,ci);a.Wa(a.f,wd,!0)}a.mb(!0,c)}break;case "h":a.v.da?(c||a.j("halting"),a.ca()):ob(a,!0)||c||a.j("already halted");break;case "i":if("if"==g[0]){var xd;var Eb=b.substr(2),Eb=
|
||||
va(Eb);Vg(a,Eb)?(c||a.j("true: "+Eb),xd=!0):(c||a.j("false: "+Eb),xd=!1);xd||(d=!1);break}f=!0;break;case "k":var di=g[0];if("?"==g[1])a.j("stack trace commands:"),a.j("\tk\tshow frame addresses"),a.j("\tks\tshow symbol information");else{var yd=0,zd=Z(),Fb=Z(a.b.u[6]);for(a.j("stack trace for "+J(a,Fb.C));10>yd;){for(var Ia=null,ei=256;65536>Fb.C>>>0;){zd.C=a.na(Fb,2);if(null==Fb.C||!ei--)break;if(!(zd.C&1)){for(var fi=a,sc=zd,eg=null,Gb=sc.C,fg=Gb,Ad=1;6>=Ad&&Gb;Ad++){if(2<Ad){sc.C=Gb;var tc=xh(fi,
|
||||
sc);if(0<=tc.indexOf("JSR")){var gg=tc.indexOf(" ");if(Gb+(tc.indexOf(" ",gg+1)-gg-1)/2==fg){eg=tc;break}}}Gb-=2}sc.C=fg;if(Ia=eg)break}}if(!Ia||null==Ia)break;var hg=null;if("ks"==di){var ig=Ia.match(/[0-9A-F]+$/);ig&&(hg=Eh(a,ig[0]))}Ia=ua(Ia,50)+" ;"+(hg||"stack="+J(a,Fb.C));a.j(Ia);yd++}yd||a.j("no return addresses found")}break;case "l":if("ln"==g[0]){Eh(a,g[1],!0);break}f=!0;break;case "m":a:{var la,ma=null,G=g[1];"?"==G&&(G=void 0);if(void 0!==G){var xa=0;if("all"==G)xa=1878917119,G=null;
|
||||
else if("on"==G)ma=!0,G=null;else if("off"==G)ma=!1,G=null;else{"keys"==G&&(G="key");"kbd"==G&&(G="keyboard");for(la in tb)if(G==la){xa=tb[la];ma=!!(a.ma&xa);break}if(!xa){a.j("unknown message category: "+G);break a}}if(xa)if("on"==g[2])a.ma|=xa,ma=!0;else if("off"==g[2]&&(a.ma&=~xa,ma=!1,1073741824==xa)){for(var Bd=0;Bd<a.ra.length;Bd++)a.j(a.ra[Bd]);a.ra=[]}}var gi=0,Hb="";for(la in tb)if(!G||G==la){var hi=!!(a.ma&tb[la]);if(null===ma||ma==hi)Hb&&(Hb+=","),++gi%10||(Hb+="\n\t"),"key"==la&&(la="keys"),
|
||||
Hb+=la}void 0===G&&a.j("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.j((null!==ma?ma?"messages on: ":"messages off: ":"message categories:\n\t")+(Hb||"none"));bh(a)}break;case "p":if("print"==g[0]){Fh(a,b.substr(5));break}var ii="pr"==g[0]?1:0;if(a.P)a.j("step in progress");else{var jg=Z(a.b.u[7]);a.tb(jg);a.P?(a.Wa(a.f,jg,!0),a.mb()||(a.B&&a.B.lb(),a.P=0)):Gh(a,ii?"tr":"t")}break;case "r":if("reset"==b){a.B&&a.B.reset();break}qh(a,g);break;case "s":a:switch(g[1]){case "base":if(g[2]){var Ib=
|
||||
+g[2];if(8==Ib||10==Ib||16==Ib)a.Y=Ib;else{a.j("invalid base: "+Ib);break}}a.j("default base: "+a.Y);break;case "cs":var Jb;void 0!==g[3]&&(Jb=+g[3]);switch(g[2]){case "int":a.b.gb=Jb;break;case "start":a.b.vb=Jb;break;case "stop":a.b.hb=Jb;break;default:a.j("unknown cs option");break a}void 0!==Jb&&Sc(a.b);a.j("checksums "+(a.b.v.cb?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(Wc(a.b,+g[2])||a.j("warning: using 1x multiplier, previous target not reached"));a.j("target speed: "+(a.b.Xa.toFixed(2)+
|
||||
jh(a,g[1],!0);if(v)if(a.N=v,void 0===g[2])a.j("begin assemble at "+J(a,v.C)),a.O=!0,a.B.ba();else{var w;a.j("not supported yet");w=[];if(w.length){for(var x=0;x<w.length;x++)a.Gb(v,w[x],1);a.j(xh(a,a.N))}}break;case "b":a:{var E=g[0],y=g[1],A=b;if("?"==y)a.j("breakpoint commands:"),a.j("\tbp [a]\tset exec breakpoint at addr [a]"),a.j("\tbr [a]\tset read breakpoint at addr [a]"),a.j("\tbw [a]\tset write breakpoint at addr [a]"),a.j("\tbc [a]\tclear breakpoint at addr [a]"),a.j("\tbl\tlist all breakpoints"),
|
||||
a.j("\tbn [n]\tbreak after [n] instruction(s)");else{var Ha=E.charAt(1);if("l"==Ha){var md;md=0+vh(a,a.f);md+=vh(a,a.L);(md+=vh(a,a.D))||a.j("no breakpoints")}else if("n"==Ha)a.ka=Xg(a,y),a.j("break after "+a.ka+" instruction(s)");else if(void 0===y)a.j("missing breakpoint address");else{var V=Z();if("*"!=y&&(V=jh(a,y,!0),!V))break a;"c"==Ha?null==V.C?(ah(a),a.j("all breakpoints cleared")):th(a,a.f,V)||th(a,a.L,V)||th(a,a.D,V)||a.j("breakpoint missing: "+J(a,V.C)):null!=V.C&&(nh(a,V,A),"p"==Ha?a.Wa(a.f,
|
||||
V):"r"==Ha?a.Wa(a.L,V):"w"==Ha?a.Wa(a.D,V):a.j("unknown breakpoint command: "+Ha))}}}break;case "c":a.Da&&(a.Da.value="");break;case "d":a:{var Ya,Za=g[0],ja=g[1],Ia=g[2],Zh=g[3];if("?"==ja){var $a="";for(Ya in tb)a.za[Ya]&&($a&&($a+=","),$a+=Ya);$a+=",state,symbols";a.j("dump memory commands:");a.j("\tdb [a] [#] dump # bytes at address a");a.j("\tdw [a] [#] dump # words at address a");a.j("\tdd [a] [#] dump # dwords at address a");a.j("\tdh [#] [#] dump # instructions from history");
|
||||
$a.length&&a.j("dump extension commands:\n\t"+$a)}else if("state"==ja){var Tf=Hh(a.B,!0);"console"==Ia?console.log(Tf):(a.Da&&(a.Da.value=""),a.j(Tf))}else if("symbols"==ja)for(var nd=0;nd<a.H.length;nd++){var od=a.H[nd],ab;for(ab in od.ea)if("."!=ab.charAt(0)){var Uf=od.ea[ab].o;if(void 0!==Uf){var Vf=od.ea[ab].l;Vf&&(ab=Vf);a.j(J(a,Uf)+" "+ab)}}}else{if("d"==Za){for(Ya in tb)if(g[1]==Ya){var Wf=a.za[Ya];Wf?(g.shift(),g.shift(),Wf(g)):a.j("no dump registered for "+ja);break a}ja||(Za=a.Bb||"db")}else a.Bb=
|
||||
Za;if("dh"==Za){var Xf=ja,Yf=Ia,Zf="",$f=0,ca=a.X,ka=a.F;if(ka.length){var Y=+Xf||a.Va,yb=+Yf||10;isNaN(Y)?Y=yb:Zf="more ";Y>ka.length&&(a.j("note: only "+ka.length+" available"),Y=ka.length);ca-=Y;0>ca&&(null==ka[ka.length-1].C?(Y=ca+Y,ca=0):ca+=ka.length);var pd=[];"call"==Yf&&(yb=1E5,pd=["CALL"]);for(void 0!==Xf&&a.j(Y+" instructions earlier:");0<yb&&ca!=a.X;){var ag=ka[ca++];if(null==ag.C)break;var zb=Z(ag.C),$h=Y--,bg=xh(a,zb,"history",$h);(!pd.length||0<=bg.indexOf(pd[0]))&&a.j(bg);zb.Lb&&(ca+=
|
||||
zb.Lb,yb-=zb.Lb,Y-=zb.Lb);ca>=ka.length&&(ca=0);a.Va=Y;$f++;yb--}}$f||(a.j("no "+Zf+"history available"),a.Va=void 0)}else{var Ab=jh(a,ja);if(Ab){var mc=0;Ia&&("l"==Ia.charAt(0)&&(Ia=Ia.substr(1)||Zh),mc=Xg(a,Ia)>>>0,65536<mc&&(mc=65536));for(var Bb="",bb="dd"==Za?4:"dw"==Za?2:1,nc=bb*mc||128,ai=nc+15>>4||1;ai--&&0<nc;){var oc=0,Cb=0,Db,qd="",cg="",ja=J(a,Ab.C);for(Db=4==bb?16:a.Y;0<Db&&0<nc;Db--){var pc=1,qc=1==bb?a.tb(Ab,pc):a.na(Ab,pc=2),oc=oc|qc<<(Cb<<3),Cb=Cb+pc;Cb==bb&&(qd+=J(a,oc,bb),qd+=1==
|
||||
bb?9==Db?"-":" ":" ",oc=Cb=0);cg+=32<=qc&&128>qc?String.fromCharCode(qc):".";nc-=pc}Bb&&(Bb+="\n");Bb+=ja+" "+qd+(0==Db?" "+cg:"")}Bb&&a.j(Bb);a.Ta=Ab}}}}break;case "e":if("else"==g[0])break;var cb,rd,sd,td,ud=g[0],vd=g[1];"eb"==ud?(cb=1,rd=255,sd=a.tb,td=a.Gb):"e"==ud||"ew"==ud?(cb=2,rd=65535,sd=a.na,td=a.Za):vd=null;if(null==vd)a.j("edit memory commands:"),a.j("\teb [a] [...] edit bytes at address a"),a.j("\tew [a] [...] edit words at address a");else{var rc=jh(a,vd);if(rc)for(var sc=2;sc<g.length;sc++){var Eb=
|
||||
Vg(a,g[sc]);if(void 0===Eb){a.j("unrecognized value: "+g[sc]);break}Eb&~rd&&a.j("warning: "+l(Eb)+" exceeds "+cb+"-byte value");var bi=sd.call(a,rc);a.j("changing "+J(a,rc.C)+" from "+J(a,bi,cb)+" to "+J(a,Eb,cb));td.call(a,rc,Eb,cb)}}break;case "g":a:{var dg=g[1],ci=b;if(void 0!==dg){var wd=jh(a,dg,!0);if(!wd)break a;nh(a,wd,ci);a.Wa(a.f,wd,!0)}a.mb(!0,c)}break;case "h":a.v.ca?(c||a.j("halting"),a.fa()):ob(a,!0)||c||a.j("already halted");break;case "i":if("if"==g[0]){var xd;var Fb=b.substr(2),Fb=
|
||||
va(Fb);Vg(a,Fb)?(c||a.j("true: "+Fb),xd=!0):(c||a.j("false: "+Fb),xd=!1);xd||(d=!1);break}f=!0;break;case "k":var di=g[0];if("?"==g[1])a.j("stack trace commands:"),a.j("\tk\tshow frame addresses"),a.j("\tks\tshow symbol information");else{var yd=0,zd=Z(),Gb=Z(a.b.u[6]);for(a.j("stack trace for "+J(a,Gb.C));10>yd;){for(var Ja=null,ei=256;65536>Gb.C>>>0;){zd.C=a.na(Gb,2);if(null==Gb.C||!ei--)break;if(!(zd.C&1)){for(var fi=a,tc=zd,eg=null,Hb=tc.C,fg=Hb,Ad=1;6>=Ad&&Hb;Ad++){if(2<Ad){tc.C=Hb;var uc=xh(fi,
|
||||
tc);if(0<=uc.indexOf("JSR")){var gg=uc.indexOf(" ");if(Hb+(uc.indexOf(" ",gg+1)-gg-1)/2==fg){eg=uc;break}}}Hb-=2}tc.C=fg;if(Ja=eg)break}}if(!Ja||null==Ja)break;var hg=null;if("ks"==di){var ig=Ja.match(/[0-9A-F]+$/);ig&&(hg=Eh(a,ig[0]))}Ja=ua(Ja,50)+" ;"+(hg||"stack="+J(a,Gb.C));a.j(Ja);yd++}yd||a.j("no return addresses found")}break;case "l":if("ln"==g[0]){Eh(a,g[1],!0);break}f=!0;break;case "m":a:{var la,ma=null,G=g[1];"?"==G&&(G=void 0);if(void 0!==G){var ya=0;if("all"==G)ya=1878917119,G=null;
|
||||
else if("on"==G)ma=!0,G=null;else if("off"==G)ma=!1,G=null;else{"keys"==G&&(G="key");"kbd"==G&&(G="keyboard");for(la in tb)if(G==la){ya=tb[la];ma=!!(a.ma&ya);break}if(!ya){a.j("unknown message category: "+G);break a}}if(ya)if("on"==g[2])a.ma|=ya,ma=!0;else if("off"==g[2]&&(a.ma&=~ya,ma=!1,1073741824==ya)){for(var Bd=0;Bd<a.ra.length;Bd++)a.j(a.ra[Bd]);a.ra=[]}}var gi=0,Ib="";for(la in tb)if(!G||G==la){var hi=!!(a.ma&tb[la]);if(null===ma||ma==hi)Ib&&(Ib+=","),++gi%10||(Ib+="\n\t"),"key"==la&&(la="keys"),
|
||||
Ib+=la}void 0===G&&a.j("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.j((null!==ma?ma?"messages on: ":"messages off: ":"message categories:\n\t")+(Ib||"none"));bh(a)}break;case "p":if("print"==g[0]){Fh(a,b.substr(5));break}var ii="pr"==g[0]?1:0;if(a.P)a.j("step in progress");else{var jg=Z(a.b.u[7]);a.tb(jg);a.P?(a.Wa(a.f,jg,!0),a.mb()||(a.B&&a.B.lb(),a.P=0)):Gh(a,ii?"tr":"t")}break;case "r":if("reset"==b){a.B&&a.B.reset();break}qh(a,g);break;case "s":a:switch(g[1]){case "base":if(g[2]){var Jb=
|
||||
+g[2];if(8==Jb||10==Jb||16==Jb)a.Y=Jb;else{a.j("invalid base: "+Jb);break}}a.j("default base: "+a.Y);break;case "cs":var Kb;void 0!==g[3]&&(Kb=+g[3]);switch(g[2]){case "int":a.b.gb=Kb;break;case "start":a.b.vb=Kb;break;case "stop":a.b.hb=Kb;break;default:a.j("unknown cs option");break a}void 0!==Kb&&Sc(a.b);a.j("checksums "+(a.b.v.cb?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(Wc(a.b,+g[2])||a.j("warning: using 1x multiplier, previous target not reached"));a.j("target speed: "+(a.b.Xa.toFixed(2)+
|
||||
"Mhz")+" ("+a.b.Na+"x)");break;default:if(g[1]){a.j("unknown option: "+g[1]);break}case "?":a.j("debugger options:"),a.j("\tbase #\t\tset default base to #"),a.j("\tcs int #\tset checksum cycle interval to #"),a.j("\tcs start #\tset checksum cycle start count to #"),a.j("\tcs stop #\tset checksum cycle stop count to #"),a.j("\tsp #\t\tset speed multiplier to #")}break;case "t":Gh(a,g[0],g[1]);break;case "u":rh(a,g[1],g[2],8);break;case "v":if("var"==g[0]){Dh(a,b.substr(3))||(d=!1);break}if("ver"==
|
||||
g[0]){a.j("PDPjs version 1.30.1 ("+a.b.fb+",RELEASE"+(sb?",TYPEDARRAYS":",LONGARRAYS")+")");a.j(window?window.navigator.userAgent:"");break}f=!0;break;case "?":if(g[1]){Fh(a,b.substr(1));break}var Cd="commands:",Dd;for(Dd in dh)Cd+="\n"+ua(Dd,9)+dh[Dd];Yd(a)||(Cd+="\nnote: history disabled if no exec breakpoints");a.j(Cd);break;default:f=!0}f&&(a.j("unknown command: "+b),d=!1)}}catch(kg){a.j("debugger error: "+(kg.stack||kg.message)),d=!1}return d}
|
||||
function Tc(a,b,c){b=Tg(a,b,c);for(var d in b)if(!wh(a,b[+d]))return!1;return!0}Ta(function(){for(var a=C(document,"pdp11","debugger"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new $g(d);A(d,c)}});
|
||||
function Ih(a,b,c){r.call(this,"Computer",a,Ih,67108864);this.v.ja=!1;Jh(this,b);this.L=Qc(this,"autoPower",a);this.B=0;this.X=a.busWidth||a.buswidth;this.f=Kh;this.J=null;this.F=this.P=!1;this.Y=Qc(this,"url")||"";(Math.random()+.1).toString(36);this.g=Lh(this);if(this.b=mb("CPU",this.id)){this.i=mb("Debugger",this.id);this.A=new Mb({id:this.Sa+".bus",busWidth:this.X},this.b,this.i);var d,e=kb(this.id);if((this.w=mb("Panel",this.id))&&this.w.Da)for(b=0;b<e.length;b++)d=e[b],d.ia=this.w.ia,d.j=this.w.j,
|
||||
d.Da=this.w.Da;this.j("PDPjs v1.30.1\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");this.j("Portions adapted from the PDP-11/70 Emulator v1.4 by Paul Nankervis <paulnank@hotmail.com>");for(b=0;b<e.length;b++)d=e[b],d.Ca&&d.Ca(this,this.A,this.b,this.i);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.H=d:this.f=parseInt(d,10));var f;if(a=Qc(this,"state")||(f=!0,a.state))b=this.N=a,f||(this.F=!0,this.f=Kh),this.f&&(this.K=
|
||||
function Tc(a,b,c){b=Tg(a,b,c);for(var d in b)if(!wh(a,b[+d]))return!1;return!0}Ta(function(){for(var a=C(document,"pdp11","debugger"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new $g(d);B(d,c)}});
|
||||
function Ih(a,b,c){r.call(this,"Computer",a,Ih,67108864);this.v.ja=!1;Jh(this,b);this.L=Qc(this,"autoPower",a);this.B=0;this.X=a.busWidth||a.buswidth;this.f=Kh;this.J=null;this.F=this.P=!1;this.Y=Qc(this,"url")||"";(Math.random()+.1).toString(36);this.g=Lh(this);if(this.b=mb("CPU",this.id)){this.i=mb("Debugger",this.id);this.w=new Mb({id:this.Sa+".bus",busWidth:this.X},this.b,this.i);var d,e=kb(this.id);if((this.A=mb("Panel",this.id))&&this.A.Da)for(b=0;b<e.length;b++)d=e[b],d.ia=this.A.ia,d.j=this.A.j,
|
||||
d.Da=this.A.Da;this.j("PDPjs v1.30.1\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");this.j("Portions adapted from the PDP-11/70 Emulator v1.4 by Paul Nankervis <paulnank@hotmail.com>");for(b=0;b<e.length;b++)d=e[b],d.Ca&&d.Ca(this,this.w,this.b,this.i);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.H=d:this.f=parseInt(d,10));var f;if(a=Qc(this,"state")||(f=!0,a.state))b=this.N=a,f||(this.F=!0,this.f=Kh),this.f&&(this.K=
|
||||
new O(this,"1.30.1"),Mh(this.K)?b=null:delete this.K);!b&&this.f&&(b=Nh(this))&&(this.F=!0);if(b){var g=this;Ba(b,null,!0,function(a,b,c){c?(g.H=null,g.F=!1,g.ia("Unable to load machine state from server (error "+c+(b?": "+va(b):"")+")")):(g.J=b,g.P=!0);H(g)})}else H(this);this.I.power||(this.L=!0);!c&&this.L&&Oh(this,this.wb)}else n("Unable to find CPU component")}u(Ih);var Kh=0;
|
||||
function Jh(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){n(d.message+" ("+c+")")}}a.R=b}function Qc(a,b,c){var d=b.toLowerCase(),d=db[b]||db[d];void 0===d&&a.R&&(d=a.R[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}function Oh(a,b,c){for(var d=kb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!pb(f)){pb(f,function(){Oh(a,b,c)});return}}b.call(a,c)}
|
||||
function Ph(a,b){var c=new O(a,"1.30.1","validate");if(Mh(c)&&Qh(c)){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.ia("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}k=Ih.prototype;
|
||||
k.wb=function(a){void 0===a&&(a=this.f||(this.J?1:Kh));if(!this.B){this.B++;var b=!1,c=!1;this.O=!1;var d=this.K||new O(this,"1.30.1");if(-1==a)b=!0;else if(a>Kh){if(Mh(d,this.J)){this.D=new O(this,"1.30.1","failsafe");Mh(this.D)&&(Rh(this,d),a=2,Sh(this.D));this.D.set("timestamp",Aa());Th(this.D);var e=this.f&&!this.F;if(1==a||Da("Click OK to restore the previous PDPjs machine state, or CANCEL to reset the machine.")){if(c=Qh(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?Mh(d,g):("error"==
|
||||
f&&"no machine state"!=g?(this.ia("Error: "+g),"unable to verify user"==g&&(Ka("user",""),this.g=null)):this.j(f+": "+g),Sh(d),Mh(d)?(c=Qh(d),e=!0):c=!1))}e&&Ph(this,c?d:null)}else 2==a&&d.clear()}else Ph(this);delete this.J;delete this.K}e=kb(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.b&&(c=Uh(this,g,d,b,c));b=[d,a,c];-1!=a?Oh(this,this.Wb,b):this.Wb(b)}};
|
||||
function Uh(a,b,c,d,e){if(!b.v.ja){b.v.ja=!0;if(b.ya){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.ya(f,d)&&f&&(n("Unable to restore state for "+b.type),a.N&&!a.P?(c.clear(),a.f=Kh,window&&window.location.reload()):a.O=!0,b.ya(null),e=!1)}if(!d&&b.Xb)for(a=b.Xb.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
|
||||
k.Wb=function(a){var b=a[0],c=0>a[1];a=a[2];this.ea=!0;this.v.ja=!0;var d=this.I.power;d&&(d.textContent="Shutdown");this.b&&(Uh(this,this.b,b,c,a),this.b.ab());this.O&&(Rh(this,b),b.clear());!c&&this.D&&(this.D.clear(),delete this.D);this.B=0};
|
||||
k.Wb=function(a){var b=a[0],c=0>a[1];a=a[2];this.da=!0;this.v.ja=!0;var d=this.I.power;d&&(d.textContent="Shutdown");this.b&&(Uh(this,this.b,b,c,a),this.b.ab());this.O&&(Rh(this,b),b.clear());!c&&this.D&&(this.D.clear(),delete this.D);this.B=0};
|
||||
function Rh(a,b){if(Da("There may be a problem with your PDPjs machine.\n\nTo help us diagnose it, click OK to send this PDPjs machine state to http://www.pcjs.org.")){var c=a.g||"";b=b.toString();var d={app:"PDPjs",ver:"1.30.1"};d.url=a.Y;d.user=c;d.type="bug";d.data=b;Ba("http://www.pcjs.org/api/v1/report",d,!0)}}
|
||||
function Hh(a,b,c){var d,e="none";if(a.B)return null;a.B--;var f=new O(a,"1.30.1"),g=new O(a,"1.30.1","validate"),h=Aa();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.30.1");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.b&&a.b.xa&&(c&&a.b.ca(),d=a.b.xa(b,c),"object"===typeof d&&f.set(a.b.id,d),c&&(a.b.v.ja=!1,!1===d&&(e=null)));for(var h=kb(a.id),m=0;m<h.length;m++){var p=h[m];p.v.ja&&(p.xa&&(d=p.xa(b,c),"object"===typeof d&&f.set(p.id,
|
||||
d)),c&&(p.v.ja=!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.g&&Vh(a,a.g,f.toString()),Th(g)&&Th(f)||(e=null,d=h=!0)):a.f&&(d=!0,h=3==a.f),d&&f.clear(h)):e=f.toString());c&&(a.v.ja=!1,b=a.I.power)&&(b.textContent="Power");a.B=0;return e}k.reset=function(){this.A&&this.A.reset&&(D(this,"Resetting "+this.A.type),this.A.reset());for(var a=kb(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.A&&c.reset&&(D(this,"Resetting "+c.type),c.reset())}};
|
||||
function Hh(a,b,c){var d,e="none";if(a.B)return null;a.B--;var f=new O(a,"1.30.1"),g=new O(a,"1.30.1","validate"),h=Aa();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.30.1");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.b&&a.b.xa&&(c&&a.b.fa(),d=a.b.xa(b,c),"object"===typeof d&&f.set(a.b.id,d),c&&(a.b.v.ja=!1,!1===d&&(e=null)));for(var h=kb(a.id),m=0;m<h.length;m++){var p=h[m];p.v.ja&&(p.xa&&(d=p.xa(b,c),"object"===typeof d&&f.set(p.id,
|
||||
d)),c&&(p.v.ja=!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.g&&Vh(a,a.g,f.toString()),Th(g)&&Th(f)||(e=null,d=h=!0)):a.f&&(d=!0,h=3==a.f),d&&f.clear(h)):e=f.toString());c&&(a.v.ja=!1,b=a.I.power)&&(b.textContent="Power");a.B=0;return e}k.reset=function(){this.w&&this.w.reset&&(D(this,"Resetting "+this.w.type),this.w.reset());for(var a=kb(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.w&&c.reset&&(D(this,"Resetting "+c.type),c.reset())}};
|
||||
k.start=function(a,b){for(var c=kb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}this.ba(!0)};k.stop=function(a,b){for(var c=kb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}this.ba(!0)};
|
||||
k.qa=function(a,b,c){var d=this;switch(b){case "power":return this.I[b]=c,c.onclick=function(){d.B||(d.v.ja?Hh(d,!1,!0):Oh(d,d.wb))},!0;case "reset":return this.I[b]=c,c.onclick=function(){if(d.v.ja&&!d.B)if(d.f&&!d.H){var a=Da("Click OK to save changes to this PDPjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Hh(d,a,!0);!a&&d.N?window&&window.location.reload():d.wb(Kh)}else d.reset(),d.b&&d.b.ab()},!0;case "save":if(qa())c.parentNode.removeChild(c);else return this.I[b]=
|
||||
c,c.onclick=function(){var a=Lh(d,!0);if(a){var b=!!(d.f&&!d.H||d.N),c=Hh(d,b);b?Vh(d,a,c):d.ia("Resume disabled, machine state not saved")}},!0}return!1};
|
||||
function Lh(a,b){var c=a.g;c||((c=Ja("user"),void 0!==c)?!c&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c=b)&&((c=Wh(a,c))||a.ia("The user ID is invalid.")):b&&a.ia("Browser local storage is not available"));return c}
|
||||
function Lh(a,b){var c=a.g;c||((c=Ga("user"),void 0!==c)?!c&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c=b)&&((c=Wh(a,c))||a.ia("The user ID is invalid.")):b&&a.ia("Browser local storage is not available"));return c}
|
||||
function Wh(a,b){a.g=null;b=Ba(ra()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(Ka("user",b.data),a.g=b.data)}catch(d){n(d.message+" ("+c+")")}return a.g}function Nh(a){var b=null;a.g&&(b=ra()+"/api/v1/user?req=load&user="+a.g+"&state="+Xh(a,"1.30.1"));return b}
|
||||
function Vh(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Xh(a,"1.30.1");d.data=c;b=Ba(ra()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.ia("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.ia(c),Ka("user",""),a.g=null)}}
|
||||
function Gg(a){var b;a=kb(a.id);for(var c=0;c<a.length;c++){var d=a[c];if(b)b==d&&(b=null);else if("RAM"==d.type)return d}return null}k.lb=function(){this.Da&&this.Da.focus()};k.ba=function(a){this.b&&this.b.ba(a);this.w&&this.w.ba(a)};Ta(function(){for(var a=C(document,"pdp11-machine"),b=0;b<a.length;b++)for(var c=a[b],d=z(c),c=C(c,"pdp11","computer"),e=0;e<c.length;e++){var f=c[e],g=z(f),g=new Ih(g,d,!0);A(g,f);g.L&&Oh(g,g.wb)}});
|
||||
Oa.show.push(function(){for(var a=C(document,"pdp11","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=mb("Computer",c.id))&&c.ea&&!c.v.ja&&c.wb(-1)}});Oa.exit.push(function(){for(var a=C(document,"pdp11","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=mb("Computer",c.id))&&c.v.ja&&Hh(c,!(!c.f||c.H),!0)}});function O(a,b,c){this.id=a.id;this.key=Xh(a,b,c);this.i=a.i;Sh(this,a.uc)}function Xh(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}
|
||||
function Gg(a){var b;a=kb(a.id);for(var c=0;c<a.length;c++){var d=a[c];if(b)b==d&&(b=null);else if("RAM"==d.type)return d}return null}k.lb=function(){this.Da&&this.Da.focus()};k.ba=function(a){this.b&&this.b.ba(a);this.A&&this.A.ba(a)};Ta(function(){for(var a=C(document,"pdp11-machine"),b=0;b<a.length;b++)for(var c=a[b],d=z(c),c=C(c,"pdp11","computer"),e=0;e<c.length;e++){var f=c[e],g=z(f),g=new Ih(g,d,!0);B(g,f);g.L&&Oh(g,g.wb)}});
|
||||
Oa.show.push(function(){for(var a=C(document,"pdp11","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=mb("Computer",c.id))&&c.da&&!c.v.ja&&c.wb(-1)}});Oa.exit.push(function(){for(var a=C(document,"pdp11","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=mb("Computer",c.id))&&c.v.ja&&Hh(c,!(!c.f||c.H),!0)}});function O(a,b,c){this.id=a.id;this.key=Xh(a,b,c);this.i=a.i;Sh(this,a.uc)}function Xh(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}
|
||||
O.prototype={constructor:O,set:function(a,b){try{this[this.id][a]=b}catch(c){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},clear:function(a){Sh(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(e){}b.splice(c,
|
||||
1);c=0}}};function Sh(a,b){a[a.id]={};b&&a.set("parms",b);a.b=!1}function Th(a){var b=!0;if(Fa()){var c=JSON.stringify(a[a.id]);Ka(a.key,c)||(n("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}function Qh(a){var b=!0;try{a[a.id]=JSON.parse(a[a.id])}catch(c){n(c.message||c),b=!1}return b}function Mh(a,b){return b?(a[a.id]=b,a.b=!0):a.b?!0:Fa()&&(b=Ja(a.key))?(a[a.id]=b,a.b=!0):!1}var Yh=0;
|
||||
1);c=0}}};function Sh(a,b){a[a.id]={};b&&a.set("parms",b);a.b=!1}function Th(a){var b=!0;if(Fa()){var c=JSON.stringify(a[a.id]);Ka(a.key,c)||(n("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}function Qh(a){var b=!0;try{a[a.id]=JSON.parse(a[a.id])}catch(c){n(c.message||c),b=!1}return b}function Mh(a,b){return b?(a[a.id]=b,a.b=!0):a.b?!0:Fa()&&(b=Ga(a.key))?(a[a.id]=b,a.b=!0):!1}var Yh=0;
|
||||
function ji(a,b,c,d,e,f){e("Loading "+a+"...");Ba(a,null,!0,function(g,h,m){m?(h||(h="unable to load "+a+" ("+m+")"),f(h,null)):ki(h,a,b,c,d,e,f)})}
|
||||
function ki(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{c&&(jb(c,b,a),(f=b)&&0>f.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1<d.length&&(d+=",")):d='{state:"'+d+'",':d="{",d+='url:"'+f+'"}',"object"==typeof resources&&(f=null),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/(<xsl:variable name="APPNAME">).*?(<\/xsl:variable>)/,"$1PDPjs$2"),
|
||||
a=a.replace(/(<xsl:variable name="APPCLASS">).*?(<\/xsl:variable>)/,"$1pdp11$2"));f=null;if("<"==a.charAt(0))try{e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(q){f=null,a=q.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,f)}}a?e?li(a,f,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)}
|
||||
|
|
|
|||
|
|
@ -53,130 +53,130 @@ Function.prototype.bind||(Function.prototype.bind=function(a){function b(){retur
|
|||
g.X=function(a,b,c,d){if(this.o&&this.o.X(a,b,c,d)||this.a&&this.a.X(a,b,c,d))return!0;switch(b){case "R0":case "R1":case "R2":case "R3":case "R4":case "R5":case "R6":case "R7":case "NF":case "ZF":case "VF":case "CF":case "PS":return this.u[b]=c,this.b++,!0;default:return"rled"==a?(this.u[b]=c,this.b++,!0):this.parent.X.call(this,a,b,c,d)}};g.fa=function(a,b,c,d){this.o=a;this.j=b;this.a=c;this.D=d};g.$=function(a,b){b||Wa();return!0};g.Z=function(){return!0};
|
||||
function Xa(a,b,c,d){if(a.u[b]){void 0===c&&(a.i.error=!0,a.K("Value for "+b+" is invalid"),D(a.a));var e=a.D&&a.D.b||8;c=!a.a.i.W||a.i.mb?8==e?ia(c,d):ja(c,d):"--------".substr(0,d||4);a.u[b].textContent!=c&&(a.u[b].textContent=c)}}function Ya(a,b,c,d){for(var e=0;e<d;e++){var f=a.u[b+e];f&&(f.style.backgroundColor=c&1<<e?"#ff0000":"#000000")}}
|
||||
g.ba=function(a){if(this.b&&(a||!this.a.i.W||this.i.mb)){for(a=0;a<this.a.f.length;a++)Xa(this,"R"+a,this.a.f[a]);a=Za(this.a);Xa(this,"PS",a);Xa(this,"NF",a&8?1:0,1);Xa(this,"ZF",a&4?1:0,1);Xa(this,"VF",a&2?1:0,1);Xa(this,"CF",a&1?1:0,1);Ya(this,"D",this.a.f[0],16);Ya(this,"A",this.a.f[7],22)}};function Wa(){for(var a=!1,b=B(document,"pdp11","panel"),c=0;c<b.length;c++){var d=b[c],e=y(d),f=Qa(e.id);f||(a=!0,f=new Va(e));A(f,d);a&&C(f)}}r(Wa);
|
||||
function $a(a,b,c){u.call(this,"Bus",a,$a);this.a=b;this.D=c;this.H=a.busWidth||16;this.o=0;this.G=[];this.w=null;this.B=Math.pow(2,this.H);this.h=this.B-1|0;this.c=E;this.j=Math.log2(this.c);this.C=this.c>>2;this.g=this.c-1;this.v=this.B/this.c|0;this.ka=[];this.m=0;this.s=[];this.Cb=[ab,bb,cb,db];a=new F(this);eb(a,this.D);this.b=Array(this.v);for(b=0;b<this.v;b++)this.b[b]=a;C(this)}w($a);var E=8192,fb=E-1;
|
||||
function $a(a,b,c){u.call(this,"Bus",a,$a);this.a=b;this.D=c;this.H=a.busWidth||16;this.o=0;this.G=[];this.w=null;this.B=Math.pow(2,this.H);this.h=this.B-1|0;this.c=E;this.j=Math.log2(this.c);this.C=this.c>>2;this.g=this.c-1;this.v=this.B/this.c|0;this.ka=[];this.l=0;this.s=[];this.Cb=[ab,bb,cb,db];a=new F(this);eb(a,this.D);this.b=Array(this.v);for(b=0;b<this.v;b++)this.b[b]=a;C(this)}w($a);var E=8192,fb=E-1;
|
||||
function ab(a,b){var c=-1,d=this.controller,e=d.ka[a];e?e[0]?c=e[0](b):e[2]&&(c=b&1?e[2](b&-2)>>8:e[2](b)&255):b&1&&(e=d.ka[a&-2])&&e[2]&&(c=e[2](b&-2)>>8);return 0<=c?c:c=gb(d,b)}function bb(a,b,c){var d=!1,e=this.controller,f=e.ka[a];if(f)if(f[1])f[1](b,c),d=!0;else{if(f[3]){a=f[2]?f[2](0):0;if(c&1)f[3](a&255|b<<8,c&-2);else f[3](a&-256|b,c);d=!0}}else c&1&&(f=e.ka[a&-2])&&f[3]&&(c&=-2,a=f[2]?f[2](0):0,f[3](a&255|b<<8,c),d=!0);d||gb(e,c)}
|
||||
function cb(a,b){var c=-1,d=this.controller;(a=d.ka[a])&&(a[2]?c=a[2](b):a[0]&&(c=a[0](b)|a[0](b+1)<<8));return 0<=c?c:c=gb(d,b)}function db(a,b,c){var d=!1,e=this.controller;if(a=e.ka[a])a[3]?(a[3](b,c),d=!0):a[1]&&(a[1](b&255,c),a[1](b>>8,c+1),d=!0);d||gb(e,c)}function hb(a,b){if(b!=a.o){var c;a.o&&(c=(1<<a.o)-E,ib(a,c,E,a.G),a.o=0);b&&(a.o=b,c=(1<<b)-E,a.G=jb(a,c,E),a.w?ib(a,c,E,a.w):(kb(a,c,E,lb,a),a.w=jb(a,c,E)))}}
|
||||
$a.prototype.reset=function(){for(var a=0;a<this.s.length;a++)this.s[a]();hb(this,16)};function gb(a,b){a.m||G(a.a,4,b);return 0}$a.prototype.$=function(a,b){b||this.reset();return!0};
|
||||
$a.prototype.reset=function(){for(var a=0;a<this.s.length;a++)this.s[a]();hb(this,16)};function gb(a,b){a.l||G(a.a,4,b);return 0}$a.prototype.$=function(a,b){b||this.reset();return!0};
|
||||
function kb(a,b,c,d,e){for(var f=b,h=c,l=f>>>a.j;0<h&&l<a.b.length;){var n=a.b[l],q=l*a.c,t=a.c-(f-q);t>h&&(t=h);if(!e&&n&&n.size){if(n.type==d){if(f+h<=n.ya)return n.Xa+=n.ya-f,n.ya=f,!0;if(f>=n.ya+n.Xa){t=n.size-(f-q);t>h&&(t=h);n.Xa=f-n.ya+t;f=q+a.c;h-=t;l++;continue}}return mb(1,f,h)}f=new F(a,f,t,a.c,d,e);eb(f,a.D,n);a.b[l++]=f;f=q+a.c;h-=t}if(0>=h){c/=1024;var z;e="";z?10<z&&(z=10):z=c&-65536?10:5;if(null==c||isNaN(c))for(;0<z--;)e="?"+e;else for(;0<z--;)e=String.fromCharCode(c%10+48)+e,c/=
|
||||
10;a.status(e+"Kb "+nb[d]+" at "+ia(b));return!0}return mb(2,b,c)}function jb(a,b,c){var d=[];for(b>>>=a.j;0<c&&b<a.b.length;)d.push(a.b[b++]),c-=a.c;return d}function ib(a,b,c,d){var e=0;for(b>>>=a.j;0<c&&b<a.b.length;){var f=d[e++];if(!f)break;a.b[b++]=f;c-=a.c}}function ob(a,b){return a.b[(b&a.h)>>>a.j].fb(b&a.g,b)}function pb(a,b){return a.b[(b&a.h)>>>a.j].S(b&a.g,b)}$a.prototype.Ja=function(a,b){this.m++;this.b[(a&this.h)>>>this.j].lb(a&this.g,b&255,a);this.m--};
|
||||
10;a.status(e+"Kb "+nb[d]+" at "+ia(b));return!0}return mb(2,b,c)}function jb(a,b,c){var d=[];for(b>>>=a.j;0<c&&b<a.b.length;)d.push(a.b[b++]),c-=a.c;return d}function ib(a,b,c,d){var e=0;for(b>>>=a.j;0<c&&b<a.b.length;){var f=d[e++];if(!f)break;a.b[b++]=f;c-=a.c}}function ob(a,b){return a.b[(b&a.h)>>>a.j].fb(b&a.g,b)}function pb(a,b){return a.b[(b&a.h)>>>a.j].S(b&a.g,b)}$a.prototype.Ja=function(a,b){this.l++;this.b[(a&this.h)>>>this.j].lb(a&this.g,b&255,a);this.l--};
|
||||
function qb(a,b,c){a.b[(b&a.h)>>>a.j].Ya(b&a.g,c&65535,b)}function rb(a){for(var b=0,c=[],d=0;d<a.v;d++){var e=a.b[d];if(e.na||e.Eb){c[b++]=d;var f=b++;if(e=e.save()){for(var h=0,l=0,n=[];h<e.length;){for(var q=e[h],t=h+1;t<e.length&&e[t]===q;)t++;n[l++]=t-h;n[l++]=q;h=t}n.length<e.length&&(e=n)}c[f]=e}}return c}function sb(a,b,c,d,e,f,h,l){for(;b<=c;b+=2){var n=b&fb;void 0!==a.ka[n]?m("I/O address already registered: "+ja(b,8,!0)):a.ka[n]=[d,e,f,h,l||"unknown",!1]}}
|
||||
function tb(a,b,c){for(var d in c){var e=+d,f=c[d];if(!(f[5]&&f[5]>a.a.Ka)){var h=f[0]?f[0].bind(b):null,l=f[1]?f[1].bind(b):null,n=f[2]?f[2].bind(b):null,q=f[3]?f[3].bind(b):null;65472<=e&&65487>=e&&(!h&&n&&(h=function(a){return function(b){return a(b)&255}.bind(b)}(n)),!l&&q&&(l=function(a){return function(b,c){return a(b,c)}.bind(b)}(q)));sb(a,e,e,h,l,n,q,f[4])}}}function ub(a,b){a.s.push(b)}function vb(a,b){a.m||G(a.a,4,b)}
|
||||
function mb(a,b,c){m("Memory block error ("+a+": "+ja(b)+","+ja(c)+")");return!1}function H(a){u.call(this,"Device",a,H);this.c={data:0,gd:0,Wa:20,vc:0};this.b={jd:0,jb:-1}}w(H);g=H.prototype;g.fa=function(a,b,c,d){this.j=b;this.a=c;this.D=d;var e=this;this.b.jb=wb(c,function(){e.b.pa|=128;e.b.pa&64&&(xb(e.a,e.b.wc),yb(e.a,e.b.jb,1E3/60))});this.b.wc=zb(64,6);tb(b,this,I);ub(b,this.reset.bind(this));C(this)};g.reset=function(){this.c.Wa=this.c.Wa&-120|20;this.b.pa=0};
|
||||
g.Rb=function(){var a=this.b.pa;this.b.pa&=-129;return a};g.Fc=function(a){this.b.pa=a;a&64&&yb(this.a,this.b.jb,1E3/60);this.b.pa=a&-129};g.Kb=function(a){return(a?this.c.vc:this.c.data)&65535};g.yc=function(a){this.c.data=a};g.Tb=function(){var a=this.a;return a.w&62337|a.Ma<<5|a.Na<<1};g.Hc=function(a){var b=this.a;a&=62337;if(b.w!=a){b.w=a;b.Ma=a>>5&3;b.Na=a>>1&15;var c=0;a&257&&(c=4,a&1&&(c|=2));b.Ha!=c&&(b.Ha=c,Ab(b))}Bb(this)};
|
||||
g.Ub=function(){var a=this.a.qa;a&65280&&(a=(a<<8|a>>8)&65535);return a};g.Vb=function(){return this.a.hb};g.Wb=function(){return this.a.ra};g.Ic=function(a){var b=this.a;1170>b.Ka&&(a&=-49);b.ra!=a&&(b.ra=a,a&16?(b.bb=4194303,b.Oa=3915776):(b.bb=262143,b.Oa=253952),Ab(b));Bb(this)};function Bb(a){a.c.Wa=a.c.Wa&-8|(a.a.Ha?a.a.ra&16?1:2:4)}g.jc=function(a){return this.a.F[1][a>>1&7]};g.Wc=function(a,b){this.a.F[1][b>>1&7]=a&65295};g.hc=function(a){return this.a.F[1][(a>>1&7)+8]};
|
||||
function tb(a,b,c){for(var d in c){var e=+d,f=c[d];if(!(f[5]&&f[5]>a.a.Ka)){var h=f[0]?f[0].bind(b):null,l=f[1]?f[1].bind(b):null,n=f[2]?f[2].bind(b):null,q=f[3]?f[3].bind(b):null;65472<=e&&65487>=e&&(!h&&n&&(h=function(a){return function(b){return a(b)&255}.bind(b)}(n)),!l&&q&&(l=function(a){return function(b,c){return a(b,c)}.bind(b)}(q)));sb(a,e,e,h,l,n,q,f[4])}}}function ub(a,b){a.s.push(b)}function H(a,b){a.l||G(a.a,4,b)}
|
||||
function mb(a,b,c){m("Memory block error ("+a+": "+ja(b)+","+ja(c)+")");return!1}function I(a){u.call(this,"Device",a,I);this.c={data:0,gd:0,Wa:20,vc:0};this.b={jd:0,jb:-1}}w(I);g=I.prototype;g.fa=function(a,b,c,d){this.j=b;this.a=c;this.D=d;var e=this;this.b.jb=vb(c,function(){e.b.pa|=128;e.b.pa&64&&(wb(e.a,e.b.wc),xb(e.a,e.b.jb,1E3/60))});this.b.wc=yb(64,6);tb(b,this,J);ub(b,this.reset.bind(this));C(this)};g.reset=function(){this.c.Wa=this.c.Wa&-120|20;this.b.pa=0};
|
||||
g.Rb=function(){var a=this.b.pa;this.b.pa&=-129;return a};g.Fc=function(a){this.b.pa=a;a&64&&xb(this.a,this.b.jb,1E3/60);this.b.pa=a&-129};g.Kb=function(a){return(a?this.c.vc:this.c.data)&65535};g.yc=function(a){this.c.data=a};g.Tb=function(){var a=this.a;return a.w&62337|a.Ma<<5|a.Na<<1};g.Hc=function(a){var b=this.a;a&=62337;if(b.w!=a){b.w=a;b.Ma=a>>5&3;b.Na=a>>1&15;var c=0;a&257&&(c=4,a&1&&(c|=2));b.Ha!=c&&(b.Ha=c,zb(b))}Ab(this)};
|
||||
g.Ub=function(){var a=this.a.qa;a&65280&&(a=(a<<8|a>>8)&65535);return a};g.Vb=function(){return this.a.hb};g.Wb=function(){return this.a.ra};g.Ic=function(a){var b=this.a;1170>b.Ka&&(a&=-49);b.ra!=a&&(b.ra=a,a&16?(b.bb=4194303,b.Oa=3915776):(b.bb=262143,b.Oa=253952),zb(b));Ab(this)};function Ab(a){a.c.Wa=a.c.Wa&-8|(a.a.Ha?a.a.ra&16?1:2:4)}g.jc=function(a){return this.a.F[1][a>>1&7]};g.Wc=function(a,b){this.a.F[1][b>>1&7]=a&65295};g.hc=function(a){return this.a.F[1][(a>>1&7)+8]};
|
||||
g.Uc=function(a,b){this.a.F[1][(b>>1&7)+8]=a&65295};g.ic=function(a){return this.a.U[1][a>>1&7]};g.Vc=function(a,b){b=b>>1&7;this.a.U[1][b]=a;this.a.F[1][b]&=65295};g.gc=function(a){return this.a.U[1][(a>>1&7)+8]};g.Tc=function(a,b){b=(b>>1&7)+8;this.a.U[1][b]=a;this.a.F[1][b]&=65295};g.Qb=function(a){return this.a.F[0][a>>1&7]};g.Ec=function(a,b){this.a.F[0][b>>1&7]=a&65295};g.Ob=function(a){return this.a.F[0][(a>>1&7)+8]};g.Cc=function(a,b){this.a.F[0][(b>>1&7)+8]=a&65295};
|
||||
g.Pb=function(a){return this.a.U[0][a>>1&7]};g.Dc=function(a,b){b=b>>1&7;this.a.U[0][b]=a;this.a.F[0][b]&=65295};g.Nb=function(a){return this.a.U[0][(a>>1&7)+8]};g.Bc=function(a,b){b=(b>>1&7)+8;this.a.U[0][b]=a;this.a.F[0][b]&=65295};g.pc=function(a){return this.a.F[3][a>>1&7]};g.bd=function(a,b){this.a.F[3][b>>1&7]=a&65295};g.nc=function(a){return this.a.F[3][(a>>1&7)+8]};g.$c=function(a,b){this.a.F[3][(b>>1&7)+8]=a&65295};g.oc=function(a){return this.a.U[3][a>>1&7]};
|
||||
g.ad=function(a,b){b=b>>1&7;this.a.U[3][b]=a;this.a.F[3][b]&=65295};g.mc=function(a){return this.a.U[3][(a>>1&7)+8]};g.Zc=function(a,b){b=(b>>1&7)+8;this.a.U[3][b]=a;this.a.F[3][b]&=65295};g.Aa=function(a){a&=7;return this.a.A&2048?this.a.xa[a]:this.a.f[a]};g.Ca=function(a,b){b&=7;this.a.A&2048?this.a.xa[b]=a:this.a.f[b]=a};g.ac=function(){return this.a.A&49152?this.a.aa[0]:this.a.f[6]};g.Nc=function(a){this.a.A&49152?this.a.aa[0]=a:this.a.f[6]=a};g.dc=function(){return this.a.f[7]};
|
||||
g.Qc=function(a){this.a.f[7]=a};g.Ba=function(a){a&=7;return this.a.A&2048?this.a.f[a]:this.a.xa[a]};g.Da=function(a,b){b&=7;this.a.A&2048?this.a.f[b]=a:this.a.xa[b]=a};g.bc=function(){return 1==(this.a.A&49152)>>14?this.a.f[6]:this.a.aa[1]};g.Oc=function(a){1==(this.a.A&49152)>>14?this.a.f[6]=a:this.a.aa[1]=a};g.cc=function(){return 3==(this.a.A&49152)>>14?this.a.f[6]:this.a.aa[3]};g.Pc=function(a){3==(this.a.A&49152)>>14?this.a.f[6]=a:this.a.aa[3]=a};g.Mb=function(a){return this.a.xb[a-65504>>1]};
|
||||
g.Ac=function(a,b){this.a.xb[b-65504>>1]=a};g.vb=function(a){return 65520==a?61183:0};g.Bb=function(){};g.lc=function(){return 1};g.Yc=function(){};g.Lb=function(){return this.a.I};g.zc=function(){this.a.I=0};g.Sb=function(){return this.a.wb};g.Gc=function(a,b){b&1||(a&=255);this.a.wb=a};g.Xb=function(a){return a?this.a.ib:0};g.Jc=function(a){var b=this.a;if(a&=65024){var c=a>>9;do a+=34;while(c>>=1)}b.ib=a;b.l|=2};g.kc=function(a){return a?this.a.sa&65280:0};g.Xc=function(a){this.a.sa=a|255};
|
||||
g.$b=function(){return Za(this.a)};g.Mc=function(a){Cb(this.a,a&-1809|Za(this.a)&1808);this.a.l|=128};g.Ab=function(){};
|
||||
var J={},I=(J[62592]=[null,null,H.prototype.jc,H.prototype.Wc,"SISDR",1145],J[62608]=[null,null,H.prototype.hc,H.prototype.Uc,"SDSDR",1145],J[62624]=[null,null,H.prototype.ic,H.prototype.Vc,"SISAR",1145],J[62640]=[null,null,H.prototype.gc,H.prototype.Tc,"SDSAR",1145],J[62656]=[null,null,H.prototype.Qb,H.prototype.Ec,"KISDR",1145],J[62672]=[null,null,H.prototype.Ob,H.prototype.Cc,"KDSDR",1145],J[62688]=[null,null,H.prototype.Pb,H.prototype.Dc,"KISAR",1145],J[62704]=[null,null,H.prototype.Nb,H.prototype.Bc,
|
||||
"KDSAR",1145],J[62798]=[null,null,H.prototype.Wb,H.prototype.Ic,"MMR3",1145],J[65382]=[null,null,H.prototype.Rb,H.prototype.Fc,"LKS"],J[65400]=[null,null,H.prototype.Kb,H.prototype.yc,"CNSL"],J[65402]=[null,null,H.prototype.Tb,H.prototype.Hc,"MMR0",1145],J[65404]=[null,null,H.prototype.Ub,H.prototype.Ab,"MMR1",1145],J[65406]=[null,null,H.prototype.Vb,H.prototype.Ab,"MMR2",1145],J[65408]=[null,null,H.prototype.pc,H.prototype.bd,"UISDR",1145],J[65424]=[null,null,H.prototype.nc,H.prototype.$c,"UDSDR",
|
||||
1145],J[65440]=[null,null,H.prototype.oc,H.prototype.ad,"UISAR",1145],J[65456]=[null,null,H.prototype.mc,H.prototype.Zc,"UDSAR",1145],J[65472]=[null,null,H.prototype.Aa,H.prototype.Ca,"R0SET0"],J[65473]=[null,null,H.prototype.Aa,H.prototype.Ca,"R1SET0"],J[65474]=[null,null,H.prototype.Aa,H.prototype.Ca,"R2SET0"],J[65475]=[null,null,H.prototype.Aa,H.prototype.Ca,"R3SET0"],J[65476]=[null,null,H.prototype.Aa,H.prototype.Ca,"R4SET0"],J[65477]=[null,null,H.prototype.Aa,H.prototype.Ca,"R5SET0"],J[65478]=
|
||||
[null,null,H.prototype.ac,H.prototype.Nc,"R6KERNEL"],J[65479]=[null,null,H.prototype.dc,H.prototype.Qc,"R7KERNEL"],J[65480]=[null,null,H.prototype.Ba,H.prototype.Da,"R0SET1",1145],J[65481]=[null,null,H.prototype.Ba,H.prototype.Da,"R1SET1",1145],J[65482]=[null,null,H.prototype.Ba,H.prototype.Da,"R2SET1",1145],J[65483]=[null,null,H.prototype.Ba,H.prototype.Da,"R3SET1",1145],J[65484]=[null,null,H.prototype.Ba,H.prototype.Da,"R4SET1",1145],J[65485]=[null,null,H.prototype.Ba,H.prototype.Da,"R5SET1",1145],
|
||||
J[65486]=[null,null,H.prototype.bc,H.prototype.Oc,"R6SUPER",1145],J[65487]=[null,null,H.prototype.cc,H.prototype.Pc,"R6USER",1145],J[65504]=[null,null,H.prototype.Mb,H.prototype.Ac,"CTRL",1170],J[65520]=[null,null,H.prototype.vb,H.prototype.Bb,"LSIZE",1170],J[65522]=[null,null,H.prototype.vb,H.prototype.Bb,"HSIZE",1170],J[65524]=[null,null,H.prototype.lc,H.prototype.Yc,"SYSID",1170],J[65526]=[null,null,H.prototype.Lb,H.prototype.zc,"CPUERR",1170],J[65528]=[null,null,H.prototype.Sb,H.prototype.Gc,
|
||||
"MB",1170],J[65530]=[null,null,H.prototype.Xb,H.prototype.Jc,"PIR"],J[65532]=[null,null,H.prototype.kc,H.prototype.Xc,"SL"],J[65534]=[null,null,H.prototype.$b,H.prototype.Mc,"PSW"],J);I[62594]=I[62592];I[62596]=I[62592];I[62598]=I[62592];I[62600]=I[62592];I[62602]=I[62592];I[62604]=I[62592];I[62606]=I[62592];I[62610]=I[62608];I[62612]=I[62608];I[62614]=I[62608];I[62616]=I[62608];I[62618]=I[62608];I[62620]=I[62608];I[62622]=I[62608];I[62626]=I[62624];I[62628]=I[62624];I[62630]=I[62624];I[62632]=I[62624];
|
||||
I[62634]=I[62624];I[62636]=I[62624];I[62638]=I[62624];I[62642]=I[62640];I[62644]=I[62640];I[62646]=I[62640];I[62648]=I[62640];I[62650]=I[62640];I[62652]=I[62640];I[62654]=I[62640];I[62658]=I[62656];I[62660]=I[62656];I[62662]=I[62656];I[62664]=I[62656];I[62666]=I[62656];I[62668]=I[62656];I[62670]=I[62656];I[62674]=I[62672];I[62676]=I[62672];I[62678]=I[62672];I[62680]=I[62672];I[62682]=I[62672];I[62684]=I[62672];I[62686]=I[62672];I[62690]=I[62688];I[62692]=I[62688];I[62694]=I[62688];I[62696]=I[62688];
|
||||
I[62698]=I[62688];I[62700]=I[62688];I[62702]=I[62688];I[62706]=I[62704];I[62708]=I[62704];I[62710]=I[62704];I[62712]=I[62704];I[62714]=I[62704];I[62716]=I[62704];I[62718]=I[62704];I[65410]=I[65408];I[65412]=I[65408];I[65414]=I[65408];I[65416]=I[65408];I[65418]=I[65408];I[65420]=I[65408];I[65422]=I[65408];I[65426]=I[65424];I[65428]=I[65424];I[65430]=I[65424];I[65432]=I[65424];I[65434]=I[65424];I[65436]=I[65424];I[65438]=I[65424];I[65442]=I[65440];I[65444]=I[65440];I[65446]=I[65440];I[65448]=I[65440];
|
||||
I[65450]=I[65440];I[65452]=I[65440];I[65454]=I[65440];I[65458]=I[65456];I[65460]=I[65456];I[65462]=I[65456];I[65464]=I[65456];I[65466]=I[65456];I[65468]=I[65456];I[65470]=I[65456];I[65506]=I[65504];I[65508]=I[65504];I[65510]=I[65504];I[65512]=I[65504];I[65514]=I[65504];I[65516]=I[65504];I[65518]=I[65504];r(function(){for(var a=B(document,"pdp11","device"),b=0;b<a.length;b++){var c,d=a[b];c=y(d);switch(c.type){case "default":c=new H(c);A(c,d);break;case "pc11":c=new K(c),A(c,d)}}});var Db;
|
||||
if(Ua){var Eb=new ArrayBuffer(2);(new DataView(Eb)).setUint16(0,256,!0);Db=256===(new Uint16Array(Eb))[0]}else Db=!1;var Fb=Db;
|
||||
function F(a,b,c,d,e,f){this.j=a;this.id=Gb+=2;this.a=null;this.ya=b;this.Xa=c;this.size=d||0;this.type=e||Hb;this.g=e==Ib;this.controller=null;eb(this);this.na=this.Eb=!1;if(this.size)if(f)this.controller=f,a=[null,0],this.a=a[0],Jb(this,f.Cb);else if(Ua)this.c=new ArrayBuffer(this.size),this.u=new DataView(this.c,0,this.size),this.b=new Uint8Array(this.c,0,this.size),this.m=new Uint16Array(this.c,0,this.size>>1),this.a=new Int32Array(this.c,0,this.size>>2),Jb(this,Fb?Kb:Lb);else{a=this.a=Array(this.size>>
|
||||
2);for(f=0;f<a.length;f++)a[f]=0;Jb(this,Mb)}else Jb(this)}var Hb=0,Ib=2,lb=4,nb=["NONE","RAM","ROM","VID","H/W"],Gb=0;
|
||||
F.prototype={constructor:F,parent:null,save:function(){var a,b;if(this.controller)a=null;else if(Ua)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.u.getInt32(b<<2,!0);else a=this.a;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(Ua)for(b=0;b<a.length;b++)this.u.setInt32(b<<2,a[b],!0);else this.a=a;return this.na=!0}return!1},s:function(){return 255},w:function(){},v:function(a,b){return this.fb(a++,b++)|this.fb(a,b)<<8},B:function(a,b,c){this.kb(a++,
|
||||
b&255,c++);this.kb(a,b>>8,c)},L:function(a){return this.a[a>>2]>>>((a&3)<<3)&255},ca:function(a,b){a&1&&vb(this.j,b);b=a>>2;a=(a&3)<<3;var c=this.a[b]>>a;return 24>a?c&65535:c&255|(this.a[b+1]&255)<<8},ha:function(a,b){var c=a>>2;a=(a&3)<<3;this.a[c]=this.a[c]&~(255<<a)|b<<a;this.na=!0},va:function(a,b,c){a&1&&vb(this.j,c);c=a>>2;a=(a&3)<<3;24>a?this.a[c]=this.a[c]&~(65535<<a)|b<<a:(this.a[c]=this.a[c]&16777215|b<<24,c++,this.a[c]=this.a[c]&-256|b>>8);this.na=!0},G:function(a,b){return this.H(a,b)},
|
||||
P:function(a,b){return this.V(a,b)},ea:function(a,b,c){this.g||this.lb(a,b,c)},ja:function(a,b,c){this.g||this.ta(a,b,c)},C:function(a){return this.b[a]},J:function(a){return this.b[a]},M:function(a,b){a&1&&vb(this.j,b);return this.u.getUint16(a,!0)},Y:function(a,b){a&1&&vb(this.j,b);return this.m[a>>1]},da:function(a,b){this.b[a]=b;this.na=!0},ga:function(a,b){this.b[a]=b;this.na=!0},ia:function(a,b,c){a&1&&vb(this.j,c);this.u.setUint16(a,b,!0);this.na=!0},ua:function(a,b,c){a&1&&vb(this.j,c);this.m[a>>
|
||||
1]=b;this.na=!0}};function eb(a,b,c){a.D=b;a.h=a.o=0;c&&((a.h=c.h)&&Nb(a,Ob,!1),(a.o=c.o)&&Pb(a,Ob,!1))}function Pb(a,b,c){c&&a.o||(a.kb=!a.g&&b[1]||a.w,a.Ya=!a.g&&b[3]||a.B);if(c||void 0===c)a.lb=b[1]||a.w,a.ta=b[3]||a.B}function Nb(a,b,c){c&&a.h||(a.fb=b[0]||a.s,a.S=b[2]||a.v);if(c||void 0===c)a.H=b[0]||a.s,a.V=b[2]||a.v}function Jb(a,b){b||(b=Qb);Nb(a,b,void 0);Pb(a,b,void 0)}
|
||||
var Qb=[],Mb=[F.prototype.L,F.prototype.ha,F.prototype.ca,F.prototype.va],Ob=[F.prototype.G,F.prototype.ea,F.prototype.P,F.prototype.ja];if(Ua)var Lb=[F.prototype.C,F.prototype.da,F.prototype.M,F.prototype.ia],Kb=[F.prototype.J,F.prototype.ga,F.prototype.Y,F.prototype.ua];
|
||||
function Rb(a,b){u.call(this,"CPU",a,Rb);var c=a.multiplier||1;this.Ta=a.cycles||b;this.ea=c;this.ab=Math.round(this.Ta/1E4)/100;this.ga=this.ab*this.ea;this.i.W=!1;this.i.yb=!1;this.i.Ga=a.autoStart;this.i.Sa=!1;this.Qa=this.ia=0;this.Ra=a.csStart;this.ua=a.csInterval;this.va=a.csStop;this.H=[];this.ub=this.uc.bind(this);C(this)}w(Rb);var Sb=["power","reset"];g=Rb.prototype;
|
||||
g.fa=function(a,b,c,d){this.o=a;this.j=b;this.D=d;for(b=0;b<Sb.length;b++)(c=this.u[Sb[b]])&&this.o.X(null,Sb[b],c);a=Tb(a,"autoStart");null!=a&&(this.i.Ga="true"==a?!0:"false"==a?!1:!!a);C(this)};g.reset=function(){};g.save=function(){return null};g.restore=function(){return!1};g.$=function(a,b){if(!b){if(a&&this.restore){Ub(this);if(!this.restore(a))return!1;Vb(this)}else this.reset();this.R("No debugger detected")}this.o.ba();return!0};g.Z=function(a){return a?this.save():!0};
|
||||
g.Ga=function(){return this.i.Ga||void 0===this.u.run?(Wb(this,!0),!0):!1};g.ob=function(){return 0};function Vb(a){void 0===a.Ra&&(a.Ra=0);void 0===a.ua&&(a.ua=-1);void 0===a.va&&(a.va=-1);a.i.Sa=0<=a.Ra&&0<a.ua;a.i.Sa&&(a.Qa=0,a.ia=a.Ra-a.L)}
|
||||
g.X=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.u[b]=c,!0;case "run":return this.u[b]=c,c.onclick=function(){var a;if(a=d.o)if(a=d.o,a.i.O)a=!0;else{var b=null,c,l=x(a.id);for(c=0;c<l.length&&(b=l[c],b===a||b.i.ready);c++);if(c==l.length)for(c=0;c<l.length&&(b=l[c],b===a||b.i.O);c++);c==l.length&&(b=a);m("The "+b.type+" component ("+b.id+") is not "+(b.i.ready?"powered yet":"ready yet"+(b.Va?" (waiting for notification)":""))+".");a=!1}a&&(d.i.W?D(d):Wb(d))},!0;case "speed":return this.u[b]=
|
||||
c,!0;case "setSpeed":return this.u[b]=c,c.onclick=function(){Xb(d,d.ea<<1,!0)},c.textContent=this.ga.toFixed(2)+"Mhz",!0}return!1};g.ba=function(){var a=this.u.speed;a&&(a.textContent=this.i.W&&this.ca?this.ca.toFixed(2)+"Mhz":"Stopped")};function Yb(a,b){var c=1;b&&1<a.ea&&a.ca&&(c=a.ca/a.ab);a.sb=Math.round(1E3/30);a.Ua=Math.floor(a.Ta/30*c);b||(a.Ea=a.Ua);a.cb=0}function Zb(a){return a.L+a.V+a.ha-a.a}function Ub(a){a.ca=0;a.tb=0;a.L=a.V=a.ha=a.a=a.G=0;Vb(a);Xb(a,1)}
|
||||
function Xb(a,b,c){if(void 0!==b){.8>a.ca/a.ga&&(b=1);a.ea=b;b=a.ab*a.ea;if(a.ga!=b){a.ga=b;b=a.ga.toFixed(2)+"Mhz";var d=a.u.setSpeed;d&&(d.textContent=b);a.R("target speed: "+b)}c&&a.o&&(c=a.o,c.wa&&c.wa.focus())}a.L+=a.V;a.V=0;a.P=sa();a.da=0;Yb(a)}function wb(a,b){var c=a.H.length;a.H.push([-1,b]);return c}function yb(a,b,c){0<=b&&b<a.H.length&&0>a.H[b][0]&&(c=a.Ta*a.ea/1E3*c|0,a.H[b][0]=c+$b(a))}function $b(a,b){var c=a.ha-=a.a;a.a=a.G=0;b&&(a.ha=0);return c}
|
||||
g.uc=function(){if(this.i.W){this.cb>=this.Ta&&Yb(this,!0);this.Fa=0;this.Pa=sa();if(this.da){var a=this.Pa-this.da;a>this.sb&&(this.P+=a,this.P>this.Pa&&(this.P=this.Pa))}try{do{for(var b,c=this.i.Sa?1:this.Ua,d=this.H.length-1;0<=d;d--){var e=this.H[d];0>e[0]||c>e[0]&&(c=e[0])}b=c;try{this.zb(b)}catch(n){if("number"!=typeof n)throw n;}b=$b(this,!0);this.Fa+=b;this.V+=b;a=b;if(this.i.Sa){var f=!1;this.Qa=this.Qa+this.ob()|0;this.ia-=a;0>=this.ia&&(this.ia+=this.ua,f=!0);0<=this.va&&this.va<=Zb(this)&&
|
||||
(this.ua=this.va=-1,Vb(this),D(this),f=!0);f&&this.R(Zb(this)+" cycles: checksum="+ja(this.Qa))}for(var a=b,h=this.H.length-1;0<=h;h--){var l=this.H[h];0>l[0]||(l[0]-=a,0>=l[0]&&(l[0]=-1,l[1]()))}this.Ea-=b;if(0>=this.Ea){this.Ea+=this.Ua;15<=++this.tb&&(this.o&&this.o.ba(),this.tb=0);break}}while(this.i.W)}catch(n){D(this);this.o&&this.o.stop(sa(),Zb(this));b=n.stack||n.message;this.i.error=!0;this.K(b);return}if(this.i.W){b=setTimeout;c=this.ub;this.da=sa();d=this.sb;this.Fa&&(d=Math.round(d*this.Fa/
|
||||
this.Ua));d-=this.da-this.Pa;if(e=this.da-this.P)this.ca=Math.round(this.V/(10*e))/100,864E5<=e&&(this.L=0,Xb(this));if(0>d||this.ca<this.ga)-1E3>d&&(this.P-=d),d=0;this.cb+=this.Fa;this.da+=d;b(c,d)}}};function Wb(a,b){var c;a.i.error?(a.R(a.toString()+" error"),c=!0):c=!1;if(!c)if(a.i.W)a.R(a.toString()+" busy");else{Xb(a);a.i.W=!0;a.i.yb=!0;if(c=a.u.run)c.textContent="Halt";a.o&&(b&&(b=a.o,b.wa&&b.wa.focus()),a.o.start(a.P,Zb(a)));setTimeout(a.ub,0)}}g.zb=function(){return 0};
|
||||
function D(a){if(a.i.W){$b(a);a.L+=a.V;a.V=0;a.i.W=!1;var b=a.u.run;b&&(b.textContent="Run");a.o&&a.o.stop(sa(),Zb(a))}a.i.complete=void 0}function ac(a){this.Ka=+a.model||1170;this.qb=a.addrReset||0;Rb.call(this,a,6666667);this.decode=1120==this.Ka?bc.bind(this):cc.bind(this);dc(this);this.eb=0;this.Y=null;this.i.complete=this.i.Db=!1}w(ac,Rb);g=ac.prototype;g.reset=function(){this.status("model "+this.Ka);this.i.W&&D(this);dc(this);Ub(this);this.i.error=!1;this.parent.reset.call(this)};
|
||||
function dc(a){a.m=65536;a.g=32768;a.h=65535;a.s=32768;a.A=15;a.f=[0,0,0,0,0,0,0,a.qb];a.xa=[0,0,0,0,0,0];a.aa=[0,0,0,0];a.v=0;a.Na=0;a.Hb=[4,2,0,1];a.F=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.U=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.Jb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];a.xb=[0,0,0,0,0,0,0,0];a.wb=0;a.l=0;a.B=a.C=0;a.c=a.b=a.$a=0;a.ja=-1;ec(a)}function ec(a){a.sa=255;a.I=0;a.ib=0;a.w=0;a.qa=0;a.hb=0;a.ra=0;a.Ha=0;a.Ma=0;a.bb=262143;a.Oa=253952;a.l|=2;a.j&&Ab(a)}function Ab(a){a.Ha?(a.M=65536,a.J=a.Gb,a.S=a.rc,a.Ya=a.dd,hb(a.j,a.ra&16?22:18)):(a.M=0,a.J=a.Fb,a.S=a.qc,a.Ya=a.cd,hb(a.j,16))}function fc(a,b,c){a.qb=b;L(a,b);!c&&a.D&&(D(a),a.D.ba())}g.ob=function(){return 0};
|
||||
g.save=function(){var a=new M(this);a.set(0,[]);a.set(1,[this.L,this.ea]);a.set(2,rb(this.j));return a.data()};g.restore=function(a){var b=a[1];this.L=b[1];Xb(this,b[3]);a:{b=this.j;a=a[2];var c;for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.C){for(var f=0,h=Array(b.C),l=0;l<e.length-1;)for(var n=e[l++],q=e[l++];n--;)h[f++]=q;e=h}f=b.b[d];if(!f||!f.restore(e)){m("Unable to restore memory block "+d);b=!1;break a}}b=!0}return b};function N(a){return a.m&65536?1:0}
|
||||
g.oa=function(){return this.s&32768?8:0};function gc(a){var b=a.f[7];a.w&57344||(a.qa=0,a.hb=b);a.f[7]=b+2&65535;return a.S(b)}function hc(a,b){var c=a.f[7];a.f[7]=c+b&65535;return c}function L(a,b){a.f[7]=b&65535}function zb(a,b){return{xc:a,za:b,next:null}}function xb(a,b){if(b!=a.Y){var c=a.Y;if(!c||c.za<=b.za)b.next=c,a.Y=b;else{do{var d=c.next;if(!d||d.za<=b.za){b.next=d;c.next=b;break}c=d}while(c)}}a.l|=2}function Za(a){return a.A=a.A&63728|a.oa()|(a.h&65535?0:4)|(a.g&32768?2:0)|N(a)}
|
||||
function Cb(a,b){a.s=b<<12;a.h=~b&4;a.g=b<<14;a.m=b<<16;if((b^a.A)&2048)for(var c=a.xa.length;0<=--c;){var d=a.f[c];a.f[c]=a.xa[c];a.xa[c]=d}a.v=b>>14&3;c=a.A>>14&3;a.v!=c&&(a.aa[c]=a.f[6],a.f[6]=a.aa[a.v]);a.A=b;a.l|=2}function O(a,b){a.l&128||(a.s=a.h=b,a.g=0)}function P(a,b,c){a.l&128||(a.s=a.h=a.m=b,a.g=c||0)}function ic(a,b,c,d){a.l&128||(a.s=a.h=a.m=b,a.g=(c^b)&(d^b))}function Q(a,b){a.l&128||(a.s=a.h=a.m=b,a.g=a.s^a.m>>1)}function jc(a,b,c,d){a.l&128||(a.s=a.h=a.m=b,a.g=(c^d)&(d^b))}
|
||||
function G(a,b,c){if(!a.eb){var d=!1;0>a.ja?a.ja=Za(a):a.v||(b=4,d=!0);a.w&57344||(a.qa=63222,a.hb=b);a.v=0;var e=a.S(b|a.M),f=a.S(b+2&65535|a.M);Cb(a,f&-12289|a.ja>>2&12288);d&&(a.I|=4,a.f[6]=4);kc(a,a.ja);kc(a,a.f[7]);L(a,e);a.l&=-113;a.ja=-1;if(26!=c)throw b;}}function lc(a){var b=mc(a),c=mc(a)&-1793;a.A&49152&&(c=c&-225|a.A&63712);L(a,b);Cb(a,c);a.l&=-17}
|
||||
function nc(a,b,c){var d,e,f,h=0;d=b>>13;a.ra&a.Hb[a.v]||(d&=7);e=a.F[a.v][d];f=(a.U[a.v][d]<<6)+(b&8191)&a.bb;if(f<a.Oa)f&1&&!(c&1)&&(a.I|=64,G(a,4,10));else if(a.ra&16||253952<=f&&(f|=4186112),4186112>f){if(3932160<=f){f&=262143;var l=f>>13&31;31>l?a.ra&32&&(f=a.Jb[l]+(f&8190)&4194302,3932160<=f&&4186112>f&&console.log("panic(898)")):f|=4186112}f>=a.Oa&&4186112>f&&(a.I|=32,G(a,4,12))}switch(e&7){case 1:h=4096;case 2:e|=128;c&4&&(h=8192);break;case 4:h=4096;case 5:c&4&&(h=4096);case 6:e|=c&4?192:
|
||||
128;break;default:h=32768}32512!==(e&32520)&&(e&8?e&32512&&(b&8128)<(e>>2&8128)&&(h|=16384):(b&8128)>(e>>2&8128)&&(h|=16384));a.F[a.v][d]=e;if(4194170!==f||a.v)a.Ma=a.v,a.Na=d;h&&(h&57344&&(0<=a.ja&&(h|=128),a.w&57344||(a.w=a.w|h|a.Ma<<5|a.Na<<1),G(a,168,16)),a.w&61440||!(4191360>f||4194239<f)||(a.w|=4096,a.w&512&&(a.l|=32)));return f}function oc(a,b,c){b&1&&a.a--;a=a.j;a.b[(b&a.h)>>>a.j].kb(b&a.g,c&255,b)}function mc(a){var b=a.S(a.f[6]|a.M);a.f[6]=a.f[6]+2&65535;return b}
|
||||
function kc(a,b){var c=a.f[6]-2&65535;a.f[6]=c;a.w&57344||(a.qa=a.qa<<8|246);!a.v&&c<=a.sa&&4<c&&(c<=a.sa-32?(a.I|=4,a.f[6]=4,G(a,4,18)):(a.I|=8,a.l|=4));a.Ya(c,b)}
|
||||
function pc(a,b,c,d){var e,f,h=d&8?0:a.M;switch(b){case 0:return G(a,4,20),0;case 1:return 6===c&&!a.v&&d&4&&(a.f[6]<=a.sa||65534<=a.f[6])&&(a.f[6]<=a.sa-32||65534<=a.f[6]?(a.I|=4,a.f[6]=4,G(a,4,22)):(a.I|=8,a.l|=64)),a.a-=3,7===c?a.f[c]:a.f[c]|h;case 2:f=2;e=a.f[c];7!==c&&(e|=h,6>c&&d&1&&(f=1));a.a-=3;break;case 3:f=2;e=a.f[c];7!==c&&(e|=h);e=a.S(e);e|=h;a.a-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.f[c]+f&65535;7!==c&&(e|=h);a.a-=4;break;case 5:f=-2;e=a.f[c]-2&65535;7!==c&&(e|=h);e=a.S(e)|h;a.a-=
|
||||
8;break;case 6:return e=a.S(hc(a,2)),e=e+a.f[c]&65535|h,a.a-=6,e;case 7:return e=a.S(hc(a,2)),e=e+a.f[c]&65535,e=a.S(e|a.M)|h,a.a-=10,e}a.f[c]=a.f[c]+f&65535;!h||a.w&57344||(a.qa=a.qa<<8|f<<3&248|c);6==c&&!a.v&&d&4&&0>=f&&(a.f[6]<=a.sa||65534<=a.f[6])&&(a.f[6]<=a.sa-32?(a.I|=4,a.f[6]=4,G(a,4,24)):(a.I|=8,a.l|=64));return e}g.Ja=function(a,b){this.Ha?(this.eb++,oc(this,nc(this,a,5),b),this.eb--):this.j.Ja(a,b)};g.Fb=function(a,b,c){return pc(this,a,b,c)};
|
||||
g.Gb=function(a,b,c){return nc(this,pc(this,a,b,c),c)};g.qc=function(a){return pb(this.j,a)};g.rc=function(a){return pb(this.j,nc(this,a,2))};g.cd=function(a,b){qb(this.j,a,b&65535)};g.dd=function(a,b){qb(this.j,nc(this,a,4),b)};function qc(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?(d=pc(a,b,d,2),c&65536||61440!==(a.A&61440)&&(d&=65535),a.v=a.A>>12&3,c=a.S(d|c&a.M),a.v=a.A>>14&3):c=6!=d||(a.A>>2&12288)===(a.A&12288)?a.f[d]:a.aa[a.A>>12&3];return c}
|
||||
function rc(a,b,c,d){a.w&57344||(a.qa=22);var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=pc(a,b,e,4),c&65536||(e&=65535),a.v=a.A>>12&3,e=nc(a,e|c&65536,4),a.v=a.A>>14&3,qb(a.j,e,d)):6!=e||(a.A>>2&12288)===(a.A&12288)?a.f[e]=d:a.aa[a.A>>12&3]=d}function sc(a,b){b>>=6;var c=a.C=b&7;(b=a.B=(b&56)>>3)?(c=a.J(b,c,3),a=ob(a.j,c)):a=a.f[c]&255;return a}function R(a,b){b>>=6;var c=a.C=b&7;return(b=a.B=(b&56)>>3)?pb(a.j,a.J(b,c,2)):a.f[c]}function tc(a,b){var c=a.b=b&7;b=a.c=(b&56)>>3;return pc(a,b,c,8)}
|
||||
function uc(a,b){var c=a.b=b&7;(b=a.c=(b&56)>>3)?(c=a.J(b,c,3),a=ob(a.j,c)):a=a.f[c]&255;return a}function vc(a,b){var c=a.b=b&7;return(b=a.c=(b&56)>>3)?pb(a.j,a.J(b,c,2)):a.f[c]}function S(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.$a=a.J(b,e,7),oc(a,e,d.call(a,c,ob(a.j,e)))):a.f[e]=a.f[e]&65280|d.call(a,c,a.f[e])}function T(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.J(b,e,6),qb(a.j,e,d.call(a,c,pb(a.j,e)))):a.f[e]=d.call(a,c,a.f[e])}
|
||||
function wc(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?oc(a,a.J(b,e,5),c):a.f[e]=c?d&1?c<<24>>24&65535:a.f[e]&-256|c&255:a.f[e]&-256;return c}function xc(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?qb(a.j,a.J(b,d,4),c):a.f[d]=c&65535;return c}function U(a,b,c){c&&(L(a,a.f[7]+(b<<24>>23)),a.a-=2);a.a-=3}
|
||||
g.zb=function(a){this.i.complete=!0;this.i.Db=!1;this.i.yb=!1;this.ha=this.a=a;do{if(this.l&&(this.l&112&&(this.l&32?G(this,168,28):this.l&64?G(this,4,30):this.l&16&&G(this,12,32),this.l&=-113),this.l&7))if(this.l&2){this.l&=-3;var b=160,c=(this.ib&224)>>5;if(a=this.Y&&this.Y.za>c?this.Y:null)b=a.xc,c=a.za;c>(this.A&224)>>5?(this.l&4&&(hc(this,2),this.l&=-5),G(this,b,26),c=!0):c=!1;if(c&&a)if(c=this.Y,c==a)this.Y=a.next;else for(;c;){b=c.next;if(b==a){c.next=b.next;break}c=b}}else this.l&1&&this.l++;
|
||||
this.l=this.l&7|this.A&16;this.decode(gc(this))}while(0<this.a);return this.i.complete?this.ha-this.a:void 0===this.i.complete?0:-1};r(function(){for(var a=B(document,"pdp11","cpu"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new ac(d);A(d,c)}});function yc(a,b){var c=b+a;ic(this,c,a,b);return c&65535}function zc(a,b){var c=b+a;ic(this,c<<8,a<<8,b<<8);return c&255}function Ac(a,b){a=b<<1;Q(this,a);return a&65535}function Bc(a,b){a=b<<1;Q(this,a<<8);return a&255}
|
||||
function Cc(a,b){a=b&32768|b>>1|b<<16;Q(this,a);return a&65535}function Dc(a,b){a=b&2048|b>>1|b<<8;Q(this,a<<8);return a&255}function Ec(a,b){a=b&~a;O(this,a);return a}function Fc(a,b){a=b&~a;O(this,a<<8);return a}function Gc(a,b){a|=b;O(this,a);return a}function Hc(a,b){a|=b;O(this,a<<8);return a}function Ic(a,b){a=~b|65536;P(this,a);return a&65535}function Jc(a,b){a=~b|256;P(this,a<<8);return a&255}function Kc(a,b){a=b-a;this.l&128||(this.s=this.h=a,this.g=b&(b^a));return a&65535}
|
||||
function Lc(a,b){a=b-a;var c=a<<8;b<<=8;this.l&128||(this.s=this.h=c,this.g=b&(b^c));return a&255}function Mc(a,b){a=b+a;this.l&128||(this.s=this.h=a,this.g=a&(b^a));return a&65535}function Nc(a,b){a=b+a;var c=a<<8;this.l&128||(this.s=this.h=c,this.g=c&(b<<8^c));return a&255}function Oc(a,b){a=-b;P(this,a,a&b&32768);return a&65535}function Pc(a,b){a=-b;P(this,a<<8,(a&b&128)<<8);return a&255}function Qc(a,b){a=b<<1|this.m>>16&1;Q(this,a);return a&65535}
|
||||
function Rc(a,b){a=b<<1|this.m>>16&1;Q(this,a<<8);return a&255}function Sc(a,b){a=(this.m&65536|b)>>1|b<<16;Q(this,a);return a&65535}function Tc(a,b){a=((this.m&65536)>>8|b)>>1|b<<8;Q(this,a<<8);return a&255}function Uc(a,b){var c=b-a;jc(this,c,a,b);return c&65535}function Vc(a,b){var c=b-a;jc(this,c<<8,a<<8,b<<8);return c&255}function Wc(a,b){this.l&128||(this.s=this.h=b&65280,this.g=this.m=0);return(b<<8|b>>8)&65535}function Xc(a,b){a^=b;O(this,a);return a&65535}
|
||||
function Yc(a){T(this,a,R(this,a),yc);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.B?5:3)+(7==this.b?2:0)}function Zc(a){var b=vc(this,a);a=a>>6&7;var c=this.f[a];c&32768&&(c|=4294901760);this.m=this.g=0;b&=63;if(b&32)b=64-b,16<b&&(b=16),this.m=c<<17-b,c>>=b;else if(b)if(16<b)this.g=c,c=0;else{this.m=c<<=b;var d=c>>15&65535;d&&65535!==d&&(this.g=32768)}this.f[a]=c&65535;this.s=this.h=c;this.a-=(this.c?6:7)+b}
|
||||
function $c(a){var b=vc(this,a);a=a>>6&7;var c=this.f[a]<<16|this.f[a|1];this.m=this.g=0;b&=63;if(b&32){b=64-b;32<b&&(b=32);var d=c>>b-1;this.m=d<<16;d>>=1;c&2147483648&&(d|=4294967295<<32-b)}else b?(d=c<<b-1,this.m=d>>15,d<<=1,32<b&&(b=32),(c>>=32-b)&&4294967295!==(c|4294967295<<b&4294967295)&&(this.g=32768)):d=c;this.f[a]=d>>16&65535;this.f[a|1]=d&65535;this.s=d>>16;this.h=d>>16|d;this.a-=(this.c?6:7)+b}function ad(a){U(this,a,!N(this))}function bd(a){U(this,a,N(this))}
|
||||
function cd(a){T(this,a,R(this,a),Ec);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.B?5:3)+(7==this.b?2:0)}function dd(a){S(this,a,sc(this,a),Fc);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.B?5:3)+(7==this.b?2:0)}function ed(a){T(this,a,R(this,a),Gc);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.B?5:3)+(7==this.b?2:0)}function fd(a){S(this,a,sc(this,a),Hc);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.B?5:3)+(7==this.b?2:0)}
|
||||
function gd(a){O(this,R(this,a)&vc(this,a));this.a-=this.c?4+(this.C&&6<=this.b?1:0):(this.B?4:3)+(7==this.b?2:0)}function hd(a){O(this,(sc(this,a)&uc(this,a))<<8);this.a-=this.c?4+(this.C&&6<=this.b?1:0):(this.B?4:3)+(7==this.b?2:0)}function id(a){U(this,a,this.h&65535?0:4)}function jd(a){U(this,a,!this.oa()==!(this.g&32768))}function kd(a){U(this,a,!!(this.h&65535)&&!this.oa()==!(this.g&32768))}function ld(a){U(this,a,!N(this)&&!!(this.h&65535))}
|
||||
function md(a){U(this,a,(this.h&65535?0:4)||!this.oa()!=!(this.g&32768))}function nd(a){U(this,a,N(this)||(this.h&65535?0:4))}function od(a){U(this,a,!this.oa()!=!(this.g&32768))}function pd(a){U(this,a,this.oa())}function qd(a){U(this,a,!!(this.h&65535))}function rd(a){U(this,a,!this.oa())}function sd(){G(this,12,1);this.a-=5}function td(a){U(this,a,!0)}function ud(a){U(this,a,!(this.g&32768))}function vd(a){U(this,a,this.g&32768?2:0)}
|
||||
function V(a){a&1&&(this.m=0);a&2&&(this.g=0);a&4&&(this.h=1);a&8&&(this.s=0);this.a-=5}function wd(a){var b=R(this,a);a=vc(this,a);jc(this,b-a,a,b);this.a-=this.c?4+(this.C&&6<=this.b?1:0):(this.B?4:3)+(7==this.b?2:0)}function xd(a){var b=sc(this,a)<<8;a=uc(this,a)<<8;jc(this,b-a,a,b);this.a-=this.c?4+(this.C&&6<=this.b?1:0):(this.B?4:3)+(7==this.b?2:0)}
|
||||
function yd(a){var b=vc(this,a);if(b){a=a>>6&7;var c=this.f[a]<<16|this.f[a|1];this.m=this.g=0;b&32768&&(b|=-65536);var d=~~(c/b);-32768<=d&&32767>=d?(this.f[a]=d&65535,this.f[a|1]=c-d*b&65535,this.h=d>>16|d,this.s=d>>16):(this.g=32768,this.h=d>>15|d,this.s=c>>16,-1===b&&65534===this.f[a]&&(this.f[a]=this.f[a|1]=1));this.a-=53}else this.h=this.s=0,this.g=32768,this.m=65536,this.a-=7}function zd(){G(this,24,2);this.a-=25}
|
||||
function Ad(){this.A&49152?(this.I|=128,G(this,4,3)):this.D?this.D.c():D(this);this.a-=7}function Bd(){G(this,16,4);this.a-=25}var Cd=[0,7,7,10,7,11,9,13];function W(a){this.G=this.a;L(this,tc(this,a));this.a=this.G-Cd[this.c]}var Dd=[0,14,14,17,14,18,16,20];function Ed(a){this.G=this.a;var b=tc(this,a);a=a>>6&7;kc(this,this.f[a]);this.f[a]=this.f[7];L(this,b);this.a=this.G-Dd[this.c]}var Fd=[3,9,9,13,10,14,12,16,4,9,9,13,10,14,13,17];
|
||||
function Gd(a){var b=R(this,a);this.G=this.a;O(this,xc(this,a,b));this.a=this.G-Fd[(this.B?8:0)+this.c]+(7!=this.b||this.c?0:2)}function Hd(a){var b=sc(this,a);O(this,wc(this,a,b,1)<<8);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.B?5:3)+(7==this.b?2:0)}var Id=[7,13,13,17,14,18,17,21];
|
||||
function Jd(a){var b=vc(this,a);a=a>>6&7;b&32768&&(b|=-65536);var c=this.f[a];c&32768&&(c|=-65536);b=~~(b*c);this.f[a]=b>>16&65535;this.f[a|1]=b&65535;this.l&128||(this.s=b>>16,this.h=this.s|b,this.g=0,this.m=-32768>b||32767<b?65536:0);this.a-=23}function Kd(){this.a-=5}function Ld(){this.A&49152||(ec(this),this.j.reset());this.a-=667}function Md(){lc(this);this.l|=this.A&16;this.a-=13}
|
||||
function Nd(a){if(a&8)G(this,8,6);else{var b=mc(this);a&=7;7==a?L(this,b):(L(this,this.f[a]),this.f[a]=b);this.a-=9}}function X(a){a&1&&(this.m=65536);a&2&&(this.g=32768);a&4&&(this.h=0);a&8&&(this.s=32768);this.a-=5}function Od(a){var b=(a&448)>>6;if(this.f[b]=this.f[b]-1&65535)L(this,this.f[7]-((a&63)<<1)),this.a+=1;this.a-=6}function Pd(a){T(this,a,R(this,a),Uc);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.B?5:3)+(7==this.b?2:0)}
|
||||
function Qd(a){T(this,a,0,Wc);this.a-=this.c?9:3+(7==this.b?2:0)}function Rd(){G(this,28,5);this.a-=5}function Sd(){this.l&4||this.o.ba();this.l|=4;hc(this,-2);this.a-=3}function Td(a){T(this,a,R(this,a),Xc);this.a-=this.c?9:3+(7==this.b?2:0)}function Y(){G(this,8,6)}function bc(a){Ud[a>>12].call(this,a)}function Vd(a){Wd[a>>6&3].call(this,a)}function Xd(a){Yd[a>>6&3].call(this,a)}function Zd(a){$d[a>>6&3].call(this,a)}function ae(a){be[a&15].call(this,a)}function ce(a){de[a&15].call(this,a)}
|
||||
g.Ac=function(a,b){this.a.xb[b-65504>>1]=a};g.vb=function(a){return 65520==a?61183:0};g.Bb=function(){};g.lc=function(){return 1};g.Yc=function(){};g.Lb=function(){return this.a.I};g.zc=function(){this.a.I=0};g.Sb=function(){return this.a.wb};g.Gc=function(a,b){b&1||(a&=255);this.a.wb=a};g.Xb=function(a){return a?this.a.ib:0};g.Jc=function(a){var b=this.a;if(a&=65024){var c=a>>9;do a+=34;while(c>>=1)}b.ib=a;b.m|=2};g.kc=function(a){return a?this.a.sa&65280:0};g.Xc=function(a){this.a.sa=a|255};
|
||||
g.$b=function(){return Za(this.a)};g.Mc=function(a){Bb(this.a,a&-1809|Za(this.a)&1808);this.a.m|=128};g.Ab=function(){};
|
||||
var K={},J=(K[62592]=[null,null,I.prototype.jc,I.prototype.Wc,"SISDR",1145],K[62608]=[null,null,I.prototype.hc,I.prototype.Uc,"SDSDR",1145],K[62624]=[null,null,I.prototype.ic,I.prototype.Vc,"SISAR",1145],K[62640]=[null,null,I.prototype.gc,I.prototype.Tc,"SDSAR",1145],K[62656]=[null,null,I.prototype.Qb,I.prototype.Ec,"KISDR",1145],K[62672]=[null,null,I.prototype.Ob,I.prototype.Cc,"KDSDR",1145],K[62688]=[null,null,I.prototype.Pb,I.prototype.Dc,"KISAR",1145],K[62704]=[null,null,I.prototype.Nb,I.prototype.Bc,
|
||||
"KDSAR",1145],K[62798]=[null,null,I.prototype.Wb,I.prototype.Ic,"MMR3",1145],K[65382]=[null,null,I.prototype.Rb,I.prototype.Fc,"LKS"],K[65400]=[null,null,I.prototype.Kb,I.prototype.yc,"CNSL"],K[65402]=[null,null,I.prototype.Tb,I.prototype.Hc,"MMR0",1145],K[65404]=[null,null,I.prototype.Ub,I.prototype.Ab,"MMR1",1145],K[65406]=[null,null,I.prototype.Vb,I.prototype.Ab,"MMR2",1145],K[65408]=[null,null,I.prototype.pc,I.prototype.bd,"UISDR",1145],K[65424]=[null,null,I.prototype.nc,I.prototype.$c,"UDSDR",
|
||||
1145],K[65440]=[null,null,I.prototype.oc,I.prototype.ad,"UISAR",1145],K[65456]=[null,null,I.prototype.mc,I.prototype.Zc,"UDSAR",1145],K[65472]=[null,null,I.prototype.Aa,I.prototype.Ca,"R0SET0"],K[65473]=[null,null,I.prototype.Aa,I.prototype.Ca,"R1SET0"],K[65474]=[null,null,I.prototype.Aa,I.prototype.Ca,"R2SET0"],K[65475]=[null,null,I.prototype.Aa,I.prototype.Ca,"R3SET0"],K[65476]=[null,null,I.prototype.Aa,I.prototype.Ca,"R4SET0"],K[65477]=[null,null,I.prototype.Aa,I.prototype.Ca,"R5SET0"],K[65478]=
|
||||
[null,null,I.prototype.ac,I.prototype.Nc,"R6KERNEL"],K[65479]=[null,null,I.prototype.dc,I.prototype.Qc,"R7KERNEL"],K[65480]=[null,null,I.prototype.Ba,I.prototype.Da,"R0SET1",1145],K[65481]=[null,null,I.prototype.Ba,I.prototype.Da,"R1SET1",1145],K[65482]=[null,null,I.prototype.Ba,I.prototype.Da,"R2SET1",1145],K[65483]=[null,null,I.prototype.Ba,I.prototype.Da,"R3SET1",1145],K[65484]=[null,null,I.prototype.Ba,I.prototype.Da,"R4SET1",1145],K[65485]=[null,null,I.prototype.Ba,I.prototype.Da,"R5SET1",1145],
|
||||
K[65486]=[null,null,I.prototype.bc,I.prototype.Oc,"R6SUPER",1145],K[65487]=[null,null,I.prototype.cc,I.prototype.Pc,"R6USER",1145],K[65504]=[null,null,I.prototype.Mb,I.prototype.Ac,"CTRL",1170],K[65520]=[null,null,I.prototype.vb,I.prototype.Bb,"LSIZE",1170],K[65522]=[null,null,I.prototype.vb,I.prototype.Bb,"HSIZE",1170],K[65524]=[null,null,I.prototype.lc,I.prototype.Yc,"SYSID",1170],K[65526]=[null,null,I.prototype.Lb,I.prototype.zc,"CPUERR",1170],K[65528]=[null,null,I.prototype.Sb,I.prototype.Gc,
|
||||
"MB",1170],K[65530]=[null,null,I.prototype.Xb,I.prototype.Jc,"PIR"],K[65532]=[null,null,I.prototype.kc,I.prototype.Xc,"SL"],K[65534]=[null,null,I.prototype.$b,I.prototype.Mc,"PSW"],K);J[62594]=J[62592];J[62596]=J[62592];J[62598]=J[62592];J[62600]=J[62592];J[62602]=J[62592];J[62604]=J[62592];J[62606]=J[62592];J[62610]=J[62608];J[62612]=J[62608];J[62614]=J[62608];J[62616]=J[62608];J[62618]=J[62608];J[62620]=J[62608];J[62622]=J[62608];J[62626]=J[62624];J[62628]=J[62624];J[62630]=J[62624];J[62632]=J[62624];
|
||||
J[62634]=J[62624];J[62636]=J[62624];J[62638]=J[62624];J[62642]=J[62640];J[62644]=J[62640];J[62646]=J[62640];J[62648]=J[62640];J[62650]=J[62640];J[62652]=J[62640];J[62654]=J[62640];J[62658]=J[62656];J[62660]=J[62656];J[62662]=J[62656];J[62664]=J[62656];J[62666]=J[62656];J[62668]=J[62656];J[62670]=J[62656];J[62674]=J[62672];J[62676]=J[62672];J[62678]=J[62672];J[62680]=J[62672];J[62682]=J[62672];J[62684]=J[62672];J[62686]=J[62672];J[62690]=J[62688];J[62692]=J[62688];J[62694]=J[62688];J[62696]=J[62688];
|
||||
J[62698]=J[62688];J[62700]=J[62688];J[62702]=J[62688];J[62706]=J[62704];J[62708]=J[62704];J[62710]=J[62704];J[62712]=J[62704];J[62714]=J[62704];J[62716]=J[62704];J[62718]=J[62704];J[65410]=J[65408];J[65412]=J[65408];J[65414]=J[65408];J[65416]=J[65408];J[65418]=J[65408];J[65420]=J[65408];J[65422]=J[65408];J[65426]=J[65424];J[65428]=J[65424];J[65430]=J[65424];J[65432]=J[65424];J[65434]=J[65424];J[65436]=J[65424];J[65438]=J[65424];J[65442]=J[65440];J[65444]=J[65440];J[65446]=J[65440];J[65448]=J[65440];
|
||||
J[65450]=J[65440];J[65452]=J[65440];J[65454]=J[65440];J[65458]=J[65456];J[65460]=J[65456];J[65462]=J[65456];J[65464]=J[65456];J[65466]=J[65456];J[65468]=J[65456];J[65470]=J[65456];J[65506]=J[65504];J[65508]=J[65504];J[65510]=J[65504];J[65512]=J[65504];J[65514]=J[65504];J[65516]=J[65504];J[65518]=J[65504];r(function(){for(var a=B(document,"pdp11","device"),b=0;b<a.length;b++){var c,d=a[b];c=y(d);switch(c.type){case "default":c=new I(c);A(c,d);break;case "pc11":c=new L(c),A(c,d)}}});var Cb;
|
||||
if(Ua){var Db=new ArrayBuffer(2);(new DataView(Db)).setUint16(0,256,!0);Cb=256===(new Uint16Array(Db))[0]}else Cb=!1;var Eb=Cb;
|
||||
function F(a,b,c,d,e,f){this.j=a;this.id=Fb+=2;this.a=null;this.ya=b;this.Xa=c;this.size=d||0;this.type=e||Gb;this.g=e==Hb;this.controller=null;eb(this);this.na=this.Eb=!1;if(this.size)if(f)this.controller=f,a=[null,0],this.a=a[0],Ib(this,f.Cb);else if(Ua)this.c=new ArrayBuffer(this.size),this.u=new DataView(this.c,0,this.size),this.b=new Uint8Array(this.c,0,this.size),this.s=new Uint16Array(this.c,0,this.size>>1),this.a=new Int32Array(this.c,0,this.size>>2),Ib(this,Eb?Jb:Kb);else{a=this.a=Array(this.size>>
|
||||
2);for(f=0;f<a.length;f++)a[f]=0;Ib(this,Lb)}else Ib(this)}var Gb=0,Hb=2,lb=4,nb=["NONE","RAM","ROM","VID","H/W"],Fb=0;
|
||||
F.prototype={constructor:F,parent:null,save:function(){var a,b;if(this.controller)a=null;else if(Ua)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.u.getInt32(b<<2,!0);else a=this.a;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(Ua)for(b=0;b<a.length;b++)this.u.setInt32(b<<2,a[b],!0);else this.a=a;return this.na=!0}return!1},v:function(a,b){H(this.j,b);return 255},h:function(a,b,c){H(this.j,c)},w:function(a,b){return this.fb(a++,b++)|this.fb(a,
|
||||
b)<<8},B:function(a,b,c){this.kb(a++,b&255,c++);this.kb(a,b>>8,c)},L:function(a){return this.a[a>>2]>>>((a&3)<<3)&255},ca:function(a,b){a&1&&H(this.j,b);b=a>>2;a=(a&3)<<3;var c=this.a[b]>>a;return 24>a?c&65535:c&255|(this.a[b+1]&255)<<8},ha:function(a,b){var c=a>>2;a=(a&3)<<3;this.a[c]=this.a[c]&~(255<<a)|b<<a;this.na=!0},va:function(a,b,c){a&1&&H(this.j,c);c=a>>2;a=(a&3)<<3;24>a?this.a[c]=this.a[c]&~(65535<<a)|b<<a:(this.a[c]=this.a[c]&16777215|b<<24,c++,this.a[c]=this.a[c]&-256|b>>8);this.na=!0},
|
||||
G:function(a,b){return this.H(a,b)},P:function(a,b){return this.V(a,b)},ea:function(a,b,c){this.g?this.h(a,b,c):this.lb(a,b,c)},ja:function(a,b,c){this.g?this.h(a,b,c):this.ta(a,b,c)},C:function(a){return this.b[a]},J:function(a){return this.b[a]},M:function(a,b){a&1&&H(this.j,b);return this.u.getUint16(a,!0)},Y:function(a,b){a&1&&H(this.j,b);return this.s[a>>1]},da:function(a,b){this.b[a]=b;this.na=!0},ga:function(a,b){this.b[a]=b;this.na=!0},ia:function(a,b,c){a&1&&H(this.j,c);this.u.setUint16(a,
|
||||
b,!0);this.na=!0},ua:function(a,b,c){a&1&&H(this.j,c);this.s[a>>1]=b;this.na=!0}};function eb(a,b,c){a.D=b;a.o=a.l=0;c&&((a.o=c.o)&&Mb(a,Nb,!1),(a.l=c.l)&&Ob(a,Nb,!1))}function Ob(a,b,c){c&&a.l||(a.kb=!a.g&&b[1]||a.h,a.Ya=!a.g&&b[3]||a.B);if(c||void 0===c)a.lb=b[1]||a.h,a.ta=b[3]||a.B}function Mb(a,b,c){c&&a.o||(a.fb=b[0]||a.v,a.S=b[2]||a.w);if(c||void 0===c)a.H=b[0]||a.v,a.V=b[2]||a.w}function Ib(a,b){b||(b=Pb);Mb(a,b,void 0);Ob(a,b,void 0)}
|
||||
var Pb=[],Lb=[F.prototype.L,F.prototype.ha,F.prototype.ca,F.prototype.va],Nb=[F.prototype.G,F.prototype.ea,F.prototype.P,F.prototype.ja];if(Ua)var Kb=[F.prototype.C,F.prototype.da,F.prototype.M,F.prototype.ia],Jb=[F.prototype.J,F.prototype.ga,F.prototype.Y,F.prototype.ua];
|
||||
function Qb(a,b){u.call(this,"CPU",a,Qb);var c=a.multiplier||1;this.Ta=a.cycles||b;this.ea=c;this.ab=Math.round(this.Ta/1E4)/100;this.ga=this.ab*this.ea;this.i.W=!1;this.i.yb=!1;this.i.Ga=a.autoStart;this.i.Sa=!1;this.Qa=this.ia=0;this.Ra=a.csStart;this.ua=a.csInterval;this.va=a.csStop;this.H=[];this.ub=this.uc.bind(this);C(this)}w(Qb);var Rb=["power","reset"];g=Qb.prototype;
|
||||
g.fa=function(a,b,c,d){this.o=a;this.j=b;this.D=d;for(b=0;b<Rb.length;b++)(c=this.u[Rb[b]])&&this.o.X(null,Rb[b],c);a=Sb(a,"autoStart");null!=a&&(this.i.Ga="true"==a?!0:"false"==a?!1:!!a);C(this)};g.reset=function(){};g.save=function(){return null};g.restore=function(){return!1};g.$=function(a,b){if(!b){if(a&&this.restore){Tb(this);if(!this.restore(a))return!1;Ub(this)}else this.reset();this.R("No debugger detected")}this.o.ba();return!0};g.Z=function(a){return a?this.save():!0};
|
||||
g.Ga=function(){return this.i.Ga||void 0===this.u.run?(Vb(this,!0),!0):!1};g.ob=function(){return 0};function Ub(a){void 0===a.Ra&&(a.Ra=0);void 0===a.ua&&(a.ua=-1);void 0===a.va&&(a.va=-1);a.i.Sa=0<=a.Ra&&0<a.ua;a.i.Sa&&(a.Qa=0,a.ia=a.Ra-a.L)}
|
||||
g.X=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.u[b]=c,!0;case "run":return this.u[b]=c,c.onclick=function(){var a;if(a=d.o)if(a=d.o,a.i.O)a=!0;else{var b=null,c,l=x(a.id);for(c=0;c<l.length&&(b=l[c],b===a||b.i.ready);c++);if(c==l.length)for(c=0;c<l.length&&(b=l[c],b===a||b.i.O);c++);c==l.length&&(b=a);m("The "+b.type+" component ("+b.id+") is not "+(b.i.ready?"powered yet":"ready yet"+(b.Va?" (waiting for notification)":""))+".");a=!1}a&&(d.i.W?D(d):Vb(d))},!0;case "speed":return this.u[b]=
|
||||
c,!0;case "setSpeed":return this.u[b]=c,c.onclick=function(){Wb(d,d.ea<<1,!0)},c.textContent=this.ga.toFixed(2)+"Mhz",!0}return!1};g.ba=function(){var a=this.u.speed;a&&(a.textContent=this.i.W&&this.ca?this.ca.toFixed(2)+"Mhz":"Stopped")};function Xb(a,b){var c=1;b&&1<a.ea&&a.ca&&(c=a.ca/a.ab);a.sb=Math.round(1E3/30);a.Ua=Math.floor(a.Ta/30*c);b||(a.Ea=a.Ua);a.cb=0}function Yb(a){return a.L+a.V+a.ha-a.a}function Tb(a){a.ca=0;a.tb=0;a.L=a.V=a.ha=a.a=a.G=0;Ub(a);Wb(a,1)}
|
||||
function Wb(a,b,c){if(void 0!==b){.8>a.ca/a.ga&&(b=1);a.ea=b;b=a.ab*a.ea;if(a.ga!=b){a.ga=b;b=a.ga.toFixed(2)+"Mhz";var d=a.u.setSpeed;d&&(d.textContent=b);a.R("target speed: "+b)}c&&a.o&&(c=a.o,c.wa&&c.wa.focus())}a.L+=a.V;a.V=0;a.P=sa();a.da=0;Xb(a)}function vb(a,b){var c=a.H.length;a.H.push([-1,b]);return c}function xb(a,b,c){0<=b&&b<a.H.length&&0>a.H[b][0]&&(c=a.Ta*a.ea/1E3*c|0,a.H[b][0]=c+Zb(a))}function Zb(a,b){var c=a.ha-=a.a;a.a=a.G=0;b&&(a.ha=0);return c}
|
||||
g.uc=function(){if(this.i.W){this.cb>=this.Ta&&Xb(this,!0);this.Fa=0;this.Pa=sa();if(this.da){var a=this.Pa-this.da;a>this.sb&&(this.P+=a,this.P>this.Pa&&(this.P=this.Pa))}try{do{for(var b,c=this.i.Sa?1:this.Ua,d=this.H.length-1;0<=d;d--){var e=this.H[d];0>e[0]||c>e[0]&&(c=e[0])}b=c;try{this.zb(b)}catch(n){if("number"!=typeof n)throw n;}b=Zb(this,!0);this.Fa+=b;this.V+=b;a=b;if(this.i.Sa){var f=!1;this.Qa=this.Qa+this.ob()|0;this.ia-=a;0>=this.ia&&(this.ia+=this.ua,f=!0);0<=this.va&&this.va<=Yb(this)&&
|
||||
(this.ua=this.va=-1,Ub(this),D(this),f=!0);f&&this.R(Yb(this)+" cycles: checksum="+ja(this.Qa))}for(var a=b,h=this.H.length-1;0<=h;h--){var l=this.H[h];0>l[0]||(l[0]-=a,0>=l[0]&&(l[0]=-1,l[1]()))}this.Ea-=b;if(0>=this.Ea){this.Ea+=this.Ua;15<=++this.tb&&(this.o&&this.o.ba(),this.tb=0);break}}while(this.i.W)}catch(n){D(this);this.o&&this.o.stop(sa(),Yb(this));b=n.stack||n.message;this.i.error=!0;this.K(b);return}if(this.i.W){b=setTimeout;c=this.ub;this.da=sa();d=this.sb;this.Fa&&(d=Math.round(d*this.Fa/
|
||||
this.Ua));d-=this.da-this.Pa;if(e=this.da-this.P)this.ca=Math.round(this.V/(10*e))/100,864E5<=e&&(this.L=0,Wb(this));if(0>d||this.ca<this.ga)-1E3>d&&(this.P-=d),d=0;this.cb+=this.Fa;this.da+=d;b(c,d)}}};function Vb(a,b){var c;a.i.error?(a.R(a.toString()+" error"),c=!0):c=!1;if(!c)if(a.i.W)a.R(a.toString()+" busy");else{Wb(a);a.i.W=!0;a.i.yb=!0;if(c=a.u.run)c.textContent="Halt";a.o&&(b&&(b=a.o,b.wa&&b.wa.focus()),a.o.start(a.P,Yb(a)));setTimeout(a.ub,0)}}g.zb=function(){return 0};
|
||||
function D(a){if(a.i.W){Zb(a);a.L+=a.V;a.V=0;a.i.W=!1;var b=a.u.run;b&&(b.textContent="Run");a.o&&a.o.stop(sa(),Yb(a))}a.i.complete=void 0}function $b(a){this.Ka=+a.model||1170;this.qb=a.addrReset||0;Qb.call(this,a,6666667);this.decode=1120==this.Ka?ac.bind(this):bc.bind(this);cc(this);this.eb=0;this.Y=null;this.i.complete=this.i.Db=!1}w($b,Qb);g=$b.prototype;g.reset=function(){this.status("model "+this.Ka);this.i.W&&D(this);cc(this);Tb(this);this.i.error=!1;this.parent.reset.call(this)};
|
||||
function cc(a){a.l=65536;a.g=32768;a.h=65535;a.s=32768;a.A=15;a.f=[0,0,0,0,0,0,0,a.qb];a.xa=[0,0,0,0,0,0];a.aa=[0,0,0,0];a.v=0;a.Na=0;a.Hb=[4,2,0,1];a.F=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.U=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.Jb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];a.xb=[0,0,0,0,0,0,0,0];a.wb=0;a.m=0;a.B=a.C=0;a.c=a.b=a.$a=0;a.ja=-1;dc(a)}function dc(a){a.sa=255;a.I=0;a.ib=0;a.w=0;a.qa=0;a.hb=0;a.ra=0;a.Ha=0;a.Ma=0;a.bb=262143;a.Oa=253952;a.m|=2;a.j&&zb(a)}function zb(a){a.Ha?(a.M=65536,a.J=a.Gb,a.S=a.rc,a.Ya=a.dd,hb(a.j,a.ra&16?22:18)):(a.M=0,a.J=a.Fb,a.S=a.qc,a.Ya=a.cd,hb(a.j,16))}function ec(a,b,c){a.qb=b;M(a,b);!c&&a.D&&(D(a),a.D.ba())}g.ob=function(){return 0};
|
||||
g.save=function(){var a=new N(this);a.set(0,[]);a.set(1,[this.L,this.ea]);a.set(2,rb(this.j));return a.data()};g.restore=function(a){var b=a[1];this.L=b[1];Wb(this,b[3]);a:{b=this.j;a=a[2];var c;for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.C){for(var f=0,h=Array(b.C),l=0;l<e.length-1;)for(var n=e[l++],q=e[l++];n--;)h[f++]=q;e=h}f=b.b[d];if(!f||!f.restore(e)){m("Unable to restore memory block "+d);b=!1;break a}}b=!0}return b};function O(a){return a.l&65536?1:0}
|
||||
g.oa=function(){return this.s&32768?8:0};function fc(a){var b=a.f[7];a.w&57344||(a.qa=0,a.hb=b);a.f[7]=b+2&65535;return a.S(b)}function gc(a,b){var c=a.f[7];a.f[7]=c+b&65535;return c}function M(a,b){a.f[7]=b&65535}function yb(a,b){return{xc:a,za:b,next:null}}function wb(a,b){if(b!=a.Y){var c=a.Y;if(!c||c.za<=b.za)b.next=c,a.Y=b;else{do{var d=c.next;if(!d||d.za<=b.za){b.next=d;c.next=b;break}c=d}while(c)}}a.m|=2}function Za(a){return a.A=a.A&63728|a.oa()|(a.h&65535?0:4)|(a.g&32768?2:0)|O(a)}
|
||||
function Bb(a,b){a.s=b<<12;a.h=~b&4;a.g=b<<14;a.l=b<<16;if((b^a.A)&2048)for(var c=a.xa.length;0<=--c;){var d=a.f[c];a.f[c]=a.xa[c];a.xa[c]=d}a.v=b>>14&3;c=a.A>>14&3;a.v!=c&&(a.aa[c]=a.f[6],a.f[6]=a.aa[a.v]);a.A=b;a.m|=2}function P(a,b){a.m&128||(a.s=a.h=b,a.g=0)}function Q(a,b,c){a.m&128||(a.s=a.h=a.l=b,a.g=c||0)}function hc(a,b,c,d){a.m&128||(a.s=a.h=a.l=b,a.g=(c^b)&(d^b))}function R(a,b){a.m&128||(a.s=a.h=a.l=b,a.g=a.s^a.l>>1)}function ic(a,b,c,d){a.m&128||(a.s=a.h=a.l=b,a.g=(c^d)&(d^b))}
|
||||
function G(a,b,c){if(!a.eb){var d=!1;0>a.ja?a.ja=Za(a):a.v||(b=4,d=!0);a.w&57344||(a.qa=63222,a.hb=b);a.v=0;var e=a.S(b|a.M),f=a.S(b+2&65535|a.M);Bb(a,f&-12289|a.ja>>2&12288);d&&(a.I|=4,a.f[6]=4);jc(a,a.ja);jc(a,a.f[7]);M(a,e);a.m&=-113;a.ja=-1;if(26!=c)throw b;}}function kc(a){var b=lc(a),c=lc(a)&-1793;a.A&49152&&(c=c&-225|a.A&63712);M(a,b);Bb(a,c);a.m&=-17}
|
||||
function mc(a,b,c){var d,e,f,h=0;d=b>>13;a.ra&a.Hb[a.v]||(d&=7);e=a.F[a.v][d];f=(a.U[a.v][d]<<6)+(b&8191)&a.bb;if(f<a.Oa)f&1&&!(c&1)&&(a.I|=64,G(a,4,10));else if(a.ra&16||253952<=f&&(f|=4186112),4186112>f){if(3932160<=f){f&=262143;var l=f>>13&31;31>l?a.ra&32&&(f=a.Jb[l]+(f&8190)&4194302,3932160<=f&&4186112>f&&console.log("panic(898)")):f|=4186112}f>=a.Oa&&4186112>f&&(a.I|=32,G(a,4,12))}switch(e&7){case 1:h=4096;case 2:e|=128;c&4&&(h=8192);break;case 4:h=4096;case 5:c&4&&(h=4096);case 6:e|=c&4?192:
|
||||
128;break;default:h=32768}32512!==(e&32520)&&(e&8?e&32512&&(b&8128)<(e>>2&8128)&&(h|=16384):(b&8128)>(e>>2&8128)&&(h|=16384));a.F[a.v][d]=e;if(4194170!==f||a.v)a.Ma=a.v,a.Na=d;h&&(h&57344&&(0<=a.ja&&(h|=128),a.w&57344||(a.w=a.w|h|a.Ma<<5|a.Na<<1),G(a,168,16)),a.w&61440||!(4191360>f||4194239<f)||(a.w|=4096,a.w&512&&(a.m|=32)));return f}function nc(a,b,c){b&1&&a.a--;a=a.j;a.b[(b&a.h)>>>a.j].kb(b&a.g,c&255,b)}function lc(a){var b=a.S(a.f[6]|a.M);a.f[6]=a.f[6]+2&65535;return b}
|
||||
function jc(a,b){var c=a.f[6]-2&65535;a.f[6]=c;a.w&57344||(a.qa=a.qa<<8|246);!a.v&&c<=a.sa&&4<c&&(c<=a.sa-32?(a.I|=4,a.f[6]=4,G(a,4,18)):(a.I|=8,a.m|=4));a.Ya(c,b)}
|
||||
function oc(a,b,c,d){var e,f,h=d&8?0:a.M;switch(b){case 0:return G(a,4,20),0;case 1:return 6===c&&!a.v&&d&4&&(a.f[6]<=a.sa||65534<=a.f[6])&&(a.f[6]<=a.sa-32||65534<=a.f[6]?(a.I|=4,a.f[6]=4,G(a,4,22)):(a.I|=8,a.m|=64)),a.a-=3,7===c?a.f[c]:a.f[c]|h;case 2:f=2;e=a.f[c];7!==c&&(e|=h,6>c&&d&1&&(f=1));a.a-=3;break;case 3:f=2;e=a.f[c];7!==c&&(e|=h);e=a.S(e);e|=h;a.a-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.f[c]+f&65535;7!==c&&(e|=h);a.a-=4;break;case 5:f=-2;e=a.f[c]-2&65535;7!==c&&(e|=h);e=a.S(e)|h;a.a-=
|
||||
8;break;case 6:return e=a.S(gc(a,2)),e=e+a.f[c]&65535|h,a.a-=6,e;case 7:return e=a.S(gc(a,2)),e=e+a.f[c]&65535,e=a.S(e|a.M)|h,a.a-=10,e}a.f[c]=a.f[c]+f&65535;!h||a.w&57344||(a.qa=a.qa<<8|f<<3&248|c);6==c&&!a.v&&d&4&&0>=f&&(a.f[6]<=a.sa||65534<=a.f[6])&&(a.f[6]<=a.sa-32?(a.I|=4,a.f[6]=4,G(a,4,24)):(a.I|=8,a.m|=64));return e}g.Ja=function(a,b){this.Ha?(this.eb++,nc(this,mc(this,a,5),b),this.eb--):this.j.Ja(a,b)};g.Fb=function(a,b,c){return oc(this,a,b,c)};
|
||||
g.Gb=function(a,b,c){return mc(this,oc(this,a,b,c),c)};g.qc=function(a){return pb(this.j,a)};g.rc=function(a){return pb(this.j,mc(this,a,2))};g.cd=function(a,b){qb(this.j,a,b&65535)};g.dd=function(a,b){qb(this.j,mc(this,a,4),b)};function pc(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?(d=oc(a,b,d,2),c&65536||61440!==(a.A&61440)&&(d&=65535),a.v=a.A>>12&3,c=a.S(d|c&a.M),a.v=a.A>>14&3):c=6!=d||(a.A>>2&12288)===(a.A&12288)?a.f[d]:a.aa[a.A>>12&3];return c}
|
||||
function qc(a,b,c,d){a.w&57344||(a.qa=22);var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=oc(a,b,e,4),c&65536||(e&=65535),a.v=a.A>>12&3,e=mc(a,e|c&65536,4),a.v=a.A>>14&3,qb(a.j,e,d)):6!=e||(a.A>>2&12288)===(a.A&12288)?a.f[e]=d:a.aa[a.A>>12&3]=d}function rc(a,b){b>>=6;var c=a.C=b&7;(b=a.B=(b&56)>>3)?(c=a.J(b,c,3),a=ob(a.j,c)):a=a.f[c]&255;return a}function S(a,b){b>>=6;var c=a.C=b&7;return(b=a.B=(b&56)>>3)?pb(a.j,a.J(b,c,2)):a.f[c]}function sc(a,b){var c=a.b=b&7;b=a.c=(b&56)>>3;return oc(a,b,c,8)}
|
||||
function tc(a,b){var c=a.b=b&7;(b=a.c=(b&56)>>3)?(c=a.J(b,c,3),a=ob(a.j,c)):a=a.f[c]&255;return a}function uc(a,b){var c=a.b=b&7;return(b=a.c=(b&56)>>3)?pb(a.j,a.J(b,c,2)):a.f[c]}function T(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.$a=a.J(b,e,7),nc(a,e,d.call(a,c,ob(a.j,e)))):a.f[e]=a.f[e]&65280|d.call(a,c,a.f[e])}function U(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.J(b,e,6),qb(a.j,e,d.call(a,c,pb(a.j,e)))):a.f[e]=d.call(a,c,a.f[e])}
|
||||
function vc(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?nc(a,a.J(b,e,5),c):a.f[e]=c?d&1?c<<24>>24&65535:a.f[e]&-256|c&255:a.f[e]&-256;return c}function wc(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?qb(a.j,a.J(b,d,4),c):a.f[d]=c&65535;return c}function V(a,b,c){c&&(M(a,a.f[7]+(b<<24>>23)),a.a-=2);a.a-=3}
|
||||
g.zb=function(a){this.i.complete=!0;this.i.Db=!1;this.i.yb=!1;this.ha=this.a=a;do{if(this.m&&(this.m&112&&(this.m&32?G(this,168,28):this.m&64?G(this,4,30):this.m&16&&G(this,12,32),this.m&=-113),this.m&7))if(this.m&2){this.m&=-3;var b=160,c=(this.ib&224)>>5;if(a=this.Y&&this.Y.za>c?this.Y:null)b=a.xc,c=a.za;c>(this.A&224)>>5?(this.m&4&&(gc(this,2),this.m&=-5),G(this,b,26),c=!0):c=!1;if(c&&a)if(c=this.Y,c==a)this.Y=a.next;else for(;c;){b=c.next;if(b==a){c.next=b.next;break}c=b}}else this.m&1&&this.m++;
|
||||
this.m=this.m&7|this.A&16;this.decode(fc(this))}while(0<this.a);return this.i.complete?this.ha-this.a:void 0===this.i.complete?0:-1};r(function(){for(var a=B(document,"pdp11","cpu"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new $b(d);A(d,c)}});function xc(a,b){var c=b+a;hc(this,c,a,b);return c&65535}function yc(a,b){var c=b+a;hc(this,c<<8,a<<8,b<<8);return c&255}function zc(a,b){a=b<<1;R(this,a);return a&65535}function Ac(a,b){a=b<<1;R(this,a<<8);return a&255}
|
||||
function Bc(a,b){a=b&32768|b>>1|b<<16;R(this,a);return a&65535}function Cc(a,b){a=b&2048|b>>1|b<<8;R(this,a<<8);return a&255}function Dc(a,b){a=b&~a;P(this,a);return a}function Ec(a,b){a=b&~a;P(this,a<<8);return a}function Fc(a,b){a|=b;P(this,a);return a}function Gc(a,b){a|=b;P(this,a<<8);return a}function Hc(a,b){a=~b|65536;Q(this,a);return a&65535}function Ic(a,b){a=~b|256;Q(this,a<<8);return a&255}function Jc(a,b){a=b-a;this.m&128||(this.s=this.h=a,this.g=b&(b^a));return a&65535}
|
||||
function Kc(a,b){a=b-a;var c=a<<8;b<<=8;this.m&128||(this.s=this.h=c,this.g=b&(b^c));return a&255}function Lc(a,b){a=b+a;this.m&128||(this.s=this.h=a,this.g=a&(b^a));return a&65535}function Mc(a,b){a=b+a;var c=a<<8;this.m&128||(this.s=this.h=c,this.g=c&(b<<8^c));return a&255}function Nc(a,b){a=-b;Q(this,a,a&b&32768);return a&65535}function Oc(a,b){a=-b;Q(this,a<<8,(a&b&128)<<8);return a&255}function Pc(a,b){a=b<<1|this.l>>16&1;R(this,a);return a&65535}
|
||||
function Qc(a,b){a=b<<1|this.l>>16&1;R(this,a<<8);return a&255}function Rc(a,b){a=(this.l&65536|b)>>1|b<<16;R(this,a);return a&65535}function Sc(a,b){a=((this.l&65536)>>8|b)>>1|b<<8;R(this,a<<8);return a&255}function Tc(a,b){var c=b-a;ic(this,c,a,b);return c&65535}function Uc(a,b){var c=b-a;ic(this,c<<8,a<<8,b<<8);return c&255}function Vc(a,b){this.m&128||(this.s=this.h=b&65280,this.g=this.l=0);return(b<<8|b>>8)&65535}function Wc(a,b){a^=b;P(this,a);return a&65535}
|
||||
function Xc(a){U(this,a,S(this,a),xc);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.B?5:3)+(7==this.b?2:0)}function Yc(a){var b=uc(this,a);a=a>>6&7;var c=this.f[a];c&32768&&(c|=4294901760);this.l=this.g=0;b&=63;if(b&32)b=64-b,16<b&&(b=16),this.l=c<<17-b,c>>=b;else if(b)if(16<b)this.g=c,c=0;else{this.l=c<<=b;var d=c>>15&65535;d&&65535!==d&&(this.g=32768)}this.f[a]=c&65535;this.s=this.h=c;this.a-=(this.c?6:7)+b}
|
||||
function Zc(a){var b=uc(this,a);a=a>>6&7;var c=this.f[a]<<16|this.f[a|1];this.l=this.g=0;b&=63;if(b&32){b=64-b;32<b&&(b=32);var d=c>>b-1;this.l=d<<16;d>>=1;c&2147483648&&(d|=4294967295<<32-b)}else b?(d=c<<b-1,this.l=d>>15,d<<=1,32<b&&(b=32),(c>>=32-b)&&4294967295!==(c|4294967295<<b&4294967295)&&(this.g=32768)):d=c;this.f[a]=d>>16&65535;this.f[a|1]=d&65535;this.s=d>>16;this.h=d>>16|d;this.a-=(this.c?6:7)+b}function $c(a){V(this,a,!O(this))}function ad(a){V(this,a,O(this))}
|
||||
function bd(a){U(this,a,S(this,a),Dc);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.B?5:3)+(7==this.b?2:0)}function cd(a){T(this,a,rc(this,a),Ec);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.B?5:3)+(7==this.b?2:0)}function dd(a){U(this,a,S(this,a),Fc);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.B?5:3)+(7==this.b?2:0)}function ed(a){T(this,a,rc(this,a),Gc);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.B?5:3)+(7==this.b?2:0)}
|
||||
function fd(a){P(this,S(this,a)&uc(this,a));this.a-=this.c?4+(this.C&&6<=this.b?1:0):(this.B?4:3)+(7==this.b?2:0)}function gd(a){P(this,(rc(this,a)&tc(this,a))<<8);this.a-=this.c?4+(this.C&&6<=this.b?1:0):(this.B?4:3)+(7==this.b?2:0)}function hd(a){V(this,a,this.h&65535?0:4)}function id(a){V(this,a,!this.oa()==!(this.g&32768))}function jd(a){V(this,a,!!(this.h&65535)&&!this.oa()==!(this.g&32768))}function kd(a){V(this,a,!O(this)&&!!(this.h&65535))}
|
||||
function ld(a){V(this,a,(this.h&65535?0:4)||!this.oa()!=!(this.g&32768))}function md(a){V(this,a,O(this)||(this.h&65535?0:4))}function nd(a){V(this,a,!this.oa()!=!(this.g&32768))}function od(a){V(this,a,this.oa())}function pd(a){V(this,a,!!(this.h&65535))}function qd(a){V(this,a,!this.oa())}function rd(){G(this,12,1);this.a-=5}function sd(a){V(this,a,!0)}function td(a){V(this,a,!(this.g&32768))}function ud(a){V(this,a,this.g&32768?2:0)}
|
||||
function W(a){a&1&&(this.l=0);a&2&&(this.g=0);a&4&&(this.h=1);a&8&&(this.s=0);this.a-=5}function vd(a){var b=S(this,a);a=uc(this,a);ic(this,b-a,a,b);this.a-=this.c?4+(this.C&&6<=this.b?1:0):(this.B?4:3)+(7==this.b?2:0)}function wd(a){var b=rc(this,a)<<8;a=tc(this,a)<<8;ic(this,b-a,a,b);this.a-=this.c?4+(this.C&&6<=this.b?1:0):(this.B?4:3)+(7==this.b?2:0)}
|
||||
function xd(a){var b=uc(this,a);if(b){a=a>>6&7;var c=this.f[a]<<16|this.f[a|1];this.l=this.g=0;b&32768&&(b|=-65536);var d=~~(c/b);-32768<=d&&32767>=d?(this.f[a]=d&65535,this.f[a|1]=c-d*b&65535,this.h=d>>16|d,this.s=d>>16):(this.g=32768,this.h=d>>15|d,this.s=c>>16,-1===b&&65534===this.f[a]&&(this.f[a]=this.f[a|1]=1));this.a-=53}else this.h=this.s=0,this.g=32768,this.l=65536,this.a-=7}function yd(){G(this,24,2);this.a-=25}
|
||||
function zd(){this.A&49152?(this.I|=128,G(this,4,3)):this.D?this.D.c():D(this);this.a-=7}function Ad(){G(this,16,4);this.a-=25}var Bd=[0,7,7,10,7,11,9,13];function Cd(a){this.G=this.a;M(this,sc(this,a));this.a=this.G-Bd[this.c]}var Dd=[0,14,14,17,14,18,16,20];function Ed(a){this.G=this.a;var b=sc(this,a);a=a>>6&7;jc(this,this.f[a]);this.f[a]=this.f[7];M(this,b);this.a=this.G-Dd[this.c]}var Fd=[3,9,9,13,10,14,12,16,4,9,9,13,10,14,13,17];
|
||||
function Gd(a){var b=S(this,a);this.G=this.a;P(this,wc(this,a,b));this.a=this.G-Fd[(this.B?8:0)+this.c]+(7!=this.b||this.c?0:2)}function Hd(a){var b=rc(this,a);P(this,vc(this,a,b,1)<<8);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.B?5:3)+(7==this.b?2:0)}var Id=[7,13,13,17,14,18,17,21];
|
||||
function Jd(a){var b=uc(this,a);a=a>>6&7;b&32768&&(b|=-65536);var c=this.f[a];c&32768&&(c|=-65536);b=~~(b*c);this.f[a]=b>>16&65535;this.f[a|1]=b&65535;this.m&128||(this.s=b>>16,this.h=this.s|b,this.g=0,this.l=-32768>b||32767<b?65536:0);this.a-=23}function Kd(){this.a-=5}function Ld(){this.A&49152||(dc(this),this.j.reset());this.a-=667}function Md(){kc(this);this.m|=this.A&16;this.a-=13}
|
||||
function Nd(a){if(a&8)G(this,8,6);else{var b=lc(this);a&=7;7==a?M(this,b):(M(this,this.f[a]),this.f[a]=b);this.a-=9}}function X(a){a&1&&(this.l=65536);a&2&&(this.g=32768);a&4&&(this.h=0);a&8&&(this.s=32768);this.a-=5}function Od(a){var b=(a&448)>>6;if(this.f[b]=this.f[b]-1&65535)M(this,this.f[7]-((a&63)<<1)),this.a+=1;this.a-=6}function Pd(a){U(this,a,S(this,a),Tc);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.B?5:3)+(7==this.b?2:0)}
|
||||
function Qd(a){U(this,a,0,Vc);this.a-=this.c?9:3+(7==this.b?2:0)}function Rd(){G(this,28,5);this.a-=5}function Sd(){this.m&4||this.o.ba();this.m|=4;gc(this,-2);this.a-=3}function Td(a){U(this,a,S(this,a),Wc);this.a-=this.c?9:3+(7==this.b?2:0)}function Y(){G(this,8,6)}function ac(a){Ud[a>>12].call(this,a)}function Vd(a){Wd[a>>6&3].call(this,a)}function Xd(a){Yd[a>>6&3].call(this,a)}function Zd(a){$d[a>>6&3].call(this,a)}function ae(a){be[a&15].call(this,a)}function ce(a){de[a&15].call(this,a)}
|
||||
function ee(a){fe[a>>6&3].call(this,a)}function ge(a){he[a>>6&3].call(this,a)}function ie(a){je[a>>6&3].call(this,a)}
|
||||
var Ud=[function(a){ke[a>>8&15].call(this,a)},Gd,wd,gd,cd,ed,Yc,Y,function(a){le[a>>8&15].call(this,a)},Hd,xd,hd,dd,fd,Pd,Y],ke=[function(a){me[a>>4&15].call(this,a)},td,qd,id,jd,od,kd,md,Ed,Ed,Vd,Xd,Zd,Y,Y,Y],Wd=[function(a){P(this,xc(this,a,0));this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,Ic);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,Mc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,Kc);this.a-=this.c?9:3+(7==this.b?2:0)}],Yd=[function(a){T(this,a,0,Oc);
|
||||
this.a-=this.c?11:6},function(a){T(this,a,N(this)?1:0,yc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,N(this)?1:0,Uc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){a=vc(this,a);P(this,a);this.a-=this.c?4:3+(7==this.b?2:0)}],$d=[function(a){T(this,a,0,Sc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,Qc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,Cc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,Ac);this.a-=this.c?9:3+(7==this.b?2:0)}],me=[function(a){ne[a&
|
||||
15].call(this,a)},Y,Y,Y,W,W,W,W,Nd,Y,ae,ce,Qd,Qd,Qd,Qd],ne=[Ad,Sd,Md,sd,Bd,Ld,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y],be=[Kd,function(){this.m=0;this.a-=5},function(){this.g=0;this.a-=5},V,function(){this.h=1;this.a-=5},V,V,V,function(){this.s=0;this.a-=5},V,V,V,V,V,V,V],de=[Kd,function(){this.m=65536;this.a-=5},function(){this.g=32768;this.a-=5},X,function(){this.h=0;this.a-=5},X,X,X,function(){this.s=32768;this.a-=5},X,X,X,X,X,X,X],le=[rd,pd,ld,nd,ud,vd,ad,bd,zd,Rd,ee,ge,ie,Y,Y,Y],fe=[function(a){P(this,wc(this,a,
|
||||
0));this.a-=this.c?9:3+(7==this.b?2:0)},function(a){S(this,a,0,Jc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){S(this,a,1,Nc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){S(this,a,1,Lc);this.a-=this.c?9:3+(7==this.b?2:0)}],he=[function(a){S(this,a,0,Pc);this.a-=this.c?11:6},function(a){S(this,a,N(this)?1:0,zc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){S(this,a,N(this)?1:0,Vc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){a=uc(this,a);P(this,a<<8);this.a-=this.c?4:3+(7==this.b?2:0)}],
|
||||
je=[function(a){S(this,a,0,Tc);this.a-=this.c?9+(this.$a&1):3+(7==this.b?2:0)},function(a){S(this,a,0,Rc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){S(this,a,0,Dc);this.a-=this.c?9+(this.$a&1):3+(7==this.b?2:0)},function(a){S(this,a,0,Bc);this.a-=this.c?9:3+(7==this.b?2:0)}];function cc(a){oe[a>>12].call(this,a)}
|
||||
var oe=[function(a){pe[a>>8&15].call(this,a)},Gd,wd,gd,cd,ed,Yc,function(a){qe[a>>8&15].call(this,a)},function(a){re[a>>8&15].call(this,a)},Hd,xd,hd,dd,fd,Pd,Y],pe=[function(a){se[a>>4&15].call(this,a)},td,qd,id,jd,od,kd,md,Ed,Ed,Vd,Xd,Zd,function(a){te[a>>6&3].call(this,a)},Y,Y],te=[function(a){a=this.f[7]+((a&63)<<1)&65535;var b=this.S(a|this.M);L(this,this.f[5]);this.f[6]=a+2&65535;this.f[5]=b;this.a-=8},function(a){a=qc(this,a,0);kc(this,a);O(this,a);this.a-=11},function(a){var b=mc(this);this.G=
|
||||
this.a;rc(this,a,0,b);O(this,b);this.a=this.G-Id[this.c]},function(a){O(this,xc(this,a,this.oa?65535:0));this.a-=this.c?9:3+(7==this.b?2:0)}],se=[function(a){ue[a&15].call(this,a)},Y,Y,Y,W,W,W,W,Nd,function(a){a&8?(this.A&49152||(this.A=this.A&-2017|(a&7)<<5,this.l|=1),this.a-=5):G(this,8,6)},ae,ce,Qd,Qd,Qd,Qd],ue=[Ad,Sd,Md,sd,Bd,Ld,function(){lc(this);this.a-=13},Y,Y,Y,Y,Y,Y,Y,Y,Y],qe=[Jd,Jd,yd,yd,Zc,Zc,$c,$c,Td,Td,Y,Y,Y,Y,Od,Od],re=[rd,pd,ld,nd,ud,vd,ad,bd,zd,Rd,ee,ge,ie,function(a){ve[a>>6&3].call(this,
|
||||
a)},Y,Y],ve=[Y,function(a){a=qc(this,a,65536);kc(this,a);O(this,a);this.a-=11},function(a){var b=mc(this);this.G=this.a;rc(this,a,65536,b);O(this,b);this.a=this.G-Id[this.c]},Y];
|
||||
function we(a){u.call(this,"ROM",a,we);this.T=this.b=null;this.o=a.addr;this.c=a.size;this.h=a.alias;this.g=a.file;this.m=ka(this.g);if(this.g){a=this.g;var b=la(this.m);"json"!=b&&"hex"!=b&&(a=na()+"/api/v1/dump?file="+this.g+"&format=bytes&decimal=true");var c=this;k(a,null,!0,function(a,b,f){f?c.K("Unable to load ROM resource (error "+f+": "+a+")"):(Pa(c.ta,a,b),(a=ua(a,b))?(c.b=a.N,c.T=a.T):c.g=null,xe(c))})}}w(we);we.prototype.fa=function(a,b,c,d){this.j=b;this.a=c;this.D=d;xe(this)};
|
||||
var Ud=[function(a){ke[a>>8&15].call(this,a)},Gd,vd,fd,bd,dd,Xc,Y,function(a){le[a>>8&15].call(this,a)},Hd,wd,gd,cd,ed,Pd,Y],ke=[function(a){me[a>>4&15].call(this,a)},sd,pd,hd,id,nd,jd,ld,Ed,Ed,Vd,Xd,Zd,Y,Y,Y],Wd=[function(a){Q(this,wc(this,a,0));this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,Hc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,1,Lc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,1,Jc);this.a-=this.c?9:3+(7==this.b?2:0)}],Yd=[function(a){U(this,a,0,Nc);
|
||||
this.a-=this.c?11:6},function(a){U(this,a,O(this)?1:0,xc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,O(this)?1:0,Tc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){a=uc(this,a);Q(this,a);this.a-=this.c?4:3+(7==this.b?2:0)}],$d=[function(a){U(this,a,0,Rc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,Pc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,Bc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,zc);this.a-=this.c?9:3+(7==this.b?2:0)}],me=[function(a){ne[a&
|
||||
15].call(this,a)},Y,Y,Y,Cd,Cd,Cd,Cd,Nd,Y,ae,ce,Qd,Qd,Qd,Qd],ne=[zd,Sd,Md,rd,Ad,Ld,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y],be=[Kd,function(){this.l=0;this.a-=5},function(){this.g=0;this.a-=5},W,function(){this.h=1;this.a-=5},W,W,W,function(){this.s=0;this.a-=5},W,W,W,W,W,W,W],de=[Kd,function(){this.l=65536;this.a-=5},function(){this.g=32768;this.a-=5},X,function(){this.h=0;this.a-=5},X,X,X,function(){this.s=32768;this.a-=5},X,X,X,X,X,X,X],le=[qd,od,kd,md,td,ud,$c,ad,yd,Rd,ee,ge,ie,Y,Y,Y],fe=[function(a){Q(this,vc(this,
|
||||
a,0));this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,Ic);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,Mc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,Kc);this.a-=this.c?9:3+(7==this.b?2:0)}],he=[function(a){T(this,a,0,Oc);this.a-=this.c?11:6},function(a){T(this,a,O(this)?1:0,yc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,O(this)?1:0,Uc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){a=tc(this,a);Q(this,a<<8);this.a-=this.c?4:3+(7==this.b?2:0)}],
|
||||
je=[function(a){T(this,a,0,Sc);this.a-=this.c?9+(this.$a&1):3+(7==this.b?2:0)},function(a){T(this,a,0,Qc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,Cc);this.a-=this.c?9+(this.$a&1):3+(7==this.b?2:0)},function(a){T(this,a,0,Ac);this.a-=this.c?9:3+(7==this.b?2:0)}];function bc(a){oe[a>>12].call(this,a)}
|
||||
var oe=[function(a){pe[a>>8&15].call(this,a)},Gd,vd,fd,bd,dd,Xc,function(a){qe[a>>8&15].call(this,a)},function(a){re[a>>8&15].call(this,a)},Hd,wd,gd,cd,ed,Pd,Y],pe=[function(a){se[a>>4&15].call(this,a)},sd,pd,hd,id,nd,jd,ld,Ed,Ed,Vd,Xd,Zd,function(a){te[a>>6&3].call(this,a)},Y,Y],te=[function(a){a=this.f[7]+((a&63)<<1)&65535;var b=this.S(a|this.M);M(this,this.f[5]);this.f[6]=a+2&65535;this.f[5]=b;this.a-=8},function(a){a=pc(this,a,0);jc(this,a);P(this,a);this.a-=11},function(a){var b=lc(this);this.G=
|
||||
this.a;qc(this,a,0,b);P(this,b);this.a=this.G-Id[this.c]},function(a){P(this,wc(this,a,this.oa?65535:0));this.a-=this.c?9:3+(7==this.b?2:0)}],se=[function(a){ue[a&15].call(this,a)},Y,Y,Y,Cd,Cd,Cd,Cd,Nd,function(a){a&8?(this.A&49152||(this.A=this.A&-2017|(a&7)<<5,this.m|=1),this.a-=5):G(this,8,6)},ae,ce,Qd,Qd,Qd,Qd],ue=[zd,Sd,Md,rd,Ad,Ld,function(){kc(this);this.a-=13},Y,Y,Y,Y,Y,Y,Y,Y,Y],qe=[Jd,Jd,xd,xd,Yc,Yc,Zc,Zc,Td,Td,Y,Y,Y,Y,Od,Od],re=[qd,od,kd,md,td,ud,$c,ad,yd,Rd,ee,ge,ie,function(a){ve[a>>6&
|
||||
3].call(this,a)},Y,Y],ve=[Y,function(a){a=pc(this,a,65536);jc(this,a);P(this,a);this.a-=11},function(a){var b=lc(this);this.G=this.a;qc(this,a,65536,b);P(this,b);this.a=this.G-Id[this.c]},Y];
|
||||
function we(a){u.call(this,"ROM",a,we);this.T=this.b=null;this.o=a.addr;this.c=a.size;this.h=a.alias;this.g=a.file;this.l=ka(this.g);if(this.g){a=this.g;var b=la(this.l);"json"!=b&&"hex"!=b&&(a=na()+"/api/v1/dump?file="+this.g+"&format=bytes&decimal=true");var c=this;k(a,null,!0,function(a,b,f){f?c.K("Unable to load ROM resource (error "+f+": "+a+")"):(Pa(c.ta,a,b),(a=ua(a,b))?(c.b=a.N,c.T=a.T):c.g=null,xe(c))})}}w(we);we.prototype.fa=function(a,b,c,d){this.j=b;this.a=c;this.D=d;xe(this)};
|
||||
we.prototype.$=function(){this.T&&(this.D&&this.D.a(this.id,this.o,this.c,this.T),delete this.T);return!0};we.prototype.Z=function(){return!0};
|
||||
function xe(a){if(!Ta(a)){if(a.g){if(!a.b||!a.j)return;a.c||(a.c=a.b.length);if(a.b.length!=a.c){var b="ROM size ("+ja(a.b.length,8,!0)+") does not match specified size ("+ja(a.c,8,!0)+")";a.i.error=!0;a.K(b)}else{b=a.o;if(kb(a.j,b,a.c,Ib)){var c;for(c=0;c<a.b.length;c++)a.j.Ja(b+c,a.b[c]);b=!0}else b=!1;if(b){b=[];"number"==typeof a.h?b.push(a.h):null!=a.h&&a.h.length&&(b=a.h);for(c=0;c<b.length;c++){var d=a,e=b[c],f=jb(d.j,d.o,d.c);ib(d.j,e,d.c,f)}delete a.b}}}C(a)}}
|
||||
function xe(a){if(!Ta(a)){if(a.g){if(!a.b||!a.j)return;a.c||(a.c=a.b.length);if(a.b.length!=a.c){var b="ROM size ("+ja(a.b.length,8,!0)+") does not match specified size ("+ja(a.c,8,!0)+")";a.i.error=!0;a.K(b)}else{b=a.o;if(kb(a.j,b,a.c,Hb)){var c;for(c=0;c<a.b.length;c++)a.j.Ja(b+c,a.b[c]);b=!0}else b=!1;if(b){b=[];"number"==typeof a.h?b.push(a.h):null!=a.h&&a.h.length&&(b=a.h);for(c=0;c<b.length;c++){var d=a,e=b[c],f=jb(d.j,d.o,d.c);ib(d.j,e,d.c,f)}delete a.b}}}C(a)}}
|
||||
r(function(){for(var a=B(document,"pdp11","rom"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new we(d);A(d,c)}});
|
||||
function ye(a){u.call(this,"RAM",a,ye);this.T=this.c=null;this.g=a.addr;this.o=a.size;this.ma=a.load;this.la=a.exec;this.h=!1;this.b=a.file;this.m=ka(this.b);if(this.b){a=this.b;var b=la(this.m);"json"!=b&&"hex"!=b&&(a=na()+"/api/v1/dump?file="+this.b+"&format=bytes&decimal=true");var c=this;k(a,null,!0,function(a,b,f){f?c.K("Unable to load RAM resource (error "+f+": "+a+")"):(Pa(c.ta,a,b),(a=ua(a,b))?(c.c=a.N,c.T=a.T,null==c.ma&&(c.ma=a.ma),null==c.la&&(c.la=a.la)):c.b=null,ze(c))})}}w(ye);
|
||||
function ye(a){u.call(this,"RAM",a,ye);this.T=this.c=null;this.g=a.addr;this.o=a.size;this.ma=a.load;this.la=a.exec;this.h=!1;this.b=a.file;this.l=ka(this.b);if(this.b){a=this.b;var b=la(this.l);"json"!=b&&"hex"!=b&&(a=na()+"/api/v1/dump?file="+this.b+"&format=bytes&decimal=true");var c=this;k(a,null,!0,function(a,b,f){f?c.K("Unable to load RAM resource (error "+f+": "+a+")"):(Pa(c.ta,a,b),(a=ua(a,b))?(c.c=a.N,c.T=a.T,null==c.ma&&(c.ma=a.ma),null==c.la&&(c.la=a.la)):c.b=null,ze(c))})}}w(ye);
|
||||
ye.prototype.fa=function(a,b,c,d){this.j=b;this.a=c;this.D=d;ze(this)};ye.prototype.$=function(){this.T&&(this.D&&this.D.a(this.id,this.g,this.o,this.T),delete this.T);return!0};ye.prototype.Z=function(){return!0};function ze(a){if(a.j&&(!a.h&&a.o&&kb(a.j,a.g,a.o,1)&&(a.h=!0),!Ta(a))){if(!a.h)m("No RAM allocated");else if(a.b){if(!a.c||!a.j)return;Ae(a,a.c,a.ma,a.la,a.g)}C(a)}}
|
||||
ye.prototype.reset=function(){if(this.h){for(var a=this.j,b=this.g,c=this.o,d=b&a.g,b=b>>>a.j;0<c&&b<a.b.length;){var e=a.b[b],f=c,h,d=d||0;void 0===f&&(f=e.size);if(Ua)for(h=d;f--&&h<e.b.length;h++)e.b[h]=0;else for(h=d;f--&&h<e.size;h++)e.lb(d,0,e.ya+d);c-=a.c;b++;d=0}this.c&&Ae(this,this.c,this.ma,this.la,this.g,!0)}};
|
||||
function Ae(a,b,c,d,e,f){var h=!1;if(null==c)for(var l=0;l<b.length-1;){var n=b[l]&255|(b[l+1]&255)<<8;if(n)if(n&255){if(1!=n)break;if(l+6>=b.length)break;for(var l=l+2,q=b[l++]&255|(b[l++]&255)<<8,t=b[l++]&255|(b[l++]&255)<<8,n=n+((q&255)+(q>>8)+(t&255)+(t>>8)),z=l,Ra=q-=6;0<q&&l<b.length;)n+=b[l++]&255,q--;if(q||l>=b.length)break;n+=b[l++]&255;if(n&255)break;if(Ra)for(;Ra--;)a.a.Ja(t++,b[z++]&255);else t&1?D(a.a):fc(a.a,t,f);h=!0}else l++;else l+=2}if(!h&&(null==c&&(c=e),null!=c)){for(e=0;e<b.length;e++)a.a.Ja(c+
|
||||
e,b[e]);null!=d&&fc(a.a,d,f);h=!0}return h}r(function(){for(var a=B(document,"pdp11","ram"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new ye(d);A(d,c)}});function Be(a){u.call(this,"Keyboard",a,Be);C(this)}w(Be);Be.prototype.X=function(){return!1};Be.prototype.fa=function(a,b,c,d){this.o=a;this.a=c;this.D=d};r(function(){for(var a=B(document,"pdp11","keyboard"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Be(d);A(d,c)}});
|
||||
function Z(a){this.B=a.baudReceive||9600;this.G=a.baudTransmit||9600;this.g=this.m=null;this.J=a.tabSize;this.C=a.charBOL;this.s=0;u.call(this,"SerialPort",a,Z);var b=a.binding;if("console"==b)this.m="";else{var c;a=Ce;b&&(void 0===c&&(c="Panel"),(c=Sa(c,this.id))&&(b=c.u[b])&&this.X(null,a,b))}this.v=this.w=null;this.exports={connect:this.pb,receiveData:this.gb}}w(Z);var Ce="buffer";g=Z.prototype;
|
||||
function Ae(a,b,c,d,e,f){var h=!1;if(null==c)for(var l=0;l<b.length-1;){var n=b[l]&255|(b[l+1]&255)<<8;if(n)if(n&255){if(1!=n)break;if(l+6>=b.length)break;for(var l=l+2,q=b[l++]&255|(b[l++]&255)<<8,t=b[l++]&255|(b[l++]&255)<<8,n=n+((q&255)+(q>>8)+(t&255)+(t>>8)),z=l,Ra=q-=6;0<q&&l<b.length;)n+=b[l++]&255,q--;if(q||l>=b.length)break;n+=b[l++]&255;if(n&255)break;if(Ra)for(;Ra--;)a.a.Ja(t++,b[z++]&255);else t&1?D(a.a):ec(a.a,t,f);h=!0}else l++;else l+=2}if(!h&&(null==c&&(c=e),null!=c)){for(e=0;e<b.length;e++)a.a.Ja(c+
|
||||
e,b[e]);null!=d&&ec(a.a,d,f);h=!0}return h}r(function(){for(var a=B(document,"pdp11","ram"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new ye(d);A(d,c)}});function Be(a){u.call(this,"Keyboard",a,Be);C(this)}w(Be);Be.prototype.X=function(){return!1};Be.prototype.fa=function(a,b,c,d){this.o=a;this.a=c;this.D=d};r(function(){for(var a=B(document,"pdp11","keyboard"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Be(d);A(d,c)}});
|
||||
function Z(a){this.B=a.baudReceive||9600;this.G=a.baudTransmit||9600;this.g=this.l=null;this.J=a.tabSize;this.C=a.charBOL;this.s=0;u.call(this,"SerialPort",a,Z);var b=a.binding;if("console"==b)this.l="";else{var c;a=Ce;b&&(void 0===c&&(c="Panel"),(c=Sa(c,this.id))&&(b=c.u[b])&&this.X(null,a,b))}this.v=this.w=null;this.exports={connect:this.pb,receiveData:this.gb}}w(Z);var Ce="buffer";g=Z.prototype;
|
||||
g.X=function(a,b,c){var d=this;switch(b){case Ce:return this.u[b]=this.g=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),d.gb(b);return!0},c.onkeypress=function(a){a=a||window.event;d.gb(a.which||a.keyCode);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
|
||||
g.fa=function(a,b,c,d){this.o=a;this.j=b;this.a=c;this.D=d;var e=this;this.P=zb(48,4);this.L=wb(this.a,function(){e.b&128||!e.h.length||(e.H=e.h.shift()&255,e.b|=128,e.b&64&&xb(e.a,e.P))});this.V=zb(52,4);this.M=wb(this.a,function(){e.c|=128;e.c&64&&xb(e.a,e.V)});tb(b,this,De);C(this)};
|
||||
g.pb=function(){if(!this.v){var a=Tb(this.o,"connection");if(a){var b=a.split("->");if(2==b.length){var c=qa(b[0]);if(c!=this.La)return;b=qa(b[1]);if(this.v=Qa(b)){var d=this.v.exports;if(d){var e=d.connect;e&&e.call(this.v);if(this.w=d.receiveData){this.status(this.ta+"."+c+" connected to "+b);return}}}}this.status("Unable to establish connection: "+a)}}};g.$=function(a,b){if(!b)if(this.pb(),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};
|
||||
g.Z=function(a){return a?this.save():!0};g.reset=function(){Ee(this)};g.save=function(){var a=new M(this);a.set(0,[]);return a.data()};g.restore=function(){return Ee(this)};function Ee(a){a.H=0;a.b=0;a.c=128;a.h=[];return!0}g.gb=function(a){if("number"==typeof a)this.h.push(a);else if("string"==typeof a)for(var b=0;b<a.length;b++)this.h.push(a.charCodeAt(b));else this.h=this.h.concat(a);yb(this.a,this.L,1E3/Math.round(this.B/10));return!0};g.fc=function(){return this.b&65534};
|
||||
g.Sc=function(a){this.b=this.b&-112|a&111};g.ec=function(){this.b&=-129;0<this.h.length&&yb(this.a,this.L,1E3/Math.round(this.B/10));return this.H};g.Rc=function(){};g.tc=function(){return this.c};g.fd=function(a){128==(this.c&192)&&a&64&&yb(this.a,this.M,1E3/Math.round(this.G/10));this.c=this.c&-70|a&69};g.sc=function(){return 0};
|
||||
g.ed=function(a){if(a&=255){this.w&&this.w.call(this.v,a);if(this.g)if(13==a)this.s=0;else if(8==a)this.g.value=this.g.value.slice(0,-1),0<this.s&&this.s--;else{var b;b=(b=ra[a])?"<"+b+">":String.fromCharCode(a);var c=b.length;32>a&&1==c&&(c=0);9==a&&(a=this.J||8,c=a-this.s%a,this.J&&(b=" ".slice(0,c)));this.C&&!this.s&&c&&(b=String.fromCharCode(this.C)+b);this.g.value+=b;this.g.scrollTop=this.g.scrollHeight;this.s+=c}else if(null!=this.m){if(10==a||1024<=this.m.length)this.R(this.m),
|
||||
this.m="";10!=a&&(this.m+=String.fromCharCode(a))}this.c&=-129;yb(this.a,this.M,1E3/Math.round(this.G/10))}};var Fe={},De=(Fe[65392]=[null,null,Z.prototype.fc,Z.prototype.Sc,"RCSR"],Fe[65394]=[null,null,Z.prototype.ec,Z.prototype.Rc,"RBUF"],Fe[65396]=[null,null,Z.prototype.tc,Z.prototype.fd,"XCSR"],Fe[65398]=[null,null,Z.prototype.sc,Z.prototype.ed,"XBUF"],Fe);r(function(){for(var a=B(document,"pdp11","serial"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Z(d);A(d,c)}});
|
||||
function K(a){u.call(this,"PC11",a,K);this.c=a.autoMount||null;this.h=0;this.L=a.baudReceive||3600;this.w=this.B=this.b=0;this.v=[];this.s=Ge;this.g=He;this.m="";this.G=-1;this.C=!Aa("Mobi")&&window&&"FileReader"in window}w(K);var Ge="",He=0;g=K.prototype;
|
||||
g.fa=function(a,b,c,d){this.o=a;this.j=b;this.a=c;this.D=d;var e=this;this.P=yb(48,4);this.L=vb(this.a,function(){e.b&128||!e.h.length||(e.H=e.h.shift()&255,e.b|=128,e.b&64&&wb(e.a,e.P))});this.V=yb(52,4);this.M=vb(this.a,function(){e.c|=128;e.c&64&&wb(e.a,e.V)});tb(b,this,De);C(this)};
|
||||
g.pb=function(){if(!this.v){var a=Sb(this.o,"connection");if(a){var b=a.split("->");if(2==b.length){var c=qa(b[0]);if(c!=this.La)return;b=qa(b[1]);if(this.v=Qa(b)){var d=this.v.exports;if(d){var e=d.connect;e&&e.call(this.v);if(this.w=d.receiveData){this.status(this.ta+"."+c+" connected to "+b);return}}}}this.status("Unable to establish connection: "+a)}}};g.$=function(a,b){if(!b)if(this.pb(),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};
|
||||
g.Z=function(a){return a?this.save():!0};g.reset=function(){Ee(this)};g.save=function(){var a=new N(this);a.set(0,[]);return a.data()};g.restore=function(){return Ee(this)};function Ee(a){a.H=0;a.b=0;a.c=128;a.h=[];return!0}g.gb=function(a){if("number"==typeof a)this.h.push(a);else if("string"==typeof a)for(var b=0;b<a.length;b++)this.h.push(a.charCodeAt(b));else this.h=this.h.concat(a);xb(this.a,this.L,1E3/Math.round(this.B/10));return!0};g.fc=function(){return this.b&65534};
|
||||
g.Sc=function(a){this.b=this.b&-112|a&111};g.ec=function(){this.b&=-129;0<this.h.length&&xb(this.a,this.L,1E3/Math.round(this.B/10));return this.H};g.Rc=function(){};g.tc=function(){return this.c};g.fd=function(a){128==(this.c&192)&&a&64&&xb(this.a,this.M,1E3/Math.round(this.G/10));this.c=this.c&-70|a&69};g.sc=function(){return 0};
|
||||
g.ed=function(a){if(a&=255){this.w&&this.w.call(this.v,a);if(this.g)if(13==a)this.s=0;else if(8==a)this.g.value=this.g.value.slice(0,-1),0<this.s&&this.s--;else{var b;b=(b=ra[a])?"<"+b+">":String.fromCharCode(a);var c=b.length;32>a&&1==c&&(c=0);9==a&&(a=this.J||8,c=a-this.s%a,this.J&&(b=" ".slice(0,c)));this.C&&!this.s&&c&&(b=String.fromCharCode(this.C)+b);this.g.value+=b;this.g.scrollTop=this.g.scrollHeight;this.s+=c}else if(null!=this.l){if(10==a||1024<=this.l.length)this.R(this.l),
|
||||
this.l="";10!=a&&(this.l+=String.fromCharCode(a))}this.c&=-129;xb(this.a,this.M,1E3/Math.round(this.G/10))}};var Fe={},De=(Fe[65392]=[null,null,Z.prototype.fc,Z.prototype.Sc,"RCSR"],Fe[65394]=[null,null,Z.prototype.ec,Z.prototype.Rc,"RBUF"],Fe[65396]=[null,null,Z.prototype.tc,Z.prototype.fd,"XCSR"],Fe[65398]=[null,null,Z.prototype.sc,Z.prototype.ed,"XBUF"],Fe);r(function(){for(var a=B(document,"pdp11","serial"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Z(d);A(d,c)}});
|
||||
function L(a){u.call(this,"PC11",a,L);this.c=a.autoMount||null;this.h=0;this.L=a.baudReceive||3600;this.w=this.B=this.b=0;this.v=[];this.s=Ge;this.g=He;this.l="";this.G=-1;this.C=!Aa("Mobi")&&window&&"FileReader"in window}w(L);var Ge="",He=0;g=L.prototype;
|
||||
g.X=function(a,b,c){var d=this,e=He;switch(b){case "listTapes":return this.u[b]=c,c.onchange=function(){var a=d.u.descTape,b=c.options[c.selectedIndex];if(a&&b){var e={};if(b=b.getAttribute("data-value"))try{e=eval("("+b+")")}catch(n){m("PC11 option error: "+n.message)}b=e.desc;void 0===b&&(b="");e=e.href;void 0!==e&&(b='<a href="'+e+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descTape":return this.u[b]=c,!0;case "loadTape":e=2;case "attachTape":return e||(e=1),this.u[b]=c,c.onclick=function(){var a=
|
||||
d.u.listTapes;a&&Ie(d,a.options[a.selectedIndex].text,a.value,e)},!0;case "mountTape":if(!this.C){c.parentNode.removeChild(c);break}this.u[b]=c;c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length});c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Ie(d,ka(b,!0),b,1,a)}return!1};return!0;case "readProgress":return this.u[b]=c,!0}return!1};
|
||||
g.fa=function(a,b,c,d){this.o=a;this.j=b;this.a=c;this.D=d;this.H=Je(a);var e=this;if((this.c=Tb(this.o,"autoMount")||this.c)&&"string"==typeof this.c)try{this.c=eval("("+this.c+")")}catch(f){m("PC11 auto-mount error: "+f.message+" ("+this.c+")"),this.c=null}this.J=zb(56,4);this.M=wb(this.a,function(){1==(e.b&32769)&&!(e.b&128)&&e.w<e.v.length&&(e.B=e.v[e.w++]&255,Ke(e,e.w/e.v.length*100),e.b|=128,e.b&=-2049,e.b&64&&xb(e.a,e.J))});tb(b,this,Le);Me(this,"None",Ge,!0);this.C&&Me(this,"Local Tape","?");
|
||||
g.fa=function(a,b,c,d){this.o=a;this.j=b;this.a=c;this.D=d;this.H=Je(a);var e=this;if((this.c=Sb(this.o,"autoMount")||this.c)&&"string"==typeof this.c)try{this.c=eval("("+this.c+")")}catch(f){m("PC11 auto-mount error: "+f.message+" ("+this.c+")"),this.c=null}this.J=yb(56,4);this.M=vb(this.a,function(){1==(e.b&32769)&&!(e.b&128)&&e.w<e.v.length&&(e.B=e.v[e.w++]&255,Ke(e,e.w/e.v.length*100),e.b|=128,e.b&=-2049,e.b&64&&wb(e.a,e.J))});tb(b,this,Le);Me(this,"None",Ge,!0);this.C&&Me(this,"Local Tape","?");
|
||||
Me(this,"Remote Tape","??");Ne(this)||C(this)};g.$=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};g.Z=function(a){return a?this.save():!0};g.reset=function(){this.b&=-2241;this.B=0};function Ne(a){a.h=0;if(a.c){var b=a.c.path||"",c;if(!(c=a.c.name))a:{if((c=a.u.listTapes)&&c.options)for(var d=0;d<c.options.length;d++){var e=c.options[d];if(e.value==b){c=e.text;break a}}c=ka(b,!0)}b&&c?Oe(a,c,b,1,!0):Pe(a)}return!!a.h}
|
||||
function Ie(a,b,c,d,e){if(c)if("?"==c)a.K('Use "Choose File" and "Mount" to select and load a local tape.');else{if("??"==c){c=window.prompt("Enter the URL of a remote tape image.","")||"";if(!c)return;b=ka(c);a.status("Attempting to load "+c+' as "'+b+'"');a.s="??"}else a.s=c;Oe(a,b,c,d,!1,e)}else Qe(a,!1)}
|
||||
function Oe(a,b,c,d,e,f){var h=-1;if(a.m.toLowerCase()!=c.toLowerCase()||a.g!=d)h++,Qe(a,!0),a.i.Za?a.K("PC11 busy"):(e&&a.h++,Re(a,b,c,d,f)?h++:a.i.Za=!0);h&&a.status(1==a.g?"tape attached":"tape loaded")}
|
||||
function Oe(a,b,c,d,e,f){var h=-1;if(a.l.toLowerCase()!=c.toLowerCase()||a.g!=d)h++,Qe(a,!0),a.i.Za?a.K("PC11 busy"):(e&&a.h++,Re(a,b,c,d,f)?h++:a.i.Za=!0);h&&a.status(1==a.g?"tape attached":"tape loaded")}
|
||||
function Re(a,b,c,d,e){var f=c;if(e){var h=new FileReader;h.onload=function(){var e=h.result;e&&(e=new Uint8Array(e,0,e.byteLength),Se(a,b,c,d,e),a.s="?");Pe(a)};h.readAsArrayBuffer(e);return!0}0>c.indexOf("/api/v1/dump")&&(e=la(c),f="json"==e||"gz"==e?encodeURI(c):na()+"/api/v1/dump?path="+encodeURIComponent(c)+"&format=json");return!!k(f,null,!0,function(e,f,h){var l=0>h&&a.o&&!a.o.i.O;h?a.K('Unable to load tape "'+b+'" (error '+h+": "+e+")",l):(Pa(a.ta,e,f),(e=ua(e,f))&&Se(a,b,c,d,e.N,e.ma,e.la));
|
||||
a.i.Za=!1;a.h&&(a.h--,a.h||C(a));Pe(a)})}function Me(a,b,c,d){if((a=a.u.listTapes)&&a.options){for(var e=0;e<a.options.length;e++)if(a.options[e].value==c)return;e=document.createElement("option");e.text=b;e.value=c;d&&a.childNodes[0]?a.insertBefore(e,a.childNodes[0]):a.appendChild(e)}}function Pe(a){var b=a.u.listTapes;if(b&&b.options){a=a.s||a.m;for(var c=0;c<b.options.length;c++)if(b.options[c].value==a){b.selectedIndex!=c&&(b.selectedIndex=c);break}c==b.options.length&&(b.selectedIndex=0)}}
|
||||
function Ke(a,b){b|=0;if(b!==a.G){var c=a.u.readProgress;c&&(c=(c=B(c,"pcjs-progress-bar"))&&c[0])&&c.style&&(c.style.width=b+"%");a.G=b}}function Se(a,b,c,d,e,f,h){a.m=c;a.g=d;2==d?a.H&&Ae(a.H,e,f,h)?a.status("tape loaded: "+b):(a.m="",a.s=Ge,a.g=He,a.K("No load address available for tape: "+b)):(a.w=0,a.v=e,a.status("tape attached: "+b),Ke(a,0))}function Qe(a,b){if(a.m||!1===b)a.m="",b||(a.g&&a.status(1==a.g?"tape detached":"tape unloaded"),a.s=Ge,a.g=He,Pe(a))}g.save=function(){return(new M(this)).data()};
|
||||
g.restore=function(){return!0};g.Zb=function(){return this.b&65534};g.Lc=function(a){a&1&&(this.b&32768?(a&=-2,this.b&64&&xb(this.a,this.J)):(this.b&=-129,this.b|=2048,this.B=0,yb(this.a,this.M,1E3/Math.round(this.L/10))));this.b=this.b&-66|a&65};g.Yb=function(){this.b&=-129;this.b|=2048;return this.B};g.Kc=function(){};var Te={},Le=(Te[65384]=[null,null,K.prototype.Zb,K.prototype.Lc,"PRS"],Te[65386]=[null,null,K.prototype.Yb,K.prototype.Kc,"PRB"],Te);
|
||||
function Ue(a,b,c){u.call(this,"Computer",a,Ue);this.i.O=!1;Ve(this,b);this.B=Tb(this,"autoPower",a);this.g=0;this.L=a.busWidth||a.buswidth;this.b=We;this.v=null;this.m=this.H=!1;this.M=Tb(this,"url")||"";(Math.random()+.1).toString(36);this.c=Xe(this);if(this.a=Sa("CPU",this.id)){this.D=Sa("Debugger",this.id);this.j=new $a({id:this.ta+".bus",busWidth:this.L},this.a,this.D);var d,e=x(this.id);if((this.h=Sa("Panel",this.id))&&this.h.wa)for(b=0;b<e.length;b++)d=e[b],d.K=this.h.K,d.R=this.h.R,d.wa=this.h.wa;
|
||||
this.R("PDPjs v1.30.1\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");this.R("Portions adapted from the PDP-11/70 Emulator v1.4 by Paul Nankervis <paulnank@hotmail.com>");for(b=0;b<e.length;b++)d=e[b],d.fa&&d.fa(this,this.j,this.a,this.D);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.s=d:this.b=parseInt(d,10));var f;if(a=Tb(this,"state")||(f=!0,a.state))b=this.C=a,f||(this.m=!0,this.b=We),this.b&&(this.w=new M(this,
|
||||
"1.30.1"),Ye(this.w)?b=null:delete this.w);!b&&this.b&&(b=Ze(this))&&(this.m=!0);if(b){var h=this;k(b,null,!0,function(a,b,c){c?(h.s=null,h.m=!1,h.K("Unable to load machine state from server (error "+c+(b?": "+qa(b):"")+")")):(h.v=b,h.H=!0);C(h)})}else C(this);this.u.power||(this.B=!0);!c&&this.B&&$e(this,this.Ia)}else m("Unable to find CPU component")}w(Ue);var We=0;
|
||||
function Ve(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){m(d.message+" ("+c+")")}}a.J=b}function Tb(a,b,c){var d=b.toLowerCase(),d=Ja[b]||Ja[d];void 0===d&&a.J&&(d=a.J[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}function $e(a,b,c){for(var d=x(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Ta(f)){Ta(f,function(){$e(a,b,c)});return}}b.call(a,c)}
|
||||
function af(a,b){var c=new M(a,"1.30.1","validate");if(Ye(c)&&bf(c)){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.K("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}g=Ue.prototype;
|
||||
g.Ia=function(a){void 0===a&&(a=this.b||(this.v?1:We));if(!this.g){this.g++;var b=!1,c=!1;this.G=!1;var d=this.w||new M(this,"1.30.1");if(-1==a)b=!0;else if(a>We){if(Ye(d,this.v)){this.o=new M(this,"1.30.1","failsafe");Ye(this.o)&&(cf(this,d),a=2,df(this.o));this.o.set("timestamp",ta());ef(this.o);var e=this.b&&!this.m;if(1==a||va("Click OK to restore the previous PDPjs machine state, or CANCEL to reset the machine.")){if(c=bf(d)){var f=d.get("code"),h=d.get("data");f&&("ok"==f?Ye(d,h):("error"==
|
||||
a.i.Za=!1;a.h&&(a.h--,a.h||C(a));Pe(a)})}function Me(a,b,c,d){if((a=a.u.listTapes)&&a.options){for(var e=0;e<a.options.length;e++)if(a.options[e].value==c)return;e=document.createElement("option");e.text=b;e.value=c;d&&a.childNodes[0]?a.insertBefore(e,a.childNodes[0]):a.appendChild(e)}}function Pe(a){var b=a.u.listTapes;if(b&&b.options){a=a.s||a.l;for(var c=0;c<b.options.length;c++)if(b.options[c].value==a){b.selectedIndex!=c&&(b.selectedIndex=c);break}c==b.options.length&&(b.selectedIndex=0)}}
|
||||
function Ke(a,b){b|=0;if(b!==a.G){var c=a.u.readProgress;c&&(c=(c=B(c,"pcjs-progress-bar"))&&c[0])&&c.style&&(c.style.width=b+"%");a.G=b}}function Se(a,b,c,d,e,f,h){a.l=c;a.g=d;2==d?a.H&&Ae(a.H,e,f,h)?a.status("tape loaded: "+b):(a.l="",a.s=Ge,a.g=He,a.K("No load address available for tape: "+b)):(a.w=0,a.v=e,a.status("tape attached: "+b),Ke(a,0))}function Qe(a,b){if(a.l||!1===b)a.l="",b||(a.g&&a.status(1==a.g?"tape detached":"tape unloaded"),a.s=Ge,a.g=He,Pe(a))}g.save=function(){return(new N(this)).data()};
|
||||
g.restore=function(){return!0};g.Zb=function(){return this.b&65534};g.Lc=function(a){a&1&&(this.b&32768?(a&=-2,this.b&64&&wb(this.a,this.J)):(this.b&=-129,this.b|=2048,this.B=0,xb(this.a,this.M,1E3/Math.round(this.L/10))));this.b=this.b&-66|a&65};g.Yb=function(){this.b&=-129;this.b|=2048;return this.B};g.Kc=function(){};var Te={},Le=(Te[65384]=[null,null,L.prototype.Zb,L.prototype.Lc,"PRS"],Te[65386]=[null,null,L.prototype.Yb,L.prototype.Kc,"PRB"],Te);
|
||||
function Ue(a,b,c){u.call(this,"Computer",a,Ue);this.i.O=!1;Ve(this,b);this.B=Sb(this,"autoPower",a);this.g=0;this.L=a.busWidth||a.buswidth;this.b=We;this.v=null;this.l=this.H=!1;this.M=Sb(this,"url")||"";(Math.random()+.1).toString(36);this.c=Xe(this);if(this.a=Sa("CPU",this.id)){this.D=Sa("Debugger",this.id);this.j=new $a({id:this.ta+".bus",busWidth:this.L},this.a,this.D);var d,e=x(this.id);if((this.h=Sa("Panel",this.id))&&this.h.wa)for(b=0;b<e.length;b++)d=e[b],d.K=this.h.K,d.R=this.h.R,d.wa=this.h.wa;
|
||||
this.R("PDPjs v1.30.1\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");this.R("Portions adapted from the PDP-11/70 Emulator v1.4 by Paul Nankervis <paulnank@hotmail.com>");for(b=0;b<e.length;b++)d=e[b],d.fa&&d.fa(this,this.j,this.a,this.D);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.s=d:this.b=parseInt(d,10));var f;if(a=Sb(this,"state")||(f=!0,a.state))b=this.C=a,f||(this.l=!0,this.b=We),this.b&&(this.w=new N(this,
|
||||
"1.30.1"),Ye(this.w)?b=null:delete this.w);!b&&this.b&&(b=Ze(this))&&(this.l=!0);if(b){var h=this;k(b,null,!0,function(a,b,c){c?(h.s=null,h.l=!1,h.K("Unable to load machine state from server (error "+c+(b?": "+qa(b):"")+")")):(h.v=b,h.H=!0);C(h)})}else C(this);this.u.power||(this.B=!0);!c&&this.B&&$e(this,this.Ia)}else m("Unable to find CPU component")}w(Ue);var We=0;
|
||||
function Ve(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){m(d.message+" ("+c+")")}}a.J=b}function Sb(a,b,c){var d=b.toLowerCase(),d=Ja[b]||Ja[d];void 0===d&&a.J&&(d=a.J[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}function $e(a,b,c){for(var d=x(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Ta(f)){Ta(f,function(){$e(a,b,c)});return}}b.call(a,c)}
|
||||
function af(a,b){var c=new N(a,"1.30.1","validate");if(Ye(c)&&bf(c)){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.K("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}g=Ue.prototype;
|
||||
g.Ia=function(a){void 0===a&&(a=this.b||(this.v?1:We));if(!this.g){this.g++;var b=!1,c=!1;this.G=!1;var d=this.w||new N(this,"1.30.1");if(-1==a)b=!0;else if(a>We){if(Ye(d,this.v)){this.o=new N(this,"1.30.1","failsafe");Ye(this.o)&&(cf(this,d),a=2,df(this.o));this.o.set("timestamp",ta());ef(this.o);var e=this.b&&!this.l;if(1==a||va("Click OK to restore the previous PDPjs machine state, or CANCEL to reset the machine.")){if(c=bf(d)){var f=d.get("code"),h=d.get("data");f&&("ok"==f?Ye(d,h):("error"==
|
||||
f&&"no machine state"!=h?(this.K("Error: "+h),"unable to verify user"==h&&(za("user",""),this.c=null)):this.R(f+": "+h),df(d),Ye(d)?(c=bf(d),e=!0):c=!1))}e&&af(this,c?d:null)}else 2==a&&d.clear()}else af(this);delete this.v;delete this.w}e=x(this.id);for(f=0;f<e.length;f++)h=e[f],h!==this&&h!=this.a&&(c=ff(this,h,d,b,c));b=[d,a,c];-1!=a?$e(this,this.nb,b):this.nb(b)}};
|
||||
function ff(a,b,c,d,e){if(!b.i.O){b.i.O=!0;if(b.$){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.$(f,d)&&f&&(m("Unable to restore state for "+b.type),a.C&&!a.H?(c.clear(),a.b=We,window&&window.location.reload()):a.G=!0,b.$(null),e=!1)}if(!d&&b.rb)for(a=b.rb.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
|
||||
g.nb=function(a){var b=a[0],c=0>a[1];a=a[2];this.P=!0;this.i.O=!0;var d=this.u.power;d&&(d.textContent="Shutdown");this.a&&(ff(this,this.a,b,c,a),this.a.Ga());this.G&&(cf(this,b),b.clear());!c&&this.o&&(this.o.clear(),delete this.o);this.g=0};
|
||||
function cf(a,b){if(va("There may be a problem with your PDPjs machine.\n\nTo help us diagnose it, click OK to send this PDPjs machine state to http://www.pcjs.org.")){var c=a.c||"";b=b.toString();var d={app:"PDPjs",ver:"1.30.1"};d.url=a.M;d.user=c;d.type="bug";d.data=b;k("http://www.pcjs.org/api/v1/report",d,!0)}}
|
||||
function gf(a,b,c){var d,e="none";if(a.g)return null;a.g--;var f=new M(a,"1.30.1"),h=new M(a,"1.30.1","validate"),l=ta();h.set("timestamp",l);f.set("timestamp",l);f.set("version","1.30.1");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.a&&a.a.Z&&(c&&D(a.a),d=a.a.Z(b,c),"object"===typeof d&&f.set(a.a.id,d),c&&(a.a.i.O=!1,!1===d&&(e=null)));for(var l=x(a.id),n=0;n<l.length;n++){var q=l[n];q.i.O&&(q.Z&&(d=q.Z(b,c),"object"===typeof d&&f.set(q.id,
|
||||
function gf(a,b,c){var d,e="none";if(a.g)return null;a.g--;var f=new N(a,"1.30.1"),h=new N(a,"1.30.1","validate"),l=ta();h.set("timestamp",l);f.set("timestamp",l);f.set("version","1.30.1");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.a&&a.a.Z&&(c&&D(a.a),d=a.a.Z(b,c),"object"===typeof d&&f.set(a.a.id,d),c&&(a.a.i.O=!1,!1===d&&(e=null)));for(var l=x(a.id),n=0;n<l.length;n++){var q=l[n];q.i.O&&(q.Z&&(d=q.Z(b,c),"object"===typeof d&&f.set(q.id,
|
||||
d)),c&&(q.i.O=!1,!1===d&&(e=null)))}e&&(c?(l=d=!1,b?(a.c&&hf(a,a.c,f.toString()),ef(h)&&ef(f)||(e=null,d=l=!0)):a.b&&(d=!0,l=3==a.b),d&&f.clear(l)):e=f.toString());c&&(a.i.O=!1,b=a.u.power)&&(b.textContent="Power");a.g=0;return e}g.reset=function(){this.j&&this.j.reset&&this.j.reset();for(var a=x(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.j&&c.reset&&c.reset()}};g.start=function(a,b){for(var c=x(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}this.ba(!0)};
|
||||
g.stop=function(a,b){for(var c=x(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}this.ba(!0)};
|
||||
g.X=function(a,b,c){var d=this;switch(b){case "power":return this.u[b]=c,c.onclick=function(){d.g||(d.i.O?gf(d,!1,!0):$e(d,d.Ia))},!0;case "reset":return this.u[b]=c,c.onclick=function(){if(d.i.O&&!d.g)if(d.b&&!d.s){var a=va("Click OK to save changes to this PDPjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");gf(d,a,!0);!a&&d.C?window&&window.location.reload():d.Ia(We)}else d.reset(),d.a&&d.a.Ga()},!0;case "save":if(ma())c.parentNode.removeChild(c);else return this.u[b]=
|
||||
|
|
@ -185,8 +185,8 @@ function Xe(a,b){var c=a.c;c||((c=ya("user"),void 0!==c)?!c&&b&&(b=null,window&&
|
|||
function jf(a,b){a.c=null;b=k(na()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(za("user",b.data),a.c=b.data)}catch(d){m(d.message+" ("+c+")")}return a.c}function Ze(a){var b=null;a.c&&(b=na()+"/api/v1/user?req=load&user="+a.c+"&state="+kf(a,"1.30.1"));return b}
|
||||
function hf(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=kf(a,"1.30.1");d.data=c;b=k(na()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.K("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.K(c),za("user",""),a.c=null)}}
|
||||
function Je(a){var b;a=x(a.id);for(var c=0;c<a.length;c++){var d=a[c];if(b)b==d&&(b=null);else if("RAM"==d.type)return d}return null}g.ba=function(a){this.a&&this.a.ba(a);this.h&&this.h.ba(a)};r(function(){for(var a=B(document,"pdp11-machine"),b=0;b<a.length;b++)for(var c=a[b],d=y(c),c=B(c,"pdp11","computer"),e=0;e<c.length;e++){var f=c[e],h=y(f),h=new Ue(h,d,!0);A(h,f);h.B&&$e(h,h.Ia)}});
|
||||
p.show.push(function(){for(var a=B(document,"pdp11","computer"),b=0;b<a.length;b++){var c=y(a[b]);(c=Sa("Computer",c.id))&&c.P&&!c.i.O&&c.Ia(-1)}});p.exit.push(function(){for(var a=B(document,"pdp11","computer"),b=0;b<a.length;b++){var c=y(a[b]);(c=Sa("Computer",c.id))&&c.i.O&&gf(c,!(!c.b||c.s),!0)}});function M(a,b,c){this.id=a.id;this.key=kf(a,b,c);this.D=a.D;df(this,a.Ib)}function kf(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}
|
||||
M.prototype={constructor:M,set:function(a,b){try{this[this.id][a]=b}catch(c){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},clear:function(a){df(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(e){}b.splice(c,
|
||||
p.show.push(function(){for(var a=B(document,"pdp11","computer"),b=0;b<a.length;b++){var c=y(a[b]);(c=Sa("Computer",c.id))&&c.P&&!c.i.O&&c.Ia(-1)}});p.exit.push(function(){for(var a=B(document,"pdp11","computer"),b=0;b<a.length;b++){var c=y(a[b]);(c=Sa("Computer",c.id))&&c.i.O&&gf(c,!(!c.b||c.s),!0)}});function N(a,b,c){this.id=a.id;this.key=kf(a,b,c);this.D=a.D;df(this,a.Ib)}function kf(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}
|
||||
N.prototype={constructor:N,set:function(a,b){try{this[this.id][a]=b}catch(c){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},clear:function(a){df(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(e){}b.splice(c,
|
||||
1);c=0}}};function df(a,b){a[a.id]={};b&&a.set("parms",b);a.a=!1}function ef(a){var b=!0;if(xa()){var c=JSON.stringify(a[a.id]);za(a.key,c)||(m("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}function bf(a){var b=!0;try{a[a.id]=JSON.parse(a[a.id])}catch(c){m(c.message||c),b=!1}return b}function Ye(a,b){return b?(a[a.id]=b,a.a=!0):a.a?!0:xa()&&(b=ya(a.key))?(a[a.id]=b,a.a=!0):!1}var lf=0;
|
||||
function mf(a,b,c,d,e,f){e("Loading "+a+"...");k(a,null,!0,function(h,l,n){n?(l||(l="unable to load "+a+" ("+n+")"),f(l,null)):nf(l,a,b,c,d,e,f)})}
|
||||
function nf(a,b,c,d,e,f,h){function l(a,f){if(f)h(f,null);else{c&&(Pa(c,b,a),(f=b)&&0>f.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1<d.length&&(d+=",")):d='{state:"'+d+'",':d="{",d+='url:"'+f+'"}',"object"==typeof resources&&(f=null),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/(<xsl:variable name="APPNAME">).*?(<\/xsl:variable>)/,"$1PDPjs$2"),
|
||||
|
|
|
|||
Loading…
Reference in a new issue