diff --git a/docs/pcx86/examples/pcx86-dbg.js b/docs/pcx86/examples/pcx86-dbg.js index 9c6e24ecd..ced7d2acf 100644 --- a/docs/pcx86/examples/pcx86-dbg.js +++ b/docs/pcx86/examples/pcx86-dbg.js @@ -661,7 +661,7 @@ Gv.prototype.yj=function(a,b){var c=null;if(this.pd)for(var d in this.pd){var e= function Ov(a){pb.call(this,"FDC",a,524288);this.dmaRead=Ov.prototype.kl;this.dmaWrite=Ov.prototype.ll;this.dmaFormat=Ov.prototype.Dl;this.L=Pv(a.autoMount);this.J=a.sortBy||"name";"none"==this.J&&(this.J=null);this.B=[];this.M=!Wa("Mobi")&&window&&"FileReader"in window}ba(Ov,pb);l=Ov.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'+b+"");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&&Qv(d,a)},!0;case "loadDisk":return this.na[b]=c,c.onclick=function(){var a=d.na.listDisks;a&&Rv(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.sa)?(a=Za(Mv(a),"octet-stream",!0,a.Lg.replace(".json",".img")),kb(a)):d.Da("No diskette loaded in drive."):d.Da("No diskette drive selected."))};return!0;case "mountDisk":if(this.M)return this.na[b]=c,c.addEventListener("change",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;Rv(d,ta(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1}; +10)||0])?(a=a.sa)?(a=Za(Mv(a),"octet-stream",!0,a.Lg.replace(".json",".img")),kb(a)):d.Da("No diskette loaded in drive."):d.Da("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;Rv(d,ta(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1}; l.uc=function(a,b,c,d){this.ka=b;this.H=c;this.ba=d;this.pa=a;this.W=Zb(a,"ChipSet");Pv(Bd(this.pa,"autoMount"),this.L);Sv(this);Qc(b,this,Tv);Uc(b,this,Uv);Vv(this,"None","",!0);this.M&&Vv(this,"Local Disk","?");Vv(this,"Remote Disk","??");Wv(this)||Lb(this)};function Pv(a,b){if(a){if("string"==typeof a)try{a=eval("("+a+")")}catch(d){kb("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.O){this.B=[];for(a=0;abw(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){var f=a,g=c,h;for(h=0;hbw(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;ha.rb||f[1]>a.kb)&&(this.Da('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Va)),b=null);b?(a.sa=b,a.al=c,a.ue=d,cw(this,c,d,b),f=b.info(),this.G|=gw,this.Da('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Va),a.le||e),a.wg=f[0],a.Bf=f[1],a.Cf=f[2],this.pa&&this.pa.nd()):a.Pe=!1;a.le&&(a.le=!1,--this.K||Lb(this));Qv(this,a.Va)}; function Vv(a,b,c,d){if((a=a.na.listDisks)&&a.options){for(var e=0;e'+b+"");a.innerHTML=b}};return!0;case "descDisk":case "listDrives":return this.ia[b]=c,c.onchange=function(){var a=na(c.value,10);null!=a&&Bs(d,a)},!0;case "loadDisk":return this.ia[b]=c,c.onclick=function(){var a=d.ia.listDisks;a&&Cs(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDisk":if(!this.M){c.parentNode.removeChild(c);break}this.ia[b]=c;c.onclick=function(){var a=d.ia.listDrives;a&&a.options&&d.A&&((a=d.A[na(a.value, -10)||0])?(a=a.sa)?(a=Na(xs(a),"octet-stream",!0,a.rh.replace(".json",".img")),r(a)):d.wa("No diskette loaded in drive."):d.wa("No diskette drive selected."))};return!0;case "mountDisk":if(this.M)return this.ia[b]=c,c.addEventListener("change",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;Cs(d,pa(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1}; +10)||0])?(a=a.sa)?(a=Na(xs(a),"octet-stream",!0,a.rh.replace(".json",".img")),r(a)):d.wa("No diskette loaded in drive."):d.wa("No diskette drive selected."))};return!0;case "mountDisk":if(this.M)return this.ia[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;Cs(d,pa(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1}; k.ic=function(a,b,c,d){this.ma=b;this.U=c;this.Ea=d;this.na=a;this.V=zb(a,"ChipSet");As(Pc(this.na,"autoMount"),this.L);Ds(this);nc(b,this,Es);qc(b,this,Fs);Gs(this,"None","",!0);this.M&&Gs(this,"Local Disk","?");Gs(this,"Remote Disk","??");Hs(this)||pb(this)};function As(a,b){if(a){if("string"==typeof a)try{a=eval("("+a+")")}catch(d){r("FDC auto-mount error: "+d.message+" ("+a+")"),a={}}}else a={};for(var c in a)b&&(b[c]=a[c]);return a} k.Ob=function(a,b){if(!b){if(!a){if(this.reset(),this.na.O){this.B=[];for(a=0;aNs(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){var f=a,g=c,h;for(h=0;hNs(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;ha.fb||f[1]>a.gb)&&(this.wa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.La)),b=null);b?(a.sa=b,a.Sj=c,a.Sd=d,Os(this,c,d,b),f=b.info(),this.H|=Rs,this.wa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.La),a.Gd||e),a.Nf=f[0],a.Re=f[1],a.Se=f[2],this.na&&bd(this.na)):a.ne=!1;a.Gd&&(a.Gd=!1,--this.J||pb(this));Bs(this,a.La)}; function Gs(a,b,c,d){if((a=a.ia.listDisks)&&a.options){for(var e=0;eMissing <canvas> support. Please try a newer web browser.";break}e.setAttribute("class","c1pjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor; e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var g=new Image,h=e.getContext("2d"),e=new fb(d,e,h,g);g.onload=function(a){return function(){a.X()}}(e,d.charSet);g.src=d.charSet;F(e,c)}}); function ib(a){C.call(this,"C1PSerialPort",a);this.C.N=!1;this.D=a.demo;this.reset(!0)}p(ib,C);f=ib.prototype;f.reset=function(a){if(a||this.o!=jb){this.v=-1;this.A=0;this.g="";if(this.D){a=1;if(this.nb){var b=this.nb.match(/\d+/);null!==b&&(a=parseInt(b[0],10))}this.g='10 PRINT "HELLO OSI #'+a+'"\n'}this.B=!0;this.o=kb}};f.start=function(){this.b&&this.D&&(cb(this.b," C\n\n",3E3),setTimeout(function(a){return function(){a.o=lb;cb(a.b,"LOAD\n")}}(this),12E3));this.D=!1}; -f.T=function(a,b,c){var d=this;switch(b){case "listSerial":return this.H[b]=c,!0;case "loadSerial":return this.H[b]=c,c.onclick=function(){d.H.listSerial&&w(d.H.listSerial.value,function(a,b,c){mb(d,a,b,c)})},!0;case "mountSerial":return!x("Mobi")&&window&&"FileReader"in window?(this.H[b]=c,c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.addEventListener("submit",function(a){var b=a.currentTarget[1].files[0],c=new FileReader;c.onload= -function(){mb(d,b.name,c.result.toString(),0)};c.readAsText(b);return!1})):c.parentNode.removeChild(c),!0}return!1};f.ca=function(a,b,c,d){this.a=a;this.M=b;this.K=c-b+1;this.I=this.M+this.K;if(this.s=d)Ia(d,b,c,this,this.S),O(d,b,c,this,this.Jb);this.X()};f.ia=function(a,b){a&&!this.C.N&&(this.C.N=!0,this.U=b,this.b=M(b,"keyboard"),this.u=M(b,"debugger"))}; +f.T=function(a,b,c){var d=this;switch(b){case "listSerial":return this.H[b]=c,!0;case "loadSerial":return this.H[b]=c,c.onclick=function(){d.H.listSerial&&w(d.H.listSerial.value,function(a,b,c){mb(d,a,b,c)})},!0;case "mountSerial":return!x("Mobi")&&window&&"FileReader"in window?(this.H[b]=c,c.onchange=function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length},c.onsubmit=function(a){var b=a.currentTarget[1].files[0],c=new FileReader;c.onload=function(){mb(d,b.name,c.result.toString(), +0)};c.readAsText(b);return!1}):c.parentNode.removeChild(c),!0}return!1};f.ca=function(a,b,c,d){this.a=a;this.M=b;this.K=c-b+1;this.I=this.M+this.K;if(this.s=d)Ia(d,b,c,this,this.S),O(d,b,c,this,this.Jb);this.X()};f.ia=function(a,b){a&&!this.C.N&&(this.C.N=!0,this.U=b,this.b=M(b,"keyboard"),this.u=M(b,"debugger"))}; function mb(a,b,c,d){if(c){a.A=0;a.g=c;a.B=!0;a.o=kb;if(-1!==b.indexOf(".json",b.length-5))try{d="";var e=eval("("+c+")").bytes;for(c=0;cMissing <canvas> support. Please try a newer web browser.";break}f.setAttribute("class","c1pjs-canvas");f.setAttribute("width",d.screenWidth);f.setAttribute("height",d.screenHeight);f.setAttribute("contenteditable","true");f.setAttribute("autocapitalize","off");f.setAttribute("autocorrect","off");f.style.backgroundColor=d.screenColor; f.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(f.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,f,d.screenWidth,d.screenHeight));c.appendChild(f);var g=new Image,h=f.getContext("2d"),f=new Ua(d,f,h,g);g.onload=function(a){return function(){a.R()}}(f,d.charSet);g.src=d.charSet;I(f,c)}}); function Xa(a){E.call(this,"C1PSerialPort",a);this.u.I=!1;this.j=a.demo;this.reset(!0)}q(Xa,E);e=Xa.prototype;e.reset=function(a){if(a||this.f!=Ya){this.g=-1;this.h=0;this.c="";if(this.j){a=1;if(this.Ba){var b=this.Ba.match(/\d+/);null!==b&&(a=parseInt(b[0],10))}this.c='10 PRINT "HELLO OSI #'+a+'"\n'}this.i=!0;this.f=Za}};e.start=function(){this.b&&this.j&&(W(this.b," C\n\n",3E3),setTimeout(function(a){return function(){a.f=$a;W(a.b,"LOAD\n")}}(this),12E3));this.j=!1}; -e.L=function(a,b,c){var d=this;switch(b){case "listSerial":return this.B[b]=c,!0;case "loadSerial":return this.B[b]=c,c.onclick=function(){d.B.listSerial&&v(d.B.listSerial.value,function(a,b,c){ab(d,a,b,c)})},!0;case "mountSerial":return!w("Mobi")&&window&&"FileReader"in window?(this.B[b]=c,c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.addEventListener("submit",function(a){var b=a.currentTarget[1].files[0],c=new FileReader;c.onload= -function(){ab(d,b.name,c.result.toString(),0)};c.readAsText(b);return!1})):c.parentNode.removeChild(c),!0}return!1};e.Y=function(a,b,c,d){this.a=a;this.m=b;this.s=c-b+1;this.o=this.m+this.s;if(this.G=d)Ca(d,b,c,this,this.X),Q(d,b,c,this,this.ab);this.R()};e.$=function(a,b){a&&!this.u.I&&(this.u.I=!0,this.J=b,this.b=O(b,"keyboard"))}; +e.L=function(a,b,c){var d=this;switch(b){case "listSerial":return this.B[b]=c,!0;case "loadSerial":return this.B[b]=c,c.onclick=function(){d.B.listSerial&&v(d.B.listSerial.value,function(a,b,c){ab(d,a,b,c)})},!0;case "mountSerial":return!w("Mobi")&&window&&"FileReader"in window?(this.B[b]=c,c.onchange=function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length},c.onsubmit=function(a){var b=a.currentTarget[1].files[0],c=new FileReader;c.onload=function(){ab(d,b.name,c.result.toString(), +0)};c.readAsText(b);return!1}):c.parentNode.removeChild(c),!0}return!1};e.Y=function(a,b,c,d){this.a=a;this.m=b;this.s=c-b+1;this.o=this.m+this.s;if(this.G=d)Ca(d,b,c,this,this.X),Q(d,b,c,this,this.ab);this.R()};e.$=function(a,b){a&&!this.u.I&&(this.u.I=!0,this.J=b,this.b=O(b,"keyboard"))}; function ab(a,b,c,d){if(c){a.h=0;a.c=c;a.i=!0;a.f=Za;if(-1!==b.indexOf(".json",b.length-5))try{d="";var f=eval("("+c+")").bytes;for(c=0;c'+b+"");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&&Qv(d,a)},!0;case "loadDisk":return this.na[b]=c,c.onclick=function(){var a=d.na.listDisks;a&&Rv(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.sa)?(a=Za(Mv(a),"octet-stream",!0,a.Lg.replace(".json",".img")),kb(a)):d.Da("No diskette loaded in drive."):d.Da("No diskette drive selected."))};return!0;case "mountDisk":if(this.M)return this.na[b]=c,c.addEventListener("change",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;Rv(d,ta(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1}; +10)||0])?(a=a.sa)?(a=Za(Mv(a),"octet-stream",!0,a.Lg.replace(".json",".img")),kb(a)):d.Da("No diskette loaded in drive."):d.Da("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;Rv(d,ta(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1}; l.uc=function(a,b,c,d){this.ka=b;this.H=c;this.ba=d;this.pa=a;this.W=Zb(a,"ChipSet");Pv(Bd(this.pa,"autoMount"),this.L);Sv(this);Qc(b,this,Tv);Uc(b,this,Uv);Vv(this,"None","",!0);this.M&&Vv(this,"Local Disk","?");Vv(this,"Remote Disk","??");Wv(this)||Lb(this)};function Pv(a,b){if(a){if("string"==typeof a)try{a=eval("("+a+")")}catch(d){kb("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.O){this.B=[];for(a=0;abw(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){var f=a,g=c,h;for(h=0;hbw(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;ha.rb||f[1]>a.kb)&&(this.Da('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Va)),b=null);b?(a.sa=b,a.al=c,a.ue=d,cw(this,c,d,b),f=b.info(),this.G|=gw,this.Da('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Va),a.le||e),a.wg=f[0],a.Bf=f[1],a.Cf=f[2],this.pa&&this.pa.nd()):a.Pe=!1;a.le&&(a.le=!1,--this.K||Lb(this));Qv(this,a.Va)}; function Vv(a,b,c,d){if((a=a.na.listDisks)&&a.options){for(var e=0;e'+b+"");a.innerHTML=b}};return!0;case "descDisk":case "listDrives":return this.ia[b]=c,c.onchange=function(){var a=na(c.value,10);null!=a&&Bs(d,a)},!0;case "loadDisk":return this.ia[b]=c,c.onclick=function(){var a=d.ia.listDisks;a&&Cs(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDisk":if(!this.M){c.parentNode.removeChild(c);break}this.ia[b]=c;c.onclick=function(){var a=d.ia.listDrives;a&&a.options&&d.A&&((a=d.A[na(a.value, -10)||0])?(a=a.sa)?(a=Na(xs(a),"octet-stream",!0,a.rh.replace(".json",".img")),r(a)):d.wa("No diskette loaded in drive."):d.wa("No diskette drive selected."))};return!0;case "mountDisk":if(this.M)return this.ia[b]=c,c.addEventListener("change",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;Cs(d,pa(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1}; +10)||0])?(a=a.sa)?(a=Na(xs(a),"octet-stream",!0,a.rh.replace(".json",".img")),r(a)):d.wa("No diskette loaded in drive."):d.wa("No diskette drive selected."))};return!0;case "mountDisk":if(this.M)return this.ia[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;Cs(d,pa(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1}; k.ic=function(a,b,c,d){this.ma=b;this.U=c;this.Ea=d;this.na=a;this.V=zb(a,"ChipSet");As(Pc(this.na,"autoMount"),this.L);Ds(this);nc(b,this,Es);qc(b,this,Fs);Gs(this,"None","",!0);this.M&&Gs(this,"Local Disk","?");Gs(this,"Remote Disk","??");Hs(this)||pb(this)};function As(a,b){if(a){if("string"==typeof a)try{a=eval("("+a+")")}catch(d){r("FDC auto-mount error: "+d.message+" ("+a+")"),a={}}}else a={};for(var c in a)b&&(b[c]=a[c]);return a} k.Ob=function(a,b){if(!b){if(!a){if(this.reset(),this.na.O){this.B=[];for(a=0;aNs(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){var f=a,g=c,h;for(h=0;hNs(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;ha.fb||f[1]>a.gb)&&(this.wa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.La)),b=null);b?(a.sa=b,a.Sj=c,a.Sd=d,Os(this,c,d,b),f=b.info(),this.H|=Rs,this.wa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.La),a.Gd||e),a.Nf=f[0],a.Re=f[1],a.Se=f[2],this.na&&bd(this.na)):a.ne=!1;a.Gd&&(a.Gd=!1,--this.J||pb(this));Bs(this,a.La)}; function Gs(a,b,c,d){if((a=a.ia.listDisks)&&a.options){for(var e=0;e