Follow my own advice and write any 32-bit hex constant > 0x7fffffff as (constant|0)
The Closure Compiler does a fine job of replacing all such expressions with their decimal equivalent, relieving us from having to calculate them ourselves, and eliminating any runtime impact
This commit is contained in:
parent
31dfc55b11
commit
c8aec14b0b
153 changed files with 6296 additions and 188 deletions
|
|
@ -42,9 +42,9 @@ function Vb(a,b,c,d){this.na=null;this.offset=0;this.size=b||0;this.type=c||oc;t
|
|||
var oc=0,pc=2,tc=["NONE","RAM","ROM","VIDEO"],uc=["black","blue","green","cyan"];function vc(){this.Z.oa(64)&&this.Z.message("attempt to read invalid block %"+da(this.jc)+" from "+ea(v(this.N),Hb(this.N)));return 0}function wc(a,b){this.Z.oa(64)&&this.Z.message("attempt to write 0x"+n(b)+" to invalid block %"+da(this.jc),!0)}function xc(a){return this.ic[a]}function yc(a){return this.ic[a]}function zc(a){return this.Kf.getUint16(a,!0)}
|
||||
function Ac(a){return a&1?this.ic[a]|this.ic[a+1]<<8:this.$k[a>>1]}function Bc(a){return this.Kf.getInt32(a,!0)}function Cc(a){return a&3?this.ic[a]|this.ic[a+1]<<8|this.ic[a+2]<<16|this.ic[a+3]<<24:this.na[a>>2]}function Dc(a,b){this.ic[a]=b;this.Pa=!0}function Ec(a,b){this.ic[a]=b;this.Pa=!0}function Hc(a,b){this.Kf.setUint16(a,b,!0);this.Pa=!0}function Jc(a,b){a&1?(this.ic[a]=b,this.ic[a+1]=b>>8):this.$k[a>>1]=b;this.Pa=!0}function Kc(a,b){this.Kf.setInt32(a,b,!0);this.Pa=!0}
|
||||
function Lc(a,b){a&3?(this.ic[a]=b,this.ic[a+1]=b>>8,this.ic[a+2]=b>>16,this.ic[a+3]=b>>24):this.na[a>>2]=b;this.Pa=!0}
|
||||
var sc=[function(a){return this.na[a>>2]>>>((a&3)<<3)&255},function(a){var b=a>>2;a=(a&3)<<3;var c=this.na[b]>>a;return 24>a?c&65535:c&255|(this.na[b+1]&255)<<8},function(a){var b=a>>2;a=(a&3)<<3;var c=this.na[b];a&&(c=c>>>a|this.na[b+1]<<32-a);return c},function(a,b){var c=a>>2,d=(a&3)<<3;this.na[c]=this.na[c]&~(255<<d)|b<<d;this.Pa=!0},function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.na[c]=this.na[c]&~(65535<<d)|b<<d:(this.na[c]=this.na[c]&16777215|b<<24,c++,this.na[c]=this.na[c]&4294967040|b>>8);
|
||||
this.Pa=!0},function(a,b){var c=a>>2,d=(a&3)<<3;d?(this.na[c]=this.na[c]&~(4294967295<<d)|b<<d,c++,this.na[c]=this.na[c]&4294967295<<d|b>>>32-d):this.na[c]=b;this.Pa=!0}],Oc=[function(a){Mc(this.Z,this.jc+a);return this.lh(a)},function(a){Mc(this.Z,this.jc+a)||Mc(this.Z,this.jc+a+1);return this.Bk(a)},function(a){Mc(this.Z,this.jc+a)||Mc(this.Z,this.jc+a+1)||Mc(this.Z,this.jc+a+2)||Mc(this.Z,this.jc+a+3);return this.kq(a)},function(a,b){Nc(this.Z,this.jc+a);this.lg(a,b)},function(a,b){Nc(this.Z,this.jc+
|
||||
a)||Nc(this.Z,this.jc+a+1);this.Nk(a,b)},function(a,b){Nc(this.Z,this.jc+a)||Nc(this.Z,this.jc+a+1)||Nc(this.Z,this.jc+a+2)||Nc(this.Z,this.jc+a+3);this.sq(a,b)}];if(mb)var rc=[xc,zc,Bc,Dc,Hc,Kc],qc=[yc,Ac,Cc,Ec,Jc,Lc];
|
||||
var sc=[function(a){return this.na[a>>2]>>>((a&3)<<3)&255},function(a){var b=a>>2;a=(a&3)<<3;var c=this.na[b]>>a;return 24>a?c&65535:c&255|(this.na[b+1]&255)<<8},function(a){var b=a>>2;a=(a&3)<<3;var c=this.na[b];a&&(c=c>>>a|this.na[b+1]<<32-a);return c},function(a,b){var c=a>>2,d=(a&3)<<3;this.na[c]=this.na[c]&~(255<<d)|b<<d;this.Pa=!0},function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.na[c]=this.na[c]&~(65535<<d)|b<<d:(this.na[c]=this.na[c]&16777215|b<<24,c++,this.na[c]=this.na[c]&-256|b>>8);this.Pa=
|
||||
!0},function(a,b){var c=a>>2,d=(a&3)<<3;if(d){var e=-1<<d;this.na[c]=this.na[c]&~e|b<<d;c++;this.na[c]=this.na[c]&e|b>>>32-d}else this.na[c]=b;this.Pa=!0}],Oc=[function(a){Mc(this.Z,this.jc+a);return this.lh(a)},function(a){Mc(this.Z,this.jc+a)||Mc(this.Z,this.jc+a+1);return this.Bk(a)},function(a){Mc(this.Z,this.jc+a)||Mc(this.Z,this.jc+a+1)||Mc(this.Z,this.jc+a+2)||Mc(this.Z,this.jc+a+3);return this.kq(a)},function(a,b){Nc(this.Z,this.jc+a);this.lg(a,b)},function(a,b){Nc(this.Z,this.jc+a)||Nc(this.Z,
|
||||
this.jc+a+1);this.Nk(a,b)},function(a,b){Nc(this.Z,this.jc+a)||Nc(this.Z,this.jc+a+1)||Nc(this.Z,this.jc+a+2)||Nc(this.Z,this.jc+a+3);this.sq(a,b)}];if(mb)var rc=[xc,zc,Bc,Dc,Hc,Kc],qc=[yc,Ac,Cc,Ec,Jc,Lc];
|
||||
Vb.prototype={constructor:Vb,parent:null,save:function(){var a,b;if(this.Y)a=null;else if(mb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.Kf.getInt32(b<<2,!0);else a=this.na;return a},restore:function(a){if(this.Y)return null==a;if(a&&this.size==a.length<<2){var b;if(mb)for(b=0;b<a.length;b++)this.Kf.setInt32(b<<2,a[b],!0);else this.na=a;return this.Pa=!0}return!1},Ne:function(a,b){a||(a=[]);void 0===b&&(b=!0);Pc(this,a,b);Qc(this,a,b)},pe:function(a,b){b?0===this.kl++&&Qc(this,Oc):0===
|
||||
this.il++&&Pc(this,Oc)}};function Rc(a,b){b?0===--a.kl&&(a.Hb=a.Yh?wc:a.lg,a.Mk=a.Yh?wc:a.Nk):0===--a.il&&(a.Cb=a.lh,a.Ak=a.Bk)}function Ub(a,b,c,d,e){a.N=b;a.Z=c;a.jc=d;a.il=a.kl=0;a.Z&&Sc(a.Z,d,e)}function Qc(a,b,c){a.Hb=!a.Yh&&b[3]||wc;a.Mk=!a.Yh&&b[4]||wc;c&&(a.lg=b[3]||wc,a.Nk=b[4]||wc,a.sq=b[5]||wc)}function Pc(a,b,c){a.Cb=b[0]||vc;a.Ak=b[1]||vc;c&&(a.lh=b[0]||vc,a.Bk=b[1]||vc,a.kq=b[2]||vc)}
|
||||
function Tc(a,b){p.call(this,"CPU",a,Tc,1);var c=a.cycles||b,d=a.multiplier||1;this.U={};this.U.Fd=c;this.U.be=d;this.U.gi=Math.round(this.U.Fd/1E4)/100;this.U.Sg=this.U.gi*this.U.be;this.da.ib=!1;this.da.rj=!1;this.da.hj=a.autoStart;this.da.ul=!1;c=Sa.autostart;void 0!==c&&(this.da.hj="true"==c?!0:"false"==c?!1:null);this.da.Nf=!1;this.U.Ug=this.U.Zf=0;this.U.Vg=a.csStart;this.U.Yf=a.csInterval;this.U.$f=a.csStop;var e=this;this.mp=function(){e.rf()};jb(this)}Ya(p,Tc);k=Tc.prototype;
|
||||
|
|
@ -72,7 +72,7 @@ function wd(a,b,c,d){for(var e=a.N,f=e.ja(b+0),g=e.ja(b+4),h=g&7936,t=e.ja(b+2)|
|
|||
t&65535;if(F<=Q){d=a.ab;if(a.load(b,!0)==Ab){t=Ab;break}e.Dk=f;if(a.ab<d){if(!0!==C){t=Ab;break}E=w(e);f=0;for(g&=31;g--;)a.al[f++]=Nd(e,e.xa,E),E+=2;g=e.cb.ta;d=(a.ab<<2)+2;C=d+2;b=e.xa.ua;D=w(e);Ld(e,e.ja(g+C),!0);x(e,e.ja(g+d));y(e,b);for(y(e,D);f;)y(e,a.al[--f]);a.$h=!0}e.wa&=N;return a.ta}d||xd.call(e,13,D,!0);t=Ab;break}else if(!1!==E){d||xd.call(e,13,c,!0);t=Ab;break}}else if(2==a.id){if(C&&(4096>h||2048==(h&2560))){d||xd.call(e,13,c,!!g);t=Ab;break}}else if(3==a.id){if(!C||4096>h||2048==(h&
|
||||
2560)){d||xd.call(e,13,c,!0);t=Ab;break}}else if(4==a.id){if(!C||256!=h&&768!=h){d||xd.call(e,10,c,!0);t=Ab;break}}else if(6==a.id&&!(g&4096)&&768<h){t=Ab;break}a.ua=c;a.ta=t;a.Gb=f;a.mb=g;a.type=h;a.gj=r;a.Od=b;td(a);break}return t}rd.prototype.save=function(){return[this.ua,this.ta,this.Gb,this.mb,this.id,this.oh,this.ab,this.qc,this.Od]};
|
||||
rd.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.ua=a[0],this.ta=a[1],this.Gb=a[2],this.mb=a[3],this.id=a[4],this.oh=a[5],this.ab=a[6],this.qc=a[7],this.Od=a[8])};
|
||||
function td(a,b){void 0===b&&(b=!!(a.N.gc&1));a.nj=!1;if(b){a.load=vd;a.Ll=zd;a.Ic=Cd;a.kc=Fd;if(a.mb&4096){6144==(a.mb&6656)&&(a.kc=Dd);if(a.mb&2048||!(a.mb&512))a.kc=Gd;1024==(a.mb&3072)&&(a.Ic==Cd&&(a.Ic=Ed),a.kc==Fd&&(a.kc=Hd),a.nj=!0)}a.ab=a.ua&3;a.qc=(a.mb&24576)>>13;80386>a.N.Ca||!(a.gj&64)?(a.Lc=2,a.ka=65535):(a.Lc=4,a.ka=4294967295)}else a.load=ud,a.Ll=yd,a.Ic=Ad,a.kc=Bd,a.Gb=65535,a.ab=a.qc=0,a.Od=Ab,a.Lc=2,a.ka=65535;a.Ah=a.Lc;a.la=a.ka}
|
||||
function td(a,b){void 0===b&&(b=!!(a.N.gc&1));a.nj=!1;if(b){a.load=vd;a.Ll=zd;a.Ic=Cd;a.kc=Fd;if(a.mb&4096){6144==(a.mb&6656)&&(a.kc=Dd);if(a.mb&2048||!(a.mb&512))a.kc=Gd;1024==(a.mb&3072)&&(a.Ic==Cd&&(a.Ic=Ed),a.kc==Fd&&(a.kc=Hd),a.nj=!0)}a.ab=a.ua&3;a.qc=(a.mb&24576)>>13;80386>a.N.Ca||!(a.gj&64)?(a.Lc=2,a.ka=65535):(a.Lc=4,a.ka=-1)}else a.load=ud,a.Ll=yd,a.Ic=Ad,a.kc=Bd,a.Gb=65535,a.ab=a.qc=0,a.Od=Ab,a.Lc=2,a.ka=65535;a.Ah=a.Lc;a.la=a.ka}
|
||||
function Od(a){this.Ca=a.model||8088;var b=0;switch(this.Ca){default:case 8088:b=4772727;break;case 80286:b=6E6;break;case 80386:b=16E6}Tc.call(this,a,b);this.Sk=61442;this.sh=od;this.rh=4;this.eg=255;this.B=80286<=this.Ca?Pd:Qd;this.Ya=Rd.slice();this.tn=Sd.slice();this.un=Td.slice();this.Vk=Ud;80186<=this.Ca&&(this.eg=31,this.Ya[15]=Vd,this.Ya[96]=Wd,this.Ya[97]=Xd,this.Ya[98]=Yd,this.Ya[99]=Vd,this.Ya[100]=Vd,this.Ya[101]=Vd,this.Ya[102]=Vd,this.Ya[103]=Vd,this.Ya[104]=Zd,this.Ya[105]=$d,this.Ya[106]=
|
||||
ae,this.Ya[107]=be,this.Ya[108]=ce,this.Ya[109]=de,this.Ya[110]=ee,this.Ya[111]=fe,this.Ya[192]=ge,this.Ya[193]=he,this.Ya[200]=ie,this.Ya[201]=je,this.Ya[241]=ke,this.tn[7]=ne,this.un[7]=ne,80286<=this.Ca&&(this.Sk=2,this.sh|=28672,this.rh=0,this.Ya[15]=oe,this.Ya[99]=pe,this.Ya[84]=qe));this.uh=[];this.vh=[];this.Yc=this.Cg=0;this.da.Lg=this.da.sl=!1;this.hl=0;this.va=[];this.ub=this.Ta=this.Ma=this.Rd=0;re(this)}Ya(Tc,Od);
|
||||
var Qd={vk:4,T:5,sa:6,aa:7,ba:8,M:9,O:11,P:12,nf:4,Tl:60,Ul:83,bc:3,Ab:9,rc:16,ni:1,Yl:19,$l:28,bm:16,am:21,Zl:37,Wl:2,Pj:9,Xl:5,Vl:33,Rj:10,Qj:8,dh:3,bh:15,pm:51,qm:1,rm:2,sm:4,om:32,Sj:15,um:15,cc:16,dc:4,wm:11,vm:18,tm:24,Nb:4,xm:2,Tj:16,ym:17,Yj:18,zm:19,Xj:5,Zj:6,Em:2,Dm:8,Bm:9,Cm:10,Am:10,$j:10,ak:10,dm:80,fm:144,cm:86,em:154,hm:101,jm:165,gm:107,im:171,Gm:70,Im:113,Fm:76,Hm:124,lm:80,nm:128,km:86,mm:134,fh:3,eh:16,fk:10,ek:8,Jm:51,sc:8,Km:17,Lm:36,yc:11,Mm:16,gh:10,He:2,Mj:18,Nj:7,Oj:15,Uj:12,
|
||||
|
|
@ -406,8 +406,8 @@ yg,zg,Ag,Bg,Cg,function(){this.fd[this.X()].call(this,Kf,this.K);this.A-=0>this.
|
|||
Tf)},function(){this.Eb[this.X()].call(this,Tf)},function(){var a=this.X();switch((a&56)>>3){case 0:this.Pb=this.Ga.ua;break;case 1:this.Pb=this.qa.ua;break;case 2:this.Pb=this.xa.ua;break;case 3:this.Pb=this.Ua.ua;break;default:S.call(this);return}this.S|=1;this.Qc[a].call(this,Uf)},function(){this.S|=1;this.rb=this.cd=this.jn;this.Eb[this.X()].call(this,$f)},function(){var a,b=this.X(),c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.J;break;case 3:a=this.C;break;default:if(80286<=this.Ca){Vd.call(this);
|
||||
return}switch(c){case 1:a=this.I;break;case 4:a=w(this);break;case 5:a=this.H;break;case 6:a=this.F;break;case 7:a=this.D}}this.Eb[b].call(this,Tf);switch(c){case 0:Ie(this,this.G);this.G=a;break;case 1:Ge(this,this.I);this.I=a;break;case 2:Ld(this,this.J);this.J=a;break;case 3:He(this,this.C);this.C=a;break;case 4:Ie(this,w(this));x(this,a);break;case 5:Ge(this,this.H);this.H=a;break;case 6:Ld(this,this.F);this.F=a;break;case 7:He(this,this.D),this.D=a}},function(){this.S|=1;this.fd[this.X()].call(this,
|
||||
Lf,this.Ia)},function(){this.A-=3},function(){var a=this.G;this.G=this.I;this.I=a;this.A-=3},function(){var a=this.G;this.G=this.J;this.J=a;this.A-=3},function(){var a=this.G;this.G=this.C;this.C=a;this.A-=3},function(){var a=this.G;this.G=w(this);x(this,a);this.A-=3},function(){var a=this.G;this.G=this.H;this.H=a;this.A-=3},function(){var a=this.G;this.G=this.F;this.F=a;this.A-=3},function(){var a=this.G;this.G=this.D;this.D=a;this.A-=3},function(){this.G=2==this.Lc?this.G&-65536|this.G<<24>>24&
|
||||
65535:this.G<<16>>16;this.A-=2},function(){this.J=2==this.Lc?this.J&-65536|(this.G&32768?65535:0):this.G&2147483648?4294967295:0;this.A-=this.B.Xl},function(){Sf.call(this,this.K(),this.K());this.A-=this.B.$l},function(){this.Wa("WAIT not implemented",1);this.A--},function(){y(this,Ib(this));this.A-=this.B.yc},function(){Jd(this,this.Ia());this.A-=this.B.sc},function(){var a=this.G>>8;a&Rb?Ve(this):Qe(this);a&Qb?Le(this)||(this.W^=1):Le(this)&&(this.W^=1);a&Pb?We(this):Re(this);a&Ob?Xe(this):Se(this);
|
||||
a&Nb?Ye(this):Te(this);this.A-=this.B.Nb},function(){this.G=this.G&255|(Ib(this)&qd)<<8;this.A-=this.B.Nb},function(){var a=this.G&-256,b;b=this.K();b=this.Qa(this.rb.Ic(b,0));this.G=a|b;this.A-=this.B.$j},function(){this.G=this.G&~this.ka|Nd(this,this.rb,this.K());this.A-=this.B.$j},function(){var a=this.K(),b=this.G;this.sd(this.rb.kc(a,0),b);this.A-=this.B.ak},function(){var a=this.K(),b=this.G;this.Ka(this.rb.kc(a,1),b);this.A-=this.B.ak},function(){var a=1,b=0,c=this.B.bk;this.Da&192&&(a=this.I,
|
||||
65535:this.G<<16>>16;this.A-=2},function(){this.J=2==this.Lc?this.J&-65536|(this.G&32768?65535:0):this.G&-2147483648?-1:0;this.A-=this.B.Xl},function(){Sf.call(this,this.K(),this.K());this.A-=this.B.$l},function(){this.Wa("WAIT not implemented",1);this.A--},function(){y(this,Ib(this));this.A-=this.B.yc},function(){Jd(this,this.Ia());this.A-=this.B.sc},function(){var a=this.G>>8;a&Rb?Ve(this):Qe(this);a&Qb?Le(this)||(this.W^=1):Le(this)&&(this.W^=1);a&Pb?We(this):Re(this);a&Ob?Xe(this):Se(this);a&
|
||||
Nb?Ye(this):Te(this);this.A-=this.B.Nb},function(){this.G=this.G&255|(Ib(this)&qd)<<8;this.A-=this.B.Nb},function(){var a=this.G&-256,b;b=this.K();b=this.Qa(this.rb.Ic(b,0));this.G=a|b;this.A-=this.B.$j},function(){this.G=this.G&~this.ka|Nd(this,this.rb,this.K());this.A-=this.B.$j},function(){var a=this.K(),b=this.G;this.sd(this.rb.kc(a,0),b);this.A-=this.B.ak},function(){var a=this.K(),b=this.G;this.Ka(this.rb.kc(a,1),b);this.A-=this.B.ak},function(){var a=1,b=0,c=this.B.bk;this.Da&192&&(a=this.I,
|
||||
b=1,c=this.B.dk,this.Da&256||(this.A-=this.B.ck));if(a--){var d=this.wa&Kb?-1:1,e=this.Qa(this.rb.Ic(this.F,0));this.sd(this.Ga.kc(this.D&this.la,0),e);this.F=this.F&~this.la|this.F+d&this.la;this.D=this.D&~this.la|this.D+d&this.la;this.A-=c;this.I-=b;a&&(this.ma=this.Ob,this.S|=256)}},function(){var a=1,b=0,c=this.B.bk;this.Da&192&&(a=this.I,b=1,c=this.B.dk,this.Da&256||(this.A-=this.B.ck));if(a--){var d=this.wa&Kb?-2:2,e=Nd(this,this.rb,this.F);this.Ka(this.Ga.kc(this.D&this.la,1),e);this.F=this.F&
|
||||
~this.la|this.F+d&this.la;this.D=this.D&~this.la|this.D+d&this.la;this.A-=c;this.I-=b;a&&(this.ma=this.Ob,this.S|=256)}},function(){var a=1,b=0,c=this.B.Mj;this.Da&192&&(a=this.I,b=1,c=this.B.Oj,this.Da&256||(this.A-=this.B.Nj));if(a--){var d=this.wa&Kb?-1:1,e=$e(this,this.rb,this.F&this.la),f=bf(this,this.Ga,this.D&this.la);qf.call(this,e,f);this.F=this.F&~this.la|this.F+d&this.la;this.D=this.D&~this.la|this.D+d&this.la;this.A-=c-this.B.Ab;this.I-=b;a&&Ne(this)==(this.Da&64)&&(this.ma=this.Ob,this.S|=
|
||||
256)}},function(){var a=1,b=0,c=this.B.Mj;this.Da&192&&(a=this.I,b=1,c=this.B.Oj,this.Da&256||(this.A-=this.B.Nj));if(a--){var d=this.wa&Kb?-2:2,e=af(this,this.rb,this.F&this.la),f=cf(this,this.Ga,this.D&this.la);yf.call(this,e,f);this.F=this.F&~this.la|this.F+d&this.la;this.D=this.D&~this.la|this.D+d&this.la;this.A-=c-this.B.Ab;this.I-=b;a&&Ne(this)==(this.Da&64)&&(this.ma=this.Ob,this.S|=256)}},function(){this.R=this.W=this.ia=this.G&this.X();this.V=256;this.A-=this.B.nf},function(){this.R=this.W=
|
||||
|
|
@ -531,7 +531,7 @@ Si="PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0
|
|||
function Yi(a,b){this.Hb(a,b&255);this.Hb(a+1,b>>8&255);this.Hb(a+2,b>>16&255);this.Hb(a+3,b>>>24)}var Zi=[,,function(a){a+=this.offset;return(this.Y.Fb=this.na[a])>>this.Y.uk&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.na[b]>>8:this.na[b])&255}];Zi[16]=function(a){a+=this.offset;a=this.na[a];for(var b=this.Y.Cj&this.Y.Dj,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};
|
||||
Zi[512]=function(a,b){var c=a+this.offset,d;d=this.na[c]&~this.Y.qb|(b|b<<8|b<<16|b<<24)&this.Y.qb;d=d&this.Y.wb|this.Y.Fb&~this.Y.wb;this.na[c]!=d&&(this.na[c]=d,this.Pa=!0)};Zi[1024]=function(a,b){var c=a+this.offset;b=b>>this.Y.Gd|b<<8-this.Y.Gd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.Y.Je|this.Y.of;d=d&this.Y.qb|this.na[c]&~this.Y.qb;d=d&this.Y.wb|this.Y.Fb&~this.Y.wb;this.na[c]!=d&&(this.na[c]=d,this.Pa=!0)};
|
||||
Zi[1536]=function(a,b){var c=a+this.offset;b=b>>this.Y.Gd|b<<8-this.Y.Gd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.Y.Je|this.Y.of;d&=this.Y.Fb;d=d&this.Y.qb|this.na[c]&~this.Y.qb;d=d&this.Y.wb|this.Y.Fb&~this.Y.wb;this.na[c]!=d&&(this.na[c]=d,this.Pa=!0)};Zi[2560]=function(a,b){var c=a+this.offset;b=b>>this.Y.Gd|b<<8-this.Y.Gd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.Y.Je|this.Y.of;d|=this.Y.Fb;d=d&this.Y.qb|this.na[c]&~this.Y.qb;d=d&this.Y.wb|this.Y.Fb&~this.Y.wb;this.na[c]!=d&&(this.na[c]=d,this.Pa=!0)};
|
||||
Zi[3584]=function(a,b){var c=a+this.offset;b=b>>this.Y.Gd|b<<8-this.Y.Gd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.Y.Je|this.Y.of;d^=this.Y.Fb;d=d&this.Y.qb|this.na[c]&~this.Y.qb;d=d&this.Y.wb|this.Y.Fb&~this.Y.wb;this.na[c]!=d&&(this.na[c]=d,this.Pa=!0)};Zi[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.Y.qb&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.na[d]&~c;c=c&this.Y.wb|this.Y.Fb&~this.Y.wb;this.na[d]!=c&&(this.na[d]=c,this.Pa=!0)};
|
||||
Zi[3584]=function(a,b){var c=a+this.offset;b=b>>this.Y.Gd|b<<8-this.Y.Gd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.Y.Je|this.Y.of;d^=this.Y.Fb;d=d&this.Y.qb|this.na[c]&~this.Y.qb;d=d&this.Y.wb|this.Y.Fb&~this.Y.wb;this.na[c]!=d&&(this.na[c]=d,this.Pa=!0)};Zi[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.Y.qb&(d==a?16711935:-16711936);c=(b|b<<8|b<<16|b<<24)&c|this.na[d]&~c;c=c&this.Y.wb|this.Y.Fb&~this.Y.wb;this.na[d]!=c&&(this.na[d]=c,this.Pa=!0)};
|
||||
Zi[4096]=function(a){a+=this.offset;var b=this.na[a]&~this.Y.qb|this.Y.Fb&this.Y.qb;this.na[a]!=b&&(this.na[a]=b,this.Pa=!0)};Zi[8192]=function(a,b){var c=a+this.offset,d=Ki[b&15],d=d&this.Y.qb|this.na[c]&~this.Y.qb,d=d&this.Y.wb|this.Y.Fb&~this.Y.wb;this.na[c]!=d&&(this.na[c]=d,this.Pa=!0)};Zi[24576]=function(a,b){var c=a+this.offset,d=Ki[b&15],d=d&this.Y.Fb,d=d&this.Y.qb|this.na[c]&~this.Y.qb,d=d&this.Y.wb|this.Y.Fb&~this.Y.wb;this.na[c]!=d&&(this.na[c]=d,this.Pa=!0)};
|
||||
Zi[40960]=function(a,b){var c=a+this.offset,d=Ki[b&15],d=d|this.Y.Fb,d=d&this.Y.qb|this.na[c]&~this.Y.qb,d=d&this.Y.wb|this.Y.Fb&~this.Y.wb;this.na[c]!=d&&(this.na[c]=d,this.Pa=!0)};Zi[57344]=function(a,b){var c=a+this.offset,d=Ki[b&15],d=d^this.Y.Fb,d=d&this.Y.qb|this.na[c]&~this.Y.qb,d=d&this.Y.wb|this.Y.Fb&~this.Y.wb;this.na[c]!=d&&(this.na[c]=d,this.Pa=!0)};
|
||||
function $i(a){var b=[];if(void 0!==a.Ce){b[0]=a.nd;b[1]=a.Nc;b[2]=a.Hf;b[3]=a.jg;b[4]=a.wc|a.di<<8;b[5]=a.oc;if(5==a.Ce){var c=[];c[0]=a.Dd;c[1]=a.Xd;c[2]=a.ke;c[3]=a.Ei;c[4]=a.Tg;c[5]=a.ai;c[6]=a.Zd;c[7]=a.qg;c[8]=a.vj;c[9]=a.wj;c[10]=a.Yd;c[11]=a.Se;c[12]=a.Fb;c[13]=[a.Va,a.Ub,a.kd];var d;a:if(d=a.xd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h<d.length;){for(var t=d[h],r=h+2;r<d.length&&d[r]===t;)r+=2;f[e++]=r-h>>1;f[e++]=t;h=r}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
|
||||
|
|
@ -566,12 +566,12 @@ e.fillStyle=h.Af[d],e.fillRect(b,c+f,h.tc,g)):(a.ye&&a.ye!==a.Vd&&(f=Math.floor(
|
|||
function bd(a,b){if(a.da.$b){var c=!1;a.Ea&&(a.Ea===a.ga?a.ga.Xd&32&&(c=!0):a.Ea.Nc&8&&(c=!0));if(c||b){if(b)uj(a,!0);else if(void 0===a.pc)return;var d=!1;!(b||++a.yn&15)&&0<=a.af&&(a.af++,d=!0);var e=0,f=a.Pl,c=a.Ea.Va,g=c+a.Ea.Ub,h=(a.Ea.oc[12]<<8)+a.Ea.oc[13];a.ac&&(h<<=1);var c=c+h,t=a.Yi;c+t>g&&(t=g-c,0>t&&(t=0));g=c+t;if(h=!b){for(var h=a.ha,r=!0,C=c>>h.Ta;0<t&&C<h.va.length;)h.va[C].Pa&&(h.va[C].Pa=r=!1,h.va[C].tl=!0),t-=h.Kb,C++;h=r}if(h){if(!d)return;if(!a.$e){if(0>a.Wc)return;e=a.Wc;f=
|
||||
e+1}}if(a.ac){if(a.ne[a.ac]){d=0;h=a.$e=0;t=1048575;a.Ea.Nc&32&&(h=32768,t&=~h,a.af&2||(t&=-65537));for(c+=e<<1;c<g&&e<f;)r=$b(a.ha,c),r|=65536,r&h&&(a.$e++,r&=t),e==a.Wc&&(r|=a.af&1?131072:0),C=a.pc[e],C!=r&&(sj(a,e%a.Mb,Math.floor(e/a.Mb),r,a.If),a.pc[e]=r,d++),c+=2,e++;d&&a.If&&a.md.drawImage(a.Ff,0,0,a.Jg,a.Kg,a.Ok,a.Pk,a.cj,a.dj);qj(a)}}else if(a.ll){for(var f=g,D,E,e=c,g=a.$e=0,d=a.Bj,h=16==d?65536:196608,t=16==d?1:2,r=mj(a,t),N=C=0,F=a.Mb,Q=0,ma=a.zc,ra=0;e<f;){D=$b(a.ha,e);E=a.pc[g];if(E===
|
||||
D)C+=d;else{a.pc[g]=D;D=D>>8|(D&255)<<8;E=h;var Oa=16;C<F&&(F=C);for(var Ua=0;Ua<d;Ua++){var nb=(D&(E>>=t))>>(Oa-=t);pj(a.fi,C++,N,r[nb])}C>Q&&(Q=C);N<ma&&(ma=N);N>=ra&&(ra=N+1)}e+=2;g++;if(C>=a.Mb){C=0;N+=2;if(N>a.zc)break;N==a.zc&&(N=1,e=c+a.ll)}}F<a.Mb&&(a.If.putImageData(a.fi,0,0,F,ma,Q-F,ra-ma),a.md.drawImage(a.Ff,0,0,a.Mb,a.zc,0,0,a.Td,a.ze))}else{f=g;e=a.$e=0;g=mj(a);d=a.Ea.xd;t=h=0;r=a.Mb;C=0;N=a.zc;for(F=0;c<f;){Q=c++-a.Va;Q=d[Q];ma=a.pc[e];if(ma===Q)h+=8;else{a.pc[e]=Q;h<r&&(r=h);for(ma=
|
||||
0;8>ma;ma++)ra=Li[Q&2155905152]||0,pj(a.fi,h++,t,g[ra]),Q<<=1;h>C&&(C=h);t<N&&(N=t);t>=F&&(F=t+1)}e++;if(h>=a.Mb&&(h=0,++t>a.zc))break}r<a.Mb&&(a.If.putImageData(a.fi,0,0,r,N,C-r,F-N),a.md.drawImage(a.Ff,0,0,a.Mb,a.zc,0,0,a.Td,a.ze))}}}}k.Eo=function(a,b){return vj(this,this.jd,b)};k.Sp=function(a,b,c){a=this.jd;a.di=a.wc;a.wc=b&31;q(this,a.port,b,c,"CRTC.INDX")};k.Do=function(a,b){return wj(this,this.jd,b)};k.Rp=function(a,b,c){xj(this,this.jd,b,c)};k.Fo=function(a,b){return yj(this,this.jd,b)};
|
||||
0;8>ma;ma++)ra=Li[Q&-2139062144]||0,pj(a.fi,h++,t,g[ra]),Q<<=1;h>C&&(C=h);t<N&&(N=t);t>=F&&(F=t+1)}e++;if(h>=a.Mb&&(h=0,++t>a.zc))break}r<a.Mb&&(a.If.putImageData(a.fi,0,0,r,N,C-r,F-N),a.md.drawImage(a.Ff,0,0,a.Mb,a.zc,0,0,a.Td,a.ze))}}}}k.Eo=function(a,b){return vj(this,this.jd,b)};k.Sp=function(a,b,c){a=this.jd;a.di=a.wc;a.wc=b&31;q(this,a.port,b,c,"CRTC.INDX")};k.Do=function(a,b){return wj(this,this.jd,b)};k.Rp=function(a,b,c){xj(this,this.jd,b,c)};k.Fo=function(a,b){return yj(this,this.jd,b)};
|
||||
k.Tp=function(a,b,c){a=this.jd;q(this,a.port+4,b,c,"MODE");a.Nc=b;kj(this,!1)};k.Go=function(a,b){return zj(this,this.jd,b)};k.Wm=function(a,b,c){this.ga.ai=this.ga.ai&-4|b&3;q(this,a,b,c,"FEAT")};k.Kl=function(a,b){var c=this.ga.Dd?this.ga.ke[this.ga.Xd&31]:this.ga.Xd;this.oa()&&q(this,960,null,b,"ATC."+(this.ga.Dd?this.ga.Ni[this.ga.Xd&31]:"INDX"),c);this.ga.Dd=!this.ga.Dd;return c};
|
||||
k.Vm=function(a,b,c){var d=this.ga.Xd&32;if(this.ga.Dd){var e=this.ga.Xd&31;if(16<=e||!d)this.oa()&&q(this,a,b,c,"ATC."+this.ga.Ni[e]),this.ga.ke[e]=b;this.ga.Dd=!1}else this.ga.Xd=b,q(this,a,b,c,"ATC.INDX"),this.ga.Dd=!0,b&32&&!d&&ij(this)&&bd(this,!0)};k.Qo=function(a,b){var c=3-((this.ga.Tg&12)>>2),c=this.ga.Ei&-17|(this.Dh&1<<c)<<4-c;this.ga.Ei=c;q(this,962,null,b,"STATUS0",c);return c};k.Vp=function(a,b,c){this.ga.Tg=b;hj(this);q(this,962,b,c,"MISC")};
|
||||
k.Po=function(a,b){var c=this.ga.Zd;q(this,964,null,b,"SEQ.INDX",c);return c};k.bq=function(a,b,c){this.ga.Zd=b;q(this,964,b,c,"SEQ.INDX")};k.Oo=function(a,b){var c=this.ga.qg[this.ga.Zd];this.oa()&&q(this,965,null,b,"SEQ"+this.ga.Pi[this.ga.Zd],c);return c};k.aq=function(a,b,c){this.oa()&&q(this,965,b,c,"SEQ."+this.ga.Pi[this.ga.Zd]);this.ga.qg[this.ga.Zd]=b;2==this.ga.Zd&&(this.ga.qb=Ki[b&15])};k.wo=function(a,b){var c=this.ga.vj;q(this,972,null,b,"GRC1",c);return c};
|
||||
k.Mp=function(a,b,c){this.ga.vj=b;q(this,972,b,c,"GRC1")};k.xo=function(a,b){var c=this.ga.wj;q(this,970,null,b,"GRC2",c);return c};k.Np=function(a,b,c){this.ga.wj=b;q(this,970,b,c,"GRC2")};k.vo=function(a,b){var c=this.ga.Yd;q(this,974,null,b,"GRC.INDX",c);return c};k.Lp=function(a,b,c){this.ga.Yd=b;q(this,974,b,c,"GRC.INDX")};k.uo=function(a,b){var c=this.ga.Se[this.ga.Yd];this.oa()&&q(this,975,null,b,"GRC."+this.ga.Oi[this.ga.Yd],c);return c};
|
||||
k.Kp=function(a,b,c){this.oa()&&q(this,975,b,c,"GRC."+this.ga.Oi[this.ga.Yd]);this.ga.Se[this.ga.Yd]=b;switch(this.ga.Yd){case 0:this.ga.pi=Ki[b&15];this.ga.of=this.ga.pi&~this.ga.Je;break;case 1:this.ga.Je=~Ki[b&15];this.ga.of=this.ga.pi&~this.ga.Je;break;case 2:this.ga.Cj=Ki[b&15]&2155905152;break;case 3:case 5:this.Ne(tj(this));break;case 4:this.ga.uk=(b&3)<<3;break;case 6:kj(this,!1);break;case 7:this.ga.Dj=Ki[b&15^15]&2155905152;break;case 8:this.ga.wb=b|b<<8|b<<16|b<<24}};
|
||||
k.Kp=function(a,b,c){this.oa()&&q(this,975,b,c,"GRC."+this.ga.Oi[this.ga.Yd]);this.ga.Se[this.ga.Yd]=b;switch(this.ga.Yd){case 0:this.ga.pi=Ki[b&15];this.ga.of=this.ga.pi&~this.ga.Je;break;case 1:this.ga.Je=~Ki[b&15];this.ga.of=this.ga.pi&~this.ga.Je;break;case 2:this.ga.Cj=Ki[b&15]&-2139062144;break;case 3:case 5:this.Ne(tj(this));break;case 4:this.ga.uk=(b&3)<<3;break;case 6:kj(this,!1);break;case 7:this.ga.Dj=Ki[b&15^15]&-2139062144;break;case 8:this.ga.wb=b|b<<8|b<<16|b<<24}};
|
||||
k.mo=function(a,b){return vj(this,this.Lb,b)};k.Bp=function(a,b,c){a=this.Lb;a.di=a.wc;a.wc=b&31;q(this,a.port,b,c,"CRTC.INDX")};k.lo=function(a,b){return wj(this,this.Lb,b)};k.Ap=function(a,b,c){xj(this,this.Lb,b,c)};k.no=function(a,b){return yj(this,this.Lb,b)};k.Cp=function(a,b,c){a=this.Lb;q(this,a.port+4,b,c,"MODE");a.Nc=b;kj(this,!1)};k.ko=function(a,b){var c=this.Lb.Hf;this.oa()&&q(this,this.Lb.port+5,null,b,this.Lb.type+".COLOR",c);return c};
|
||||
k.zp=function(a,b,c){this.oa()&&q(this,this.Lb.port+5,b,c,this.Lb.type+".COLOR");this.Lb.Hf!==b&&(this.Lb.Hf=b,uj(this,!1))};k.oo=function(a,b){return zj(this,this.Lb,b)};function vj(a,b,c){var d=b.wc;q(a,b.port,null,c,"CRTC.INDX",d);return d}function wj(a,b,c){var d;b.wc<b.Aj&&(d=b.oc[b.wc]);a.oa()&&q(a,b.port+1,null,c,"CRTC."+b.Bh[b.wc],d);return d}function xj(a,b,c,d){b.wc<b.Aj&&(a.oa()&&q(a,b.port+1,c,d,"CRTC."+b.Bh[b.wc]),b.oc[b.wc]=c,9==b.wc&&8!=b.di&&kj(a,!0),lj(a))}
|
||||
function yj(a,b,c){var d=b.Nc;q(a,b.port+4,null,c,"MODE",d);return d}function zj(a,b,c){var d=0,e=Zc(a.N),f=e-b.Lj;0>f&&(f=0);f%b.Ej>b.ep&&(d|=1);f%=b.Sl;f>b.gp&&(d|=8);b.Lj=e-f;b===a.ga?(d|=b.jg&48^48,b.Dd=!1):d=(b.jg^=9)|240;b.jg=d;q(a,b.port+6,null,c,b===a.ga?"STATUS1":"STATUS",d);return d}
|
||||
|
|
@ -598,11 +598,11 @@ function Kj(a,b,c){p.call(this,"Disk",{id:a.Il+".disk"+ ++Lj},Kj,1048576);this.Y
|
|||
k.ec=function(a,b){if(this.Wd){var c,d=0;if(this.tj&&!ya("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=Mj(this,!1);)if(d=c[0]){this.Y.Ba('Unable to save "'+this.Jd+'" (error '+d+")");break}b&&this.Wd&&(c="action=close&volume="+this.sf,c+="&machine="+this.Y.Sf(),c+="&user="+this.Y.Be(),va(wa()+"/api/v1/disk?"+c,!0),this.Wd=!1);!d&&a&&this.Y.Ba(this.Jd+" saved")}return!0};
|
||||
k.create=function(a,b,c,d,e){this.mode=a;this.xb=b;this.yb=c;this.Bb=d;this.pb=e;this.eb=[];if("preload"!=this.mode){a=Array(this.xb);for(b=0;b<a.length;b++){c=Array(this.yb);for(d=0;d<c.length;d++){e=Array(this.Bb);for(var f=1;f<=e.length;f++)e[f-1]=Nj(null,b,d,f,this.pb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.eb=a}this.Lf=null};
|
||||
k.load=function(a,b,c,d,e){var f=b;if(!this.kf)if(this.Jd=a,this.sf=b,this.kf=d,this.Dn=e||this.Y,c){var g=this,h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=ba[c];if(d){g.xb=d[0];g.yb=d[1];g.Bb=d[2];g.pb=512;b=g.pb>>2;var e=d=0,a=new DataView(a,0,c);g.eb=Array(g.xb);for(c=0;c<g.eb.length;c++)for(var f=g.eb[c]=Array(g.yb),F=0;F<f.length;F++)for(var Q=f[F]=Array(g.Bb),ma=0;ma<Q.length;ma++){for(var ra=Nj(null,c,F,ma+1,g.pb,0),Oa=ra.data,Ua=0;Ua<b;Ua++,e+=4)var nb=Oa[Ua]=
|
||||
a.getInt32(e,!0),d=d+nb&4294967295;ra.Hc=b;Q[ma]=ra}g.Lf=d;b=g}else g.Ba("Unrecognized diskette format ("+c+" bytes)");g.kf&&(g.kf.call(g.Y,g.Na,b,g.Jd,g.sf),g.kf=null)};h.readAsArrayBuffer(c)}else 0>b.indexOf("/api/v1/dump")&&(a=ga(b),"json"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=Oj(this,b),this.Xh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):-1!==b.indexOf("/",b.length-
|
||||
1)&&(c="dir"),f=wa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.Qf?"":d)+"&format=json")),va(f,!0,null,this,this.Hn,b)};
|
||||
a.getInt32(e,!0),d=d+nb&-1;ra.Hc=b;Q[ma]=ra}g.Lf=d;b=g}else g.Ba("Unrecognized diskette format ("+c+" bytes)");g.kf&&(g.kf.call(g.Y,g.Na,b,g.Jd,g.sf),g.kf=null)};h.readAsArrayBuffer(c)}else 0>b.indexOf("/api/v1/dump")&&(a=ga(b),"json"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=Oj(this,b),this.Xh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):-1!==b.indexOf("/",b.length-1)&&(c="dir"),
|
||||
f=wa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.Qf?"":d)+"&format=json")),va(f,!0,null,this,this.Hn,b)};
|
||||
k.Hn=function(a,b,c,d){var e=null;this.Rf=!1;var f=0>c&&this.Aa&&!this.Aa.da.$b;if(this.Xh)c?this.Y.Ba('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Wd=!0,e=this);else if(c)this.Y.Ba('Unable to load disk "'+this.Jd+'" (error '+c+")",f);else try{if(0<fa(a,!0).toLowerCase().indexOf("-readonly"))this.Rf=!0;else{var g=b.indexOf("\n");0<g&&1024>g&&0<b.substring(0,g).indexOf("write-protected")&&(this.Rf=!0)}var h;h="<"==b.substr(0,1)?["Missing disk image: "+this.Jd]:0>b.indexOf("0x")&&
|
||||
'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(h.length)if(1==h.length)xa(h[0]);else{this.xb=h.length;this.yb=h[0].length;this.Bb=h[0][0].length;var t=h[0][0][0];this.pb=t&&t.length||512;for(b=a=0;b<this.xb;b++)for(c=0;c<this.yb;c++)for(d=0;d<this.Bb;d++)if(t=h[b][c][d]){var r=t.length;void 0===r&&(r=t.length=512);var r=r>>2,C=t.pattern;void 0===C&&(C=t.pattern=0);var D=t.data;if(void 0===D){var E=t.bytes;if(void 0!==E&&E.length){for(var f=
|
||||
r<<2,N=E.length;N<f;N++)E[N]=C;this.fill(t,E,0)}else D=[],C=t.pattern=C|C<<8|C<<16|C<<24,t.data=D;delete t.bytes}Nj(t,b,c);for(f=0;f<D.length;f++)a=a+D[f]&4294967295}this.eb=h;this.Lf=a;e=this}else xa("Empty disk image: "+this.Jd)}catch(F){xa("Disk image error: "+F.message)}this.kf&&(this.kf.call(this.Dn,this.Na,e,this.Jd,this.sf),this.kf=null)};function Nj(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Vn=b;a.Xn=c;a.pd=a.Hc=0;a.Pa=!1;return a}
|
||||
r<<2,N=E.length;N<f;N++)E[N]=C;this.fill(t,E,0)}else D=[],C=t.pattern=C|C<<8|C<<16|C<<24,t.data=D;delete t.bytes}Nj(t,b,c);for(f=0;f<D.length;f++)a=a+D[f]&-1}this.eb=h;this.Lf=a;e=this}else xa("Empty disk image: "+this.Jd)}catch(F){xa("Disk image error: "+F.message)}this.kf&&(this.kf.call(this.Dn,this.Na,e,this.Jd,this.sf),this.kf=null)};function Nj(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Vn=b;a.Xn=c;a.pd=a.Hc=0;a.Pa=!1;return a}
|
||||
function Oj(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.xb+":"+a.yb+":"+a.Bb+":"+a.pb;c+="&machine="+a.Y.Sf();c+="&user="+a.Y.Be();return wa()+"/api/v1/disk?"+c}function Pj(a,b,c,d,e,f,g){if(a.Wd){var h;h="action=read&volume="+a.sf;h+="&chs="+a.xb+":"+a.yb+":"+a.Bb+":"+a.pb;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.Y.Sf());h+="&user="+a.Y.Be();va(wa()+"/api/v1/disk?"+h,f,null,a,a.Kn,[b,c,d,e,f,g])}else g&&g(-1,!1)}
|
||||
k.Kn=function(a,b,c,d){var e=!1;a=d[0];var f=d[1],g=d[2],h=d[3];if(!c){b=JSON.parse(b);for(e=0;h--;){var t=this.seek(a,f,g,!0);if(!t)break;this.fill(t,b,e);e+=t.length;g++}e=d[4]}(d=d[5])&&d(c,e)};k.Ln=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.tj=!1;if(0<=a&&a<this.eb.length&&0<=b&&b<this.eb[a].length)for(--e;0<f--&&0<=e&&e<this.eb[a][b].length;e++){var g=this.eb[a][b][e];c?Qj(this,g,!1):g.Pa||(g.pd=g.Hc=0)}d&&Rj(this)};
|
||||
function Qj(a,b,c){b.Pa=!0;var d=a.Re.indexOf(b);0<=d&&(a.Re.splice(d,1),a.th.splice(d,1));a.Re.push(b);a.th.push(pa());c&&Rj(a)}function Rj(a){if(a.Re.length){var b=a.th[0]+2E3;a.ge&&a.Ol<b&&(clearTimeout(a.ge),a.ge=null);if(!a.ge){var c=pa(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.ge=setTimeout(function(){Mj(a,!0)},b);a.Ol=c+b}}else a.ge&&(clearTimeout(a.ge),a.ge=null)}
|
||||
|
|
@ -634,7 +634,7 @@ k.pl=function(a,b,c,d,e){var f;a.Mc=!1;b&&(f=b.info(),b&&f[0]>a.xb||f[1]>a.yb)&&
|
|||
function ak(a,b,c){if(a=a.pa.listDisks){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=window.document.createElement("option");d.value=c;d.textContent=b;a.appendChild(d)}}function Wj(a,b){if(0<=b&&b<a.za.length){var c=a.za[b],d=a.pa.listDisks,e=a.pa.listDrives;if(d&&e&&(e=parseInt(e.value,10),c=c.Of?"?":c.tf,!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}
|
||||
function bk(a,b,c,d){var e=a.za[b];e.ra&&(ck(a,e.tf,e.ra),e.en="",e.tf="",e.ra=null,e.Of=!1,a.Le|=128,d||a.Ba("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||Wj(a,b))}function ek(a,b,c,d){var e;for(e=0;e<a.Bc.length;e++)if(a.Bc[e][1]==c){d.restore(a.Bc[e][2]);return}a.Bc[e]=[b,c,[]]}function ck(a,b,c){var d;for(d=0;d<a.Bc.length;d++)if(a.Bc[d][1]==b){a.Bc[d][2]=c.save();break}}k.Jp=function(a,b,c){q(this,a,b,c,"OUTPUT");b&4?this.ig&4||this.ig&8&&this.fa&&Nh(this.fa,6):this.$d();this.ig=b};
|
||||
k.to=function(a,b){q(this,a,null,b,"STATUS",this.ya);return this.ya};k.ro=function(a,b){var c=0;this.zb<this.hb&&(c=this.nc[this.zb]);this.ig&8&&this.fa&&Oh(this.fa,6);this.oa()&&q(this,a,null,b,"DATA["+this.zb+"]",c);++this.zb>=this.hb&&(this.ya&=-81,this.zb=this.hb=0);return c};
|
||||
k.Ip=function(a,b,c){this.oa()&&q(this,a,b,c,"DATA["+this.hb+"]");this.hb<this.nc.length&&(this.nc[this.hb++]=b);a=this.nc[0]&31;if(void 0!==Vj[a]&&this.hb>=Vj[a].Sd){b=!1;this.zb=0;a=this.Ra();var d,e,f,g,h=a&31;switch(h){case 3:this.Ra(l.$q);this.Ra(l.Gq);this.Xb();break;case 4:c=this.Ra(l.mg);this.jb=c&3;d=this.za[this.jb];this.Xb();this.mc((d.bb&4278190080)>>>24,l.cr);break;case 5:case 6:c=this.Ra(l.mg);b=c>>2&1;this.jb=c&3;d=this.za[this.jb];d.La=b;c=d.tb=this.Ra(l.Qk);e=this.Ra(l.Rk);f=d.Za=
|
||||
k.Ip=function(a,b,c){this.oa()&&q(this,a,b,c,"DATA["+this.hb+"]");this.hb<this.nc.length&&(this.nc[this.hb++]=b);a=this.nc[0]&31;if(void 0!==Vj[a]&&this.hb>=Vj[a].Sd){b=!1;this.zb=0;a=this.Ra();var d,e,f,g,h=a&31;switch(h){case 3:this.Ra(l.$q);this.Ra(l.Gq);this.Xb();break;case 4:c=this.Ra(l.mg);this.jb=c&3;d=this.za[this.jb];this.Xb();this.mc((d.bb&-16777216)>>>24,l.cr);break;case 5:case 6:c=this.Ra(l.mg);b=c>>2&1;this.jb=c&3;d=this.za[this.jb];d.La=b;c=d.tb=this.Ra(l.Qk);e=this.Ra(l.Rk);f=d.Za=
|
||||
this.Ra(l.Tk);g=this.Ra(l.Gi);d.gb=128<<g;d.se=this.Ra(l.Bq);this.Ra(l.qn);this.Ra(l.Aq);6==h?(h=d,h.bb=72,h.ra&&(h.Sa=null,h.bb=0,this.fa&&(Gh(this.fa,2,this,"dmaRead",h),zh(this.fa,2)))):(h=d,h.bb=72,h.ra&&(h.ra.Rf?h.bb=576:(h.Sa=null,h.bb=0,this.fa&&(Gh(this.fa,2,this,"dmaWrite",h),zh(this.fa,2)))));fk(this,d,a,b,c,e,f,g);b=!0;break;case 7:c=this.Ra(l.mg);this.jb=c&3;d=this.za[this.jb];d.tb=d.qe=0;d.bb=268435488;this.Xb();b=!0;break;case 8:d=this.za[this.jb];d.La=0;this.Xb();this.mc(d.jb|d.La<<
|
||||
2|d.bb&255,l.sn);this.mc(d.tb,l.Pq);this.jb=this.jb+1&3;break;case 10:c=this.Ra(l.mg);b=c>>2&1;this.jb=c&3;d=this.za[this.jb];c=d.tb;e=d.La=b;f=d.Za=1;g=0;d.bb=0;d.ra&&(d.Sa=d.ra.seek(d.tb,d.La,d.Za))?g=d.Sa.length:d.bb=72;fk(this,d,a,b,c,e,f,g);b=!0;break;case 13:c=this.Ra(l.mg);b=c>>2&1;this.jb=c&3;d=this.za[this.jb];c=d.tb;e=d.La=b;f=1;g=this.Ra(l.Gi);d.gb=128<<g;d.se=this.Ra(l.Vq);this.Ra(l.qn);d.bl=this.Ra(l.pn);h=d;h.bb=72;h.ra&&(h.Sa=null,h.bb=0,this.fa&&(h.Gf=0,h.Sc=Array(4),h.Si=!0,h.Mh=
|
||||
0,Gh(this.fa,2,this,"dmaFormat",h),zh(this.fa,2),h.Si=!1));fk(this,d,a,b,c,e,f,g);b=!0;break;case 15:c=this.Ra(l.mg),this.jb=c&3,d=this.za[this.jb],d.La=c>>2&1,c=this.Ra(l.Mq),d.tb+=c-d.qe,0>d.tb&&(d.tb=0),d.tb>=d.xb&&(d.tb=d.xb-1),d.qe=c,d.bb=32,d.tb||(d.bb|=268435456),this.Xb(),b=!0}0<this.hb&&(this.ya|=80);this.ig&8&&(!d||d.bb&8||!b||this.fa&&Nh(this.fa,6))}};k.so=function(a,b){var c=this.Le;this.Le&=-129;q(this,a,null,b,"INPUT",c);return c};
|
||||
|
|
@ -740,7 +740,7 @@ e)+" "+al(a,a.N.Ga,e)+" "+al(a,a.N.xa,e);d=d+(e?"\n":" ")+(al(a,a.N.qa,e)+" IP="
|
|||
function hl(a,b,c){var d="tr"==b;b=null!=c?parseInt(c,10):1;var e=1==b?0:1;Ea(b,function(){return hb(a,!0)&&a.kg(e,d,!1)},function(){Wc(a.N);hb(a,!1)})}
|
||||
function Qk(a,b,c,d){b=cl(a,b,1);if(null!=b[0]){void 0===d&&(d=1);var e=[65535,b[1],a.ha.Ag];if(void 0!==c){e=cl(a,c,1);if(null==e[0]||e[0]<b[0])return;if(256<e[0]-b[0]){a.Q("range too large");return}e[0]++;d=-1}for(c=b[0]!=a.Pc[0];d&&(null!=b[1]?b[0]<e[0]:b[2]<e[2]);){d--;var f=a.Qa(b),g=ib(a,!1)||a.vc?a.qd:null;if(38==f||46==f||54==f||62==f||240==f||242==f||243==f)g=null,d||d++;var f=null!=g?"cycles":null,h=Zk(a,b);if(h[0]){var t=h[0]+":";c=!1;h[2]&&(t+=" "+h[2]);a.Q(t)}c&&a.Q();h[3]&&(f=h[3],g=
|
||||
null);c=Yk(a,b,f,g);a.Q(c);a.Pc=b;c=!1}d&&a.Q("end of memory")}}function Nk(a,b,c){if(c)if(b){0>a.Xc&&a.Rc.length&&(a.Xc=0);if(0>a.Xc||b!=a.Rc[a.Xc])a.Rc.splice(0,0,b),a.Xc=0;a.Xc--}else b=a.Rc[a.Xc+1];a=b?b.split(0<=b.indexOf("|")?"|":";"):[""];for(var d in a)a[d]=la(a[d]);return a}
|
||||
function wk(a,b){var c=!0;try{if(b.length||(a.Mf?(a.Q("ended assemble @"+Vk(a.Qe)),a.Pc=a.Qe,a.Mf=!1):b="?"),b=b.toLowerCase(),kb(a)&&0<b.length){if(a.Mf)b="a "+Vk(a.Qe)+" "+b;else{var d,e,f;switch(b){case "reset":return a.Aa&&a.Aa.reset(),!0;case "ver":return a.Q("PCjs version 1.17.1 ("+a.N.Ca+",RELEASE,NOPREFETCH"+(mb?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)"),!0;default:for(e=b.charAt(0),f=1;f<b.length;f++){d=b.charAt(f);if(" "==d)break;if("r"==e||"a">d||"z"<d){b=b.substring(0,f)+" "+b.substring(f);
|
||||
function wk(a,b){var c=!0;try{if(b.length||(a.Mf?(a.Q("ended assemble @"+Vk(a.Qe)),a.Pc=a.Qe,a.Mf=!1):b="?"),b=b.toLowerCase(),kb(a)&&0<b.length){if(a.Mf)b="a "+Vk(a.Qe)+" "+b;else{var d,e,f;switch(b){case "reset":return a.Aa&&a.Aa.reset(),!0;case "ver":return a.Q("PCjs version 1.17.2 ("+a.N.Ca+",RELEASE,NOPREFETCH"+(mb?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)"),!0;default:for(e=b.charAt(0),f=1;f<b.length;f++){d=b.charAt(f);if(" "==d)break;if("r"==e||"a">d||"z"<d){b=b.substring(0,f)+" "+b.substring(f);
|
||||
break}}}}var g=b.split(" ");switch(g[0].charAt(0)){case "a":var h=cl(a,g[1],1);if(null!=h[0])if(a.Qe=h,void 0===g[2])a.Q("begin assemble @"+Vk(h)),a.Mf=!0,Wc(a.N);else{var t;a.Q("not supported yet");t=[];if(t.length){for(var r=0;r<t.length;r++)a.sd(h,t[r],1);a.Q(Yk(a,a.Qe))}}break;case "b":a:{var C=g[1],D=g[0].charAt(1);if(D&&"?"!=D)if("l"==D)r=0,r+=Xk(a,a.Ac),r+=Xk(a,a.le),(r+=Xk(a,a.ed))||a.Q("no breakpoints");else if(void 0===C)a.Q("missing breakpoint address");else{r=[];if("*"!=C&&(r=cl(a,C,1),
|
||||
null==r[0]))break a;C=null==r[0]?C:n(r[0]);"c"==D?null==r[0]?(tk(a),a.Q("all breakpoints cleared")):Wk(a,a.Ac,r,!0)||Wk(a,a.le,r,!0)||Wk(a,a.ed,r,!0)||a.Q("breakpoint missing: "+Vk(r)):"i"==D?a.Q("breakpoint "+(cc(a.ha,r[0])?"enabled":"cleared")+": port "+C+" (input)"):"o"==D?a.Q("breakpoint "+(gc(a.ha,r[0])?"enabled":"cleared")+": port "+C+" (output)"):null!=r[0]&&("p"==D?a.pe(a.Ac,r):"r"==D?a.pe(a.le,r):"w"==D?a.pe(a.ed,r):a.Q("unknown breakpoint command: "+D))}else a.Q("\nbreakpoint commands:"),
|
||||
a.Q("\tbi [p]\ttoggle break on input port [p]"),a.Q("\tbo [p]\ttoggle break on output port [p]"),a.Q("\tbp [a]\tset exec breakpoint at addr [a]"),a.Q("\tbr [a]\tset read breakpoint at addr [a]"),a.Q("\tbw [a]\tset write breakpoint at addr [a]"),a.Q("\tbc [a]\tclear breakpoint at addr [a]"),a.Q("\tbl\tlist all breakpoints")}break;case "c":a.Ig&&(a.Ig.value="");break;case "d":a:{var E=g[0],r=g[1],N=g[2],F;if("?"==r){r="";for(F in Ck)a.Mi[F]&&(r&&(r+=","),r+=F);r+=",state,symbols";a.Q("\ndump commands:");
|
||||
|
|
@ -758,21 +758,21 @@ Ee.prototype={constructor:Ee,set:function(a,b){try{this[this.id][a]=b}catch(c){}
|
|||
a:JSON.stringify(a)},clear:function(a){kl(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(f){}b.splice(c,1);c=0}},oa:function(a){return this.Z?this.Z.oa(null==a?8388608:a|8388608):!1},Wa:function(a){this.Z&&this.Z.message(a)}};function kl(a,b){a[a.id]={};b&&a.set("parms",b);a.oj=!1}
|
||||
function ll(a){var b=!0;if(Aa()){var c=JSON.stringify(a[a.id]);Ca(a.key,c)||(xa("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}
|
||||
function ml(a,b,c){p.call(this,"Computer",a,ml,33554432);this.da.$b=!1;this.Xf=a.buswidth;this.$c=nl;this.ph=null;this.Zh=!1;this.url=b?b.url:null;this.pq=(Math.random()+.1).toString(36).substr(2,12);this.ad=ol(this);if(this.N=ab("CPU",this.id)){this.Z=ab("Debugger",this.id);this.ha=new Tb({id:this.Il+".bus",buswidth:this.Xf},this.N,this.Z);var d,e=Za(this.id);if((this.ee=ab("Panel",this.id))&&this.ee.Ig)for(b=0;b<e.length;b++)d=e[b],d.Ba=this.ee.Ba,d.Q=this.ee.Q,d.Ig=this.ee.Ig;for(b=0;b<e.length;b++)d=
|
||||
e[b],d.xc&&d.xc(this,this.ha,this.N,this.Z);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.zi=d:this.$c=parseInt(d,10));var f;if(a=Sa&&Sa.state||(f=!0,a.state))b=this.gn=a,f||(this.Zh=!0,this.$c=nl),this.$c&&(this.Di=new Ee(this,"1.17.1"),this.Di.load()?b=null:delete this.Di);!b&&this.$c&&(f=null,this.ad&&(f=wa()+"/api/v1/user?req=load&user="+this.ad+"&state="+jl(this,"1.17.1")),b=f)&&(this.Zh=!0);b?va(b,!0,null,this,this.lp):jb(this);c||pl(this,this.ti)}else xa("Unable to find CPU component")}
|
||||
e[b],d.xc&&d.xc(this,this.ha,this.N,this.Z);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.zi=d:this.$c=parseInt(d,10));var f;if(a=Sa&&Sa.state||(f=!0,a.state))b=this.gn=a,f||(this.Zh=!0,this.$c=nl),this.$c&&(this.Di=new Ee(this,"1.17.2"),this.Di.load()?b=null:delete this.Di);!b&&this.$c&&(f=null,this.ad&&(f=wa()+"/api/v1/user?req=load&user="+this.ad+"&state="+jl(this,"1.17.2")),b=f)&&(this.Zh=!0);b?va(b,!0,null,this,this.lp):jb(this);c||pl(this,this.ti)}else xa("Unable to find CPU component")}
|
||||
Ya(p,ml);var nl=0;k=ml.prototype;k.Sf=function(){return this.pq};k.Be=function(){return this.ad?this.ad:""};k.lp=function(a,b,c){c?(this.zi=null,this.Zh=!1,this.Ba("Unable to load machine state from server (error "+c+(b?": "+la(b):"")+")")):this.ph=b;jb(this)};function pl(a,b,c){for(var d=Za(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!kb(f)){kb(f,function(){pl(a,b,c)});return}}b.call(a,c)}
|
||||
function ql(a,b){var c=new Ee(a,"1.17.1","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.Ba("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
|
||||
k.ti=function(a){void 0===a&&(a=this.$c||(this.ph?1:nl));var b=!1,c=!1;this.yl=!1;var d=this.Di||new Ee(this,"1.17.1");if(-1==a)b=!0;else if(a>nl){if(d.load(this.ph)){this.uf=new Ee(this,"1.17.1","failsafe");this.uf.load()&&(rl(this,d),a=2,kl(this.uf));this.uf.set("timestamp",sa());ll(this.uf);var e=this.$c&&!this.Zh;if(1==a||ya("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==
|
||||
function ql(a,b){var c=new Ee(a,"1.17.2","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.Ba("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
|
||||
k.ti=function(a){void 0===a&&(a=this.$c||(this.ph?1:nl));var b=!1,c=!1;this.yl=!1;var d=this.Di||new Ee(this,"1.17.2");if(-1==a)b=!0;else if(a>nl){if(d.load(this.ph)){this.uf=new Ee(this,"1.17.2","failsafe");this.uf.load()&&(rl(this,d),a=2,kl(this.uf));this.uf.set("timestamp",sa());ll(this.uf);var e=this.$c&&!this.Zh;if(1==a||ya("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==
|
||||
f&&"no machine state"!=g?(this.Ba("Error: "+g),"unable to verify user"==g&&(Ca("user",""),this.ad=null)):this.Q(f+": "+g),kl(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&ql(this,c?d:null)}else 2==a&&d.clear()}else ql(this);delete this.ph;delete this.Di}e=Za(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.N&&(c=sl(this,g,d,b,c));b=[d,a,c];-1!=a?pl(this,this.ql,b):this.ql(b)};
|
||||
function sl(a,b,c,d,e){if(!b.da.$b){b.da.$b=!0;if(b.fc){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.fc(f,d)&&f&&(xa("Unable to restore state for "+b.type),a.gn&&!a.ph?(c.clear(),a.$c=nl,window&&window.location.reload()):a.yl=!0,b.fc(null),e=!1)}if(!d&&b.ml)for(a=b.ml.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
|
||||
k.ql=function(a){var b=a[0],c=0>a[1];a=a[2];this.da.$b=!0;this.vl||(this.Q("PCjs v1.17.1\nCopyright \u00a9 2012-2015 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.vl=!0);this.N&&(sl(this,this.N,b,c,a),Xc(this.N));this.yl&&(rl(this,b),b.clear());!c&&this.uf&&(this.uf.clear(),delete this.uf)};
|
||||
function rl(a,b){if(ya("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.Be(),d=b.toString(),e={app:"PCjs",ver:"1.17.1"};e.url=a.url;e.user=c;e.type="bug";e.data=d;va("http://www.pcjs.org/api/v1/report",!0,e)}}
|
||||
function il(a,b,c){var d,e="none",f=new Ee(a,"1.17.1"),g=new Ee(a,"1.17.1","validate"),h=sa();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.17.1");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.N&&a.N.ec&&(c&&a.N.kb(),d=a.N.ec(b,c),"object"===typeof d&&f.set(a.N.id,d),c&&(a.N.da.$b=!1,!1===d&&(e=null)));for(var h=Za(a.id),t=0;t<h.length;t++){var r=h[t];r.da.$b&&(r.ec&&(d=r.ec(b,c),"object"===typeof d&&f.set(r.id,d)),c&&(r.da.$b=
|
||||
k.ql=function(a){var b=a[0],c=0>a[1];a=a[2];this.da.$b=!0;this.vl||(this.Q("PCjs v1.17.2\nCopyright \u00a9 2012-2015 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.vl=!0);this.N&&(sl(this,this.N,b,c,a),Xc(this.N));this.yl&&(rl(this,b),b.clear());!c&&this.uf&&(this.uf.clear(),delete this.uf)};
|
||||
function rl(a,b){if(ya("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.Be(),d=b.toString(),e={app:"PCjs",ver:"1.17.2"};e.url=a.url;e.user=c;e.type="bug";e.data=d;va("http://www.pcjs.org/api/v1/report",!0,e)}}
|
||||
function il(a,b,c){var d,e="none",f=new Ee(a,"1.17.2"),g=new Ee(a,"1.17.2","validate"),h=sa();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.17.2");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.N&&a.N.ec&&(c&&a.N.kb(),d=a.N.ec(b,c),"object"===typeof d&&f.set(a.N.id,d),c&&(a.N.da.$b=!1,!1===d&&(e=null)));for(var h=Za(a.id),t=0;t<h.length;t++){var r=h[t];r.da.$b&&(r.ec&&(d=r.ec(b,c),"object"===typeof d&&f.set(r.id,d)),c&&(r.da.$b=
|
||||
!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.ad&&tl(a,a.ad,f.toString()),ll(g)&&ll(f)||(e=null,d=h=!0)):a.$c&&(d=!0,h=3==a.$c),d&&f.clear(h)):e=f.toString());c&&(a.da.$b=!1);return e}k.reset=function(){this.ha&&this.ha.reset&&(this.Wa("Resetting "+this.ha.type),this.ha.reset());for(var a=Za(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ha&&c.reset&&(this.Wa("Resetting "+c.type),c.reset())}};
|
||||
k.start=function(a,b){for(var c=Za(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};k.stop=function(a,b){for(var c=Za(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
|
||||
k.Db=function(a,b,c){var d=this;switch(b){case "save":return this.pa[b]=c,c.onclick=function(){var a=ol(d,!0);if(a){var b=!(!d.$c||d.zi),c=il(d,b);b?tl(d,a,c):d.Ba("Resume disabled, machine state not saved")}},!0;case "reset":return this.pa[b]=c,c.onclick=function(){cd(d)},!0}return!1};
|
||||
function ol(a,b){var c=a.ad;c||(c=Ba("user"),void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email support@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=ul(a,c))||a.Ba("Your user ID has not been approved."))):b&&a.Ba("Browser local storage is not available"));return c}
|
||||
function ul(a,b){a.ad=null;var c=va(wa()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(Ca("user",c.data),a.ad=c.data)}catch(e){xa(e.message+" ("+d+")")}return a.ad}
|
||||
function tl(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=jl(a,"1.17.1");d.data=c;b=va(wa()+"/api/v1/user",!1,d);d=b[1];if(b[0]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[0]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.Ba("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.Ba(c),Ca("user",""),a.ad=null)}}
|
||||
function tl(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=jl(a,"1.17.2");d.data=c;b=va(wa()+"/api/v1/user",!1,d);d=b[1];if(b[0]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[0]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.Ba("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.Ba(c),Ca("user",""),a.ad=null)}}
|
||||
function cd(a){if(a.$c&&!a.zi){var b=ya("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");il(a,b,!0);!b&&a.gn?window&&window.location.reload():(b||(a.pj=!0),a.ti(nl),a.pj=!1)}else a.reset(),a.N&&Xc(a.N)}function ub(a,b,c){a=Za(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}
|
||||
Ka(function(){for(var a=db(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=bb(c),c=db(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=bb(f),g=new ml(g,d,!0);cb(g,f);pl(g,g.ti)}});Ga.show.push(function(){for(var a=db(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=bb(a[b]);(c=ab("Computer",c.id))&&c.vl&&!c.da.$b&&c.ti(-1)}});
|
||||
Ga.exit.push(function(){for(var a=db(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=bb(a[b]);(c=ab("Computer",c.id))&&c.da.$b&&il(c,!(!c.$c||c.zi),!0)}});var vl=0;function wl(a,b,c,d,e,f){e("Loading "+a+"...");va(a,!0,null,null,function(g,h,t){t?(h||(h="unable to load "+a+" ("+t+")"),f(h,null)):xl(h,a,b,c,d,e,f)})}
|
||||
|
|
@ -780,6 +780,6 @@ function xl(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{if(c){var h=b;h&&
|
|||
null,a=D.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,h)}}a?e?Bl(a,f,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)}
|
||||
function Bl(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");va(e,!0,null,null,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 t=h[0],r,C=/( [a-z]+=)(['"])(.*?)\2/g;r=C.exec(f);)t=0>t.indexOf(r[1])?t.replace(">",r[0]+">"):t.replace(new RegExp(r[1]+"(['\"])(.*?)\\1"),r[0]);h[0]!=t&&(g=g.replace(h[0],t))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
|
||||
"");a=a.replace(d[0],g);Bl(a,b,c)}})}else c(a,null)}
|
||||
function Cl(a,b,c,d){function e(a){if(void 0===h){var b=g&&db(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ja(a))}function f(a){e("Error: "+a);t&&(--vl||Ma(!0));t=!1}var g,h,t=!0;vl++;try{if(g=window.document.getElementById(a)){c||(c="/versions/pcjs/1.17.1/components.xsl");var r=function(d,h){if(h){var r=function(d,r){if(r)if(r)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var t=h.transformNode(r);t?(g.outerHTML=t,--vl||Ma(!0)):f("transformNodeToObject failed")}else window.document.implementation&&
|
||||
function Cl(a,b,c,d){function e(a){if(void 0===h){var b=g&&db(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ja(a))}function f(a){e("Error: "+a);t&&(--vl||Ma(!0));t=!1}var g,h,t=!0;vl++;try{if(g=window.document.getElementById(a)){c||(c="/versions/pcjs/1.17.2/components.xsl");var r=function(d,h){if(h){var r=function(d,r){if(r)if(r)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var t=h.transformNode(r);t?(g.outerHTML=t,--vl||Ma(!0)):f("transformNodeToObject failed")}else window.document.implementation&&
|
||||
window.document.implementation.createDocument?(t=new XSLTProcessor,t.importStylesheet(r),(t=t.transformToFragment(h,window.document))?g.parentNode?(g.parentNode.replaceChild(t,g),--vl||Ma(!0)):f("invalid machine element: "+a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f("failed to load XSL file: "+c);else f(d)};h?wl(c,null,null,!1,e,r):f("failed to load XML file: "+b)}else f(d)};"<"!=b.charAt(0)?wl(b,a,d,!0,e,r):xl(b,null,a,d,!1,e,r)}else f("missing machine element: "+
|
||||
a)}catch(C){f(C.message)}return t}window.embedPC=function(a,b,c,d){Ma(!1);return Cl(a,b,c,d)};window.enableEvents=Ma;window.sendEvent=Na;})();
|
||||
|
|
|
|||
Loading…
Reference in a new issue