Return NOT_READY response on a failed READ_ID FDC command; fixes #6

This commit is contained in:
Jeff Parsons 2014-11-11 09:35:47 -08:00 • committed by jeffpar
commit c94c280eea
5 changed files with 6 additions and 6 deletions

View file

@ -584,7 +584,7 @@ function Pj(a,b,c){if(a=a.sa.listDisks){for(var d=0;d<a.options.length;d++)if(a.
function Uj(a,b,c,d){var e=a.xa[b];e.ta&&(Vj(a,e.pe,e.ta),e.dl="",e.pe="",e.ta=null,e.Fe=!1,a.Ld|=128,d||a.ya("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||Qj(a,b))}function Xj(a,b,c,d){var e;for(e=0;e<a.ic.length;e++)if(a.ic[e][1]==c){d.restore(a.ic[e][2]);return}a.ic[e]=[b,c,[]]}function Vj(a,b,c){var d;for(d=0;d<a.ic.length;d++)if(a.ic[d][1]==b){a.ic[d][2]=c.save();break}}k.tn=function(a,b){b&4?this.Re&4||this.Re&8&&this.ja&&di(this.ja,6):this.gd();this.Re=b};k.gm=function(){return this.wa};
k.em=function(){var a=0;this.pb<this.$a&&(a=this.Sb[this.pb]);this.Re&8&&this.ja&&ei(this.ja,6);++this.pb>=this.$a&&(this.wa&=-81,this.pb=this.$a=0);return a};
k.sn=function(a,b){this.$a<this.Sb.length&&(this.Sb[this.$a++]=b);var c=this.Sb[0]&31;if(void 0!==Oj[c]&&this.$a>=Oj[c].ad){var d=!1;this.pb=0;var c=this.Ia(),e,f,h,g,m,n=c&31;switch(n){case 3:this.Ia(l.Oo);this.Ia(l.uo);this.Fb();break;case 4:f=this.Ia(l.Ve);this.Wa=f&3;e=this.xa[this.Wa];this.Fb();this.Rb((e.Sa&4278190080)>>>24,l.Ro);break;case 5:case 6:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];e.Ja=d;f=e.ib=this.Ia(l.gj);h=this.Ia(l.hj);g=e.Va=this.Ia(l.jj);m=this.Ia(l.eh);e.eb=128<<
m;e.td=this.Ia(l.po);this.Ia(l.nl);this.Ia(l.oo);6==n?this.zh(e):this.Ah(e);Yj(this,e,c,d,f,h,g,m);d=!0;break;case 7:f=this.Ia(l.Ve);this.Wa=f&3;e=this.xa[this.Wa];e.ib=e.rd=0;e.Sa=268435488;this.Fb();d=!0;break;case 8:e=this.xa[this.Wa];e.Ja=0;this.Fb();this.Rb(e.Wa|e.Ja<<2|e.Sa&255,l.pl);this.Rb(e.ib,l.Do);this.Wa=this.Wa+1&3;break;case 10:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];f=e.ib;h=e.Ja=d;g=e.Va=1;m=0;e.Sa=0;e.ta&&(e.Ka=e.ta.seek(e.ib,e.Ja,e.Va))?m=e.Ka.length:e.Sa=1088;Yj(this,
m;e.td=this.Ia(l.po);this.Ia(l.nl);this.Ia(l.oo);6==n?this.zh(e):this.Ah(e);Yj(this,e,c,d,f,h,g,m);d=!0;break;case 7:f=this.Ia(l.Ve);this.Wa=f&3;e=this.xa[this.Wa];e.ib=e.rd=0;e.Sa=268435488;this.Fb();d=!0;break;case 8:e=this.xa[this.Wa];e.Ja=0;this.Fb();this.Rb(e.Wa|e.Ja<<2|e.Sa&255,l.pl);this.Rb(e.ib,l.Do);this.Wa=this.Wa+1&3;break;case 10:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];f=e.ib;h=e.Ja=d;g=e.Va=1;m=0;e.Sa=0;e.ta&&(e.Ka=e.ta.seek(e.ib,e.Ja,e.Va))?m=e.Ka.length:e.Sa=72;Yj(this,
e,c,d,f,h,g,m);d=!0;break;case 13:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];f=e.ib;h=e.Ja=d;g=1;m=this.Ia(l.eh);e.eb=128<<m;e.td=this.Ia(l.Jo);this.Ia(l.nl);e.pj=this.Ia(l.ml);this.yj(e);Yj(this,e,c,d,f,h,g,m);d=!0;break;case 15:f=this.Ia(l.Ve),this.Wa=f&3,e=this.xa[this.Wa],e.Ja=f>>2&1,f=this.Ia(l.Ao),e.ib+=f-e.rd,0>e.ib&&(e.ib=0),e.ib>=e.fb&&(e.ib=e.fb-1),e.rd=f,e.Sa=32,0==e.ib&&(e.Sa|=268435456),this.Fb(),d=!0}0<this.$a&&(this.wa|=80);this.Re&8&&(!e||e.Sa&8||!d||this.ja&&di(this.ja,
6))}};k.fm=function(){var a=this.Ld;this.Ld&=-129;return a};k.rn=function(a,b){this.Zk=b};function Yj(a,b,c,d,e,f,h,g){a.Fb();a.Rb(b.Wa|b.Ja<<2|b.Sa&255,l.pl);a.Rb((b.Sa&65280)>>>8,l.Po);a.Rb((b.Sa&16711680)>>>16,l.Qo);var m=0;if(e!=b.ib||f!=b.Ja)m=h=1;c&128&&(f^=m,d||(m=0));a.Rb(e+m,l.gj);a.Rb(f,l.hj);a.Rb(h,l.jj);a.Rb(g,l.eh)}k.Ia=function(){var a=this.Sb[this.pb];this.pb++;return a};k.Fb=function(){this.pb=this.$a=0};k.Rb=function(a){this.Sb[this.$a++]=a};
k.xh=function(a,b,c){void 0===b||0>b?this.yc(a,c):c(-1,!1)};k.yh=function(a,b){return void 0!==b&&0<=b?this.Bc(a,b):-1};k.ul=function(a,b){return void 0!==b&&0<=b?this.dj(a,b):-1};k.zh=function(a){a.Sa=72;a.ta&&(a.Ka=null,a.Sa=0,this.ja&&(Uh(this.ja,2,this,"dmaRead",a),Qh(this.ja,2)))};k.Ah=function(a){a.Sa=72;a.ta&&(a.ta.He?a.Sa=576:(a.Ka=null,a.Sa=0,this.ja&&(Uh(this.ja,2,this,"dmaWrite",a),Qh(this.ja,2))))};