Added another old Infocom game
This commit is contained in:
parent
6d8090649f
commit
7c3d20f534
45 changed files with 505 additions and 371 deletions
|
|
@ -219,7 +219,7 @@ function Dh(a,b){a=this.aa>>3&7;switch(a){case 0:this.ta=this.F;break;case 2:thi
|
|||
function Eh(a,b){switch(this.aa>>3&7){case 0:b=this.va.ha;break;case 1:b=this.fa.ha;break;case 2:b=this.W.ha;break;case 3:b=this.Ca.ha;break;case 4:if(80386<=this.ba){b=this.qb.ha;break}v.call(this,6);b=a;break;case 5:if(80386<=this.ba){b=this.rb.ha;break}default:v.call(this,6),b=a}-1!==this.D&&Bd(this,2);return Ah.call(this,0,b)}
|
||||
function rh(a,b){if(a&-65536||b&-65536){var c=b&65535;b>>>=16;var d=a&65535;a>>>=16;var e=c*d,d=(e>>>16)+b*d,f=d>>>16,d=(d&65535)+c*a;this.Aa=d<<16|e&65535;this.Sa=f+((d>>>16)+b*a)|0}else this.Aa=a*b|0,this.Sa=0}function Fh(a,b){this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.xb:this.B.lc;return H(this,a|b,128)}function Gh(a,b){this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.xb:this.B.lc;return H(this,a|b,this.sb)&this.N}
|
||||
function Hh(a,b){var c=a-b-qf(this)|0;df(this,a,b,c,191,!0);this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.xb:this.B.lc;return c&255}function Ih(a,b){var c=a-b-qf(this)|0;df(this,a,b,c,this.sb|63,!0);this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.xb:this.B.lc;return c&this.N}function Jh(){return kf(this)?1:0}function Kh(){return ef(this)?1:0}function Lh(){return ef(this)?0:1}function Mh(){return hf(this)?1:0}function Nh(){return hf(this)?0:1}function Oh(){return ef(this)||hf(this)?1:0}
|
||||
function Ph(){return ef(this)||hf(this)?0:1}function Qh(){return jf(this)?1:0}function Rh(){return jf(this)?0:1}function Sh(){return ff(this)?1:0}function Th(){return ff(this)?0:1}function Uh(){return!jf(this)!=!kf(this)?1:0}function Vh(){return!jf(this)!=!kf(this)?0:1}function Wh(){return hf(this)||!jf(this)!=!kf(this)?1:0}function Xh(){return hf(this)||!jf(this)!=!kf(this)?0:1}function ai(a,b){return bi.call(this,a,b,this.la())}function ci(a,b){return di.call(this,a,b,this.la())}
|
||||
function Ph(){return ef(this)||hf(this)?0:1}function Qh(){return jf(this)?1:0}function Rh(){return jf(this)?0:1}function Sh(){return ff(this)?1:0}function Th(){return ff(this)?0:1}function Uh(){return!jf(this)!=!kf(this)?1:0}function Vh(){return!jf(this)!=!kf(this)?0:1}function Wh(){return hf(this)||!jf(this)!=!kf(this)?1:0}function Xh(){return hf(this)||!jf(this)!=!kf(this)?0:1}function Yh(a,b){return bi.call(this,a,b,this.la())}function ci(a,b){return di.call(this,a,b,this.la())}
|
||||
function ei(a,b){return bi.call(this,a,b,this.H&31)}function fi(a,b){return di.call(this,a,b,this.H&31)}function gi(a,b){return hi.call(this,a,b,this.la())}function ii(a,b){return ji.call(this,a,b,this.la())}function ki(a,b){return hi.call(this,a,b,this.H&31)}function li(a,b){return ji.call(this,a,b,this.H&31)}function mi(a,b){var c=a-b|0;df(this,a,b,c,191,!0);this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.xb:this.B.lc;return c&255}
|
||||
function ni(a,b){var c=a-b|0;df(this,a,b,c,this.sb|63,!0);this.A-=-1===this.D?-1===this.C?this.B.Xb:this.B.xb:this.B.lc;return c&this.N}function oi(a,b){H(this,a&b,128);this.A-=-1===this.D?-1===this.C?this.B.kh:this.B.Ye:this.B.Ye;this.M|=2;return a}function pi(a,b){H(this,a&b,this.sb);this.A-=-1===this.D?-1===this.C?this.B.kh:this.B.Ye:this.B.Ye;this.M|=2;return a}function qi(a,b){var c=this.F&this.N,d=(1<<(this.H&31))-1;return a&~(d<<c)|(b&d)<<c}
|
||||
function ri(a,b){return b>>(this.F&this.N)&(1<<(this.H&31))-1&this.N}function si(a,b){if(-1===this.C){switch(this.aa&7){case 0:this.F=this.F&-256|a;break;case 1:this.H=this.H&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.G=this.G&-256|a;break;case 4:this.F=this.F&-65281|a<<8;break;case 5:this.H=this.H&-65281|a<<8;break;case 6:this.K=this.K&-65281|a<<8;break;case 7:this.G=this.G&-65281|a<<8}this.A-=this.B.mh}else this.D=this.C,Af(this,a),this.A-=this.B.lh;return b}
|
||||
|
|
@ -393,7 +393,7 @@ F[130]=function(){var a=this.za();ef(this)?(G(this,D(this)+a),this.A-=this.B.Ia)
|
|||
F[135]=function(){var a=this.za();ef(this)||hf(this)?this.A-=this.B.Ja:(G(this,D(this)+a),this.A-=this.B.Ia)};F[136]=function(){var a=this.za();jf(this)?(G(this,D(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[137]=function(){var a=this.za();jf(this)?this.A-=this.B.Ja:(G(this,D(this)+a),this.A-=this.B.Ia)};F[138]=function(){var a=this.za();ff(this)?(G(this,D(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[139]=function(){var a=this.za();ff(this)?this.A-=this.B.Ja:(G(this,D(this)+a),this.A-=this.B.Ia)};
|
||||
F[140]=function(){var a=this.za();!jf(this)!=!kf(this)?(G(this,D(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[141]=function(){var a=this.za();!jf(this)==!kf(this)?(G(this,D(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[142]=function(){var a=this.za();hf(this)||!jf(this)!=!kf(this)?(G(this,D(this)+a),this.A-=this.B.Ia):this.A-=this.B.Ja};F[143]=function(){var a=this.za();hf(this)||!jf(this)!=!kf(this)?this.A-=this.B.Ja:(G(this,D(this)+a),this.A-=this.B.Ia)};F[144]=function(){Ai.call(this,Jh)};
|
||||
F[145]=function(){Ai.call(this,Jh)};F[146]=function(){Ai.call(this,Kh)};F[147]=function(){Ai.call(this,Lh)};F[148]=function(){Ai.call(this,Mh)};F[149]=function(){Ai.call(this,Nh)};F[150]=function(){Ai.call(this,Oh)};F[151]=function(){Ai.call(this,Ph)};F[152]=function(){Ai.call(this,Qh)};F[153]=function(){Ai.call(this,Rh)};F[154]=function(){Ai.call(this,Sh)};F[155]=function(){Ai.call(this,Th)};F[156]=function(){Ai.call(this,Uh)};F[157]=function(){Ai.call(this,Vh)};F[158]=function(){Ai.call(this,Wh)};
|
||||
F[159]=function(){Ai.call(this,Xh)};F[160]=function(){Dd(this,this.qb.ha,this.T,2);this.A-=this.B.Nd};F[161]=function(){this.ma=this.ya;var a=x(this);this.qb.load(a);this.A-=this.B.Yb;this.ma=-1};F[163]=function(){this.xa.call(this,eh);-1!==this.C&&(this.A-=6)};F[164]=function(){this.xa.call(this,2==this.T?ai:ci);this.A-=-1===this.C?3:7};F[165]=function(){this.xa.call(this,2==this.T?ei:fi);this.A-=-1===this.C?3:7};F[168]=function(){Dd(this,this.rb.ha,this.T,2);this.A-=this.B.Nd};
|
||||
F[159]=function(){Ai.call(this,Xh)};F[160]=function(){Dd(this,this.qb.ha,this.T,2);this.A-=this.B.Nd};F[161]=function(){this.ma=this.ya;var a=x(this);this.qb.load(a);this.A-=this.B.Yb;this.ma=-1};F[163]=function(){this.xa.call(this,eh);-1!==this.C&&(this.A-=6)};F[164]=function(){this.xa.call(this,2==this.T?Yh:ci);this.A-=-1===this.C?3:7};F[165]=function(){this.xa.call(this,2==this.T?ei:fi);this.A-=-1===this.C?3:7};F[168]=function(){Dd(this,this.rb.ha,this.T,2);this.A-=this.B.Nd};
|
||||
F[169]=function(){this.ma=this.ya;var a=x(this);this.rb.load(a);this.A-=this.B.Yb;this.ma=-1};F[171]=function(){this.xa.call(this,hh);-1!==this.C&&(this.A-=5)};F[172]=function(){this.xa.call(this,2==this.T?gi:ii);this.A-=-1===this.C?3:7};F[173]=function(){this.xa.call(this,2==this.T?ki:li);this.A-=-1===this.C?3:7};F[175]=function(){this.ia.call(this,2==this.T?nh:ph)};F[178]=function(){this.ia.call(this,zh)};F[179]=function(){this.xa.call(this,gh);-1!==this.C&&(this.A-=5)};
|
||||
F[180]=function(){this.ia.call(this,wh)};F[181]=function(){this.ia.call(this,xh)};
|
||||
F[182]=function(){this.Vb.call(this,Bh);switch(this.aa>>3&7){case 0:this.F=this.F&~this.N|this.F&255;break;case 1:this.H=this.H&~this.N|this.H&255;break;case 2:this.K=this.K&~this.N|this.K&255;break;case 3:this.G=this.G&~this.N|this.G&255;break;case 4:this.jc=this.jc&~this.N|this.F>>8&255;this.F=this.ta;break;case 5:this.L=this.L&~this.N|this.H>>8&255;this.H=this.ta;break;case 6:this.J=this.J&~this.N|this.K>>8&255;this.K=this.ta;break;case 7:this.I=this.I&~this.N|this.G>>8&255,this.G=this.ta}this.A-=
|
||||
|
|
@ -529,8 +529,8 @@ function pq(a,b,c,d){if(d)a.ua("Unable to load font ROM (error "+d+": "+b+")",0>
|
|||
function Iq(a,b){if(1==b)return a.fa[0]=Jq[Dq],a.fa[1]=Jq[Bq],a.fa;if(2==b){var c=a.B.ff;if(a.B===a.A){var d=a.A.sc[0],c=d&7;d&16&&(c|=8);18!=a.A.sc[1]&&(c|=32)}a.fa[0]=Jq[c&15];c=c&32?Kq:Lq;for(d=0;d<c.length;d++)a.fa[d+1]=Jq[c[d]];return a.fa}if(a.I===a.sb)return Jq;a.Ha&&b&&!a.fa[16]&&(a.Ha=!1);if(!a.Ha){var c=a.A,d=c.xe,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.fa[e]=[g,h,f,255];else{var k=d&&d[255];b=null!=c.sc[15]?c.sc:Mq;for(e=0;16>e;e++)f=b[e]&63,k?(f|=
|
||||
(c.sc[20]&12)<<4,c.sc[16]&128&&(f&=-49,f|=(c.sc[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.fa[e]=[g,h,f,255]}a.Ha=!0}return a.fa}function Xn(a,b,c,d){a.qb=b;a.Za=c;a.Fa=d}
|
||||
function yq(a,b){var c=!1;if(window&&a.qb&&(!b||a.G)){var d=0,e=a.Fa?a.Fa:8,f=Iq(a);null!=a.Za[0]&&Nq(a,Oq,a.Za[0],d,e,8,a.qb,f)&&(c=!0);d=a.Fa?0:2048;e=a.Fa?a.Fa:9;null!=a.Za[1]&&(Nq(a,Pq,a.Za[1],d,e,14,a.qb,Qq,Rq)&&(c=!0),a.Fa&&Nq(a,a.Ma,a.Za[1],0,a.Fa,14,a.qb,f)&&(c=!0))}b||(a.aa=-1,a.Aa=-1,a.va=0);return c}function Nq(a,b,c,d,e,f,g,h,k){var m=!1;null!=c&&(Sq(a,b,c,d,e,f,g,h,k)&&(m=!0),a.nd&&Sq(a,b<<1,c,d,e,f,g,h,k)&&(m=!0));return m}
|
||||
function Sq(a,b,c,d,e,f,g,h,k){var m=!1,p=b&1?0:1,y=a.ta[b],w=16>h.length?h.length:16;y||(y={oc:e<<p,pc:f<<p,be:Array(w),Zh:h.slice(0,w),Fe:k,kg:Array(w)});for(k=0;k<w;k++){var z=h[k],E=y.be[k]?y.Zh[k]:[];if(z[0]!==E[0]||z[1]!==E[1]||z[2]!==E[2]){var m=y,E=k,ba=p,ca=c,X=d,Ia=e,oc=f,ne=g,Yh=[0,0,0,0],Rf=document.createElement("canvas");Rf.width=m.oc<<4;Rf.height=m.pc<<4;var Sm=Rf.getContext("2d"),Kb,qd,pc,Sf=8>oc||!X?oc:8,Zh=Sm.createImageData(m.oc,m.pc);for(Kb=0;256>Kb;Kb++){for(pc=0;pc<oc;pc++)for(var Vt=
|
||||
m.Fe&&E&1&&pc>=oc-2,Wt=ne[pc<Sf?ca+Kb*Sf+pc:X+Kb*Sf+pc-Sf],$h=0;$h<=ba;$h++)for(qd=0;qd<Ia;qd++){var Tm=qd<<ba,Um=(pc<<ba)+$h,Vm=Vt||Wt&128>>(8<=qd&&192<=Kb&&223>=Kb?7:qd)?z:Yh;Tq(Zh,Tm,Um,Vm);ba&&Tq(Zh,Tm+1,Um,Vm)}Sm.putImageData(Zh,(Kb&15)*m.oc,(Kb>>4)*m.pc)}m.be[E]="#"+pa(z[0],2)+pa(z[1],2)+pa(z[2],2);m.Zh[E]=z;m.kg[E]=Rf;m=!0}}a.ta[b]=y;return m}function Uq(a){0<a.va||0<=a.aa?0>a.Aa&&(a.Aa=0):a.Aa=-1}
|
||||
function Sq(a,b,c,d,e,f,g,h,k){var m=!1,p=b&1?0:1,y=a.ta[b],w=16>h.length?h.length:16;y||(y={oc:e<<p,pc:f<<p,be:Array(w),Zh:h.slice(0,w),Fe:k,kg:Array(w)});for(k=0;k<w;k++){var z=h[k],E=y.be[k]?y.Zh[k]:[];if(z[0]!==E[0]||z[1]!==E[1]||z[2]!==E[2]){var m=y,E=k,ba=p,ca=c,X=d,Ia=e,oc=f,ne=g,Zh=[0,0,0,0],Rf=document.createElement("canvas");Rf.width=m.oc<<4;Rf.height=m.pc<<4;var Sm=Rf.getContext("2d"),Kb,qd,pc,Sf=8>oc||!X?oc:8,$h=Sm.createImageData(m.oc,m.pc);for(Kb=0;256>Kb;Kb++){for(pc=0;pc<oc;pc++)for(var Wt=
|
||||
m.Fe&&E&1&&pc>=oc-2,Xt=ne[pc<Sf?ca+Kb*Sf+pc:X+Kb*Sf+pc-Sf],ai=0;ai<=ba;ai++)for(qd=0;qd<Ia;qd++){var Tm=qd<<ba,Um=(pc<<ba)+ai,Vm=Wt||Xt&128>>(8<=qd&&192<=Kb&&223>=Kb?7:qd)?z:Zh;Tq($h,Tm,Um,Vm);ba&&Tq($h,Tm+1,Um,Vm)}Sm.putImageData($h,(Kb&15)*m.oc,(Kb>>4)*m.pc)}m.be[E]="#"+pa(z[0],2)+pa(z[1],2)+pa(z[2],2);m.Zh[E]=z;m.kg[E]=Rf;m=!0}}a.ta[b]=y;return m}function Uq(a){0<a.va||0<=a.aa?0>a.Aa&&(a.Aa=0):a.Aa=-1}
|
||||
function Hq(a){if(a.G){for(var b=10;15>=b;b++)if(null==a.B.Oa[b])return;var c=a.B.Oa[10],b=c&31,d=a.B.Oa[11]&31,e=a.B.Oa[9]&31,f=!1;a.B===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Vq(a);else{c=a.B.Oa[15]+((a.B.Oa[14]&63)<<8);a.aa!=c&&(Vq(a),a.aa=c);d=d-b+1;if(a.Vc!=b||a.yc!=d)a.Vc=b,a.yc=d;a.xa=e+1;Uq(a)}}}
|
||||
function Vq(a){if(0<=a.aa){if(void 0!==a.L){var b=Wq<<8,c=a.L[a.aa];if(c&b){var c=c&~b,b=a.aa%a.F,d=a.aa/a.F|0;a.G&&a.ta[a.G]&&(a.Ca&&Xq(a,b,d,c,a.Ca),Xq(a,b,d,c));a.L[a.aa]=c}}a.aa=-1}}
|
||||
function Yq(a){var b,c=a.B;a.Hc=!1;var d=c.kd[5];if(null!=d){b=pp;var e=rp,f=c.kd[3]&31;switch(d&3){case 0:if(f){e=rp|32;switch(f&24){case 8:e=rp|96;break;case 16:e=rp|160;break;case 24:e=rp|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==Yn&&(e=3,c.zc=f&7)}d&8&&(b=1280);c=c.Rd[4];null!=c&&(c&4||(b|=qp,e|=sp),d&64&&(c&8&&(b|=16384,e|=4),a.Hc=!0));b|=e}return b}
|
||||
|
|
@ -590,7 +590,7 @@ function ks(a,b,c){t.call(this,"Disk",{id:a.Wd+".disk"+pa(++ls,4)});this.control
|
|||
l.Ob=function(a,b){if(this.C){var c,d=0;if(this.K&&!bb("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=ns(this,!1);)if(d=c[0]){this.ua('Unable to save "'+this.Rc+'" (error '+d+")");break}b&&this.C&&(b="action=close&volume="+this.F,b+="&machine="+os(this.controller),b+="&user="+ps(this.controller),Fa(Ga()+"/api/v1/disk?"+b,null,!0),this.C=!1);!d&&a&&this.ua(this.Rc+" saved")}return!0};
|
||||
function ms(a,b,c,d,e,f){a.mode=b;a.hb=c;a.Ya=d;a.Va=e;a.mb=f;a.A=[];if("preload"!=a.mode){b=Array(a.hb);for(c=0;c<b.length;c++){d=Array(a.Ya);for(e=0;e<d.length;e++){f=Array(a.Va);for(var g=1;g<=f.length;g++)f[g-1]=qs(null,c,e,g,a.mb,"local"==a.mode?0:null);d[e]=f}b[c]=d}a.A=b}a.I=null}
|
||||
l.load=function(a,b,c,d,e){var f=b;if(this.H)return!0;this.Rc=a;this.F=b;this.th=qa(b);var g=this;this.H=d;this.M=e||this.controller;if(c){var h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=ma[c];if(d){g.hb=d[0];g.Ya=d[1];g.Va=d[2];g.mb=d[3]||512;b=g.mb>>2;var e=d=0,a=new DataView(a,0,c);g.A=Array(g.hb);for(c=0;c<g.A.length;c++)for(var f=g.A[c]=Array(g.Ya),k=0;k<f.length;k++)for(var ca=f[k]=Array(g.Va),X=0;X<ca.length;X++){for(var Ia=qs(null,c,k,X+1,g.mb,0),oc=Ia.data,
|
||||
ne=0;ne<b;ne++,e+=4)var Yh=oc[ne]=a.getInt32(e,!0),d=d+Yh&-1;Ia.vc=b;ca[X]=Ia}g.I=d;b=g}else g.ua("Unrecognized disk format ("+c+" bytes)");g.H&&(g.H.call(g.controller,g.B,b,g.Rc,g.F),g.H=null)};h.readAsArrayBuffer(c);return!0}0>b.indexOf("/api/v1/dump")&&(a=ra(b),"json"==a||"gz"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=rs(this,b),this.Gf=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):
|
||||
ne=0;ne<b;ne++,e+=4)var Zh=oc[ne]=a.getInt32(e,!0),d=d+Zh&-1;Ia.vc=b;ca[X]=Ia}g.I=d;b=g}else g.ua("Unrecognized disk format ("+c+" bytes)");g.H&&(g.H.call(g.controller,g.B,b,g.Rc,g.F),g.H=null)};h.readAsArrayBuffer(c);return!0}0>b.indexOf("/api/v1/dump")&&(a=ra(b),"json"==a||"gz"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=rs(this,b),this.Gf=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):
|
||||
sa(b,"/")&&(c="dir"),f=Ga()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.oe?"":d)+"&format=json"));var k="Loading "+f+"...";return!!Fa(f,null,!0,function(a,b,c){ss(g,a,b,c)},function(){g.ub(k,qb.ae)})};
|
||||
function ss(a,b,c,d){var e=null;a.re=!1;var f=!(!(0>d&&a.oa)||a.oa.Z.Zb);if(a.Gf)d?a.ua('Unable to connect to disk "'+a.F+'" (error '+d+": "+c+")",f):(a.C=!0,e=a);else if(d)a.ua('Unable to load disk "'+a.Rc+'" (error '+d+": "+b+")",f);else{$a(a.controller.Wd,b,c);try{if(0<qa(a.th,!0).toLowerCase().indexOf("-readonly"))a.re=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.re=!0)}var h;"<"==c.substr(0,1)?h=["Missing disk image: "+a.Rc]:h=0>c.indexOf("0x")&&
|
||||
'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+c+")");if(h.length)if(1==h.length)r(h[0]);else{a.hb=h.length;a.Ya=h[0].length;a.Va=h[0][0].length;var k=h[0][0][0];a.mb=k&&k.length||512;for(d=c=0;d<a.hb;d++)for(f=0;f<a.Ya;f++)for(g=0;g<a.Va;g++)if(k=h[d][f][g]){var m=k.length;void 0===m&&(m=k.length=512);var m=m>>2,p=k.pattern;void 0===p&&(p=k.pattern=0);var y=k.data;if(void 0===y){var w=k.bytes;if(void 0!==w&&w.length){for(var z=m<<2,E=w.length;E<
|
||||
|
|
@ -618,91 +618,90 @@ function Hs(a,b){var c=0,d,e=!0;b||(b=[0,0,Os,Array(9),0,0,0,[]]);a.La=b[c++];c+
|
|||
80;g.Va=9;break;case 1200:g.hb=80;g.Va=15;break;case 1440:g.hb=80,g.Va=18}}var k=a,m=d,p=f[d],y=0;h=!0;g.La=m;g.le=g.ne=!1;p||(p=[Ps,!0,0,2,0]);"boolean"==typeof p[1]&&(p[1]=[Qs,g.hb||40,g.Ya||p[3],g.Va||9,g.mb||512,p[1],g.Pf,g.Se,g.Te]);g.ib=p[y++];var w=p[y++];g.name=w[0];g.hb=w[1];g.Ya=w[2];g.Va=w[3];g.mb=w[4];g.oe=w[5];(g.Pf=w[6])?(g.Se=w[7],g.Te=w[8]):(g.Pf=g.hb,g.Se=g.Ya,g.Te=g.Va);g.Ta=p[y++];g.rd=p[y++];g.wb=p[y++];g.rd=100<=g.rd?g.rd-100:g.rd-g.wb;g.ab=p[y++];g.sd=p[y++];g.tb=p[y++];g.Pa=
|
||||
p[y++];g.Ra=null;g.sa||(g.Td="");var z=p[y++];102==z&&(z=!1);"boolean"==typeof z?(w=p[y++],p=p[y],z?(y=k.A[m],Ms(k,m,!0,!0),y.ne=!0,m=new ks(k,y,"preload"),k.ni(y,m,w,p,!0)):Rs(k,m,w,p,!0)?g.sa&&p&&Ss(k,w,p,g.sa):tb(k,!1)):void 0!==z&&g.sa&&0>g.sa.restore(z)&&(h=!1);h&&g.sa&&void 0!==g.Pa&&(g.Ra=g.sa.seek(g.wb,g.Ta,g.ab));h||(e=!1)}a.H=b[c++]||0;a.F=b[c]||Ts;return e}
|
||||
function Ns(a){var b=0,c=[];c[b++]=a.La;c[b++]=0;c[b++]=a.Y;c[b++]=a.G;c[b++]=a.D;c[b++]=a.C;c[b++]=a.I;for(var d=b++,e=0,f=[],g=0;g<a.A.length;g++){var h=e++,k=a.A[g],m=0,p=[];p[m++]=k.ib;p[m++]=[k.name,k.hb,k.Ya,k.Va,k.mb,k.oe,k.Pf,k.Se,k.Te];p[m++]=k.Ta;p[m++]=k.rd+100;p[m++]=k.wb;p[m++]=k.ab;p[m++]=k.sd;p[m++]=k.tb;p[m++]=k.Pa;p[m++]=k.ne;p[m++]=k.Uj;p[m]=k.Td;f[h]=p}c[d]=f;d=b++;for(e=0;e<a.A.length;e++)f=a.A[e],f.sa&&Us(a,f.Td,f.sa);c[d]=a.B;c[b++]=a.H;c[b]=a.F;return c}
|
||||
function Ls(a,b){b||(a.J=0);for(var c in a.L){var d=a.L[c],e;if(!(e=d.path))a:{if(e=d.name){var f=a.ja.listDisks;if(f&&f.options)for(var g=0;g<f.options.length;g++){var h=f.options[g];if(h.text==e){e=h.value;break a}}}e=""}if(e)if(f=c.charCodeAt(0)-65,0<=f&&f<a.A.length){if(!(d=d.name))a:{if((d=a.ja.listDisks)&&d.options)for(g=0;g<d.options.length;g++)if(h=d.options[g],h.value==e){d=h.text;break a}d=qa(e,!0)}!Rs(a,f,d||"Unknown",e,!0)&&b&&tb(a,!1)}else a.ua("Incorrect auto-mount settings for drive "+
|
||||
c+" ("+JSON.stringify(d)+")")}return!!a.J}
|
||||
function Ls(a,b){b||(a.J=0);for(var c in a.L){var d=a.L[c],e;if(!(e=d.path))a:{if(e=d.name){var f=a.ja.listDisks;if(f&&f.options)for(var g=0;g<f.options.length;g++){var h=f.options[g];if(h.text==e){e=h.value;break a}}}e=""}e&&(f=c.charCodeAt(0)-65,0<=f&&f<a.A.length?!Rs(a,f,d.name||Vs(a,e)||qa(e,!0),e,!0)&&b&&tb(a,!1):a.ua("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")"))}return!!a.J}
|
||||
function Gs(a,b,c,d){var e,f=a.ja.listDrives;if(f&&!isNaN(e=oa(f.value,10))&&0<=e&&e<a.A.length)if(c)if("?"==c)a.ua('Use "Choose File" and "Mount" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=qa(c)}for(;0>Rs(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk and discard any changes.");){var f=a,g=c,h;for(h=0;h<f.B.length;h++)if(f.B[h][1]==g){f.B.splice(h,1);break}Ms(a,e,!1,!0)}}else Ms(a,e);else a.ua("Unable to load the selected drive")}
|
||||
function Rs(a,b,c,d,e,f){var g=a.A[b];if(d&&(d=d.replace("/disks/pc/","/disks/pcx86/"),g.Td.toLowerCase()!=d.toLowerCase())){Ms(a,b,e,!0);if(g.le)return a.ua("Drive "+b+" busy"),0;g.le=!0;e&&(g.Hd=!0,a.J++);g.ne=!!f;return(new ks(a,g,"preload")).load(c,d,f,a.ni)?1:0}return-1}
|
||||
l.ni=function(a,b,c,d,e){var f;a.le=!1;b&&(f=b.info(),b&&f[0]>a.hb||f[1]>a.Ya)&&(this.ua('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.La)),b=null);b?(a.sa=b,a.Uj=c,a.Td=d,Ss(this,c,d,b),f=b.info(),this.H|=Vs,this.ua('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.La),a.Hd||e),a.Pf=f[0],a.Se=f[1],a.Te=f[2],this.oa&&fd(this.oa)):a.ne=!1;a.Hd&&(a.Hd=!1,--this.J||tb(this));Fs(this,a.La)};
|
||||
function Ks(a,b,c,d){if((a=a.ja.listDisks)&&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 Fs(a,b){if(0<=b&&b<a.A.length){var c=a.A[b],d=a.ja.listDisks;a=a.ja.listDrives;if(d&&a&&d.options&&a.options&&(a=oa(a.value,10),c=c.ne?"?":c.Td,!isNaN(a)&&a==b)){for(b=0;b<d.options.length;b++)if(d.options[b].value==c){d.selectedIndex!=b&&(d.selectedIndex=b);break}b==d.options.length&&(d.selectedIndex=0)}}}function Ms(a,b,c,d){var e=a.A[b];e.sa&&(Us(a,e.Td,e.sa),e.Uj="",e.Td="",e.sa=null,e.ne=!1,a.H|=Vs,d||a.ua("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||Fs(a,b))}
|
||||
function Ss(a,b,c,d){var e;for(e=0;e<a.B.length;e++)if(a.B[e][1]==c){d.restore(a.B[e][2]);return}a.B[e]=[b,c,[]]}function Us(a,b,c){var d;for(d=0;d<a.B.length;d++)if(a.B[d][1]==b){a.B[d][2]=c.save();break}}l.Bm=function(a,b){b&Ws?this.I&Ws||this.I&Xs&&this.V&&Of(this.V,6):Hs(this);this.I=b};l.fl=function(){return 80};l.hl=function(){return this.Y};l.el=function(){var a=0;this.D<this.C&&(a=this.G[this.D]);this.I&Xs&&this.V&&Mf(this.V,6);++this.D>=this.C&&(this.Y&=~(Ys|Zs),this.D=this.C=0);return a};
|
||||
l.Am=function(a,b){this.C<this.G.length&&(this.G[this.C++]=b);a=this.G[0]&$s;if(void 0!==at[a]&&this.C>=at[a].ed){b=!1;this.D=0;a=bt(this);var c,d,e,f,g,h=a&$s;switch(h){case ct:bt(this);bt(this);dt(this);break;case et:d=bt(this);this.La=d&3;c=this.A[this.La];dt(this);ft(this,(c.ib>)>>>24);break;case ht:case it:d=bt(this);b=d>>2&1;this.La=d&3;c=this.A[this.La];c.Ta=b;d=c.wb=bt(this);e=bt(this);f=c.ab=bt(this);g=bt(this);c.tb=128<<g;c.sd=bt(this);bt(this);bt(this);h==it?(h=c,h.ib=jt|kt,h.sa&&(h.Ra=
|
||||
null,h.ib=lt,this.V&&(Dl(this.V,2,this,"dmaRead",h),zl(this.V,2)))):(h=c,h.ib=jt|kt,h.sa&&(h.sa.re?h.ib=mt|kt:(h.Ra=null,h.ib=lt,this.V&&(Dl(this.V,2,this,"dmaWrite",h),zl(this.V,2)))));nt(this,c,a,b,d,e,f,g);b=!0;break;case ot:d=bt(this);this.La=d&3;c=this.A[this.La];c.wb=c.rd=0;c.ib=pt|qt;dt(this);b=!0;break;case rt:c=this.A[this.La];c.Ta=0;dt(this);ft(this,c.La|c.Ta<<2|c.ib&st);ft(this,c.wb);this.La=this.La+1&3;break;case tt:d=bt(this);b=d>>2&1;this.La=d&3;c=this.A[this.La];d=c.wb;e=c.Ta=b;f=c.ab=
|
||||
1;g=0;c.ib=lt;c.sa&&(c.Ra=c.sa.seek(c.wb,c.Ta,c.ab))?g=c.Ra.length>>8:c.ib=jt|kt;nt(this,c,a,b,d,e,f,g);b=!0;break;case ut:d=bt(this);b=d>>2&1;this.La=d&3;c=this.A[this.La];d=c.wb;e=c.Ta=b;f=1;g=bt(this);c.tb=128<<g;c.sd=bt(this);bt(this);c.ci=bt(this);h=c;h.ib=jt|kt;h.sa&&(h.Ra=null,h.ib=lt,this.V&&(h.ie=0,h.Fc=Array(4),h.mg=!0,h.Af=0,Dl(this.V,2,this,"dmaFormat",h),zl(this.V,2),h.mg=!1));nt(this,c,a,b,d,e,f,g);b=!0;break;case vt:d=bt(this),this.La=d&3,c=this.A[this.La],c.Ta=d>>2&1,d=bt(this),c.wb+=
|
||||
d-c.rd,0>c.wb&&(c.wb=0),c.wb>=c.hb&&(c.wb=c.hb-1),c.rd=d,c.ib=pt,c.wb||(c.ib|=qt),dt(this),b=!0}0<this.C&&(this.Y=this.Y|Ys|Zs);this.I&Xs&&(!c||c.ib&jt||!b||this.V&&Of(this.V,6))}};l.gl=function(){var a=this.H;this.H&=~Vs;return a};l.zm=function(a,b){this.F=b};function nt(a,b,c,d,e,f,g,h){dt(a);ft(a,b.La|b.Ta<<2|b.ib&st);ft(a,(b.ib&wt)>>>8);ft(a,(b.ib&xt)>>>16);var k=0;if(e!=b.wb||f!=b.Ta)k=g=1;c&yt&&(f^=k,d||(k=0));ft(a,e+k);ft(a,f);ft(a,g);ft(a,h)}function bt(a){var b=a.G[a.D];a.D++;return b}
|
||||
function dt(a){a.D=a.C=0}function ft(a,b){a.G[a.C++]=b}l.ck=function(a,b,c){void 0===b||0>b?this.we(a,c):c(-1,!1)};l.dk=function(a,b){return void 0!==b&&0<=b?zt(a,b):-1};l.tk=function(a,b){if(void 0!==b&&0<=b)a:if(a.ib)a=-1;else{a.Fc[a.ie++]=b;if(a.ie==a.Fc.length){a.wb=a.Fc[0];a.Ta=a.Fc[1];a.ab=a.Fc[2];a.tb=128<<a.Fc[3];for(var c=a.ie=0;c<a.tb;c++)if(0>zt(a,a.ci)){a=-1;break a}a.Af++}a.Af>=a.sd&&(b=-1);a=b}else a=-1;return a};
|
||||
l.we=function(a,b){var c=-1,d=null,e=0;if(!a.ib&&a.sa){do{if(a.Ra&&(e=a.Pa,0<=(c=a.sa.read(a.Ra,a.Pa++)))){d=a.Ra;break}a.Ra=a.sa.seek(a.wb,a.Ta,a.ab);if(!a.Ra){a.ib=At|kt;break}a.Pa=0;Bt(a)}while(1)}b(c,!1,d,e)};function zt(a,b){if(a.ib||!a.sa)return-1;do{if(a.Ra&&a.sa.write(a.Ra,a.Pa++,b))break;a.Ra=a.sa.seek(a.wb,a.Ta,a.ab);if(!a.Ra){a.ib=Ct|kt;b=-1;break}a.Pa=0;Bt(a)}while(1);return b}function Bt(a){a.ab++;a.ab>=a.Te+1&&(a.ab=1,a.Ta++,a.Ta>=a.Se&&(a.Ta=0,a.wb++))}
|
||||
var Qs="Floppy Drive",Ws=4,Xs=8,Zs=16,Ys=64,Os=128,ct=3,et=4,ht=5,it=6,ot=7,rt=8,tt=10,ut=13,vt=15,$s=31,yt=128,lt=0,jt=8,pt=32,kt=64,Ps=192,st=255,mt=512,At=1024,Ct=8192,wt=65280,xt=16711680,qt=268435456,gt=-16777216,Vs=128,Ts=0;aa={};
|
||||
var at={3:{ed:3,td:0,name:aa.Eo},4:{ed:2,td:1,name:aa.Co},5:{ed:9,td:7,name:aa.Jo},6:{ed:9,td:7,name:aa.yo},7:{ed:2,td:0,name:aa.Ao},8:{ed:1,td:2,name:aa.Do},10:{ed:2,td:7,name:aa.zo},13:{ed:6,td:7,name:aa.uo},15:{ed:3,td:0,name:aa.Bo}},Is={1009:Ds.prototype.fl,1012:Ds.prototype.hl,1013:Ds.prototype.el,1015:Ds.prototype.gl},Js={1010:Ds.prototype.Bm,1013:Ds.prototype.Am,1015:Ds.prototype.zm};
|
||||
l.ni=function(a,b,c,d,e){var f;a.le=!1;b&&(f=b.info(),b&&f[0]>a.hb||f[1]>a.Ya)&&(this.ua('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.La)),b=null);b?(a.sa=b,a.Uj=c,a.Td=d,Vs(this,d)||Ks(this,c,d),Ss(this,c,d,b),f=b.info(),this.H|=Ws,this.ua('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.La),a.Hd||e),a.Pf=f[0],a.Se=f[1],a.Te=f[2],this.oa&&fd(this.oa)):a.ne=!1;a.Hd&&(a.Hd=!1,--this.J||tb(this));Fs(this,a.La)};
|
||||
function Ks(a,b,c,d){if((a=a.ja.listDisks)&&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 Vs(a,b){if((a=a.ja.listDisks)&&a.options)for(var c=0;c<a.options.length;c++){var d=a.options[c];if(d.value==b)return d.text}return null}
|
||||
function Fs(a,b){if(0<=b&&b<a.A.length){var c=a.A[b],d=a.ja.listDisks;a=a.ja.listDrives;if(d&&a&&d.options&&a.options&&(a=oa(a.value,10),c=c.ne?"?":c.Td,!isNaN(a)&&a==b)){for(b=0;b<d.options.length;b++)if(d.options[b].value==c){d.selectedIndex!=b&&(d.selectedIndex=b);break}b==d.options.length&&(d.selectedIndex=0)}}}function Ms(a,b,c,d){var e=a.A[b];e.sa&&(Us(a,e.Td,e.sa),e.Uj="",e.Td="",e.sa=null,e.ne=!1,a.H|=Ws,d||a.ua("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||Fs(a,b))}
|
||||
function Ss(a,b,c,d){var e;for(e=0;e<a.B.length;e++)if(a.B[e][1]==c){d.restore(a.B[e][2]);return}a.B[e]=[b,c,[]]}function Us(a,b,c){var d;for(d=0;d<a.B.length;d++)if(a.B[d][1]==b){a.B[d][2]=c.save();break}}l.Bm=function(a,b){b&Xs?this.I&Xs||this.I&Ys&&this.V&&Of(this.V,6):Hs(this);this.I=b};l.fl=function(){return 80};l.hl=function(){return this.Y};l.el=function(){var a=0;this.D<this.C&&(a=this.G[this.D]);this.I&Ys&&this.V&&Mf(this.V,6);++this.D>=this.C&&(this.Y&=~(Zs|$s),this.D=this.C=0);return a};
|
||||
l.Am=function(a,b){this.C<this.G.length&&(this.G[this.C++]=b);a=this.G[0]&at;if(void 0!==bt[a]&&this.C>=bt[a].ed){b=!1;this.D=0;a=ct(this);var c,d,e,f,g,h=a&at;switch(h){case dt:ct(this);ct(this);et(this);break;case ft:d=ct(this);this.La=d&3;c=this.A[this.La];et(this);gt(this,(c.ib&ht)>>>24);break;case it:case jt:d=ct(this);b=d>>2&1;this.La=d&3;c=this.A[this.La];c.Ta=b;d=c.wb=ct(this);e=ct(this);f=c.ab=ct(this);g=ct(this);c.tb=128<<g;c.sd=ct(this);ct(this);ct(this);h==jt?(h=c,h.ib=kt|lt,h.sa&&(h.Ra=
|
||||
null,h.ib=mt,this.V&&(Dl(this.V,2,this,"dmaRead",h),zl(this.V,2)))):(h=c,h.ib=kt|lt,h.sa&&(h.sa.re?h.ib=nt|lt:(h.Ra=null,h.ib=mt,this.V&&(Dl(this.V,2,this,"dmaWrite",h),zl(this.V,2)))));ot(this,c,a,b,d,e,f,g);b=!0;break;case pt:d=ct(this);this.La=d&3;c=this.A[this.La];c.wb=c.rd=0;c.ib=qt|rt;et(this);b=!0;break;case st:c=this.A[this.La];c.Ta=0;et(this);gt(this,c.La|c.Ta<<2|c.ib&tt);gt(this,c.wb);this.La=this.La+1&3;break;case ut:d=ct(this);b=d>>2&1;this.La=d&3;c=this.A[this.La];d=c.wb;e=c.Ta=b;f=c.ab=
|
||||
1;g=0;c.ib=mt;c.sa&&(c.Ra=c.sa.seek(c.wb,c.Ta,c.ab))?g=c.Ra.length>>8:c.ib=kt|lt;ot(this,c,a,b,d,e,f,g);b=!0;break;case vt:d=ct(this);b=d>>2&1;this.La=d&3;c=this.A[this.La];d=c.wb;e=c.Ta=b;f=1;g=ct(this);c.tb=128<<g;c.sd=ct(this);ct(this);c.ci=ct(this);h=c;h.ib=kt|lt;h.sa&&(h.Ra=null,h.ib=mt,this.V&&(h.ie=0,h.Fc=Array(4),h.mg=!0,h.Af=0,Dl(this.V,2,this,"dmaFormat",h),zl(this.V,2),h.mg=!1));ot(this,c,a,b,d,e,f,g);b=!0;break;case wt:d=ct(this),this.La=d&3,c=this.A[this.La],c.Ta=d>>2&1,d=ct(this),c.wb+=
|
||||
d-c.rd,0>c.wb&&(c.wb=0),c.wb>=c.hb&&(c.wb=c.hb-1),c.rd=d,c.ib=qt,c.wb||(c.ib|=rt),et(this),b=!0}0<this.C&&(this.Y=this.Y|Zs|$s);this.I&Ys&&(!c||c.ib&kt||!b||this.V&&Of(this.V,6))}};l.gl=function(){var a=this.H;this.H&=~Ws;return a};l.zm=function(a,b){this.F=b};function ot(a,b,c,d,e,f,g,h){et(a);gt(a,b.La|b.Ta<<2|b.ib&tt);gt(a,(b.ib&xt)>>>8);gt(a,(b.ib&yt)>>>16);var k=0;if(e!=b.wb||f!=b.Ta)k=g=1;c&zt&&(f^=k,d||(k=0));gt(a,e+k);gt(a,f);gt(a,g);gt(a,h)}function ct(a){var b=a.G[a.D];a.D++;return b}
|
||||
function et(a){a.D=a.C=0}function gt(a,b){a.G[a.C++]=b}l.ck=function(a,b,c){void 0===b||0>b?this.we(a,c):c(-1,!1)};l.dk=function(a,b){return void 0!==b&&0<=b?At(a,b):-1};l.tk=function(a,b){if(void 0!==b&&0<=b)a:if(a.ib)a=-1;else{a.Fc[a.ie++]=b;if(a.ie==a.Fc.length){a.wb=a.Fc[0];a.Ta=a.Fc[1];a.ab=a.Fc[2];a.tb=128<<a.Fc[3];for(var c=a.ie=0;c<a.tb;c++)if(0>At(a,a.ci)){a=-1;break a}a.Af++}a.Af>=a.sd&&(b=-1);a=b}else a=-1;return a};
|
||||
l.we=function(a,b){var c=-1,d=null,e=0;if(!a.ib&&a.sa){do{if(a.Ra&&(e=a.Pa,0<=(c=a.sa.read(a.Ra,a.Pa++)))){d=a.Ra;break}a.Ra=a.sa.seek(a.wb,a.Ta,a.ab);if(!a.Ra){a.ib=Bt|lt;break}a.Pa=0;Ct(a)}while(1)}b(c,!1,d,e)};function At(a,b){if(a.ib||!a.sa)return-1;do{if(a.Ra&&a.sa.write(a.Ra,a.Pa++,b))break;a.Ra=a.sa.seek(a.wb,a.Ta,a.ab);if(!a.Ra){a.ib=Dt|lt;b=-1;break}a.Pa=0;Ct(a)}while(1);return b}function Ct(a){a.ab++;a.ab>=a.Te+1&&(a.ab=1,a.Ta++,a.Ta>=a.Se&&(a.Ta=0,a.wb++))}
|
||||
var Qs="Floppy Drive",Xs=4,Ys=8,$s=16,Zs=64,Os=128,dt=3,ft=4,it=5,jt=6,pt=7,st=8,ut=10,vt=13,wt=15,at=31,zt=128,mt=0,kt=8,qt=32,lt=64,Ps=192,tt=255,nt=512,Bt=1024,Dt=8192,xt=65280,yt=16711680,rt=268435456,ht=-16777216,Ws=128,Ts=0;aa={};
|
||||
var bt={3:{ed:3,td:0,name:aa.Eo},4:{ed:2,td:1,name:aa.Co},5:{ed:9,td:7,name:aa.Jo},6:{ed:9,td:7,name:aa.yo},7:{ed:2,td:0,name:aa.Ao},8:{ed:1,td:2,name:aa.Do},10:{ed:2,td:7,name:aa.zo},13:{ed:6,td:7,name:aa.uo},15:{ed:3,td:0,name:aa.Bo}},Is={1009:Ds.prototype.fl,1012:Ds.prototype.hl,1013:Ds.prototype.el,1015:Ds.prototype.gl},Js={1010:Ds.prototype.Bm,1013:Ds.prototype.Am,1015:Ds.prototype.zm};
|
||||
Ra(function(){for(var a=hb(document,"pcx86","fdc"),b=0;b<a.length;b++){var c=a[b],d=ib(c),d=new Ds(d);gb(d,c)}});function Z(a){t.call(this,"HDC",a);this.dmaRead=Z.prototype.ek;this.dmaWrite=Z.prototype.fk;this.dmaWriteBuffer=Z.prototype.uk;this.dmaWriteFormat=Z.prototype.vk;this.X=[];this.ia=a.drives;this.L="at"==a.type}da(Z,t);l=Z.prototype;
|
||||
l.yb=function(a,b,c){var d=this;switch(b){case "saveHD0":case "saveHD1":return this.ja[b]=c,c.onclick=function(a){return function(){var b=d.A&&d.A[a];if(b&&b.sa){var b=b.sa,c=b.th||b.Rc,e=c.lastIndexOf(".");0<=e&&(c=c.substr(0,e));c+=".img";b=Pa(Bs(b),"octet-stream",!0,c);r(b)}else d.ua("Hard drive "+a+" is not available.")}}(+b.slice(-1)),!0}return!1};
|
||||
l.ic=function(a,b,c,d){this.na=b;this.S=c;this.Ea=d;this.oa=a;if(d=Tc(a,"drives"))this.X=d;else if(this.ia)try{this.X=eval("("+this.ia+")")}catch(e){r("HDC drive configuration error: "+e.message+" ("+this.ia+")")}this.V=Cb(a,"ChipSet");this.F=0;this.ka=3;sc(b,this,this.L?Dt:Et);uc(b,this,this.L?Ft:Gt);this.L&&(this.F++,this.V&&this.V.ba==Tj&&this.F++,this.ka=2,b.M[Ht]=2,b.O[Ht]=2);Ue(c,19,this.Kl.bind(this));Ue(c,64,this.Ll.bind(this));this.reset();It(this)||tb(this)};
|
||||
l.Pb=function(a,b){if(!b)if(!a)Jt(this),this.oa.V&&It(this,!0);else if(!this.restore(a))return!1;return!0};l.Ob=function(a){return a?this.save():!0};function os(a){return a.oa?a.oa.qa:""}function ps(a){return a.oa?a.oa.B||"":""}l.reset=function(){Jt(this,null,!0)};l.save=function(){var a=new Ye(this);a.set(0,Kt(this));return a.data()};l.restore=function(a){return Jt(this,a[0])};
|
||||
function Jt(a,b,c){var d=0,e=!0;a.La=-1;if(a.L){if(b||(b=[0,0,0,0,0,0,0,Lt,0,[0,-1]]),a.H=b[d++],a.ta=b[d++],a.I=b[d++],a.da=b[d++],a.ca=b[d++],a.aa=b[d++],a.O=b[d++],a.Y=b[d++],a.fa=b[d++],a.K=b[d++],"object"==typeof a.K){var f=a.K;a.K=f[0];a.La=f[1]}}else b||(b=[0,Mt,Array(14),0,0]),a.W=b[d++],a.Y=b[d++],a.G=b[d++],a.D=b[d++],a.C=b[d++],a.qa=b[d++],a.pa=b[d++],a.ma=b[d++],f=b[d++],void 0!==f?a.M=f:void 0===a.M&&(a.M=-1);void 0===a.A&&(a.A=Array(a.X.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.X[d],p=b[d],y=c,w=0,z=!0;p||(p=[Nt,0,!1,Array(8)]);k.La=h;k.errorCode=p[w++];k.Vj=p[w++];k.oe=p[w++];k.de=p[w++];k.ee=p[w++];k.Ta=p[w++];k.Ya=p[w++];k.Ad=p[w++];k.ab=p[w++];k.sd=p[w++];k.tb=p[w++];k.yf=g.L?0:1;k.name=m.name;void 0===k.name&&(k.name=Ot);k.path=m.path;k.mode=m.mode||(k.path?"preload":"local");"demandro"!=k.mode&&"demandrw"!=k.mode||ps(g)||(k.mode="local");k.type=m.type;if(void 0===k.type||void 0===Pt[g.F][k.type])k.type=g.ka;m=Pt[g.F][k.type];
|
||||
k.Va=m[2]||17;k.mb=m[3]||512;if(y&&g.V){var m=g.V,E=k.type;if(m.A){var y=null,ba=m.A[18];15<E&&(y=E,E=15);h?(ba=ba&240|E,E=26):(ba=ba&15|E<<4,E=25);var ca=m;ca.A&&(ca.A[18]=ba,Dk(ca));null!=y&&m.A&&(m.A[E]=y,Dk(m))}}void 0===k.sa&&(k.sa=null,g.ua("Type "+k.type+' "'+k.name+'" is fixed disk '+h,!0));Qt(g,k);k.Pa=p[w++];k.Ra=null;k.sa&&(g=p[w],void 0!==g&&0>k.sa.restore(g)&&(z=!1),z&&void 0!==k.Pa&&(k.Ra=k.sa.seek(k.Ad,k.Ta,k.ab+k.yf)));z||(e=!1);null!=a.W&&1>=d&&(a.W|=(f.type&3)<<(1-d<<1))}0<=a.La&&
|
||||
l.ic=function(a,b,c,d){this.na=b;this.S=c;this.Ea=d;this.oa=a;if(d=Tc(a,"drives"))this.X=d;else if(this.ia)try{this.X=eval("("+this.ia+")")}catch(e){r("HDC drive configuration error: "+e.message+" ("+this.ia+")")}this.V=Cb(a,"ChipSet");this.F=0;this.ka=3;sc(b,this,this.L?Et:Ft);uc(b,this,this.L?Gt:Ht);this.L&&(this.F++,this.V&&this.V.ba==Tj&&this.F++,this.ka=2,b.M[It]=2,b.O[It]=2);Ue(c,19,this.Kl.bind(this));Ue(c,64,this.Ll.bind(this));this.reset();Jt(this)||tb(this)};
|
||||
l.Pb=function(a,b){if(!b)if(!a)Kt(this),this.oa.V&&Jt(this,!0);else if(!this.restore(a))return!1;return!0};l.Ob=function(a){return a?this.save():!0};function os(a){return a.oa?a.oa.qa:""}function ps(a){return a.oa?a.oa.B||"":""}l.reset=function(){Kt(this,null,!0)};l.save=function(){var a=new Ye(this);a.set(0,Lt(this));return a.data()};l.restore=function(a){return Kt(this,a[0])};
|
||||
function Kt(a,b,c){var d=0,e=!0;a.La=-1;if(a.L){if(b||(b=[0,0,0,0,0,0,0,Mt,0,[0,-1]]),a.H=b[d++],a.ta=b[d++],a.I=b[d++],a.da=b[d++],a.ca=b[d++],a.aa=b[d++],a.O=b[d++],a.Y=b[d++],a.fa=b[d++],a.K=b[d++],"object"==typeof a.K){var f=a.K;a.K=f[0];a.La=f[1]}}else b||(b=[0,Nt,Array(14),0,0]),a.W=b[d++],a.Y=b[d++],a.G=b[d++],a.D=b[d++],a.C=b[d++],a.qa=b[d++],a.pa=b[d++],a.ma=b[d++],f=b[d++],void 0!==f?a.M=f:void 0===a.M&&(a.M=-1);void 0===a.A&&(a.A=Array(a.X.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.X[d],p=b[d],y=c,w=0,z=!0;p||(p=[Ot,0,!1,Array(8)]);k.La=h;k.errorCode=p[w++];k.Vj=p[w++];k.oe=p[w++];k.de=p[w++];k.ee=p[w++];k.Ta=p[w++];k.Ya=p[w++];k.Ad=p[w++];k.ab=p[w++];k.sd=p[w++];k.tb=p[w++];k.yf=g.L?0:1;k.name=m.name;void 0===k.name&&(k.name=Pt);k.path=m.path;k.mode=m.mode||(k.path?"preload":"local");"demandro"!=k.mode&&"demandrw"!=k.mode||ps(g)||(k.mode="local");k.type=m.type;if(void 0===k.type||void 0===Qt[g.F][k.type])k.type=g.ka;m=Qt[g.F][k.type];
|
||||
k.Va=m[2]||17;k.mb=m[3]||512;if(y&&g.V){var m=g.V,E=k.type;if(m.A){var y=null,ba=m.A[18];15<E&&(y=E,E=15);h?(ba=ba&240|E,E=26):(ba=ba&15|E<<4,E=25);var ca=m;ca.A&&(ca.A[18]=ba,Dk(ca));null!=y&&m.A&&(m.A[E]=y,Dk(m))}}void 0===k.sa&&(k.sa=null,g.ua("Type "+k.type+' "'+k.name+'" is fixed disk '+h,!0));Rt(g,k);k.Pa=p[w++];k.Ra=null;k.sa&&(g=p[w],void 0!==g&&0>k.sa.restore(g)&&(z=!1),z&&void 0!==k.Pa&&(k.Ra=k.sa.seek(k.Ad,k.Ta,k.ab+k.yf)));z||(e=!1);null!=a.W&&1>=d&&(a.W|=(f.type&3)<<(1-d<<1))}0<=a.La&&
|
||||
(a.B=a.A[a.La]);return e}
|
||||
function Kt(a){var b=0,c=[];a.L?(c[b++]=a.H,c[b++]=a.ta,c[b++]=a.I,c[b++]=a.da,c[b++]=a.ca,c[b++]=a.aa,c[b++]=a.O,c[b++]=a.Y,c[b++]=a.fa,c[b++]=[a.K,a.La]):(c[b++]=a.W,c[b++]=a.Y,c[b++]=a.G,c[b++]=a.D,c[b++]=a.C,c[b++]=a.qa,c[b++]=a.pa,c[b++]=a.ma,c[b++]=a.M);for(var d=0,e=[],f=0;f<a.A.length;f++){var g=d++,h=a.A[f],k=0,m=[];m[k++]=h.errorCode;m[k++]=h.Vj;m[k++]=h.oe;m[k++]=h.de;m[k++]=h.ee;m[k++]=h.Ta;m[k++]=h.Ya;m[k++]=h.Ad;m[k++]=h.ab;m[k++]=h.sd;m[k++]=h.tb;m[k++]=h.Pa;m[k]=h.sa?h.sa.save():null;
|
||||
e[g]=m}c[b]=e;return c}function Qt(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.de[2])?e=b.de[0]<<8|b.de[1]:c=b.type);null==c||d||(d=Pt[a.F][c][1],e=Pt[a.F][c][0]);d&&((c=Pt[a.F][b.type])&&e!=c[0]&&d!=c[1]&&a.ua("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.hb=e,b.Ya=d,null==b.sa&&(b.sa=new ks(a,b,b.mode)))}}
|
||||
function It(a,b){b||(a.J=0);for(var c=0;c<a.A.length;c++){var d=a.A[c];if(d.name&&d.path){if(!(b&&d.sa&&d.sa.Gf)){var e;e=a;var f=d.name,d=d.path,g=e.A[c];g.le?(e.ua("Drive "+c+" busy"),e=!0):(g.le=!0,g.Hd=!0,e.J++,(g.sa||new ks(e,g,g.mode)).load(f,d,null,e.wk),e=!1);!e&&b&&tb(a,!1)}}else b&&void 0!==d.type&&(d.sa=null,Qt(a,d,d.type))}return!!a.J}
|
||||
l.wk=function(a,b,c){a.le=!1;if(a.sa=b)this.ua('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.La),a.Hd),b=b.info(),b[0]==a.hb&&b[1]==a.Ya&&b[2]==a.Va&&b[3]==a.mb||this.ua("Warning: disk geometry ("+b[0]+":"+b[1]+":"+b[2]+") does not match "+Rt[this.F]+" drive type "+a.type+" ("+a.hb+":"+a.Ya+":"+a.Va+")");a.Hd&&(a.Hd=!1,--this.J||tb(this))};
|
||||
l.Hl=function(){var a=0;this.D<this.C&&(a=this.G[this.D]);this.V&&Mf(this.V,5);this.Y&=~St;++this.D>=this.C&&(this.D=this.C=0,this.Y&=~(Tt|Ut|Xt));return a};l.Xm=function(a,b){this.C<this.G.length&&(this.G[this.C++]=b);a=this.G[0]!=Yt?6:this.G.length;6==this.C&&(this.Y&=~Zt);this.C>=a&&(this.Y|=Tt,this.Y&=~Zt,$t(this))};l.Il=function(){var a=this.Y;this.D<this.C&&(this.Y|=Zt);return a};l.$m=function(a,b){this.qa=b;this.V&&Mf(this.V,5);Jt(this)};l.Gl=function(){return this.W};
|
||||
l.Zm=function(a,b){this.pa=b;this.Y=Zt|Ut|Xt};l.Ym=function(a,b){this.ma=b};l.ph=function(){};function au(a){var b=-1;a.B&&(b=a.we(a.B,function(){}),(1==a.B.Pa||a.B.Pa==a.B.mb)&&1<a.B.Pa&&(a.B.tb-=a.B.mb,a.I=a.I-1&255,a.B.tb>=a.B.mb?(a.Y=bu,a.we(a.B,function(b){0<=b?(cu(a),a.V&&a.V.ba==Tj&&(a.Y=0),a.Y=a.Y|Lt|du|eu):(a.Y=fu,a.H=gu)},!1)):a.Y=Lt|du));return b}l.gk=function(){return au(this)|au(this)<<8};
|
||||
function hu(a,b){a.B&&a.B.tb>=a.B.mb&&(0>iu(a.B,b)?(a.Y=fu,a.H=gu):(1==a.B.Pa||a.B.Pa==a.B.mb)&&1<a.B.Pa&&(a.B.tb-=a.B.mb,a.I=a.I-1&255,cu(a),a.Y=Lt|du,a.B.tb>=a.B.mb&&(a.Y|=eu)))}l.hm=function(a,b){hu(this,b&255);hu(this,b>>8&255)};l.Ok=function(){return this.H};l.mm=function(a,b){this.ta=b};l.Qk=function(){return this.I};l.km=function(a,b){this.I=b};l.Rk=function(){return this.da};l.lm=function(a,b){this.da=b};l.Mk=function(){return this.ca};l.gm=function(a,b){this.ca=b};l.Lk=function(){return this.aa};
|
||||
l.fm=function(a,b){this.aa=b};l.Nk=function(){return this.O};l.im=function(a,b){this.O=b;this.Y=this.A[this.O&ju?1:0]?this.Y|Lt|du:this.Y&~Lt};l.Sk=function(){var a=this.Y;this.Y&Lt&&(this.Y&=~bu);return a};l.em=function(a,b){this.fa=b;this.V&&Mf(this.V,14);ku(this)};l.jm=function(a,b){this.K&lu&&!(b&lu)&&(this.H=mu);this.K=b};
|
||||
function ku(a){var b=!1,c=a.fa,d=a.O&ju?1:0,e=a.O&nu,f=a.ca|(a.aa&ou)<<8,g=a.da,h=a.I||256;a.La=-1;a.B=null;a.H=pu;a.Y=Lt|du;var k=a.A[d];k?(k.Ad=f,k.Ta=e,k.ab=g,k.tb=h*k.mb,c=c>=qu?c:c&ru,k.Ra=null,k.Pa=0,k.errorCode=0,a.La=d,a.B=k):c=-1;switch(c&ru){case su:b=!0;break;case tu:a.Y=bu;a.we(k,function(b){0<=b&&a.V?(cu(a),a.Y=Lt|du|eu):(a.Y=fu,a.H=gu)},!1);break;case uu:a.Y=eu;break;case vu:b=!0;break;case wu:b=!0;break;case qu:a.H=mu;b=!0;break;case xu:k.Ya=e+1,k.Va=h,b=!0}b&&cu(a)}
|
||||
function cu(a){!a.V||a.K&yu||Of(a.V,14,120)}
|
||||
function $t(a){a.D=0;var b=zu(a),c=zu(a),d=c&32,e=d>>5,f=c&31,g=zu(a),h=zu(a),k=g<<2&768|h,m=g&63,p=zu(a),y=zu(a),w=a.A[e];w&&(w.Ad=k,w.Ta=f,w.ab=m,w.tb=p*w.mb);switch(b){case Au:Bu(a,w?w.errorCode:Cu);Du(a,c);Du(a,g);Du(a,h);Du(a,Eu|d);b=-1;break;case Yt:for(c=0;0<=(b=zu(a));)w&&c<w.de.length&&(w.de[c++]=b);w&&Qt(a,w);b=Eu;w||a.M!=e||(a.M=-1,b=Fu);Bu(a,b|d);b=-1;break;case Gu:case Hu:Bu(a,Eu|d),b=-1}if(0<=b)switch(void 0===w?b=-1:(w.errorCode=Nt,w.Vj=0),b){case Iu:Bu(a,Eu|d);break;case Ju:w.He=y;
|
||||
Bu(a,Eu|d);break;case Ku:Bu(a,Eu|d);break;case Lu:Mu(a,w,function(b){Bu(a,b|d)});break;case Nu:Ou(a,w,function(b){Bu(a,b|d)});break;case Pu:Qu(a,w,function(b){Bu(a,b|d)});break;default:Bu(a,Fu|d)}}function zu(a){var b=-1;a.D<a.C&&(b=a.G[a.D++]);return b}function Bu(a,b){a.D=a.C=0;void 0!==b&&Du(a,b);a.V&&Of(a.V,5);a.Y|=St}function Du(a,b){a.G[a.C++]=b}l.ek=function(a,b,c){void 0===b||0>b?this.we(a,c):c(-1,!1)};l.fk=function(a,b){return void 0!==b&&0<=b?iu(a,b):-1};
|
||||
l.uk=function(a,b){void 0!==b&&0<=b?(a.Pa<a.ee.length?a.ee[a.Pa++]=b:(a.errorCode=Ru,b=-1),a=b):a=-1;return a};l.vk=function(a,b){if(void 0!==b&&0<=b)a:if(a.errorCode)a=-1;else{a.Fc[a.ie++]=b;if(a.ie==a.Fc.length){a.Ad=a.Fc[0];a.Ta=a.Fc[1];a.ab=a.Fc[2];a.tb=128<<a.Fc[3];for(var c=a.ie=0;c<a.tb;c++)if(0>iu(a,a.ci)){a=-1;break a}a.Af++}a.Af>=a.sd&&(b=-1);a=b}else a=-1;return a};
|
||||
function Mu(a,b,c){b.errorCode=Cu;if(b.sa&&(b.Ra=null,a.V)){b.errorCode=Nt;Dl(a.V,3,a,"dmaRead",b);zl(a.V,3,function(a){a||b.errorCode!=Nt||(b.errorCode=Cu);c(b.errorCode?Fu:Eu)});return}c(b.errorCode?Fu:Eu)}function Ou(a,b,c){b.errorCode=Cu;if(b.sa&&(b.Ra=null,a.V)){b.errorCode=Nt;Dl(a.V,3,a,"dmaWrite",b);zl(a.V,3,function(a){a||(b.errorCode==Nt&&(b.errorCode=Cu),b.errorCode==Ru&&(b.errorCode=Nt));c(b.errorCode?Fu:Eu)});return}c(b.errorCode?Fu:Eu)}
|
||||
function Qu(a,b,c){b.errorCode=Cu;b.ee&&b.ee.length==b.tb||(b.ee=Array(b.tb));b.Pa=0;a.V?(b.errorCode=Nt,Dl(a.V,3,a,"dmaWriteBuffer",b),zl(a.V,3,function(a){a||b.errorCode!=Nt||(b.errorCode=Cu);c(b.errorCode?Fu:Eu)})):c(b.errorCode?Fu:Eu)}
|
||||
l.we=function(a,b,c){var d=-1,e=null,f=0;if(a.errorCode)return b&&b(d,!1,e,f),d;var g=!1!==c?1:0;if(a.Ra&&(f=a.Pa,d=a.sa.read(a.Ra,a.Pa),a.Pa+=g,0<=d))return e=a.Ra,b&&b(d,!1,e,f),d;if(b){if(a.sa)return a.sa.seek(a.Ad,a.Ta,a.ab+a.yf,!1,function(c,k){(a.Ra=c)?(e=c,f=a.Pa=0,Su(a),d=a.sa.read(a.Ra,a.Pa),a.Pa+=g):a.errorCode=Ru;b(d,k,e,f)}),d;a.errorCode=Ru;b(d,!1,e,f)}return d};
|
||||
function iu(a,b){if(a.errorCode)return-1;do{if(a.Ra&&a.sa.write(a.Ra,a.Pa++,b))break;a.sa&&a.sa.seek(a.Ad,a.Ta,a.ab+a.yf,!0,function(b){a.Ra=b});if(!a.Ra){a.errorCode=Ru;b=-1;break}a.Pa=0;Su(a)}while(1);return b}function Su(a){a.ab++;var b=1-a.yf;a.ab>=a.Va+b&&(a.ab=b,a.Ta++,a.Ta>=a.Ya&&(a.Ta=0,a.Ad++))}l.Kl=function(){var a=this.S.K&255;!(this.S.F>>8)&&128<a&&(this.M=a-128);return!0};l.Ll=function(){var a;(a=this.S.F>>8||!this.V)||(a=!(this.V.$b[0].Wc&64));return a?!0:!1};
|
||||
var Ot="Hard Drive",Rt=["XTC","ATC","COMPAQ"],Pt=[{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]}],Ht=496,mu=1,pu=0,gu=16,ou=3,nu=15,ju=16,fu=1,eu=8,du=16,Lt=64,bu=128,su=16,tu=32,uu=48,vu=64,wu=
|
||||
112,qu=144,xu=145,ru=240,yu=2,lu=4,Eu=0,Fu=2,Iu=0,Ju=1,Au=3,Ku=5,Lu=8,Nu=10,Yt=12,Pu=15,Gu=224,Hu=228,Nt=0,Cu=4,Ru=20,Mt=0,Zt=1,Tt=2,Ut=4,Xt=8,St=32,Et={800:Z.prototype.Hl,801:Z.prototype.Il,802:Z.prototype.Gl},Dt={496:Z.prototype.gk,497:Z.prototype.Ok,498:Z.prototype.Qk,499:Z.prototype.Rk,500:Z.prototype.Mk,501:Z.prototype.Lk,502:Z.prototype.Nk,503:Z.prototype.Sk},Gt={800:Z.prototype.Xm,801:Z.prototype.$m,802:Z.prototype.Zm,803:Z.prototype.Ym,807:Z.prototype.ph,811:Z.prototype.ph,815:Z.prototype.ph},
|
||||
Ft={496:Z.prototype.hm,497:Z.prototype.mm,498:Z.prototype.km,499:Z.prototype.lm,500:Z.prototype.gm,501:Z.prototype.fm,502:Z.prototype.im,503:Z.prototype.em,1014:Z.prototype.jm};Ra(function(){for(var a=hb(document,"pcx86","hdc"),b=0;b<a.length;b++){var c=a[b],d=ib(c),d=new Z(d);gb(d,c)}});
|
||||
function Tu(a,b,c){t.call(this,"Computer",a);var d=this;Uu(this,b);this.O=Tc(this,"autoPower",a);this.D=0;this.ma=a.busWidth||a.buswidth;this.A=Vu;this.K=null;this.H=this.da=!1;this.pa=Tc(this,"url")||"";this.qa=(Math.random()+.1).toString(36).substr(2,12);this.B=Wu(this);if(this.S=fb("CPU",this.id)){this.Ea=fb("Debugger",this.id);this.C=[];for(b=null;b=Cb(this,"Video",b);)this.C.push(b);this.na=new Tb({id:this.Wd+".bus",busWidth:this.ma},this.S,this.Ea);var e,f=jb(this.id);this.aa=(this.F=fb("Panel",
|
||||
this.id))&&this.F.ja.print;this.fa=this.ua;this.ia=this.print;this.ka=this.ub;this.aa&&(this.fa=this.F.ua,this.ia=this.F.print,this.ka=this.F.ub);for(b=0;b<f.length;b++)e=f[b],e.ua=function(a,b,c){Xu(d,a);return d.fa.call(this,a,b,c)}.bind(e),e.print=function(a){return d.ia.call(this,a)}.bind(e),e.ub=function(a,b,c){Xu(d,a,b);return d.ka.call(this,a,b,c)}.bind(e);this.M=0;this.aa||Yu(this);this.ub("PCx86 v1.35.2\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<f.length;b++)e=f[b],e.ic&&e.ic(this,this.na,this.S,this.Ea);b=null;e=Tc(this,"resume");void 0!==e&&(1<e.length?b=this.J=e:this.A=parseInt(e,10));e=!1;f=Na("state");f||(e=!0,f=Tc(this,"state",a));f&&(b=this.W=f,e||(this.H=!0,this.A=Vu),this.A&&(this.L=new Ye(this,"1.35.2"),this.L.load()?b=null:delete this.L));!b&&this.A&&(b=Zu(this))&&(this.H=!0);if(this.X=b){var g="Loading "+this.X+"...";Fa(this.X,null,!0,function(a,b,c){c?(d.J=null,d.H=!1,d.ua("Unable to load machine state from server (error "+
|
||||
c+(b?": "+va(b):"")+")")):(d.K=b,d.da=!0);tb(d)},function(){d.ub(g,qb.ae)})}else tb(this);this.ja.power||(this.O=!0);!c&&this.O&&$u(this,this.bf)}else r("Unable to find CPU component")}da(Tu,t);function Yu(a){for(var b=0;b<a.C.length;b++){var c=a.C[b];c&&(c=c.Jf)&&(c.style.opacity="1",c.style.lineHeight="1",a.M++)}}function Xu(a,b,c){if(a.M)for(var d=0;d<a.C.length;d++){var e=a.C[d];e&&(e=e.Jf)&&(c!=qb.ae||"..."!=b.slice(-3)?cb(e,b+"\n"):db(e,b,b+"."))}}
|
||||
function Uu(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 Tc(a,b,c){var d=Na(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 $u(a,b,c){for(var d=jb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!sb(f)){sb(f,function(){$u(a,b,c)});return}}b.call(a,c)}
|
||||
function av(a,b){var c=new Ye(a,"1.35.2",bv);if(c.load()&&cv(c)){var d=c.get(dv),e=b?b.get(dv):"unknown";d!=e&&(a.ua("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}l=Tu.prototype;
|
||||
l.bf=function(a){void 0===a&&(a=this.A||(this.K?ev:Vu));if(!this.D){this.D++;var b=!1,c=!1;this.ca=!1;var d=this.L||new Ye(this,"1.35.2");if(a==fv)b=!0;else if(a>Vu){if(d.load(this.K)){this.G=new Ye(this,"1.35.2",gv);this.G.load()&&(a!=ev&&hv(this,d)&&(a=iv),jv(this.G));this.G.set(dv,xa());kv(this.G);var e=this.A&&!this.H;if(a==ev||bb("Click OK to restore the previous PCx86 machine state.")){if(c=cv(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=g?(this.ua("Error: "+
|
||||
g),"unable to verify user"==g&&(La(lv,""),this.B=null)):this.ub(f+": "+g),jv(d),d.load()?(c=cv(d),e=!0):c=!1))}e&&av(this,c?d:null)}else a==iv&&d.clear()}else av(this);delete this.K;delete this.L}e=jb(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.S&&(c=mv(this,g,d,b,c));b=[d,a,c];a!=fv?$u(this,this.oi,b):this.oi(b)}};
|
||||
function mv(a,b,c,d,e){if(!b.Z.Zb){b.Z.Zb=!0;if(b.Pb){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/-[0-9]+\./i,"."))));"string"===typeof f&&(f=null);!b.Pb(f,d)&&f&&(b.ua("Unable to restore hardware state")&&(a.W&&!a.da?(c.clear(),a.A=Vu,window&&window.location.reload()):a.ca=!0),b.Pb(null),e=!1)}b.Z.If=!0;if(!d&&b.xi)for(a=b.xi.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
|
||||
l.oi=function(a){var b=a[0],c=0>a[1];a=a[2];if(!this.Z.If){for(var d=0;d<this.C.length;d++){var e=this.C[d];e&&(e=e.Jf)&&(e.style.opacity="0",e.style.lineHeight="0",e.value="")}this.M=0;this.Z.If=!0}this.Z.Zb=!0;if(d=this.ja.power)d.textContent="Shutdown";this.S&&(mv(this,this.S,b,c,a),this.S.Ed());this.ca&&(hv(this,b),b.clear());!c&&this.G&&(this.G.clear(),delete this.G);this.D=0};
|
||||
function hv(a,b){if(!a.Z.jf){if(bb("There may be a problem with your PCx86 machine.\n\nTo help us diagnose it, click OK to send this PCx86 machine state to http://www.pcjs.org.")){var c=a.B||"";b=b.toString();var d={app:"PCx86",ver:"1.35.2"};d.url=a.pa;d.user=c;d.type="bug";d.data=b;Fa("http://www.pcjs.org/api/v1/report",d,!0)}return!0}return!1}
|
||||
function nv(a,b,c){var d,e="none";if(a.D)return null;a.D--;var f=new Ye(a,"1.35.2"),g=new Ye(a,"1.35.2",bv),h=xa();g.set(dv,h);f.set(dv,h);f.set(ov,"1.35.2");f.set(pv,window?window.location.href:null);f.set(qv,window?window.navigator.userAgent:"");a.S&&a.S.Ob&&(d=a.S.Ob(b,c),"object"===typeof d&&f.set(a.S.id,d),c&&(a.S.Z.Zb=!1,!1===d&&(e=null)));for(var h=jb(a.id),k=0;k<h.length;k++){var m=h[k];m.Z.Zb&&(m.Ob&&(d=m.Ob(b,c),"object"===typeof d&&f.set(m.id,d)),c&&(m.Z.Zb=!1,!1===d&&(e=null)))}e&&(c?
|
||||
(h=d=!1,b?(a.B&&rv(a,a.B,f.toString()),kv(g)&&kv(f)||(e=null,d=h=!0)):a.A&&(d=!0,h=a.A==sv),d&&f.clear(h)):e=f.toString());c&&(a.Z.Zb=!1,b=a.ja.power)&&(b.textContent="Power");a.D=0;return e}l.reset=function(){this.na&&this.na.reset&&this.na.reset();for(var a=jb(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.na&&c.reset&&c.reset()}};l.start=function(a,b){for(var c=jb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};
|
||||
function Lt(a){var b=0,c=[];a.L?(c[b++]=a.H,c[b++]=a.ta,c[b++]=a.I,c[b++]=a.da,c[b++]=a.ca,c[b++]=a.aa,c[b++]=a.O,c[b++]=a.Y,c[b++]=a.fa,c[b++]=[a.K,a.La]):(c[b++]=a.W,c[b++]=a.Y,c[b++]=a.G,c[b++]=a.D,c[b++]=a.C,c[b++]=a.qa,c[b++]=a.pa,c[b++]=a.ma,c[b++]=a.M);for(var d=0,e=[],f=0;f<a.A.length;f++){var g=d++,h=a.A[f],k=0,m=[];m[k++]=h.errorCode;m[k++]=h.Vj;m[k++]=h.oe;m[k++]=h.de;m[k++]=h.ee;m[k++]=h.Ta;m[k++]=h.Ya;m[k++]=h.Ad;m[k++]=h.ab;m[k++]=h.sd;m[k++]=h.tb;m[k++]=h.Pa;m[k]=h.sa?h.sa.save():null;
|
||||
e[g]=m}c[b]=e;return c}function Rt(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.de[2])?e=b.de[0]<<8|b.de[1]:c=b.type);null==c||d||(d=Qt[a.F][c][1],e=Qt[a.F][c][0]);d&&((c=Qt[a.F][b.type])&&e!=c[0]&&d!=c[1]&&a.ua("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.hb=e,b.Ya=d,null==b.sa&&(b.sa=new ks(a,b,b.mode)))}}
|
||||
function Jt(a,b){b||(a.J=0);for(var c=0;c<a.A.length;c++){var d=a.A[c];if(d.name&&d.path){if(!(b&&d.sa&&d.sa.Gf)){var e;e=a;var f=d.name,d=d.path,g=e.A[c];g.le?(e.ua("Drive "+c+" busy"),e=!0):(g.le=!0,g.Hd=!0,e.J++,(g.sa||new ks(e,g,g.mode)).load(f,d,null,e.wk),e=!1);!e&&b&&tb(a,!1)}}else b&&void 0!==d.type&&(d.sa=null,Rt(a,d,d.type))}return!!a.J}
|
||||
l.wk=function(a,b,c){a.le=!1;if(a.sa=b)this.ua('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.La),a.Hd),b=b.info(),b[0]==a.hb&&b[1]==a.Ya&&b[2]==a.Va&&b[3]==a.mb||this.ua("Warning: disk geometry ("+b[0]+":"+b[1]+":"+b[2]+") does not match "+St[this.F]+" drive type "+a.type+" ("+a.hb+":"+a.Ya+":"+a.Va+")");a.Hd&&(a.Hd=!1,--this.J||tb(this))};
|
||||
l.Hl=function(){var a=0;this.D<this.C&&(a=this.G[this.D]);this.V&&Mf(this.V,5);this.Y&=~Tt;++this.D>=this.C&&(this.D=this.C=0,this.Y&=~(Ut|Vt|Yt));return a};l.Xm=function(a,b){this.C<this.G.length&&(this.G[this.C++]=b);a=this.G[0]!=Zt?6:this.G.length;6==this.C&&(this.Y&=~$t);this.C>=a&&(this.Y|=Ut,this.Y&=~$t,au(this))};l.Il=function(){var a=this.Y;this.D<this.C&&(this.Y|=$t);return a};l.$m=function(a,b){this.qa=b;this.V&&Mf(this.V,5);Kt(this)};l.Gl=function(){return this.W};
|
||||
l.Zm=function(a,b){this.pa=b;this.Y=$t|Vt|Yt};l.Ym=function(a,b){this.ma=b};l.ph=function(){};function bu(a){var b=-1;a.B&&(b=a.we(a.B,function(){}),(1==a.B.Pa||a.B.Pa==a.B.mb)&&1<a.B.Pa&&(a.B.tb-=a.B.mb,a.I=a.I-1&255,a.B.tb>=a.B.mb?(a.Y=cu,a.we(a.B,function(b){0<=b?(du(a),a.V&&a.V.ba==Tj&&(a.Y=0),a.Y=a.Y|Mt|eu|fu):(a.Y=gu,a.H=hu)},!1)):a.Y=Mt|eu));return b}l.gk=function(){return bu(this)|bu(this)<<8};
|
||||
function iu(a,b){a.B&&a.B.tb>=a.B.mb&&(0>ju(a.B,b)?(a.Y=gu,a.H=hu):(1==a.B.Pa||a.B.Pa==a.B.mb)&&1<a.B.Pa&&(a.B.tb-=a.B.mb,a.I=a.I-1&255,du(a),a.Y=Mt|eu,a.B.tb>=a.B.mb&&(a.Y|=fu)))}l.hm=function(a,b){iu(this,b&255);iu(this,b>>8&255)};l.Ok=function(){return this.H};l.mm=function(a,b){this.ta=b};l.Qk=function(){return this.I};l.km=function(a,b){this.I=b};l.Rk=function(){return this.da};l.lm=function(a,b){this.da=b};l.Mk=function(){return this.ca};l.gm=function(a,b){this.ca=b};l.Lk=function(){return this.aa};
|
||||
l.fm=function(a,b){this.aa=b};l.Nk=function(){return this.O};l.im=function(a,b){this.O=b;this.Y=this.A[this.O&ku?1:0]?this.Y|Mt|eu:this.Y&~Mt};l.Sk=function(){var a=this.Y;this.Y&Mt&&(this.Y&=~cu);return a};l.em=function(a,b){this.fa=b;this.V&&Mf(this.V,14);lu(this)};l.jm=function(a,b){this.K&mu&&!(b&mu)&&(this.H=nu);this.K=b};
|
||||
function lu(a){var b=!1,c=a.fa,d=a.O&ku?1:0,e=a.O&ou,f=a.ca|(a.aa&pu)<<8,g=a.da,h=a.I||256;a.La=-1;a.B=null;a.H=qu;a.Y=Mt|eu;var k=a.A[d];k?(k.Ad=f,k.Ta=e,k.ab=g,k.tb=h*k.mb,c=c>=ru?c:c&su,k.Ra=null,k.Pa=0,k.errorCode=0,a.La=d,a.B=k):c=-1;switch(c&su){case tu:b=!0;break;case uu:a.Y=cu;a.we(k,function(b){0<=b&&a.V?(du(a),a.Y=Mt|eu|fu):(a.Y=gu,a.H=hu)},!1);break;case vu:a.Y=fu;break;case wu:b=!0;break;case xu:b=!0;break;case ru:a.H=nu;b=!0;break;case yu:k.Ya=e+1,k.Va=h,b=!0}b&&du(a)}
|
||||
function du(a){!a.V||a.K&zu||Of(a.V,14,120)}
|
||||
function au(a){a.D=0;var b=Au(a),c=Au(a),d=c&32,e=d>>5,f=c&31,g=Au(a),h=Au(a),k=g<<2&768|h,m=g&63,p=Au(a),y=Au(a),w=a.A[e];w&&(w.Ad=k,w.Ta=f,w.ab=m,w.tb=p*w.mb);switch(b){case Bu:Cu(a,w?w.errorCode:Du);Eu(a,c);Eu(a,g);Eu(a,h);Eu(a,Fu|d);b=-1;break;case Zt:for(c=0;0<=(b=Au(a));)w&&c<w.de.length&&(w.de[c++]=b);w&&Rt(a,w);b=Fu;w||a.M!=e||(a.M=-1,b=Gu);Cu(a,b|d);b=-1;break;case Hu:case Iu:Cu(a,Fu|d),b=-1}if(0<=b)switch(void 0===w?b=-1:(w.errorCode=Ot,w.Vj=0),b){case Ju:Cu(a,Fu|d);break;case Ku:w.He=y;
|
||||
Cu(a,Fu|d);break;case Lu:Cu(a,Fu|d);break;case Mu:Nu(a,w,function(b){Cu(a,b|d)});break;case Ou:Pu(a,w,function(b){Cu(a,b|d)});break;case Qu:Ru(a,w,function(b){Cu(a,b|d)});break;default:Cu(a,Gu|d)}}function Au(a){var b=-1;a.D<a.C&&(b=a.G[a.D++]);return b}function Cu(a,b){a.D=a.C=0;void 0!==b&&Eu(a,b);a.V&&Of(a.V,5);a.Y|=Tt}function Eu(a,b){a.G[a.C++]=b}l.ek=function(a,b,c){void 0===b||0>b?this.we(a,c):c(-1,!1)};l.fk=function(a,b){return void 0!==b&&0<=b?ju(a,b):-1};
|
||||
l.uk=function(a,b){void 0!==b&&0<=b?(a.Pa<a.ee.length?a.ee[a.Pa++]=b:(a.errorCode=Su,b=-1),a=b):a=-1;return a};l.vk=function(a,b){if(void 0!==b&&0<=b)a:if(a.errorCode)a=-1;else{a.Fc[a.ie++]=b;if(a.ie==a.Fc.length){a.Ad=a.Fc[0];a.Ta=a.Fc[1];a.ab=a.Fc[2];a.tb=128<<a.Fc[3];for(var c=a.ie=0;c<a.tb;c++)if(0>ju(a,a.ci)){a=-1;break a}a.Af++}a.Af>=a.sd&&(b=-1);a=b}else a=-1;return a};
|
||||
function Nu(a,b,c){b.errorCode=Du;if(b.sa&&(b.Ra=null,a.V)){b.errorCode=Ot;Dl(a.V,3,a,"dmaRead",b);zl(a.V,3,function(a){a||b.errorCode!=Ot||(b.errorCode=Du);c(b.errorCode?Gu:Fu)});return}c(b.errorCode?Gu:Fu)}function Pu(a,b,c){b.errorCode=Du;if(b.sa&&(b.Ra=null,a.V)){b.errorCode=Ot;Dl(a.V,3,a,"dmaWrite",b);zl(a.V,3,function(a){a||(b.errorCode==Ot&&(b.errorCode=Du),b.errorCode==Su&&(b.errorCode=Ot));c(b.errorCode?Gu:Fu)});return}c(b.errorCode?Gu:Fu)}
|
||||
function Ru(a,b,c){b.errorCode=Du;b.ee&&b.ee.length==b.tb||(b.ee=Array(b.tb));b.Pa=0;a.V?(b.errorCode=Ot,Dl(a.V,3,a,"dmaWriteBuffer",b),zl(a.V,3,function(a){a||b.errorCode!=Ot||(b.errorCode=Du);c(b.errorCode?Gu:Fu)})):c(b.errorCode?Gu:Fu)}
|
||||
l.we=function(a,b,c){var d=-1,e=null,f=0;if(a.errorCode)return b&&b(d,!1,e,f),d;var g=!1!==c?1:0;if(a.Ra&&(f=a.Pa,d=a.sa.read(a.Ra,a.Pa),a.Pa+=g,0<=d))return e=a.Ra,b&&b(d,!1,e,f),d;if(b){if(a.sa)return a.sa.seek(a.Ad,a.Ta,a.ab+a.yf,!1,function(c,k){(a.Ra=c)?(e=c,f=a.Pa=0,Tu(a),d=a.sa.read(a.Ra,a.Pa),a.Pa+=g):a.errorCode=Su;b(d,k,e,f)}),d;a.errorCode=Su;b(d,!1,e,f)}return d};
|
||||
function ju(a,b){if(a.errorCode)return-1;do{if(a.Ra&&a.sa.write(a.Ra,a.Pa++,b))break;a.sa&&a.sa.seek(a.Ad,a.Ta,a.ab+a.yf,!0,function(b){a.Ra=b});if(!a.Ra){a.errorCode=Su;b=-1;break}a.Pa=0;Tu(a)}while(1);return b}function Tu(a){a.ab++;var b=1-a.yf;a.ab>=a.Va+b&&(a.ab=b,a.Ta++,a.Ta>=a.Ya&&(a.Ta=0,a.Ad++))}l.Kl=function(){var a=this.S.K&255;!(this.S.F>>8)&&128<a&&(this.M=a-128);return!0};l.Ll=function(){var a;(a=this.S.F>>8||!this.V)||(a=!(this.V.$b[0].Wc&64));return a?!0:!1};
|
||||
var Pt="Hard Drive",St=["XTC","ATC","COMPAQ"],Qt=[{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]}],It=496,nu=1,qu=0,hu=16,pu=3,ou=15,ku=16,gu=1,fu=8,eu=16,Mt=64,cu=128,tu=16,uu=32,vu=48,wu=64,xu=
|
||||
112,ru=144,yu=145,su=240,zu=2,mu=4,Fu=0,Gu=2,Ju=0,Ku=1,Bu=3,Lu=5,Mu=8,Ou=10,Zt=12,Qu=15,Hu=224,Iu=228,Ot=0,Du=4,Su=20,Nt=0,$t=1,Ut=2,Vt=4,Yt=8,Tt=32,Ft={800:Z.prototype.Hl,801:Z.prototype.Il,802:Z.prototype.Gl},Et={496:Z.prototype.gk,497:Z.prototype.Ok,498:Z.prototype.Qk,499:Z.prototype.Rk,500:Z.prototype.Mk,501:Z.prototype.Lk,502:Z.prototype.Nk,503:Z.prototype.Sk},Ht={800:Z.prototype.Xm,801:Z.prototype.$m,802:Z.prototype.Zm,803:Z.prototype.Ym,807:Z.prototype.ph,811:Z.prototype.ph,815:Z.prototype.ph},
|
||||
Gt={496:Z.prototype.hm,497:Z.prototype.mm,498:Z.prototype.km,499:Z.prototype.lm,500:Z.prototype.gm,501:Z.prototype.fm,502:Z.prototype.im,503:Z.prototype.em,1014:Z.prototype.jm};Ra(function(){for(var a=hb(document,"pcx86","hdc"),b=0;b<a.length;b++){var c=a[b],d=ib(c),d=new Z(d);gb(d,c)}});
|
||||
function Uu(a,b,c){t.call(this,"Computer",a);var d=this;Vu(this,b);this.O=Tc(this,"autoPower",a);this.D=0;this.ma=a.busWidth||a.buswidth;this.A=Wu;this.K=null;this.H=this.da=!1;this.pa=Tc(this,"url")||"";this.qa=(Math.random()+.1).toString(36).substr(2,12);this.B=Xu(this);if(this.S=fb("CPU",this.id)){this.Ea=fb("Debugger",this.id);this.C=[];for(b=null;b=Cb(this,"Video",b);)this.C.push(b);this.na=new Tb({id:this.Wd+".bus",busWidth:this.ma},this.S,this.Ea);var e,f=jb(this.id);this.aa=(this.F=fb("Panel",
|
||||
this.id))&&this.F.ja.print;this.fa=this.ua;this.ia=this.print;this.ka=this.ub;this.aa&&(this.fa=this.F.ua,this.ia=this.F.print,this.ka=this.F.ub);for(b=0;b<f.length;b++)e=f[b],e.ua=function(a,b,c){Yu(d,a);return d.fa.call(this,a,b,c)}.bind(e),e.print=function(a){return d.ia.call(this,a)}.bind(e),e.ub=function(a,b,c){Yu(d,a,b);return d.ka.call(this,a,b,c)}.bind(e);this.M=0;this.aa||Zu(this);this.ub("PCx86 v1.35.2\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<f.length;b++)e=f[b],e.ic&&e.ic(this,this.na,this.S,this.Ea);b=null;e=Tc(this,"resume");void 0!==e&&(1<e.length?b=this.J=e:this.A=parseInt(e,10));e=!1;f=Na("state");f||(e=!0,f=Tc(this,"state",a));f&&(b=this.W=f,e||(this.H=!0,this.A=Wu),this.A&&(this.L=new Ye(this,"1.35.2"),this.L.load()?b=null:delete this.L));!b&&this.A&&(b=$u(this))&&(this.H=!0);if(this.X=b){var g="Loading "+this.X+"...";Fa(this.X,null,!0,function(a,b,c){c?(d.J=null,d.H=!1,d.ua("Unable to load machine state from server (error "+
|
||||
c+(b?": "+va(b):"")+")")):(d.K=b,d.da=!0);tb(d)},function(){d.ub(g,qb.ae)})}else tb(this);this.ja.power||(this.O=!0);!c&&this.O&&av(this,this.bf)}else r("Unable to find CPU component")}da(Uu,t);function Zu(a){for(var b=0;b<a.C.length;b++){var c=a.C[b];c&&(c=c.Jf)&&(c.style.opacity="1",c.style.lineHeight="1",a.M++)}}function Yu(a,b,c){if(a.M)for(var d=0;d<a.C.length;d++){var e=a.C[d];e&&(e=e.Jf)&&(c!=qb.ae||"..."!=b.slice(-3)?cb(e,b+"\n"):db(e,b,b+"."))}}
|
||||
function Vu(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 Tc(a,b,c){var d=Na(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 av(a,b,c){for(var d=jb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!sb(f)){sb(f,function(){av(a,b,c)});return}}b.call(a,c)}
|
||||
function bv(a,b){var c=new Ye(a,"1.35.2",cv);if(c.load()&&dv(c)){var d=c.get(ev),e=b?b.get(ev):"unknown";d!=e&&(a.ua("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}l=Uu.prototype;
|
||||
l.bf=function(a){void 0===a&&(a=this.A||(this.K?fv:Wu));if(!this.D){this.D++;var b=!1,c=!1;this.ca=!1;var d=this.L||new Ye(this,"1.35.2");if(a==gv)b=!0;else if(a>Wu){if(d.load(this.K)){this.G=new Ye(this,"1.35.2",hv);this.G.load()&&(a!=fv&&iv(this,d)&&(a=jv),kv(this.G));this.G.set(ev,xa());lv(this.G);var e=this.A&&!this.H;if(a==fv||bb("Click OK to restore the previous PCx86 machine state.")){if(c=dv(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=g?(this.ua("Error: "+
|
||||
g),"unable to verify user"==g&&(La(mv,""),this.B=null)):this.ub(f+": "+g),kv(d),d.load()?(c=dv(d),e=!0):c=!1))}e&&bv(this,c?d:null)}else a==jv&&d.clear()}else bv(this);delete this.K;delete this.L}e=jb(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.S&&(c=nv(this,g,d,b,c));b=[d,a,c];a!=gv?av(this,this.oi,b):this.oi(b)}};
|
||||
function nv(a,b,c,d,e){if(!b.Z.Zb){b.Z.Zb=!0;if(b.Pb){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/-[0-9]+\./i,"."))));"string"===typeof f&&(f=null);!b.Pb(f,d)&&f&&(b.ua("Unable to restore hardware state")&&(a.W&&!a.da?(c.clear(),a.A=Wu,window&&window.location.reload()):a.ca=!0),b.Pb(null),e=!1)}b.Z.If=!0;if(!d&&b.xi)for(a=b.xi.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
|
||||
l.oi=function(a){var b=a[0],c=0>a[1];a=a[2];if(!this.Z.If){for(var d=0;d<this.C.length;d++){var e=this.C[d];e&&(e=e.Jf)&&(e.style.opacity="0",e.style.lineHeight="0",e.value="")}this.M=0;this.Z.If=!0}this.Z.Zb=!0;if(d=this.ja.power)d.textContent="Shutdown";this.S&&(nv(this,this.S,b,c,a),this.S.Ed());this.ca&&(iv(this,b),b.clear());!c&&this.G&&(this.G.clear(),delete this.G);this.D=0};
|
||||
function iv(a,b){if(!a.Z.jf){if(bb("There may be a problem with your PCx86 machine.\n\nTo help us diagnose it, click OK to send this PCx86 machine state to http://www.pcjs.org.")){var c=a.B||"";b=b.toString();var d={app:"PCx86",ver:"1.35.2"};d.url=a.pa;d.user=c;d.type="bug";d.data=b;Fa("http://www.pcjs.org/api/v1/report",d,!0)}return!0}return!1}
|
||||
function ov(a,b,c){var d,e="none";if(a.D)return null;a.D--;var f=new Ye(a,"1.35.2"),g=new Ye(a,"1.35.2",cv),h=xa();g.set(ev,h);f.set(ev,h);f.set(pv,"1.35.2");f.set(qv,window?window.location.href:null);f.set(rv,window?window.navigator.userAgent:"");a.S&&a.S.Ob&&(d=a.S.Ob(b,c),"object"===typeof d&&f.set(a.S.id,d),c&&(a.S.Z.Zb=!1,!1===d&&(e=null)));for(var h=jb(a.id),k=0;k<h.length;k++){var m=h[k];m.Z.Zb&&(m.Ob&&(d=m.Ob(b,c),"object"===typeof d&&f.set(m.id,d)),c&&(m.Z.Zb=!1,!1===d&&(e=null)))}e&&(c?
|
||||
(h=d=!1,b?(a.B&&sv(a,a.B,f.toString()),lv(g)&&lv(f)||(e=null,d=h=!0)):a.A&&(d=!0,h=a.A==tv),d&&f.clear(h)):e=f.toString());c&&(a.Z.Zb=!1,b=a.ja.power)&&(b.textContent="Power");a.D=0;return e}l.reset=function(){this.na&&this.na.reset&&this.na.reset();for(var a=jb(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.na&&c.reset&&c.reset()}};l.start=function(a,b){for(var c=jb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};
|
||||
l.stop=function(a,b){for(var c=jb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
|
||||
l.yb=function(a,b,c){var d=this;switch(b){case "power":return this.ja[b]=c,c.onclick=function(){d.D||(d.Z.Zb?nv(d,!1,!0):$u(d,d.bf))},!0;case "reset":return this.ja[b]=c,c.onclick=function(){if(d.Z.Zb&&!d.D)if(d.S&&(d.S.Z.Ed=d.S.Z.vb),d.A&&!d.J){var a=d.Z.jf||!bb("Click OK to reset this PCx86 machine and discard all disk modifications.");nv(d,a,!0);!a&&d.W?window&&window.location.reload():(a||(d.V=!0),d.bf(Vu),d.V=!1)}else d.reset(),d.S&&d.S.Ed()},!0;case "save":if(sa(Ga(),"pcjs.org"))c.parentNode.removeChild(c);
|
||||
else return this.ja[b]=c,c.onclick=function(){var a=Wu(d,!0);if(a){var b=!!(d.A&&!d.J||d.W),c=nv(d,b);b?rv(d,a,c):d.ua("Resume disabled, machine state not saved")}},!0}return!1};
|
||||
function Wu(a,b){var c=a.B;c||((c=Ka(lv),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=tv(a,c))||a.ua("The user ID is invalid.")):b&&a.ua("Browser local storage is not available"));return c}
|
||||
function tv(a,b){a.B=null;b=Fa(Ga()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(La(lv,b.data),a.B=b.data)}catch(d){r(d.message+" ("+c+")")}return a.B}function Zu(a){var b=null;a.B&&(b=Ga()+"/api/v1/user?req=load&user="+a.B+"&state="+uv(a,"1.35.2"));return b}
|
||||
function rv(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=uv(a,"1.35.2");d.data=c;b=Fa(Ga()+"/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.ua("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.ua(c),La(lv,""),a.B=null)}}
|
||||
l.yb=function(a,b,c){var d=this;switch(b){case "power":return this.ja[b]=c,c.onclick=function(){d.D||(d.Z.Zb?ov(d,!1,!0):av(d,d.bf))},!0;case "reset":return this.ja[b]=c,c.onclick=function(){if(d.Z.Zb&&!d.D)if(d.S&&(d.S.Z.Ed=d.S.Z.vb),d.A&&!d.J){var a=d.Z.jf||!bb("Click OK to reset this PCx86 machine and discard all disk modifications.");ov(d,a,!0);!a&&d.W?window&&window.location.reload():(a||(d.V=!0),d.bf(Wu),d.V=!1)}else d.reset(),d.S&&d.S.Ed()},!0;case "save":if(sa(Ga(),"pcjs.org"))c.parentNode.removeChild(c);
|
||||
else return this.ja[b]=c,c.onclick=function(){var a=Xu(d,!0);if(a){var b=!!(d.A&&!d.J||d.W),c=ov(d,b);b?sv(d,a,c):d.ua("Resume disabled, machine state not saved")}},!0}return!1};
|
||||
function Xu(a,b){var c=a.B;c||((c=Ka(mv),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=uv(a,c))||a.ua("The user ID is invalid.")):b&&a.ua("Browser local storage is not available"));return c}
|
||||
function uv(a,b){a.B=null;b=Fa(Ga()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(La(mv,b.data),a.B=b.data)}catch(d){r(d.message+" ("+c+")")}return a.B}function $u(a){var b=null;a.B&&(b=Ga()+"/api/v1/user?req=load&user="+a.B+"&state="+vv(a,"1.35.2"));return b}
|
||||
function sv(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=vv(a,"1.35.2");d.data=c;b=Fa(Ga()+"/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.ua("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.ua(c),La(mv,""),a.B=null)}}
|
||||
function Cb(a,b,c){a=jb(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 fd(a,b){if(a.C.length){var c=0,d=0;!b&&window&&(c=window.scrollX,d=window.scrollY);a=a.C[0];a.D&&a.D.focus();!b&&window&&window.scrollTo(c,d)}}
|
||||
function gd(a,b){a.S&&(a=a.S,a.ui&&(b||!a.Z.vb||a.Z.mi)&&(P(a,"EAX",a.F),P(a,"EBX",a.G),P(a,"ECX",a.H),P(a,"EDX",a.K),P(a,"ESP",B(a)),P(a,"EBP",a.L),P(a,"ESI",a.J),P(a,"EDI",a.I),P(a,"CS",a.fa.ha),P(a,"DS",a.Ca.ha),P(a,"SS",a.W.ha),P(a,"ES",a.va.ha),P(a,"EIP",D(a)),b=Hd(a),P(a,"PS",b),P(a,"V",b&2048),P(a,"D",b&1024),P(a,"I",b&512),P(a,"T",b&256),P(a,"S",b&128),P(a,"Z",b&64),P(a,"A",b&16),P(a,"P",b&4),P(a,"C",b&1),80386==a.ba&&(P(a,"FS",a.qb.ha),P(a,"GS",a.rb.ha),P(a,"CR0",a.pa),P(a,"CR2",a.Xd),P(a,
|
||||
"CR3",a.nd))),b=a.ja.speed)&&(b.textContent=a.Z.vb&&a.R.vd?a.R.vd.toFixed(2)+"Mhz":"Stopped")}
|
||||
function md(a,b){for(var c=0;c<a.C.length;c++)qq(a.C[c],b);if(a.F&&(a=a.F,a.ma)){Nb(a,Ob,a.J,a.ka);if(a.Aa){b=a.na;var c=a.A,d,e;null==d&&(d=0);null==e&&(e=b.K-d|0);c||(c={qg:0,dd:0,jg:[]});var f=d>>>b.B;d=d+e-1>>>b.B;c.qg=0;for(c.dd=0;f<=d;)e=b.X[f],c.qg+=e.size,e.size&&(c.jg.push(Ba(Ib,f,0,0,e.type)),c.dd++),f++;a.A=c;a.ca=a.A.dd*a.na.A/(Hb*Sb);d=0;a.A.fi=0;a.A.Ge||(a.A.Ge=[]);e=-1;b=0;for(var g=-1,c=0;c<a.A.dd;c++){var h=a.A.jg[c],f=Ca(Ib.type,h),h=Ca(Ib.Hj,h);if(f!=e||h!=g+1)(g=c-b)&&(d+=Qb(a,
|
||||
b,g,e)),e=f,b=c;g=h}d+=Qb(a,b,c-b,e);e=a.A.rk!=d;a.A.rk=d;if(e){e=new zb(0,0,a.J.width,a.J.height);a.A.ce=[];b=a.A.dd;for(d=0;d<a.A.fi;d++)c=a.A.Ge[d].dd,a.A.ce.push(Ab(e,c,b,!d)),b-=c;for(d=0;d<a.A.ce.length;d++)e=a.A.Ge[d],b=c=a.A.ce[d],f=a.ka,(g=Pc[e.type])||(g=new yb),f.strokeStyle="black",f.strokeRect(b.x,b.y,b.xc,b.A),f.fillStyle="string"==typeof g?g:g.toString(),f.fillRect(b.x,b.y,b.xc,b.A),b=a,f=c,b.L=b.X,b.I=b.aa,c=f.x+(f.xc>>1),g=f.y+(f.A>>1),h=f.A,f.xc<f.A&&(h=f.xc,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 "+Rb),f=g,b.B=c,b.H=f,b=a,e=$b[e.type]+" ("+(e.dd*a.na.A/1024|0)+"Kb)",b.D.font=b.L,b.B-=b.D.measureText(e).width>>1,b.H+=(b.I>>1)-2,Pb(b,e),b.W&&(b.D.restore(),b.W=!1)}}else Pb(a,"This space intentionally left blank");a.context.drawImage(a.J,0,0,a.J.width,a.J.height,a.Fa,a.Ka,a.va,a.ya);a.ma=!1}}var gv="failsafe",bv="validate",dv="timestamp",ov="version",pv="url",qv="browser",lv="user",fv=-1,Vu=0,ev=1,iv=2,sv=3;
|
||||
Ra(function(){for(var a=hb(document,"pcx86-machine"),b=0;b<a.length;b++)for(var c=a[b],d=ib(c),c=hb(c,"pcx86","computer"),e=0;e<c.length;e++){var f=c[e],g=ib(f),g=new Tu(g,d,!0);gb(g,f);g.O&&$u(g,g.bf)}});Sa.show.push(function(){for(var a=hb(document,"pcx86","computer"),b=0;b<a.length;b++){var c=ib(a[b]);if(c=fb("Computer",c.id))c.Z.jf=!1,c.Z.If&&!c.Z.Zb&&c.bf(fv)}});
|
||||
Sa.exit.push(function(){for(var a=hb(document,"pcx86","computer"),b=0;b<a.length;b++){var c=ib(a[b]);if(c=fb("Computer",c.id))c.Z.jf=!0,c.Z.Zb&&nv(c,!(!c.A||c.J),!0)}});function Ye(a,b,c){this.id=a.id;this.Ea=a.Ea;this.A="";this.state={};this.B=this.C=!1;this.key=uv(a,b,c);jv(this,a.Lj)}l=Ye.prototype;l.set=function(a,b){try{this.state[a]=b}catch(c){}};l.get=function(a){return this.state[a]||null};l.data=function(){return this.state};
|
||||
l.load=function(a){return a?(this.A=a,this.B=!0,this.C=!1,!0):this.B?!0:Ha()&&(a=Ka(this.key))?(this.A=a,this.B=!0):!1};function cv(a){var b=!0;if(!a.C)try{a.state=JSON.parse(a.A),a.C=!0}catch(c){r(c.message||c),b=!1}return b}function kv(a){var b=!0;if(Ha()){var c=JSON.stringify(a.state);La(a.key,c)||(r("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}l.toString=function(){return this.state?JSON.stringify(this.state):this.A};
|
||||
function jv(a,b){a.A="";a.state={};a.B=a.C=!1;b&&a.set("parms",b)}l.clear=function(a){jv(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 uv(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}var vv=0;
|
||||
function wv(a,b,c,d,e,f){e("Loading "+a+"...");Fa(a,null,!0,function(g,h,k){k?(h||(h="unable to load "+a+" ("+k+")"),f(h,null)):xv(h,a,b,c,d,e,f)})}
|
||||
function xv(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{c&&($a(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),d=d.replace(/\$/g,"$$$$"),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>)/,
|
||||
"$1PCx86$2"),a=a.replace(/(<xsl:variable name="APPCLASS">).*?(<\/xsl:variable>)/,"$1pcx86$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(p){f=null,a=p.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,f)}}a?e?yv(a,f,h):h(a,null):g("no data"+(b?" for file: "+
|
||||
g),b.D.rotate(-Math.PI/2),c=g=0),h<b.I&&(b.I=h,b.L=b.I+"px "+Rb),f=g,b.B=c,b.H=f,b=a,e=$b[e.type]+" ("+(e.dd*a.na.A/1024|0)+"Kb)",b.D.font=b.L,b.B-=b.D.measureText(e).width>>1,b.H+=(b.I>>1)-2,Pb(b,e),b.W&&(b.D.restore(),b.W=!1)}}else Pb(a,"This space intentionally left blank");a.context.drawImage(a.J,0,0,a.J.width,a.J.height,a.Fa,a.Ka,a.va,a.ya);a.ma=!1}}var hv="failsafe",cv="validate",ev="timestamp",pv="version",qv="url",rv="browser",mv="user",gv=-1,Wu=0,fv=1,jv=2,tv=3;
|
||||
Ra(function(){for(var a=hb(document,"pcx86-machine"),b=0;b<a.length;b++)for(var c=a[b],d=ib(c),c=hb(c,"pcx86","computer"),e=0;e<c.length;e++){var f=c[e],g=ib(f),g=new Uu(g,d,!0);gb(g,f);g.O&&av(g,g.bf)}});Sa.show.push(function(){for(var a=hb(document,"pcx86","computer"),b=0;b<a.length;b++){var c=ib(a[b]);if(c=fb("Computer",c.id))c.Z.jf=!1,c.Z.If&&!c.Z.Zb&&c.bf(gv)}});
|
||||
Sa.exit.push(function(){for(var a=hb(document,"pcx86","computer"),b=0;b<a.length;b++){var c=ib(a[b]);if(c=fb("Computer",c.id))c.Z.jf=!0,c.Z.Zb&&ov(c,!(!c.A||c.J),!0)}});function Ye(a,b,c){this.id=a.id;this.Ea=a.Ea;this.A="";this.state={};this.B=this.C=!1;this.key=vv(a,b,c);kv(this,a.Lj)}l=Ye.prototype;l.set=function(a,b){try{this.state[a]=b}catch(c){}};l.get=function(a){return this.state[a]||null};l.data=function(){return this.state};
|
||||
l.load=function(a){return a?(this.A=a,this.B=!0,this.C=!1,!0):this.B?!0:Ha()&&(a=Ka(this.key))?(this.A=a,this.B=!0):!1};function dv(a){var b=!0;if(!a.C)try{a.state=JSON.parse(a.A),a.C=!0}catch(c){r(c.message||c),b=!1}return b}function lv(a){var b=!0;if(Ha()){var c=JSON.stringify(a.state);La(a.key,c)||(r("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}l.toString=function(){return this.state?JSON.stringify(this.state):this.A};
|
||||
function kv(a,b){a.A="";a.state={};a.B=a.C=!1;b&&a.set("parms",b)}l.clear=function(a){kv(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 vv(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}var wv=0;
|
||||
function xv(a,b,c,d,e,f){e("Loading "+a+"...");Fa(a,null,!0,function(g,h,k){k?(h||(h="unable to load "+a+" ("+k+")"),f(h,null)):yv(h,a,b,c,d,e,f)})}
|
||||
function yv(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{c&&($a(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),d=d.replace(/\$/g,"$$$$"),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>)/,
|
||||
"$1PCx86$2"),a=a.replace(/(<xsl:variable name="APPCLASS">).*?(<\/xsl:variable>)/,"$1pcx86$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(p){f=null,a=p.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,f)}}a?e?zv(a,f,h):h(a,null):g("no data"+(b?" for file: "+
|
||||
b:""),null)}
|
||||
function yv(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");Fa(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,p=/( [a-z]+=)(['"])(.*?)\2/g;m=p.exec(f);)k=0>k.indexOf(m[1])?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
|
||||
"");a=a.replace(d[0],g);yv(a,b,c)}})}else c(a,null)}
|
||||
function zv(a,b,c,d){function e(a){if(void 0===h){var b=g&&hb(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ta(a))}function f(a){e("Error: "+a);k&&(--vv||Va(!0));k=!1}var g,h,k=!0;vv++;ab[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var p=document.head||document.getElementsByTagName("head")[0],y=document.createElement("style");y.type="text/css";y.styleSheet?y.styleSheet.cssText=m:y.appendChild(document.createTextNode(m));p.appendChild(y)}c||
|
||||
(c="/versions/pcx86/1.35.2/components.xsl");m=function(d,h){h?wv(c,null,null,!1,e,function(d,k){k?($a(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(k=h.transformNode(k))?(g.outerHTML=k,--vv||Va(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(k),(k=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(k,g),--vv||Va(!0)):f("invalid machine element: "+
|
||||
a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?wv(b,a,d,!0,e,m):xv(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(w){f(w.message)}return k}function Av(a,b,c,d){Va(!1);return zv(a,b,c,d)}window.embedPC=Av;window.embedPCx86=Av;window.findMachineComponent=function(a,b){return fb(b,a+".machine")};
|
||||
function zv(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");Fa(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,p=/( [a-z]+=)(['"])(.*?)\2/g;m=p.exec(f);)k=0>k.indexOf(m[1])?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
|
||||
"");a=a.replace(d[0],g);zv(a,b,c)}})}else c(a,null)}
|
||||
function Av(a,b,c,d){function e(a){if(void 0===h){var b=g&&hb(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ta(a))}function f(a){e("Error: "+a);k&&(--wv||Va(!0));k=!1}var g,h,k=!0;wv++;ab[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var p=document.head||document.getElementsByTagName("head")[0],y=document.createElement("style");y.type="text/css";y.styleSheet?y.styleSheet.cssText=m:y.appendChild(document.createTextNode(m));p.appendChild(y)}c||
|
||||
(c="/versions/pcx86/1.35.2/components.xsl");m=function(d,h){h?xv(c,null,null,!1,e,function(d,k){k?($a(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(k=h.transformNode(k))?(g.outerHTML=k,--wv||Va(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(k),(k=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(k,g),--wv||Va(!0)):f("invalid machine element: "+
|
||||
a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?xv(b,a,d,!0,e,m):yv(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(w){f(w.message)}return k}function Bv(a,b,c,d){Va(!1);return Av(a,b,c,d)}window.embedPC=Bv;window.embedPCx86=Bv;window.findMachineComponent=function(a,b){return fb(b,a+".machine")};
|
||||
window.processMachineScript=function(a,b){var c=!1;a+=".machine";if("string"==typeof b&&!mb[a]){for(var c=!0,d=mb,e=a,f=b.length,g=[],h=[],k="",m=null,p=0;p<f;p++){var y=b[p];if('"'==y||"'"==y)m&&y!=m?k+=y:(m?m=null:m=y,k&&(h.push(k),k=""));else{if(!m){if("\r"==y||"\n"==y)y=";";if(" "==y||"\t"==y||";"==y){k&&(h.push(k),k="");";"==y&&h.length&&(g.push(h),h=[]);continue}}k+=y}}k&&h.push(k);h.length&&g.push(h);d[e]=g;lb(a)||(c=!1)}return c};window.enableEvents=Va;window.sendEvent=Xa;
|
||||
function Bv(a,b,c,d){if(!c&&b){d.push(b);a=ab[d[0]];b=null;for(var e in a)if(sa(e,"components.xsl")){b=e.replace(".xsl",".css");break}b?Fa(b,null,!0,function(a,b){Cv(b,d)}):Cv(null,d)}else r("Error ("+c+") requesting "+a)}
|
||||
function Cv(a,b){var c,d,e,f=b[0],g=b[1];c=b[4];c=c.match(/^(\s*\(function\(\)\{)([\s\S]*)(}\)\(\);\s*)$/);var h=ab[f],k={},m;for(m in h){var p=h[m],y=ra(m);if("xml"==y){for(y=/[ \t]*<disk [^>]*path=(['"])(.*?)\1.*?<\/disk>\n?/g;d=y.exec(h[m]);){var w=d[2];w&&(h[w]||(p=p.replace(d[0],"")))}d=m=qa(m)}else"xsl"==y&&(e=m=qa(m));k[m]=p}a&&(k[m="css"]=a);b[2]&&(k[m="parms"]=b[2]);b[3]&&(k[m="state"]=b[3]);d&&e?(a=JSON.stringify(k),g+=".js",c=c[1]+"var resources="+a+";"+c[2]+c[3],c=c.replace(/\u00A9/g,
|
||||
function Cv(a,b,c,d){if(!c&&b){d.push(b);a=ab[d[0]];b=null;for(var e in a)if(sa(e,"components.xsl")){b=e.replace(".xsl",".css");break}b?Fa(b,null,!0,function(a,b){Dv(b,d)}):Dv(null,d)}else r("Error ("+c+") requesting "+a)}
|
||||
function Dv(a,b){var c,d,e,f=b[0],g=b[1];c=b[4];c=c.match(/^(\s*\(function\(\)\{)([\s\S]*)(}\)\(\);\s*)$/);var h=ab[f],k={},m;for(m in h){var p=h[m],y=ra(m);if("xml"==y){for(y=/[ \t]*<disk [^>]*path=(['"])(.*?)\1.*?<\/disk>\n?/g;d=y.exec(h[m]);){var w=d[2];w&&(h[w]||(p=p.replace(d[0],"")))}d=m=qa(m)}else"xsl"==y&&(e=m=qa(m));k[m]=p}a&&(k[m="css"]=a);b[2]&&(k[m="parms"]=b[2]);b[3]&&(k[m="state"]=b[3]);d&&e?(a=JSON.stringify(k),g+=".js",c=c[1]+"var resources="+a+";"+c[2]+c[3],c=c.replace(/\u00A9/g,
|
||||
"©"),a=Pa(c,"javascript",!1,g),a=a+(', copy it to your web server as "'+g+'", and then add the following to your web page:\n\n')+('<div id="'+f+'"></div>\n')+"...\n",a=a+('<script type="text/javascript" src="'+g+'">\x3c/script>\n')+('<script type="text/javascript">embedPC("'+f+'","'+d+'","'+e+'");\x3c/script>\n\n')+"The machine should appear where the <div> is located.",r(a)):r("Missing XML/XSL resources")}
|
||||
window.savePC=function(a,b,c){var d=fb("Computer",a),e=fb("Debugger",a);if(d){var f=nv(d,!0),g=d.I?JSON.stringify(d.I):null;b||(b="/versions/pcx86/1.35.2/pcx86"+(e?"-dbg":"")+".js");if(c&&c({state:f,Lj:g}))return!0;Fa(b,null,!0,function(c,d,e){Bv(c,d,e,[a,qa(b,!0),g,f])});return!0}r("Unable to identify machine '"+a+"'");return!1};})();//# sourceMappingURL=/versions/pcx86/1.35.2/pcx86.map
|
||||
window.savePC=function(a,b,c){var d=fb("Computer",a),e=fb("Debugger",a);if(d){var f=ov(d,!0),g=d.I?JSON.stringify(d.I):null;b||(b="/versions/pcx86/1.35.2/pcx86"+(e?"-dbg":"")+".js");if(c&&c({state:f,Lj:g}))return!0;Fa(b,null,!0,function(c,d,e){Cv(c,d,e,[a,qa(b,!0),g,f])});return!0}r("Unable to identify machine '"+a+"'");return!1};})();//# sourceMappingURL=/versions/pcx86/1.35.2/pcx86.map
|
||||
|
|
|
|||
Loading…
Reference in a new issue