Collapsed /configs into /devices (or in some cases, /apps or /disks), simplifying the structure a bit

This commit is contained in:
Jeff Parsons 2014-11-03 00:11:40 -08:00 committed by jeffpar
commit 0e8e11d2d8
159 changed files with 1498 additions and 1472 deletions

View file

@ -1,6 +1,6 @@
(function(){var f;function aa(a,b){var c="";void 0===b?b=8:8<b&&(b=8);if(isNaN(a))for(;0<b--;)c="?"+c;else for(;0<b--;){var d=a&15,d=d+(0<=d&&9>=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function n(a){return aa(a,2)}function p(a){return aa(a,4)}function ba(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));return b}var ca={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};function da(a){return a.replace(/[&<>"']/g,function(a){return ca[a]})}function r(){return Date.now()||+new Date}
function s(a,b,c){var d;d=!0;var e=0,g=null,h=ba(a),k=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");d&&(k.onreadystatechange=function(){4===k.readyState&&(g=k.responseText,200==k.status||!k.status&&g.length&&"file:"==(window?window.location.protocol:"file:")||(e=k.status||-1),c&&(b?c.call(b,h,g,e,void 0):c(h,g,e,void 0)))});k.open("GET",a,d);k.send();d||(g=k.responseText,200!=k.status&&(e=k.status||-1),c&&(b?c.call(b,h,g,e,void 0):c(h,g,e,void 0)))}
function t(a){window?window.alert(a):console.log(a)}function u(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function ea(a,b,c){function d(){a-=1;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}
function t(a){window&&window.alert(a)}function u(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function ea(a,b,c){function d(){a-=1;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}
function fa(a,b){function c(){b(100===d)&&(e=setTimeout(c,d),d=100)}var d=0,e=null,g=!1;a.onmousedown=function(){g||e||(d=500,c())};a.ontouchstart=function(){e||(d=500,c())};a.onmouseup=a.onmouseout=function(){e&&(clearTimeout(e),e=null)};a.ontouchend=a.ontouchcancel=function(){e&&(clearTimeout(e),e=null);g=!0}}var v={init:[],show:[],exit:[]},ga=!1,w=!0;function ha(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function x(a){v.init.push(a)}
function y(a){if(w)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){t("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to Jeff@pcjs.org. Thanks.")}}function ia(a){!w&&a?(w=!0,ga&&ja("init")):w=a}function ja(a){v[a]&&y(v[a])}ha("onload",function(){ga=!0;y(v.init)});ha("onpageshow",function(){y(v.show)});ha(u("Opera")||u("iOS")?"onunload":"onbeforeunload",function(){y(v.exit)});
function z(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.Hd=this.id.substr(0,b),this.Gd=this.id.substr(b+1)):this.Gd=this.id;this[a]=c;this.o={Ub:!1,Ta:!1,vc:!1,C:!1,Ua:!1};this.xc=null;this.o.Ua=!1;this.s={};this.m=null;ka(this);A[A.length]=this}var la=void 0;

View file

@ -1,6 +1,6 @@
(function(){var e;function p(a,b){var c="";void 0===b?b=8:8<b&&(b=8);if(isNaN(a))for(;0<b--;)c="?"+c;else for(;0<b--;){var d=a&15,d=d+(0<=d&&9>=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function aa(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));return b}var ba={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};function ca(a){return a.replace(/[&<>"']/g,function(a){return ba[a]})}
function q(a,b,c){var d;d=!0;var f=0,g=null,k=aa(a),h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");d&&(h.onreadystatechange=function(){4===h.readyState&&(g=h.responseText,200==h.status||!h.status&&g.length&&"file:"==(window?window.location.protocol:"file:")||(f=h.status||-1),c&&(b?c.call(b,k,g,f,void 0):c(k,g,f,void 0)))});h.open("GET",a,d);h.send();d||(g=h.responseText,200!=h.status&&(f=h.status||-1),c&&(b?c.call(b,k,g,f,void 0):c(k,g,f,void 0)))}
function r(a){window?window.alert(a):console.log(a)}function s(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var t={init:[],show:[],exit:[]},da=!1,u=!0;function v(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function w(a){t.init.push(a)}
function r(a){window&&window.alert(a)}function s(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var t={init:[],show:[],exit:[]},da=!1,u=!0;function v(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function w(a){t.init.push(a)}
function x(a){if(u)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){r("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to Jeff@pcjs.org. Thanks.")}}function y(a){!u&&a?(u=!0,da&&ea("init")):u=a}function ea(a){t[a]&&x(t[a])}v("onload",function(){da=!0;x(t.init)});v("onpageshow",function(){x(t.show)});v(s("Opera")||s("iOS")?"onunload":"onbeforeunload",function(){x(t.exit)});
function z(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.fc=this.id.substr(0,b),this.ec=this.id.substr(b+1)):this.ec=this.id;this[a]=c;this.m={Pa:!1,ra:!1,mb:!1,B:!1,sa:!1};this.nb=null;this.m.sa=!1;this.p={};fa(this);A[A.length]=this}var B=void 0;if(window){B||(B=window.location.search.substr(1));for(var D,ga=/\+/g,ha=/([^&=]+)=?([^&]*)/g;D=ha.exec(B);)D[1].replace(ga," "),D[2].replace(ga," ")}
function ia(){var a=z.prototype;function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function E(a){a.prototype=ia()}var A=[];function F(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<A.length;c++)if(A[c].id===a)return A[c]}return null}

View file

@ -20,7 +20,7 @@
<li><a href="/">Home</a></li>
<li><a href="/apps/pc/">Apps</a></li>
<li><a href="/disks/pc/">Disks</a></li>
<li><a href="/configs/">Machines</a></li>
<li><a href="/devices/">Machines</a></li>
<li><a href="/docs/">Docs</a></li>
<li><a href="/pubs/">Pubs</a></li>
<li><a href="/blog/">Blog</a></li>

View file

@ -20,7 +20,7 @@
<li><a href="/">Home</a></li>
<li><a href="/apps/pc/">Apps</a></li>
<li><a href="/disks/pc/">Disks</a></li>
<li><a href="/configs/">Machines</a></li>
<li><a href="/devices/">Machines</a></li>
<li><a href="/docs/">Docs</a></li>
<li><a href="/pubs/">Pubs</a></li>
<li><a href="/blog/">Blog</a></li>

View file

@ -26,7 +26,7 @@
</xsl:template>
<xsl:template name="machine">
<xsl:param name="href">/configs/pc/machines/5150/mda/64kb/index.xml</xsl:param>
<xsl:param name="href">/devices/pc/machine/5150/mda/64kb/machine.xml</xsl:param>
<xsl:param name="state" select="''"/>
<xsl:variable name="componentFile"><xsl:value-of select="$rootDir"/><xsl:value-of select="$href"/></xsl:variable>
<xsl:apply-templates select="document($componentFile)/machine">

View file

@ -4,18 +4,18 @@ function ga(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase(
function ma(a,b,c){var d=0,e=a.length,f=0;for(void 0===c&&(c=function(a,b){return a>b?1:a<b?-1:0});d<e;){var h=d+e>>1,g;g=c(b,a[h]);0<g?d=h+1:(e=h,f=!g)}return f?d:~d}function na(a,b,c){c=ma(a,b,c);0>c&&a.splice(-(c+1),0,b)}function oa(){return Date.now()||+new Date}function pa(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}
var qa=[31,28,31,30,31,30,31,31,30,31,30,31],ra;
function sa(a,b,c,d,e,f){b=!!b;var h=0,g=null,l=fa(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(g=n.responseText,200==n.status||!n.status&&g.length&&"file:"==(window?window.location.protocol:"file:")||(h=n.status||-1),e&&(d?e.call(d,l,g,h,f):e(l,g,h,f)))});if(c){var p="",r;for(r in c)c.hasOwnProperty(r)&&(p&&(p+="&"),p+=r+"="+encodeURIComponent(c[r]));p=p.replace(/%20/g,"+");n.open("POST",
a,b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded");n.send(p)}else n.open("GET",a,b),n.send();a=[];b||(g=n.responseText,200!=n.status&&(h=n.status||-1),e&&(d?e.call(d,l,g,h,f):e(l,g,h,f)),a=[h,g]);return a}function ta(){return"http://"+(window?window.location.host:"www.pcjs.org")}function x(a){window?window.alert(a):console.log(a)}function ua(a){var b=!1;window&&(b=window.confirm(a));return b}
a,b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded");n.send(p)}else n.open("GET",a,b),n.send();a=[];b||(g=n.responseText,200!=n.status&&(h=n.status||-1),e&&(d?e.call(d,l,g,h,f):e(l,g,h,f)),a=[h,g]);return a}function ta(){return"http://"+(window?window.location.host:"www.pcjs.org")}function x(a){window&&window.alert(a)}function ua(a){var b=!1;window&&(b=window.confirm(a));return b}
function va(){if(void 0===ra){var a;try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"===window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}ra=a}return ra}function wa(a){var b;try{b=window.localStorage.getItem(a)}catch(c){}return b}function xa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}
function ya(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function za(a,b,c){function d(){a-=1;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}
function Aa(a,b){function c(){b(100===d)&&(e=setTimeout(c,d),d=100)}var d=0,e=null,f=!1;a.onmousedown=function(){f||e||(d=500,c())};a.ontouchstart=function(){e||(d=500,c())};a.onmouseup=a.onmouseout=function(){e&&(clearTimeout(e),e=null)};a.ontouchend=a.ontouchcancel=function(){e&&(clearTimeout(e),e=null);f=!0}}var Ba={init:[],show:[],exit:[]},Ca=!1,Da=!0;function Ea(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Fa(a){Ba.init.push(a)}
function Ga(a){if(Da)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){x("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to Jeff@pcjs.org. Thanks.")}}function Ja(a){!Da&&a?(Da=!0,Ca&&Ka("init")):Da=a}function Ka(a){Ba[a]&&Ga(Ba[a])}Ea("onload",function(){Ca=!0;Ga(Ba.init)});Ea("onpageshow",function(){Ga(Ba.show)});Ea(ya("Opera")||ya("iOS")?"onunload":"onbeforeunload",function(){Ga(Ba.exit)});
function y(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.jk=b.comment;this.To=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.sh=this.id.substr(0,b),this.rh=this.id.substr(b+1)):this.rh=this.id;this[a]=c;this.pa={lh:!1,Lc:!1,ri:!1,Kb:!1,Yc:!1};this.zi=null;this.pa.Yc=!1;this.xa={};this.ca=null;this.sh&&this.sh.match(/\d+/);La[La.length]=this}var Oa=void 0,Pa={};
function y(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.jk=b.comment;this.To=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.sh=this.id.substr(0,b),this.rh=this.id.substr(b+1)):this.rh=this.id;this[a]=c;this.pa={lh:!1,Lc:!1,ri:!1,Kb:!1,Yc:!1};this.zi=null;this.pa.Yc=!1;this.ya={};this.ca=null;this.sh&&this.sh.match(/\d+/);La[La.length]=this}var Oa=void 0,Pa={};
if(window){Oa||(Oa=window.location.search.substr(1));for(var Qa,Ra=/\+/g,Sa=/([^&=]+)=?([^&]*)/g;Qa=Sa.exec(Oa);)Pa[decodeURIComponent(Qa[1].replace(Ra," "))]=decodeURIComponent(Qa[2].replace(Ra," "))}function Ta(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function A(a,b){b.prototype=Ta(a.prototype)}var La=[];
function Va(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<La.length;b++){var d=La[b];a&&d.id.indexOf(a)||c.push(d)}return c}function Wa(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<La.length;c++)if(La[c].id===a)return La[c]}return null}
function Xa(a,b){var c;if(void 0!==a){var d;b&&(b=0<(d=b.indexOf("."))?b.substr(0,d+1):"");for(d=0;d<La.length;d++)if(c)c==La[d]&&(c=null);else if(!(a!=La[d].type||b&&La[d].id.indexOf(b)))return La[d]}return null}function C(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){x(c.message+" ("+a+")")}return b}
function Ya(a,b){var c,d;d=D(b.parentNode,"pcjs-control");for(c=0;c<d.length;c++){var e,f;f=d[c].childNodes;for(e=0;e<f.length;e++){var h=f[e];if(h.nodeType===window.document.ELEMENT_NODE){var g=h.getAttribute("class");if(g){var l,n;n=g.split(" ");for(l=0;l<n.length;l++)switch(g=n[l],g){case "pcjs-input":case "pcjs-output":(n=C(h))&&n.binding&&a.zb(g,n.type,n.binding,h),n=[]}}}}}}
function D(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var e=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)e.test(a[b].className)&&c.push(a[b]);return c}
y.prototype={toString:function(){return this.name?this.name:this.id||this.type},zb:function(a,b,c,d){switch(c){case "clear":return this.xa[c]||(this.xa[c]=d,d.onclick=function(a){return function(){a.xa.print&&(a.xa.print.value="")}}(this)),!0;case "print":return this.xa[c]||(this.Vf=this.xa[c]=d,d.value="",this.ea=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),this.Ka=
y.prototype={toString:function(){return this.name?this.name:this.id||this.type},zb:function(a,b,c,d){switch(c){case "clear":return this.ya[c]||(this.ya[c]=d,d.onclick=function(a){return function(){a.ya.print&&(a.ya.print.value="")}}(this)),!0;case "print":return this.ya[c]||(this.Vf=this.ya[c]=d,d.value="",this.ea=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),this.Ka=
function(a,b,c){this.ea(a,"notice",c)}),!0;default:return!1}},log:function(){},ea:function(){},status:function(a){this.ea(this.rh+": "+a)},Ka:function(a,b){b||x(a)},Ta:function(a){this.pa.Yc||(this.pa.lh=!1!==a,this.pa.lh&&(this.name&&this.log("ready"),a=this.zi,this.zi=null,a&&a()))},Xb:function(){return this.pa.Kb=!0},Wb:function(a,b){b&&(this.pa.Kb=!1);return!0}};
function Za(a,b){if(a.pa.ri)return a.pa.Lc&&(a.pa.Lc=!1),a.pa.ri=!1;if(a.pa.Yc)return a.ea(a.toString()+" error"),!1;a.pa.Lc=b;return a.pa.Lc}function $a(a,b){a.pa.Lc&&(b?a.pa.ri=!0:void 0===b&&a.ea(a.toString()+" busy"));return a.pa.Lc}function ab(a,b){b&&(a.pa.lh?b():a.zi=b);return a.pa.lh}function bb(a,b){a.pa.Yc=!0;a.Ka("Fatal error: "+b)}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);function cb(a){y.call(this,"Panel",a,cb)}A(y,cb);
cb.prototype.zb=function(a,b,c,d){return this.Ha&&this.Ha.zb(a,b,c,d)||this.T&&this.T.zb(a,b,c,d)||this.fb&&this.fb.zb(a,b,c,d)||this.ca&&this.ca.zb(a,b,c,d)?!0:y.prototype.zb.call(this,a,b,c,d)};cb.prototype.oc=function(a,b,c,d){this.Ha=a;this.T=c;this.ca=d;this.fb=db(a,"Keyboard")};cb.prototype.Xb=function(a,b){b||eb();return!0};cb.prototype.Wb=function(){return!0};
@ -35,14 +35,14 @@ null:this.va},restore:function(a){return this.ha?null==a:a&&this.lm==a.length<<2
function Gb(a,b,c){a.Cc=b[2]&&!a.kh?b[2]:a.yf;a.am=b[3]&&!a.kh?b[3]:a.yf;c&&(a.Dg=b[2]?b[2]:a.yf,a.Rj=b[3]?b[3]:a.yf)}function Fb(a,b,c){a.rc=b[0]?b[0]:a.Ih;a.Ol=b[1]?b[1]:a.Ih;c&&(a.wg=b[0]?b[0]:a.Ih,a.Ij=b[1]?b[1]:a.Ih)}var Bb=[hb.prototype.Wo,hb.prototype.Yo,hb.prototype.fp,hb.prototype.hp],Hb=[hb.prototype.Vo,hb.prototype.Xo,hb.prototype.ep,hb.prototype.gp];
function Kb(a,b){y.call(this,"CPU",a,Kb);var c=a.cycles||b,d=a.multiplier||1;this.ba={};this.ba.Hd=c;this.ba.Gd=d;this.ba.vh=Math.round(this.ba.Hd/1E4)/100;this.ba.Ke=this.ba.vh*this.ba.Gd;this.pa.Kb=!1;this.pa.Lb=!1;this.pa.qi=a.autoStart;c=Pa.autostart;void 0!==c&&(this.pa.qi="true"==c?!0:"false"==c?!1:null);this.pa.ef=!1;this.ba.eg=this.ba.of=0;this.ba.gg=a.csStart;this.ba.nf=a.csInterval;this.ba.pf=a.csStop;var e=this;this.Wn=function(){e.Re()};this.Ta()}A(y,Kb);k=Kb.prototype;
k.oc=function(a,b,c,d){this.qa=b;this.ca=d;this.Ha=a;var e=db(a,"Video");e&&(this.li=function(){Lb(e)},this.Nd=function(){e.Nd()});this.na=db(a,"ChipSet");this.Ta()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.Xb=function(a,b){if(!b){if(a&&this.restore){Mb(this);if(!this.restore(a))return!1;Nb(this)}else this.reset();this.ca?this.ca.Cn():this.ea("No debugger detected")}this.pa.Kb=!0;!Pb(this)&&this.ca&&Qb(this.ca);Rb(this);return!0};
k.Wb=function(a){this.pa.Kb=!1;return a&&this.save?this.save():!0};function Pb(a){return!0===a.pa.qi||null===a.pa.qi&&!a.ca&&void 0===a.xa.run?(a.Re(),!0):!1}k.Nd=function(){};k.wk=function(){return 0};function Nb(a){void 0===a.ba.gg&&(a.ba.gg=0);void 0===a.ba.nf&&(a.ba.nf=-1);void 0===a.ba.pf&&(a.ba.pf=-1);a.pa.ef=0<=a.ba.gg&&0<a.ba.nf;a.pa.ef&&(a.ba.eg=0,a.ba.of=a.ba.gg-a.Oe)}
function Sb(a,b){if(a.pa.ef){var c=!1;a.ba.eg=a.ba.eg+a.wk()|0;a.ba.of-=b;0>=a.ba.of&&(a.ba.of+=a.ba.nf,c=!0);0<=a.ba.pf&&a.ba.pf<=F(a)&&(a.ba.nf=a.ba.pf=-1,Nb(a),a.wb(),c=!0);c&&a.ea(F(a)+" cycles: checksum="+q(a.ba.eg))}}function G(a,b,c,d){void 0!==a.xa[b]&&(void 0===d&&(d=4),void 0===c&&(bb(a,"Register "+b+" is invalid"),a.wb()),c=q(c,d),a.xa[b].innerHTML!=c&&(a.xa[b].innerHTML=c))}k.ah=function(){};k.li=function(){};
k.zb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.xa[c]=d;d.onclick=function(){e.pa.Lb?e.wb(!0):e.Re(!0)};a=!0;break;case "reset":this.xa[c]=d;d.onclick=function(){e.Ha&&Tb(e.Ha)};a=!0;break;case "speed":this.xa[c]=d;a=!0;break;case "setSpeed":this.xa[c]=d,d.onclick=function(){Ub(e,e.ba.Gd<<1,!0)},d.innerHTML=this.ba.Ke.toFixed(2)+"Mhz",a=!0}return a};function Vb(a,b,c){a.Oe+=b;c&&(a.Oc=a.A=0)}
k.Wb=function(a){this.pa.Kb=!1;return a&&this.save?this.save():!0};function Pb(a){return!0===a.pa.qi||null===a.pa.qi&&!a.ca&&void 0===a.ya.run?(a.Re(),!0):!1}k.Nd=function(){};k.wk=function(){return 0};function Nb(a){void 0===a.ba.gg&&(a.ba.gg=0);void 0===a.ba.nf&&(a.ba.nf=-1);void 0===a.ba.pf&&(a.ba.pf=-1);a.pa.ef=0<=a.ba.gg&&0<a.ba.nf;a.pa.ef&&(a.ba.eg=0,a.ba.of=a.ba.gg-a.Oe)}
function Sb(a,b){if(a.pa.ef){var c=!1;a.ba.eg=a.ba.eg+a.wk()|0;a.ba.of-=b;0>=a.ba.of&&(a.ba.of+=a.ba.nf,c=!0);0<=a.ba.pf&&a.ba.pf<=F(a)&&(a.ba.nf=a.ba.pf=-1,Nb(a),a.wb(),c=!0);c&&a.ea(F(a)+" cycles: checksum="+q(a.ba.eg))}}function G(a,b,c,d){void 0!==a.ya[b]&&(void 0===d&&(d=4),void 0===c&&(bb(a,"Register "+b+" is invalid"),a.wb()),c=q(c,d),a.ya[b].innerHTML!=c&&(a.ya[b].innerHTML=c))}k.ah=function(){};k.li=function(){};
k.zb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.ya[c]=d;d.onclick=function(){e.pa.Lb?e.wb(!0):e.Re(!0)};a=!0;break;case "reset":this.ya[c]=d;d.onclick=function(){e.Ha&&Tb(e.Ha)};a=!0;break;case "speed":this.ya[c]=d;a=!0;break;case "setSpeed":this.ya[c]=d,d.onclick=function(){Ub(e,e.ba.Gd<<1,!0)},d.innerHTML=this.ba.Ke.toFixed(2)+"Mhz",a=!0}return a};function Vb(a,b,c){a.Oe+=b;c&&(a.Oc=a.A=0)}
function Wb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.ba.Gd&&a.ba.ld&&(d=a.ba.ld/a.ba.vh);a.ba.Dk=Math.round(1E3/30);a.ba.Pn=Math.floor(a.ba.Hd/c*d);a.ba.Mi=Math.floor(a.ba.Hd/30*d);a.ba.Hk=Math.floor(a.ba.Hd/60*d);a.ba.Gk=Math.floor(a.ba.Hd/2*d);b||(a.ba.qf=a.ba.Mi,a.ba.ig=a.ba.Hk,a.ba.hg=a.ba.Gk);a.ba.Ni=0}function F(a,b){var c=a.Oe+a.oe+a.Oc-a.A;b&&1<a.ba.Gd&&a.ba.ld>a.ba.vh&&(c=Math.round(c/a.ba.Gd));return c}function Mb(a){a.ba.ld=0;a.yh=1;a.Oe=a.oe=a.Oc=a.A=0;Nb(a);Ub(a,1)}
function Ub(a,b,c){void 0!==b&&(0.8>a.ba.ld/a.ba.Ke&&(b=1),a.ba.Gd=b,b=a.ba.vh*a.ba.Gd,a.ba.Ke!=b&&(a.ba.Ke=b,b=a.ba.Ke.toFixed(2)+"Mhz",a.xa.setSpeed&&(a.xa.setSpeed.innerHTML=b),a.ea("target speed: "+b)),c&&a.Nd());Vb(a,a.oe);a.oe=0;a.ba.mf=oa();a.ba.Le=0;Wb(a)}
k.Re=function(a){if(Za(this,!0)){this.pa.Lb||(Ub(this),this.Ha&&this.Ha.start(this.ba.mf,F(this)),this.pa.Lb=!0,this.na&&Xb(this.na),this.xa.run&&(this.xa.run.innerHTML="Halt"),a&&this.Nd());this.ba.Ni>=this.ba.Hd&&Wb(this,!0);this.ba.jg=0;this.ba.wh=oa();this.ba.Le&&(a=this.ba.wh-this.ba.Le,a>this.ba.Dk&&(this.ba.mf+=a,this.ba.mf>this.ba.wh&&(this.ba.mf=this.ba.wh)));try{do{this.xf(this.pa.ef?1:Math.round(this.ba.Pn/this.yh));var b=this.Oc-this.A;this.oe+=b;this.ba.jg+=b;Vb(this,0,!0);Sb(this,b);
function Ub(a,b,c){void 0!==b&&(0.8>a.ba.ld/a.ba.Ke&&(b=1),a.ba.Gd=b,b=a.ba.vh*a.ba.Gd,a.ba.Ke!=b&&(a.ba.Ke=b,b=a.ba.Ke.toFixed(2)+"Mhz",a.ya.setSpeed&&(a.ya.setSpeed.innerHTML=b),a.ea("target speed: "+b)),c&&a.Nd());Vb(a,a.oe);a.oe=0;a.ba.mf=oa();a.ba.Le=0;Wb(a)}
k.Re=function(a){if(Za(this,!0)){this.pa.Lb||(Ub(this),this.Ha&&this.Ha.start(this.ba.mf,F(this)),this.pa.Lb=!0,this.na&&Xb(this.na),this.ya.run&&(this.ya.run.innerHTML="Halt"),a&&this.Nd());this.ba.Ni>=this.ba.Hd&&Wb(this,!0);this.ba.jg=0;this.ba.wh=oa();this.ba.Le&&(a=this.ba.wh-this.ba.Le,a>this.ba.Dk&&(this.ba.mf+=a,this.ba.mf>this.ba.wh&&(this.ba.mf=this.ba.wh)));try{do{this.xf(this.pa.ef?1:Math.round(this.ba.Pn/this.yh));var b=this.Oc-this.A;this.oe+=b;this.ba.jg+=b;Vb(this,0,!0);Sb(this,b);
this.ba.ig-=b;0>=this.ba.ig&&(this.ba.ig+=this.ba.Hk,this.li());this.ba.hg-=b;0>=this.ba.hg&&(this.ba.hg+=this.ba.Gk,this.ah());this.ba.qf-=b;if(0>=this.ba.qf){this.ba.qf+=this.ba.Mi;break}}while(this.pa.Lb)}catch(c){this.wb();Rb(this);this.Ha&&this.Ha.stop(oa(),F(this));Za(this,!1);bb(this,c.message);return}b=setTimeout;a=this.Wn;this.ba.Le=oa();var d=this.ba.Dk;this.ba.jg&&(d=Math.round(d*this.ba.jg/this.ba.Mi));var d=d-(this.ba.Le-this.ba.wh),e=this.ba.Le-this.ba.mf;e&&(this.ba.ld=Math.round(this.oe/
(10*e))/100,864E5<=e&&(this.Oe=0,this.na&&Yb(this.na,!0),Ub(this)));if(0>d||this.ba.ld<this.ba.Ke)d=0;this.ba.Ni+=this.ba.jg;this.ba.Le+=d;b(a,d)}else Rb(this),this.Ha&&this.Ha.stop(oa(),F(this))};k.wb=function(a){$a(this,!0);this.Oc-=this.A;this.A=0;Vb(this,this.oe);this.oe=0;this.pa.Lb&&(this.pa.Lb=!1,this.na&&Xb(this.na),this.xa.run&&(this.xa.run.innerHTML="Run"));this.pa.hh=a};k.xf=function(){return 0};function Rb(a){a.li();a.ah()}
(10*e))/100,864E5<=e&&(this.Oe=0,this.na&&Yb(this.na,!0),Ub(this)));if(0>d||this.ba.ld<this.ba.Ke)d=0;this.ba.Ni+=this.ba.jg;this.ba.Le+=d;b(a,d)}else Rb(this),this.Ha&&this.Ha.stop(oa(),F(this))};k.wb=function(a){$a(this,!0);this.Oc-=this.A;this.A=0;Vb(this,this.oe);this.oe=0;this.pa.Lb&&(this.pa.Lb=!1,this.na&&Xb(this.na),this.ya.run&&(this.ya.run.innerHTML="Run"));this.pa.hh=a};k.xf=function(){return 0};function Rb(a){a.li();a.ah()}
var Zb=[1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,
0,0,1,1,0,1,0,0,1];function $b(a,b,c){this.T=a;this.Xa=this.sa=0;this.Nc=65535;this.Oa=0;this.ok="CS"==b;this.Ag=b;this.zc=this.Jc=0;ac(this,c)}function bc(a){this.sa=a;this.Nc=65535;this.Jc=this.zc=0;return this.Xa=a<<4}
function cc(a){var b,c;a&4?(b=this.T.ad.Xa,c=this.T.ad.Nc):(b=this.T.xc,c=this.T.xe);b+=a&65528;if(b+7<=c){this.T.A-=15;c=this.T.ta(b+0);var d=this.T.ta(b+4);b=this.T.ta(b+2)|(d&255)<<16;var e;d&4096||(e=d&7936)&&768>=e?(this.sa=a,this.Xa=b,this.Nc=c,this.Oa=d&65280,this.type=d&7936,ac(this)):b=-1;return b}return-1}function dc(a){return this.Xa+a}function ec(a){return this.Xa+a}function fc(a,b,c){return a+b<=this.Nc?this.Xa+a:gc.call(this,0,0,c)}
@ -63,12 +63,12 @@ function fd(a,b){switch(b){case "CS":return a.wa;case "DS":return a.yb;case "SS"
function hd(a,b){a.Fa=a.wa.load(b)+a.ua;a.$|=a.Gg}function id(a,b){a.yb.load(b);a.$|=a.Gg}function jd(a,b){a.tb.load(b);a.$|=4}function kd(a,b){a.Za.load(b);a.$|=a.Gg}function K(a,b){a.Fa=a.wa.Xa+(a.ua=b&65535)}function Sc(a,b,c){a.Fa=a.wa.load(c)+(a.ua=b)}function ld(a,b){a.Fa=a.wa.Xa+(a.ua=a.ua+b&65535)}function md(a){return a.Z&a.fa?1:0}function nd(a){return Zb[a.la&255]?4:0}function od(a){return(a.la^a.oa)&16?16:0}function pd(a){return a.Z&a.fa-1?0:64}
function qd(a){return a.la&a.fa>>1?128:0}function rd(a){return(a.la^a.oa^a.la>>1)&a.fa>>1?2048:0}function sd(a){a.Z&=~a.fa}function td(a){a.oa=a.la&16|a.oa&-17}function ud(a){a.Z|=a.fa-1}function vd(a){qd(a)&&(a.la^=a.fa>>1|a.fa>>2,a.oa^=32896)}function wd(a){a.la&=~a.fa;a.oa=a.la&32896|a.oa&-32897}function xd(a){a.Z|=a.fa}function yd(a){a.oa=~(a.la&16)&16|a.oa&-17}function zd(a){a.Z&=~(a.fa-1)}function Ad(a){qd(a)||(a.la^=a.fa>>1|a.fa>>2,a.oa^=32896)}
function Bd(a){a.la|=a.fa;a.oa=a.la&32896|a.oa&-32897}function Vc(a){return a.Ba&-2262|md(a)|nd(a)|od(a)|pd(a)|qd(a)|rd(a)}function Tc(a,b){a.fa=256;a.Z=a.la=a.oa=0;b&1&&xd(a);b&4||(a.la|=1);b&16&&(a.oa|=16);b&64||ud(a);b&128&&Ad(a);b&2048&&Bd(a);a.wa.Jc?b=b&-12289|a.Ba&12288:(a.le=(b&12288)>>12,!a.le||a.Bc&1||(a.le=0));a.wa.Jc>a.le&&(b=b&-513|a.Ba&512);a.Ba=a.Ba&-1793|b&1792|a.Vj;a.Ba&256&&(a.mb|=2,a.$|=4)}
k.zb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.xa[c]=d;e=!0;break;default:e=Kb.prototype.zb.call(this,a,b,c,d)}return e};k.vb=function(a){return this.Ea[(a&this.ye)>>this.rb].rc(a&this.gb)};
k.zb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.ya[c]=d;e=!0;break;default:e=Kb.prototype.zb.call(this,a,b,c,d)}return e};k.vb=function(a){return this.Ea[(a&this.ye)>>this.rb].rc(a&this.gb)};
k.ta=function(a){var b=a&this.gb;a=(a&this.ye)>>this.rb;this.A-=this.B.Cj;return b!=this.gb?this.Ea[a].Ol(b):this.Ea[a++].rc(b)|this.Ea[a&this.Ce].rc(0)<<8};k.Md=function(a,b){this.Ea[(a&this.ye)>>this.rb].Cc(a&this.gb,b&255)};k.bd=function(a,b){var c=a&this.gb,d=(a&this.ye)>>this.rb;this.A-=this.B.Cj;c!=this.gb?this.Ea[d].am(c,b&65535):(this.Ea[d++].Cc(c,b&255),this.Ea[d&this.Ce].Cc(0,b>>8&255))};k.Am=function(a,b){this.Cg=a;this.ka=a.gd(this.ug=b,0);return this.$&1?0:this.vb(this.ka)};
k.Bm=function(a,b){this.Cg=a;this.ka=a.gd(this.ug=b,1);return this.$&1?0:this.ta(this.ka)};k.In=function(a,b){this.Cg=a;this.Ma=this.ka=a.gd(this.ug=b,0);return this.$&1?0:this.vb(this.ka)};k.Jn=function(a,b){this.Cg=a;this.Ma=this.ka=a.gd(this.ug=b,1);return this.$&1?0:this.ta(this.ka)};k.cp=function(a){this.$&2||this.Md(this.Cg.fc(this.ug,1),a)};k.dp=function(a){this.$&2||this.bd(this.Cg.fc(this.ug,2),a)};k.ga=function(){var a=this.vb(this.Fa);this.Fa=this.wa.Xa+(this.ua=this.ua+1&65535);return a};
k.M=function(){var a=this.vb(this.Fa)<<24>>24;this.Fa=this.wa.Xa+(this.ua=this.ua+1&65535);return a&65535};k.L=function(){var a=this.ta(this.Fa);this.Fa=this.wa.Xa+(this.ua=this.ua+2&65535);return a};k.La=function(){var a=this.Y;this.Y=this.Y+2&65535;return this.ta(this.tb.gd(a,1))};function L(a,b){var c=a.Y=a.Y-2&65535;a.bd(a.tb.fc(c,1),b)}
k.ah=function(){G(this,"AX",this.H);G(this,"BX",this.C);G(this,"CX",this.J);G(this,"DX",this.K);G(this,"SP",this.Y);G(this,"BP",this.I);G(this,"SI",this.G);G(this,"DI",this.F);G(this,"CS",this.wa.sa);G(this,"DS",this.yb.sa);G(this,"SS",this.tb.sa);G(this,"ES",this.Za.sa);G(this,"IP",this.ua);var a=Vc(this);G(this,"PS",a);G(this,"C",a&1?1:0,1);G(this,"P",a&4?1:0,1);G(this,"A",a&16?1:0,1);G(this,"Z",a&64?1:0,1);G(this,"S",a&128?1:0,1);G(this,"T",a&256?1:0,1);G(this,"I",a&512?1:0,1);G(this,"D",a&1024?
1:0,1);G(this,"O",a&2048?1:0,1);this.xa.speed&&(this.xa.speed.innerHTML=this.pa.Lb&&this.ba.ld?this.ba.ld.toFixed(2)+"Mhz":"Stopped")};
1:0,1);G(this,"O",a&2048?1:0,1);this.ya.speed&&(this.ya.speed.innerHTML=this.pa.Lb&&this.ba.ld?this.ba.ld.toFixed(2)+"Mhz":"Stopped")};
k.xf=function(a){this.pa.hh=!0;var b=this.pa.pk=a&&this.ca&&Cd(this.ca);this.Oc=this.A=a;this.na&&Yb(this.na);a||!this.ca||E(this.ca,Dd)||(this.$|=4);do{var c=this.$&240;if(c)this.Aa|=c;else if(this.Fh=this.Fa,this.ka=this.Ma=-1,this.D=this.yb,this.N=this.tb,this.Aa=this.$&256,this.mb){a:{if(!(this.$&4))if(this.mb&1&&this.Ba&512){if(c=Ed(this.na),-1<=c&&(this.mb&=-2,0<=c)){this.mb&=-5;Fd.call(this,c,null,11);c=!0;break a}}else if(this.mb&2){this.mb&=-3;Fd.call(this,1,null,11);c=!0;break a}if(c=this.mb&
8){for(var c=this.na,d=!1,e=0;e<c.cb;e++)for(var f=c.cb[e],h=0;h<f.Fb.length;h++){var g=f.Fb[h];g.Fd||(Gd(c,g),g.Fd||(d=!0))}c=!d}c&&(this.mb&=-9);c=!1}if(c&&!a){this.$=0;break}if(this.mb&4){this.$=this.A=0;break}}if(b&&Hd(this.ca,this.Fa)){this.wb();break}this.$=0;this.Va[this.ga()].call(this)}while(0<this.A);return this.pa.hh?this.Oc-this.A:void 0===this.pa.hh?0:-1};k.Ra=function(a){this.ca&&E(this.ca,Id)&&this.ca.message(a)};
Fa(function(){for(var a=D(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new oc(d);Ya(d,c)}});function Ld(a,b){this.oa=a^b;this.fa=256;this.A-=0>this.Ma?0>this.ka?this.B.Tb:this.B.sb:this.B.gc;return(this.Z=this.la=a+b)&255}function Md(a,b){this.fa=256;this.A-=0>this.Ma?0>this.ka?this.B.Tb:this.B.sb:this.B.gc;return(this.Z=this.la=this.oa=a|b)&255}
@ -429,7 +429,7 @@ this.K,this.H&255,this.Fa-1);this.A-=this.B.lj},function(){zb(this.qa,this.K,thi
function(){this.Eb=-1;zh[this.ga()].call(this,Ce,se);0<=this.Eb&&(this.H=this.Eb,this.K=this.xg)},function(){this.Z&=~this.fa;this.A-=2},function(){this.Z|=this.fa;this.A-=2},function(){this.Ba&=-513;this.A-=this.B.Mk},function(){this.Ba|=512;this.$|=4;this.A-=2},function(){this.Ba&=-1025;this.A-=2},function(){this.Ba|=1024;this.A-=2},function(){yh[this.ga()].call(this,Kc,se)},function(){zh[this.ga()].call(this,Nc,se)}];
function P(a){y.call(this,"ChipSet",a,P);this.Ia=a.model;this.Ia=void 0!==this.Ia?parseInt(this.Ia,10):Zh;this.Yb=0;var b=a.sw1;if(b)this.Yb=$h(b,ai|bi.gm);else{this.Td=[360,360];(b=a.floppies)&&void 0!==b.length&&(this.Td=b);if(b=this.Td.length)this.Yb|=ci.Sh,b--,this.Yb|=(b&3)<<ci.Df;if(b=a.monitor||(this.Ia<di?"mono":"ega"),void 0!==ei[b])this.Yb|=ei[b]<<bi.Df}this.te=$h(a.sw2||"11110000",0);this.Hn=this.Ia==Zh?16:64;this.Qf=this.Rf=1;this.Ia>=di&&(this.Qf=this.Rf=2);this.mh=a.scaleTimers||!1;
this.bp=a.rtcDate;this.uk=!1;a.sound&&window&&"webkitAudioContext"in window&&(this.ii=new webkitAudioContext);this.reset(!0);this.Ta()}A(y,P);var Zh=5150,di=5170,ei={none:0,tv:1,color:2,mono:3,ega:0},ci={Sh:1,ONE:0,Fp:64,Dp:128,np:192,Cf:192,Df:6},ai=12,bi={Ep:16,ip:32,gm:48,Cf:48,Df:4};k=P.prototype;
k.zb=function(a,b,c,d){switch(c){case "sw1":return this.xa[c]=d,fi(this,c,d,this.Yb,{0:this.Ia==Zh?"Bootable Floppy Drive":"Loop on POST",1:this.Ia==Zh?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ia==Zh)return this.xa[c]=d,fi(this,c,d,this.te,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.xa[c]=d,!0}return!1};
k.zb=function(a,b,c,d){switch(c){case "sw1":return this.ya[c]=d,fi(this,c,d,this.Yb,{0:this.Ia==Zh?"Bootable Floppy Drive":"Loop on POST",1:this.Ia==Zh?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ia==Zh)return this.ya[c]=d,fi(this,c,d,this.te,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.ya[c]=d,!0}return!1};
k.oc=function(a,b,c,d){this.qa=b;this.T=c;this.ca=d;this.Ha=a;this.fb=db(a,"Keyboard");this.Jl=Math.round(c.ba.Hd/1193181);sb(b,this,gi);yb(b,this,hi);this.Ia<di?(sb(b,this,ii),yb(b,this,ji)):(sb(b,this,ki),yb(b,this,li));if(d){var e=this;mi(d,Dd,function(){for(var a=0;a<e.ub.length;a++){for(var b=e.ub[a],c="PIC"+a+":",d=0;d<b.pd.length;d++)c+=" IC"+(d+1)+"="+t(b.pd[d]);c+=" IMR="+t(b.vd)+" IRR="+t(b.Hb)+" ISR="+t(b.Fc);e.ca.message(c)}});mi(d,ni,function(){for(var a=0;a<e.Gb.length;a++){oi(e,a);
var b=e.Gb[a],c="TIMER"+a+":",d=0;if(void 0!==b.hd)for(var n=0;n<=b.hd;n++)d|=b.Zb[n]<<8*n;c+=" MODE"+b.mode+" BYTES="+b.hd+" COUNT="+v(d);e.ca.message(c)}});mi(d,pi,function(){for(var a="",b=0;64>b;b++){var c=13>=b?qi(e,b):e.ra[b];a&&(a+="\n");a+="CMOS[0x"+t(b)+"]: 0x"+t(c)}e.ca.message(a)})}Wc(c,26,this,this.En)};k.Xb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Wb=function(a){return a&&this.save?this.save():!0};
k.reset=function(a){var b;this.cd=this.Yb;this.We=this.te;ri(this);this.cb=Array(this.Qf);for(b=0;b<this.Qf;b++)si(this,b);this.ub=Array(this.Rf);ti(this,0,32);1<this.Rf&&ti(this,1,160);this.fi=void 0;this.Gb=Array(3);for(b=0;b<this.Gb.length;b++)ui(this,b);this.Pf=this.di=this.yc=this.Tg=void 0;this.Sg=0;if(this.Ia>=di){this.jb=16;this.ud=0;this.Zd=16;this.Og=0;this.ze=160;512<=vi(this)&&(this.ze|=16);3==wi(this)&&(this.ze|=64);this.bi=3;this.Nf=0;this.Kg=Array(7);this.Ae=0;a&&(this.ra=Array(64));
@ -444,7 +444,7 @@ function Bi(a,b,c,d){"string"==typeof b&&(b=Wa(b));b&&(a.bh=null,a.Zo=b.id,a.$o=
function ui(a,b,c){a=a.Gb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.Ic=c[0];a.Xc=c[1];a.Zb=c[2];a.Wf=c[3];a.ek=c[4];a.mode=c[5];a.yg=c[6];a.fe=c[7];a.hd=c[8];a.kd=c[9];a.Zf=c[10];a.ff=c[11];a.qe=c[12]}function vi(a,b){return((((b?a.Yb:a.cd)&12)>>2)+1)*a.Hn+32*((b?a.te:a.We)&15)}function Ci(a,b){var c=b?a.Yb:a.cd;return a.Ia!=Zh||c&ci.Sh?((c&ci.Cf)>>ci.Df)+1:0}
function yi(a,b){if(b<Ci(a)){if(!a.Td)return 1;if(b<a.Td.length)switch(a.Td[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function wi(a,b){return((b?a.Yb:a.cd)&bi.Cf)>>bi.Df}
function fi(a,b,c,d,e){for(var f="",h=1;8>=h;h++){var g="pcjs-bitCell";h||(g+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+h)+'" class="'+g+'" data-value="0">'+h+"</div>\n"}c.innerHTML=f;b=D(c,"pcjs-bitCell");c=null;for(h=0;h<b.length;h++)void 0!==e&&void 0!==e[h]&&(c=e[h]),c&&b[h].setAttribute("title",c),Di(b[h],d&1<<h?!1:!0),b[h].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");Di(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Yb=
a.Yb&~e|(c?0:e);break;case "sw2":a.te=a.te&~e|(c?0:e)}ri(a)}}(a,b[h])}function Di(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function ri(a){var b=a.xa.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(void 0!==b){var d;d=""+(vi(a,!0)+"Kb");d+=", "+c[wi(a,!0)]+" Monitor";d+=", "+Ci(a,!0)+" Floppy Drives";if(void 0!==a.cd&&a.cd!=a.Yb||void 0!==a.We&&a.We!=a.te)d+=" (Reset required)";b.innerHTML=d}}
a.Yb&~e|(c?0:e);break;case "sw2":a.te=a.te&~e|(c?0:e)}ri(a)}}(a,b[h])}function Di(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function ri(a){var b=a.ya.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(void 0!==b){var d;d=""+(vi(a,!0)+"Kb");d+=", "+c[wi(a,!0)]+" Monitor";d+=", "+Ci(a,!0)+" Floppy Drives";if(void 0!==a.cd&&a.cd!=a.Yb||void 0!==a.We&&a.We!=a.te)d+=" (Reset required)";b.innerHTML=d}}
function Ei(a,b,c,d,e){var f=a.cb[b],h=f.Fb[c].Ob[f.qb];f.qb^=1;a.da(d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.qb+"]",Q,h);return h}function Fi(a,b,c,d,e,f){var h=a.cb[b];a.da(d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+h.qb+"]",Q);a=h.Fb[c];a.Ob[h.qb]=a.Yj[h.qb]=e;h.qb^=1}function Gi(a,b,c,d,e){var f=a.cb[b],h=f.Fb[c].Zb[f.qb];f.qb^=1;a.da(d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.qb+"]",Q,h);return h}
function Hi(a,b,c,d,e,f){var h=a.cb[b];a.da(d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+h.qb+"]",Q);a=h.Fb[c];a.Zb[h.qb]=a.Ic[h.qb]=e;h.qb^=1}function Ii(a,b,c,d){var e=a.cb[b],f=e.ce|1;e.ce&=-16;a.da(c,null,d,"DMA"+b+".STATUS",Q,f);return f}function Ji(a,b,c,d,e){var f=a.cb[b];a.da(c,d,e,"DMA"+b+".REQ",Q);a=d&3;f.ce=f.ce&~(16<<a)|(d&4)<<a+2;f.ck=d}function Ki(a,b,c,d,e){var f=a.cb[b];a.da(c,d,e,"DMA"+b+".MASK",Q);b=d&3;c=f.Fb[b];c.Fd=d&4?!0:!1;c.Fd||Li(a,f.Nn+b)}
function Mi(a,b,c,d,e){a.da(c,d,e,"DMA"+b+".CLEAR",Q);a=a.cb[b];for(b=0;b<a.Fb.length;b++)Ai(a,b)}function Ni(a,b,c,d,e){var f=a.cb[b].Fb[c].Ug;a.da(d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",Q,f);return f}function Oi(a,b,c,d,e,f){a.da(d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",Q);a.cb[b].Fb[c].Ug=e}function Pi(a,b,c,d){var e=a.Kg[b];a.da(c,null,d,"DMA.SPARE"+b+".PAGE",Q,e);return e}function Qi(a,b,c,d,e){a.da(c,d,e,"DMA.SPARE"+b+".PAGE",Q);a.Kg[b]=d}function Ri(a,b,c,d,e){Bi(a.cb[b>>2].Fb[b&3],c,d,e)}
@ -489,11 +489,11 @@ var zj={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,backspace:
S[55]=8;S[38]=61448;S[56]=9;S[42]=61449;S[57]=10;S[40]=61450;S[48]=11;S[41]=61451;S[45]=12;S[95]=61452;S[61]=13;S[43]=61453;S[113]=16;S[81]=61456;S[119]=17;S[87]=61457;S[101]=18;S[69]=61458;S[114]=19;S[82]=61459;S[116]=20;S[84]=61460;S[121]=21;S[89]=61461;S[117]=22;S[85]=61462;S[105]=23;S[73]=61463;S[111]=24;S[79]=61464;S[112]=25;S[80]=61465;S[91]=26;S[123]=61466;S[93]=27;S[125]=61467;S[97]=30;S[65]=61470;S[115]=31;S[83]=61471;S[100]=32;S[68]=61472;S[102]=33;S[70]=61473;S[103]=34;S[71]=61474;
S[104]=35;S[72]=61475;S[106]=36;S[74]=61476;S[107]=37;S[75]=61477;S[108]=38;S[76]=61478;S[59]=39;S[58]=61479;S[39]=40;S[34]=61480;S[96]=41;S[126]=61481;S[92]=43;S[124]=61483;S[122]=44;S[90]=61484;S[120]=45;S[88]=61485;S[99]=46;S[67]=61486;S[118]=47;S[86]=61487;S[98]=48;S[66]=61488;S[110]=49;S[78]=61489;S[109]=50;S[77]=61490;S[44]=51;S[60]=61491;S[46]=52;S[62]=61492;S[47]=53;S[63]=61493;S[8]=14;S[9]=15;S[13]=28;S[27]=1;S[240]=42;S[224]=54;S[241]=29;S[242]=56;S[244]=58;S[336]=59;S[337]=60;S[338]=61;
S[339]=62;S[340]=63;S[341]=64;S[342]=65;S[343]=66;S[344]=67;S[345]=68;S[261]=75;S[262]=72;S[263]=77;S[264]=80;S[254]=61766;S[255]=15921491;k=yj.prototype;
k.zb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.xa[a])switch(c){case "kbd":return this.xa[a]=d,d.onkeydown=function(a){return Bj(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.Ja&32?e.Ja&=-33:b=e.Ja&12?!1:!Cj(e,a);return b},d.onkeyup=function(a){return Bj(e,a,!1)},!0;default:if(void 0!==Aj[c]&&"button"==b)return this.xa[a]=d,d.onclick=function(a,b,c){return function(){a.T&&a.T.Nd();return!Cj(a,c)}}(this,c,Aj[c]),!0;if(void 0!==zj[c])return this.xa[a]=
k.zb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.ya[a])switch(c){case "kbd":return this.ya[a]=d,d.onkeydown=function(a){return Bj(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.Ja&32?e.Ja&=-33:b=e.Ja&12?!1:!Cj(e,a);return b},d.onkeyup=function(a){return Bj(e,a,!1)},!0;default:if(void 0!==Aj[c]&&"button"==b)return this.ya[a]=d,d.onclick=function(a,b,c){return function(){a.T&&a.T.Nd();return!Cj(a,c)}}(this,c,Aj[c]),!0;if(void 0!==zj[c])return this.ya[a]=
d,b=function(a,b,c){return function(){Dj(a,c)}}(this,c,zj[c]),c=function(a,b,c){return function(){Dj(a,c)}}(this,c,zj[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};k.oc=function(a,b,c,d){this.qa=b;this.T=c;this.ca=d;this.Ha=a;this.na=db(a,"ChipSet")};k.Ta=function(){this.sk=(this.Fm=ya("iOS"))||ya("Android");this.Ra("mobile keyboard support: "+(this.sk?"true":"false"));return y.prototype.Ta.call(this)};
function lj(a){a.Ra("keyboard reset",!0);a.wc=[170];a.na&&Yi(a.na,1,4)}function gj(a,b,c){var d=!1;a.ti!==c&&(a.ti=a.xi=c);a.ih!==b&&(a.ih=b)&&!a.xi&&nj(a);a.ih&&a.xi&&(lj(a),a.xi=!1,d=!0);return d}function dj(a,b){var c=0;a.wc.length&&(c=a.wc[0],a.Ra("scan code "+t(c)+" delivered"),b&&nj(a));return c}function nj(a,b){0<a.wc.length&&(b?a.wc=[]:(a.wc.shift(),0<a.wc.length&&a.na&&Yi(a.na,1)))}k.Xb=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};
k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ke();this.Ja=0;this.wc=[];if(this.qd)for(var a in this.qd)ba(a)||this.qd[a]&&clearTimeout(this.qd[a]);this.qd=[];this.Nl=this.Qe=0};k.save=function(){var a=new I(this);a.set(0,this.Pj());return a.data()};k.restore=function(a){return this.ke(a[0])};k.ke=function(a){var b=0;void 0===a&&(a=[]);this.ti=a[b++];this.ih=a[b];return!0};k.Pj=function(){var a=0,b=[];b[a++]=this.ti;b[a]=this.ih;return b};
function Dj(a,b){var c=b&127,d=c==b;if(a.wc)if(20>a.wc.length){if(!(!d&&!a.Wh[c]||d&&a.Wh[c])){a.Wh[c]=d;a.Ra("scan code "+t(b)+" buffered");a.wc.push(b);1==a.wc.length&&a.na&&Yi(a.na,1);for(var e in zj)if(zj[e]==c){(c=a.xa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.wc.length&&a.wc.push(255),a.Ra("scan code buffer overflow")}function Ej(a,b){var c=b?a.Ln:a.Kn;a.T&&a.T.ba.ld&&(c/=a.T.ba.ld);return c}
function Dj(a,b){var c=b&127,d=c==b;if(a.wc)if(20>a.wc.length){if(!(!d&&!a.Wh[c]||d&&a.Wh[c])){a.Wh[c]=d;a.Ra("scan code "+t(b)+" buffered");a.wc.push(b);1==a.wc.length&&a.na&&Yi(a.na,1);for(var e in zj)if(zj[e]==c){(c=a.ya["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.wc.length&&a.wc.push(255),a.Ra("scan code buffer overflow")}function Ej(a,b){var c=b?a.Ln:a.Kn;a.T&&a.T.ba.ld&&(c/=a.T.ba.ld);return c}
function Fj(a,b){!a.Qe||void 0!==b&&b==a.Qe||(clearTimeout(a.qd[a.Qe]),Gj(a,a.Qe,!1))}
function Bj(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Nl=f);240==f+224?(a.Ja&=-2,c&&(a.Ja|=1),f+=224,e=!1):241==f+224?(a.Ja&=-5,c&&(a.Ja|=4),f+=224,e=!1):242==f+224?(a.Ja&=-9,c&&(a.Ja|=8),f+=224,e=!1):244==f+224?(a.Ja&=-17,c&&(a.Ja|=16),f+=224,d=Cj(a,f)):91==f?(a.Ja&=-33,c&&(a.Ja|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.Ja&12)&&(f=254),d=c?!Cj(a,f):!1):void 0!==S[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.Ja&=-33,a.sk||f!=a.Nl||Fj(a));void 0===d&&(d=!Gj(a,f,c));return d}
function Cj(a,b,c){var d=!1;Fj(a,b);Gj(a,b,!0)&&(c?Gj(a,b,!1):(c=!1,a.qd[b]&&(clearTimeout(a.qd[b]),c=!0),c=Ej(a,c),a.qd[a.Qe=b]=setTimeout(function(a){return function(){Gj(a,b,!1)}}(a),c)),d=!0);return d}
@ -521,7 +521,7 @@ a.xh;c[16]=a.Bj;c[17]=a.hb;c[18]=a.md;c[19]=a.nb;c[20]=a.Dh;c[21]=a.pe;c[22]=a.N
Tj.prototype.Oh=function(a){if(null!=a&&a!=this.xh){var b=a&255,c=ek[b];c||b&1&&(c=ek[1]);var b=a&65280,d=ek[b];d||b&256&&(d=ek[256]);this.Kf||(this.Kf=[null,ck,null,dk]);this.Kf[0]=c;this.Kf[2]=d;this.xh=a}};var Uj=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];k=T.prototype;
k.oc=function(a,b,c,d){this.qa=b;this.T=c;this.ca=d;sb(b,this,nk);yb(b,this,ok);"ega"==this.Ia&&(sb(b,this,pk),yb(b,this,qk));if(d){var e=this;Wc(this.T,16,this,this.Fn);mi(d,rk,function(a){if(e.Ga)if(a){var b=e.Ga;if(b.ed){a=ca(a);a=void 0!==a?a-b.Ua:b.Uo||0;0>a&&(a=0);for(var c="",d=0;8>d;d++){for(var n=q(b.Ua+a)+":",p=0;8>p&&a<b.ed.length;p++)var r=b.ed[a++],n=n+(" "+q(r));c&&(c+="\n");c+=n}c&&b.ca.message(c);b.Uo=a}else b.ca.message("no buffer")}else{e.ca.message("BIOSMODE: "+t(e.Jd));b=e.Ga;
mk(b,"CRTC",b.nc,b.cc,b.Ng);if(1==b.je||3==b.je)mk(b," MODEREG",b.Ac),mk(b," STATUS1",b.wf);3==b.je&&mk(b," COLOR",b.bf);5==b.je&&(b.ca.message(" ATCDATA: "+b.jd),mk(b," ATC",b.Bd,b.Rd,b.Zh),mk(b," GRC",b.Cd,b.we,b.$h),mk(b," SEQ",b.Dd,b.Ff,b.ai),mk(b," FEAT",b.oh),mk(b," MISC",b.cg),mk(b," STATUS0",b.Rh),mk(b," LATCHES",b.xb),b.ca.message(" ACCESS: "+v(b.xh)),b.ca.message("Use 'dump video buffer' to dump video memory"))}else e.ca.message("no active video card")})}(this.fb=db(a,"Keyboard"))&&
this.Ib&&this.fb.zb("input",this.$l?"textarea":"canvas","kbd",this.$l||this.Ib);this.Pg=9;(this.na=db(a,"ChipSet"))&&this.Vl&&(this.Pg=$h(this.Vl,this.Pg));this.fb&&this.ym&&sk(this)};k.Fn=function(a){this.ca&&E(this.ca,rk|Yc)&&(Zc(this.ca,16,a),$c(this.T,a,function(a,c){return function(d){ad(a.ca,16,d,F(a.T)-c)}}(this,F(this.T))));return!0};k.zb=function(a,b,c,d){var e=this;switch(c){case "refresh":return this.xa[c]=d,d.onclick=function(){Lb(e,!0)},!0}return!1};k.Nd=function(){this.Ib&&this.Ib.focus()};
this.Ib&&this.fb.zb("input",this.$l?"textarea":"canvas","kbd",this.$l||this.Ib);this.Pg=9;(this.na=db(a,"ChipSet"))&&this.Vl&&(this.Pg=$h(this.Vl,this.Pg));this.fb&&this.ym&&sk(this)};k.Fn=function(a){this.ca&&E(this.ca,rk|Yc)&&(Zc(this.ca,16,a),$c(this.T,a,function(a,c){return function(d){ad(a.ca,16,d,F(a.T)-c)}}(this,F(this.T))));return!0};k.zb=function(a,b,c,d){var e=this;switch(c){case "refresh":return this.ya[c]=d,d.onclick=function(){Lb(e,!0)},!0}return!1};k.Nd=function(){this.Ib&&this.Ib.focus()};
function sk(a){var b=a.Ib;b&&!a.si&&(b.addEventListener("touchstart",function(b){tk(a,b)},!1),b.addEventListener("touchmove",function(b){tk(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.si=!0)}
function tk(a,b){a.ui&&b.preventDefault();var c=0,d=0,e=a.Ib;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.xd/a.Ib.offsetWidth*(b.targetTouches[0].pageX-c)/(a.xd/3)|0;d=a.he/a.Ib.offsetHeight*(b.targetTouches[0].pageY-d)/(a.he/3)|0;1!=d?d?Cj(a.fb,264,!0):Cj(a.fb,262,!0):1!=c&&(c?Cj(a.fb,263,!0):Cj(a.fb,261,!0))}k.Xb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};
k.Wb=function(a){return a&&this.save?this.save():!0};
@ -559,8 +559,8 @@ var nk={948:T.prototype.ln,949:T.prototype.kn,952:T.prototype.mn,954:T.prototype
960:T.prototype.Ll,961:T.prototype.Ll,962:T.prototype.Fo,964:T.prototype.Mo,965:T.prototype.Lo,970:T.prototype.xo,972:T.prototype.wo,974:T.prototype.vo,975:T.prototype.uo,986:T.prototype.Ml};
Fa(function(){for(var a=D(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=C(c),e=window.document.createElement("canvas");if(void 0===e){c.innerHTML="<br/>Missing &lt;canvas&gt; support; try a new web browser.";break}e.setAttribute("class","pcjs-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=c.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 f=e.getContext("2d"),d=new T(d,e,f);Ya(d,c)}});
function Nk(a){this.yk=a.adapter;switch(this.yk){case 1:this.Hj=1016;this.ng=4;break;case 2:this.Hj=760;this.ng=3;break;default:x("Unrecognized serial adapter #"+this.yk);return}this.ee=null;y.call(this,"SerialPort",a,Nk);var b=a.binding,c;a=Ok;b&&(void 0===c&&(c="Panel"),(c=Xa(c,this.id))&&(b=c.xa[b])&&this.zb(null,null,a,b))}A(y,Nk);var Ok="buffer";k=Nk.prototype;k.$j=function(a,b){return a==this.rh?(this.Ck=b,this):null};
k.zb=function(a,b,c,d){var e=this;switch(c){case Ok:return this.xa[c]=this.ee=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),Pk(e,[b]))},d.onkeypress=function(a){a=a||window.event;Pk(e,[a.which||a.keyCode])},!0}return!1};k.oc=function(a,b,c,d){this.qa=b;this.T=c;this.ca=d;this.na=db(a,"ChipSet");sb(b,this,Qk,this.Hj);yb(b,this,Rk,this.Hj);this.Ta()};
function Nk(a){this.yk=a.adapter;switch(this.yk){case 1:this.Hj=1016;this.ng=4;break;case 2:this.Hj=760;this.ng=3;break;default:x("Unrecognized serial adapter #"+this.yk);return}this.ee=null;y.call(this,"SerialPort",a,Nk);var b=a.binding,c;a=Ok;b&&(void 0===c&&(c="Panel"),(c=Xa(c,this.id))&&(b=c.ya[b])&&this.zb(null,null,a,b))}A(y,Nk);var Ok="buffer";k=Nk.prototype;k.$j=function(a,b){return a==this.rh?(this.Ck=b,this):null};
k.zb=function(a,b,c,d){var e=this;switch(c){case Ok:return this.ya[c]=this.ee=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),Pk(e,[b]))},d.onkeypress=function(a){a=a||window.event;Pk(e,[a.which||a.keyCode])},!0}return!1};k.oc=function(a,b,c,d){this.qa=b;this.T=c;this.ca=d;this.na=db(a,"ChipSet");sb(b,this,Qk,this.Hj);yb(b,this,Rk,this.Hj);this.Ta()};
k.Xb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ke()};k.save=function(){var a=new I(this),b=0,c=[];c[b++]=this.ei;c[b++]=this.dk;c[b++]=this.Xe;c[b++]=this.Qg;c[b++]=this.ae;c[b++]=this.Tc;c[b++]=this.fd;c[b++]=this.Gc;c[b++]=this.bk;c[b]=this.Hf;a.set(0,c);return a.data()};k.restore=function(a){return this.ke(a[0])};
k.ke=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.ei=a[b++];this.dk=a[b++];this.Xe=a[b++];this.Qg=a[b++];this.ae=a[b++];this.Tc=a[b++];this.fd=a[b++];this.Gc=a[b++];this.bk=a[b++];this.Hf=a[b];return!0};function Pk(a,b){a.Hf=a.Hf.concat(b);Sk(a)}function Sk(a){0<a.Hf.length&&!(a.Gc&1)&&(a.ei=a.Hf.shift(),a.Gc|=1);var b=-1;a.Gc&1&&a.Qg&1&&(b=4);0<=b?(a.ae&=-8,a.ae|=b,a.na&&a.ng&&Yi(a.na,a.ng)):(a.ae|=1,a.na&&a.ng&&Zi(a.na,a.ng))}
k.un=function(a,b){var c=this.Tc&128?this.Xe&255:this.ei;this.da(a,null,b,this.Tc&128?"DLL":"RBR",c);this.Gc&=-2;Sk(this);return c};k.en=function(a,b){var c=this.Tc&128?this.Xe>>8:this.Qg;this.da(a,null,b,this.Tc&128?"DLM":"IER",c);return c};k.fn=function(a,b){var c=this.ae;this.da(a,null,b,"IIR",c);return c};k.gn=function(a,b){var c=this.Tc;this.da(a,null,b,"LCR",c);return c};k.jn=function(a,b){var c=this.fd;this.da(a,null,b,"MCR",c);return c};
@ -594,29 +594,29 @@ k.restore=function(a){var b=0,c="unsupported restore format";if(this.pb.length&&
h[f++];f=h[f++];h=e+f.length;if(g=this.pb[g][l][n]){for(l=g.data.length;l<e;)g.data[l++]=g.pattern;l=0;g.Zc=e;for(g.Hc=f.length;e<h;)g.data[e++]=f[l++];b++}}}0>b&&this.ha.Ka("unable to restore disk '"+this.Ld+": "+c);return b};k.Ra=function(a){this.ca&&E(this.ca,jl)&&this.ca.message(a)};
function kl(a){y.call(this,"FDC",a,kl);this.dmaRead=this.mi;this.dmaWrite=this.ni;this.dmaFormat=this.nm;this.Pe=null;if(a.autoMount&&(this.Pe=a.autoMount,"string"==typeof this.Pe))try{this.Pe=eval("("+a.autoMount+")")}catch(b){x("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Pe=null}this.tc=[]}A(y,kl);m={};aa={};
var ll={3:{wd:3,de:0,name:aa.yp},4:{wd:2,de:1,name:aa.wp},5:{wd:9,de:7,name:aa.Gp},6:{wd:9,de:7,name:aa.rp},7:{wd:2,de:0,name:aa.tp},8:{wd:1,de:2,name:aa.xp},10:{wd:2,de:7,name:aa.sp},13:{wd:6,de:7,name:aa.mp},15:{wd:3,de:0,name:aa.vp}};k=kl.prototype;
k.zb=function(a,b,c,d){switch(c){case "listDisks":return this.xa[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.xa.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var l={};if(d=d.getAttribute("data-value"))try{l=eval("({"+d+"})")}catch(n){x("FDC option error: "+(n.message||n))}d=l.desc;void 0===d&&(d="");l=l.href;void 0!==l&&(d='<a href="'+l+'" target="_blank">'+d+"</a>");c.innerHTML=
d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.xa[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||ml(a,c)}}(this,d),!0;case "loadDrive":return this.xa[c]=d,d.onclick=function(a){return function(){var b,c=a.xa.listDisks,d=a.xa.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&b<a.Da.length)if(d=c.value){c=c.options[c.selectedIndex].text;if("?"==d){d=window.prompt("Enter the URL of a disk image to load.","");if(!d)return;c=fa(d);a.ea("Attempting to load "+
k.zb=function(a,b,c,d){switch(c){case "listDisks":return this.ya[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.ya.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var l={};if(d=d.getAttribute("data-value"))try{l=eval("({"+d+"})")}catch(n){x("FDC option error: "+(n.message||n))}d=l.desc;void 0===d&&(d="");l=l.href;void 0!==l&&(d='<a href="'+l+'" target="_blank">'+d+"</a>");c.innerHTML=
d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.ya[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||ml(a,c)}}(this,d),!0;case "loadDrive":return this.ya[c]=d,d.onclick=function(a){return function(){var b,c=a.ya.listDisks,d=a.ya.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&b<a.Da.length)if(d=c.value){c=c.options[c.selectedIndex].text;if("?"==d){d=window.prompt("Enter the URL of a disk image to load.","");if(!d)return;c=fa(d);a.ea("Attempting to load "+
d+' as "'+c+'"')}for(;nl(a,b,c,d,!1)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var l=a,n=d,p=void 0,p=0;p<l.tc.length;p++)if(l.tc[p][1]==n){l.tc.splice(p,1);break}ol(a,b,!1,!0)}}else ol(a,b);else a.Ka("Nothing to load")}}(this),!0}return!1};k.oc=function(a,b,c,d){this.qa=b;this.T=c;this.ca=d;this.Ha=a;this.na=db(a,"ChipSet");this.Ed();sb(b,this,pl);yb(b,this,ql);Wc(c,19,this,this.Gi);this.Lf()||this.Ta()};
k.Xb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Ha.wi){this.tc=[];for(var c=0;c<this.Da.length;c++)ol(this,c,!0);this.Lf(!0)}}else if(!this.restore(a))return!1;if(c=this.xa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.innerHTML="";for(var d=0;d<this.Pi;d++){var e=window.document.createElement("option");e.value=d;e.innerHTML=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.Pi&&(c.value="0",ml(this,0))}}return!0};
k.Xb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Ha.wi){this.tc=[];for(var c=0;c<this.Da.length;c++)ol(this,c,!0);this.Lf(!0)}}else if(!this.restore(a))return!1;if(c=this.ya.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.innerHTML="";for(var d=0;d<this.Pi;d++){var e=window.document.createElement("option");e.value=d;e.innerHTML=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.Pi&&(c.value="0",ml(this,0))}}return!0};
k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Ed()};k.save=function(){var a=new I(this);a.set(0,this.Mj());return a.data()};k.restore=function(a){return this.Ed(a[0])};
k.Ed=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.eb=a[b++];b++;this.Ca=a[b++];this.bc=a[b++];this.ob=a[b++];this.bb=a[b++];this.uf=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.tc=c);void 0===this.Da&&(this.Pi=4,this.na&&(this.Pi=Ci(this.na)),this.Da=Array(4));for(c=0;c<this.Da.length;c++){var f=this.Da[c];if(void 0===f){var f=this.Da[c]={},h;if(this.na)a:{h=this.na;if(c<Ci(h)){if(!h.Td){h=360;break a}if(c<h.Td.length){h=h.Td[c];break a}}h=0}else h=0;switch(h){case 160:case 180:f.Sb=
1;default:f.Qb=40;f.$b=9;break;case 720:f.Qb=80;f.$b=9;break;case 1200:f.Qb=80;f.$b=15;break;case 1440:f.Qb=80,f.$b=18}}this.Ei(f,c,e[c])||(d=!1)}this.re=a[b++]||0;this.Pl=a[b]||0;return d};k.Mj=function(){var a=0,b=[];b[a++]=this.eb;b[a++]=0;b[a++]=this.Ca;b[a++]=this.bc;b[a++]=this.ob;b[a++]=this.bb;b[a++]=this.uf;b[a++]=this.Oj();for(var c=a++,d=0;d<this.Da.length;d++){var e=this.Da[d];e.ya&&rl(this,e.Se,e.ya)}b[c]=this.tc;b[a++]=this.re;b[a]=this.Pl;return b};
k.Ei=function(a,b,c){var d=0,e=!0;a.eb=b;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.Qb||40,a.Sb||c[3],a.$b||9,a.Jb||512,c[1],a.Bh,a.lg,a.mg]);a.Ya=c[d++];var f=c[d++];a.name=f[0];a.Qb=f[1];a.Sb=f[2];a.$b=f[3];a.Jb=f[4];a.gf=f[5];(a.Bh=f[6])?(a.lg=f[7],a.mg=f[8]):(a.Bh=a.Qb,a.lg=a.Sb,a.mg=a.$b);a.Na=c[d++];a.$d=c[d++];a.kb=c[d++];a.$d=100<=a.$d?a.$d-100:a.$d-a.kb;a.Wa=c[d++];a.be=c[d++];a.ab=c[d++];a.$a=c[d++];a.Sa=null;a.ya||(a.Se="");f=c[d++];f===sl?(f=c[d++],
c=c[d],nl(this,b,f,c,!0)?a.ya&&tl(this,f,c,a.ya):this.Ta(!1)):void 0!==f&&a.ya&&0>a.ya.restore(f)&&(e=!1);e&&a.ya&&void 0!==a.$a&&(a.Sa=a.ya.seek(a.kb,a.Na,a.Wa));return e};k.Oj=function(){for(var a=0,b=[],c=0;c<this.Da.length;c++)b[a++]=this.Nj(this.Da[c]);return b};k.Nj=function(a){var b=0,c=[];c[b++]=a.Ya;c[b++]=[a.name,a.Qb,a.Sb,a.$b,a.Jb,a.gf,a.Bh,a.lg,a.mg];c[b++]=a.Na;c[b++]=a.$d+100;c[b++]=a.kb;c[b++]=a.Wa;c[b++]=a.be;c[b++]=a.ab;c[b++]=a.$a;c[b++]=sl;c[b++]=a.Ul;c[b]=a.Se;return c};
k.kk=function(a){var b;a=this.Da[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};k.Xl=function(a,b,c){if(a.ya){var d=a.ya.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.kb=Math.floor(b/f),b%=f,a.Na=Math.floor(b/e),a.Wa=b%e+1,a.ab=c*d[3],a.Ya=0,!0}return!1};
1;default:f.Qb=40;f.$b=9;break;case 720:f.Qb=80;f.$b=9;break;case 1200:f.Qb=80;f.$b=15;break;case 1440:f.Qb=80,f.$b=18}}this.Ei(f,c,e[c])||(d=!1)}this.re=a[b++]||0;this.Pl=a[b]||0;return d};k.Mj=function(){var a=0,b=[];b[a++]=this.eb;b[a++]=0;b[a++]=this.Ca;b[a++]=this.bc;b[a++]=this.ob;b[a++]=this.bb;b[a++]=this.uf;b[a++]=this.Oj();for(var c=a++,d=0;d<this.Da.length;d++){var e=this.Da[d];e.xa&&rl(this,e.Se,e.xa)}b[c]=this.tc;b[a++]=this.re;b[a]=this.Pl;return b};
k.Ei=function(a,b,c){var d=0,e=!0;a.eb=b;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.Qb||40,a.Sb||c[3],a.$b||9,a.Jb||512,c[1],a.Bh,a.lg,a.mg]);a.Ya=c[d++];var f=c[d++];a.name=f[0];a.Qb=f[1];a.Sb=f[2];a.$b=f[3];a.Jb=f[4];a.gf=f[5];(a.Bh=f[6])?(a.lg=f[7],a.mg=f[8]):(a.Bh=a.Qb,a.lg=a.Sb,a.mg=a.$b);a.Na=c[d++];a.$d=c[d++];a.kb=c[d++];a.$d=100<=a.$d?a.$d-100:a.$d-a.kb;a.Wa=c[d++];a.be=c[d++];a.ab=c[d++];a.$a=c[d++];a.Sa=null;a.xa||(a.Se="");f=c[d++];f===sl?(f=c[d++],
c=c[d],nl(this,b,f,c,!0)?a.xa&&tl(this,f,c,a.xa):this.Ta(!1)):void 0!==f&&a.xa&&0>a.xa.restore(f)&&(e=!1);e&&a.xa&&void 0!==a.$a&&(a.Sa=a.xa.seek(a.kb,a.Na,a.Wa));return e};k.Oj=function(){for(var a=0,b=[],c=0;c<this.Da.length;c++)b[a++]=this.Nj(this.Da[c]);return b};k.Nj=function(a){var b=0,c=[];c[b++]=a.Ya;c[b++]=[a.name,a.Qb,a.Sb,a.$b,a.Jb,a.gf,a.Bh,a.lg,a.mg];c[b++]=a.Na;c[b++]=a.$d+100;c[b++]=a.kb;c[b++]=a.Wa;c[b++]=a.be;c[b++]=a.ab;c[b++]=a.$a;c[b++]=sl;c[b++]=a.Ul;c[b]=a.Se;return c};
k.kk=function(a){var b;a=this.Da[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};k.Xl=function(a,b,c){if(a.xa){var d=a.xa.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.kb=Math.floor(b/f),b%=f,a.Na=Math.floor(b/e),a.Wa=b%e+1,a.ab=c*d[3],a.Ya=0,!0}return!1};
k.Lf=function(a){a||(this.De=0);if(this.Pe)for(var b in this.Pe){var c=this.Pe[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.Da.length){!nl(this,d,c.name,c.path,!0)&&a&&this.Ta(!1);continue}}this.Ka("Unrecognized auto-mount specification for drive "+b)}return!!this.De};
function nl(a,b,c,d,e){var f=a.Da[b];if(d&&f.Se!=d){ol(a,b,e,!0);if(f.Lc)return a.Ka("Drive "+b+" busy"),!0;f.Lc=!0;e&&(f.Je=!0,a.De++,a.Ra("loading diskette '"+c+"'"));(new $k(a,f,"preload")).load(c,d,a.sm);return!1}return!0}
k.sm=function(a,b,c,d){var e;a.Lc=!1;b&&(e=b.info(),b&&e[0]>a.Qb||e[1]>a.Sb)&&(this.Ka('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.eb)),b=null);b&&(a.ya=b,a.Ul=c,a.Se=d,tl(this,c,d,b),this.re|=128,this.Ka('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.eb),a.Je),a.Bh=e[0],a.lg=e[1],a.mg=e[2]);a.Je&&(a.Je=!1,--this.De||this.Ta());ml(this,a.eb)};
function ml(a,b){if(0<=b&&b<a.Da.length){var c=a.Da[b],d=a.xa.listDisks,e=a.xa.listDrives;if(d&&e&&(e=parseInt(e.value,10),!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c.Se){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function ol(a,b,c,d){var e=a.Da[b];e.ya&&(rl(a,e.Se,e.ya),e.Ul="",e.Se="",e.ya=null,a.re|=128,d||a.Ka("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||ml(a,b))}
k.sm=function(a,b,c,d){var e;a.Lc=!1;b&&(e=b.info(),b&&e[0]>a.Qb||e[1]>a.Sb)&&(this.Ka('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.eb)),b=null);b&&(a.xa=b,a.Ul=c,a.Se=d,tl(this,c,d,b),this.re|=128,this.Ka('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.eb),a.Je),a.Bh=e[0],a.lg=e[1],a.mg=e[2]);a.Je&&(a.Je=!1,--this.De||this.Ta());ml(this,a.eb)};
function ml(a,b){if(0<=b&&b<a.Da.length){var c=a.Da[b],d=a.ya.listDisks,e=a.ya.listDrives;if(d&&e&&(e=parseInt(e.value,10),!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c.Se){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function ol(a,b,c,d){var e=a.Da[b];e.xa&&(rl(a,e.Se,e.xa),e.Ul="",e.Se="",e.xa=null,a.re|=128,d||a.Ka("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||ml(a,b))}
function tl(a,b,c,d){var e;for(e=0;e<a.tc.length;e++)if(a.tc[e][1]==c){d.restore(a.tc[e][2]);return}a.tc[e]=[b,c,[]]}function rl(a,b,c){var d;for(d=0;d<a.tc.length;d++)if(a.tc[d][1]==b){a.tc[d][2]=c.save();break}}k.to=function(a,b,c){this.da(a,b,c,"OUTPUT");b&4?this.uf&4||this.uf&8&&this.na&&Yi(this.na,6):this.Ed();this.uf=b};k.$m=function(a,b){this.da(a,null,b,"STATUS",this.Ca);return this.Ca};
k.Ym=function(a,b){var c=0;this.ob<this.bb&&(c=this.bc[this.ob]);this.uf&8&&this.na&&Zi(this.na,6);this.da(a,null,b,"DATA["+this.ob+"]",c);++this.ob>=this.bb&&(this.Ca&=-81,this.ob=this.bb=0);return c};
k.so=function(a,b,c){this.da(a,b,c,"DATA["+this.bb+"]");this.bb<this.bc.length&&(this.bc[this.bb++]=b);a=this.bc[0]&31;if(void 0!==ll[a]&&this.bb>=ll[a].wd){c=!1;this.ob=0;a=this.Pa();var d,e,f,h,g;b=a&31;switch(b){case 3:this.Pa(m.zp);this.Pa(m.op);this.Pb();break;case 4:e=this.Pa(m.Bf);this.eb=e&3;d=this.Da[this.eb];this.Pb();this.ac((d.Ya&4278190080)>>>24,m.Cp);break;case 5:case 6:e=this.Pa(m.Bf);c=e>>2&1;this.eb=e&3;d=this.Da[this.eb];d.Na=c;e=d.kb=this.Pa(m.dm);f=this.Pa(m.fm);h=d.Wa=this.Pa(m.hm);
g=this.Pa(m.Uj);d.ab=128<<g;d.be=this.Pa(m.lp);this.Pa(m.em);this.Pa(m.kp);6==b?this.oi(d):this.pi(d);ul(this,d,a,c,e,f,h,g);c=!0;break;case 7:e=this.Pa(m.Bf);this.eb=e&3;d=this.Da[this.eb];d.kb=d.$d=0;d.Ya=268435488;this.Pb();c=!0;break;case 8:d=this.Da[this.eb];d.Na=0;this.Pb();this.ac(d.eb|d.Na<<2|d.Ya&255,m.im);this.ac(d.kb,m.qp);this.eb=this.eb+1&3;break;case 10:e=this.Pa(m.Bf);c=e>>2&1;this.eb=e&3;d=this.Da[this.eb];e=d.kb;f=d.Na=c;h=d.Wa=1;g=0;d.Ya=0;d.ya&&(d.Sa=d.ya.seek(d.kb,d.Na,d.Wa))?
g=this.Pa(m.Uj);d.ab=128<<g;d.be=this.Pa(m.lp);this.Pa(m.em);this.Pa(m.kp);6==b?this.oi(d):this.pi(d);ul(this,d,a,c,e,f,h,g);c=!0;break;case 7:e=this.Pa(m.Bf);this.eb=e&3;d=this.Da[this.eb];d.kb=d.$d=0;d.Ya=268435488;this.Pb();c=!0;break;case 8:d=this.Da[this.eb];d.Na=0;this.Pb();this.ac(d.eb|d.Na<<2|d.Ya&255,m.im);this.ac(d.kb,m.qp);this.eb=this.eb+1&3;break;case 10:e=this.Pa(m.Bf);c=e>>2&1;this.eb=e&3;d=this.Da[this.eb];e=d.kb;f=d.Na=c;h=d.Wa=1;g=0;d.Ya=0;d.xa&&(d.Sa=d.xa.seek(d.kb,d.Na,d.Wa))?
g=d.Sa.length:d.Ya=1088;ul(this,d,a,c,e,f,h,g);c=!0;break;case 13:e=this.Pa(m.Bf);c=e>>2&1;this.eb=e&3;d=this.Da[this.eb];e=d.kb;f=d.Na=c;h=1;g=this.Pa(m.Uj);d.ab=128<<g;d.be=this.Pa(m.up);this.Pa(m.em);d.ak=this.Pa(m.jp);this.mk(d);ul(this,d,a,c,e,f,h,g);c=!0;break;case 15:e=this.Pa(m.Bf),this.eb=e&3,d=this.Da[this.eb],d.Na=e>>2&1,e=this.Pa(m.pp),d.kb+=e-d.$d,0>d.kb&&(d.kb=0),d.kb>=d.Qb&&(d.kb=d.Qb-1),d.$d=e,d.Ya=32,0==d.kb&&(d.Ya|=268435456),this.Pb(),c=!0}0<this.bb&&(this.Ca|=80);this.uf&8&&(!d||
d.Ya&8||!c||this.na&&Yi(this.na,6))}};k.Zm=function(a,b){var c=this.re;this.re&=-129;this.da(a,null,b,"INPUT",c);return c};k.ro=function(a,b,c){this.da(a,b,c,"CONTROL");this.Pl=b};function ul(a,b,c,d,e,f,h,g){a.Pb();a.ac(b.eb|b.Na<<2|b.Ya&255,m.im);a.ac((b.Ya&65280)>>>8,m.Ap);a.ac((b.Ya&16711680)>>>16,m.Bp);var l=0;if(e!=b.kb||f!=b.Na)l=h=1;c&128&&(f^=l,d||(l=0));a.ac(e+l,m.dm);a.ac(f,m.fm);a.ac(h,m.hm);a.ac(g,m.Uj)}k.Pa=function(){var a=this.bc[this.ob];this.ob++;return a};
k.Pb=function(){this.ob=this.bb=0};k.ac=function(a){this.bc[this.bb++]=a};k.mi=function(a,b,c){void 0===b||0>b?this.rc(a,c):c(-1,!1)};k.ni=function(a,b){return void 0!==b&&0<=b?this.Cc(a,b):-1};k.nm=function(a,b){return void 0!==b&&0<=b?this.Qj(a,b):-1};k.oi=function(a){a.Ya=72;a.ya&&(a.Sa=null,a.Ya=0,this.na&&(Ri(this.na,2,this,"dmaRead",a),Li(this.na,2)))};k.pi=function(a){a.Ya=72;a.ya&&(a.ya.hf?a.Ya=576:(a.Sa=null,a.Ya=0,this.na&&(Ri(this.na,2,this,"dmaWrite",a),Li(this.na,2))))};
k.mk=function(a){a.Ya=72;a.ya&&(a.Sa=null,a.Ya=0,this.na&&(a.Ge=0,a.vc=Array(4),a.Mf=!0,a.Sf=0,Ri(this.na,2,this,"dmaFormat",a),Li(this.na,2),a.Mf=!1))};k.rc=function(a,b){var c=-1;if(!a.Ya&&a.ya){do{if(a.Sa&&0<=(c=il(a.Sa,a.$a++)))break;a.Sa=a.ya.seek(a.kb,a.Na,a.Wa);if(!a.Sa){a.Ya=1088;break}a.$a=0;this.Jf(a)}while(1)}b(c,!1)};
k.Cc=function(a,b){if(a.Ya||!a.ya)return-1;do{if(a.Sa&&a.ya.write(a.Sa,a.$a++,b))break;a.Sa=a.ya.seek(a.kb,a.Na,a.Wa);if(!a.Sa){a.Ya=8256;b=-1;break}a.$a=0;this.Jf(a)}while(1);return b};k.Jf=function(a){a.Wa++;a.Wa>=a.mg+1&&(a.Wa=1,a.Na++,a.Na>=a.lg&&(a.Na=0,a.kb++))};k.Qj=function(a,b){if(a.Ya)return-1;a.vc[a.Ge++]=b;if(a.Ge==a.vc.length){a.kb=a.vc[0];a.Na=a.vc[1];a.Wa=a.vc[2];a.ab=128<<a.vc[3];for(var c=a.Ge=0;c<a.ab;c++)if(0>this.Cc(a,a.ak))return-1;a.Sf++}a.Sf>=a.be&&(b=-1);return b};
k.Pb=function(){this.ob=this.bb=0};k.ac=function(a){this.bc[this.bb++]=a};k.mi=function(a,b,c){void 0===b||0>b?this.rc(a,c):c(-1,!1)};k.ni=function(a,b){return void 0!==b&&0<=b?this.Cc(a,b):-1};k.nm=function(a,b){return void 0!==b&&0<=b?this.Qj(a,b):-1};k.oi=function(a){a.Ya=72;a.xa&&(a.Sa=null,a.Ya=0,this.na&&(Ri(this.na,2,this,"dmaRead",a),Li(this.na,2)))};k.pi=function(a){a.Ya=72;a.xa&&(a.xa.hf?a.Ya=576:(a.Sa=null,a.Ya=0,this.na&&(Ri(this.na,2,this,"dmaWrite",a),Li(this.na,2))))};
k.mk=function(a){a.Ya=72;a.xa&&(a.Sa=null,a.Ya=0,this.na&&(a.Ge=0,a.vc=Array(4),a.Mf=!0,a.Sf=0,Ri(this.na,2,this,"dmaFormat",a),Li(this.na,2),a.Mf=!1))};k.rc=function(a,b){var c=-1;if(!a.Ya&&a.xa){do{if(a.Sa&&0<=(c=il(a.Sa,a.$a++)))break;a.Sa=a.xa.seek(a.kb,a.Na,a.Wa);if(!a.Sa){a.Ya=1088;break}a.$a=0;this.Jf(a)}while(1)}b(c,!1)};
k.Cc=function(a,b){if(a.Ya||!a.xa)return-1;do{if(a.Sa&&a.xa.write(a.Sa,a.$a++,b))break;a.Sa=a.xa.seek(a.kb,a.Na,a.Wa);if(!a.Sa){a.Ya=8256;b=-1;break}a.$a=0;this.Jf(a)}while(1);return b};k.Jf=function(a){a.Wa++;a.Wa>=a.mg+1&&(a.Wa=1,a.Na++,a.Na>=a.lg&&(a.Na=0,a.kb++))};k.Qj=function(a,b){if(a.Ya)return-1;a.vc[a.Ge++]=b;if(a.Ge==a.vc.length){a.kb=a.vc[0];a.Na=a.vc[1];a.Wa=a.vc[2];a.ab=128<<a.vc[3];for(var c=a.Ge=0;c<a.ab;c++)if(0>this.Cc(a,a.ak))return-1;a.Sf++}a.Sf>=a.be&&(b=-1);return b};
k.Gi=function(a){var b=this.T.K&255;this.ca&&E(this.ca,rj|Yc)&&128>b&&(Zc(this.ca,19,a),$c(this.T,a,function(a,b){return function(e){ad(a.ca,19,e,F(a.T)-b)}}(this,F(this.T))));return!0};k.Ra=function(a,b){this.ca&&(null==b&&(b=rj),E(this.ca,b)&&this.ca.message(a))};k.da=function(a,b,c,d,e){this.ca&&this.ca.da(this,a,b,c,d,rj,e)};var pl={1012:kl.prototype.$m,1013:kl.prototype.Ym,1015:kl.prototype.Zm},ql={1010:kl.prototype.to,1013:kl.prototype.so,1015:kl.prototype.ro};
Fa(function(){for(var a=D(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new kl(d);Ya(d,c)}});function Y(a){y.call(this,"HDC",a,Y);this.dmaRead=this.mi;this.dmaWrite=this.ni;this.dmaWriteBuffer=this.om;this.dmaWriteFormat=this.pm;this.Uh=[];if(a.drives)try{this.Uh=eval("("+a.drives+")")}catch(b){x("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.bg=(this.Ie="at"==a.type)?1:0;this.Dm=this.Ie?2:3}A(y,Y);
var vl=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7]}];k=Y.prototype;k.zb=function(){return!1};k.oc=function(a,b,c,d){this.qa=b;this.T=c;this.ca=d;this.Ha=a;this.na=db(a,"ChipSet");sb(b,this,this.Ie?wl:xl);yb(b,this,this.Ie?yl:zl);Wc(c,19,this,this.Dn);Wc(c,64,this,this.Gi);this.reset();this.Lf()||this.Ta()};
@ -625,12 +625,12 @@ k.Ed=function(a,b){var c=0,d=!0;if(this.Ie)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),t
c=a[c];void 0===c&&(c=[]);for(e=0;e<this.Da.length;e++){void 0===this.Da[e]&&(this.Da[e]={});var f=this.Da[e];this.Ei(e,f,this.Uh[e],c[e],b)||(d=!1);null!=this.sf&&1>=e&&(this.sf|=(f.type&3)<<(1-e<<1))}return d};
k.Mj=function(){var a=0,b=[];this.Ie?(b[a++]=this.Kd,b[a++]=this.Tl,b[a++]=this.se,b[a++]=this.Mh,b[a++]=this.Kh,b[a++]=this.Jh,b[a++]=this.tf,b[a++]=this.Ca,b[a++]=this.Jj,b[a++]=this.Lh):(b[a++]=this.sf,b[a++]=this.Ca,b[a++]=this.bc,b[a++]=this.ob,b[a++]=this.bb,b[a++]=this.Sl,b[a++]=this.Rl,b[a++]=this.Ql,b[a++]=this.kf);b[a]=this.Oj();return b};
k.Ei=function(a,b,c,d,e){var f=0,h=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.eb=a;b.errorCode=d[f++];b.Zl=d[f++];b.gf=d[f++];b.Ze=d[f++];b.$e=d[f++];b.Na=d[f++];b.Sb=d[f++];b.Qd=d[f++];b.Wa=d[f++];b.be=d[f++];b.ab=d[f++];b.Vg=this.Ie?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.ie()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===vl[this.bg][b.type])b.type=this.Dm;c=vl[this.bg][b.type];
b.$b=c[2]||17;b.Jb=c[3]||512;if(e&&this.na&&(e=this.na,c=b.type,e.ra)){var g=e.ra[18],g=a?g&240|c:g&15|c<<4;e.ra&&(e.ra[18]=g,zi(e))}void 0===b.ya&&(b.ya=null,this.Ka("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Al(this,b);b.$a=d[f++];b.Sa=null;b.ya&&(a=d[f],void 0!==a&&0>b.ya.restore(a)&&(h=!1),h&&void 0!==b.$a&&(b.Sa=b.ya.seek(b.Qd,b.Na,b.Wa+b.Vg)));return h};k.Oj=function(){for(var a=0,b=[],c=0;c<this.Da.length;c++)b[a++]=this.Nj(this.Da[c]);return b};
k.Nj=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.Zl;c[b++]=a.gf;c[b++]=a.Ze;c[b++]=a.$e;c[b++]=a.Na;c[b++]=a.Sb;c[b++]=a.Qd;c[b++]=a.Wa;c[b++]=a.be;c[b++]=a.ab;c[b++]=a.$a;c[b]=a.ya?a.ya.save():null;return c};k.kk=function(a){var b;a=this.Da[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
function Al(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.Ze[2])?e=b.Ze[0]<<8|b.Ze[1]:c=b.type);null==c||d||(d=vl[a.bg][c][1],e=vl[a.bg][c][0]);d&&((c=vl[a.bg][b.type])&&e!=c[0]&&d!=c[1]&&a.Ka("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.Qb=e,b.Sb=d,null==b.ya&&(b.ya=new $k(a,b,b.mode)))}}
k.Xl=function(a,b,c){if(a.ya){var d=a.ya.info(),e=d[0];if(e){var f=d[2],h=d[1]*f;if(b+c<=e*h)return a.Qd=Math.floor(b/h),b%=h,a.Na=Math.floor(b/f),a.Wa=b%f,a.ab=c*d[3],a.errorCode=0,!0}}return!1};
k.Lf=function(a){a||(this.De=0);for(var b=0;b<this.Da.length;b++){var c=this.Da[b];if(c.name&&c.path){if(!(a&&c.ya&&c.ya.jh)){var d;d=c.name;var c=c.path,e=this.Da[b];e.Lc?(this.Ka("Drive "+b+" busy"),d=!0):(e.Lc=!0,e.Je=!0,this.De++,this.Ra("loading "+d),(e.ya||new $k(this,e,e.mode)).load(d,c,this.rm),d=!1);!d&&a&&this.Ta(!1)}}else a&&void 0!==c.type&&(c.ya=null,Al(this,c,c.type))}return!!this.De};
k.rm=function(a,b,c){a.Lc=!1;(a.ya=b)&&this.Ka('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.eb),a.Je);a.Je&&(a.Je=!1,--this.De||this.Ta())};k.An=function(a,b){var c=0;this.ob<this.bb&&(c=this.bc[this.ob]);this.na&&Zi(this.na,5);this.Ca&=-33;this.da(a,null,b,"DATA["+this.ob+"]",c);++this.ob>=this.bb&&(this.ob=this.bb=0,this.Ca&=-15);return c};
b.$b=c[2]||17;b.Jb=c[3]||512;if(e&&this.na&&(e=this.na,c=b.type,e.ra)){var g=e.ra[18],g=a?g&240|c:g&15|c<<4;e.ra&&(e.ra[18]=g,zi(e))}void 0===b.xa&&(b.xa=null,this.Ka("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Al(this,b);b.$a=d[f++];b.Sa=null;b.xa&&(a=d[f],void 0!==a&&0>b.xa.restore(a)&&(h=!1),h&&void 0!==b.$a&&(b.Sa=b.xa.seek(b.Qd,b.Na,b.Wa+b.Vg)));return h};k.Oj=function(){for(var a=0,b=[],c=0;c<this.Da.length;c++)b[a++]=this.Nj(this.Da[c]);return b};
k.Nj=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.Zl;c[b++]=a.gf;c[b++]=a.Ze;c[b++]=a.$e;c[b++]=a.Na;c[b++]=a.Sb;c[b++]=a.Qd;c[b++]=a.Wa;c[b++]=a.be;c[b++]=a.ab;c[b++]=a.$a;c[b]=a.xa?a.xa.save():null;return c};k.kk=function(a){var b;a=this.Da[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
function Al(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.Ze[2])?e=b.Ze[0]<<8|b.Ze[1]:c=b.type);null==c||d||(d=vl[a.bg][c][1],e=vl[a.bg][c][0]);d&&((c=vl[a.bg][b.type])&&e!=c[0]&&d!=c[1]&&a.Ka("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.Qb=e,b.Sb=d,null==b.xa&&(b.xa=new $k(a,b,b.mode)))}}
k.Xl=function(a,b,c){if(a.xa){var d=a.xa.info(),e=d[0];if(e){var f=d[2],h=d[1]*f;if(b+c<=e*h)return a.Qd=Math.floor(b/h),b%=h,a.Na=Math.floor(b/f),a.Wa=b%f,a.ab=c*d[3],a.errorCode=0,!0}}return!1};
k.Lf=function(a){a||(this.De=0);for(var b=0;b<this.Da.length;b++){var c=this.Da[b];if(c.name&&c.path){if(!(a&&c.xa&&c.xa.jh)){var d;d=c.name;var c=c.path,e=this.Da[b];e.Lc?(this.Ka("Drive "+b+" busy"),d=!0):(e.Lc=!0,e.Je=!0,this.De++,this.Ra("loading "+d),(e.xa||new $k(this,e,e.mode)).load(d,c,this.rm),d=!1);!d&&a&&this.Ta(!1)}}else a&&void 0!==c.type&&(c.xa=null,Al(this,c,c.type))}return!!this.De};
k.rm=function(a,b,c){a.Lc=!1;(a.xa=b)&&this.Ka('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.eb),a.Je);a.Je&&(a.Je=!1,--this.De||this.Ta())};k.An=function(a,b){var c=0;this.ob<this.bb&&(c=this.bc[this.ob]);this.na&&Zi(this.na,5);this.Ca&=-33;this.da(a,null,b,"DATA["+this.ob+"]",c);++this.ob>=this.bb&&(this.ob=this.bb=0,this.Ca&=-15);return c};
k.Po=function(a,b,c){this.da(a,b,c,"DATA["+this.bb+"]");this.bb<this.bc.length&&(this.bc[this.bb++]=b);a=12!=this.bc[0]?6:this.bc.length;6==this.bb&&(this.Ca&=-2);this.bb>=a&&(this.Ca|=2,this.Ca&=-2,Bl(this))};k.Bn=function(a,b){var c=this.Ca;this.da(a,null,b,"STATUS",c);this.ob<this.bb&&(this.Ca|=1);return c};k.So=function(a,b,c){this.da(a,b,c,"RESET");this.Sl=b;this.na&&Zi(this.na,5);this.Ed()};k.zn=function(a,b){this.da(a,null,b,"CONFIG",this.sf);return this.sf};
k.Ro=function(a,b,c){this.da(a,b,c,"PULSE");this.Rl=b;this.Ca=13};k.Qo=function(a,b,c){this.da(a,b,c,"PATTERN");this.Ql=b};k.Ej=function(a,b,c){this.da(a,b,c,"NOISE")};k.Lm=function(a,b){var c=-1,d=!1;if(this.Qa&&(d=0<this.Qa.$a,c=this.rc(this.Qa),this.Qa.$a==this.Qa.Jb))if(this.Qa.ab-=this.Qa.Jb,this.se=this.se-1&255,this.Qa.ab>=this.Qa.Jb){var e=this;this.rc(this.Qa,function(a){0<=a?Cl(e):(e.Ca=1,e.Kd=16)},!1)}else this.Ca=80;d||this.da(a,null,b,"DATA",c);return c};
k.eo=function(a,b,c){this.Qa&&0!=this.Qa.$a||this.da(a,b,c,"DATA");this.Qa&&this.Qa.ab>=this.Qa.Jb&&(0>this.Cc(this.Qa,b)?(this.Ca=1,this.Kd=16):this.Qa.$a==this.Qa.Jb&&(this.Qa.ab-=this.Qa.Jb,this.se=this.se-1&255,Cl(this),this.Qa.ab>=this.Qa.Jb||(this.Ca=80)))};k.Nm=function(a,b){var c=this.Kd;this.da(a,null,b,"ERROR",c);return c};k.ko=function(a,b,c){this.da(a,b,c,"WPREC");this.Tl=b};k.Om=function(a,b){var c=this.se;this.da(a,null,b,"SECCNT",c);return c};
@ -640,11 +640,11 @@ function Dl(a){var b=!1,c=a.Jj,d=a.tf&16?1:0,e=a.tf&15,f=a.Kh|(a.Jh&3)<<8,h=a.Mh
function Cl(a){!a.na||a.Lh&2||Yi(a.na,14)}
function Bl(a){a.ob=0;var b=a.Pa(),c=a.Pa(),d=c&32,e=d>>5,f=c&31,h=a.Pa(),g=a.Pa(),l=h<<2&768|g,n=h&63,p=a.Pa(),r=a.Pa(),s=a.Da[e];s&&(s.Qd=l,s.Na=f,s.Wa=n,s.ab=p*s.Jb);switch(b){case 3:a.Pb(s?s.errorCode:4);a.ac(c);a.ac(h);a.ac(g);a.ac(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Pa());)s&&c<s.Ze.length&&(s.Ze[c++]=b);s&&Al(a,s);b=0;s||a.kf!=e||(a.kf=-1,b=2);a.Pb(b|d);b=-1;break;case 224:case 228:a.Pb(0|d),b=-1}if(0<=b)switch(void 0===s?b=-1:(s.errorCode=0,s.Zl=0),b){case 0:a.Pb(0|d);break;case 1:s.Hp=
r;a.Pb(0|d);break;case 5:a.Pb(0|d);break;case 8:a.oi(s,function(b){a.Pb(b|d)});break;case 10:a.pi(s,function(b){a.Pb(b|d)});break;case 15:El(a,s,function(b){a.Pb(b|d)});break;default:a.Pb(2|d)}}k.Pa=function(){var a=-1;this.ob<this.bb&&(a=this.bc[this.ob++]);return a};k.Pb=function(a){this.ob=this.bb=0;void 0!==a&&this.ac(a);this.na&&Yi(this.na,5);this.Ca|=32};k.ac=function(a){this.bc[this.bb++]=a};k.mi=function(a,b,c){void 0===b||0>b?this.rc(a,c):c(-1,!1)};
k.ni=function(a,b){return void 0!==b&&0<=b?this.Cc(a,b):-1};k.om=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.$a<a.$e.length?a.$e[a.$a++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.pm=function(a,b){return void 0!==b&&0<=b?this.Qj(a,b):-1};k.oi=function(a,b){a.errorCode=4;if(a.ya&&(a.Sa=null,this.na)){a.errorCode=0;Ri(this.na,3,this,"dmaRead",a);Li(this.na,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.pi=function(a,b){a.errorCode=4;if(a.ya&&(a.Sa=null,this.na)){a.errorCode=0;Ri(this.na,3,this,"dmaWrite",a);Li(this.na,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function El(a,b,c){b.errorCode=4;b.$e&&b.$e.length==b.ab||(b.$e=Array(b.ab));b.$a=0;a.na?(b.errorCode=0,Ri(a.na,3,a,"dmaWriteBuffer",b),Li(a.na,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
k.mk=function(a,b){a.errorCode=4;if(a.ya&&(a.Sa=null,this.na)){a.Ge=0;a.vc=Array(4);a.Mf=!0;a.Sf=0;a.errorCode=0;Ri(this.na,3,this,"dmaWriteFormat",a);Li(this.na,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Mf=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.rc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Sa&&(d=il(a.Sa,a.$a),a.$a+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;a.ya.seek(a.Qd,a.Na,a.Wa+a.Vg,!1,function(c,d){var l=-1;(a.Sa=c)?(a.$a=0,f.Jf(a),l=il(a.Sa,a.$a),a.$a+=e):a.errorCode=20;b(l,d)})}return d};
k.Cc=function(a,b){if(a.errorCode)return-1;do{if(a.Sa&&a.ya.write(a.Sa,a.$a++,b))break;a.ya.seek(a.Qd,a.Na,a.Wa+a.Vg,!0,function(b){a.Sa=b});if(!a.Sa){a.errorCode=20;b=-1;break}a.$a=0;this.Jf(a)}while(1);return b};k.Jf=function(a){a.Wa++;var b=1-a.Vg;a.Wa>=a.$b+b&&(a.Wa=b,a.Na++,a.Na>=a.Sb&&(a.Na=0,a.Qd++))};
k.ni=function(a,b){return void 0!==b&&0<=b?this.Cc(a,b):-1};k.om=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.$a<a.$e.length?a.$e[a.$a++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.pm=function(a,b){return void 0!==b&&0<=b?this.Qj(a,b):-1};k.oi=function(a,b){a.errorCode=4;if(a.xa&&(a.Sa=null,this.na)){a.errorCode=0;Ri(this.na,3,this,"dmaRead",a);Li(this.na,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.pi=function(a,b){a.errorCode=4;if(a.xa&&(a.Sa=null,this.na)){a.errorCode=0;Ri(this.na,3,this,"dmaWrite",a);Li(this.na,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function El(a,b,c){b.errorCode=4;b.$e&&b.$e.length==b.ab||(b.$e=Array(b.ab));b.$a=0;a.na?(b.errorCode=0,Ri(a.na,3,a,"dmaWriteBuffer",b),Li(a.na,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
k.mk=function(a,b){a.errorCode=4;if(a.xa&&(a.Sa=null,this.na)){a.Ge=0;a.vc=Array(4);a.Mf=!0;a.Sf=0;a.errorCode=0;Ri(this.na,3,this,"dmaWriteFormat",a);Li(this.na,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Mf=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.rc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Sa&&(d=il(a.Sa,a.$a),a.$a+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;if(a.xa)return a.xa.seek(a.Qd,a.Na,a.Wa+a.Vg,!1,function(c,g){(a.Sa=c)?(a.$a=0,f.Jf(a),d=il(a.Sa,a.$a),a.$a+=e):a.errorCode=20;b(d,g)}),d;a.errorCode=20;b(d,!1)}return d};
k.Cc=function(a,b){if(a.errorCode)return-1;do{if(a.Sa&&a.xa.write(a.Sa,a.$a++,b))break;a.xa&&a.xa.seek(a.Qd,a.Na,a.Wa+a.Vg,!0,function(b){a.Sa=b});if(!a.Sa){a.errorCode=20;b=-1;break}a.$a=0;this.Jf(a)}while(1);return b};k.Jf=function(a){a.Wa++;var b=1-a.Vg;a.Wa>=a.$b+b&&(a.Wa=b,a.Na++,a.Na>=a.Sb&&(a.Na=0,a.Qd++))};
k.Qj=function(a,b){if(a.errorCode)return-1;a.vc[a.Ge++]=b;if(a.Ge==a.vc.length){a.Qd=a.vc[0];a.Na=a.vc[1];a.Wa=a.vc[2];a.ab=128<<a.vc[3];for(var c=a.Ge=0;c<a.ab;c++)if(0>this.Cc(a,a.ak))return-1;a.Sf++}a.Sf>=a.be&&(b=-1);return b};k.Dn=function(a){var b=this.T.K&255;!(this.T.H>>8)&&128<b&&(this.kf=b-128);this.ca&&E(this.ca,Fl|Yc)&&128<=b&&(Zc(this.ca,19,a),$c(this.T,a,function(a,b){return function(e){ad(a.ca,19,e,F(a.T)-b)}}(this,F(this.T))));return!0};
k.Gi=function(){var a;(a=this.T.H>>8)||(a=!this.na)||(a=!(this.na.ub[0].vd&64));return a?!0:!1};k.Ra=function(a,b){this.ca&&(null==b&&(b=Fl),E(this.ca,b)&&this.ca.message(a))};k.da=function(a,b,c,d,e){this.ca&&this.ca.da(this,a,b,c,d,Fl,e)};
var xl={800:Y.prototype.An,801:Y.prototype.Bn,802:Y.prototype.zn},wl={496:Y.prototype.Lm,497:Y.prototype.Nm,498:Y.prototype.Om,499:Y.prototype.Pm,500:Y.prototype.Km,501:Y.prototype.Jm,502:Y.prototype.Mm,503:Y.prototype.Qm},zl={800:Y.prototype.Po,801:Y.prototype.So,802:Y.prototype.Ro,803:Y.prototype.Qo,807:Y.prototype.Ej,811:Y.prototype.Ej,815:Y.prototype.Ej},yl={496:Y.prototype.eo,497:Y.prototype.ko,498:Y.prototype.io,499:Y.prototype.jo,500:Y.prototype.co,501:Y.prototype.bo,502:Y.prototype.fo,503:Y.prototype.ao,
@ -672,7 +672,7 @@ Z="AL CL DL BL AH CH DH BH AX CX DX BX SP BP SI DI ES CS SS DS IP".split(" "),Nl
69:"duplicate file handle BX",70:"force file handle CX to duplicate file handle BX",71:"get current directory (ds:si) for drive DL",72:"allocate memory segment with BX paragraphs",73:"free memory segment ES",74:"resize memory segment ES to BX paragraphs",75:"load program DS:DX using parameter block ES:BX",76:"terminate with return code AL",77:"get return code (al)",78:"find first matching file DS:DX with attributes CX",79:"find next matching file",80:"set current psp BX",81:"get current psp (bx)",
82:"get system variables (es:bx)",83:"translate bpb DS:SI to dpb (es:bp)",84:"get verify flag (al)",85:"create child psp at segment DX",86:"rename file DS:DX to name ES:DI",87:"get(0)/set(1) file date DX and time CX (AL)",88:"get(0)/set(1) memory allocation strategy (AL)",89:"get extended error information",90:"create temporary file DS:DX with attributes CX",91:"create file DS:DX with attributes CX",92:"lock(0)/unlock(1) file BX region CX:DX length SI:DI (AL)"}};k=Gl.prototype;
k.oc=function(a,b,c){this.qa=b;this.T=c;this.Ha=a;this.zm=db(a,"FDC");this.xk=db(a,"HDC");this.Gf=Pl;80186<=this.T.Ia&&(this.Gf=Pl.slice(),this.Gf[15]=$,80286<=this.T.Ia&&(this.Gf[15]=Ol));Wc(this.T,33,this,this.Gn);this.Ta();if(this.Lj){a=Jl(this,this.Lj);delete this.Lj;for(var d in a)Tl(this,a[d])}};
k.zb=function(a,b,c,d){var e=this;switch(c){case "debugInput":return this.Uf=this.xa[c]=d,d.onkeypress=function(a){if(13==a.keyCode){var b=d.value;d.value="";var c=Jl(e,b,!0);for(b in c)Tl(e,c[b]);a.preventDefault&&a.preventDefault()}},!0;case "debugEnter":return this.xa[c]=d,Aa(d,function(){if(e.Uf){var a=e.Uf.value;e.Uf.value="";var b=Jl(e,a,!0);for(a in b)Tl(e,b[a]);return!0}return!1}),!0;case "step":return this.xa[c]=d,Aa(d,function(a){var b=!1;$a(e,!0)||(Za(e,!0),b=e.xf(a?1:0),Za(e,!1));return b}),
k.zb=function(a,b,c,d){var e=this;switch(c){case "debugInput":return this.Uf=this.ya[c]=d,d.onkeypress=function(a){if(13==a.keyCode){var b=d.value;d.value="";var c=Jl(e,b,!0);for(b in c)Tl(e,c[b]);a.preventDefault&&a.preventDefault()}},!0;case "debugEnter":return this.ya[c]=d,Aa(d,function(){if(e.Uf){var a=e.Uf.value;e.Uf.value="";var b=Jl(e,a,!0);for(a in b)Tl(e,b[a]);return!0}return!1}),!0;case "step":return this.ya[c]=d,Aa(d,function(a){var b=!1;$a(e,!0)||(Za(e,!0),b=e.xf(a?1:0),Za(e,!1));return b}),
!0}return!1};k.Nd=function(){this.Uf&&this.Uf.focus()};function mi(a,b,c){for(var d in Kl)if(b==Kl[d]){a.Yh[d]=c;break}}function E(a,b){return(a.ic&b)===b}
function Zc(a,b,c){if(16!=b&&21!=b&&22!=b&&26!=b&&28!=b){var d=a.T.H>>8,e=Sl[b];if(e=e&&e[d]||""){var f=a.T;a.ib[Z[0]]=t(f.H&255);a.ib[Z[1]]=t(f.J&255);a.ib[Z[2]]=t(f.K&255);a.ib[Z[3]]=t(f.C&255);a.ib[Z[4]]=t(f.H>>8);a.ib[Z[5]]=t(f.J>>8);a.ib[Z[6]]=t(f.K>>8);a.ib[Z[7]]=t(f.C>>8);a.ib[Z[8]]=v(f.H);a.ib[Z[9]]=v(f.J);a.ib[Z[10]]=v(f.K);a.ib[Z[11]]=v(f.C);a.ib[Z[12]]=v(f.Y);a.ib[Z[13]]=v(f.I);a.ib[Z[14]]=v(f.G);a.ib[Z[15]]=v(f.F);a.ib[Z[16]]=v(f.Za.sa);a.ib[Z[17]]=v(f.wa.sa);a.ib[Z[18]]=v(f.tb.sa);a.ib[Z[19]]=
v(f.yb.sa);a.ib[Z[20]]=v(f.ua);e=" "+ka(a.ib,e)}a.message("INT 0x"+t(b)+": AH="+t(d)+" at "+da(c-a.T.wa.Xa,a.T.wa.sa)+e)}}function ad(a,b,c,d,e){32>b&&16!=b&&21!=b&&22!=b&&26!=b&&28!=b&&a.message("INT 0x"+t(b)+"("+c+"): C="+(md(a.T)?1:0)+(e||"")+" (cycles="+d+")")}
@ -700,7 +700,7 @@ function uj(a,b,c,d){function e(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0}var f=[],
function fm(a,b,c){for(var d=[],e=$l(a,b),f=0;f<a.uc.length;f++){var h=a.uc[f][0],g=a.uc[f][1];if(e>=h&&e<h+g){b=ma(a.uc[f][3],[b[0]],function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0});0<=b?lm(a,f,b,d):c&&(b=~b,lm(a,f,b-1,d),lm(a,f,b,d));break}}return d}function lm(a,b,c,d){var e={},f=a.uc[b][3],h=0,g=null;0<=c&&c<f.length&&(h=f[c][0],g=f[c][1]);g&&(e=a.uc[b][2][g],g="."==g.charAt(0)?null:e.l||g);d.push(g);d.push(h);d.push(e.a);d.push(e.c)}
function mm(a,b){if("?"==b)a.ea("\nfrequency commands:"),a.ea("\tclear\tclear all frequency counts");else{var c,d=0;if(a.Sc)if("clear"==b){for(c=0;c<a.Sc.length;c++)a.Sc[c]=[c,0];a.ea("frequency data cleared");d++}else if(void 0!==b)a.ea("unknown frequency command: "+b),d++;else{var e=a.Sc.slice();e.sort(function(a,b){return b[1]-a[1]});for(c=0;c<e.length;c++){var f=e[c][0],h=e[c][1];h&&(a.ea((Ml[a.Gf[f][0]]+" ").substr(0,5)+" ("+t(f)+"): "+h+" times"),d++)}}d||a.ea("no frequency data available")}}
function nm(a,b){if("l"==b[0]&&void 0===b[1]||"?"==b[1])a.ea("\nlist/load commands:"),a.ea("\tl [address] [drive #] [sector #] [# sectors]"),a.ea("\tln [address] lists symbol(s) nearest to address");else{var c=[],d,e=0,f=0,h=!1;if("json"==b[1])h=!0;else if(d="ln"==b[0],c=jm(a,b[1],d?1:2),d){c=fm(a,c,!0);c.length?(c[0]&&a.ea(v(c[1])+": "+c[0]),4<c.length&&c[4]&&a.ea(v(c[5])+": "+c[4])):a.ea("no symbols");return}d=km(a,b[2],"drive #");if(void 0!==d){if(!h){e=km(a,b[3],"sector #");if(void 0===e)return;
f=km(a,b[4],"# of sectors");void 0===f&&(f=1)}var g=a.zm;2<=d&&a.xk&&(d-=2,g=a.xk);if(g){var l=g.kk(d);if(l)if(l.ya)if(h)a.ea(hl(l.ya));else if(g.Xl(l,e,f)){for(var n=0,p=!1,e=bm(c);!p&&0<l.ab--;)(function(a,b){g.rc(l,function(c){0>c?(a.ea("out of data at address "+bm(b)),p=!0):(a.Md(b,c,1),n++)})})(a,c);a.ea(n+" bytes read at "+e)}else a.ea("sector "+e+" request out of range");else a.ea("drive "+d+" not loaded");else a.ea("invalid drive: "+d)}else a.ea("disk controller not present")}}}
f=km(a,b[4],"# of sectors");void 0===f&&(f=1)}var g=a.zm;2<=d&&a.xk&&(d-=2,g=a.xk);if(g){var l=g.kk(d);if(l)if(l.xa)if(h)a.ea(hl(l.xa));else if(g.Xl(l,e,f)){for(var n=0,p=!1,e=bm(c);!p&&0<l.ab--;)(function(a,b){g.rc(l,function(c){0>c?(a.ea("out of data at address "+bm(b)),p=!0):(a.Md(b,c,1),n++)})})(a,c);a.ea(n+" bytes read at "+e)}else a.ea("sector "+e+" request out of range");else a.ea("drive "+d+" not loaded");else a.ea("invalid drive: "+d)}else a.ea("disk controller not present")}}}
function Vl(a,b,c){if(b&&"?"==b[1])a.ea("\nregister commands:"),a.ea("\tr\t\tdisplay all registers"),a.ea("\tr [target=#]\tmodify target register"),a.ea("supported targets:"),a.ea("\tall registers and flags V,D,I,S,Z,A,P,C");else{var d=!0,e;if(null!=b&&1<b.length){var f=b[1];if("p"==f)e=void 0!==a.T.xc;else{d=!1;c=null;var h=f.indexOf("=");if(0<h)c=f.substr(h+1),f=f.substr(0,h);else if(2<b.length)c=b[2];else{a.ea("missing value for "+b[1]);return}b=parseInt(c,16);if(isNaN(b)){a.ea("invalid value: "+
c);return}f=f.toUpperCase();switch(f){case "AL":a.T.H=a.T.H&65280|b&255;break;case "AH":a.T.H=a.T.H&255|b<<8&255;break;case "AX":a.T.H=b&65535;break;case "BL":a.T.C=a.T.C&65280|b&255;break;case "BH":a.T.C=a.T.C&255|b<<8&255;break;case "BX":a.T.C=b&65535;break;case "CL":a.T.J=a.T.J&65280|b&255;break;case "CH":a.T.J=a.T.J&255|b<<8&255;break;case "CX":a.T.J=b&65535;break;case "DL":a.T.K=a.T.K&65280|b&255;break;case "DH":a.T.K=a.T.K&255|b<<8&255;break;case "DX":a.T.K=b&65535;break;case "SP":a.T.Y=b&65535;
break;case "BP":a.T.I=b&65535;break;case "SI":a.T.G=b&65535;break;case "DI":a.T.F=b&65535;break;case "DS":id(a.T,b);break;case "ES":kd(a.T,b);break;case "SS":jd(a.T,b);break;case "CS":d=!0;hd(a.T,b);a.Dc=[a.T.ua,a.T.wa.sa,void 0];break;case "IP":d=!0;K(a.T,b);a.Dc=[a.T.ua,a.T.wa.sa,void 0];break;case "PC":Tc(a.T,b);break;case "C":b?xd(a.T):sd(a.T);break;case "P":b?(f=a.T,nd(f)||(f.la^=1)):(f=a.T,nd(f)&&(f.la^=1));break;case "A":b?yd(a.T):td(a.T);break;case "Z":b?zd(a.T):ud(a.T);break;case "S":b?Ad(a.T):
@ -740,7 +740,7 @@ function ym(a,b){if(ua("There may be a problem with your PCjs machine.\n\nTo hel
function pm(a,b,c){var d,e="none",f=new I(a,"1.15.8"),h=new I(a,"1.15.8","validate"),g=pa();h.set("timestamp",g);f.set("timestamp",g);f.set("version","1.15.8");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.T&&a.T.Wb&&(c&&a.T.wb(),d=a.T.Wb(b,c),"object"===typeof d&&f.set(a.T.id,d),c&&(a.T.pa.Kb=!1,!1===d&&(e=null)));for(var g=Va(a.id),l=0;l<g.length;l++){var n=g[l];n.pa.Kb&&(n.Wb&&(d=n.Wb(b,c),"object"===typeof d&&f.set(n.id,d)),c&&(n.pa.Kb=!1,
!1===d&&(e=null)))}e&&(c?(g=d=!1,b?(a.Qc&&Am(a,a.Qc,f.toString()),sm(h)&&sm(f)||(e=null,d=g=!0)):a.Pc&&(d=!0,g=3==a.Pc),d&&f.clear(g)):e=f.toString());c&&(a.pa.Kb=!1);return e}k.reset=function(){this.qa&&this.qa.reset&&(this.Ra("Resetting "+this.qa.type,!0),this.qa.reset());for(var a=Va(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.qa&&c.reset&&(this.Ra("Resetting "+c.type,!0),c.reset())}};
k.start=function(a,b){for(var c=Va(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=Va(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
k.zb=function(a,b,c,d){var e=this;switch(c){case "save":return this.xa[c]=d,d.onclick=function(){var a=vm(e,!0);if(a){var b=!(!e.Pc||e.Nh),c=pm(e,b);b?Am(e,a,c):e.Ka("Resume disabled, machine state not saved")}},!0;case "reset":return this.xa[c]=d,d.onclick=function(){Tb(e)},!0}return!1};
k.zb=function(a,b,c,d){var e=this;switch(c){case "save":return this.ya[c]=d,d.onclick=function(){var a=vm(e,!0);if(a){var b=!(!e.Pc||e.Nh),c=pm(e,b);b?Am(e,a,c):e.Ka("Resume disabled, machine state not saved")}},!0;case "reset":return this.ya[c]=d,d.onclick=function(){Tb(e)},!0}return!1};
function vm(a,b){var c=a.Qc;c||(c=wa("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 Jeff@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=Bm(a,c))||a.Ka("Your user ID has not been approved."))):b&&a.Ka("Browser local storage is not available"));return c}
function Bm(a,b){a.Qc=null;var c=sa(ta()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(xa("user",c.data),a.Qc=c.data)}catch(e){x(e.message+" ("+d+")")}return a.Qc}
function Am(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=qm(a,"1.15.8");d.data=c;b=sa(ta()+"/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.Ka("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.Ka(c),xa("user",""),a.Qc=null)}}

View file

@ -1,7 +1,7 @@
(function(){var h,ba,k;function p(a,b){var c="";void 0===b?b=8:8<b&&(b=8);if(isNaN(a))for(;0<b--;)c="?"+c;else for(;0<b--;){var d=a&15,d=d+(0<=d&&9>=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function ca(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));b&&(d=c.lastIndexOf("."),0<d&&(c=c.substring(0,d)));return c}function da(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}var ea={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};
function fa(a){return a.replace(/[&<>"']/g,function(a){return ea[a]})}function ga(){return Date.now()||+new Date}function ha(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}var ia=[31,28,31,30,31,30,31,31,30,31,30,31],ja;
function r(a,b,c,d,e,f){b=!!b;var l=0,g=null,m=ca(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(g=n.responseText,200==n.status||!n.status&&g.length&&"file:"==(window?window.location.protocol:"file:")||(l=n.status||-1),e&&(d?e.call(d,m,g,l,f):e(m,g,l,f)))});if(c){var q="",v;for(v in c)c.hasOwnProperty(v)&&(q&&(q+="&"),q+=v+"="+encodeURIComponent(c[v]));q=q.replace(/%20/g,"+");n.open("POST",a,
b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded");n.send(q)}else n.open("GET",a,b),n.send();a=[];b||(g=n.responseText,200!=n.status&&(l=n.status||-1),e&&(d?e.call(d,m,g,l,f):e(m,g,l,f)),a=[l,g]);return a}function ka(){return"http://"+(window?window.location.host:"www.pcjs.org")}function t(a){window?window.alert(a):console.log(a)}function la(a){var b=!1;window&&(b=window.confirm(a));return b}
b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded");n.send(q)}else n.open("GET",a,b),n.send();a=[];b||(g=n.responseText,200!=n.status&&(l=n.status||-1),e&&(d?e.call(d,m,g,l,f):e(m,g,l,f)),a=[l,g]);return a}function ka(){return"http://"+(window?window.location.host:"www.pcjs.org")}function t(a){window&&window.alert(a)}function la(a){var b=!1;window&&(b=window.confirm(a));return b}
function ma(){if(void 0===ja){var a;try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"===window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}ja=a}return ja}function na(a){var b;try{b=window.localStorage.getItem(a)}catch(c){}return b}function oa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}
function pa(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var qa={init:[],show:[],exit:[]},ra=!1,sa=!0;function ua(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function u(a){qa.init.push(a)}
function va(a){if(sa)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){t("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to Jeff@pcjs.org. Thanks.")}}function wa(a){!sa&&a?(sa=!0,ra&&xa("init")):sa=a}function xa(a){qa[a]&&va(qa[a])}ua("onload",function(){ra=!0;va(qa.init)});ua("onpageshow",function(){va(qa.show)});ua(pa("Opera")||pa("iOS")?"onunload":"onbeforeunload",function(){va(qa.exit)});
@ -607,8 +607,8 @@ v;a.Bb(0|d);break;case 5:a.Bb(0|d);break;case 8:a.wh(s,function(b){a.Bb(b|d)});b
h.vh=function(a,b){return void 0!==b&&0<=b?this.zc(a,b):-1};h.rl=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Wa<a.ve.length?a.ve[a.Wa++]=c:(a.errorCode=20,c=-1)):c=-1;return c};h.sl=function(a,b){return void 0!==b&&0<=b?this.aj(a,b):-1};h.wh=function(a,b){a.errorCode=4;if(a.sa&&(a.La=null,this.ia)){a.errorCode=0;Qh(this.ia,3,this,"dmaRead",a);Mh(this.ia,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
h.xh=function(a,b){a.errorCode=4;if(a.sa&&(a.La=null,this.ia)){a.errorCode=0;Qh(this.ia,3,this,"dmaWrite",a);Mh(this.ia,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function bk(a,b,c){b.errorCode=4;b.ve&&b.ve.length==b.bb||(b.ve=Array(b.bb));b.Wa=0;a.ia?(b.errorCode=0,Qh(a.ia,3,a,"dmaWriteBuffer",b),Mh(a.ia,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
h.tj=function(a,b){a.errorCode=4;if(a.sa&&(a.La=null,this.ia)){a.ae=0;a.hc=Array(4);a.Ye=!0;a.cf=0;a.errorCode=0;Qh(this.ia,3,this,"dmaWriteFormat",a);Mh(this.ia,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Ye=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
h.wc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.La&&(d=Gj(a.La,a.Wa),a.Wa+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;a.sa.seek(a.Nd,a.Ka,a.Ta+a.gg,!1,function(c,d){var m=-1;(a.La=c)?(a.Wa=0,f.Ve(a),m=Gj(a.La,a.Wa),a.Wa+=e):a.errorCode=20;b(m,d)})}return d};
h.zc=function(a,b){if(a.errorCode)return-1;do{if(a.La&&a.sa.write(a.La,a.Wa++,b))break;a.sa.seek(a.Nd,a.Ka,a.Ta+a.gg,!0,function(b){a.La=b});if(!a.La){a.errorCode=20;b=-1;break}a.Wa=0;this.Ve(a)}while(1);return b};h.Ve=function(a){a.Ta++;var b=1-a.gg;a.Ta>=a.Nb+b&&(a.Ta=b,a.Ka++,a.Ka>=a.Fb&&(a.Ka=0,a.Nd++))};
h.wc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.La&&(d=Gj(a.La,a.Wa),a.Wa+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;if(a.sa)return a.sa.seek(a.Nd,a.Ka,a.Ta+a.gg,!1,function(c,g){(a.La=c)?(a.Wa=0,f.Ve(a),d=Gj(a.La,a.Wa),a.Wa+=e):a.errorCode=20;b(d,g)}),d;a.errorCode=20;b(d,!1)}return d};
h.zc=function(a,b){if(a.errorCode)return-1;do{if(a.La&&a.sa.write(a.La,a.Wa++,b))break;a.sa&&a.sa.seek(a.Nd,a.Ka,a.Ta+a.gg,!0,function(b){a.La=b});if(!a.La){a.errorCode=20;b=-1;break}a.Wa=0;this.Ve(a)}while(1);return b};h.Ve=function(a){a.Ta++;var b=1-a.gg;a.Ta>=a.Nb+b&&(a.Ta=b,a.Ka++,a.Ka>=a.Fb&&(a.Ka=0,a.Nd++))};
h.aj=function(a,b){if(a.errorCode)return-1;a.hc[a.ae++]=b;if(a.ae==a.hc.length){a.Nd=a.hc[0];a.Ka=a.hc[1];a.Ta=a.hc[2];a.bb=128<<a.hc[3];for(var c=a.ae=0;c<a.bb;c++)if(0>this.zc(a,a.kj))return-1;a.cf++}a.cf>=a.sd&&(b=-1);return b};
var Uj={800:Z.prototype.Dm,801:Z.prototype.Em,802:Z.prototype.Cm},Tj={496:Z.prototype.Pl,497:Z.prototype.Rl,498:Z.prototype.Sl,499:Z.prototype.Tl,500:Z.prototype.Ol,501:Z.prototype.Nl,502:Z.prototype.Ql,503:Z.prototype.Ul},Wj={800:Z.prototype.Kn,801:Z.prototype.Nn,802:Z.prototype.Mn,803:Z.prototype.Ln,807:Z.prototype.Oi,811:Z.prototype.Oi,815:Z.prototype.Oi},Vj={496:Z.prototype.$m,497:Z.prototype.en,498:Z.prototype.cn,499:Z.prototype.dn,500:Z.prototype.Zm,501:Z.prototype.Ym,502:Z.prototype.an,503:Z.prototype.Xm,
1014:Z.prototype.bn};u(function(){for(var a=C(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Z(d);B(d,c)}});var Oc=8;function H(a,b,c){this.id=a.id;this.key=ck(a,b,c);this.Pa=a.Pa;dk(this,a.On)}function ck(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}