Fixed loading of older state files
This commit is contained in:
parent
e24ff3ae47
commit
ab5eb61b8d
11 changed files with 24 additions and 18 deletions
|
|
@ -604,7 +604,7 @@ k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Hd(
|
|||
k.Hd=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.gb=a[b++];b++;this.Da=a[b++];this.cc=a[b++];this.tb=a[b++];this.eb=a[b++];this.zf=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.uc=c);void 0===this.Ea&&(this.Qi=4,this.oa&&(this.Qi=Fi(this.oa)),this.Ea=Array(4));for(c=0;c<this.Ea.length;c++){var f=this.Ea[c];if(void 0===f){var f=this.Ea[c]={},g;if(this.oa)a:{g=this.oa;if(c<Fi(g)){if(!g.Vd){g=360;break a}if(c<g.Vd.length){g=g.Vd[c];break a}}g=0}else g=0;switch(g){case 160:case 180:f.sb=
|
||||
1;default:f.rb=40;f.xb=9;break;case 720:f.rb=80;f.xb=9;break;case 1200:f.rb=80;f.xb=15;break;case 1440:f.rb=80,f.xb=18}}this.Gi(f,c,e[c])||(d=!1)}this.se=a[b++]||0;this.Ul=a[b]||0;return d};k.Nj=function(){var a=0,b=[];b[a++]=this.gb;b[a++]=0;b[a++]=this.Da;b[a++]=this.cc;b[a++]=this.tb;b[a++]=this.eb;b[a++]=this.zf;b[a++]=this.Pj();for(var c=a++,d=0;d<this.Ea.length;d++){var e=this.Ea[d];e.za&&yl(this,e.Ve,e.za)}b[c]=this.uc;b[a++]=this.se;b[a]=this.Ul;return b};
|
||||
k.Gi=function(a,b,c){var d=0,e=!0;a.gb=b;a.Cc=a.lf=!1;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.rb||40,a.sb||c[3],a.xb||9,a.ib||512,c[1],a.Ch,a.pg,a.qg]);a.Ya=c[d++];var f=c[d++];a.name=f[0];a.rb=f[1];a.sb=f[2];a.xb=f[3];a.ib=f[4];a.mf=f[5];(a.Ch=f[6])?(a.pg=f[7],a.qg=f[8]):(a.Ch=a.rb,a.pg=a.sb,a.qg=a.xb);a.Na=c[d++];a.ae=c[d++];a.mb=c[d++];a.ae=100<=a.ae?a.ae-100:a.ae-a.mb;a.Wa=c[d++];a.ce=c[d++];a.cb=c[d++];a.ab=c[d++];a.Sa=null;a.za||(a.Ve="");var g=c[d++];
|
||||
"boolean"==typeof g?(f=c[d++],c=c[d],g?(d=this.Ea[b],xl(this,b,!0,!0),d.lf=!0,b=new el(this,d,"preload"),this.qk(d,b,f,c)):zl(this,b,f,c,!0)?a.za&&Al(this,f,c,a.za):this.Ta(!1)):void 0!==g&&a.za&&0>a.za.restore(g)&&(e=!1);e&&a.za&&void 0!==a.ab&&(a.Sa=a.za.seek(a.mb,a.Na,a.Wa));return e};k.Pj=function(){for(var a=0,b=[],c=0;c<this.Ea.length;c++)b[a++]=this.Oj(this.Ea[c]);return b};
|
||||
102==g&&(g=!1);"boolean"==typeof g?(f=c[d++],c=c[d],g?(d=this.Ea[b],xl(this,b,!0,!0),d.lf=!0,b=new el(this,d,"preload"),this.qk(d,b,f,c)):zl(this,b,f,c,!0)?a.za&&Al(this,f,c,a.za):this.Ta(!1)):void 0!==g&&a.za&&0>a.za.restore(g)&&(e=!1);e&&a.za&&void 0!==a.ab&&(a.Sa=a.za.seek(a.mb,a.Na,a.Wa));return e};k.Pj=function(){for(var a=0,b=[],c=0;c<this.Ea.length;c++)b[a++]=this.Oj(this.Ea[c]);return b};
|
||||
k.Oj=function(a){var b=0,c=[];c[b++]=a.Ya;c[b++]=[a.name,a.rb,a.sb,a.xb,a.ib,a.mf,a.Ch,a.pg,a.qg];c[b++]=a.Na;c[b++]=a.ae+100;c[b++]=a.mb;c[b++]=a.Wa;c[b++]=a.ce;c[b++]=a.cb;c[b++]=a.ab;c[b++]=a.lf;c[b++]=a.Zl;c[b]=a.Ve;return c};k.nk=function(a){var b;a=this.Ea[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};k.bm=function(a,b,c){if(a.za){var d=a.za.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.mb=Math.floor(b/f),b%=f,a.Na=Math.floor(b/e),a.Wa=b%e+1,a.cb=c*d[3],a.Ya=0,!0}return!1};
|
||||
k.Pf=function(a){a||(this.Ee=0);if(this.Ie)for(var b in this.Ie){var c=this.Ie[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.Ea.length){!zl(this,d,c.name,c.path,!0)&&a&&this.Ta(!1);continue}}this.Ja("Unrecognized auto-mount specification for drive "+b)}return!!this.Ee};
|
||||
function ul(a,b,c,d){var e,f=a.ya.listDrives;if(f&&!isNaN(e=parseInt(f.value,10))&&0<=e&&e<a.Ea.length)if(c){if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=fa(c);a.da("Attempting to load "+c+' as "'+b+'"')}for(a.da("loading disk "+c+"...");zl(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var f=a,g=c,h=void 0,h=0;h<f.uc.length;h++)if(f.uc[h][1]==g){f.uc.splice(h,1);break}xl(a,e,
|
||||
|
|
|
|||
Loading…
Reference in a new issue