Merge branch 'master' into gh-pages
This commit is contained in:
commit
626c29c51b
11 changed files with 38 additions and 37 deletions
|
|
@ -12,7 +12,7 @@ machines:
|
|||
path: /disks/pcx86/dos/ibm/1.00/PCDOS100.json
|
||||
B:
|
||||
path: /apps/pcx86/1981/visicalc/VISICALC1981.json
|
||||
autoType: 8-10-81\rb:\rvc\r
|
||||
autoType: $date\rb:\rvc\r
|
||||
---
|
||||
|
||||
VisiCalc (1981)
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ machines:
|
|||
id: ibm5160-rogue
|
||||
config: /devices/pcx86/machine/5160/cga/640kb/machine.xml
|
||||
state: /apps/pcx86/1985/rogue/state.json
|
||||
resume: 1
|
||||
---
|
||||
|
||||
Rogue (1985)
|
||||
|
|
|
|||
|
|
@ -12,6 +12,8 @@ we've had to create our own "Demo Disks", because copies of the original distrib
|
|||
to find, and in some cases (e.g., [Executive Suite](1982/esuite/)), the original disks were copy-protected,
|
||||
so we've been forced to use a "cracked" copy of the software instead.
|
||||
|
||||
A list of all the software available to PCx86 machines can be found in the [IBM PC Disk Library](/disks/pcx86/).
|
||||
|
||||
### 1981
|
||||
|
||||
* [DONKEY.BAS](1981/donkey/)
|
||||
|
|
@ -40,8 +42,6 @@ so we've been forced to use a "cracked" copy of the software instead.
|
|||
|
||||
* [The Dungeons of Moria v5.5](1992/moria/)
|
||||
|
||||
A list of all the software available to PCx86 machines can be found in the [IBM PC Disk Library](/disks/pcx86/).
|
||||
|
||||
---
|
||||
|
||||
### Creating IBM PC Application Demos
|
||||
|
|
|
|||
|
|
@ -106,7 +106,7 @@ function oc(a,b,c){pb.call(this,"Bus",a);this.H=b;this.ba=c;this.I=a.busWidth||2
|
|||
function rc(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.A;0<g&&h<a.aa.length;){var k=a.aa[h],m=h*a.C,p=a.C-(f-m);p>g&&(p=g);if(k&&k.size){if(k.type==d&&k.controller==e){if(f+g<=k.ya)return k.we+=k.ya-f,k.ya=f,!0;if(f>=k.ya+k.we){p=k.size-(f-m);p>g&&(p=g);k.we=f-k.ya+p;f=m+a.C;g-=p;h++;continue}}return tc(a,uc,f,g)}f=new x(f,p,a.C,d,e);pc(f,a.ba,k);a.aa[h++]=f;f=m+a.C;g-=p}return 0>=g?(vc(a.H),a.H.da.vb||a.status(Math.floor(c/1024)+"Kb "+xc[d]+" at "+q(b)),!0):tc(a,yc,b,c)}
|
||||
function qc(a,b){32==a.I?b?a.J&&(zc(a,1048576,1048576,a.J),a.J=null):a.J||(a.J=Ac(a,1048576,1048576),zc(a,1048576,1048576,Ac(a,0,1048576))):20<a.I&&(b=a.B&-1048577|(b?1048576:0),b!=a.B&&(a.B=b,a.H&&(a=a.H,a.ff=a.ed=b)))}l.Mg=function(a,b,c,d){if(!(a&this.D||!b||b&this.D)){for(var e=a>>>this.A;0<b;){var f=this.aa[e];if(!f.controller)return tc(this,Bc,a,b,d);Cc(f,c,!0);b-=this.C;e++}return!0}return tc(this,Dc,a,b)};
|
||||
function Ec(a,b,c){if(!(b&a.D||!c||c&a.D)){for(var d=b>>>a.A;0<c;){var e=a.aa[d];b=new x(b);pc(b,a.ba,e);a.aa[d++]=b;b=d*a.C;c-=a.C}vc(a.H);return!0}return tc(a,Fc,b,c)}function Ac(a,b,c){var d=[];for(b>>>=a.A;0<c&&b<a.aa.length;)d.push(a.aa[b++]),c-=a.C;return d}
|
||||
function zc(a,b,c,d,e){for(var f=0,g=b>>>a.A;0<c&&g<a.aa.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new x(b),m=k,p=e,v=a.ba;m.id=h.id|1;m.we=h.we;m.size=h.size;p&&(m.type=p,m.D=p==Gc);Qb?(m.I=h.I,m.G=h.G,m.Pa=h.Pa,m.Sd=h.Sd,m.X=h.X,Cc(m,Hc?Ic:Jc)):(m.X=h.X,Cc(m,Kc));pc(m,v,h);h=k}a.aa[g++]=h;c-=a.C}}l.Ia=function(a){return this.aa[(a&this.B)>>>this.A].Bc(a&this.D,a)};function Mc(a,b){var c=b&a.D,d=(b&a.B)>>>a.A;return c!=a.D?a.aa[d].Of(c,b):a.aa[d++].$d(c,b)|a.aa[d&a.W].$d(0,b+1)<<8}
|
||||
function zc(a,b,c,d,e){for(var f=0,g=b>>>a.A;0<c&&g<a.aa.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new x(b),m=k,p=e,v=a.ba;m.id=h.id|1;m.we=h.we;m.size=h.size;p&&(m.type=p,m.D=p==Gc);Qb?(m.I=h.I,m.G=h.G,m.Pa=h.Pa,m.Sd=h.Sd,m.X=h.X,Cc(m,Hc?Ic:Jc)):(m.X=h.X,Cc(m,Kc));pc(m,v,h);h=k}a.aa[g++]=h;c-=a.C}}l.Ia=function(a){return this.aa[(a&this.B)>>>this.A].Bc(a&this.D,a)};function Lc(a,b){var c=b&a.D,d=(b&a.B)>>>a.A;return c!=a.D?a.aa[d].Of(c,b):a.aa[d++].$d(c,b)|a.aa[d&a.W].$d(0,b+1)<<8}
|
||||
l.fc=function(a,b){this.aa[(a&this.B)>>>this.A].Dc(a&this.D,b&255,a)};function Nc(a,b,c){var d=b&a.D,e=(b&a.B)>>>a.A;d!=a.D?a.aa[e].ti(d,c&65535,b):(a.aa[e++].cf(d,c&255,b),a.aa[e&a.W].cf(0,c>>8&255,b+1))}l.yj=function(){return null};
|
||||
function Oc(a,b){var c=0,d=[],e=!a.J&&a.N==a.B;e||qc(a,!0);for(var f=0;f<a.M;f++){var g=a.aa[f];if(b&&g.type!=Gc||g.Oa||g.sj){d[c++]=f;var h=c++;if(g=g.save()){for(var k=0,m=0,p=[];k<g.length;){for(var v=g[k],u=k+1;u<g.length&&g[u]===v;)u++;p[m++]=u-k;p[m++]=v;k=u}p.length<g.length&&(g=p)}d[h]=g}}e||qc(a,!1);d[c]=e;return d}function Pc(a,b){if(null==b)return a.K=!a.K,a.K;void 0===a.F[b]&&(a.F[b]=[null,!1]);a.F[b][1]=!a.F[b][1];return a.F[b][1]}
|
||||
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.F[k]?kb("Input port "+sa(k)+" already registered"):f.F[k]=[h,!1]}}function Rc(a,b,c,d){for(var e=0,f=0;0<c;){var g=a.F[b],h=a.Y[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.ba&&a.K!=g[1]&&Sc(a.ba,b,m)):a.ba&&(Pb(a.ba,a,b,null,d),a.K&&Sc(a.ba,b,m));e|=m<<f;f+=h<<3;b+=h;c-=h}return e}
|
||||
|
|
@ -577,8 +577,8 @@ a.Qb=a.Z;a.Rb=a.la;b=a.Z-a.F*a.qa;c=a.la-a.J*a.ta;0<b&&(a.vc=b>>1,a.Qb-=b);0<c&&
|
|||
function jt(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.va[a.I];h.kf&&(d=h.kf[d]);var k=g>>4&15;h.kf&&(k=h.kf[k]);e?(b*=h.Fc,c*=h.Gc,e.fillStyle=h.Ce[k],e.fillRect(b,c,h.Fc,h.Gc)):(b=b*a.qa+a.vc,c=c*a.ta+a.zc,a.L.fillStyle=h.Ce[k],a.L.fillRect(b,c,a.qa,a.ta));g&Ct&&(k=(f&15)*h.Fc,f=(f>>4)*h.Gc,e?e.drawImage(h.Ug[d],k,f,h.Fc,h.Gc,b,c,h.Fc,h.Gc):a.L.drawImage(h.Ug[d],k,f,h.Fc,h.Gc,b,c,a.qa,a.ta));g&it&&(f=a.od,g=a.Hc,e?(a.za&&a.za!==h.Gc&&(f=f*h.Gc/a.za|0,g=g*h.Gc/a.za|0),e.fillStyle=h.Ce[d],e.fillRect(b,
|
||||
c+f,h.Fc,g)):(a.za&&a.za!==a.ta&&(f=f*a.ta/a.za|0,g=g*a.ta/a.za|0),a.L.fillStyle=h.Ce[d],a.L.fillRect(b,c+f,a.qa,g)))}
|
||||
function Es(a,b){if(a.da.Yb){var c=!1,d=a.B;d&&(d!==a.A?d.Xc&8&&(c=!0):d.xd&32&&(c=!0));if(c||b){if(b)Bt(a);else if(void 0===a.M)return;var e=!1;!(b||++a.Bd&15)&&0<=a.Aa&&(a.Aa++,e=!0);var f=0,g=a.Wc,h=a.bb,c=h,k=c+a.Ob;a.oa>=qt&&(h=c=655360,k=c+65536);if(au(a,d)&8||d.Ze&&d.Ze<d.hi){var m=(d.Sa[sr]<<8)+d.Sa[tr]|0;d.kd!==m&&(d.kd=m,At(a));d.Ze=0}m=d.kd;a.I&&(m<<=1);c+=m;m=a.Xa;a.La>=dq&&d.Sa[19]&&d.Sa[19]<<1!=d.Sa[1]+1&&(a.Ma=d.Sa[19]<<(a.I?1:d.Sa[20]&64?3:4),m=(a.Ma*(a.J-1)+a.F)/a.Eb|0,a.oa<=Js&&
|
||||
(m<<=1));c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(b=!b&&a.ma){b=a.ka;for(var p=!0,v=c>>>b.A;0<m&&v<b.aa.length;)b.aa[v].Oa&&(b.aa[v].Oa=p=!1,b.aa[v].sj=!0),m-=b.C,v++;b=p}if(b){if(!e)return;if(!a.xa){f=a.aa-d.kd;if(0>f)return;g=f+1}}if(a.I){if(a.va[a.I]){d=f;f=0;e=a.xa=0;h=Ct<<8;b=1048575;p=a.B.Xc&32;a.La>=dq&&(p=a.B.Cc[16]&8);m=a.aa-a.B.kd;p&&(e=Ns<<8,b&=~e,a.Aa&2||(b&=~h));for(c+=d<<1;c<k&&d<g;)p=Mc(a.ka,c),p|=h,p&e&&(a.xa++,p&=b),d==m&&(p|=a.Aa&1?it<<8:0),a.ma&&p===a.M[d]||(jt(a,d%a.F,d/a.F|0,p,a.Ca),
|
||||
a.M[d]=p,f++),c+=2,d++;a.ma=!0;f&&a.Ca&&a.L.drawImage(a.Ba,0,0,a.Ya,a.eb,a.vc,a.zc,a.Qb,a.Rb);gt(a)}}else if(a.Pb){var g=k,u,k=c,d=a.xa=0,f=a.Eb,e=16==f?65536:196608,h=16==f?1:2;b=Vs(a,h);for(var p=m=0,v=a.F,E=0,G=a.J,I=0;k<g;){u=Mc(a.ka,k);if(a.ma&&u===a.M[d])m+=f;else{a.M[d]=u;u=u>>8|(u&255)<<8;var J=e,T=16;m<v&&(v=m);for(var L=0;L<f;L++){var ua=(u&(J>>=h))>>(T-=h);ft(a.Ha,m++,p,b[ua])}m>E&&(E=m);p<G&&(G=p);p>=I&&(I=p+1)}k+=2;d++;if(m>=a.F){m=0;p+=2;if(p>a.J)break;p==a.J&&(p=1,k=c+a.Pb)}}a.ma=!0;
|
||||
(m<<=1));c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(b=!b&&a.ma){b=a.ka;for(var p=!0,v=c>>>b.A;0<m&&v<b.aa.length;)b.aa[v].Oa&&(b.aa[v].Oa=p=!1,b.aa[v].sj=!0),m-=b.C,v++;b=p}if(b){if(!e)return;if(!a.xa){f=a.aa-d.kd;if(0>f)return;g=f+1}}if(a.I){if(a.va[a.I]){d=f;f=0;e=a.xa=0;h=Ct<<8;b=1048575;p=a.B.Xc&32;a.La>=dq&&(p=a.B.Cc[16]&8);m=a.aa-a.B.kd;p&&(e=Ns<<8,b&=~e,a.Aa&2||(b&=~h));for(c+=d<<1;c<k&&d<g;)p=Lc(a.ka,c),p|=h,p&e&&(a.xa++,p&=b),d==m&&(p|=a.Aa&1?it<<8:0),a.ma&&p===a.M[d]||(jt(a,d%a.F,d/a.F|0,p,a.Ca),
|
||||
a.M[d]=p,f++),c+=2,d++;a.ma=!0;f&&a.Ca&&a.L.drawImage(a.Ba,0,0,a.Ya,a.eb,a.vc,a.zc,a.Qb,a.Rb);gt(a)}}else if(a.Pb){var g=k,u,k=c,d=a.xa=0,f=a.Eb,e=16==f?65536:196608,h=16==f?1:2;b=Vs(a,h);for(var p=m=0,v=a.F,E=0,G=a.J,I=0;k<g;){u=Lc(a.ka,k);if(a.ma&&u===a.M[d])m+=f;else{a.M[d]=u;u=u>>8|(u&255)<<8;var J=e,T=16;m<v&&(v=m);for(var L=0;L<f;L++){var ua=(u&(J>>=h))>>(T-=h);ft(a.Ha,m++,p,b[ua])}m>E&&(E=m);p<G&&(G=p);p>=I&&(I=p+1)}k+=2;d++;if(m>=a.F){m=0;p+=2;if(p>a.J)break;p==a.J&&(p=1,k=c+a.Pb)}}a.ma=!0;
|
||||
v<a.F&&(a.Ca.putImageData(a.Ha,0,0,v,G,E-v,I-G),a.L.drawImage(a.Ba,0,0,a.F,a.J,0,0,a.Z,a.la))}else if(a.Pc){g=h;f=a.xa=0;e=Vs(a,8);h=a.B.fd;m=b=0;p=a.F;v=0;E=a.J;G=0;I=a.B.ae[4]&8?4:1;u=a.B.Cc[19]&15;for(J=a.Ma>a.F?a.Ma-a.F-u>>3:0;c<k;){d=h[c-g];L=4;u||(a.ma&&d===a.M[f]?(b+=L,L=0):a.M[f]=d,f++);if(L){b<p&&(p=b);for(T=0;T<L;T++)ft(a.Ha,b++,m,e[d&255]),d>>=8;b>v&&(v=b);m<E&&(E=m);m>=G&&(G=m+1)}c+=I;if(b>=a.F){b=0;if(++m>a.J)break;c+=J}}u||(a.ma=!0);p<a.F&&(a.Ca.putImageData(a.Ha,0,0,p,E,v-p,G-E),a.L.drawImage(a.Ba,
|
||||
0,0,a.F,a.J,0,0,a.Z,a.la))}else{g=h;d=a.xa=0;f=Vs(a);e=a.B.fd;b=h=0;m=a.F;p=0;v=a.J;E=0;G=a.B.Cc[19]&15;for(I=a.Ma>a.F?a.Ma-a.F-G>>3:0;c<k;){u=c++-g;u=e[u];T=8;G?h?(J=a.F-h,T>J&&(T=J)):(u<<=G,T-=G,a.ma=!1):(a.ma&&u===a.M[d]?(h+=T,T=0):a.M[d]=u,d++);if(T){h<m&&(m=h);for(J=0;J<T;J++)L=cu[u&2155905152]||0,ft(a.Ha,h++,b,f[L]),u<<=1;h>p&&(p=h);b<v&&(v=b);b>=E&&(E=b+1)}if(h>=a.F){h=0;if(++b>a.J)break;c+=I}}G||(a.ma=!0);m<a.F&&(a.Ca.putImageData(a.Ha,0,0,m,v,p-m,E-v),a.L.drawImage(a.Ba,0,0,a.F,a.J,0,0,a.Z,
|
||||
a.la))}}}}function au(a,b){var c=0;a=Gd(a.H)-b.yh;0>a&&(b.yh=a,a=-a|0);a%b.th>b.pn&&(c|=1);a%b.wh>b.rn&&(c|=9);b.hi=a/b.wh|0;return c}l.Em=function(a,b){return du(this,this.Y,a,b)};l.jo=function(a,b,c){var d=this.Y;d.Hg=d.ec;d.ec=b&31;w(this,a,b,c,"CRTC.INDX")};l.Dm=function(a,b){return eu(this,this.Y,a,b)};l.io=function(a,b,c){fu(this,this.Y,a,b,c)};l.Fm=function(a,b){return gu(this,this.Y,b)};l.ko=function(a,b,c){a=this.Y;w(this,a.port+4,b,c,"MODE");a.Xc=b;Ts(this,!1)};
|
||||
|
|
@ -813,8 +813,8 @@ a.C,ua)||Ny(a,a.aa,ua)||Ny(a,a.O,ua)||a.P("breakpoint missing: "+Oy(ua)):"i"==T?
|
|||
(db&&(db+=","),db+=xb);db+=",state,symbols";a.P("dump memory commands:");a.P("\tdb [a] [#] dump # bytes at address a");a.P("\tdw [a] [#] dump # words at address a");a.P("\tdd [a] [#] dump # dwords at address a");a.P("\tdh [#] [#] dump # instructions from history");a.P("\tdi [#] dump descriptor info for IDT #");a.P("\tds [#] dump descriptor info for selector #");db.length&&a.P("dump extension commands:\n\t"+db)}else if("state"==cb){var sc=rB(a.pa,!0);sc?"console"==Sa?console.log(sc):
|
||||
(iB(a),a.P(sc)):a.P("powerOff() error")}else if("symbols"==cb)for(var ib=0;ib<a.F.length;ib++){var df=a.F[ib],Ld;for(Ld in df.Gd)if("."!=Ld.charAt(0)){var ef=df.Gd[Ld],xg=ef.o;if(void 0!==xg){var ff=ef.s;void 0===ff&&(ff=df.U);var yg=df.Gd[Ld].l;yg&&(Ld=yg);a.P(Dy(xg,ff)+" "+Ld)}}}else{if("ds"==za||"dg"==za||"dl"==za)za="d",ca=[za,"desc",cb];"d"==za&&"page"==cb&&(za="dp",ca.shift());if("dp"==za){ca.shift();var tm=ca[0];if(tm){var Sg=a.Sb(Yy(a,tm));if(-1===Sg)a.P("invalid address: "+tm);else{var pf,
|
||||
Qa=null;if(80386<=a.H.ca){var qf=a.ka,Qa={};Qa.Lk=(Sg&-4194304)>>>20;Qa.Vi=a.H.Wc+Qa.Lk;Qa.nb=qf.aa[(Qa.Vi&qf.B)>>>qf.A];Qa.Cj=Qa.nb.Od(Qa.Lk);Qa.Mk=(Sg&4190208)>>>10;Qa.Wi=(Qa.Cj&-4096)+Qa.Mk;Qa.ob=qf.aa[(Qa.Wi&qf.B)>>>qf.A];Qa.Dj=Qa.ob.Od(Qa.Mk);Qa.wl=(Qa.Dj&-4096)+(Sg&4095)}if(pf=Qa){a.P("linear PDE addr PDE PTE addr PTE physical");a.P("--------- ---------- -------- ---------- -------- ----------");var xe="%"+q(Sg),xe=xe+(" %%"+cz(pf.Vi,pf.Cj)),xe=
|
||||
xe+(" %%"+cz(pf.Wi,pf.Dj,!0)),xe=xe+(" %%"+q(pf.wl));a.P(xe)}else a.P("unsupported operation")}}else a.P("missing address")}else{if("d"==za){if("disk"==cb){ca[0]="l";ca[1]="json";mB(a,ca);break a}for(xb in Ub)if(ca[1]==xb){var Dt=a.Ba[xb];Dt?(ca.shift(),ca.shift(),Dt(ca)):a.P("no dump registered for "+cb);break a}cb||(za=a.ib||"db")}else a.ib=za;if("dh"==za){var Et=cb,Ft=Sa,Gt="",Ht=0,Lc=a.oa,kd=a.W;if(kd.length){var wc=+Et||a.Xa,Tg=+Ft||10;isNaN(wc)?wc=Tg:Gt="more ";wc>kd.length&&(a.P("note: only "+
|
||||
kd.length+" available"),wc=kd.length);Lc-=wc;0>Lc&&(null==kd[kd.length-1].U?(wc=Lc+wc,Lc=0):Lc+=kd.length);var um=[];"call"==Ft&&(Tg=1E5,um=["CALL"]);for(void 0!==Et&&a.P(wc+" instructions earlier:");0<Tg&&Lc!=a.oa;){var ye=kd[Lc++];if(null==ye.U)break;var Ug=qy(a,ye.Ja,ye.U,ye.ya,ye.type,ye.Hb,ye.dc),hC=wc--,It=fA(a,Ug,"history",hC);(!um.length||0<=It.indexOf(um[0]))&&a.P(It);Ug.Ge&&(Lc+=Ug.Ge,Tg-=Ug.Ge,wc-=Ug.Ge);Lc>=kd.length&&(Lc=0);a.Xa=wc;Ht++;Tg--}}Ht||(a.P("no "+Gt+"history available"),a.Xa=
|
||||
xe+(" %%"+cz(pf.Wi,pf.Dj,!0)),xe=xe+(" %%"+q(pf.wl));a.P(xe)}else a.P("unsupported operation")}}else a.P("missing address")}else{if("d"==za){if("disk"==cb){ca[0]="l";ca[1]="json";mB(a,ca);break a}for(xb in Ub)if(ca[1]==xb){var Dt=a.Ba[xb];Dt?(ca.shift(),ca.shift(),Dt(ca)):a.P("no dump registered for "+cb);break a}cb||(za=a.ib||"db")}else a.ib=za;if("dh"==za){var Et=cb,Ft=Sa,Gt="",Ht=0,Mc=a.oa,kd=a.W;if(kd.length){var wc=+Et||a.Xa,Tg=+Ft||10;isNaN(wc)?wc=Tg:Gt="more ";wc>kd.length&&(a.P("note: only "+
|
||||
kd.length+" available"),wc=kd.length);Mc-=wc;0>Mc&&(null==kd[kd.length-1].U?(wc=Mc+wc,Mc=0):Mc+=kd.length);var um=[];"call"==Ft&&(Tg=1E5,um=["CALL"]);for(void 0!==Et&&a.P(wc+" instructions earlier:");0<Tg&&Mc!=a.oa;){var ye=kd[Mc++];if(null==ye.U)break;var Ug=qy(a,ye.Ja,ye.U,ye.ya,ye.type,ye.Hb,ye.dc),hC=wc--,It=fA(a,Ug,"history",hC);(!um.length||0<=It.indexOf(um[0]))&&a.P(It);Ug.Ge&&(Mc+=Ug.Ge,Tg-=Ug.Ge,wc-=Ug.Ge);Mc>=kd.length&&(Mc=0);a.Xa=wc;Ht++;Tg--}}Ht||(a.P("no "+Gt+"history available"),a.Xa=
|
||||
void 0)}else if("di"==za){ca.shift();var vm=ca[0];if(vm){var Vg=fy(a,vm);if(void 0===Vg||0>Vg||255<Vg)a.P("invalid vector: "+vm);else{var Jt="&",Kt=!!(a.H.qa&1),Lt=!1,Zi=a.H.Pb+(Vg<<(Kt?3:2)),Mt=a.H.ja(Zi+0),iC=a.H.ja(Zi+2);Kt&&(Jt="#",a.H.ja(Zi+4)&2048&&(Lt=!0,Mt|=a.H.ja(Zi+6)<<16));a.P("dumpIDT("+sa(Vg)+"): "+Jt+q(iC,4)+":"+q(Mt,Lt?8:4))}}else a.P("no IDT vector")}else if("dt"==za)ca.shift(),a.P("no information");else{var rf=Yy(a,cb);if(rf&&(null!=rf.U||null!=rf.ya)){var $i=0;Sa&&("l"==Sa.charAt(0)&&
|
||||
(Sa=Sa.substr(1)||rb),$i=fy(a,Sa)>>>0,65536<$i&&($i=65536));for(var Wg="",sf="dd"==za?4:"dw"==za?2:1,aj=sf*$i||128,jC=aj+15>>4||1;jC--&&0<aj;){var Xg=0,wm=0,Yg,xm="",Nt="",cb=Oy(rf);for(Yg=4==sf?16:a.D;0<Yg&&0<aj;Yg--){var bj=a.Ia(rf,1),Xg=Xg|bj<<(wm++<<3);wm==sf&&(xm+=8==a.D?ra(Xg,3*sf):q(Xg,2*sf),xm+=1==sf?9==Yg?"-":" ":" ",Xg=wm=0);Nt+=32<=bj&&128>bj?String.fromCharCode(bj):".";aj--}Wg&&(Wg+="\n");Wg+=cb+" "+xm+(Yg?"":" "+Nt)}Wg&&a.P(Wg);a.Ma=rf}}}}}break;case "e":if("else"==g[0])break;var cj=
|
||||
1,Ot=255,Pt=a.Ia,Qt=a.fc;"ew"==g[0]&&(cj=2,Ot=65535,Pt=a.Yc,Qt=a.kl);var Rt=cj<<1,St=g[1];if(null==St)a.P("edit memory commands:"),a.P("\teb [a] [...] edit bytes at address a"),a.P("\tew [a] [...] edit words at address a");else{var dj=Yy(a,St);if(dj)for(var ej=2;ej<g.length;ej++){var Zg=ly(a,g[ej]);if(void 0===Zg){a.P("unrecognized value: "+g[ej]);break}Zg&~Ot&&a.P("warning: "+q(Zg)+" exceeds "+cj+"-byte value");var kC=Pt.call(a,dj);a.P("changing "+Oy(dj)+" from "+q(kC,Rt,!0)+" to "+q(Zg,Rt,!0));
|
||||
|
|
@ -858,8 +858,8 @@ wy,[119,R|S|X,uB|4096]],[[155,R|V|4096,W|V|4096],wy,[98,R|V|X],[96,R|V|X],[95,R|
|
|||
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},Gy={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};eb(function(){for(var a=Cb(document,"pcx86","debugger"),b=0;b<a.length;b++){var c=a[b],d=zb(c),d=new py(d);Bb(d,c)}});
|
||||
function KB(a,b,c){pb.call(this,"Computer",a,67108864);this.da.Yb=!1;LB(this,b);this.N=Bd(this,"autoPower",a);this.B=0;this.aa=a.busWidth||a.buswidth;this.A=MB;this.L=null;this.I=this.Z=!1;this.ea=Bd(this,"url")||"";this.ha=(Math.random()+.1).toString(36).substr(2,12);this.C=NB(this);if(this.H=yb("CPU",this.id)){this.ba=yb("Debugger",this.id);this.G=[];for(b=null;b=Zb(this,"Video",b);)this.G.push(b);this.ka=new oc({id:this.ye+".bus",busWidth:this.aa},this.H,this.ba);var d,e=vb(this.id);if((this.D=
|
||||
yb("Panel",this.id))&&this.D.Je)for(b=0;b<e.length;b++)d=e[b],d.Da=this.D.Da,d.P=this.D.P,d.Je=this.D.Je;this.P("PCx86 v1.35.1\nCopyright \u00a9 2012-2017 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.uc&&d.uc(this,this.ka,this.H,this.ba);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.K=d:this.A=parseInt(d,10));d=!1;e=Xa("state");e||(d=!0,e=Bd(this,"state",a));e&&(b=this.W=e,d||(this.I=!0,this.A=MB),this.A&&(this.M=
|
||||
new Zf(this,"1.35.1"),this.M.load()?b=null:delete this.M));!b&&this.A&&(b=OB(this))&&(this.I=!0);if(b){var f=this;Na(b,null,!0,function(a,b,c){c?(f.K=null,f.I=!1,f.Da("Unable to load machine state from server (error "+c+(b?": "+Ba(b):"")+")")):(f.L=b,f.Z=!0);Lb(f)})}else Lb(this);this.na.power||(this.N=!0);!c&&this.N&&PB(this,this.Mf)}else kb("Unable to find CPU component")}ba(KB,pb);
|
||||
yb("Panel",this.id))&&this.D.Je)for(b=0;b<e.length;b++)d=e[b],d.Da=this.D.Da,d.P=this.D.P,d.Je=this.D.Je;this.P("PCx86 v1.35.1\nCopyright \u00a9 2012-2017 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.uc&&d.uc(this,this.ka,this.H,this.ba);b=null;d=Bd(this,"resume");void 0!==d&&(1<d.length?b=this.K=d:this.A=parseInt(d,10));d=!1;e=Xa("state");e||(d=!0,e=Bd(this,"state",a));e&&(b=this.W=e,d||(this.I=!0,this.A=MB),this.A&&
|
||||
(this.M=new Zf(this,"1.35.1"),this.M.load()?b=null:delete this.M));!b&&this.A&&(b=OB(this))&&(this.I=!0);if(b){var f=this;Na(b,null,!0,function(a,b,c){c?(f.K=null,f.I=!1,f.Da("Unable to load machine state from server (error "+c+(b?": "+Ba(b):"")+")")):(f.L=b,f.Z=!0);Lb(f)})}else Lb(this);this.na.power||(this.N=!0);!c&&this.N&&PB(this,this.Mf)}else kb("Unable to find CPU component")}ba(KB,pb);
|
||||
function LB(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){kb(d.message+" ("+c+")")}}a.J=b}function Bd(a,b,c){var d=Xa(b);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 PB(a,b,c){for(var d=vb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Kb(f)){Kb(f,function(){PB(a,b,c)});return}}b.call(a,c)}
|
||||
function QB(a,b){var c=new Zf(a,"1.35.1",RB);if(c.load()&&SB(c)){var d=c.get(TB),e=b?b.get(TB):"unknown";d!=e&&(a.Da("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}l=KB.prototype;
|
||||
l.Mf=function(a){void 0===a&&(a=this.A||(this.L?UB:MB));if(!this.B){this.B++;var b=!1,c=!1;this.Y=!1;var d=this.M||new Zf(this,"1.35.1");if(a==VB)b=!0;else if(a>MB){if(d.load(this.L)){this.F=new Zf(this,"1.35.1",WB);this.F.load()&&(XB(this,d)&&(a=YB),ZB(this.F));this.F.set(TB,Ea());$B(this.F);var e=this.A&&!this.I;if(a==UB||ub("Click OK to restore the previous PCx86 machine state, or CANCEL to reset the machine.")){if(c=SB(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&
|
||||
|
|
|
|||
|
|
@ -86,9 +86,9 @@ Wi:25,Ti:20,Vi:28,sj:13,uj:21,rj:16,tj:24,Yi:13,$i:21,Xi:16,Zi:24,We:2,Ve:7,Wg:5
|
|||
ub.prototype.toString=function(){this.B||(this.B="#"+oa(this.A[0],2)+oa(this.A[1],2)+oa(this.A[2],2));return this.B};function vb(a,b,c,d){this.x=a;this.y=b;this.wc=c;this.A=d}vb.prototype.contains=function(a,b){return a>=this.x&&a<this.x+this.wc&&b>=this.y&&b<this.y+this.A};function wb(a,b,c,d){void 0===d&&(d=b>=c>>2);d?(b=new vb(a.x,a.y,a.wc,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new vb(a.x,a.y,a.wc*b/c|0,a.A),a.x+=b.wc,a.wc-=b.wc);return b}
|
||||
function xb(a){t.call(this,"Panel",a);this.F=this.G=this.K=-1}ba(xb,t);k=xb.prototype;k.wb=function(a,b,c,d){return this.oa&&this.oa.wb(a,b,c,d)||this.U&&this.U.wb(a,b,c,d)||this.B&&this.B.wb(a,b,c,d)?!0:t.prototype.wb.call(this,a,b,c,d)};k.ic=function(a,b,c,d){this.oa=a;this.ma=b;this.U=c;this.Ea=d;this.B=yb(a,"Keyboard")};k.Ob=function(a,b){b||Ab();return!0};k.Nb=function(){return!0};k.ie=function(a,b){a.button||(this.K=b?0:-1,Bb(this,a,b))};k.tg=function(a){Bb(this,a)};
|
||||
function Bb(a,b,c){var d=Cb/null.offsetWidth,e=Db/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.K||(a.K=Math.abs(a.F-d)>Math.abs(a.G-b)?1:2),1==a.K?b=a.G:2==a.K&&(d=a.F));a.F=d;a.G=b;if(0<=d&&d<Cb&&0<=b&&b<Db){a:{c=d;if(c<Eb&&a.A&&a.A.be)for(f=0;f<a.A.be.length;f++)if(e=a.A.be[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.A.Ee[f],g=Ba(Fb.Fj,a.A.hg[d.Bk]),f=g*a.ma.A,d=(g+d.dd)*a.ma.A-1;0<b&&(f+=e.wc*(b-1)*a.ca);f+=c*a.ca;f|=0;f>d&&(f=d);c=
|
||||
f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ea)){b=c;if(a.context&&a.M&&a.O){e=Gb-Hb;f=a.M.width;a.O.fillStyle=Ib;a.O.fillRect(0,e,f,Hb);Jb(a,e+Lb,a.M,a.O);a.V=a.ga.width/24|0;if(null==b)Mb(a,"Mouse over memory to dump");else for(Mb(a,oa(b,8,!0),null,0,1),d=1;16>=d;d++){for(var g="",h=1;8>=h;h++){var l;l=a.ma;var m=b++;l=l.X[(m&l.D)>>>l.B].Ad(m&l.C,m);Mb(a,oa(l,2),null,1);g+=32<=l&&128>l?String.fromCharCode(l):"."}Mb(a,g,null,0,1)}a.context.drawImage(a.M,0,e,f,Hb,a.Ca,a.Ha,a.ta,a.xa)}a.ea=c}}}
|
||||
function Nb(a,b,c,d){a.A.Ee[a.A.di++]={Bk:b,dd:c,type:d};return Aa(Fb,b,c,0,d)}function Jb(a,b,c,d){var e,f=null.style.color,g=a.qa=10;a.C=g;a.H=b;a.I=a.Z=Lb;e||(e=a.X||a.Z+"px "+Ob);a.L=a.X=e;c&&(a.ga=c);d&&(a.D=d,a.ja=f||"white")}function Mb(a,b,c,d,e){a.D.font=a.L;a.D.fillStyle=a.ja;a.D.fillText(b,a.C,a.H);a.C+=a.V;null!=c&&(16!=a.Ba?b=c.toString():(b=8>a.pa?"0x":"",b+=oa(c,a.pa)),a.D.fillText(b,a.C,a.H),a.C+=a.V);d&&(a.C+=a.V*d);e&&(a.C=a.qa,a.H+=(a.I+2)*(e||1))}
|
||||
function Ab(){for(var a=!1,b=hb(document,"pcx86","panel"),c=0;c<b.length;c++){var d=b[c],e=eb(d),f=cb(e.id);f||(a=!0,f=new xb(e));gb(f,d);a&&pb(f)}}var Cb=1280,Db=720,Lb=18,Ob="Monaco, Lucida Console, Courier New",Eb=3*Cb>>2,Pb=Db,Gb=Db,Ib="black",Hb=Db>>1;Pa(Ab);
|
||||
f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ea)){b=c;if(a.context&&a.M&&a.O){e=Gb-Hb;f=a.M.width;a.O.fillStyle=Ib;a.O.fillRect(0,e,f,Hb);Jb(a,e+Kb,a.M,a.O);a.V=a.ga.width/24|0;if(null==b)Mb(a,"Mouse over memory to dump");else for(Mb(a,oa(b,8,!0),null,0,1),d=1;16>=d;d++){for(var g="",h=1;8>=h;h++){var l;l=a.ma;var m=b++;l=l.X[(m&l.D)>>>l.B].Ad(m&l.C,m);Mb(a,oa(l,2),null,1);g+=32<=l&&128>l?String.fromCharCode(l):"."}Mb(a,g,null,0,1)}a.context.drawImage(a.M,0,e,f,Hb,a.Ca,a.Ha,a.ta,a.xa)}a.ea=c}}}
|
||||
function Nb(a,b,c,d){a.A.Ee[a.A.di++]={Bk:b,dd:c,type:d};return Aa(Fb,b,c,0,d)}function Jb(a,b,c,d){var e,f=null.style.color,g=a.qa=10;a.C=g;a.H=b;a.I=a.Z=Kb;e||(e=a.X||a.Z+"px "+Ob);a.L=a.X=e;c&&(a.ga=c);d&&(a.D=d,a.ja=f||"white")}function Mb(a,b,c,d,e){a.D.font=a.L;a.D.fillStyle=a.ja;a.D.fillText(b,a.C,a.H);a.C+=a.V;null!=c&&(16!=a.Ba?b=c.toString():(b=8>a.pa?"0x":"",b+=oa(c,a.pa)),a.D.fillText(b,a.C,a.H),a.C+=a.V);d&&(a.C+=a.V*d);e&&(a.C=a.qa,a.H+=(a.I+2)*(e||1))}
|
||||
function Ab(){for(var a=!1,b=hb(document,"pcx86","panel"),c=0;c<b.length;c++){var d=b[c],e=eb(d),f=cb(e.id);f||(a=!0,f=new xb(e));gb(f,d);a&&pb(f)}}var Cb=1280,Db=720,Kb=18,Ob="Monaco, Lucida Console, Courier New",Eb=3*Cb>>2,Pb=Db,Gb=Db,Ib="black",Hb=Db>>1;Pa(Ab);
|
||||
function Qb(a,b,c){t.call(this,"Bus",a);this.U=b;this.Ea=c;this.F=a.busWidth||20;this.K=Math.pow(2,this.F);this.W=this.D=this.K-1|0;this.B=32==this.F||20>=this.F?12:24>=this.F?14:15;this.A=1<<this.B;this.V=this.A>>2;this.C=this.A-1;this.H=this.K/this.A|0;this.L=this.H-1;this.I=[];this.J=[];this.M=[];this.O=[];a=new u;Rb(a,this.Ea);this.X=Array(this.H);for(b=0;b<this.H;b++)this.X[b]=a;a=this.U;b=this.X;c=this.B;a.Oc=a.X=b;a.yb=c;a.xh=1<<a.yb;a.xb=a.xh-1;a.nf=b.length;a.ye=a.nf-1;a=this.U;a.ze=a.Ic=
|
||||
this.D;pb(this)}ba(Qb,t);k=Qb.prototype;k.reset=function(){Sb(this,!0)};k.Ob=function(a,b){b||this.reset();return!0};
|
||||
function Tb(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.B;0<g&&h<a.X.length;){var l=a.X[h],m=h*a.A,q=a.A-(f-m);q>g&&(q=g);if(l&&l.size){if(l.type==d&&l.controller==e){if(f+g<=l.ee)return l.xe+=l.ee-f,l.ee=f,!0;if(f>=l.ee+l.xe){q=l.size-(f-m);q>g&&(q=g);l.xe=f-l.ee+q;f=m+a.A;g-=q;h++;continue}}return Ub(a,Vb,f,g)}f=new u(f,q,a.A,d,e);Rb(f,a.Ea,l);a.X[h++]=f;f=m+a.A;g-=q}return 0>=g?(e=a.U,e.pa&-2147483648&&Wb(e),a.U.aa.Ib||a.status(Math.floor(c/1024)+"Kb "+Xb[d]+" at "+oa(b)),!0):Ub(a,Yb,b,c)}
|
||||
|
|
@ -528,8 +528,8 @@ function Zp(a,b,c,d){if(d)a.wa("Unable to load font ROM (error "+d+": "+b+")");e
|
|||
function Dq(a,b){if(1==b)return a.ga[0]=Eq[yq],a.ga[1]=Eq[wq],a.ga;if(2==b){var c=a.C.ef;if(a.C===a.A){var d=a.A.rc[0],c=d&7;d&16&&(c|=8);18!=a.A.rc[1]&&(c|=32)}a.ga[0]=Eq[c&15];c=c&32?Fq:Gq;for(d=0;d<c.length;d++)a.ga[d+1]=Eq[c[d]];return a.ga}if(a.I===a.rb)return Eq;a.Ga&&b&&!a.ga[16]&&(a.Ga=!1);if(!a.Ga){var c=a.A,d=c.we,e,f,g,h;if(8==b)for(e=0;256>e;e++)f=d[e]||0,g=f<<2&252,h=f>>4&252,f=f>>10&252,a.ga[e]=[g,h,f,255];else{var l=d&&d[255];b=null!=c.rc[15]?c.rc:Hq;for(e=0;16>e;e++)f=b[e]&63,l?(f|=
|
||||
(c.rc[20]&12)<<4,c.rc[16]&128&&(f&=-49,f|=(c.rc[20]&3)<<4),f=d[f],g=f<<2&252,h=f>>4&252,f=f>>10&252):(g=(f&4?170:0)|(f&32?85:0),h=(f&2?170:0)|(f&16?85:0),f=(f&1?170:0)|(f&8?85:0)),a.ga[e]=[g,h,f,255]}a.Ga=!0}return a.ga}function Tn(a,b,c,d){a.nb=b;a.Va=c;a.Ca=d}
|
||||
function tq(a,b){var c=!1;if(window&&a.nb&&(!b||a.G)){b=0;var d=a.Ca?a.Ca:8,e=Dq(a);null!=a.Va[0]&&Iq(a,Jq,a.Va[0],b,d,8,a.nb,e)&&(c=!0);b=a.Ca?0:2048;d=a.Ca?a.Ca:9;null!=a.Va[1]&&(Iq(a,Kq,a.Va[1],b,d,14,a.nb,Lq,Mq)&&(c=!0),a.Ca&&Iq(a,a.Ma,a.Va[1],0,a.Ca,14,a.nb,e)&&(c=!0))}return c}function Iq(a,b,c,d,e,f,g,h,l){var m=!1;null!=c&&(Nq(a,b,c,d,e,f,g,h,l)&&(m=!0),a.md&&Nq(a,b<<1,c,d,e,f,g,h,l)&&(m=!0));return m}
|
||||
function Nq(a,b,c,d,e,f,g,h,l){var m=!1,q=b&1?0:1,y=a.ta[b],w=16>h.length?h.length:16;y||(y={oc:e<<q,pc:f<<q,ae:Array(w),Xh:h.slice(0,w),De:l,ig:Array(w)});for(l=0;l<w;l++){var z=h[l],B=y.ae[l]?y.Xh[l]:[];if(z[0]!==B[0]||z[1]!==B[1]||z[2]!==B[2]){var m=y,B=l,S=q,X=c,ca=d,$a=e,zb=f,Vh=g,Pt=[0,0,0,0],Pf=document.createElement("canvas");Pf.width=m.oc<<4;Pf.height=m.pc<<4;var Om=Pf.getContext("2d"),Kb,pd,pc,Qf=8>zb||!ca?zb:8,Wh=Om.createImageData(m.oc,m.pc);for(Kb=0;256>Kb;Kb++){for(pc=0;pc<zb;pc++)for(var Qt=
|
||||
m.De&&B&1&&pc>=zb-2,Rt=Vh[pc<Qf?X+Kb*Qf+pc:ca+Kb*Qf+pc-Qf],Xh=0;Xh<=S;Xh++)for(pd=0;pd<$a;pd++){var Pm=pd<<S,Qm=(pc<<S)+Xh,Rm=Qt||Rt&128>>(8<=pd&&192<=Kb&&223>=Kb?7:pd)?z:Pt;Oq(Wh,Pm,Qm,Rm);S&&Oq(Wh,Pm+1,Qm,Rm)}Om.putImageData(Wh,(Kb&15)*m.oc,(Kb>>4)*m.pc)}m.ae[B]="#"+oa(z[0],2)+oa(z[1],2)+oa(z[2],2);m.Xh[B]=z;m.ig[B]=Pf;m=!0}}a.ta[b]=y;return m}function Pq(a){0<a.ua||0<=a.Z?0>a.ya&&(a.ya=0):a.ya=-1}
|
||||
function Nq(a,b,c,d,e,f,g,h,l){var m=!1,q=b&1?0:1,y=a.ta[b],w=16>h.length?h.length:16;y||(y={oc:e<<q,pc:f<<q,ae:Array(w),Xh:h.slice(0,w),De:l,ig:Array(w)});for(l=0;l<w;l++){var z=h[l],B=y.ae[l]?y.Xh[l]:[];if(z[0]!==B[0]||z[1]!==B[1]||z[2]!==B[2]){var m=y,B=l,S=q,X=c,ca=d,$a=e,zb=f,Vh=g,Pt=[0,0,0,0],Pf=document.createElement("canvas");Pf.width=m.oc<<4;Pf.height=m.pc<<4;var Om=Pf.getContext("2d"),Lb,pd,pc,Qf=8>zb||!ca?zb:8,Wh=Om.createImageData(m.oc,m.pc);for(Lb=0;256>Lb;Lb++){for(pc=0;pc<zb;pc++)for(var Qt=
|
||||
m.De&&B&1&&pc>=zb-2,Rt=Vh[pc<Qf?X+Lb*Qf+pc:ca+Lb*Qf+pc-Qf],Xh=0;Xh<=S;Xh++)for(pd=0;pd<$a;pd++){var Pm=pd<<S,Qm=(pc<<S)+Xh,Rm=Qt||Rt&128>>(8<=pd&&192<=Lb&&223>=Lb?7:pd)?z:Pt;Oq(Wh,Pm,Qm,Rm);S&&Oq(Wh,Pm+1,Qm,Rm)}Om.putImageData(Wh,(Lb&15)*m.oc,(Lb>>4)*m.pc)}m.ae[B]="#"+oa(z[0],2)+oa(z[1],2)+oa(z[2],2);m.Xh[B]=z;m.ig[B]=Pf;m=!0}}a.ta[b]=y;return m}function Pq(a){0<a.ua||0<=a.Z?0>a.ya&&(a.ya=0):a.ya=-1}
|
||||
function Cq(a){if(a.G){for(var b=10;15>=b;b++)if(null==a.C.Oa[b])return;var c=a.C.Oa[10],b=c&31,d=a.C.Oa[11]&31,e=a.C.Oa[9]&31,f=!1;a.C===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Qq(a);else{c=a.C.Oa[15]+((a.C.Oa[14]&63)<<8);a.Z!=c&&(Qq(a),a.Z=c);d=d-b+1;if(a.Uc!=b||a.xc!=d)a.Uc=b,a.xc=d;a.xa=e+1;Pq(a)}}}function Qq(a){if(0<=a.Z){if(void 0!==a.L){var b=Rq<<8,c=a.L[a.Z];if(c&b){var c=c&~b,b=a.Z%a.F,d=a.Z/a.F|0;a.G&&a.ta[a.G]&&(a.Ba&&Sq(a,b,d,c,a.Ba),Sq(a,b,d,c));a.L[a.Z]=c}}a.Z=-1}}
|
||||
function Tq(a){var b,c=a.C;a.yc=!1;var d=c.kd[5];if(null!=d){b=lp;var e=np,f=c.kd[3]&31;switch(d&3){case 0:if(f){e=np|32;switch(f&24){case 8:e=np|96;break;case 16:e=np|160;break;case 24:e=np|224}c.zc=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.Ma==Un&&(e=3,c.zc=f&7)}d&8&&(b=1280);c=c.Qd[4];null!=c&&(c&4||(b|=mp,e|=op),d&64&&(c&8&&(b|=16384,e|=4),a.yc=!0));b|=e}return b}
|
||||
function Uq(a,b){var c=a.C;return c&&null!=b&&b!=c.ug?(c.ag(b),a.ma.ag(c.Ya,c.Ab,c.rg(),!0),!0):!1}
|
||||
|
|
@ -661,8 +661,8 @@ var Jt="Hard Drive",Mt=["XTC","ATC","COMPAQ"],Kt=[{0:[306,2],1:[375,8],2:[306,6]
|
|||
112,mu=144,tu=145,nu=240,uu=2,hu=4,Au=0,Bu=2,Eu=0,Fu=1,wu=3,Gu=5,Hu=8,Ju=10,Ut=12,Lu=15,Cu=224,Du=228,It=0,yu=4,Nu=20,Ht=0,Vt=1,Ot=2,St=4,Tt=8,Nt=32,zt={800:Z.prototype.Gl,801:Z.prototype.Hl,802:Z.prototype.Fl},yt={496:Z.prototype.fk,497:Z.prototype.Nk,498:Z.prototype.Pk,499:Z.prototype.Qk,500:Z.prototype.Lk,501:Z.prototype.Kk,502:Z.prototype.Mk,503:Z.prototype.Rk},Bt={800:Z.prototype.Wm,801:Z.prototype.Zm,802:Z.prototype.Ym,803:Z.prototype.Xm,807:Z.prototype.nh,811:Z.prototype.nh,815:Z.prototype.nh},
|
||||
At={496:Z.prototype.gm,497:Z.prototype.lm,498:Z.prototype.jm,499:Z.prototype.km,500:Z.prototype.fm,501:Z.prototype.em,502:Z.prototype.hm,503:Z.prototype.dm,1014:Z.prototype.im};Pa(function(){for(var a=hb(document,"pcx86","hdc"),b=0;b<a.length;b++){var c=a[b],d=eb(c),d=new Z(d);gb(d,c)}});
|
||||
function Pu(a,b,c){t.call(this,"Computer",a);this.aa.Pb=!1;Qu(this,b);this.M=Pc(this,"autoPower",a);this.C=0;this.Z=a.busWidth||a.buswidth;this.A=Ru;this.K=null;this.H=this.X=!1;this.ca=Pc(this,"url")||"";this.ga=(Math.random()+.1).toString(36).substr(2,12);this.B=Su(this);if(this.U=db("CPU",this.id)){this.Ea=db("Debugger",this.id);this.G=[];for(b=null;b=yb(this,"Video",b);)this.G.push(b);this.ma=new Qb({id:this.Wd+".bus",busWidth:this.Z},this.U,this.Ea);var d,e=bb(this.id);if((this.D=db("Panel",
|
||||
this.id))&&this.D.Ef)for(b=0;b<e.length;b++)d=e[b],d.wa=this.D.wa,d.Zb=this.D.Zb,d.Ef=this.D.Ef;this.Zb("PCx86 v1.35.1\nCopyright \u00a9 2012-2017 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.ic&&d.ic(this,this.ma,this.U,this.Ea);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.J=d:this.A=parseInt(d,10));d=!1;e=La("state");e||(d=!0,e=Pc(this,"state",a));e&&(b=this.V=e,d||(this.H=!0,this.A=Ru),this.A&&(this.L=new Te(this,
|
||||
"1.35.1"),this.L.load()?b=null:delete this.L));!b&&this.A&&(b=Tu(this))&&(this.H=!0);if(b){var f=this;Ea(b,null,!0,function(a,b,c){c?(f.J=null,f.H=!1,f.wa("Unable to load machine state from server (error "+c+(b?": "+ua(b):"")+")")):(f.K=b,f.X=!0);pb(f)})}else pb(this);this.ia.power||(this.M=!0);!c&&this.M&&Uu(this,this.af)}else r("Unable to find CPU component")}ba(Pu,t);
|
||||
this.id))&&this.D.Ef)for(b=0;b<e.length;b++)d=e[b],d.wa=this.D.wa,d.Zb=this.D.Zb,d.Ef=this.D.Ef;this.Zb("PCx86 v1.35.1\nCopyright \u00a9 2012-2017 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.ic&&d.ic(this,this.ma,this.U,this.Ea);b=null;d=Pc(this,"resume");void 0!==d&&(1<d.length?b=this.J=d:this.A=parseInt(d,10));d=!1;e=La("state");e||(d=!0,e=Pc(this,"state",a));e&&(b=this.V=e,d||(this.H=!0,this.A=Ru),this.A&&(this.L=
|
||||
new Te(this,"1.35.1"),this.L.load()?b=null:delete this.L));!b&&this.A&&(b=Tu(this))&&(this.H=!0);if(b){var f=this;Ea(b,null,!0,function(a,b,c){c?(f.J=null,f.H=!1,f.wa("Unable to load machine state from server (error "+c+(b?": "+ua(b):"")+")")):(f.K=b,f.X=!0);pb(f)})}else pb(this);this.ia.power||(this.M=!0);!c&&this.M&&Uu(this,this.af)}else r("Unable to find CPU component")}ba(Pu,t);
|
||||
function Qu(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){r(d.message+" ("+c+")")}}a.I=b}function Pc(a,b,c){var d=La(b);void 0===d&&a.I&&(d=a.I[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}function Uu(a,b,c){for(var d=bb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!ob(f)){ob(f,function(){Uu(a,b,c)});return}}b.call(a,c)}
|
||||
function Vu(a,b){var c=new Te(a,"1.35.1",Wu);if(c.load()&&Xu(c)){var d=c.get(Yu),e=b?b.get(Yu):"unknown";d!=e&&(a.wa("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}k=Pu.prototype;
|
||||
k.af=function(a){void 0===a&&(a=this.A||(this.K?Zu:Ru));if(!this.C){this.C++;var b=!1,c=!1;this.W=!1;var d=this.L||new Te(this,"1.35.1");if(a==$u)b=!0;else if(a>Ru){if(d.load(this.K)){this.F=new Te(this,"1.35.1",av);this.F.load()&&(bv(this,d)&&(a=cv),dv(this.F));this.F.set(Yu,wa());ev(this.F);var e=this.A&&!this.H;if(a==Zu||ab("Click OK to restore the previous PCx86 machine state, or CANCEL to reset the machine.")){if(c=Xu(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&
|
||||
|
|
@ -681,7 +681,7 @@ function lv(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=ov(a,"1.35.1");d.d
|
|||
function yb(a,b,c){a=bb(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}function bd(a,b){if(a.G.length){var c=0,d=0;!b&&window&&(c=window.scrollX,d=window.scrollY);a=a.G[0];a.D&&a.D.focus();!b&&window&&window.scrollTo(c,d)}}
|
||||
function cd(a,b){a.U&&(a=a.U,a.si&&(b||!a.aa.Ib||a.aa.ki)&&(zf(a,"EAX",a.F),zf(a,"EBX",a.G),zf(a,"ECX",a.H),zf(a,"EDX",a.K),zf(a,"ESP",C(a)),zf(a,"EBP",a.L),zf(a,"ESI",a.J),zf(a,"EDI",a.I),zf(a,"CS",a.ga.ha),zf(a,"DS",a.Ca.ha),zf(a,"SS",a.W.ha),zf(a,"ES",a.ua.ha),zf(a,"EIP",E(a)),b=Dd(a),zf(a,"PS",b),zf(a,"V",b&2048),zf(a,"D",b&1024),zf(a,"I",b&512),zf(a,"T",b&256),zf(a,"S",b&128),zf(a,"Z",b&64),zf(a,"A",b&16),zf(a,"P",b&4),zf(a,"C",b&1),80386==a.ba&&(zf(a,"FS",a.qb.ha),zf(a,"GS",a.rb.ha),zf(a,"CR0",
|
||||
a.pa),zf(a,"CR2",a.Xd),zf(a,"CR3",a.nd))),b=a.ia.speed)&&(b.textContent=a.aa.Ib&&a.R.wd?a.R.wd.toFixed(2)+"Mhz":"Stopped")}
|
||||
function id(a,b){for(var c=0;c<a.G.length;c++)mq(a.G[c],b);if(a.D&&(a=a.D,a.na)){Jb(a,Lb,a.J,a.la);if(a.Aa){b=a.ma;var c=a.A,d,e;null==d&&(d=0);null==e&&(e=b.K-d|0);c||(c={og:0,dd:0,hg:[]});var f=d>>>b.B;d=d+e-1>>>b.B;c.og=0;for(c.dd=0;f<=d;)e=b.X[f],c.og+=e.size,e.size&&(c.hg.push(Aa(Fb,f,0,0,e.type)),c.dd++),f++;a.A=c;a.ca=a.A.dd*a.ma.A/(Eb*Pb);d=0;a.A.di=0;a.A.Ee||(a.A.Ee=[]);e=-1;b=0;for(var g=-1,c=0;c<a.A.dd;c++){var h=a.A.hg[c],f=Ba(Fb.type,h),h=Ba(Fb.Fj,h);if(f!=e||h!=g+1)(g=c-b)&&(d+=Nb(a,
|
||||
function id(a,b){for(var c=0;c<a.G.length;c++)mq(a.G[c],b);if(a.D&&(a=a.D,a.na)){Jb(a,Kb,a.J,a.la);if(a.Aa){b=a.ma;var c=a.A,d,e;null==d&&(d=0);null==e&&(e=b.K-d|0);c||(c={og:0,dd:0,hg:[]});var f=d>>>b.B;d=d+e-1>>>b.B;c.og=0;for(c.dd=0;f<=d;)e=b.X[f],c.og+=e.size,e.size&&(c.hg.push(Aa(Fb,f,0,0,e.type)),c.dd++),f++;a.A=c;a.ca=a.A.dd*a.ma.A/(Eb*Pb);d=0;a.A.di=0;a.A.Ee||(a.A.Ee=[]);e=-1;b=0;for(var g=-1,c=0;c<a.A.dd;c++){var h=a.A.hg[c],f=Ba(Fb.type,h),h=Ba(Fb.Fj,h);if(f!=e||h!=g+1)(g=c-b)&&(d+=Nb(a,
|
||||
b,g,e)),e=f,b=c;g=h}d+=Nb(a,b,c-b,e);e=a.A.qk!=d;a.A.qk=d;if(e){e=new vb(0,0,a.J.width,a.J.height);a.A.be=[];b=a.A.dd;for(d=0;d<a.A.di;d++)c=a.A.Ee[d].dd,a.A.be.push(wb(e,c,b,!d)),b-=c;for(d=0;d<a.A.be.length;d++)e=a.A.Ee[d],b=c=a.A.be[d],f=a.la,(g=Lc[e.type])||(g=new ub),f.strokeStyle="black",f.strokeRect(b.x,b.y,b.wc,b.A),f.fillStyle="string"==typeof g?g:g.toString(),f.fillRect(b.x,b.y,b.wc,b.A),b=a,f=c,b.L=b.X,b.I=b.Z,c=f.x+(f.wc>>1),g=f.y+(f.A>>1),h=f.A,f.wc<f.A&&(h=f.wc,b.W=!0,b.D.save(),b.D.translate(c,
|
||||
g),b.D.rotate(-Math.PI/2),c=g=0),h<b.I&&(b.I=h,b.L=b.I+"px "+Ob),f=g,b.C=c,b.H=f,b=a,e=Xb[e.type]+" ("+(e.dd*a.ma.A/1024|0)+"Kb)",b.D.font=b.L,b.C-=b.D.measureText(e).width>>1,b.H+=(b.I>>1)-2,Mb(b,e),b.W&&(b.D.restore(),b.W=!1)}}else Mb(a,"This space intentionally left blank");a.context.drawImage(a.J,0,0,a.J.width,a.J.height,a.Ga,a.Ka,a.ua,a.ya);a.na=!1}}var av="failsafe",Wu="validate",Yu="timestamp",iv="version",jv="url",kv="browser",fv="user",$u=-1,Ru=0,Zu=1,cv=2,mv=3;
|
||||
Pa(function(){for(var a=hb(document,"pcx86-machine"),b=0;b<a.length;b++)for(var c=a[b],d=eb(c),c=hb(c,"pcx86","computer"),e=0;e<c.length;e++){var f=c[e],g=eb(f),g=new Pu(g,d,!0);gb(g,f);g.M&&Uu(g,g.af)}});Qa.show.push(function(){for(var a=hb(document,"pcx86","computer"),b=0;b<a.length;b++){var c=eb(a[b]);if(c=db("Computer",c.id))c.aa.hf=!1,c.ea&&!c.aa.Pb&&c.af($u)}});
|
||||
|
|
|
|||
|
|
@ -235,7 +235,7 @@ class Computer extends Component {
|
|||
}
|
||||
|
||||
var sStatePath = null;
|
||||
var sResume = parmsComputer['resume'];
|
||||
var sResume = this.getMachineParm('resume');
|
||||
if (sResume !== undefined) {
|
||||
/*
|
||||
* Decide whether the 'resume' property is a number or the path of a state file to resume.
|
||||
|
|
|
|||
|
|
@ -106,7 +106,7 @@ function oc(a,b,c){pb.call(this,"Bus",a);this.H=b;this.ba=c;this.I=a.busWidth||2
|
|||
function rc(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.A;0<g&&h<a.aa.length;){var k=a.aa[h],m=h*a.C,p=a.C-(f-m);p>g&&(p=g);if(k&&k.size){if(k.type==d&&k.controller==e){if(f+g<=k.ya)return k.we+=k.ya-f,k.ya=f,!0;if(f>=k.ya+k.we){p=k.size-(f-m);p>g&&(p=g);k.we=f-k.ya+p;f=m+a.C;g-=p;h++;continue}}return tc(a,uc,f,g)}f=new x(f,p,a.C,d,e);pc(f,a.ba,k);a.aa[h++]=f;f=m+a.C;g-=p}return 0>=g?(vc(a.H),a.H.da.vb||a.status(Math.floor(c/1024)+"Kb "+xc[d]+" at "+q(b)),!0):tc(a,yc,b,c)}
|
||||
function qc(a,b){32==a.I?b?a.J&&(zc(a,1048576,1048576,a.J),a.J=null):a.J||(a.J=Ac(a,1048576,1048576),zc(a,1048576,1048576,Ac(a,0,1048576))):20<a.I&&(b=a.B&-1048577|(b?1048576:0),b!=a.B&&(a.B=b,a.H&&(a=a.H,a.ff=a.ed=b)))}l.Mg=function(a,b,c,d){if(!(a&this.D||!b||b&this.D)){for(var e=a>>>this.A;0<b;){var f=this.aa[e];if(!f.controller)return tc(this,Bc,a,b,d);Cc(f,c,!0);b-=this.C;e++}return!0}return tc(this,Dc,a,b)};
|
||||
function Ec(a,b,c){if(!(b&a.D||!c||c&a.D)){for(var d=b>>>a.A;0<c;){var e=a.aa[d];b=new x(b);pc(b,a.ba,e);a.aa[d++]=b;b=d*a.C;c-=a.C}vc(a.H);return!0}return tc(a,Fc,b,c)}function Ac(a,b,c){var d=[];for(b>>>=a.A;0<c&&b<a.aa.length;)d.push(a.aa[b++]),c-=a.C;return d}
|
||||
function zc(a,b,c,d,e){for(var f=0,g=b>>>a.A;0<c&&g<a.aa.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new x(b),m=k,p=e,v=a.ba;m.id=h.id|1;m.we=h.we;m.size=h.size;p&&(m.type=p,m.D=p==Gc);Qb?(m.I=h.I,m.G=h.G,m.Pa=h.Pa,m.Sd=h.Sd,m.X=h.X,Cc(m,Hc?Ic:Jc)):(m.X=h.X,Cc(m,Kc));pc(m,v,h);h=k}a.aa[g++]=h;c-=a.C}}l.Ia=function(a){return this.aa[(a&this.B)>>>this.A].Bc(a&this.D,a)};function Mc(a,b){var c=b&a.D,d=(b&a.B)>>>a.A;return c!=a.D?a.aa[d].Of(c,b):a.aa[d++].$d(c,b)|a.aa[d&a.W].$d(0,b+1)<<8}
|
||||
function zc(a,b,c,d,e){for(var f=0,g=b>>>a.A;0<c&&g<a.aa.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new x(b),m=k,p=e,v=a.ba;m.id=h.id|1;m.we=h.we;m.size=h.size;p&&(m.type=p,m.D=p==Gc);Qb?(m.I=h.I,m.G=h.G,m.Pa=h.Pa,m.Sd=h.Sd,m.X=h.X,Cc(m,Hc?Ic:Jc)):(m.X=h.X,Cc(m,Kc));pc(m,v,h);h=k}a.aa[g++]=h;c-=a.C}}l.Ia=function(a){return this.aa[(a&this.B)>>>this.A].Bc(a&this.D,a)};function Lc(a,b){var c=b&a.D,d=(b&a.B)>>>a.A;return c!=a.D?a.aa[d].Of(c,b):a.aa[d++].$d(c,b)|a.aa[d&a.W].$d(0,b+1)<<8}
|
||||
l.fc=function(a,b){this.aa[(a&this.B)>>>this.A].Dc(a&this.D,b&255,a)};function Nc(a,b,c){var d=b&a.D,e=(b&a.B)>>>a.A;d!=a.D?a.aa[e].ti(d,c&65535,b):(a.aa[e++].cf(d,c&255,b),a.aa[e&a.W].cf(0,c>>8&255,b+1))}l.yj=function(){return null};
|
||||
function Oc(a,b){var c=0,d=[],e=!a.J&&a.N==a.B;e||qc(a,!0);for(var f=0;f<a.M;f++){var g=a.aa[f];if(b&&g.type!=Gc||g.Oa||g.sj){d[c++]=f;var h=c++;if(g=g.save()){for(var k=0,m=0,p=[];k<g.length;){for(var v=g[k],u=k+1;u<g.length&&g[u]===v;)u++;p[m++]=u-k;p[m++]=v;k=u}p.length<g.length&&(g=p)}d[h]=g}}e||qc(a,!1);d[c]=e;return d}function Pc(a,b){if(null==b)return a.K=!a.K,a.K;void 0===a.F[b]&&(a.F[b]=[null,!1]);a.F[b][1]=!a.F[b][1];return a.F[b][1]}
|
||||
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.F[k]?kb("Input port "+sa(k)+" already registered"):f.F[k]=[h,!1]}}function Rc(a,b,c,d){for(var e=0,f=0;0<c;){var g=a.F[b],h=a.Y[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.ba&&a.K!=g[1]&&Sc(a.ba,b,m)):a.ba&&(Pb(a.ba,a,b,null,d),a.K&&Sc(a.ba,b,m));e|=m<<f;f+=h<<3;b+=h;c-=h}return e}
|
||||
|
|
@ -577,8 +577,8 @@ a.Qb=a.Z;a.Rb=a.la;b=a.Z-a.F*a.qa;c=a.la-a.J*a.ta;0<b&&(a.vc=b>>1,a.Qb-=b);0<c&&
|
|||
function jt(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.va[a.I];h.kf&&(d=h.kf[d]);var k=g>>4&15;h.kf&&(k=h.kf[k]);e?(b*=h.Fc,c*=h.Gc,e.fillStyle=h.Ce[k],e.fillRect(b,c,h.Fc,h.Gc)):(b=b*a.qa+a.vc,c=c*a.ta+a.zc,a.L.fillStyle=h.Ce[k],a.L.fillRect(b,c,a.qa,a.ta));g&Ct&&(k=(f&15)*h.Fc,f=(f>>4)*h.Gc,e?e.drawImage(h.Ug[d],k,f,h.Fc,h.Gc,b,c,h.Fc,h.Gc):a.L.drawImage(h.Ug[d],k,f,h.Fc,h.Gc,b,c,a.qa,a.ta));g&it&&(f=a.od,g=a.Hc,e?(a.za&&a.za!==h.Gc&&(f=f*h.Gc/a.za|0,g=g*h.Gc/a.za|0),e.fillStyle=h.Ce[d],e.fillRect(b,
|
||||
c+f,h.Fc,g)):(a.za&&a.za!==a.ta&&(f=f*a.ta/a.za|0,g=g*a.ta/a.za|0),a.L.fillStyle=h.Ce[d],a.L.fillRect(b,c+f,a.qa,g)))}
|
||||
function Es(a,b){if(a.da.Yb){var c=!1,d=a.B;d&&(d!==a.A?d.Xc&8&&(c=!0):d.xd&32&&(c=!0));if(c||b){if(b)Bt(a);else if(void 0===a.M)return;var e=!1;!(b||++a.Bd&15)&&0<=a.Aa&&(a.Aa++,e=!0);var f=0,g=a.Wc,h=a.bb,c=h,k=c+a.Ob;a.oa>=qt&&(h=c=655360,k=c+65536);if(au(a,d)&8||d.Ze&&d.Ze<d.hi){var m=(d.Sa[sr]<<8)+d.Sa[tr]|0;d.kd!==m&&(d.kd=m,At(a));d.Ze=0}m=d.kd;a.I&&(m<<=1);c+=m;m=a.Xa;a.La>=dq&&d.Sa[19]&&d.Sa[19]<<1!=d.Sa[1]+1&&(a.Ma=d.Sa[19]<<(a.I?1:d.Sa[20]&64?3:4),m=(a.Ma*(a.J-1)+a.F)/a.Eb|0,a.oa<=Js&&
|
||||
(m<<=1));c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(b=!b&&a.ma){b=a.ka;for(var p=!0,v=c>>>b.A;0<m&&v<b.aa.length;)b.aa[v].Oa&&(b.aa[v].Oa=p=!1,b.aa[v].sj=!0),m-=b.C,v++;b=p}if(b){if(!e)return;if(!a.xa){f=a.aa-d.kd;if(0>f)return;g=f+1}}if(a.I){if(a.va[a.I]){d=f;f=0;e=a.xa=0;h=Ct<<8;b=1048575;p=a.B.Xc&32;a.La>=dq&&(p=a.B.Cc[16]&8);m=a.aa-a.B.kd;p&&(e=Ns<<8,b&=~e,a.Aa&2||(b&=~h));for(c+=d<<1;c<k&&d<g;)p=Mc(a.ka,c),p|=h,p&e&&(a.xa++,p&=b),d==m&&(p|=a.Aa&1?it<<8:0),a.ma&&p===a.M[d]||(jt(a,d%a.F,d/a.F|0,p,a.Ca),
|
||||
a.M[d]=p,f++),c+=2,d++;a.ma=!0;f&&a.Ca&&a.L.drawImage(a.Ba,0,0,a.Ya,a.eb,a.vc,a.zc,a.Qb,a.Rb);gt(a)}}else if(a.Pb){var g=k,u,k=c,d=a.xa=0,f=a.Eb,e=16==f?65536:196608,h=16==f?1:2;b=Vs(a,h);for(var p=m=0,v=a.F,E=0,G=a.J,I=0;k<g;){u=Mc(a.ka,k);if(a.ma&&u===a.M[d])m+=f;else{a.M[d]=u;u=u>>8|(u&255)<<8;var J=e,T=16;m<v&&(v=m);for(var L=0;L<f;L++){var ua=(u&(J>>=h))>>(T-=h);ft(a.Ha,m++,p,b[ua])}m>E&&(E=m);p<G&&(G=p);p>=I&&(I=p+1)}k+=2;d++;if(m>=a.F){m=0;p+=2;if(p>a.J)break;p==a.J&&(p=1,k=c+a.Pb)}}a.ma=!0;
|
||||
(m<<=1));c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(b=!b&&a.ma){b=a.ka;for(var p=!0,v=c>>>b.A;0<m&&v<b.aa.length;)b.aa[v].Oa&&(b.aa[v].Oa=p=!1,b.aa[v].sj=!0),m-=b.C,v++;b=p}if(b){if(!e)return;if(!a.xa){f=a.aa-d.kd;if(0>f)return;g=f+1}}if(a.I){if(a.va[a.I]){d=f;f=0;e=a.xa=0;h=Ct<<8;b=1048575;p=a.B.Xc&32;a.La>=dq&&(p=a.B.Cc[16]&8);m=a.aa-a.B.kd;p&&(e=Ns<<8,b&=~e,a.Aa&2||(b&=~h));for(c+=d<<1;c<k&&d<g;)p=Lc(a.ka,c),p|=h,p&e&&(a.xa++,p&=b),d==m&&(p|=a.Aa&1?it<<8:0),a.ma&&p===a.M[d]||(jt(a,d%a.F,d/a.F|0,p,a.Ca),
|
||||
a.M[d]=p,f++),c+=2,d++;a.ma=!0;f&&a.Ca&&a.L.drawImage(a.Ba,0,0,a.Ya,a.eb,a.vc,a.zc,a.Qb,a.Rb);gt(a)}}else if(a.Pb){var g=k,u,k=c,d=a.xa=0,f=a.Eb,e=16==f?65536:196608,h=16==f?1:2;b=Vs(a,h);for(var p=m=0,v=a.F,E=0,G=a.J,I=0;k<g;){u=Lc(a.ka,k);if(a.ma&&u===a.M[d])m+=f;else{a.M[d]=u;u=u>>8|(u&255)<<8;var J=e,T=16;m<v&&(v=m);for(var L=0;L<f;L++){var ua=(u&(J>>=h))>>(T-=h);ft(a.Ha,m++,p,b[ua])}m>E&&(E=m);p<G&&(G=p);p>=I&&(I=p+1)}k+=2;d++;if(m>=a.F){m=0;p+=2;if(p>a.J)break;p==a.J&&(p=1,k=c+a.Pb)}}a.ma=!0;
|
||||
v<a.F&&(a.Ca.putImageData(a.Ha,0,0,v,G,E-v,I-G),a.L.drawImage(a.Ba,0,0,a.F,a.J,0,0,a.Z,a.la))}else if(a.Pc){g=h;f=a.xa=0;e=Vs(a,8);h=a.B.fd;m=b=0;p=a.F;v=0;E=a.J;G=0;I=a.B.ae[4]&8?4:1;u=a.B.Cc[19]&15;for(J=a.Ma>a.F?a.Ma-a.F-u>>3:0;c<k;){d=h[c-g];L=4;u||(a.ma&&d===a.M[f]?(b+=L,L=0):a.M[f]=d,f++);if(L){b<p&&(p=b);for(T=0;T<L;T++)ft(a.Ha,b++,m,e[d&255]),d>>=8;b>v&&(v=b);m<E&&(E=m);m>=G&&(G=m+1)}c+=I;if(b>=a.F){b=0;if(++m>a.J)break;c+=J}}u||(a.ma=!0);p<a.F&&(a.Ca.putImageData(a.Ha,0,0,p,E,v-p,G-E),a.L.drawImage(a.Ba,
|
||||
0,0,a.F,a.J,0,0,a.Z,a.la))}else{g=h;d=a.xa=0;f=Vs(a);e=a.B.fd;b=h=0;m=a.F;p=0;v=a.J;E=0;G=a.B.Cc[19]&15;for(I=a.Ma>a.F?a.Ma-a.F-G>>3:0;c<k;){u=c++-g;u=e[u];T=8;G?h?(J=a.F-h,T>J&&(T=J)):(u<<=G,T-=G,a.ma=!1):(a.ma&&u===a.M[d]?(h+=T,T=0):a.M[d]=u,d++);if(T){h<m&&(m=h);for(J=0;J<T;J++)L=cu[u&2155905152]||0,ft(a.Ha,h++,b,f[L]),u<<=1;h>p&&(p=h);b<v&&(v=b);b>=E&&(E=b+1)}if(h>=a.F){h=0;if(++b>a.J)break;c+=I}}G||(a.ma=!0);m<a.F&&(a.Ca.putImageData(a.Ha,0,0,m,v,p-m,E-v),a.L.drawImage(a.Ba,0,0,a.F,a.J,0,0,a.Z,
|
||||
a.la))}}}}function au(a,b){var c=0;a=Gd(a.H)-b.yh;0>a&&(b.yh=a,a=-a|0);a%b.th>b.pn&&(c|=1);a%b.wh>b.rn&&(c|=9);b.hi=a/b.wh|0;return c}l.Em=function(a,b){return du(this,this.Y,a,b)};l.jo=function(a,b,c){var d=this.Y;d.Hg=d.ec;d.ec=b&31;w(this,a,b,c,"CRTC.INDX")};l.Dm=function(a,b){return eu(this,this.Y,a,b)};l.io=function(a,b,c){fu(this,this.Y,a,b,c)};l.Fm=function(a,b){return gu(this,this.Y,b)};l.ko=function(a,b,c){a=this.Y;w(this,a.port+4,b,c,"MODE");a.Xc=b;Ts(this,!1)};
|
||||
|
|
@ -813,8 +813,8 @@ a.C,ua)||Ny(a,a.aa,ua)||Ny(a,a.O,ua)||a.P("breakpoint missing: "+Oy(ua)):"i"==T?
|
|||
(db&&(db+=","),db+=xb);db+=",state,symbols";a.P("dump memory commands:");a.P("\tdb [a] [#] dump # bytes at address a");a.P("\tdw [a] [#] dump # words at address a");a.P("\tdd [a] [#] dump # dwords at address a");a.P("\tdh [#] [#] dump # instructions from history");a.P("\tdi [#] dump descriptor info for IDT #");a.P("\tds [#] dump descriptor info for selector #");db.length&&a.P("dump extension commands:\n\t"+db)}else if("state"==cb){var sc=rB(a.pa,!0);sc?"console"==Sa?console.log(sc):
|
||||
(iB(a),a.P(sc)):a.P("powerOff() error")}else if("symbols"==cb)for(var ib=0;ib<a.F.length;ib++){var df=a.F[ib],Ld;for(Ld in df.Gd)if("."!=Ld.charAt(0)){var ef=df.Gd[Ld],xg=ef.o;if(void 0!==xg){var ff=ef.s;void 0===ff&&(ff=df.U);var yg=df.Gd[Ld].l;yg&&(Ld=yg);a.P(Dy(xg,ff)+" "+Ld)}}}else{if("ds"==za||"dg"==za||"dl"==za)za="d",ca=[za,"desc",cb];"d"==za&&"page"==cb&&(za="dp",ca.shift());if("dp"==za){ca.shift();var tm=ca[0];if(tm){var Sg=a.Sb(Yy(a,tm));if(-1===Sg)a.P("invalid address: "+tm);else{var pf,
|
||||
Qa=null;if(80386<=a.H.ca){var qf=a.ka,Qa={};Qa.Lk=(Sg&-4194304)>>>20;Qa.Vi=a.H.Wc+Qa.Lk;Qa.nb=qf.aa[(Qa.Vi&qf.B)>>>qf.A];Qa.Cj=Qa.nb.Od(Qa.Lk);Qa.Mk=(Sg&4190208)>>>10;Qa.Wi=(Qa.Cj&-4096)+Qa.Mk;Qa.ob=qf.aa[(Qa.Wi&qf.B)>>>qf.A];Qa.Dj=Qa.ob.Od(Qa.Mk);Qa.wl=(Qa.Dj&-4096)+(Sg&4095)}if(pf=Qa){a.P("linear PDE addr PDE PTE addr PTE physical");a.P("--------- ---------- -------- ---------- -------- ----------");var xe="%"+q(Sg),xe=xe+(" %%"+cz(pf.Vi,pf.Cj)),xe=
|
||||
xe+(" %%"+cz(pf.Wi,pf.Dj,!0)),xe=xe+(" %%"+q(pf.wl));a.P(xe)}else a.P("unsupported operation")}}else a.P("missing address")}else{if("d"==za){if("disk"==cb){ca[0]="l";ca[1]="json";mB(a,ca);break a}for(xb in Ub)if(ca[1]==xb){var Dt=a.Ba[xb];Dt?(ca.shift(),ca.shift(),Dt(ca)):a.P("no dump registered for "+cb);break a}cb||(za=a.ib||"db")}else a.ib=za;if("dh"==za){var Et=cb,Ft=Sa,Gt="",Ht=0,Lc=a.oa,kd=a.W;if(kd.length){var wc=+Et||a.Xa,Tg=+Ft||10;isNaN(wc)?wc=Tg:Gt="more ";wc>kd.length&&(a.P("note: only "+
|
||||
kd.length+" available"),wc=kd.length);Lc-=wc;0>Lc&&(null==kd[kd.length-1].U?(wc=Lc+wc,Lc=0):Lc+=kd.length);var um=[];"call"==Ft&&(Tg=1E5,um=["CALL"]);for(void 0!==Et&&a.P(wc+" instructions earlier:");0<Tg&&Lc!=a.oa;){var ye=kd[Lc++];if(null==ye.U)break;var Ug=qy(a,ye.Ja,ye.U,ye.ya,ye.type,ye.Hb,ye.dc),hC=wc--,It=fA(a,Ug,"history",hC);(!um.length||0<=It.indexOf(um[0]))&&a.P(It);Ug.Ge&&(Lc+=Ug.Ge,Tg-=Ug.Ge,wc-=Ug.Ge);Lc>=kd.length&&(Lc=0);a.Xa=wc;Ht++;Tg--}}Ht||(a.P("no "+Gt+"history available"),a.Xa=
|
||||
xe+(" %%"+cz(pf.Wi,pf.Dj,!0)),xe=xe+(" %%"+q(pf.wl));a.P(xe)}else a.P("unsupported operation")}}else a.P("missing address")}else{if("d"==za){if("disk"==cb){ca[0]="l";ca[1]="json";mB(a,ca);break a}for(xb in Ub)if(ca[1]==xb){var Dt=a.Ba[xb];Dt?(ca.shift(),ca.shift(),Dt(ca)):a.P("no dump registered for "+cb);break a}cb||(za=a.ib||"db")}else a.ib=za;if("dh"==za){var Et=cb,Ft=Sa,Gt="",Ht=0,Mc=a.oa,kd=a.W;if(kd.length){var wc=+Et||a.Xa,Tg=+Ft||10;isNaN(wc)?wc=Tg:Gt="more ";wc>kd.length&&(a.P("note: only "+
|
||||
kd.length+" available"),wc=kd.length);Mc-=wc;0>Mc&&(null==kd[kd.length-1].U?(wc=Mc+wc,Mc=0):Mc+=kd.length);var um=[];"call"==Ft&&(Tg=1E5,um=["CALL"]);for(void 0!==Et&&a.P(wc+" instructions earlier:");0<Tg&&Mc!=a.oa;){var ye=kd[Mc++];if(null==ye.U)break;var Ug=qy(a,ye.Ja,ye.U,ye.ya,ye.type,ye.Hb,ye.dc),hC=wc--,It=fA(a,Ug,"history",hC);(!um.length||0<=It.indexOf(um[0]))&&a.P(It);Ug.Ge&&(Mc+=Ug.Ge,Tg-=Ug.Ge,wc-=Ug.Ge);Mc>=kd.length&&(Mc=0);a.Xa=wc;Ht++;Tg--}}Ht||(a.P("no "+Gt+"history available"),a.Xa=
|
||||
void 0)}else if("di"==za){ca.shift();var vm=ca[0];if(vm){var Vg=fy(a,vm);if(void 0===Vg||0>Vg||255<Vg)a.P("invalid vector: "+vm);else{var Jt="&",Kt=!!(a.H.qa&1),Lt=!1,Zi=a.H.Pb+(Vg<<(Kt?3:2)),Mt=a.H.ja(Zi+0),iC=a.H.ja(Zi+2);Kt&&(Jt="#",a.H.ja(Zi+4)&2048&&(Lt=!0,Mt|=a.H.ja(Zi+6)<<16));a.P("dumpIDT("+sa(Vg)+"): "+Jt+q(iC,4)+":"+q(Mt,Lt?8:4))}}else a.P("no IDT vector")}else if("dt"==za)ca.shift(),a.P("no information");else{var rf=Yy(a,cb);if(rf&&(null!=rf.U||null!=rf.ya)){var $i=0;Sa&&("l"==Sa.charAt(0)&&
|
||||
(Sa=Sa.substr(1)||rb),$i=fy(a,Sa)>>>0,65536<$i&&($i=65536));for(var Wg="",sf="dd"==za?4:"dw"==za?2:1,aj=sf*$i||128,jC=aj+15>>4||1;jC--&&0<aj;){var Xg=0,wm=0,Yg,xm="",Nt="",cb=Oy(rf);for(Yg=4==sf?16:a.D;0<Yg&&0<aj;Yg--){var bj=a.Ia(rf,1),Xg=Xg|bj<<(wm++<<3);wm==sf&&(xm+=8==a.D?ra(Xg,3*sf):q(Xg,2*sf),xm+=1==sf?9==Yg?"-":" ":" ",Xg=wm=0);Nt+=32<=bj&&128>bj?String.fromCharCode(bj):".";aj--}Wg&&(Wg+="\n");Wg+=cb+" "+xm+(Yg?"":" "+Nt)}Wg&&a.P(Wg);a.Ma=rf}}}}}break;case "e":if("else"==g[0])break;var cj=
|
||||
1,Ot=255,Pt=a.Ia,Qt=a.fc;"ew"==g[0]&&(cj=2,Ot=65535,Pt=a.Yc,Qt=a.kl);var Rt=cj<<1,St=g[1];if(null==St)a.P("edit memory commands:"),a.P("\teb [a] [...] edit bytes at address a"),a.P("\tew [a] [...] edit words at address a");else{var dj=Yy(a,St);if(dj)for(var ej=2;ej<g.length;ej++){var Zg=ly(a,g[ej]);if(void 0===Zg){a.P("unrecognized value: "+g[ej]);break}Zg&~Ot&&a.P("warning: "+q(Zg)+" exceeds "+cj+"-byte value");var kC=Pt.call(a,dj);a.P("changing "+Oy(dj)+" from "+q(kC,Rt,!0)+" to "+q(Zg,Rt,!0));
|
||||
|
|
@ -858,8 +858,8 @@ wy,[119,R|S|X,uB|4096]],[[155,R|V|4096,W|V|4096],wy,[98,R|V|X],[96,R|V|X],[95,R|
|
|||
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},Gy={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};eb(function(){for(var a=Cb(document,"pcx86","debugger"),b=0;b<a.length;b++){var c=a[b],d=zb(c),d=new py(d);Bb(d,c)}});
|
||||
function KB(a,b,c){pb.call(this,"Computer",a,67108864);this.da.Yb=!1;LB(this,b);this.N=Bd(this,"autoPower",a);this.B=0;this.aa=a.busWidth||a.buswidth;this.A=MB;this.L=null;this.I=this.Z=!1;this.ea=Bd(this,"url")||"";this.ha=(Math.random()+.1).toString(36).substr(2,12);this.C=NB(this);if(this.H=yb("CPU",this.id)){this.ba=yb("Debugger",this.id);this.G=[];for(b=null;b=Zb(this,"Video",b);)this.G.push(b);this.ka=new oc({id:this.ye+".bus",busWidth:this.aa},this.H,this.ba);var d,e=vb(this.id);if((this.D=
|
||||
yb("Panel",this.id))&&this.D.Je)for(b=0;b<e.length;b++)d=e[b],d.Da=this.D.Da,d.P=this.D.P,d.Je=this.D.Je;this.P("PCx86 v1.35.1\nCopyright \u00a9 2012-2017 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.uc&&d.uc(this,this.ka,this.H,this.ba);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.K=d:this.A=parseInt(d,10));d=!1;e=Xa("state");e||(d=!0,e=Bd(this,"state",a));e&&(b=this.W=e,d||(this.I=!0,this.A=MB),this.A&&(this.M=
|
||||
new Zf(this,"1.35.1"),this.M.load()?b=null:delete this.M));!b&&this.A&&(b=OB(this))&&(this.I=!0);if(b){var f=this;Na(b,null,!0,function(a,b,c){c?(f.K=null,f.I=!1,f.Da("Unable to load machine state from server (error "+c+(b?": "+Ba(b):"")+")")):(f.L=b,f.Z=!0);Lb(f)})}else Lb(this);this.na.power||(this.N=!0);!c&&this.N&&PB(this,this.Mf)}else kb("Unable to find CPU component")}ba(KB,pb);
|
||||
yb("Panel",this.id))&&this.D.Je)for(b=0;b<e.length;b++)d=e[b],d.Da=this.D.Da,d.P=this.D.P,d.Je=this.D.Je;this.P("PCx86 v1.35.1\nCopyright \u00a9 2012-2017 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.uc&&d.uc(this,this.ka,this.H,this.ba);b=null;d=Bd(this,"resume");void 0!==d&&(1<d.length?b=this.K=d:this.A=parseInt(d,10));d=!1;e=Xa("state");e||(d=!0,e=Bd(this,"state",a));e&&(b=this.W=e,d||(this.I=!0,this.A=MB),this.A&&
|
||||
(this.M=new Zf(this,"1.35.1"),this.M.load()?b=null:delete this.M));!b&&this.A&&(b=OB(this))&&(this.I=!0);if(b){var f=this;Na(b,null,!0,function(a,b,c){c?(f.K=null,f.I=!1,f.Da("Unable to load machine state from server (error "+c+(b?": "+Ba(b):"")+")")):(f.L=b,f.Z=!0);Lb(f)})}else Lb(this);this.na.power||(this.N=!0);!c&&this.N&&PB(this,this.Mf)}else kb("Unable to find CPU component")}ba(KB,pb);
|
||||
function LB(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){kb(d.message+" ("+c+")")}}a.J=b}function Bd(a,b,c){var d=Xa(b);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 PB(a,b,c){for(var d=vb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Kb(f)){Kb(f,function(){PB(a,b,c)});return}}b.call(a,c)}
|
||||
function QB(a,b){var c=new Zf(a,"1.35.1",RB);if(c.load()&&SB(c)){var d=c.get(TB),e=b?b.get(TB):"unknown";d!=e&&(a.Da("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}l=KB.prototype;
|
||||
l.Mf=function(a){void 0===a&&(a=this.A||(this.L?UB:MB));if(!this.B){this.B++;var b=!1,c=!1;this.Y=!1;var d=this.M||new Zf(this,"1.35.1");if(a==VB)b=!0;else if(a>MB){if(d.load(this.L)){this.F=new Zf(this,"1.35.1",WB);this.F.load()&&(XB(this,d)&&(a=YB),ZB(this.F));this.F.set(TB,Ea());$B(this.F);var e=this.A&&!this.I;if(a==UB||ub("Click OK to restore the previous PCx86 machine state, or CANCEL to reset the machine.")){if(c=SB(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -74047,7 +74047,7 @@ class Computer extends Component {
|
|||
}
|
||||
|
||||
var sStatePath = null;
|
||||
var sResume = parmsComputer['resume'];
|
||||
var sResume = this.getMachineParm('resume');
|
||||
if (sResume !== undefined) {
|
||||
/*
|
||||
* Decide whether the 'resume' property is a number or the path of a state file to resume.
|
||||
|
|
|
|||
|
|
@ -86,9 +86,9 @@ Wi:25,Ti:20,Vi:28,sj:13,uj:21,rj:16,tj:24,Yi:13,$i:21,Xi:16,Zi:24,We:2,Ve:7,Wg:5
|
|||
ub.prototype.toString=function(){this.B||(this.B="#"+oa(this.A[0],2)+oa(this.A[1],2)+oa(this.A[2],2));return this.B};function vb(a,b,c,d){this.x=a;this.y=b;this.wc=c;this.A=d}vb.prototype.contains=function(a,b){return a>=this.x&&a<this.x+this.wc&&b>=this.y&&b<this.y+this.A};function wb(a,b,c,d){void 0===d&&(d=b>=c>>2);d?(b=new vb(a.x,a.y,a.wc,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new vb(a.x,a.y,a.wc*b/c|0,a.A),a.x+=b.wc,a.wc-=b.wc);return b}
|
||||
function xb(a){t.call(this,"Panel",a);this.F=this.G=this.K=-1}ba(xb,t);k=xb.prototype;k.wb=function(a,b,c,d){return this.oa&&this.oa.wb(a,b,c,d)||this.U&&this.U.wb(a,b,c,d)||this.B&&this.B.wb(a,b,c,d)?!0:t.prototype.wb.call(this,a,b,c,d)};k.ic=function(a,b,c,d){this.oa=a;this.ma=b;this.U=c;this.Ea=d;this.B=yb(a,"Keyboard")};k.Ob=function(a,b){b||Ab();return!0};k.Nb=function(){return!0};k.ie=function(a,b){a.button||(this.K=b?0:-1,Bb(this,a,b))};k.tg=function(a){Bb(this,a)};
|
||||
function Bb(a,b,c){var d=Cb/null.offsetWidth,e=Db/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.K||(a.K=Math.abs(a.F-d)>Math.abs(a.G-b)?1:2),1==a.K?b=a.G:2==a.K&&(d=a.F));a.F=d;a.G=b;if(0<=d&&d<Cb&&0<=b&&b<Db){a:{c=d;if(c<Eb&&a.A&&a.A.be)for(f=0;f<a.A.be.length;f++)if(e=a.A.be[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.A.Ee[f],g=Ba(Fb.Fj,a.A.hg[d.Bk]),f=g*a.ma.A,d=(g+d.dd)*a.ma.A-1;0<b&&(f+=e.wc*(b-1)*a.ca);f+=c*a.ca;f|=0;f>d&&(f=d);c=
|
||||
f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ea)){b=c;if(a.context&&a.M&&a.O){e=Gb-Hb;f=a.M.width;a.O.fillStyle=Ib;a.O.fillRect(0,e,f,Hb);Jb(a,e+Lb,a.M,a.O);a.V=a.ga.width/24|0;if(null==b)Mb(a,"Mouse over memory to dump");else for(Mb(a,oa(b,8,!0),null,0,1),d=1;16>=d;d++){for(var g="",h=1;8>=h;h++){var l;l=a.ma;var m=b++;l=l.X[(m&l.D)>>>l.B].Ad(m&l.C,m);Mb(a,oa(l,2),null,1);g+=32<=l&&128>l?String.fromCharCode(l):"."}Mb(a,g,null,0,1)}a.context.drawImage(a.M,0,e,f,Hb,a.Ca,a.Ha,a.ta,a.xa)}a.ea=c}}}
|
||||
function Nb(a,b,c,d){a.A.Ee[a.A.di++]={Bk:b,dd:c,type:d};return Aa(Fb,b,c,0,d)}function Jb(a,b,c,d){var e,f=null.style.color,g=a.qa=10;a.C=g;a.H=b;a.I=a.Z=Lb;e||(e=a.X||a.Z+"px "+Ob);a.L=a.X=e;c&&(a.ga=c);d&&(a.D=d,a.ja=f||"white")}function Mb(a,b,c,d,e){a.D.font=a.L;a.D.fillStyle=a.ja;a.D.fillText(b,a.C,a.H);a.C+=a.V;null!=c&&(16!=a.Ba?b=c.toString():(b=8>a.pa?"0x":"",b+=oa(c,a.pa)),a.D.fillText(b,a.C,a.H),a.C+=a.V);d&&(a.C+=a.V*d);e&&(a.C=a.qa,a.H+=(a.I+2)*(e||1))}
|
||||
function Ab(){for(var a=!1,b=hb(document,"pcx86","panel"),c=0;c<b.length;c++){var d=b[c],e=eb(d),f=cb(e.id);f||(a=!0,f=new xb(e));gb(f,d);a&&pb(f)}}var Cb=1280,Db=720,Lb=18,Ob="Monaco, Lucida Console, Courier New",Eb=3*Cb>>2,Pb=Db,Gb=Db,Ib="black",Hb=Db>>1;Pa(Ab);
|
||||
f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ea)){b=c;if(a.context&&a.M&&a.O){e=Gb-Hb;f=a.M.width;a.O.fillStyle=Ib;a.O.fillRect(0,e,f,Hb);Jb(a,e+Kb,a.M,a.O);a.V=a.ga.width/24|0;if(null==b)Mb(a,"Mouse over memory to dump");else for(Mb(a,oa(b,8,!0),null,0,1),d=1;16>=d;d++){for(var g="",h=1;8>=h;h++){var l;l=a.ma;var m=b++;l=l.X[(m&l.D)>>>l.B].Ad(m&l.C,m);Mb(a,oa(l,2),null,1);g+=32<=l&&128>l?String.fromCharCode(l):"."}Mb(a,g,null,0,1)}a.context.drawImage(a.M,0,e,f,Hb,a.Ca,a.Ha,a.ta,a.xa)}a.ea=c}}}
|
||||
function Nb(a,b,c,d){a.A.Ee[a.A.di++]={Bk:b,dd:c,type:d};return Aa(Fb,b,c,0,d)}function Jb(a,b,c,d){var e,f=null.style.color,g=a.qa=10;a.C=g;a.H=b;a.I=a.Z=Kb;e||(e=a.X||a.Z+"px "+Ob);a.L=a.X=e;c&&(a.ga=c);d&&(a.D=d,a.ja=f||"white")}function Mb(a,b,c,d,e){a.D.font=a.L;a.D.fillStyle=a.ja;a.D.fillText(b,a.C,a.H);a.C+=a.V;null!=c&&(16!=a.Ba?b=c.toString():(b=8>a.pa?"0x":"",b+=oa(c,a.pa)),a.D.fillText(b,a.C,a.H),a.C+=a.V);d&&(a.C+=a.V*d);e&&(a.C=a.qa,a.H+=(a.I+2)*(e||1))}
|
||||
function Ab(){for(var a=!1,b=hb(document,"pcx86","panel"),c=0;c<b.length;c++){var d=b[c],e=eb(d),f=cb(e.id);f||(a=!0,f=new xb(e));gb(f,d);a&&pb(f)}}var Cb=1280,Db=720,Kb=18,Ob="Monaco, Lucida Console, Courier New",Eb=3*Cb>>2,Pb=Db,Gb=Db,Ib="black",Hb=Db>>1;Pa(Ab);
|
||||
function Qb(a,b,c){t.call(this,"Bus",a);this.U=b;this.Ea=c;this.F=a.busWidth||20;this.K=Math.pow(2,this.F);this.W=this.D=this.K-1|0;this.B=32==this.F||20>=this.F?12:24>=this.F?14:15;this.A=1<<this.B;this.V=this.A>>2;this.C=this.A-1;this.H=this.K/this.A|0;this.L=this.H-1;this.I=[];this.J=[];this.M=[];this.O=[];a=new u;Rb(a,this.Ea);this.X=Array(this.H);for(b=0;b<this.H;b++)this.X[b]=a;a=this.U;b=this.X;c=this.B;a.Oc=a.X=b;a.yb=c;a.xh=1<<a.yb;a.xb=a.xh-1;a.nf=b.length;a.ye=a.nf-1;a=this.U;a.ze=a.Ic=
|
||||
this.D;pb(this)}ba(Qb,t);k=Qb.prototype;k.reset=function(){Sb(this,!0)};k.Ob=function(a,b){b||this.reset();return!0};
|
||||
function Tb(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.B;0<g&&h<a.X.length;){var l=a.X[h],m=h*a.A,q=a.A-(f-m);q>g&&(q=g);if(l&&l.size){if(l.type==d&&l.controller==e){if(f+g<=l.ee)return l.xe+=l.ee-f,l.ee=f,!0;if(f>=l.ee+l.xe){q=l.size-(f-m);q>g&&(q=g);l.xe=f-l.ee+q;f=m+a.A;g-=q;h++;continue}}return Ub(a,Vb,f,g)}f=new u(f,q,a.A,d,e);Rb(f,a.Ea,l);a.X[h++]=f;f=m+a.A;g-=q}return 0>=g?(e=a.U,e.pa&-2147483648&&Wb(e),a.U.aa.Ib||a.status(Math.floor(c/1024)+"Kb "+Xb[d]+" at "+oa(b)),!0):Ub(a,Yb,b,c)}
|
||||
|
|
@ -528,8 +528,8 @@ function Zp(a,b,c,d){if(d)a.wa("Unable to load font ROM (error "+d+": "+b+")");e
|
|||
function Dq(a,b){if(1==b)return a.ga[0]=Eq[yq],a.ga[1]=Eq[wq],a.ga;if(2==b){var c=a.C.ef;if(a.C===a.A){var d=a.A.rc[0],c=d&7;d&16&&(c|=8);18!=a.A.rc[1]&&(c|=32)}a.ga[0]=Eq[c&15];c=c&32?Fq:Gq;for(d=0;d<c.length;d++)a.ga[d+1]=Eq[c[d]];return a.ga}if(a.I===a.rb)return Eq;a.Ga&&b&&!a.ga[16]&&(a.Ga=!1);if(!a.Ga){var c=a.A,d=c.we,e,f,g,h;if(8==b)for(e=0;256>e;e++)f=d[e]||0,g=f<<2&252,h=f>>4&252,f=f>>10&252,a.ga[e]=[g,h,f,255];else{var l=d&&d[255];b=null!=c.rc[15]?c.rc:Hq;for(e=0;16>e;e++)f=b[e]&63,l?(f|=
|
||||
(c.rc[20]&12)<<4,c.rc[16]&128&&(f&=-49,f|=(c.rc[20]&3)<<4),f=d[f],g=f<<2&252,h=f>>4&252,f=f>>10&252):(g=(f&4?170:0)|(f&32?85:0),h=(f&2?170:0)|(f&16?85:0),f=(f&1?170:0)|(f&8?85:0)),a.ga[e]=[g,h,f,255]}a.Ga=!0}return a.ga}function Tn(a,b,c,d){a.nb=b;a.Va=c;a.Ca=d}
|
||||
function tq(a,b){var c=!1;if(window&&a.nb&&(!b||a.G)){b=0;var d=a.Ca?a.Ca:8,e=Dq(a);null!=a.Va[0]&&Iq(a,Jq,a.Va[0],b,d,8,a.nb,e)&&(c=!0);b=a.Ca?0:2048;d=a.Ca?a.Ca:9;null!=a.Va[1]&&(Iq(a,Kq,a.Va[1],b,d,14,a.nb,Lq,Mq)&&(c=!0),a.Ca&&Iq(a,a.Ma,a.Va[1],0,a.Ca,14,a.nb,e)&&(c=!0))}return c}function Iq(a,b,c,d,e,f,g,h,l){var m=!1;null!=c&&(Nq(a,b,c,d,e,f,g,h,l)&&(m=!0),a.md&&Nq(a,b<<1,c,d,e,f,g,h,l)&&(m=!0));return m}
|
||||
function Nq(a,b,c,d,e,f,g,h,l){var m=!1,q=b&1?0:1,y=a.ta[b],w=16>h.length?h.length:16;y||(y={oc:e<<q,pc:f<<q,ae:Array(w),Xh:h.slice(0,w),De:l,ig:Array(w)});for(l=0;l<w;l++){var z=h[l],B=y.ae[l]?y.Xh[l]:[];if(z[0]!==B[0]||z[1]!==B[1]||z[2]!==B[2]){var m=y,B=l,S=q,X=c,ca=d,$a=e,zb=f,Vh=g,Pt=[0,0,0,0],Pf=document.createElement("canvas");Pf.width=m.oc<<4;Pf.height=m.pc<<4;var Om=Pf.getContext("2d"),Kb,pd,pc,Qf=8>zb||!ca?zb:8,Wh=Om.createImageData(m.oc,m.pc);for(Kb=0;256>Kb;Kb++){for(pc=0;pc<zb;pc++)for(var Qt=
|
||||
m.De&&B&1&&pc>=zb-2,Rt=Vh[pc<Qf?X+Kb*Qf+pc:ca+Kb*Qf+pc-Qf],Xh=0;Xh<=S;Xh++)for(pd=0;pd<$a;pd++){var Pm=pd<<S,Qm=(pc<<S)+Xh,Rm=Qt||Rt&128>>(8<=pd&&192<=Kb&&223>=Kb?7:pd)?z:Pt;Oq(Wh,Pm,Qm,Rm);S&&Oq(Wh,Pm+1,Qm,Rm)}Om.putImageData(Wh,(Kb&15)*m.oc,(Kb>>4)*m.pc)}m.ae[B]="#"+oa(z[0],2)+oa(z[1],2)+oa(z[2],2);m.Xh[B]=z;m.ig[B]=Pf;m=!0}}a.ta[b]=y;return m}function Pq(a){0<a.ua||0<=a.Z?0>a.ya&&(a.ya=0):a.ya=-1}
|
||||
function Nq(a,b,c,d,e,f,g,h,l){var m=!1,q=b&1?0:1,y=a.ta[b],w=16>h.length?h.length:16;y||(y={oc:e<<q,pc:f<<q,ae:Array(w),Xh:h.slice(0,w),De:l,ig:Array(w)});for(l=0;l<w;l++){var z=h[l],B=y.ae[l]?y.Xh[l]:[];if(z[0]!==B[0]||z[1]!==B[1]||z[2]!==B[2]){var m=y,B=l,S=q,X=c,ca=d,$a=e,zb=f,Vh=g,Pt=[0,0,0,0],Pf=document.createElement("canvas");Pf.width=m.oc<<4;Pf.height=m.pc<<4;var Om=Pf.getContext("2d"),Lb,pd,pc,Qf=8>zb||!ca?zb:8,Wh=Om.createImageData(m.oc,m.pc);for(Lb=0;256>Lb;Lb++){for(pc=0;pc<zb;pc++)for(var Qt=
|
||||
m.De&&B&1&&pc>=zb-2,Rt=Vh[pc<Qf?X+Lb*Qf+pc:ca+Lb*Qf+pc-Qf],Xh=0;Xh<=S;Xh++)for(pd=0;pd<$a;pd++){var Pm=pd<<S,Qm=(pc<<S)+Xh,Rm=Qt||Rt&128>>(8<=pd&&192<=Lb&&223>=Lb?7:pd)?z:Pt;Oq(Wh,Pm,Qm,Rm);S&&Oq(Wh,Pm+1,Qm,Rm)}Om.putImageData(Wh,(Lb&15)*m.oc,(Lb>>4)*m.pc)}m.ae[B]="#"+oa(z[0],2)+oa(z[1],2)+oa(z[2],2);m.Xh[B]=z;m.ig[B]=Pf;m=!0}}a.ta[b]=y;return m}function Pq(a){0<a.ua||0<=a.Z?0>a.ya&&(a.ya=0):a.ya=-1}
|
||||
function Cq(a){if(a.G){for(var b=10;15>=b;b++)if(null==a.C.Oa[b])return;var c=a.C.Oa[10],b=c&31,d=a.C.Oa[11]&31,e=a.C.Oa[9]&31,f=!1;a.C===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Qq(a);else{c=a.C.Oa[15]+((a.C.Oa[14]&63)<<8);a.Z!=c&&(Qq(a),a.Z=c);d=d-b+1;if(a.Uc!=b||a.xc!=d)a.Uc=b,a.xc=d;a.xa=e+1;Pq(a)}}}function Qq(a){if(0<=a.Z){if(void 0!==a.L){var b=Rq<<8,c=a.L[a.Z];if(c&b){var c=c&~b,b=a.Z%a.F,d=a.Z/a.F|0;a.G&&a.ta[a.G]&&(a.Ba&&Sq(a,b,d,c,a.Ba),Sq(a,b,d,c));a.L[a.Z]=c}}a.Z=-1}}
|
||||
function Tq(a){var b,c=a.C;a.yc=!1;var d=c.kd[5];if(null!=d){b=lp;var e=np,f=c.kd[3]&31;switch(d&3){case 0:if(f){e=np|32;switch(f&24){case 8:e=np|96;break;case 16:e=np|160;break;case 24:e=np|224}c.zc=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.Ma==Un&&(e=3,c.zc=f&7)}d&8&&(b=1280);c=c.Qd[4];null!=c&&(c&4||(b|=mp,e|=op),d&64&&(c&8&&(b|=16384,e|=4),a.yc=!0));b|=e}return b}
|
||||
function Uq(a,b){var c=a.C;return c&&null!=b&&b!=c.ug?(c.ag(b),a.ma.ag(c.Ya,c.Ab,c.rg(),!0),!0):!1}
|
||||
|
|
@ -661,8 +661,8 @@ var Jt="Hard Drive",Mt=["XTC","ATC","COMPAQ"],Kt=[{0:[306,2],1:[375,8],2:[306,6]
|
|||
112,mu=144,tu=145,nu=240,uu=2,hu=4,Au=0,Bu=2,Eu=0,Fu=1,wu=3,Gu=5,Hu=8,Ju=10,Ut=12,Lu=15,Cu=224,Du=228,It=0,yu=4,Nu=20,Ht=0,Vt=1,Ot=2,St=4,Tt=8,Nt=32,zt={800:Z.prototype.Gl,801:Z.prototype.Hl,802:Z.prototype.Fl},yt={496:Z.prototype.fk,497:Z.prototype.Nk,498:Z.prototype.Pk,499:Z.prototype.Qk,500:Z.prototype.Lk,501:Z.prototype.Kk,502:Z.prototype.Mk,503:Z.prototype.Rk},Bt={800:Z.prototype.Wm,801:Z.prototype.Zm,802:Z.prototype.Ym,803:Z.prototype.Xm,807:Z.prototype.nh,811:Z.prototype.nh,815:Z.prototype.nh},
|
||||
At={496:Z.prototype.gm,497:Z.prototype.lm,498:Z.prototype.jm,499:Z.prototype.km,500:Z.prototype.fm,501:Z.prototype.em,502:Z.prototype.hm,503:Z.prototype.dm,1014:Z.prototype.im};Pa(function(){for(var a=hb(document,"pcx86","hdc"),b=0;b<a.length;b++){var c=a[b],d=eb(c),d=new Z(d);gb(d,c)}});
|
||||
function Pu(a,b,c){t.call(this,"Computer",a);this.aa.Pb=!1;Qu(this,b);this.M=Pc(this,"autoPower",a);this.C=0;this.Z=a.busWidth||a.buswidth;this.A=Ru;this.K=null;this.H=this.X=!1;this.ca=Pc(this,"url")||"";this.ga=(Math.random()+.1).toString(36).substr(2,12);this.B=Su(this);if(this.U=db("CPU",this.id)){this.Ea=db("Debugger",this.id);this.G=[];for(b=null;b=yb(this,"Video",b);)this.G.push(b);this.ma=new Qb({id:this.Wd+".bus",busWidth:this.Z},this.U,this.Ea);var d,e=bb(this.id);if((this.D=db("Panel",
|
||||
this.id))&&this.D.Ef)for(b=0;b<e.length;b++)d=e[b],d.wa=this.D.wa,d.Zb=this.D.Zb,d.Ef=this.D.Ef;this.Zb("PCx86 v1.35.1\nCopyright \u00a9 2012-2017 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.ic&&d.ic(this,this.ma,this.U,this.Ea);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.J=d:this.A=parseInt(d,10));d=!1;e=La("state");e||(d=!0,e=Pc(this,"state",a));e&&(b=this.V=e,d||(this.H=!0,this.A=Ru),this.A&&(this.L=new Te(this,
|
||||
"1.35.1"),this.L.load()?b=null:delete this.L));!b&&this.A&&(b=Tu(this))&&(this.H=!0);if(b){var f=this;Ea(b,null,!0,function(a,b,c){c?(f.J=null,f.H=!1,f.wa("Unable to load machine state from server (error "+c+(b?": "+ua(b):"")+")")):(f.K=b,f.X=!0);pb(f)})}else pb(this);this.ia.power||(this.M=!0);!c&&this.M&&Uu(this,this.af)}else r("Unable to find CPU component")}ba(Pu,t);
|
||||
this.id))&&this.D.Ef)for(b=0;b<e.length;b++)d=e[b],d.wa=this.D.wa,d.Zb=this.D.Zb,d.Ef=this.D.Ef;this.Zb("PCx86 v1.35.1\nCopyright \u00a9 2012-2017 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.ic&&d.ic(this,this.ma,this.U,this.Ea);b=null;d=Pc(this,"resume");void 0!==d&&(1<d.length?b=this.J=d:this.A=parseInt(d,10));d=!1;e=La("state");e||(d=!0,e=Pc(this,"state",a));e&&(b=this.V=e,d||(this.H=!0,this.A=Ru),this.A&&(this.L=
|
||||
new Te(this,"1.35.1"),this.L.load()?b=null:delete this.L));!b&&this.A&&(b=Tu(this))&&(this.H=!0);if(b){var f=this;Ea(b,null,!0,function(a,b,c){c?(f.J=null,f.H=!1,f.wa("Unable to load machine state from server (error "+c+(b?": "+ua(b):"")+")")):(f.K=b,f.X=!0);pb(f)})}else pb(this);this.ia.power||(this.M=!0);!c&&this.M&&Uu(this,this.af)}else r("Unable to find CPU component")}ba(Pu,t);
|
||||
function Qu(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){r(d.message+" ("+c+")")}}a.I=b}function Pc(a,b,c){var d=La(b);void 0===d&&a.I&&(d=a.I[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}function Uu(a,b,c){for(var d=bb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!ob(f)){ob(f,function(){Uu(a,b,c)});return}}b.call(a,c)}
|
||||
function Vu(a,b){var c=new Te(a,"1.35.1",Wu);if(c.load()&&Xu(c)){var d=c.get(Yu),e=b?b.get(Yu):"unknown";d!=e&&(a.wa("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}k=Pu.prototype;
|
||||
k.af=function(a){void 0===a&&(a=this.A||(this.K?Zu:Ru));if(!this.C){this.C++;var b=!1,c=!1;this.W=!1;var d=this.L||new Te(this,"1.35.1");if(a==$u)b=!0;else if(a>Ru){if(d.load(this.K)){this.F=new Te(this,"1.35.1",av);this.F.load()&&(bv(this,d)&&(a=cv),dv(this.F));this.F.set(Yu,wa());ev(this.F);var e=this.A&&!this.H;if(a==Zu||ab("Click OK to restore the previous PCx86 machine state, or CANCEL to reset the machine.")){if(c=Xu(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&
|
||||
|
|
@ -681,7 +681,7 @@ function lv(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=ov(a,"1.35.1");d.d
|
|||
function yb(a,b,c){a=bb(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}function bd(a,b){if(a.G.length){var c=0,d=0;!b&&window&&(c=window.scrollX,d=window.scrollY);a=a.G[0];a.D&&a.D.focus();!b&&window&&window.scrollTo(c,d)}}
|
||||
function cd(a,b){a.U&&(a=a.U,a.si&&(b||!a.aa.Ib||a.aa.ki)&&(zf(a,"EAX",a.F),zf(a,"EBX",a.G),zf(a,"ECX",a.H),zf(a,"EDX",a.K),zf(a,"ESP",C(a)),zf(a,"EBP",a.L),zf(a,"ESI",a.J),zf(a,"EDI",a.I),zf(a,"CS",a.ga.ha),zf(a,"DS",a.Ca.ha),zf(a,"SS",a.W.ha),zf(a,"ES",a.ua.ha),zf(a,"EIP",E(a)),b=Dd(a),zf(a,"PS",b),zf(a,"V",b&2048),zf(a,"D",b&1024),zf(a,"I",b&512),zf(a,"T",b&256),zf(a,"S",b&128),zf(a,"Z",b&64),zf(a,"A",b&16),zf(a,"P",b&4),zf(a,"C",b&1),80386==a.ba&&(zf(a,"FS",a.qb.ha),zf(a,"GS",a.rb.ha),zf(a,"CR0",
|
||||
a.pa),zf(a,"CR2",a.Xd),zf(a,"CR3",a.nd))),b=a.ia.speed)&&(b.textContent=a.aa.Ib&&a.R.wd?a.R.wd.toFixed(2)+"Mhz":"Stopped")}
|
||||
function id(a,b){for(var c=0;c<a.G.length;c++)mq(a.G[c],b);if(a.D&&(a=a.D,a.na)){Jb(a,Lb,a.J,a.la);if(a.Aa){b=a.ma;var c=a.A,d,e;null==d&&(d=0);null==e&&(e=b.K-d|0);c||(c={og:0,dd:0,hg:[]});var f=d>>>b.B;d=d+e-1>>>b.B;c.og=0;for(c.dd=0;f<=d;)e=b.X[f],c.og+=e.size,e.size&&(c.hg.push(Aa(Fb,f,0,0,e.type)),c.dd++),f++;a.A=c;a.ca=a.A.dd*a.ma.A/(Eb*Pb);d=0;a.A.di=0;a.A.Ee||(a.A.Ee=[]);e=-1;b=0;for(var g=-1,c=0;c<a.A.dd;c++){var h=a.A.hg[c],f=Ba(Fb.type,h),h=Ba(Fb.Fj,h);if(f!=e||h!=g+1)(g=c-b)&&(d+=Nb(a,
|
||||
function id(a,b){for(var c=0;c<a.G.length;c++)mq(a.G[c],b);if(a.D&&(a=a.D,a.na)){Jb(a,Kb,a.J,a.la);if(a.Aa){b=a.ma;var c=a.A,d,e;null==d&&(d=0);null==e&&(e=b.K-d|0);c||(c={og:0,dd:0,hg:[]});var f=d>>>b.B;d=d+e-1>>>b.B;c.og=0;for(c.dd=0;f<=d;)e=b.X[f],c.og+=e.size,e.size&&(c.hg.push(Aa(Fb,f,0,0,e.type)),c.dd++),f++;a.A=c;a.ca=a.A.dd*a.ma.A/(Eb*Pb);d=0;a.A.di=0;a.A.Ee||(a.A.Ee=[]);e=-1;b=0;for(var g=-1,c=0;c<a.A.dd;c++){var h=a.A.hg[c],f=Ba(Fb.type,h),h=Ba(Fb.Fj,h);if(f!=e||h!=g+1)(g=c-b)&&(d+=Nb(a,
|
||||
b,g,e)),e=f,b=c;g=h}d+=Nb(a,b,c-b,e);e=a.A.qk!=d;a.A.qk=d;if(e){e=new vb(0,0,a.J.width,a.J.height);a.A.be=[];b=a.A.dd;for(d=0;d<a.A.di;d++)c=a.A.Ee[d].dd,a.A.be.push(wb(e,c,b,!d)),b-=c;for(d=0;d<a.A.be.length;d++)e=a.A.Ee[d],b=c=a.A.be[d],f=a.la,(g=Lc[e.type])||(g=new ub),f.strokeStyle="black",f.strokeRect(b.x,b.y,b.wc,b.A),f.fillStyle="string"==typeof g?g:g.toString(),f.fillRect(b.x,b.y,b.wc,b.A),b=a,f=c,b.L=b.X,b.I=b.Z,c=f.x+(f.wc>>1),g=f.y+(f.A>>1),h=f.A,f.wc<f.A&&(h=f.wc,b.W=!0,b.D.save(),b.D.translate(c,
|
||||
g),b.D.rotate(-Math.PI/2),c=g=0),h<b.I&&(b.I=h,b.L=b.I+"px "+Ob),f=g,b.C=c,b.H=f,b=a,e=Xb[e.type]+" ("+(e.dd*a.ma.A/1024|0)+"Kb)",b.D.font=b.L,b.C-=b.D.measureText(e).width>>1,b.H+=(b.I>>1)-2,Mb(b,e),b.W&&(b.D.restore(),b.W=!1)}}else Mb(a,"This space intentionally left blank");a.context.drawImage(a.J,0,0,a.J.width,a.J.height,a.Ga,a.Ka,a.ua,a.ya);a.na=!1}}var av="failsafe",Wu="validate",Yu="timestamp",iv="version",jv="url",kv="browser",fv="user",$u=-1,Ru=0,Zu=1,cv=2,mv=3;
|
||||
Pa(function(){for(var a=hb(document,"pcx86-machine"),b=0;b<a.length;b++)for(var c=a[b],d=eb(c),c=hb(c,"pcx86","computer"),e=0;e<c.length;e++){var f=c[e],g=eb(f),g=new Pu(g,d,!0);gb(g,f);g.M&&Uu(g,g.af)}});Qa.show.push(function(){for(var a=hb(document,"pcx86","computer"),b=0;b<a.length;b++){var c=eb(a[b]);if(c=db("Computer",c.id))c.aa.hf=!1,c.ea&&!c.aa.Pb&&c.af($u)}});
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
Loading…
Reference in a new issue