Remove the hard disk "Save" feature from mobile devices
This commit is contained in:
parent
d95b6fe3df
commit
773ed2db37
8 changed files with 234 additions and 186 deletions
|
|
@ -115,7 +115,7 @@ function Wc(a,b){if(null==b)return a.L=!a.L,a.L;void 0===a.G[b]&&(a.G[b]=[null,!
|
|||
function Yc(a,b,c,d,e){for(var f=0;0<c;){var g=a.G[b],h=a.Z[b]||1,k=1==h?255:2==h?65535:-1,k=(d>>>=f)&k;if(void 0!==g){if(g[0])g[0](b,k,e);a.ca&&a.L!=g[1]&&Zc(a.ca,b,k)}else a.ca&&(Sb(a.ca,a,b,k,e),a.L&&Zc(a.ca,b,k));f+=h<<3;b+=h;c-=h}}function xc(a,b,c,d,e){b="Memory block error ("+b+": "+q(c)+","+q(d)+")";e?a.ca?a.ca.message(b):a.log(b):mb(b);return!1}var hc,$c={Mk:20,count:8,jq:1,type:3},ad=0,bd;for(bd in $c){var cd=$c[bd];$c[bd]={rh:(1<<cd)-1<<ad,shift:ad};ad+=cd}hc=$c;
|
||||
var yc=1,Bc=2,Ec=3,Gc=4,Ic=5,dd;if(Tb){var ed=new ArrayBuffer(2);(new DataView(ed)).setUint16(0,256,!0);dd=256===(new Uint16Array(ed))[0]}else dd=!1;var Kc=dd;
|
||||
function x(a,b,c,d,e,f){this.id=fd+=2;this.Y=null;this.H=0;this.ya=a;this.we=b;this.size=c||0;this.type=d||gd;this.D=d==Jc;this.controller=null;this.C=f;tc(this);this.Oa=this.vj=!1;if(c)if(e)this.controller=e,a=e.Aj(a),this.Y=a[0],this.H=a[1],Fc(this,e.jh());else if(Tb)this.I=new ArrayBuffer(c),this.G=new DataView(this.I,0,c),this.Pa=new Uint8Array(this.I,0,c),this.Sd=new Uint16Array(this.I,0,c>>1),this.Y=new Int32Array(this.I,0,c>>2),Fc(this,Kc?Lc:Nc);else{this.Y=Array(c>>2);for(e=0;e<this.Y.length;e++)this.Y[e]=
|
||||
0;Fc(this,Oc)}else Fc(this)}l=x.prototype;l.mh=function(a){this.ya=a};l.save=function(){var a,b;if(this.controller)a=null;else if(Tb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.G.getInt32(b<<2,!0);else a=this.Y;return a};l.restore=function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(Tb)for(b=0;b<a.length;b++)this.G.setInt32(b<<2,a[b],!0);else this.Y=a;return this.Oa=!0}return!1};function Fc(a,b,c){b||(b=a.type==hd?id:a.type==jd?pd:qd);rd(a,b,c);sd(a,b,c)}
|
||||
0;Fc(this,Oc)}else Fc(this)}l=x.prototype;l.mh=function(a){this.ya=a};l.save=function(){var a,b;if(this.controller)a=null;else if(Tb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.G.getInt32(b<<2,!0);else a=this.Y;return a};l.restore=function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(Tb)for(b=0;b<a.length;b++)this.G.setInt32(b<<2,a[b],!0);else this.Y=a;return this.Oa=!0}return!1};function Fc(a,b,c){b||(b=a.type==hd?id:a.type==jd?kd:qd);rd(a,b,c);sd(a,b,c)}
|
||||
function rd(a,b,c){c&&a.ie||(a.Cc=b[0]||a.Yk,a.Nf=b[2]||a.Zk,a.Nd=b[4]||a.Wk);if(c||void 0===c)a.$d=b[0]||a.Yk,a.Of=b[2]||a.Zk,a.ni=b[4]||a.Wk}function sd(a,b,c){c&&a.je||(a.Ec=!a.D&&b[1]||a.ef,a.Vf=!a.D&&b[3]||a.ui,a.Uf=!a.D&&b[5]||a.ti);if(c||void 0===c)a.df=b[1]||a.ef,a.vi=b[3]||a.ui,a.K=b[5]||a.ti}function td(a){a.Cc=a.$d;a.Nf=a.Of;a.Nd=a.ni}function ud(a){a.Ec=a.D?a.ef:a.df;a.Vf=a.D?a.ui:a.vi;a.Uf=a.D?a.ti:a.K}
|
||||
l.rd=function(a,b,c){b?this.je++||(c&&(this.C=c),sd(this,vd,!1)):this.ie++||(c&&(this.C=c),rd(this,vd,!1))};function tc(a,b,c){a.ca=b;a.ie=a.je=0;c&&(c.C&&(a.C=c.C),(a.ie=c.ie)&&rd(a,vd,!1),(a.je=c.je)&&sd(a,vd,!1))}l.Yk=function(a,b){this.ca&&t(this.ca,129)&&this.ca.message("attempt to read invalid block %"+q(b),!0);return 255};l.ef=function(a,b,c){this.ca&&t(this.ca,129)&&this.ca.message("attempt to write "+ta(b)+" to invalid block %"+q(c),!0)};
|
||||
l.Zk=function(a,b){return this.Cc(a++,b++)|this.Cc(a,b)<<8};l.Wk=function(a,b){return this.Cc(a++,b++)|this.Cc(a++,b++)<<8|this.Cc(a++,b++)<<16|this.Cc(a,b)<<24};l.ui=function(a,b,c){this.Ec(a++,b&255,c++);this.Ec(a,b>>8,c)};l.ti=function(a,b,c){this.Ec(a++,b&255,c++);this.Ec(a++,b>>8&255,c++);this.Ec(a++,b>>16&255,c++);this.Ec(a,b>>>24,c)};l.Co=function(a){return this.Y[a>>2]>>>((a&3)<<3)&255};
|
||||
|
|
@ -128,7 +128,7 @@ l.Mo=function(a){return this.G.getUint16(a,!0)};l.$k=function(a){return a&1?this
|
|||
l.Jo=function(a){this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=32;this.Nd=this.Xk;return a&3?this.Pa[a]|this.Pa[a+1]<<8|this.Pa[a+2]<<16|this.Pa[a+3]<<24:this.Y[a>>2]};l.Zo=function(a,b){this.Pa[a]=b;this.Oa=!0};l.il=function(a,b){this.Pa[a]=b;this.Oa=!0};l.bp=function(a,b){this.Pa[a]=b;this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=96;this.Ec=this.il;this.td.Oa=!0};l.lp=function(a,b){this.G.setUint16(a,b,!0);this.Oa=!0};l.kl=function(a,b){a&1?(this.Pa[a]=b,this.Pa[a+1]=b>>8):this.Sd[a>>1]=b;this.Oa=!0};
|
||||
l.op=function(a,b){a&1?(this.Pa[a]=b,this.Pa[a+1]=b>>8):this.Sd[a>>1]=b;this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=96;this.Vf=this.kl;this.td.Oa=!0};l.fp=function(a,b){this.G.setInt32(a,b,!0);this.Oa=!0};l.jl=function(a,b){a&3?(this.Pa[a]=b,this.Pa[a+1]=b>>8,this.Pa[a+2]=b>>16,this.Pa[a+3]=b>>24):this.Y[a>>2]=b;this.Oa=!0};
|
||||
l.ip=function(a,b){a&3?(this.Pa[a]=b,this.Pa[a+1]=b>>8,this.Pa[a+2]=b>>16,this.Pa[a+3]=b>>24):this.Y[a>>2]=b;this.ob.Y[this.A]|=32;this.pb.Y[this.B]|=96;this.Uf=this.jl;this.td.Oa=!0};function Ad(a){Tb&&!Kc&&(a=a<<24|a<<8&16711680|a>>8&65280|a>>>24);return a}
|
||||
var gd=0,Jc=2,hd=5,jd=6,Bd=["black","blue","green","cyan"],Ac="NONE RAM ROM VIDEO H/W UNPAGED PAGED".split(" "),fd=0,qd=[],Oc=[x.prototype.Co,x.prototype.ap,x.prototype.Oo,x.prototype.np,x.prototype.Io,x.prototype.hp],vd=[x.prototype.Bo,x.prototype.$o,x.prototype.No,x.prototype.mp,x.prototype.Ho,x.prototype.gp],pd=[x.prototype.Eo,x.prototype.cp,x.prototype.Qo,x.prototype.pp,x.prototype.Ko,x.prototype.jp],id=[x.prototype.Fo,x.prototype.ep,x.prototype.Ro,x.prototype.qp,x.prototype.Lo,x.prototype.kp];
|
||||
var gd=0,Jc=2,hd=5,jd=6,Bd=["black","blue","green","cyan"],Ac="NONE RAM ROM VIDEO H/W UNPAGED PAGED".split(" "),fd=0,qd=[],Oc=[x.prototype.Co,x.prototype.ap,x.prototype.Oo,x.prototype.np,x.prototype.Io,x.prototype.hp],vd=[x.prototype.Bo,x.prototype.$o,x.prototype.No,x.prototype.mp,x.prototype.Ho,x.prototype.gp],kd=[x.prototype.Eo,x.prototype.cp,x.prototype.Qo,x.prototype.pp,x.prototype.Ko,x.prototype.jp],id=[x.prototype.Fo,x.prototype.ep,x.prototype.Ro,x.prototype.qp,x.prototype.Lo,x.prototype.kp];
|
||||
if(Tb)var Nc=[x.prototype.Ao,x.prototype.Zo,x.prototype.Mo,x.prototype.lp,x.prototype.Go,x.prototype.fp],Lc=[x.prototype.Vk,x.prototype.il,x.prototype.$k,x.prototype.kl,x.prototype.Xk,x.prototype.jl],Cd=[x.prototype.Do,x.prototype.bp,x.prototype.Po,x.prototype.op,x.prototype.Jo,x.prototype.ip];
|
||||
function Dd(a,b){rb.call(this,"CPU",a,1);b=a.cycles||b;var c=a.multiplier||1;this.T={};this.T.xd=b;this.T.Kd=c;this.T.vg=Math.round(this.T.xd/1E4)/100;this.T.pe=this.T.vg*this.T.Kd;this.ba.jb=!1;this.ba.si=!1;this.ba.ge=a.autoStart;this.ba.pj=!1;this.ba.Ke=!1;this.T.vf=this.T.Ve=0;this.T.xf=a.csStart;this.T.Ue=a.csInterval;this.T.We=a.csStop;this.Ul=this.Wf.bind(this);Ob(this)}ca(Dd,rb);l=Dd.prototype;
|
||||
l.uc=function(a,b,c,d){this.pa=a;this.ma=b;this.ca=d;for(b=0;b<Ed.length;b++)(c=this.na[Ed[b]])&&this.pa.Cb(null,Ed[b],c);this.Tc=bc(a,"FPU");this.W=bc(a,"ChipSet");a=Fd(a,"autoStart");null!=a&&(this.ba.ge="true"==a?!0:"false"==a?!1:!!a);Ob(this)};l.reset=function(){};l.save=function(){return null};l.restore=function(){return!1};
|
||||
|
|
@ -162,7 +162,7 @@ Le,this.va[102]=Le,this.va[103]=Le,this.va[104]=Pe,this.va[105]=Qe,this.va[106]=
|
|||
lf;this.va[101]=mf;this.va[102]=nf;this.va[103]=of;for(d in B)this.Pd[+d]=B[+d];80546<=this.xe&&80562>=this.xe&&(this.Pd[166]=pf,this.Pd[167]=qf)}}this.$f=[];this.ag=[];this.cg=0;Gd(this);this.ba.complete=this.ba.oj=!1;this.yj=0;this.sc=this.aa=[];this.kb=this.Rg=this.Db=this.Yf=this.ff=this.gf=this.ed=0;rf(this)}ca(Ge,Dd);function xf(a,b,c,d){b=(d?a.sc:a.aa)[b>>>a.kb];c?--b.je||ud(b):--b.ie||td(b);d&&zc(a)}
|
||||
function yf(a){var b;if(a.aa===a.sc){a.aa=Array(a.Yf);a.bg=new x(null,0,0,hd,null,a);tc(a.bg,a.ca);for(b=0;b<a.Yf;b++)a.aa[b]=a.bg;a.hf=new x;a.cj=Array(zf);a.dg=0}else for(var c=0;c<a.Zf.length;c++){b=a.Zf[c];var d=a.aa[b];a.dg<zf&&(a.cj[a.dg++]=d);a.aa[b]=a.bg}a.Zf=[]}function zc(a){a.qa&-2147483648&&yf(a)}
|
||||
function zd(a,b,c,d){var e=(b&-4194304)>>>20,f=a.sc[(a.Wc+e&a.gf)>>>a.kb],g=f.Nd(e);if(!(g&1))return d||Af.call(a,b,!1,c),a.hf;if(!(g&4)&&3==a.Ma)return d||Af.call(a,b,!0,c),a.hf;var h=(b&4190208)>>>10,g=a.sc[((g&-4096)+h&a.gf)>>>a.kb],k=g.Nd(h);if(!(k&1))return d||Af.call(a,b,!1,c),a.hf;if(!(k&4)&&3==a.Ma)return d||Af.call(a,b,!0,c),a.hf;c=a.sc[((k&-4096)+(b&4095)&a.gf)>>>a.kb];if(d)return c;d=b>>>a.kb;k=a.aa[d];b&=-4096;var m;0<a.dg?(m=a.cj[--a.dg],m.mh(b)):m=new x(b,0,0,jd);b=m;b.td=c;b.ob=f;b.A=
|
||||
e>>2;b.pb=g;b.B=h>>2;Tb&&Kc&&c.Y&&!c.controller&&!c.ie&&!c.je?(b.Pa=c.Pa,b.Sd=c.Sd,b.Y=c.Y,Fc(b,Cd)):(b.F=c?Ad(32):0,b.J=c?Ad(96):0,Fc(b,pd));tc(b,a.ca,k);a.aa[d]=b;a.Zf.push(d);return b}function Bf(a){a.aa!==a.sc&&(a.aa=a.sc,a.bg=null,a.Zf=null,a.hf=null)}l=Ge.prototype;l.reset=function(){this.ba.jb&&this.Kb();rf(this);Gd(this);this.ba.error=!1};
|
||||
e>>2;b.pb=g;b.B=h>>2;Tb&&Kc&&c.Y&&!c.controller&&!c.ie&&!c.je?(b.Pa=c.Pa,b.Sd=c.Sd,b.Y=c.Y,Fc(b,Cd)):(b.F=c?Ad(32):0,b.J=c?Ad(96):0,Fc(b,kd));tc(b,a.ca,k);a.aa[d]=b;a.Zf.push(d);return b}function Bf(a){a.aa!==a.sc&&(a.aa=a.sc,a.bg=null,a.Zf=null,a.hf=null)}l=Ge.prototype;l.reset=function(){this.ba.jb&&this.Kb();rf(this);Gd(this);this.ba.error=!1};
|
||||
function Cf(a,b){var c;switch(b){case 0:c=a.D;break;case 1:c=a.I;break;case 2:c=a.L;break;case 3:c=a.G;break;case 4:c=z(a);break;case 5:c=a.M;break;case 6:c=a.K;break;case 7:c=a.J}return c}function Df(a,b,c){switch(b){case 0:a.D=c;break;case 1:a.I=c;break;case 2:a.L=c;break;case 3:a.G=c;break;case 4:ne(a,c);break;case 5:a.M=c;break;case 6:a.K=c;break;case 7:a.J=c}}
|
||||
function rf(a){a.D=0;a.G=0;a.I=0;a.L=0;a.Ac=0;a.M=0;a.K=0;a.J=0;a.vc=!1;a.Ba=a.Za=0;a.gn=[0,0];a.hn=[0,0];a.xa=0;a.xj=0;a.ga=0;a.qa=65520;a.Pb=0;a.cd=1023;a.P=a.lc=0;a.Be=a.kf=a.Ae=a.Ce=0;a.Uc=-1;a.pd=a.Vc=-1;a.Ed=a.sa=-1;a.Z=new ae(a,ke,"CS");a.Da=new ae(a,we,"DS");a.oa=new ae(a,we,"ES");a.X=new ae(a,ge,"SS");ne(a,0);me(a,0);if(80386<=a.da){switch(a.xe){case 80562:case 80563:a.L=771;break;case 80578:a.L=772;break;case 80594:a.L=773;break;case 80595:case 80596:a.L=776}a.qa=16;a.Sg=0;a.Fd=0;a.Wc=0;
|
||||
a.Qb=[0,0,0,0,null,null,0,0];a.fg=[null,null,null,null,null,null,0,0];a.Ga=new ae(a,we,"FS");a.Ia=new ae(a,we,"GS");Bf(a)}a.Ug=new ae(a,0,"NULL");a.Ea=a.Da;a.Rb=a.X;a.N=a.ha=0;a.C=a.F=-1;a.fb=a.Ug;a.Ya=0;if(80286>a.da)Ee(a,0,65535);else{a.Ib=0;a.Pc=65535;a.Eb=new ae(a,5,"LDT",!0);a.ka=new ae(a,ie,"TSS",!0);a.xb=new ae(a,fe,"VER",!0);Ee(a,65520,61440);var b,c=A(a);b=a.Z;var d=-65536;80386>b.gc.da&&(d&=16777215);b=b.ua=d;a.ea=b+c|0;a.Tg=(b>>>0)+(a.Z.Ka>>>0)+1}De(a,0);pe(a)}
|
||||
|
|
@ -658,11 +658,11 @@ l.toJSON=function(){var a;a=0;for(var b;b=sv(this,a++);)Wv(b);a=JSON.stringify(t
|
|||
function Wv(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}var iv=0;function Pv(a,b,c,d,e,f){this.ta=a;this.Zb=c;this.$g=d;this.ej=e;this.fe=f}function Hv(a,b,c){var d;c=c||2;var e=b&511,f=sv(a.ta,a.fe[b>>9]);if(f){if(e+c<=f.length)return tv(a.ta,f,e,c);for(e=d=0;c--;)d|=Hv(a,b++,1)<<e,e+=8}return d}function wv(a,b,c){return Hv(a,b[0]+(c||0),b[1])}
|
||||
function Lv(a,b,c){for(var d=0;!c||b<c;){var e=Hv(a,b,1);if(!e)break;var f;f=a;var g=b+1,h=e,k="";for(h||(h=-1);h--;){var m=Hv(f,g++,1);if(!m)break;k+=String.fromCharCode(m)}f=k;if(!f)break;b+=1+e;if(d){if(e=Hv(a,b),g=a.A[e])g=g[0],a.qd[g]&&a.qd[g].ee[e].push(f)}else c||(a.Sf=f);b+=2;d++}}
|
||||
Pv.prototype.Bj=function(a,b){var c=null;if(this.qd)for(var d in this.qd){var e=this.qd[d];if(a>=e.ki&&a<=e.Nk){d=a-=e.ki;var f,g;for(g in e.ee){var h=e.ee[g],k=a-h[0];if(!k){c=this.Sf+"!"+h[1];break}b&&0<k&&k<d&&(f=h,d=k)}!c&&f&&(c=this.Sf+"!"+f[1]+"+"+ta(d));break}}return c||this.Zb+"+"+q(a,8,!0)};var yv=23117,xv=[0,2],zv=[24,2],Bv=[60,4],Av=64,Dv=17742,Cv=[0,2],Iv=[4,2],Jv=[6,2],Ev=[28,2],Nv=[32,2],Fv=[34,2],Kv=[38,2],Mv=[44,4],Gv=[50,2];
|
||||
function Xv(a){rb.call(this,"FDC",a,524288);this.dmaRead=Xv.prototype.nl;this.dmaWrite=Xv.prototype.ol;this.dmaFormat=Xv.prototype.Gl;this.L=Yv(a.autoMount);this.J=a.sortBy||"name";"none"==this.J&&(this.J=null);this.B=[];this.M=!Wa("Mobi")&&window&&"FileReader"in window}ca(Xv,rb);l=Xv.prototype;
|
||||
function Xv(a){rb.call(this,"FDC",a,524288);this.dmaRead=Xv.prototype.nl;this.dmaWrite=Xv.prototype.ol;this.dmaFormat=Xv.prototype.Gl;this.M=Yv(a.autoMount);this.J=a.sortBy||"name";"none"==this.J&&(this.J=null);this.B=[];this.L=!Wa("Mobi")&&window&&"FileReader"in window}ca(Xv,rb);l=Xv.prototype;
|
||||
l.Cb=function(a,b,c){var d=this;switch(b){case "listDisks":this.na[b]=c;if(this.J){b=[];for(a=0;a<c.options.length;a++)b.push(c.options[a]);b.sort(function(a,b){return"path"!=d.J?a.text.localeCompare(b.text):a.value.localeCompare(b.value)});for(a=0;a<b.length;a++)try{c.options[a]=b[a]}catch(e){break}}c.onchange=function(){var a=d.na.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("("+b+")")}catch(h){mb("FDC option error: "+h.message)}b=g.desc;void 0===
|
||||
b&&(b="");g=g.href;void 0!==g&&(b='<a href="'+g+'" target="_blank">'+b+"</a>");a.innerHTML=b}};return!0;case "descDisk":case "listDrives":return this.na[b]=c,c.onchange=function(){var a=oa(c.value,10);null!=a&&Zv(d,a)},!0;case "loadDisk":return this.na[b]=c,c.onclick=function(){var a=d.na.listDisks;a&&$v(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDisk":if(!this.M){c.parentNode.removeChild(c);break}this.na[b]=c;c.onclick=function(){var a=d.na.listDrives;a&&a.options&&d.A&&((a=d.A[oa(a.value,
|
||||
10)||0])?(a=a.ta)?(a=Za(Vv(a),"octet-stream",!0,a.Ng.replace(".json",".img")),mb(a)):d.Ca("No diskette loaded in drive."):d.Ca("No diskette drive selected."))};return!0;case "mountDisk":if(this.M)return this.na[b]=c,c.onchange=function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length},c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;$v(d,ua(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1};
|
||||
l.uc=function(a,b,c,d){this.ma=b;this.H=c;this.ca=d;this.pa=a;this.W=bc(a,"ChipSet");Yv(Fd(this.pa,"autoMount"),this.L);aw(this);Tc(b,this,bw);Xc(b,this,cw);dw(this,"None","",!0);this.M&&dw(this,"Local Disk","?");dw(this,"Remote Disk","??");ew(this)||Ob(this)};function Yv(a,b){if(a){if("string"==typeof a)try{a=eval("("+a+")")}catch(d){mb("FDC auto-mount error: "+d.message+" ("+a+")"),a={}}}else a={};for(var c in a)b&&(b[c]=a[c]);return a}
|
||||
b&&(b="");g=g.href;void 0!==g&&(b='<a href="'+g+'" target="_blank">'+b+"</a>");a.innerHTML=b}};return!0;case "descDisk":case "listDrives":return this.na[b]=c,c.onchange=function(){var a=oa(c.value,10);null!=a&&Zv(d,a)},!0;case "loadDisk":return this.na[b]=c,c.onclick=function(){var a=d.na.listDisks;a&&$v(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDisk":if(!this.L){c.parentNode.removeChild(c);break}this.na[b]=c;c.onclick=function(){var a=d.na.listDrives;a&&a.options&&d.A&&((a=d.A[oa(a.value,
|
||||
10)||0])?(a=a.ta)?(a=Za(Vv(a),"octet-stream",!0,a.Ng.replace(".json",".img")),mb(a)):d.Ca("No diskette loaded in drive."):d.Ca("No diskette drive selected."))};return!0;case "mountDisk":if(this.L)return this.na[b]=c,c.onchange=function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length},c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;$v(d,ua(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1};
|
||||
l.uc=function(a,b,c,d){this.ma=b;this.H=c;this.ca=d;this.pa=a;this.W=bc(a,"ChipSet");Yv(Fd(this.pa,"autoMount"),this.M);aw(this);Tc(b,this,bw);Xc(b,this,cw);dw(this,"None","",!0);this.L&&dw(this,"Local Disk","?");dw(this,"Remote Disk","??");ew(this)||Ob(this)};function Yv(a,b){if(a){if("string"==typeof a)try{a=eval("("+a+")")}catch(d){mb("FDC auto-mount error: "+d.message+" ("+a+")"),a={}}}else a={};for(var c in a)b&&(b[c]=a[c]);return a}
|
||||
l.Xb=function(a,b){if(!b){if(!a){if(this.reset(),this.pa.X){this.B=[];for(a=0;a<this.A.length;a++)fw(this,a,!0);ew(this,!0)}}else if(!this.restore(a))return!1;if(a=this.na.listDrives){for(;a.firstChild;)a.removeChild(a.firstChild);a.value="";for(b=0;b<this.N;b++){var c=document.createElement("option");c.value=b;c.text=String.fromCharCode(65+b)+":";a.appendChild(c)}0<this.N&&(a.value="0",Zv(this,0))}}return!0};l.Wb=function(a){return a?this.save():!0};l.reset=function(){aw(this)};
|
||||
l.save=function(){var a=new dg(this);a.set(0,gw(this));return a.data()};l.restore=function(a){return aw(this,a[0])};
|
||||
function aw(a,b){var c=0,d,e=!0;b||(b=[0,0,hw,Array(9),0,0,0,[]]);a.Wa=b[c++];c++;a.fa=b[c++];a.F=b[c++];a.D=b[c++];a.C=b[c++];a.I=b[c++];var f=b[c++];d=b[c++];null!=d&&(a.B=d);void 0===a.A&&(a.N=4,a.W&&(a.N=+$l(a.W,nl,void 0)),a.A=Array(4));for(d=0;d<a.A.length;d++){var g=a.A[d];if(void 0===g){var g=a.A[d]={},h;if(a.W)a:{h=a.W;if(d<+$l(h,nl,void 0)){if(!h.N){h=360;break a}if(d<h.N.length){h=h.N[d];break a}}h=0}else h=0;switch(h){case 160:case 180:g.cb=1;default:g.rb=40;g.Va=9;break;case 720:g.rb=
|
||||
|
|
@ -670,7 +670,7 @@ function aw(a,b){var c=0,d,e=!0;b||(b=[0,0,hw,Array(9),0,0,0,[]]);a.Wa=b[c++];c+
|
|||
p[v++];g.eb=null;g.ta||(g.ue="");var F=p[v++];102==F&&(F=!1);"boolean"==typeof F?(u=p[v++],p=p[v],F?(v=k.A[m],fw(k,m,!0,!0),v.Pe=!0,m=new hv(k,v,"preload"),k.qj(v,m,u,p,!0)):kw(k,m,u,p,!0)?g.ta&&p&&lw(k,u,p,g.ta):Ob(k,!1)):void 0!==F&&g.ta&&0>g.ta.restore(F)&&(h=!1);h&&g.ta&&void 0!==g.Ua&&(g.eb=g.ta.seek(g.Gb,g.$a,g.hb));h||(e=!1)}a.G=b[c++]||0;a.Yb=b[c]||mw;return e}
|
||||
function gw(a){var b=0,c=[];c[b++]=a.Wa;c[b++]=0;c[b++]=a.fa;c[b++]=a.F;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.sb;p[m++]=[k.name,k.rb,k.cb,k.Va,k.Na,k.Qe,k.yg,k.Bf,k.Cf];p[m++]=k.$a;p[m++]=k.Td+100;p[m++]=k.Gb;p[m++]=k.hb;p[m++]=k.Ud;p[m++]=k.wb;p[m++]=k.Ua;p[m++]=k.Pe;p[m++]=k.dl;p[m]=k.ue;f[h]=p}c[d]=f;d=b++;for(e=0;e<a.A.length;e++)f=a.A[e],f.ta&&nw(a,f.ue,f.ta);c[d]=a.B;c[b++]=a.G;c[b]=a.Yb;return c}
|
||||
l.lj=function(a){var b;a=this.A[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};l.el=function(a,b,c){if(a.ta){var d=a.ta.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.Gb=Math.floor(b/f),b%=f,a.$a=Math.floor(b/e),a.hb=b%e+1,a.wb=c*d[3],a.sb=ow,!0}return!1};
|
||||
function ew(a,b){b||(a.K=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.na.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?!kw(a,f,d.name||pw(a,e)||ua(e,!0),e,!0)&&b&&Ob(a,!1):a.Ca("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")"))}return!!a.K}
|
||||
function ew(a,b){b||(a.K=0);for(var c in a.M){var d=a.M[c],e;if(!(e=d.path))a:{if(e=d.name){var f=a.na.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?!kw(a,f,d.name||pw(a,e)||ua(e,!0),e,!0)&&b&&Ob(a,!1):a.Ca("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")"))}return!!a.K}
|
||||
function $v(a,b,c,d){var e,f=a.na.listDrives;if(f&&!isNaN(e=oa(f.value,10))&&0<=e&&e<a.A.length)if(c)if("?"==c)a.Ca('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=ua(c)}for(;0>kw(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}fw(a,e,!1,!0)}}else fw(a,e);else a.Ca("Unable to load the selected drive")}
|
||||
function kw(a,b,c,d,e,f){var g=a.A[b];if(d&&(d=d.replace("/disks/pc/","/disks/pcx86/"),g.ue.toLowerCase()!=d.toLowerCase())){fw(a,b,e,!0);if(g.Ne)return a.Ca("Drive "+b+" busy"),0;g.Ne=!0;e&&(g.le=!0,a.K++,t(a)&&Rb(a,"loading diskette '"+c+"'"));g.Pe=!!f;return(new hv(a,g,"preload")).load(c,d,f,a.qj)?1:0}return-1}
|
||||
l.qj=function(a,b,c,d,e){var f;a.Ne=!1;b&&(f=b.info(),b&&f[0]>a.rb||f[1]>a.cb)&&(this.Ca('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Wa)),b=null);b?(a.ta=b,a.dl=c,a.ue=d,pw(this,d)||dw(this,c,d),lw(this,c,d,b),f=b.info(),this.G|=qw,this.Ca('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Wa),a.le||e),a.yg=f[0],a.Bf=f[1],a.Cf=f[2],this.pa&&this.pa.od()):a.Pe=!1;a.le&&(a.le=!1,--this.K||Ob(this));Zv(this,a.Wa)};
|
||||
|
|
@ -686,8 +686,8 @@ function Iw(a,b,c,d,e,f,g,h){zw(a);Bw(a,b.Wa|b.$a<<2|b.sb&Nw);Bw(a,(b.sb&Rw)>>>8
|
|||
l.Gl=function(a,b){if(void 0!==b&&0<=b)a:if(a.sb)a=-1;else{a.$c[a.Je++]=b;if(a.Je==a.$c.length){a.Gb=a.$c[0];a.$a=a.$c[1];a.hb=a.$c[2];a.wb=128<<a.$c[3];for(var c=a.Je=0;c<a.wb;c++)if(0>Uw(a,a.$i)){a=-1;break a}a.lg++}a.lg>=a.Ud&&(b=-1);a=b}else a=-1;return a};l.te=function(a,b){var c=-1,d=null,e=0;if(!a.sb&&a.ta){do{if(a.eb&&(e=a.Ua,0<=(c=a.ta.read(a.eb,a.Ua++)))){d=a.eb;break}a.eb=a.ta.seek(a.Gb,a.$a,a.hb);if(!a.eb){a.sb=Vw|Gw;break}a.Ua=0;Ww(a)}while(1)}b(c,!1,d,e)};
|
||||
function Uw(a,b){if(a.sb||!a.ta)return-1;do{if(a.eb&&a.ta.write(a.eb,a.Ua++,b))break;a.eb=a.ta.seek(a.Gb,a.$a,a.hb);if(!a.eb){a.sb=Xw|Gw;b=-1;break}a.Ua=0;Ww(a)}while(1);return b}function Ww(a){a.hb++;a.hb>=a.Cf+1&&(a.hb=1,a.$a++,a.$a>=a.Bf&&(a.$a=0,a.Gb++))}var jw="Floppy Drive",rw=4,sw=8,uw=16,tw=64,hw=128,yw=3,Aw=4,Dw=5,Ew=6,Jw=7,Mw=8,Ow=10,Pw=13,Qw=15,vw=31,Tw=128,ow=0,Fw=8,Kw=32,Gw=64,iw=192,Nw=255,Hw=512,Vw=1024,Xw=8192,Rw=65280,Sw=16711680,Lw=268435456,Cw=-16777216,qw=128,mw=0;aa={};
|
||||
var ww={3:{Jd:3,Vd:0,name:aa.cq},4:{Jd:2,Vd:1,name:aa.aq},5:{Jd:9,Vd:7,name:aa.iq},6:{Jd:9,Vd:7,name:aa.Xp},7:{Jd:2,Vd:0,name:aa.Zp},8:{Jd:1,Vd:2,name:aa.bq},10:{Jd:2,Vd:7,name:aa.Yp},13:{Jd:6,Vd:7,name:aa.Tp},15:{Jd:3,Vd:0,name:aa.$p}},bw={1009:Xv.prototype.vm,1012:Xv.prototype.xm,1013:Xv.prototype.um,1015:Xv.prototype.wm},cw={1010:Xv.prototype.Zn,1013:Xv.prototype.Yn,1015:Xv.prototype.Xn};
|
||||
eb(function(){for(var a=Bb(document,"pcx86","fdc"),b=0;b<a.length;b++){var c=a[b],d=Cb(c),d=new Xv(d);Ab(d,c)}});function Yw(a){rb.call(this,"HDC",a,1048576);this.dmaRead=Yw.prototype.pl;this.dmaWrite=Yw.prototype.ql;this.dmaWriteBuffer=Yw.prototype.Hl;this.dmaWriteFormat=Yw.prototype.Il;this.Z=[];this.ka=a.drives;this.M="at"==a.type}ca(Yw,rb);l=Yw.prototype;
|
||||
l.Cb=function(a,b,c){var d=this;switch(b){case "saveHD0":case "saveHD1":return this.na[b]=c,c.onclick=function(a){return function(){var b=d.A&&d.A[a];if(b&&b.ta){var b=b.ta,c=b.Ng||b.ld,e=c.lastIndexOf(".");0<=e&&(c=c.substr(0,e));c+=".img";b=Za(Vv(b),"octet-stream",!0,c);mb(b)}else d.Ca("Hard drive "+a+" is not available.")}}(+b.slice(-1)),!0}return!1};
|
||||
eb(function(){for(var a=Bb(document,"pcx86","fdc"),b=0;b<a.length;b++){var c=a[b],d=Cb(c),d=new Xv(d);Ab(d,c)}});function Yw(a){rb.call(this,"HDC",a,1048576);this.dmaRead=Yw.prototype.pl;this.dmaWrite=Yw.prototype.ql;this.dmaWriteBuffer=Yw.prototype.Hl;this.dmaWriteFormat=Yw.prototype.Il;this.Z=[];this.ka=a.drives;this.M="at"==a.type;this.xa=!Wa("Mobi")&&window&&"FileReader"in window}ca(Yw,rb);l=Yw.prototype;
|
||||
l.Cb=function(a,b,c){var d=this;switch(b){case "saveHD0":case "saveHD1":if(this.xa)return this.na[b]=c,c.onclick=function(a){return function(){var b=d.A&&d.A[a];if(b&&b.ta){var b=b.ta,c=b.Ng||b.ld,e=c.lastIndexOf(".");0<=e&&(c=c.substr(0,e));c+=".img";b=Za(Vv(b),"octet-stream",!0,c);mb(b)}else d.Ca("Hard drive "+a+" is not available.")}}(+b.slice(-1)),!0;c.parentNode.removeChild(c)}return!1};
|
||||
l.uc=function(a,b,c,d){this.ma=b;this.H=c;this.ca=d;this.pa=a;if(d=Fd(a,"drives"))this.Z=d;else if(this.ka)try{this.Z=eval("("+this.ka+")")}catch(e){mb("HDC drive configuration error: "+e.message+" ("+this.ka+")")}this.W=bc(a,"ChipSet");this.G=0;this.la=3;Tc(b,this,this.M?Zw:$w);Xc(b,this,this.M?ax:bx);this.M&&(this.G++,this.W&&this.W.da==El&&this.G++,this.la=2,b.X[cx]=2,b.Z[cx]=2);Zf(c,19,this.Zm.bind(this));Zf(c,64,this.$m.bind(this));this.reset();dx(this)||Ob(this)};
|
||||
l.Xb=function(a,b){if(!b)if(!a)ex(this),this.pa.X&&dx(this,!0);else if(!this.restore(a))return!1;return!0};l.Wb=function(a){return a?this.save():!0};function lv(a){return a.pa?a.pa.sa:""}function mv(a){return a.pa?a.pa.B||"":""}l.reset=function(){ex(this,null,!0)};l.save=function(){var a=new dg(this);a.set(0,fx(this));return a.data()};l.restore=function(a){return ex(this,a[0])};
|
||||
function ex(a,b,c){var d=0,e=!0;a.Wa=-1;if(a.M){if(b||(b=[0,0,0,0,0,0,0,gx,0,[0,-1]]),a.I=b[d++],a.va=b[d++],a.J=b[d++],a.ga=b[d++],a.ea=b[d++],a.aa=b[d++],a.X=b[d++],a.fa=b[d++],a.ha=b[d++],a.L=b[d++],"object"==typeof a.L){var f=a.L;a.L=f[0];a.Wa=f[1]}}else b||(b=[0,hx,Array(14),0,0]),a.P=b[d++],a.fa=b[d++],a.F=b[d++],a.D=b[d++],a.C=b[d++],a.sa=b[d++],a.qa=b[d++],a.oa=b[d++],f=b[d++],void 0!==f?a.N=f:void 0===a.N&&(a.N=-1);void 0===a.A&&(a.A=Array(a.Z.length));b=b[d];void 0===b&&(b=[]);for(d=0;d<
|
||||
|
|
@ -814,17 +814,17 @@ a.B,Ba)||Yy(a,a.W,Ba)||Yy(a,a.L,Ba)||a.O("breakpoint missing: "+Zy(Ba)):"i"==P?a
|
|||
(db&&(db+=","),db+=ib);db+=",state,symbols";a.O("dump memory commands:");a.O("\tdb [a] [#] dump # bytes at address a");a.O("\tdw [a] [#] dump # words at address a");a.O("\tdd [a] [#] dump # dwords at address a");a.O("\tdh [#] [#] dump # instructions from history");a.O("\tdi [#] dump descriptor info for IDT #");a.O("\tds [#] dump descriptor info for selector #");db.length&&a.O("dump extension commands:\n\t"+db)}else if("state"==cb){var rc=DB(a.pa,!0);rc?"console"==Oa?console.log(rc):
|
||||
(yB(a.pa),a.O(rc)):a.O("powerOff() error")}else if("symbols"==cb)for(var kb=0;kb<a.F.length;kb++){var gf=a.F[kb],Md;for(Md in gf.Hd)if("."!=Md.charAt(0)){var hf=gf.Hd[Md],Ag=hf.o;if(void 0!==Ag){var jf=hf.s;void 0===jf&&(jf=gf.U);var Bg=gf.Hd[Md].l;Bg&&(Md=Bg);a.O(Oy(Ag,jf)+" "+Md)}}}else{if("ds"==pa||"dg"==pa||"dl"==pa)pa="d",ba=[pa,"desc",cb];"d"==pa&&"page"==cb&&(pa="dp",ba.shift());if("dp"==pa){ba.shift();var Am=ba[0];if(Am){var Vg=a.Sb(iz(a,Am));if(-1===Vg)a.O("invalid address: "+Am);else{var sf,
|
||||
Ra=null;if(80386<=a.H.da){var tf=a.ma,Ra={};Ra.Ok=(Vg&-4194304)>>>20;Ra.Xi=a.H.Wc+Ra.Ok;Ra.ob=tf.aa[(Ra.Xi&tf.C)>>>tf.A];Ra.Fj=Ra.ob.Nd(Ra.Ok);Ra.Pk=(Vg&4190208)>>>10;Ra.Yi=(Ra.Fj&-4096)+Ra.Pk;Ra.pb=tf.aa[(Ra.Yi&tf.C)>>>tf.A];Ra.Gj=Ra.pb.Nd(Ra.Pk);Ra.yl=(Ra.Gj&-4096)+(Vg&4095)}if(sf=Ra){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var ye="%"+q(Vg),ye=ye+(" %%"+nz(sf.Xi,sf.Fj)),ye=
|
||||
ye+(" %%"+nz(sf.Yi,sf.Gj,!0)),ye=ye+(" %%"+q(sf.yl));a.O(ye)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==pa){if("disk"==cb){ba[0]="l";ba[1]="json";xB(a,ba);break a}for(ib in Xb)if(ba[1]==ib){var Nt=a.Da[ib];Nt?(ba.shift(),ba.shift(),Nt(ba)):a.O("no dump registered for "+cb);break a}cb||(pa=a.lb||"db")}if("dh"==pa){var Ot=cb,Pt=Oa,Wg=jb,Wg=void 0===Wg?"history":Wg,Qt="",Rt=0,Mc=a.oa,kd=a.X;if(kd.length){var vc=+Ot||a.Ya,Xg=+Pt||10;isNaN(vc)?vc=Xg:Qt="more ";vc>kd.length&&
|
||||
(a.O("note: only "+kd.length+" available"),vc=kd.length);Mc-=vc;0>Mc&&(null==kd[kd.length-1].U?(vc=Mc+vc,Mc=0):Mc+=kd.length);var Bm=[];"call"==Pt&&(Xg=1E5,Bm=["CALL"]);for(void 0!==Ot&&a.O(vc+" instructions earlier:");0<Xg&&Mc!=a.oa;){var ld=kd[Mc++];if(null==ld.U)break;var Yg=By(a,ld.Ha,ld.U,ld.ya,ld.type,ld.Hb,ld.cc),St=vc--;null!=ld.mj&&"cycles"==Wg&&(St=ld.mj);var Tt=rA(a,Yg,Wg,St);(!Bm.length||0<=Tt.indexOf(Bm[0]))&&a.O(Tt);Yg.Ie&&(Mc+=Yg.Ie,Xg-=Yg.Ie,vc-=Yg.Ie);Mc>=kd.length&&(Mc=0);a.Ya=vc;
|
||||
ye+(" %%"+nz(sf.Yi,sf.Gj,!0)),ye=ye+(" %%"+q(sf.yl));a.O(ye)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==pa){if("disk"==cb){ba[0]="l";ba[1]="json";xB(a,ba);break a}for(ib in Xb)if(ba[1]==ib){var Nt=a.Da[ib];Nt?(ba.shift(),ba.shift(),Nt(ba)):a.O("no dump registered for "+cb);break a}cb||(pa=a.lb||"db")}if("dh"==pa){var Ot=cb,Pt=Oa,Wg=jb,Wg=void 0===Wg?"history":Wg,Qt="",Rt=0,Mc=a.oa,ld=a.X;if(ld.length){var vc=+Ot||a.Ya,Xg=+Pt||10;isNaN(vc)?vc=Xg:Qt="more ";vc>ld.length&&
|
||||
(a.O("note: only "+ld.length+" available"),vc=ld.length);Mc-=vc;0>Mc&&(null==ld[ld.length-1].U?(vc=Mc+vc,Mc=0):Mc+=ld.length);var Bm=[];"call"==Pt&&(Xg=1E5,Bm=["CALL"]);for(void 0!==Ot&&a.O(vc+" instructions earlier:");0<Xg&&Mc!=a.oa;){var md=ld[Mc++];if(null==md.U)break;var Yg=By(a,md.Ha,md.U,md.ya,md.type,md.Hb,md.cc),St=vc--;null!=md.mj&&"cycles"==Wg&&(St=md.mj);var Tt=rA(a,Yg,Wg,St);(!Bm.length||0<=Tt.indexOf(Bm[0]))&&a.O(Tt);Yg.Ie&&(Mc+=Yg.Ie,Xg-=Yg.Ie,vc-=Yg.Ie);Mc>=ld.length&&(Mc=0);a.Ya=vc;
|
||||
Rt++;Xg--}}Rt||(a.O("no "+Qt+"history available"),a.Ya=void 0)}else if("di"==pa){ba.shift();var Cm=ba[0];if(Cm){var Zg=qy(a,Cm);if(void 0===Zg||0>Zg||255<Zg)a.O("invalid vector: "+Cm);else{var Ut="&",Vt=!!(a.H.qa&1),Wt=!1,dj=a.H.Pb+(Zg<<(Vt?3:2)),Xt=a.H.ja(dj+0),uC=a.H.ja(dj+2);Vt&&(Ut="#",a.H.ja(dj+4)&2048&&(Wt=!0,Xt|=a.H.ja(dj+6)<<16));a.O("dumpIDT("+ta(Zg)+"): "+Ut+q(uC,4)+":"+q(Xt,Wt?8:4))}}else a.O("no IDT vector")}else if("dt"==pa)ba.shift(),a.O("no information");else if(pa[1]&&0>"abwd".indexOf(pa[1]))a.O("unrecognized dump command");
|
||||
else{a.lb=pa;var ze=iz(a,cb);if(ze&&(null!=ze.U||null!=ze.ya)){var uf=0;if(Oa){if("l"==Oa.charAt(0))Oa=Oa.substr(1)||jb,uf=qy(a,Oa);else{var Yt=iz(a,Oa);if(!Yt)break a;uf=Yt.Ha-ze.Ha+1}if(0>uf||65536<uf)uf=0}var Ae="",Dm=!1,vf="dd"==pa?4:"dw"==pa?2:1,$g=vf*uf||128,Em=$g+15>>4||1,Fm=4==vf?16:a.D;"a"==pa[1]&&(Dm=!0,Em=25,Fm=160,$g=Em*Fm);for(;Em--&&0<$g;){var ah=0,Gm=0,bh,Hm="",ej="",cb=Zy(ze);for(bh=Fm;0<bh&&0<$g;bh--){var fj=a.Ja(ze,1),ah=ah|fj<<(Gm++<<3);Gm==vf&&(Hm+=8==a.D?sa(ah,3*vf):q(ah,2*vf),
|
||||
Hm+=1==vf?9==bh?"-":" ":" ",ah=Gm=0);ej+=32<=fj&&128>fj?String.fromCharCode(fj):Dm?"":".";$g--}Ae&&(Ae+="\n");Ae=Dm?Ae+ej:Ae+(cb+" "+Hm+za(ej,ej.length+3*bh+1,!0))}Ae&&a.O(Ae.replace(/\s*$/,""));a.Aa=ze}}}}}break;case "e":if("else"==g[0])break;var gj=1,Zt=255,$t=a.Ja,au=a.fc;"ew"==g[0]&&(gj=2,Zt=65535,$t=a.Yc,au=a.ml);var bu=gj<<1,cu=g[1];if(null==cu)a.O("edit memory commands:"),a.O("\teb [a] [...] edit bytes at address a"),a.O("\tew [a] [...] edit words at address a");else{var hj=iz(a,cu);if(hj)for(var ij=
|
||||
2;ij<g.length;ij++){var ch=wy(a,g[ij]);if(void 0===ch){a.O("unrecognized value: "+g[ij]);break}ch&~Zt&&a.O("warning: "+q(ch)+" exceeds "+gj+"-byte value");var vC=$t.call(a,hj);a.O("changing "+Zy(hj)+" from "+q(vC,bu,!0)+" to "+q(ch,bu,!0));au.call(a,hj,ch,gj)}}break;case "f":uB(a,g[1]);break;case "g":a:{var du=g[1],wC=b;"gt"==g[0]&&(a.Ea=!0);if(void 0!==du){var Im=iz(a,du,!0);if(!Im)break a;lz(a,Im,wC);a.rd(a.B,Im,!0)}gA(a,!0)||c||a.O("cpu busy or unavailable, run command ignored")}break;case "h":a:{var Jm;
|
||||
if(a.ba.jb)Jm="halting",a.Kb();else{if(Pb(a,!0))break a;Jm="already halted"}c||a.O(Jm)}break;case "i":if("if"==g[0]){var Km;var dh=b.substr(2),dh=Aa(dh);wy(a,dh)?(c||a.O("true: "+dh),Km=!0):(c||a.O("false: "+dh),Km=!1);Km||(d=!1);break}if("int"==g[0]){var jj;a:switch(qy(a,g[1])){case 19:cl(a,19,a.H.ea,!0);a.ka=a.aa;jj=!0;break a;case 33:cl(a,33,a.H.ea,!0);a.ka=a.aa;jj=!0;break a;default:jj=!1}jj||(d=!1);break}var Lm=g[1];if(Lm&&"?"!=Lm){var Mm=qy(a,Lm);if(void 0!==Mm){var xC=Uc(a.ma,Mm,1);a.O(ta(Mm)+
|
||||
": "+r(xC))}}else a.O("input commands:"),a.O("\ti [p]\tread port [p]"),a.O("warning: port accesses can affect hardware state");break;case "k":var yC=g[0];if("?"==g[1])a.O("stack trace commands:"),a.O("\tk\tshow frame addresses"),a.O("\tks\tshow symbol information");else{var Nm=0,eu=a.H.Z.U,eh=By(a),Ud=By(a,z(a.H),a.H.X.U);for(a.O("stack trace for "+Zy(Ud));10>Nm;){for(var md=null,zC=256;Ud.Ha>>>0<a.H.eg>>>0;){eh.Ha=a.mb(Ud,!0);if(null==Ud.ya||!zC--)break;eh.U=eu;if(md=BB(a,eh))break;eh.U=a.mb(Ud);
|
||||
if(md=BB(a,eh,!0)){eu=a.mb(Ud,!0);0<md.indexOf("INT")&&a.mb(Ud,!0);break}}if(!md||null==md)break;var fu=null;if("ks"==yC){var gu=md.match(/[0-9A-F]+$/);gu&&(fu=wB(a,gu[0]))}md=za(md,50)+" ;"+(fu||"stack="+Zy(Ud));a.O(md);Nm++}Nm||a.O("no return addresses found")}break;case "l":if("ln"==g[0]){wB(a,g[1],!0);break}xB(a,g);break;case "m":if("mouse"==g[0]){var Om=g[1],kj=g[2];if(a.G){var hu=1;"-"==kj.charAt(0)&&(hu=-1,kj=kj.substr(1));var Be=qy(a,kj,Om);if(void 0!==Be)switch(Be=Be*hu|0,Om){case "x":a.G.uf(Be,
|
||||
0);break;case "y":a.G.uf(0,Be);break;case "click":a.G.Wd(Be,!0);a.G.Wd(Be,!1);break;default:a.O("unknown action: "+Om)}}else a.O("no mouse");break}a:{var nd,od=null,fb=g[1];"?"==fb&&(fb=void 0);if(void 0!==fb){var Ce=0;if("all"==fb)Ce=1610481663,fb=null;else if("on"==fb)od=!0,fb=null;else if("off"==fb)od=!1,fb=null;else{"keys"==fb&&(fb="key");"kbd"==fb&&(fb="keyboard");for(nd in Xb)if(fb==nd){Ce=Xb[nd];od=!!(a.ic&Ce);break}if(!Ce){a.O("unknown message category: "+fb);break a}}Ce&&("on"==g[2]?(a.ic|=
|
||||
Ce,od=!0):"off"==g[2]&&(a.ic&=~Ce,od=!1))}var AC=0,fh="";for(nd in Xb)if(!fb||fb==nd){var BC=!!(a.ic&Xb[nd]);if(null===od||od==BC)fh&&(fh+=","),++AC%10||(fh+="\n\t"),"key"==nd&&(nd="keys"),fh+=nd}void 0===fb&&a.O("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.O((null!==od?od?"messages on: ":"messages off: ":"message categories:\n\t")+(fh||"none"));Dy(a)}break;case "o":var Pm=g[1],CC=g[2];if(Pm&&"?"!=Pm){var Qm=qy(a,Pm,"port #"),Rm=qy(a,CC);void 0!==Qm&&void 0!==Rm&&(Yc(a.ma,
|
||||
": "+r(xC))}}else a.O("input commands:"),a.O("\ti [p]\tread port [p]"),a.O("warning: port accesses can affect hardware state");break;case "k":var yC=g[0];if("?"==g[1])a.O("stack trace commands:"),a.O("\tk\tshow frame addresses"),a.O("\tks\tshow symbol information");else{var Nm=0,eu=a.H.Z.U,eh=By(a),Ud=By(a,z(a.H),a.H.X.U);for(a.O("stack trace for "+Zy(Ud));10>Nm;){for(var nd=null,zC=256;Ud.Ha>>>0<a.H.eg>>>0;){eh.Ha=a.mb(Ud,!0);if(null==Ud.ya||!zC--)break;eh.U=eu;if(nd=BB(a,eh))break;eh.U=a.mb(Ud);
|
||||
if(nd=BB(a,eh,!0)){eu=a.mb(Ud,!0);0<nd.indexOf("INT")&&a.mb(Ud,!0);break}}if(!nd||null==nd)break;var fu=null;if("ks"==yC){var gu=nd.match(/[0-9A-F]+$/);gu&&(fu=wB(a,gu[0]))}nd=za(nd,50)+" ;"+(fu||"stack="+Zy(Ud));a.O(nd);Nm++}Nm||a.O("no return addresses found")}break;case "l":if("ln"==g[0]){wB(a,g[1],!0);break}xB(a,g);break;case "m":if("mouse"==g[0]){var Om=g[1],kj=g[2];if(a.G){var hu=1;"-"==kj.charAt(0)&&(hu=-1,kj=kj.substr(1));var Be=qy(a,kj,Om);if(void 0!==Be)switch(Be=Be*hu|0,Om){case "x":a.G.uf(Be,
|
||||
0);break;case "y":a.G.uf(0,Be);break;case "click":a.G.Wd(Be,!0);a.G.Wd(Be,!1);break;default:a.O("unknown action: "+Om)}}else a.O("no mouse");break}a:{var od,pd=null,fb=g[1];"?"==fb&&(fb=void 0);if(void 0!==fb){var Ce=0;if("all"==fb)Ce=1610481663,fb=null;else if("on"==fb)pd=!0,fb=null;else if("off"==fb)pd=!1,fb=null;else{"keys"==fb&&(fb="key");"kbd"==fb&&(fb="keyboard");for(od in Xb)if(fb==od){Ce=Xb[od];pd=!!(a.ic&Ce);break}if(!Ce){a.O("unknown message category: "+fb);break a}}Ce&&("on"==g[2]?(a.ic|=
|
||||
Ce,pd=!0):"off"==g[2]&&(a.ic&=~Ce,pd=!1))}var AC=0,fh="";for(od in Xb)if(!fb||fb==od){var BC=!!(a.ic&Xb[od]);if(null===pd||pd==BC)fh&&(fh+=","),++AC%10||(fh+="\n\t"),"key"==od&&(od="keys"),fh+=od}void 0===fb&&a.O("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.O((null!==pd?pd?"messages on: ":"messages off: ":"message categories:\n\t")+(fh||"none"));Dy(a)}break;case "o":var Pm=g[1],CC=g[2];if(Pm&&"?"!=Pm){var Qm=qy(a,Pm,"port #"),Rm=qy(a,CC);void 0!==Qm&&void 0!==Rm&&(Yc(a.ma,
|
||||
Qm,1,Rm),a.O(ta(Qm)+": "+r(Rm)))}else a.O("output commands:"),a.O("\to [p] [b]\twrite byte [b] to port [p]"),a.O("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){AB(a,b.substr(5));break}var iu="pr"==g[0]?1:0,wf=1+iu;if(a.K)a.O("step in progress");else{var lj,ju=!1,Hb=By(a,A(a.H),a.H.Z.U);do switch(lj=!1,a.Ja(Hb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:dz(a,Hb,1);lj=!0;break;case 204:case 206:a.K=wf;dz(a,Hb,1);break;case 205:case 224:case 225:case 226:a.K=
|
||||
wf;dz(a,Hb,Hb.Hb?4:2);break;case 232:a.K=wf;dz(a,Hb,Hb.Hb?5:3);break;case 154:a.K=wf;dz(a,Hb,Hb.Hb?7:5);break;case 255:var ku=a.mb(Hb)&14591;if(4351==ku||6399==ku)a.K=wf,rA(a,Hb);break;case 243:case 242:dz(a,Hb,1);ju=lj=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:ju&&(a.K=wf,dz(a,Hb,1))}while(lj);a.K?(a.rd(a.B,Hb,!0),gA(a)||(a.pa&&a.pa.od(),a.K=0)):CB(a,iu?"tr":"t")}break;case "r":if("reset"==b){a.pa&&a.pa.reset();
|
||||
break}iA(a,g);break;case "t":CB(a,g[0],g[1]);break;case "u":jA(a,g[1],g[2],8);break;case "v":if("var"==g[0]){vB(a,b.substr(3))||(d=!1);break}a.O("PCx86 version 1.35.2 ("+a.H.da+",RELEASE,NOPREFETCH"+(Tb?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)");a.O(Qa());break;case "x":a:if(g[1]&&"?"!=g[1])switch(g[1]){case "cs":var gh;void 0!==g[3]&&(gh=+g[3]);switch(g[2]){case "int":a.H.T.Ue=gh;break;case "start":a.H.T.xf=gh;break;case "stop":a.H.T.We=gh;break;default:a.O("unknown cs option");break a}void 0!==
|
||||
|
|
|
|||
Loading…
Reference in a new issue