Added support for keyboard lock LEDs
This commit is contained in:
parent
7737a9ca0a
commit
501649f67b
37 changed files with 1970 additions and 1829 deletions
|
|
@ -9,96 +9,96 @@ function xa(){if(void 0===ra){var a;try{window.localStorage.setItem("PCjs.localS
|
|||
function Aa(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 Ba(a,b,c){function d(){a-=1;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}
|
||||
function Ca(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 Da={init:[],show:[],exit:[]},Ea=!1,Fa=!0;function Ga(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Ha(a){Da.init.push(a)}
|
||||
function Ia(a){if(Fa)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 support@pcjs.org. Thanks.")}}function Ja(a){!Fa&&a?(Fa=!0,Ea&&Ka("init")):Fa=a}function Ka(a){Da[a]&&Ia(Da[a])}Ga("onload",function(){Ea=!0;Ia(Da.init)});Ga("onpageshow",function(){Ia(Da.show)});Ga(Aa("Opera")||Aa("iOS")?"onunload":"onbeforeunload",function(){Ia(Da.exit)});
|
||||
function z(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.rk=b.comment;this.ap=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.Kk=this.id.substr(0,b),this.xh=this.id.substr(b+1)):this.xh=this.id;this[a]=c;this.qa={sh:!1,Bc:!1,yi:!1,Ob:!1,Zc:!1};this.Gi=null;this.qa.Zc=!1;this.ya={};this.fa=null;Ma[Ma.length]=this}var Na=void 0,Oa={};
|
||||
if(window){Na||(Na=window.location.search.substr(1));for(var Ra,Sa=/\+/g,Ta=/([^&=]+)=?([^&]*)/g;Ra=Ta.exec(Na);)Oa[decodeURIComponent(Ra[1].replace(Sa," "))]=decodeURIComponent(Ra[2].replace(Sa," "))}function Ua(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=Ua(a.prototype)}var Ma=[];
|
||||
function Va(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<Ma.length;b++){var d=Ma[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<Ma.length;c++)if(Ma[c].id===a)return Ma[c]}return null}
|
||||
function Ya(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<Ma.length;d++)if(c)c==Ma[d]&&(c=null);else if(!(a!=Ma[d].type||b&&Ma[d].id.indexOf(b)))return Ma[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}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);
|
||||
function Za(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 g=f[e];if(g.nodeType===window.document.ELEMENT_NODE){var h=g.getAttribute("class");if(h){var l,n;n=h.split(" ");for(l=0;l<n.length;l++)switch(h=n[l],h){case "pcjs-input":case "pcjs-output":(n=C(g))&&n.binding&&a.Fb(h,n.type,n.binding,g),n=[]}}}}}}
|
||||
function z(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.rk=b.comment;this.bp=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.Lk=this.id.substr(0,b),this.yh=this.id.substr(b+1)):this.yh=this.id;this[a]=c;this.qa={th:!1,Ec:!1,zi:!1,Qb:!1,ad:!1};this.Hi=null;this.qa.ad=!1;this.wa={};this.fa=null;La[La.length]=this}var Na=void 0,Oa={};
|
||||
if(window){Na||(Na=window.location.search.substr(1));for(var Pa,Sa=/\+/g,Ta=/([^&=]+)=?([^&]*)/g;Pa=Ta.exec(Na);)Oa[decodeURIComponent(Pa[1].replace(Sa," "))]=decodeURIComponent(Pa[2].replace(Sa," "))}function Ua(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=Ua(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}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);
|
||||
function Za(a,b){for(var c=D(b.parentNode,"pcjs-control"),d=0;d<c.length;d++)for(var e=c[d].childNodes,f=0;f<e.length;f++){var g=e[f];if(g.nodeType===window.document.ELEMENT_NODE){var h=g.getAttribute("class");if(h)for(var l=h.split(" "),n=0;n<l.length;n++)switch(h=l[n],h){case "pcjs-input":case "pcjs-output":(n=C(g))&&n.binding&&a.Db(h,n.type,n.binding,g),n=l.length}}}}
|
||||
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}
|
||||
z.prototype={toString:function(){return this.name?this.name:this.id||this.type},Fb: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.ag=this.ya[c]=d,d.value="",this.da=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.Ja=
|
||||
function(a,b,c){this.da(a,"notice",c)}),!0;default:return!1}},log:function(){},da:function(){},status:function(a){this.da(this.xh+": "+a)},Ja:function(a,b){b||x(a)},Ta:function(a){this.qa.Zc||(this.qa.sh=!1!==a,this.qa.sh&&(this.name&&this.log("ready"),a=this.Gi,this.Gi=null,a&&a()))},Zb:function(){return this.qa.Ob=!0},Yb:function(a,b){b&&(this.qa.Ob=!1);return!0}};
|
||||
function $a(a,b){if(a.qa.yi)return a.qa.Bc&&(a.qa.Bc=!1),a.qa.yi=!1;if(a.qa.Zc)return a.da(a.toString()+" error"),!1;a.qa.Bc=b;return a.qa.Bc}function ab(a,b){a.qa.Bc&&(b?a.qa.yi=!0:void 0===b&&a.da(a.toString()+" busy"));return a.qa.Bc}function bb(a,b){b&&(a.qa.sh?b():a.Gi=b);return a.qa.sh}function cb(a,b){a.qa.Zc=!0;a.Ja("Fatal error: "+b)}function db(a){z.call(this,"Panel",a,db)}A(z,db);
|
||||
db.prototype.Fb=function(a,b,c,d){return this.Ka&&this.Ka.Fb(a,b,c,d)||this.T&&this.T.Fb(a,b,c,d)||this.Va&&this.Va.Fb(a,b,c,d)||this.fa&&this.fa.Fb(a,b,c,d)?!0:z.prototype.Fb.call(this,a,b,c,d)};db.prototype.oc=function(a,b,c,d){this.Ka=a;this.T=c;this.fa=d;this.Va=eb(a,"Keyboard")};db.prototype.Zb=function(a,b){b||fb();return!0};db.prototype.Yb=function(){return!0};
|
||||
function fb(){for(var a=!1,b=D(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=C(d),f=Wa(e.id);f||(a=!0,f=new db(e));Za(f,d);a&&f.Ta()}}Ha(fb);function gb(a,b,c){z.call(this,"Bus",a,gb);this.T=b;this.fa=c;this.jg=a.buswidth||20;this.Of=this.ed=(1<<this.jg)-1;this.wb=20>=this.jg?12:14;this.fc=1<<this.wb;this.nk=this.fc>>2;this.ib=this.fc-1;this.dh=(this.Of+this.fc)/this.fc|0;this.Ee=this.dh-1;this.ud=[];this.vd=[];this.fg=this.gg=!1;this.Mi();this.Ta()}A(z,gb);
|
||||
gb.prototype.Mi=function(){this.Fa=Array(this.dh);for(var a=0;a<this.dh;a++){var b=a*this.fc;hb(this.Fa[a]=new ib(b),this.T,this.fa,b,this.fc)}this.T.Mi(this.Fa,this.Of,this.wb,this.ib,this.Ee);this.T.Ae=this.ed};gb.prototype.reset=function(){jb(this,!0)};gb.prototype.Zb=function(a,b){b||this.reset();return!0};
|
||||
function kb(a,b,c,d,e){if(!(b&a.ib||!c||c&a.ib)){for(var f=b>>a.wb;0<c&&f<a.Fa.length;){var g=a.Fa[f];if(void 0!==g&&g.size)return lb(1,b,c);b=f*a.fc;g=a.Fa[f++]=new ib(b,a.fc,d,e);hb(g,a.T,a.fa,b,a.fc);c-=a.fc}return!0}return lb(2,b,c)}function jb(a,b){if(void 0!==b&&20<a.jg){var c=a.ed&-1048577|(b?1048576:0);c!=a.ed&&(a.ed=c,a.T&&(a.T.Ae=c))}}
|
||||
gb.prototype.Th=function(a,b,c){if(!(a&this.ib||!b||b&this.ib)){for(var d=a>>this.wb;0<b;){var e=this.Fa[d];if(!e.ia)return lb(5,a,b);e.Ye(c);b-=this.fc;d++}return!0}return lb(3,a,b)};function mb(a,b,c){if(!(b&a.ib||!c||c&a.ib)){for(var d=b>>a.wb;0<c;)b=d*a.fc,hb(a.Fa[d++]=new ib(b),a.T,a.fa,b,a.fc),c-=a.fc;return!0}return lb(4,b,c)}function nb(a,b){return a.Fa[(b&a.ed)>>a.wb].Dg(b&a.ib)}
|
||||
function ob(a,b){var c=b&a.ib,d=(b&a.ed)>>a.wb;return c!=a.ib?a.Fa[d].Oj(c):a.Fa[d++].Dg(c)|a.Fa[d&a.Ee].Dg(0)<<8}function pb(a,b,c){a.Fa[(b&a.ed)>>a.wb].Kg(b&a.ib,c&255)}function qb(a,b,c){var d=b&a.ib;b=(b&a.ed)>>a.wb;d!=a.ib?a.Fa[b].Xj(d,c&65535):(a.Fa[b++].Kg(d,c&255),a.Fa[b&a.Ee].Kg(0,c>>8&255))}
|
||||
function rb(a){for(var b=0,c=[],d=0;d<a.dh;d++){var e=a.Fa[d];if(e.ob||e.zk){c[b++]=d;var f=c,g=b++;a:if(e=e.save()){for(var h=0,l=0,n=[];h<e.length;){for(var q=e[h],r=h+1;r<e.length&&e[r]===q;)r++;n[l++]=r-h;n[l++]=q;h=r}if(n.length<e.length){e=n;break a}}f[g]=e}}c[b]=a.Of==a.ed;return c}function sb(a,b){if(void 0===b)return a.fg=!a.fg,a.fg;void 0===a.ud[b]&&(a.ud[b]=[null,null,!1]);a.ud[b][2]=!a.ud[b][2];return a.ud[b][2]}
|
||||
function tb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,l=c[e];if(void 0!==l)for(var n=e+d;n<=g;n++)void 0!==f.ud[n]?x("Input port "+v(n)+" registered by "+f.ud[n][0].id+", ignoring "+h.id):f.ud[n]=[h,l,!1,!1]}}function ub(a,b,c){var d=255,e=a.ud[b];void 0!==e?(e[1]&&(d=e[1].call(e[0],b,c)),a.fa&&a.fg!=e[2]&&vb(a.fa,b,d)):a.fa&&(a.fa.ea(a,b,null,c),a.fg&&vb(a.fa,b,d));return d}
|
||||
function wb(a,b){if(void 0===b)return a.gg=!a.gg,a.gg;void 0===a.vd[b]&&(a.vd[b]=[null,null,!1]);a.vd[b][2]=!a.vd[b][2];return a.vd[b][2]}function zb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,l=c[e];if(void 0!==l)for(var n=e+d;n<=g;n++)void 0!==f.vd[n]?x("Output port "+v(n)+" registered by "+f.vd[n][0].id+", ignoring "+h.id):f.vd[n]=[h,l,!1,!1]}}
|
||||
function Ab(a,b,c,d){var e=a.vd[b];void 0!==e?(e[1]&&e[1].call(e[0],b,c,d),a.fa&&a.gg!=e[2]&&Bb(a.fa,b,c)):a.fa&&(a.fa.ea(a,b,c,d),a.gg&&Bb(a.fa,b,c))}function lb(a,b,c){x("Memory block error ("+a+","+p(b)+","+p(c)+")");return!1}
|
||||
function ib(a,b,c,d){this.um=b||0;this.wa=null;this.offset=0;this.rh=c;this.ia=null;this.ob=this.zk=!1;if(b)if(d)this.ia=d,a=[d.fd,a-d.Ua],this.wa=a[0],this.offset=a[1],this.Ye(d.Qf);else{this.wa=Array(b>>2);for(d=0;d<this.wa.length;d++)this.wa[d]=0;this.Ye(Cb)}else this.Ye()}
|
||||
ib.prototype={Nh:function(a){E(this.fa,Db)&&!a&&this.fa.message("attempt to read invalid block %"+p(this.Zd)+" from "+ea(this.T.va,this.T.xa.sa));return 0},Gf:function(a,b){E(this.fa,Db)&&!a&&this.fa.message("attempt to write 0x"+v(b)+" to invalid block %"+p(this.Zd)+" from "+ea(this.T.va,this.T.xa.sa))},dp:function(a){return this.wa[a>>2]>>>((a&3)<<3)&255},fp:function(a){var b=a>>2;a=(a&3)<<3;var c=this.wa[b]>>>a;return 24>a?c&65535:c&255|(this.wa[b+1]&255)<<8},np:function(a,b){var c=a>>2,d=(a&3)<<
|
||||
3;this.wa[c]=this.wa[c]&~(255<<d)|b<<d;this.ob=!0},pp:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.wa[c]=this.wa[c]&~(65535<<d)|b<<d:(this.wa[c]=this.wa[c]&16777215|b<<24,c++,this.wa[c]=this.wa[c]&4294967040|b>>8);this.ob=!0},cp:function(a){Eb(this.fa,this.Zd+a);return this.Dg(a)},ep:function(a){Eb(this.fa,this.Zd+a)||Eb(this.fa,this.Zd+a+1);return this.Oj(a)},mp:function(a,b){Fb(this.fa,this.Zd+a);this.Kg(a,b)},op:function(a,b){Fb(this.fa,this.Zd+a)||Fb(this.fa,this.Zd+a+1);this.Xj(a,b)},save:function(){return this.ia?
|
||||
null:this.wa},restore:function(a){return this.ia?null==a:a&&this.um==a.length<<2?(this.wa=a,this.ob=!0):!1},Ye:function(a,b){a||(a=[]);void 0===b&&(b=!0);Gb(this,a,b);Hb(this,a,b)},Yd:function(a,b){b?0===this.pk++&&Hb(this,Ib):0===this.ok++&&Gb(this,Ib)}};function Jb(a,b){b?0===--a.pk&&(a.Ec=a.rh?a.Gf:a.Kg,a.lm=a.rh?a.Gf:a.Xj):0===--a.ok&&(a.rc=a.Dg,a.Yl=a.Oj)}function hb(a,b,c,d,e){a.T=b;a.fa=c;a.Zd=d;a.ok=a.pk=0;a.fa&&Kb(a.fa,d,e)}
|
||||
function Hb(a,b,c){a.Ec=b[2]&&!a.rh?b[2]:a.Gf;a.lm=b[3]&&!a.rh?b[3]:a.Gf;c&&(a.Kg=b[2]?b[2]:a.Gf,a.Xj=b[3]?b[3]:a.Gf)}function Gb(a,b,c){a.rc=b[0]?b[0]:a.Nh;a.Yl=b[1]?b[1]:a.Nh;c&&(a.Dg=b[0]?b[0]:a.Nh,a.Oj=b[1]?b[1]:a.Nh)}var Cb=[ib.prototype.dp,ib.prototype.fp,ib.prototype.np,ib.prototype.pp],Ib=[ib.prototype.cp,ib.prototype.ep,ib.prototype.mp,ib.prototype.op];
|
||||
function Lb(a,b){z.call(this,"CPU",a,Lb);var c=a.cycles||b,d=a.multiplier||1;this.ca={};this.ca.Kd=c;this.ca.Jd=d;this.ca.Ah=Math.round(this.ca.Kd/1E4)/100;this.ca.Oe=this.ca.Ah*this.ca.Jd;this.qa.Ob=!1;this.qa.Pb=!1;this.qa.xi=a.autoStart;c=Oa.autostart;void 0!==c&&(this.qa.xi="true"==c?!0:"false"==c?!1:null);this.qa.mf=!1;this.ca.kg=this.ca.xf=0;this.ca.mg=a.csStart;this.ca.wf=a.csInterval;this.ca.yf=a.csStop;var e=this;this.eo=function(){e.Ue()};this.Ta()}A(z,Lb);k=Lb.prototype;
|
||||
k.oc=function(a,b,c,d){this.ra=b;this.fa=d;this.Ka=a;var e=eb(a,"Video");e&&(this.si=function(){Mb(e)},this.Pd=function(){e.Pd()});this.oa=eb(a,"ChipSet");this.Ta()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.Zb=function(a,b){if(!b){if(a&&this.restore){Nb(this);if(!this.restore(a))return!1;Ob(this)}else this.reset();this.fa?this.fa.Ln():this.da("No debugger detected")}this.qa.Ob=!0;!Pb(this)&&this.fa&&Rb(this.fa);Sb(this);return!0};
|
||||
k.Yb=function(a){this.qa.Ob=!1;return a&&this.save?this.save():!0};function Pb(a){return!0===a.qa.xi||null===a.qa.xi&&!a.fa&&void 0===a.ya.run?(a.Ue(),!0):!1}k.Pd=function(){};k.Gk=function(){return 0};function Ob(a){void 0===a.ca.mg&&(a.ca.mg=0);void 0===a.ca.wf&&(a.ca.wf=-1);void 0===a.ca.yf&&(a.ca.yf=-1);a.qa.mf=0<=a.ca.mg&&0<a.ca.wf;a.qa.mf&&(a.ca.kg=0,a.ca.xf=a.ca.mg-a.Se)}
|
||||
function Tb(a,b){if(a.qa.mf){var c=!1;a.ca.kg=a.ca.kg+a.Gk()|0;a.ca.xf-=b;0>=a.ca.xf&&(a.ca.xf+=a.ca.wf,c=!0);0<=a.ca.yf&&a.ca.yf<=Ub(a)&&(a.ca.wf=a.ca.yf=-1,Ob(a),a.Cb(),c=!0);c&&a.da(Ub(a)+" cycles: checksum="+p(a.ca.kg))}}function F(a,b,c,d){void 0!==a.ya[b]&&(void 0===d&&(d=4),void 0===c&&(cb(a,"Register "+b+" is invalid"),a.Cb()),c=p(c,d),a.ya[b].innerHTML!=c&&(a.ya[b].innerHTML=c))}k.ih=function(){};k.si=function(){};
|
||||
k.Fb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.ya[c]=d;d.onclick=function(){e.qa.Pb?e.Cb(!0):e.Ue(!0)};a=!0;break;case "reset":this.ya[c]=d;d.onclick=function(){e.Ka&&Vb(e.Ka)};a=!0;break;case "speed":this.ya[c]=d;a=!0;break;case "setSpeed":this.ya[c]=d,d.onclick=function(){Wb(e,e.ca.Jd<<1,!0)},d.innerHTML=this.ca.Oe.toFixed(2)+"Mhz",a=!0}return a};function Xb(a,b,c){a.Se+=b;c&&(a.Oc=a.A=0)}
|
||||
function Yb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.ca.Jd&&a.ca.nd&&(d=a.ca.nd/a.ca.Ah);a.ca.Nk=Math.round(1E3/30);a.ca.Xn=Math.floor(a.ca.Kd/c*d);a.ca.Si=Math.floor(a.ca.Kd/30*d);a.ca.Rk=Math.floor(a.ca.Kd/60*d);a.ca.Qk=Math.floor(a.ca.Kd/2*d);b||(a.ca.zf=a.ca.Si,a.ca.og=a.ca.Rk,a.ca.ng=a.ca.Qk);a.ca.Ti=0}function Ub(a,b){var c=a.Se+a.qe+a.Oc-a.A;b&&1<a.ca.Jd&&a.ca.nd>a.ca.Ah&&(c=Math.round(c/a.ca.Jd));return c}function Nb(a){a.ca.nd=0;a.Dh=1;a.Se=a.qe=a.Oc=a.A=0;Ob(a);Wb(a,1)}
|
||||
function Wb(a,b,c){void 0!==b&&(0.8>a.ca.nd/a.ca.Oe&&(b=1),a.ca.Jd=b,b=a.ca.Ah*a.ca.Jd,a.ca.Oe!=b&&(a.ca.Oe=b,b=a.ca.Oe.toFixed(2)+"Mhz",a.ya.setSpeed&&(a.ya.setSpeed.innerHTML=b),a.da("target speed: "+b)),c&&a.Pd());Xb(a,a.qe);a.qe=0;a.ca.vf=oa();a.ca.Pe=0;Yb(a)}
|
||||
k.Ue=function(a){if($a(this,!0)){this.qa.Pb||(Wb(this),this.Ka&&this.Ka.start(this.ca.vf,Ub(this)),this.qa.Pb=!0,this.oa&&Zb(this.oa),this.ya.run&&(this.ya.run.innerHTML="Halt"),a&&this.Pd());this.ca.Ti>=this.ca.Kd&&Yb(this,!0);this.ca.pg=0;this.ca.Bh=oa();this.ca.Pe&&(a=this.ca.Bh-this.ca.Pe,a>this.ca.Nk&&(this.ca.vf+=a,this.ca.vf>this.ca.Bh&&(this.ca.vf=this.ca.Bh)));try{do{this.Ff(this.qa.mf?1:Math.round(this.ca.Xn/this.Dh));var b=this.Oc-this.A;this.qe+=b;this.ca.pg+=b;Xb(this,0,!0);Tb(this,b);
|
||||
this.ca.og-=b;0>=this.ca.og&&(this.ca.og+=this.ca.Rk,this.si());this.ca.ng-=b;0>=this.ca.ng&&(this.ca.ng+=this.ca.Qk,this.ih());this.ca.zf-=b;if(0>=this.ca.zf){this.ca.zf+=this.ca.Si;break}}while(this.qa.Pb)}catch(c){this.Cb();Sb(this);this.Ka&&this.Ka.stop(oa(),Ub(this));$a(this,!1);cb(this,c.message);return}b=setTimeout;a=this.eo;this.ca.Pe=oa();var d=this.ca.Nk;this.ca.pg&&(d=Math.round(d*this.ca.pg/this.ca.Si));var d=d-(this.ca.Pe-this.ca.Bh),e=this.ca.Pe-this.ca.vf;e&&(this.ca.nd=Math.round(this.qe/
|
||||
(10*e))/100,864E5<=e&&(this.Se=0,this.oa&&$b(this.oa,!0),Wb(this)));if(0>d||this.ca.nd<this.ca.Oe)d=0;this.ca.Ti+=this.ca.pg;this.ca.Pe+=d;b(a,d)}else Sb(this),this.Ka&&this.Ka.stop(oa(),Ub(this))};k.Cb=function(a){ab(this,!0);this.Oc-=this.A;this.A=0;Xb(this,this.qe);this.qe=0;this.qa.Pb&&(this.qa.Pb=!1,this.oa&&Zb(this.oa),this.ya.run&&(this.ya.run.innerHTML="Run"));this.qa.nh=a};k.Ff=function(){return 0};function Sb(a){a.si();a.ih()}
|
||||
z.prototype={toString:function(){return this.name?this.name:this.id||this.type},Db:function(a,b,c,d){switch(c){case "clear":return this.wa[c]||(this.wa[c]=d,d.onclick=function(a){return function(){a.wa.print&&(a.wa.print.value="")}}(this)),!0;case "print":return this.wa[c]||(this.$f=this.wa[c]=d,d.value="",this.da=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.Ja=
|
||||
function(a,b,c){this.da(a,"notice",c)}),!0;default:return!1}},log:function(){},da:function(){},status:function(a){this.da(this.yh+": "+a)},Ja:function(a,b){b||x(a)},Ua:function(a){this.qa.ad||(this.qa.th=!1!==a,this.qa.th&&(this.name&&this.log("ready"),a=this.Hi,this.Hi=null,a&&a()))},$b:function(){return this.qa.Qb=!0},Zb:function(a,b){b&&(this.qa.Qb=!1);return!0}};
|
||||
function $a(a,b){if(a.qa.zi)return a.qa.Ec&&(a.qa.Ec=!1),a.qa.zi=!1;if(a.qa.ad)return a.da(a.toString()+" error"),!1;a.qa.Ec=b;return a.qa.Ec}function ab(a,b){a.qa.Ec&&(b?a.qa.zi=!0:void 0===b&&a.da(a.toString()+" busy"));return a.qa.Ec}function bb(a,b){b&&(a.qa.th?b():a.Hi=b);return a.qa.th}function cb(a,b){a.qa.ad=!0;a.Ja("Fatal error: "+b)}function db(a){z.call(this,"Panel",a,db)}A(z,db);
|
||||
db.prototype.Db=function(a,b,c,d){return this.Ka&&this.Ka.Db(a,b,c,d)||this.T&&this.T.Db(a,b,c,d)||this.Ra&&this.Ra.Db(a,b,c,d)||this.fa&&this.fa.Db(a,b,c,d)?!0:z.prototype.Db.call(this,a,b,c,d)};db.prototype.pc=function(a,b,c,d){this.Ka=a;this.T=c;this.fa=d;this.Ra=eb(a,"Keyboard")};db.prototype.$b=function(a,b){b||fb();return!0};db.prototype.Zb=function(){return!0};
|
||||
function fb(){for(var a=!1,b=D(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=C(d),f=Wa(e.id);f||(a=!0,f=new db(e));Za(f,d);a&&f.Ua()}}Ha(fb);function gb(a,b,c){z.call(this,"Bus",a,gb);this.T=b;this.fa=c;this.hg=a.buswidth||20;this.Pf=this.gd=(1<<this.hg)-1;this.zb=20>=this.hg?12:14;this.gc=1<<this.zb;this.nk=this.gc>>2;this.mb=this.gc-1;this.bh=(this.Pf+this.gc)/this.gc|0;this.Ee=this.bh-1;this.vd=[];this.wd=[];this.dg=this.eg=!1;this.Ni();this.Ua()}A(z,gb);
|
||||
gb.prototype.Ni=function(){this.Fa=Array(this.bh);for(var a=0;a<this.bh;a++){var b=a*this.gc;hb(this.Fa[a]=new ib(b),this.T,this.fa,b,this.gc)}this.T.Ni(this.Fa,this.Pf,this.zb,this.mb,this.Ee);this.T.Ae=this.gd};gb.prototype.reset=function(){jb(this,!0)};gb.prototype.$b=function(a,b){b||this.reset();return!0};
|
||||
function kb(a,b,c,d,e){if(!(b&a.mb||!c||c&a.mb)){for(var f=b>>a.zb;0<c&&f<a.Fa.length;){var g=a.Fa[f];if(void 0!==g&&g.size)return lb(1,b,c);b=f*a.gc;g=a.Fa[f++]=new ib(b,a.gc,d,e);hb(g,a.T,a.fa,b,a.gc);c-=a.gc}return!0}return lb(2,b,c)}function jb(a,b){if(void 0!==b&&20<a.hg){var c=a.gd&-1048577|(b?1048576:0);c!=a.gd&&(a.gd=c,a.T&&(a.T.Ae=c))}}
|
||||
gb.prototype.Uh=function(a,b,c){if(!(a&this.mb||!b||b&this.mb)){for(var d=a>>this.zb;0<b;){var e=this.Fa[d];if(!e.ia)return lb(5,a,b);e.Ze(c);b-=this.gc;d++}return!0}return lb(3,a,b)};function mb(a,b,c){if(!(b&a.mb||!c||c&a.mb)){for(var d=b>>a.zb;0<c;)b=d*a.gc,hb(a.Fa[d++]=new ib(b),a.T,a.fa,b,a.gc),c-=a.gc;return!0}return lb(4,b,c)}function nb(a,b){return a.Fa[(b&a.gd)>>a.zb].Bg(b&a.mb)}
|
||||
function ob(a,b){var c=b&a.mb,d=(b&a.gd)>>a.zb;return c!=a.mb?a.Fa[d].Pj(c):a.Fa[d++].Bg(c)|a.Fa[d&a.Ee].Bg(0)<<8}function pb(a,b,c){a.Fa[(b&a.gd)>>a.zb].Ig(b&a.mb,c&255)}function qb(a,b,c){var d=b&a.mb;b=(b&a.gd)>>a.zb;d!=a.mb?a.Fa[b].Yj(d,c&65535):(a.Fa[b++].Ig(d,c&255),a.Fa[b&a.Ee].Ig(0,c>>8&255))}
|
||||
function rb(a){for(var b=0,c=[],d=0;d<a.bh;d++){var e=a.Fa[d];if(e.sb||e.zk){c[b++]=d;var f=c,g=b++;a:if(e=e.save()){for(var h=0,l=0,n=[];h<e.length;){for(var q=e[h],r=h+1;r<e.length&&e[r]===q;)r++;n[l++]=r-h;n[l++]=q;h=r}if(n.length<e.length){e=n;break a}}f[g]=e}}c[b]=a.Pf==a.gd;return c}function sb(a,b){if(void 0===b)return a.dg=!a.dg,a.dg;void 0===a.vd[b]&&(a.vd[b]=[null,null,!1]);a.vd[b][2]=!a.vd[b][2];return a.vd[b][2]}
|
||||
function tb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,l=c[e];if(void 0!==l)for(var n=e+d;n<=g;n++)void 0!==f.vd[n]?x("Input port "+v(n)+" registered by "+f.vd[n][0].id+", ignoring "+h.id):f.vd[n]=[h,l,!1,!1]}}function ub(a,b,c){var d=255,e=a.vd[b];void 0!==e?(e[1]&&(d=e[1].call(e[0],b,c)),a.fa&&a.dg!=e[2]&&vb(a.fa,b,d)):a.fa&&(a.fa.ea(a,b,null,c),a.dg&&vb(a.fa,b,d));return d}
|
||||
function wb(a,b){if(void 0===b)return a.eg=!a.eg,a.eg;void 0===a.wd[b]&&(a.wd[b]=[null,null,!1]);a.wd[b][2]=!a.wd[b][2];return a.wd[b][2]}function zb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,l=c[e];if(void 0!==l)for(var n=e+d;n<=g;n++)void 0!==f.wd[n]?x("Output port "+v(n)+" registered by "+f.wd[n][0].id+", ignoring "+h.id):f.wd[n]=[h,l,!1,!1]}}
|
||||
function Ab(a,b,c,d){var e=a.wd[b];void 0!==e?(e[1]&&e[1].call(e[0],b,c,d),a.fa&&a.eg!=e[2]&&Bb(a.fa,b,c)):a.fa&&(a.fa.ea(a,b,c,d),a.eg&&Bb(a.fa,b,c))}function lb(a,b,c){x("Memory block error ("+a+","+p(b)+","+p(c)+")");return!1}
|
||||
function ib(a,b,c,d){this.vm=b||0;this.xa=null;this.offset=0;this.sh=c;this.ia=null;this.sb=this.zk=!1;if(b)if(d)this.ia=d,a=[d.hd,a-d.Va],this.xa=a[0],this.offset=a[1],this.Ze(d.Rf);else{this.xa=Array(b>>2);for(d=0;d<this.xa.length;d++)this.xa[d]=0;this.Ze(Cb)}else this.Ze()}
|
||||
ib.prototype={Oh:function(a){E(this.fa,Db)&&!a&&this.fa.message("attempt to read invalid block %"+p(this.Zd)+" from "+ea(this.T.va,this.T.ya.sa));return 0},Hf:function(a,b){E(this.fa,Db)&&!a&&this.fa.message("attempt to write 0x"+v(b)+" to invalid block %"+p(this.Zd)+" from "+ea(this.T.va,this.T.ya.sa))},ep:function(a){return this.xa[a>>2]>>>((a&3)<<3)&255},gp:function(a){var b=a>>2;a=(a&3)<<3;var c=this.xa[b]>>>a;return 24>a?c&65535:c&255|(this.xa[b+1]&255)<<8},pp:function(a,b){var c=a>>2,d=(a&3)<<
|
||||
3;this.xa[c]=this.xa[c]&~(255<<d)|b<<d;this.sb=!0},rp:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.xa[c]=this.xa[c]&~(65535<<d)|b<<d:(this.xa[c]=this.xa[c]&16777215|b<<24,c++,this.xa[c]=this.xa[c]&4294967040|b>>8);this.sb=!0},dp:function(a){Eb(this.fa,this.Zd+a);return this.Bg(a)},fp:function(a){Eb(this.fa,this.Zd+a)||Eb(this.fa,this.Zd+a+1);return this.Pj(a)},op:function(a,b){Fb(this.fa,this.Zd+a);this.Ig(a,b)},qp:function(a,b){Fb(this.fa,this.Zd+a)||Fb(this.fa,this.Zd+a+1);this.Yj(a,b)},save:function(){return this.ia?
|
||||
null:this.xa},restore:function(a){return this.ia?null==a:a&&this.vm==a.length<<2?(this.xa=a,this.sb=!0):!1},Ze:function(a,b){a||(a=[]);void 0===b&&(b=!0);Gb(this,a,b);Hb(this,a,b)},Yd:function(a,b){b?0===this.pk++&&Hb(this,Ib):0===this.ok++&&Gb(this,Ib)}};function Jb(a,b){b?0===--a.pk&&(a.Hc=a.sh?a.Hf:a.Ig,a.mm=a.sh?a.Hf:a.Yj):0===--a.ok&&(a.sc=a.Bg,a.Zl=a.Pj)}function hb(a,b,c,d,e){a.T=b;a.fa=c;a.Zd=d;a.ok=a.pk=0;a.fa&&Kb(a.fa,d,e)}
|
||||
function Hb(a,b,c){a.Hc=b[2]&&!a.sh?b[2]:a.Hf;a.mm=b[3]&&!a.sh?b[3]:a.Hf;c&&(a.Ig=b[2]?b[2]:a.Hf,a.Yj=b[3]?b[3]:a.Hf)}function Gb(a,b,c){a.sc=b[0]?b[0]:a.Oh;a.Zl=b[1]?b[1]:a.Oh;c&&(a.Bg=b[0]?b[0]:a.Oh,a.Pj=b[1]?b[1]:a.Oh)}var Cb=[ib.prototype.ep,ib.prototype.gp,ib.prototype.pp,ib.prototype.rp],Ib=[ib.prototype.dp,ib.prototype.fp,ib.prototype.op,ib.prototype.qp];
|
||||
function Lb(a,b){z.call(this,"CPU",a,Lb);var c=a.cycles||b,d=a.multiplier||1;this.ca={};this.ca.Ld=c;this.ca.Kd=d;this.ca.Bh=Math.round(this.ca.Ld/1E4)/100;this.ca.Pe=this.ca.Bh*this.ca.Kd;this.qa.Qb=!1;this.qa.Rb=!1;this.qa.yi=a.autoStart;c=Oa.autostart;void 0!==c&&(this.qa.yi="true"==c?!0:"false"==c?!1:null);this.qa.nf=!1;this.ca.ig=this.ca.yf=0;this.ca.kg=a.csStart;this.ca.xf=a.csInterval;this.ca.zf=a.csStop;var e=this;this.fo=function(){e.Ve()};this.Ua()}A(z,Lb);k=Lb.prototype;
|
||||
k.pc=function(a,b,c,d){this.ra=b;this.fa=d;this.Ka=a;var e=eb(a,"Video");e&&(this.ti=function(){Mb(e)},this.Tc=function(){e.Tc()});this.oa=eb(a,"ChipSet");this.Ua()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.$b=function(a,b){if(!b){if(a&&this.restore){Nb(this);if(!this.restore(a))return!1;Ob(this)}else this.reset();this.fa?this.fa.Mn():this.da("No debugger detected")}this.qa.Qb=!0;!Pb(this)&&this.fa&&Rb(this.fa);Sb(this);return!0};
|
||||
k.Zb=function(a){this.qa.Qb=!1;return a&&this.save?this.save():!0};function Pb(a){return!0===a.qa.yi||null===a.qa.yi&&!a.fa&&void 0===a.wa.run?(a.Ve(),!0):!1}k.Tc=function(){};k.Hk=function(){return 0};function Ob(a){void 0===a.ca.kg&&(a.ca.kg=0);void 0===a.ca.xf&&(a.ca.xf=-1);void 0===a.ca.zf&&(a.ca.zf=-1);a.qa.nf=0<=a.ca.kg&&0<a.ca.xf;a.qa.nf&&(a.ca.ig=0,a.ca.yf=a.ca.kg-a.Te)}
|
||||
function Tb(a,b){if(a.qa.nf){var c=!1;a.ca.ig=a.ca.ig+a.Hk()|0;a.ca.yf-=b;0>=a.ca.yf&&(a.ca.yf+=a.ca.xf,c=!0);0<=a.ca.zf&&a.ca.zf<=Ub(a)&&(a.ca.xf=a.ca.zf=-1,Ob(a),a.Fb(),c=!0);c&&a.da(Ub(a)+" cycles: checksum="+p(a.ca.ig))}}function F(a,b,c,d){void 0!==a.wa[b]&&(void 0===d&&(d=4),void 0===c&&(cb(a,"Register "+b+" is invalid"),a.Fb()),c=p(c,d),a.wa[b].innerHTML!=c&&(a.wa[b].innerHTML=c))}k.jh=function(){};k.ti=function(){};
|
||||
k.Db=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.wa[c]=d;d.onclick=function(){e.qa.Rb?e.Fb(!0):e.Ve(!0)};a=!0;break;case "reset":this.wa[c]=d;d.onclick=function(){e.Ka&&Vb(e.Ka)};a=!0;break;case "speed":this.wa[c]=d;a=!0;break;case "setSpeed":this.wa[c]=d,d.onclick=function(){Wb(e,e.ca.Kd<<1,!0)},d.innerHTML=this.ca.Pe.toFixed(2)+"Mhz",a=!0}return a};function Xb(a,b,c){a.Te+=b;c&&(a.Qc=a.A=0)}
|
||||
function Yb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.ca.Kd&&a.ca.pd&&(d=a.ca.pd/a.ca.Bh);a.ca.Ok=Math.round(1E3/30);a.ca.Yn=Math.floor(a.ca.Ld/c*d);a.ca.Ti=Math.floor(a.ca.Ld/30*d);a.ca.Sk=Math.floor(a.ca.Ld/60*d);a.ca.Rk=Math.floor(a.ca.Ld/2*d);b||(a.ca.Af=a.ca.Ti,a.ca.mg=a.ca.Sk,a.ca.lg=a.ca.Rk);a.ca.Ui=0}function Ub(a,b){var c=a.Te+a.qe+a.Qc-a.A;b&&1<a.ca.Kd&&a.ca.pd>a.ca.Bh&&(c=Math.round(c/a.ca.Kd));return c}function Nb(a){a.ca.pd=0;a.Eh=1;a.Te=a.qe=a.Qc=a.A=0;Ob(a);Wb(a,1)}
|
||||
function Wb(a,b,c){if(void 0!==b){0.8>a.ca.pd/a.ca.Pe&&(b=1);a.ca.Kd=b;b=a.ca.Bh*a.ca.Kd;if(a.ca.Pe!=b){a.ca.Pe=b;b=a.ca.Pe.toFixed(2)+"Mhz";var d=a.wa.setSpeed;d&&(d.innerHTML=b);a.da("target speed: "+b)}c&&a.Tc()}Xb(a,a.qe);a.qe=0;a.ca.wf=oa();a.ca.Qe=0;Yb(a)}
|
||||
k.Ve=function(a){if($a(this,!0)){if(!this.qa.Rb){Wb(this);this.Ka&&this.Ka.start(this.ca.wf,Ub(this));this.qa.Rb=!0;this.oa&&Zb(this.oa);var b=this.wa.run;b&&(b.innerHTML="Halt");a&&this.Tc()}this.ca.Ui>=this.ca.Ld&&Yb(this,!0);this.ca.ng=0;this.ca.Ch=oa();this.ca.Qe&&(a=this.ca.Ch-this.ca.Qe,a>this.ca.Ok&&(this.ca.wf+=a,this.ca.wf>this.ca.Ch&&(this.ca.wf=this.ca.Ch)));try{do{this.Gf(this.qa.nf?1:Math.round(this.ca.Yn/this.Eh));var c=this.Qc-this.A;this.qe+=c;this.ca.ng+=c;Xb(this,0,!0);Tb(this,c);
|
||||
this.ca.mg-=c;0>=this.ca.mg&&(this.ca.mg+=this.ca.Sk,this.ti());this.ca.lg-=c;0>=this.ca.lg&&(this.ca.lg+=this.ca.Rk,this.jh());this.ca.Af-=c;if(0>=this.ca.Af){this.ca.Af+=this.ca.Ti;break}}while(this.qa.Rb)}catch(d){this.Fb();Sb(this);this.Ka&&this.Ka.stop(oa(),Ub(this));$a(this,!1);cb(this,d.message);return}c=setTimeout;a=this.fo;this.ca.Qe=oa();b=this.ca.Ok;this.ca.ng&&(b=Math.round(b*this.ca.ng/this.ca.Ti));var b=b-(this.ca.Qe-this.ca.Ch),e=this.ca.Qe-this.ca.wf;e&&(this.ca.pd=Math.round(this.qe/
|
||||
(10*e))/100,864E5<=e&&(this.Te=0,this.oa&&$b(this.oa,!0),Wb(this)));if(0>b||this.ca.pd<this.ca.Pe)b=0;this.ca.Ui+=this.ca.ng;this.ca.Qe+=b;c(a,b)}else Sb(this),this.Ka&&this.Ka.stop(oa(),Ub(this))};k.Fb=function(a){ab(this,!0);this.Qc-=this.A;this.A=0;Xb(this,this.qe);this.qe=0;if(this.qa.Rb){this.qa.Rb=!1;this.oa&&Zb(this.oa);var b=this.wa.run;b&&(b.innerHTML="Run")}this.qa.oh=a};k.Gf=function(){return 0};function Sb(a){a.ti();a.jh()}
|
||||
var ac=[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 bc(a,b,c){this.T=a;this.Ya=this.sa=0;this.Nc=65535;this.Oa=0;this.xk="CS"==b;this.Hg=b;this.Ac=this.Kc=0;cc(this,c)}function dc(a){this.sa=a;this.Nc=65535;this.Kc=this.Ac=0;return this.Ya=a<<4}
|
||||
function ec(a){var b,c;a&4?(b=this.T.bd.Ya,c=this.T.bd.Nc):(b=this.T.xc,c=this.T.ze);b+=a&65528;if(b+7<=c){this.T.A-=15;c=this.T.ua(b+0);var d=this.T.ua(b+4);b=this.T.ua(b+2)|(d&255)<<16;var e;d&4096||(e=d&7936)&&768>=e?(this.sa=a,this.Ya=b,this.Nc=c,this.Oa=d&65280,this.type=d&7936,cc(this)):b=-1;return b}return-1}function fc(a){return this.Ya+a}function gc(a){return this.Ya+a}function hc(a,b,c){return a+b<=this.Nc?this.Ya+a:ic.call(this,0,0,c)}
|
||||
function ic(a,b,c){c||kc.call(this.T,13,0);return-1}function mc(a,b,c){return a+b<=this.Nc?this.Ya+a:nc.call(this,0,0,c)}function nc(a,b,c){c||kc.call(this.T,13,0);return-1}function oc(a,b,c){var d=a.T.ua(c+2),e=a.T.ua(c+0)|(d&255)<<16;c=a.T.ua(c+4);a.sa=b;a.Ya=e;a.Nc=c;a.Oa=d&65280;cc(a)}bc.prototype.save=function(){return[this.sa,this.Ya,this.Nc,this.Oa,this.xk,this.Hg,this.Kc,this.Ac]};
|
||||
bc.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.sa=a[0],this.Ya=a[1],this.Nc=a[2],this.Oa=a[3],this.xk=a[4],this.Hg=a[5],this.Kc=a[6],this.Ac=a[7])};function cc(a,b){void 0===b&&(b=!!(a.T.Dc&1));b?(a.load=ec,a.jd=hc,a.gc=mc,a.Oa&4096&&(6144==(a.Oa&6656)&&(a.gc=ic),a.Oa&2048||!(a.Oa&512))&&(a.gc=nc),a.Kc=a.sa&3,a.Ac=(a.Oa&24576)>>13):(a.load=dc,a.jd=fc,a.gc=gc,a.Kc=a.Ac=0)}
|
||||
function pc(a){this.Ia=a.model||8088;var b=0;switch(this.Ia){default:case 8088:b=4772727;break;case 80286:b=6E6}Lb.call(this,a,b);this.bk=61442;this.Ng=4;this.Af=255;this.B=80286<=this.Ia?qc:rc;this.Wa=sc.slice();80186<=this.Ia&&(this.Af=31,this.Wa[15]=tc,this.Wa[96]=uc,this.Wa[97]=vc,this.Wa[98]=wc,this.Wa[99]=tc,this.Wa[100]=tc,this.Wa[101]=tc,this.Wa[102]=tc,this.Wa[103]=tc,this.Wa[104]=xc,this.Wa[105]=yc,this.Wa[106]=zc,this.Wa[107]=Ac,this.Wa[108]=Bc,this.Wa[109]=Cc,this.Wa[110]=Dc,this.Wa[111]=
|
||||
Ec,this.Wa[192]=Fc,this.Wa[193]=Gc,this.Wa[200]=Ic,this.Wa[201]=Jc,this.Wa[241]=Kc,Lc[7]=Nc,Oc[7]=Nc,80286<=this.Ia&&(this.bk=2,this.Ng=0,this.Wa[15]=Pc,this.Wa[99]=Qc,this.Wa[84]=Rc));this.Pg=[];this.Qg=[];this.Oc=this.fh=0;this.qa.nh=this.qa.yk=!1;this.Fa=[];this.Ae=this.wb=this.ib=this.Ee=0;this.U=this.Jm;this.V=this.Km;this.O=this.Qn;this.P=this.Rn;this.R=this.kp;this.S=this.lp;Sc(this)}A(Lb,pc);
|
||||
var rc={Ij:4,ba:5,Aa:6,ja:7,ka:8,Q:9,W:11,X:12,Qe:4,Tk:60,Uk:83,Vb:3,xb:9,hc:16,Hh:1,Yk:19,$k:28,bl:16,al:21,Zk:37,Wk:2,bj:9,Xk:5,Vk:33,dj:10,cj:8,vg:3,ug:15,pl:51,ql:1,rl:2,sl:4,ol:32,ej:15,ul:15,Wb:16,Xb:4,wl:11,vl:18,tl:24,Jb:4,xl:2,fj:16,yl:17,kj:18,zl:19,jj:5,lj:6,El:2,Dl:8,Bl:9,Cl:10,Al:10,mj:10,nj:10,dl:80,fl:144,cl:86,el:154,hl:101,jl:165,gl:107,il:171,Gl:70,Il:113,Fl:76,Hl:124,ll:80,nl:128,kl:86,ml:134,xg:3,wg:16,sj:10,rj:8,Jl:51,ic:8,Kl:17,Ll:36,pc:11,Ml:16,yg:10,pe:2,Zi:18,$i:7,aj:15,gj:12,
|
||||
hj:7,ij:11,oj:18,pj:7,qj:15,tj:15,uj:7,vj:13,zj:11,Aj:7,Bj:8,Nl:8,Ql:12,Ol:18,Pl:17,Rl:15,xj:8,wj:20,yj:2,Ej:3,zg:9,Dj:5,Cj:11,Gj:4,Fj:17,Sl:11},qc={Ij:0,ba:0,Aa:0,ja:0,ka:0,Q:0,W:1,X:1,Qe:3,Tk:14,Uk:16,Vb:2,xb:7,hc:7,Hh:0,Yk:7,$k:13,bl:7,al:11,Zk:16,Wk:3,bj:6,Xk:2,Vk:13,dj:5,cj:5,vg:2,ug:7,pl:23,ql:0,rl:1,sl:3,ol:17,ej:7,ul:11,Wb:7,Xb:3,wl:7,vl:11,tl:15,Jb:2,xl:3,fj:7,yl:8,kj:8,zl:8,jj:4,lj:4,El:2,Dl:3,Bl:5,Cl:2,Al:3,mj:5,nj:3,dl:14,fl:22,cl:17,el:25,hl:17,jl:25,gl:20,il:28,Gl:13,Il:21,Fl:16,Hl:24,
|
||||
ll:13,nl:21,kl:16,ml:24,xg:2,wg:7,sj:5,rj:5,Jl:19,ic:5,Kl:5,Ll:17,pc:3,Ml:5,yg:3,pe:0,Zi:8,$i:5,aj:9,gj:5,hj:5,ij:4,oj:5,pj:5,qj:4,tj:7,uj:5,vj:8,zj:3,Aj:4,Bj:3,Nl:11,Ql:11,Ol:15,Pl:15,Rl:7,xj:5,wj:8,yj:0,Ej:2,zg:6,Dj:3,Cj:6,Gj:3,Fj:5,Sl:5};k=pc.prototype;k.Mi=function(a,b,c,d,e){this.Fa=a;this.Ae=b;this.wb=c;this.ib=d;this.Ee=e};k.reset=function(){this.qa.Pb&&this.Cb();Sc(this);Nb(this);this.qa.Zc=!1};
|
||||
function Sc(a){a.H=0;a.C=0;a.J=0;a.K=0;a.Y=0;a.I=0;a.G=0;a.F=0;a.Dc=65520;a.Gc=0;a.$d=1023;a.Lc={Jj:0,sa:0,Oa:0,zh:-1};a.ne=0;a.xa=new bc(a,"CS");a.Eb=new bc(a,"DS");a.zb=new bc(a,"SS");a.$a=new bc(a,"ES");a.hm=new bc(a,"ZERO");Tc(a,0,65535);80286<=a.Ia&&(a.xc=0,a.ze=65535,a.bd=new bc(a,"LDT",!0),a.Xe=new bc(a,"TSS",!0),a.Qb=new bc(a,"VER",!0),Tc(a,65520,61440),a.xa.Ya=16711680);Uc(a,0);Vc(a);a.qb=0;a.Kb=a.Eg=-1;a.Yg=0;a.la=a.Ma=-1;a.D=a.Eb;a.N=a.zb;a.aa=a.Ba=0}
|
||||
k.Gk=function(){var a=this.H+this.C+this.J+this.K+this.Y+this.I+this.G+this.F|0;return a=a+this.va+this.xa.sa+this.Eb.sa+this.zb.sa+this.$a.sa+Wc(this)|0};function Xc(a,b,c,d){void 0!==d&&(void 0===a.Pg[b]&&(a.Pg[b]=[]),a.Pg[b].push([c,d]))}function Yc(a,b){var c=a.Pg[b];if(void 0!==c)for(var d=0;d<c.length;d++)if(!c[d][1].call(c[d][0],a.Ga))return!1;a.qa.yk&&E(a.fa,Zc)&&$c(a.fa,b,a.Ga)&&ad(a,a.Ga,function(a,c){return function(d){bd(a.fa,b,d,Ub(a)-c)}}(a,Ub(a)));return!0}
|
||||
function ad(a,b,c){void 0!==c&&(null==a.Qg[b]&&a.fh++,a.Qg[b]=c)}function cd(a,b){var c=a.Qg[b];null!=c&&(c(--a.fh),delete a.Qg[b])}function Vc(a,b){void 0===b&&(b=!!(a.Dc&1));dd=b?ed:fd;cc(a.xa,b);cc(a.Eb,b);cc(a.zb,b);cc(a.$a,b)}
|
||||
k.save=function(){var a=new gd(this);a.set(0,[this.H,this.C,this.J,this.K,this.Y,this.I,this.G,this.F,this.ne]);a.set(1,[this.va,this.xa.save(),this.Eb.save(),this.zb.save(),this.$a.save(),null!=this.xc?[this.Dc,this.xc,this.ze,this.Gc,this.$d,this.bd.save(),this.Xe.save(),this.ne]:null,Wc(this)]);a.set(2,[this.D.Hg,this.N.Hg,this.aa,this.Ba,this.qb,this.la,this.Ma]);a.set(3,[this.Dh,this.Se,this.ca.Jd]);a.set(4,rb(this.ra));return a.data()};
|
||||
k.restore=function(a){var b;b=a[0];this.H=b[0];this.C=b[1];this.J=b[2];this.K=b[3];this.Y=b[4];this.I=b[5];this.G=b[6];this.F=b[7];this.ne=b[8]||0;b=a[1];this.xa.restore(b[1]);this.Eb.restore(b[2]);this.zb.restore(b[3]);this.$a.restore(b[4]);var c=b[5];c&&c.length&&(this.Dc=c[0],this.xc=c[1],this.ze=c[2],this.Gc=c[3],this.$d=c[4],this.bd.restore(c[5]),this.Xe.restore(c[6]),this.ne=c[7],Vc(this));Uc(this,b[6]);G(this,b[0]);b=a[2];this.D=hd(this,b[0]);this.N=hd(this,b[1]);this.aa=b[2];this.Ba=b[3];
|
||||
this.qb=b[4];this.la=b[5];this.Ma=b[6];b=a[3];this.Dh=b[0];this.Se=b[1];Wb(this,b[2]);a:{b=this.ra;a=a[4];for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.nk){for(var f=0,g=Array(b.nk),h=0;h<e.length-1;)for(var l=e[h++],n=e[h++];l--;)g[f++]=n;e=g}f=b.Fa[d];if(!f||!f.restore(e)){x("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&jb(b,a[c]);b=!0}return b};
|
||||
function hd(a,b){switch(b){case "CS":return a.xa;case "DS":return a.Eb;case "SS":return a.zb;case "ES":return a.$a;case "ZERO":return a.hm;default:return[0,b,0,0,""]}}function id(a,b){var c;if(a.Dc&1){if(c=a.Gc+(b<<3),c+7<=a.$d){a.Lc.Jj=a.ua(c);a.Lc.sa=a.ua(c+2);a.Lc.Oa=a.ua(c+4);switch(a.Lc.Oa&7936){case 1536:a.Lc.zh=-17153;break;case 1792:a.Lc.zh=-16641;break;default:return!1}return!0}}else if(c=a.Gc+(b<<2),c+7<=a.$d)return a.Lc.Jj=a.ua(c),a.Lc.sa=a.ua(c+2),a.Lc.zh=-769,!0;return!1}
|
||||
function jd(a,b){a.Ga=a.xa.load(b)+a.va;a.aa|=a.Ng}function kd(a,b){a.Eb.load(b);a.aa|=a.Ng}function ld(a,b){a.zb.load(b);a.aa|=4}function md(a,b){a.$a.load(b);a.aa|=a.Ng}function G(a,b){a.Ga=a.xa.Ya+(a.va=b&65535)}function Tc(a,b,c){a.Ga=a.xa.load(c)+(a.va=b)}function nd(a,b){a.Ga=a.xa.Ya+(a.va=a.va+b&65535)}function od(a){return a.Z&a.ga?1:0}function pd(a){return ac[a.ma&255]?4:0}function qd(a){return(a.ma^a.pa)&16?16:0}function rd(a){return a.Z&a.ga-1?0:64}
|
||||
0,0,1,1,0,1,0,0,1];function bc(a,b,c){this.T=a;this.Ya=this.sa=0;this.Pc=65535;this.Oa=0;this.xk="CS"==b;this.Fg=b;this.Dc=this.Mc=0;cc(this,c)}function dc(a){this.sa=a;this.Pc=65535;this.Mc=this.Dc=0;return this.Ya=a<<4}
|
||||
function ec(a){var b,c;a&4?(b=this.T.dd.Ya,c=this.T.dd.Pc):(b=this.T.zc,c=this.T.ze);b+=a&65528;if(b+7<=c){this.T.A-=15;c=this.T.ua(b+0);var d=this.T.ua(b+4);b=this.T.ua(b+2)|(d&255)<<16;var e;d&4096||(e=d&7936)&&768>=e?(this.sa=a,this.Ya=b,this.Pc=c,this.Oa=d&65280,this.type=d&7936,cc(this)):b=-1;return b}return-1}function fc(a){return this.Ya+a}function gc(a){return this.Ya+a}function hc(a,b,c){return a+b<=this.Pc?this.Ya+a:ic.call(this,0,0,c)}
|
||||
function ic(a,b,c){c||kc.call(this.T,13,0);return-1}function mc(a,b,c){return a+b<=this.Pc?this.Ya+a:nc.call(this,0,0,c)}function nc(a,b,c){c||kc.call(this.T,13,0);return-1}function oc(a,b,c){var d=a.T.ua(c+2),e=a.T.ua(c+0)|(d&255)<<16;c=a.T.ua(c+4);a.sa=b;a.Ya=e;a.Pc=c;a.Oa=d&65280;cc(a)}bc.prototype.save=function(){return[this.sa,this.Ya,this.Pc,this.Oa,this.xk,this.Fg,this.Mc,this.Dc]};
|
||||
bc.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.sa=a[0],this.Ya=a[1],this.Pc=a[2],this.Oa=a[3],this.xk=a[4],this.Fg=a[5],this.Mc=a[6],this.Dc=a[7])};function cc(a,b){void 0===b&&(b=!!(a.T.Gc&1));b?(a.load=ec,a.ld=hc,a.hc=mc,a.Oa&4096&&(6144==(a.Oa&6656)&&(a.hc=ic),a.Oa&2048||!(a.Oa&512))&&(a.hc=nc),a.Mc=a.sa&3,a.Dc=(a.Oa&24576)>>13):(a.load=dc,a.ld=fc,a.hc=gc,a.Mc=a.Dc=0)}
|
||||
function pc(a){this.Ia=a.model||8088;var b=0;switch(this.Ia){default:case 8088:b=4772727;break;case 80286:b=6E6}Lb.call(this,a,b);this.ck=61442;this.Lg=4;this.Bf=255;this.B=80286<=this.Ia?qc:rc;this.Wa=sc.slice();80186<=this.Ia&&(this.Bf=31,this.Wa[15]=tc,this.Wa[96]=uc,this.Wa[97]=vc,this.Wa[98]=wc,this.Wa[99]=tc,this.Wa[100]=tc,this.Wa[101]=tc,this.Wa[102]=tc,this.Wa[103]=tc,this.Wa[104]=xc,this.Wa[105]=yc,this.Wa[106]=zc,this.Wa[107]=Ac,this.Wa[108]=Bc,this.Wa[109]=Cc,this.Wa[110]=Dc,this.Wa[111]=
|
||||
Ec,this.Wa[192]=Fc,this.Wa[193]=Hc,this.Wa[200]=Ic,this.Wa[201]=Jc,this.Wa[241]=Kc,Mc[7]=Nc,Oc[7]=Nc,80286<=this.Ia&&(this.ck=2,this.Lg=0,this.Wa[15]=Pc,this.Wa[99]=Qc,this.Wa[84]=Rc));this.Ng=[];this.Og=[];this.Qc=this.fh=0;this.qa.oh=this.qa.yk=!1;this.Fa=[];this.Ae=this.zb=this.mb=this.Ee=0;this.U=this.Km;this.V=this.Lm;this.O=this.Rn;this.P=this.Sn;this.R=this.mp;this.S=this.np;Sc(this)}A(Lb,pc);
|
||||
var rc={Jj:4,ba:5,Aa:6,ja:7,ka:8,Q:9,W:11,X:12,Re:4,Uk:60,Vk:83,Wb:3,Ab:9,ic:16,Ih:1,Zk:19,al:28,cl:16,bl:21,$k:37,Xk:2,cj:9,Yk:5,Wk:33,ej:10,dj:8,tg:3,sg:15,ql:51,rl:1,sl:2,tl:4,pl:32,fj:15,vl:15,Xb:16,Yb:4,xl:11,wl:18,ul:24,Mb:4,yl:2,gj:16,zl:17,lj:18,Al:19,kj:5,mj:6,Fl:2,El:8,Cl:9,Dl:10,Bl:10,nj:10,oj:10,el:80,gl:144,dl:86,fl:154,il:101,kl:165,hl:107,jl:171,Hl:70,Jl:113,Gl:76,Il:124,ml:80,ol:128,ll:86,nl:134,vg:3,ug:16,tj:10,sj:8,Kl:51,jc:8,Ll:17,Ml:36,qc:11,Nl:16,wg:10,pe:2,$i:18,aj:7,bj:15,hj:12,
|
||||
ij:7,jj:11,pj:18,qj:7,rj:15,uj:15,vj:7,wj:13,Aj:11,Bj:7,Cj:8,Ol:8,Rl:12,Pl:18,Ql:17,Sl:15,yj:8,xj:20,zj:2,Fj:3,xg:9,Ej:5,Dj:11,Hj:4,Gj:17,Tl:11},qc={Jj:0,ba:0,Aa:0,ja:0,ka:0,Q:0,W:1,X:1,Re:3,Uk:14,Vk:16,Wb:2,Ab:7,ic:7,Ih:0,Zk:7,al:13,cl:7,bl:11,$k:16,Xk:3,cj:6,Yk:2,Wk:13,ej:5,dj:5,tg:2,sg:7,ql:23,rl:0,sl:1,tl:3,pl:17,fj:7,vl:11,Xb:7,Yb:3,xl:7,wl:11,ul:15,Mb:2,yl:3,gj:7,zl:8,lj:8,Al:8,kj:4,mj:4,Fl:2,El:3,Cl:5,Dl:2,Bl:3,nj:5,oj:3,el:14,gl:22,dl:17,fl:25,il:17,kl:25,hl:20,jl:28,Hl:13,Jl:21,Gl:16,Il:24,
|
||||
ml:13,ol:21,ll:16,nl:24,vg:2,ug:7,tj:5,sj:5,Kl:19,jc:5,Ll:5,Ml:17,qc:3,Nl:5,wg:3,pe:0,$i:8,aj:5,bj:9,hj:5,ij:5,jj:4,pj:5,qj:5,rj:4,uj:7,vj:5,wj:8,Aj:3,Bj:4,Cj:3,Ol:11,Rl:11,Pl:15,Ql:15,Sl:7,yj:5,xj:8,zj:0,Fj:2,xg:6,Ej:3,Dj:6,Hj:3,Gj:5,Tl:5};k=pc.prototype;k.Ni=function(a,b,c,d,e){this.Fa=a;this.Ae=b;this.zb=c;this.mb=d;this.Ee=e};k.reset=function(){this.qa.Rb&&this.Fb();Sc(this);Nb(this);this.qa.ad=!1};
|
||||
function Sc(a){a.H=0;a.C=0;a.J=0;a.K=0;a.Y=0;a.I=0;a.G=0;a.F=0;a.Gc=65520;a.Jc=0;a.$d=1023;a.Nc={Kj:0,sa:0,Oa:0,Ah:-1};a.ne=0;a.ya=new bc(a,"CS");a.Hb=new bc(a,"DS");a.Cb=new bc(a,"SS");a.ab=new bc(a,"ES");a.im=new bc(a,"ZERO");Tc(a,0,65535);80286<=a.Ia&&(a.zc=0,a.ze=65535,a.dd=new bc(a,"LDT",!0),a.Ye=new bc(a,"TSS",!0),a.Sb=new bc(a,"VER",!0),Tc(a,65520,61440),a.ya.Ya=16711680);Uc(a,0);Vc(a);a.ub=0;a.Nb=a.Cg=-1;a.Xg=0;a.la=a.Ma=-1;a.D=a.Hb;a.N=a.Cb;a.aa=a.Ba=0}
|
||||
k.Hk=function(){var a=this.H+this.C+this.J+this.K+this.Y+this.I+this.G+this.F|0;return a=a+this.va+this.ya.sa+this.Hb.sa+this.Cb.sa+this.ab.sa+Wc(this)|0};function Xc(a,b,c,d){void 0!==d&&(void 0===a.Ng[b]&&(a.Ng[b]=[]),a.Ng[b].push([c,d]))}function Yc(a,b){var c=a.Ng[b];if(void 0!==c)for(var d=0;d<c.length;d++)if(!c[d][1].call(c[d][0],a.Ga))return!1;a.qa.yk&&E(a.fa,Zc)&&$c(a.fa,b,a.Ga)&&ad(a,a.Ga,function(a,c){return function(d){bd(a.fa,b,d,Ub(a)-c)}}(a,Ub(a)));return!0}
|
||||
function ad(a,b,c){void 0!==c&&(null==a.Og[b]&&a.fh++,a.Og[b]=c)}function cd(a,b){var c=a.Og[b];null!=c&&(c(--a.fh),delete a.Og[b])}function Vc(a,b){void 0===b&&(b=!!(a.Gc&1));dd=b?ed:fd;cc(a.ya,b);cc(a.Hb,b);cc(a.Cb,b);cc(a.ab,b)}
|
||||
k.save=function(){var a=new gd(this);a.set(0,[this.H,this.C,this.J,this.K,this.Y,this.I,this.G,this.F,this.ne]);a.set(1,[this.va,this.ya.save(),this.Hb.save(),this.Cb.save(),this.ab.save(),null!=this.zc?[this.Gc,this.zc,this.ze,this.Jc,this.$d,this.dd.save(),this.Ye.save(),this.ne]:null,Wc(this)]);a.set(2,[this.D.Fg,this.N.Fg,this.aa,this.Ba,this.ub,this.la,this.Ma]);a.set(3,[this.Eh,this.Te,this.ca.Kd]);a.set(4,rb(this.ra));return a.data()};
|
||||
k.restore=function(a){var b;b=a[0];this.H=b[0];this.C=b[1];this.J=b[2];this.K=b[3];this.Y=b[4];this.I=b[5];this.G=b[6];this.F=b[7];this.ne=b[8]||0;b=a[1];this.ya.restore(b[1]);this.Hb.restore(b[2]);this.Cb.restore(b[3]);this.ab.restore(b[4]);var c=b[5];c&&c.length&&(this.Gc=c[0],this.zc=c[1],this.ze=c[2],this.Jc=c[3],this.$d=c[4],this.dd.restore(c[5]),this.Ye.restore(c[6]),this.ne=c[7],Vc(this));Uc(this,b[6]);G(this,b[0]);b=a[2];this.D=hd(this,b[0]);this.N=hd(this,b[1]);this.aa=b[2];this.Ba=b[3];
|
||||
this.ub=b[4];this.la=b[5];this.Ma=b[6];b=a[3];this.Eh=b[0];this.Te=b[1];Wb(this,b[2]);a:{b=this.ra;a=a[4];for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.nk){for(var f=0,g=Array(b.nk),h=0;h<e.length-1;)for(var l=e[h++],n=e[h++];l--;)g[f++]=n;e=g}f=b.Fa[d];if(!f||!f.restore(e)){x("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&jb(b,a[c]);b=!0}return b};
|
||||
function hd(a,b){switch(b){case "CS":return a.ya;case "DS":return a.Hb;case "SS":return a.Cb;case "ES":return a.ab;case "ZERO":return a.im;default:return[0,b,0,0,""]}}function id(a,b){var c;if(a.Gc&1){if(c=a.Jc+(b<<3),c+7<=a.$d){a.Nc.Kj=a.ua(c);a.Nc.sa=a.ua(c+2);a.Nc.Oa=a.ua(c+4);switch(a.Nc.Oa&7936){case 1536:a.Nc.Ah=-17153;break;case 1792:a.Nc.Ah=-16641;break;default:return!1}return!0}}else if(c=a.Jc+(b<<2),c+7<=a.$d)return a.Nc.Kj=a.ua(c),a.Nc.sa=a.ua(c+2),a.Nc.Ah=-769,!0;return!1}
|
||||
function jd(a,b){a.Ga=a.ya.load(b)+a.va;a.aa|=a.Lg}function kd(a,b){a.Hb.load(b);a.aa|=a.Lg}function ld(a,b){a.Cb.load(b);a.aa|=4}function md(a,b){a.ab.load(b);a.aa|=a.Lg}function G(a,b){a.Ga=a.ya.Ya+(a.va=b&65535)}function Tc(a,b,c){a.Ga=a.ya.load(c)+(a.va=b)}function nd(a,b){a.Ga=a.ya.Ya+(a.va=a.va+b&65535)}function od(a){return a.Z&a.ga?1:0}function pd(a){return ac[a.ma&255]?4:0}function qd(a){return(a.ma^a.pa)&16?16:0}function rd(a){return a.Z&a.ga-1?0:64}
|
||||
function sd(a){return a.ma&a.ga>>1?128:0}function td(a){return(a.ma^a.pa^a.ma>>1)&a.ga>>1?2048:0}function ud(a){a.Z&=~a.ga}function vd(a){a.pa=a.ma&16|a.pa&-17}function wd(a){a.Z|=a.ga-1}function xd(a){sd(a)&&(a.ma^=a.ga>>1|a.ga>>2,a.pa^=32896)}function yd(a){a.ma&=~a.ga;a.pa=a.ma&32896|a.pa&-32897}function zd(a){a.Z|=a.ga}function Ad(a){a.pa=~(a.ma&16)&16|a.pa&-17}function Bd(a){a.Z&=~(a.ga-1)}function Cd(a){sd(a)||(a.ma^=a.ga>>1|a.ga>>2,a.pa^=32896)}
|
||||
function Dd(a){a.ma|=a.ga;a.pa=a.ma&32896|a.pa&-32897}function Wc(a){return a.Ca&-2262|od(a)|pd(a)|qd(a)|rd(a)|sd(a)|td(a)}function Uc(a,b){a.ga=256;a.Z=a.ma=a.pa=0;b&1&&zd(a);b&4||(a.ma|=1);b&16&&(a.pa|=16);b&64||wd(a);b&128&&Cd(a);b&2048&&Dd(a);a.xa.Kc?b=b&-12289|a.Ca&12288:(a.ne=(b&12288)>>12,!a.ne||a.Dc&1||(a.ne=0));a.xa.Kc>a.ne&&(b=b&-513|a.Ca&512);a.Ca=a.Ca&-1793|b&1792|a.bk;a.Ca&256&&(a.qb|=2,a.aa|=4)}
|
||||
k.Fb=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=Lb.prototype.Fb.call(this,a,b,c,d)}return e};k.pb=function(a){return this.Fa[(a&this.Ae)>>this.wb].rc(a&this.ib)};
|
||||
k.ua=function(a){var b=a&this.ib;a=(a&this.Ae)>>this.wb;this.A-=this.B.Ij;return b!=this.ib?this.Fa[a].Yl(b):this.Fa[a++].rc(b)|this.Fa[a&this.Ee].rc(0)<<8};k.Od=function(a,b){this.Fa[(a&this.Ae)>>this.wb].Ec(a&this.ib,b&255)};k.cd=function(a,b){var c=a&this.ib,d=(a&this.Ae)>>this.wb;this.A-=this.B.Ij;c!=this.ib?this.Fa[d].lm(c,b&65535):(this.Fa[d++].Ec(c,b&255),this.Fa[d&this.Ee].Ec(0,b>>8&255))};k.Jm=function(a,b){this.Jg=a;this.la=a.jd(this.Bg=b,0);return this.aa&1?0:this.pb(this.la)};
|
||||
k.Km=function(a,b){this.Jg=a;this.la=a.jd(this.Bg=b,1);return this.aa&1?0:this.ua(this.la)};k.Qn=function(a,b){this.Jg=a;this.Ma=this.la=a.jd(this.Bg=b,0);return this.aa&1?0:this.pb(this.la)};k.Rn=function(a,b){this.Jg=a;this.Ma=this.la=a.jd(this.Bg=b,1);return this.aa&1?0:this.ua(this.la)};k.kp=function(a){this.aa&2||this.Od(this.Jg.gc(this.Bg,1),a)};k.lp=function(a){this.aa&2||this.cd(this.Jg.gc(this.Bg,2),a)};k.ha=function(){var a=this.pb(this.Ga);this.Ga=this.xa.Ya+(this.va=this.va+1&65535);return a};
|
||||
k.M=function(){var a=this.pb(this.Ga)<<24>>24;this.Ga=this.xa.Ya+(this.va=this.va+1&65535);return a&65535};k.L=function(){var a=this.ua(this.Ga);this.Ga=this.xa.Ya+(this.va=this.va+2&65535);return a};k.La=function(){var a=this.Y;this.Y=this.Y+2&65535;return this.ua(this.zb.jd(a,1))};function H(a,b){var c=a.Y=a.Y-2&65535;a.cd(a.zb.gc(c,1),b)}
|
||||
k.ih=function(){F(this,"AX",this.H);F(this,"BX",this.C);F(this,"CX",this.J);F(this,"DX",this.K);F(this,"SP",this.Y);F(this,"BP",this.I);F(this,"SI",this.G);F(this,"DI",this.F);F(this,"CS",this.xa.sa);F(this,"DS",this.Eb.sa);F(this,"SS",this.zb.sa);F(this,"ES",this.$a.sa);F(this,"IP",this.va);var a=Wc(this);F(this,"PS",a);F(this,"C",a&1?1:0,1);F(this,"P",a&4?1:0,1);F(this,"A",a&16?1:0,1);F(this,"Z",a&64?1:0,1);F(this,"S",a&128?1:0,1);F(this,"T",a&256?1:0,1);F(this,"I",a&512?1:0,1);F(this,"D",a&1024?
|
||||
1:0,1);F(this,"O",a&2048?1:0,1);this.ya.speed&&(this.ya.speed.innerHTML=this.qa.Pb&&this.ca.nd?this.ca.nd.toFixed(2)+"Mhz":"Stopped")};
|
||||
k.Ff=function(a){this.qa.nh=!0;var b=this.qa.yk=a&&this.fa&&Ed(this.fa);this.Oc=this.A=a;this.oa&&$b(this.oa);a||!this.fa||E(this.fa,Fd)||(this.aa|=4);do{var c=this.aa&240;if(c)this.Ba|=c;else if(this.Kh=this.Ga,this.la=this.Ma=-1,this.D=this.Eb,this.N=this.zb,this.Ba=this.aa&256,this.qb){a:{if(!(this.aa&4))if(this.qb&1&&this.Ca&512){if(c=Gd(this.oa),-1<=c&&(this.qb&=-2,0<=c)){this.qb&=-5;Hd.call(this,c,null,11);c=!0;break a}}else if(this.qb&2){this.qb&=-3;Hd.call(this,1,null,11);c=!0;break a}if(c=
|
||||
this.qb&8){for(var c=this.oa,d=!1,e=0;e<c.gb;e++)for(var f=c.gb[e],g=0;g<f.Lb.length;g++){var h=f.Lb[g];h.Id||(Id(c,h),h.Id||(d=!0))}c=!d}c&&(this.qb&=-9);c=!1}if(c&&!a){this.aa=0;break}if(this.qb&4){this.aa=this.A=0;break}}if(b&&Jd(this.fa,this.Ga)){this.Cb();break}this.aa=0;this.Wa[this.ha()].call(this)}while(0<this.A);return this.qa.nh?this.Oc-this.A:void 0===this.qa.nh?0:-1};k.Ra=function(a){this.fa&&E(this.fa,Kd)&&this.fa.message(a)};
|
||||
Ha(function(){for(var a=D(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new pc(d);Za(d,c)}});function Nd(a,b){this.pa=a^b;this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.xb:this.B.hc;return(this.Z=this.ma=a+b)&255}function Od(a,b){this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.xb:this.B.hc;return(this.Z=this.ma=this.pa=a|b)&255}
|
||||
function Pd(a,b){this.pa=a^b;this.Z=this.ma=a+b+(this.Z&this.ga?1:0);this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.xb:this.B.hc;return this.Z&255}function Qd(a,b){this.pa=a^b;this.Z=this.ma=a-b-(this.Z&this.ga?1:0);this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.xb:this.B.hc;return this.Z&255}function Rd(a,b){this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.xb:this.B.hc;return(this.Z=this.ma=this.pa=a&b)&255}
|
||||
function Sd(a,b){this.pa=a^b;this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.xb:this.B.hc;return(this.Z=this.ma=a-b)&255}function Td(a,b){this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.xb:this.B.hc;return(this.Z=this.ma=this.pa=a^b)&255}function Ud(a,b){this.pa=a^b;this.ga=256;this.Z=this.ma=a-b;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.bj:this.B.xb;this.aa|=2;return a}
|
||||
function Vd(a,b){this.pa=a^b;this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.xb:this.B.hc;return(this.Z=this.ma=a+b)&65535}function Wd(a,b){this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.xb:this.B.hc;return(this.Z=this.ma=this.pa=a|b)&65535}function Xd(a,b){this.pa=a^b;this.Z=this.ma=a+b+(this.Z&this.ga?1:0);this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.xb:this.B.hc;return this.Z&65535}
|
||||
function Yd(a,b){this.pa=a^b;this.Z=this.ma=a-b-(this.Z&this.ga?1:0);this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.xb:this.B.hc;return this.Z&65535}function Zd(a,b){this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.xb:this.B.hc;return(this.Z=this.ma=this.pa=a&b)&65535}function $d(a,b){this.pa=a^b;this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.xb:this.B.hc;return(this.Z=this.ma=a-b)&65535}
|
||||
function ae(a,b){this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.xb:this.B.hc;return(this.Z=this.ma=this.pa=a^b)&65535}function be(a,b){this.pa=a^b;this.ga=65536;this.Z=this.ma=a-b;this.A-=0>this.Ma?0>this.la?this.B.Vb:this.B.bj:this.B.xb;this.aa|=2;return a}function ce(a,b){this.Z=this.Z&this.ga-1|(a&b?this.ga:0);(a^a>>1)&b>>1?Dd(this):yd(this)}function de(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<<e|a>>8-e)&255:d=a<<8;ce.call(this,d,256)}return c}
|
||||
function Dd(a){a.ma|=a.ga;a.pa=a.ma&32896|a.pa&-32897}function Wc(a){return a.Ca&-2262|od(a)|pd(a)|qd(a)|rd(a)|sd(a)|td(a)}function Uc(a,b){a.ga=256;a.Z=a.ma=a.pa=0;b&1&&zd(a);b&4||(a.ma|=1);b&16&&(a.pa|=16);b&64||wd(a);b&128&&Cd(a);b&2048&&Dd(a);a.ya.Mc?b=b&-12289|a.Ca&12288:(a.ne=(b&12288)>>12,!a.ne||a.Gc&1||(a.ne=0));a.ya.Mc>a.ne&&(b=b&-513|a.Ca&512);a.Ca=a.Ca&-1793|b&1792|a.ck;a.Ca&256&&(a.ub|=2,a.aa|=4)}
|
||||
k.Db=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.wa[c]=d;e=!0;break;default:e=Lb.prototype.Db.call(this,a,b,c,d)}return e};k.tb=function(a){return this.Fa[(a&this.Ae)>>this.zb].sc(a&this.mb)};
|
||||
k.ua=function(a){var b=a&this.mb;a=(a&this.Ae)>>this.zb;this.A-=this.B.Jj;return b!=this.mb?this.Fa[a].Zl(b):this.Fa[a++].sc(b)|this.Fa[a&this.Ee].sc(0)<<8};k.Pd=function(a,b){this.Fa[(a&this.Ae)>>this.zb].Hc(a&this.mb,b&255)};k.ed=function(a,b){var c=a&this.mb,d=(a&this.Ae)>>this.zb;this.A-=this.B.Jj;c!=this.mb?this.Fa[d].mm(c,b&65535):(this.Fa[d++].Hc(c,b&255),this.Fa[d&this.Ee].Hc(0,b>>8&255))};k.Km=function(a,b){this.Hg=a;this.la=a.ld(this.zg=b,0);return this.aa&1?0:this.tb(this.la)};
|
||||
k.Lm=function(a,b){this.Hg=a;this.la=a.ld(this.zg=b,1);return this.aa&1?0:this.ua(this.la)};k.Rn=function(a,b){this.Hg=a;this.Ma=this.la=a.ld(this.zg=b,0);return this.aa&1?0:this.tb(this.la)};k.Sn=function(a,b){this.Hg=a;this.Ma=this.la=a.ld(this.zg=b,1);return this.aa&1?0:this.ua(this.la)};k.mp=function(a){this.aa&2||this.Pd(this.Hg.hc(this.zg,1),a)};k.np=function(a){this.aa&2||this.ed(this.Hg.hc(this.zg,2),a)};k.ha=function(){var a=this.tb(this.Ga);this.Ga=this.ya.Ya+(this.va=this.va+1&65535);return a};
|
||||
k.M=function(){var a=this.tb(this.Ga)<<24>>24;this.Ga=this.ya.Ya+(this.va=this.va+1&65535);return a&65535};k.L=function(){var a=this.ua(this.Ga);this.Ga=this.ya.Ya+(this.va=this.va+2&65535);return a};k.La=function(){var a=this.Y;this.Y=this.Y+2&65535;return this.ua(this.Cb.ld(a,1))};function H(a,b){var c=a.Y=a.Y-2&65535;a.ed(a.Cb.hc(c,1),b)}
|
||||
k.jh=function(){F(this,"AX",this.H);F(this,"BX",this.C);F(this,"CX",this.J);F(this,"DX",this.K);F(this,"SP",this.Y);F(this,"BP",this.I);F(this,"SI",this.G);F(this,"DI",this.F);F(this,"CS",this.ya.sa);F(this,"DS",this.Hb.sa);F(this,"SS",this.Cb.sa);F(this,"ES",this.ab.sa);F(this,"IP",this.va);var a=Wc(this);F(this,"PS",a);F(this,"C",a&1?1:0,1);F(this,"P",a&4?1:0,1);F(this,"A",a&16?1:0,1);F(this,"Z",a&64?1:0,1);F(this,"S",a&128?1:0,1);F(this,"T",a&256?1:0,1);F(this,"I",a&512?1:0,1);F(this,"D",a&1024?
|
||||
1:0,1);F(this,"O",a&2048?1:0,1);if(a=this.wa.speed)a.innerHTML=this.qa.Rb&&this.ca.pd?this.ca.pd.toFixed(2)+"Mhz":"Stopped"};
|
||||
k.Gf=function(a){this.qa.oh=!0;var b=this.qa.yk=a&&this.fa&&Ed(this.fa);this.Qc=this.A=a;this.oa&&$b(this.oa);a||!this.fa||E(this.fa,Fd)||(this.aa|=4);do{var c=this.aa&240;if(c)this.Ba|=c;else if(this.Lh=this.Ga,this.la=this.Ma=-1,this.D=this.Hb,this.N=this.Cb,this.Ba=this.aa&256,this.ub){a:{if(!(this.aa&4))if(this.ub&1&&this.Ca&512){if(c=Gd(this.oa),-1<=c&&(this.ub&=-2,0<=c)){this.ub&=-5;Hd.call(this,c,null,11);c=!0;break a}}else if(this.ub&2){this.ub&=-3;Hd.call(this,1,null,11);c=!0;break a}if(c=
|
||||
this.ub&8){for(var c=this.oa,d=!1,e=0;e<c.jb;e++)for(var f=c.jb[e],g=0;g<f.Ib.length;g++){var h=f.Ib[g];h.Jd||(Id(c,h),h.Jd||(d=!0))}c=!d}c&&(this.ub&=-9);c=!1}if(c&&!a){this.aa=0;break}if(this.ub&4){this.aa=this.A=0;break}}if(b&&Jd(this.fa,this.Ga)){this.Fb();break}this.aa=0;this.Wa[this.ha()].call(this)}while(0<this.A);return this.qa.oh?this.Qc-this.A:void 0===this.qa.oh?0:-1};k.Sa=function(a){this.fa&&E(this.fa,Kd)&&this.fa.message(a)};
|
||||
Ha(function(){for(var a=D(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new pc(d);Za(d,c)}});function Nd(a,b){this.pa=a^b;this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.Ab:this.B.ic;return(this.Z=this.ma=a+b)&255}function Od(a,b){this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.Ab:this.B.ic;return(this.Z=this.ma=this.pa=a|b)&255}
|
||||
function Pd(a,b){this.pa=a^b;this.Z=this.ma=a+b+(this.Z&this.ga?1:0);this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.Ab:this.B.ic;return this.Z&255}function Qd(a,b){this.pa=a^b;this.Z=this.ma=a-b-(this.Z&this.ga?1:0);this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.Ab:this.B.ic;return this.Z&255}function Rd(a,b){this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.Ab:this.B.ic;return(this.Z=this.ma=this.pa=a&b)&255}
|
||||
function Sd(a,b){this.pa=a^b;this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.Ab:this.B.ic;return(this.Z=this.ma=a-b)&255}function Td(a,b){this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.Ab:this.B.ic;return(this.Z=this.ma=this.pa=a^b)&255}function Ud(a,b){this.pa=a^b;this.ga=256;this.Z=this.ma=a-b;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.cj:this.B.Ab;this.aa|=2;return a}
|
||||
function Vd(a,b){this.pa=a^b;this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.Ab:this.B.ic;return(this.Z=this.ma=a+b)&65535}function Wd(a,b){this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.Ab:this.B.ic;return(this.Z=this.ma=this.pa=a|b)&65535}function Xd(a,b){this.pa=a^b;this.Z=this.ma=a+b+(this.Z&this.ga?1:0);this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.Ab:this.B.ic;return this.Z&65535}
|
||||
function Yd(a,b){this.pa=a^b;this.Z=this.ma=a-b-(this.Z&this.ga?1:0);this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.Ab:this.B.ic;return this.Z&65535}function Zd(a,b){this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.Ab:this.B.ic;return(this.Z=this.ma=this.pa=a&b)&65535}function $d(a,b){this.pa=a^b;this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.Ab:this.B.ic;return(this.Z=this.ma=a-b)&65535}
|
||||
function ae(a,b){this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.Ab:this.B.ic;return(this.Z=this.ma=this.pa=a^b)&65535}function be(a,b){this.pa=a^b;this.ga=65536;this.Z=this.ma=a-b;this.A-=0>this.Ma?0>this.la?this.B.Wb:this.B.cj:this.B.Ab;this.aa|=2;return a}function ce(a,b){this.Z=this.Z&this.ga-1|(a&b?this.ga:0);(a^a>>1)&b>>1?Dd(this):yd(this)}function de(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<<e|a>>8-e)&255:d=a<<8;ce.call(this,d,256)}return c}
|
||||
function ee(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<<e|a>>16-e)&65535:d=a<<16;ce.call(this,d,65536)}return c}function fe(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);ce.call(this,d,256)}return c}function ge(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);ce.call(this,d,65536)}return c}
|
||||
function he(a,b){var c=a;if(b){var d;(d=(b&this.Af)%9)?(d=a<<d|(this.Z&this.ga?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.Z&this.ga?1:0)<<8;ce.call(this,d,256)}return c}function ie(a,b){var c=a;if(b){var d;(d=(b&this.Af)%17)?(d=a<<d|(this.Z&this.ga?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.Z&this.ga?1:0)<<16;ce.call(this,d,65536)}return c}function je(a,b){var c=a;b&&(c=(b&this.Af)%9,c=a>>c|(this.Z&this.ga?1:0)<<8-c|a<<9-c,ce.call(this,c,256),c&=255);return c}
|
||||
function ke(a,b){var c=a;b&&(c=(b&this.Af)%17,c=a>>c|(this.Z&this.ga?1:0)<<16-c|a<<17-c,ce.call(this,c,65536),c&=65535);return c}function le(a,b){var c=a;b&&(c=8<b?this.Z=this.ma=0:(this.Z=this.ma=a<<b)&255,this.pa=0,this.ga=256);return c}function me(a,b){var c=a;b&&(c=16<b?this.Z=this.ma=0:(this.Z=this.ma=a<<b)&65535,this.pa=0,this.ga=65536);return c}
|
||||
function he(a,b){var c=a;if(b){var d;(d=(b&this.Bf)%9)?(d=a<<d|(this.Z&this.ga?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.Z&this.ga?1:0)<<8;ce.call(this,d,256)}return c}function ie(a,b){var c=a;if(b){var d;(d=(b&this.Bf)%17)?(d=a<<d|(this.Z&this.ga?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.Z&this.ga?1:0)<<16;ce.call(this,d,65536)}return c}function je(a,b){var c=a;b&&(c=(b&this.Bf)%9,c=a>>c|(this.Z&this.ga?1:0)<<8-c|a<<9-c,ce.call(this,c,256),c&=255);return c}
|
||||
function ke(a,b){var c=a;b&&(c=(b&this.Bf)%17,c=a>>c|(this.Z&this.ga?1:0)<<16-c|a<<17-c,ce.call(this,c,65536),c&=65535);return c}function le(a,b){var c=a;b&&(c=8<b?this.Z=this.ma=0:(this.Z=this.ma=a<<b)&255,this.pa=0,this.ga=256);return c}function me(a,b){var c=a;b&&(c=16<b?this.Z=this.ma=0:(this.Z=this.ma=a<<b)&65535,this.pa=0,this.ga=65536);return c}
|
||||
function ne(a,b){if(b){var c=8<b?0:a>>b-1;this.Z=this.ma=c>>1;this.Z=c&1?this.Z|256:this.Z&-257;this.pa=a^this.Z;this.ga=256;a=this.Z}return a&255}function oe(a,b){if(b){var c=16<b?0:a>>b-1;this.Z=this.ma=c>>1;this.Z=c&1?this.Z|65536:this.Z&-65537;this.pa=a^this.Z;this.ga=65536;a=this.Z}return a&65535}function pe(a,b){if(b){8<b&&(b=9);var c=a<<24>>24>>b-1;this.Z=this.ma=c>>1;this.Z=c&1?this.Z|256:this.Z&-257;this.pa=a^this.Z;this.ga=256;a=this.Z}return a&255}
|
||||
function qe(a,b){if(b){16<b&&(b=17);var c=a<<16>>16>>b-1;this.Z=this.ma=c>>1;this.Z=c&1?this.Z|65536:this.Z&-65537;this.pa=a^this.Z;this.ga=65536;a=this.Z}return a&65535}function re(){this.A-=0>this.la?2:this.B.Rl;return 1}function se(){var a=this.J&this.Af;this.A-=(0>this.la?this.B.xj:this.B.wj)+(a<<this.B.yj);return a}function te(){var a=this.ha();this.A-=(0>this.la?this.B.xj:this.B.wj)+(a<<this.B.yj);return a}function ue(){return null}function ve(a){kc.call(this,13,0);return a}
|
||||
function qe(a,b){if(b){16<b&&(b=17);var c=a<<16>>16>>b-1;this.Z=this.ma=c>>1;this.Z=c&1?this.Z|65536:this.Z&-65537;this.pa=a^this.Z;this.ga=65536;a=this.Z}return a&65535}function re(){this.A-=0>this.la?2:this.B.Sl;return 1}function se(){var a=this.J&this.Bf;this.A-=(0>this.la?this.B.yj:this.B.xj)+(a<<this.B.zj);return a}function te(){var a=this.ha();this.A-=(0>this.la?this.B.yj:this.B.xj)+(a<<this.B.zj);return a}function ue(){return null}function ve(a){kc.call(this,13,0);return a}
|
||||
function Nc(a){tc.call(this);return a}function J(a){L.call(this);return a}
|
||||
var we=[Nd,Od,Pd,Qd,Rd,Sd,Td,Ud],xe=[Vd,Wd,Xd,Yd,Zd,$d,ae,be],ye=[function(a,b){this.A-=0>this.Ma?this.B.ic:this.B.Kl;return b},ve,ve,ve,ve,ve,ve,ve],ze=[function(a,b){this.A-=0>this.Ma?this.B.Cl:this.B.Al;return b},J,J,J,J,J,J,J],Ae=[de,fe,he,je,le,ne,J,pe],Be=[ee,ge,ie,ke,me,oe,J,qe],De=[function(a,b){b=this.ha();this.Z=this.ma=this.pa=a&b;this.ga=256;this.A-=0>this.la?this.B.Dj:this.B.Cj;this.aa|=2;return a},J,function(a){this.A-=0>this.la?this.B.xg:this.B.wg;return a^255},function(a,b){b=0;this.pa=
|
||||
a^b;this.ga=256;this.A-=0>this.la?this.B.xg:this.B.wg;return(this.Z=this.ma=b-a)&255},function(a){this.H=this.Kb=(this.Z=(this.H&255)*a)&65535;this.pa=this.ma=this.Z;this.ga=256;this.H&65280?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?this.B.Gl:this.B.Fl;this.aa|=2;return a},function(a){var b=(this.H<<24>>24)*(a<<24>>24);this.H=this.Kb=b&65535;this.Z=this.pa=this.ma=b;this.ga=256;127<b||-128>b?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?this.B.ll:this.B.kl;this.aa|=2;return a},
|
||||
function(a){if(!a)return Ce.call(this),a;var b=this.H/a;if(255<b)return Ce.call(this),a;this.Kb=this.H=b&255|(this.H%a&255)<<8;this.ma=this.pa=this.Z=b|256;this.ga=256;this.A-=0>this.la?this.B.dl:this.B.cl;this.aa|=2;return a},function(a){if(!a)return Ce.call(this),a;var b=(this.H<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Ce.call(this),a;this.Kb=this.H=b&255|((this.H<<16>>16)%(a<<24>>24)&255)<<8;this.ma=this.pa=this.Z=b|256;this.ga=256;this.A-=0>this.la?this.B.hl:this.B.gl;this.aa|=2;return a}],
|
||||
Ee=[function(a,b){b=this.L();this.Z=this.ma=this.pa=a&b;this.ga=65536;this.A-=0>this.la?this.B.Dj:this.B.Cj;this.aa|=2;return a},J,function(a){this.A-=0>this.la?this.B.xg:this.B.wg;return a^65535},function(a,b){b=0;this.pa=a^b;this.ga=65536;this.A-=0>this.la?this.B.xg:this.B.wg;return(this.Z=this.ma=b-a)&65535},function(a){this.Kb=this.H=(this.Z=this.H*a)&65535;this.Eg=this.K=this.Z>>16&65535;this.pa=this.ma=this.Z;this.ga=65536;this.K?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?this.B.Il:
|
||||
this.B.Hl;this.aa|=2;return a},function(a){var b=(this.H<<16>>16)*(a<<16>>16);this.H=this.Kb=b&65535;this.K=this.Eg=b>>16&65535;this.Z=this.pa=this.ma=b;this.ga=65536;32767<b||-32768>b?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?this.B.nl:this.B.ml;this.aa|=2;return a},function(a,b){if(!a)return Ce.call(this),a;b=this.H+65536*this.K;var c=Math.floor(b/a);if(65536<=c)return Ce.call(this),a;this.Kb=this.H=c&65535;this.Eg=this.K=b%a&65535;this.ma=this.pa=this.Z=c|65536;this.ga=65536;this.A-=
|
||||
0>this.la?this.B.fl:this.B.el;this.aa|=2;return a},function(a,b){if(!a)return Ce.call(this),a;var c=a<<16>>16;b=this.K<<16|this.H;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Ce.call(this),a;this.Kb=this.H=d&65535;this.Eg=this.K=b%c&65535;this.ma=this.pa=this.Z=d|65536;this.ga=65536;this.A-=0>this.la?this.B.jl:this.B.il;this.aa|=2;return a}],Lc=[function(a){this.pa=a;a=(this.ma=a+1)&255;this.Z=a|(this.Z&this.ga?1:0)<<8;this.ga=256;this.A-=0>this.la?this.B.vg:this.B.ug;return a},function(a){this.pa=
|
||||
a;a=(this.ma=a-1)&255;this.Z=a|(this.Z&this.ga?1:0)<<8;this.ga=256;this.A-=0>this.la?this.B.vg:this.B.ug;return a},J,J,J,J,J,J],Oc=[function(a){this.pa=a;a=(this.ma=a+1)&65535;this.Z=a|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=0>this.la?this.B.vg:this.B.ug;return a},function(a){this.pa=a;a=(this.ma=a-1)&65535;this.Z=a|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=0>this.la?this.B.vg:this.B.ug;return a},function(a){H(this,this.va);G(this,a);this.A-=0>this.la?this.B.bl:this.B.al;this.aa|=2;return a},
|
||||
function(a){if(0>this.la)return J.call(this,a);H(this,this.xa.sa);H(this,this.va);Tc(this,a,this.ua(this.la+2));this.A-=this.B.Zk;this.aa|=2;return a},function(a){G(this,a);this.A-=0>this.la?this.B.wl:this.B.vl;this.aa|=2;return a},function(a){if(0>this.la)return J.call(this,a);Tc(this,a,this.ua(this.la+2));this.A-=this.B.tl;this.aa|=2;return a},function(a){var b=a;this.aa&512&&(a=a-2&65535,80286>this.Ia&&(b=a));H(this,b);this.A-=0>this.la?this.B.pc:this.B.Ml;this.aa|=2;return a},ve],Fe=[de,fe,he,
|
||||
je,le,ne,J,pe],Ge=[ee,ge,ie,ke,me,oe,J,qe];function He(a,b){this.A-=0>this.Ma?0>this.la?this.B.El:this.B.Dl:this.B.Bl;return b}function Ie(){return He.call(this,0,this.Kb)}function Je(a,b){this.Z=this.ma=this.pa=a&b;this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Ej:this.B.zg:this.B.zg;this.aa|=2;return a}function Ke(a,b){this.Z=this.ma=this.pa=a&b;this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Ej:this.B.zg:this.B.zg;this.aa|=2;return a}
|
||||
function Le(a,b){var c=(b<<16>>16)*(this.ha()<<24>>24);this.Z=this.pa=this.ma=c;this.ga=256;32767<c||-32768>c?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?21:24;return c&65535}function Me(a,b){var c=(b<<16>>16)*(this.L()<<16>>16);this.Z=this.pa=this.ma=c;this.ga=65536;32767<c||-32768>c?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?21:24;return c&65535}function Ne(a){return a}function Oe(a){if(0>this.la)return L.call(this),a;this.A-=this.B.xl;return this.la}
|
||||
function Pe(a,b){if(0>this.la)return L.call(this),a;kd(this,this.ua(this.la+2));this.A-=this.B.fj;return b}function Qe(a,b){if(0>this.la)return L.call(this),a;md(this,this.ua(this.la+2));this.A-=this.B.fj;return b}function Re(a){if(0>this.la)return tc.call(this),a;var b=a<<16>>16,c=this.ua(this.la)<<16>>16,d=this.ua(this.la+2)<<16>>16;this.A-=this.B.Vk;if(b<c||b>d)G(this,this.Kh-this.xa.Ya),Hd.call(this,5,null,0);this.aa|=2;return a}
|
||||
function Se(a,b){this.A-=10+(0>this.la?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Bd(this),a;wd(this);return a}function Te(a,b){this.A-=14+(0>this.la?0:2);if(0<=this.Qb.load(b,!0)&&this.Qb.Ac>=this.xa.Kc&&this.Qb.Ac>=(b&3))return Bd(this),this.Qb.Oa&65280;wd(this);return a}function Xe(a,b){this.A-=14+(0>this.la?0:2);if(b&65528&&0<=this.Qb.load(b,!0)&&(7168==(this.Qb.Oa&7168)||this.Qb.Ac>=this.xa.Kc)&&this.Qb.Ac>=(b&3))return Bd(this),this.Qb.Nc;wd(this);return a}
|
||||
function Ye(a,b){if(0>this.la){switch(this.Yg&7){case 0:this.H=this.H&-256|a;break;case 1:this.J=this.J&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.C=this.C&-256|a;break;case 4:this.H=this.H&255|a<<8;break;case 5:this.J=this.J&255|a<<8;break;case 6:this.K=this.K&255|a<<8;break;case 7:this.C=this.C&255|a<<8}this.A-=this.B.Gj}else this.Ma=this.la,this.R(a),this.A-=this.B.Fj;return b}
|
||||
function Ze(a,b){if(0>this.la){switch(this.Yg&7){case 0:this.H=a;break;case 1:this.J=a;break;case 2:this.K=a;break;case 3:this.C=a;break;case 4:this.Y=a;break;case 5:this.I=a;break;case 6:this.G=a;break;case 7:this.F=a}this.A-=this.B.Gj}else this.Ma=this.la,this.S(a),this.A-=this.B.Fj;return b}function Hd(a,b,c){id(this,a)&&(H(this,Wc(this)),this.Ca&=this.Lc.zh,H(this,this.xa.sa),H(this,this.va),null!=b&&H(this,b),Tc(this,this.Lc.Jj,this.Lc.sa),this.A-=this.B.pl+c)}
|
||||
function $e(a){a|=this.Dc&1;this.Dc=this.Dc&65520|a&-65521;this.Dc&1&&Vc(this,!0)}function Ce(){G(this,this.Kh-this.xa.Ya);Hd.call(this,0,null,2)}function kc(a,b,c){this.fa&&(E(this.fa,Kd)&&this.fa.message("Fault 0x"+t(a)+(null!=b?" (0x"+v(b)+")":"")+" on opcode 0x"+t(nb(this.ra,this.Ga))+" at "+ea(this.va,this.xa.sa)),c&&this.Cb());80186<=this.Ia&&(G(this,this.Kh-this.xa.Ya),Hd.call(this,a,b,0))}function tc(){kc.call(this,6);this.Cb()}
|
||||
function L(){G(this,this.Kh-this.xa.Ya);cb(this,"Undefined opcode 0x"+t(nb(this.ra,this.Ga))+" at "+ea(this.va,this.xa.sa));this.Cb()}function af(a){a=a.call(this,this.H&255,this.H&255);this.H=this.H&-256|a}function bf(a){a=a.call(this,this.H&255,this.J&255);this.H=this.H&-256|a}function cf(a){a=a.call(this,this.H&255,this.K&255);this.H=this.H&-256|a}function df(a){a=a.call(this,this.H&255,this.C&255);this.H=this.H&-256|a}function ef(a){a=a.call(this,this.H&255,this.H>>8);this.H=this.H&-256|a}
|
||||
var we=[Nd,Od,Pd,Qd,Rd,Sd,Td,Ud],xe=[Vd,Wd,Xd,Yd,Zd,$d,ae,be],ye=[function(a,b){this.A-=0>this.Ma?this.B.jc:this.B.Ll;return b},ve,ve,ve,ve,ve,ve,ve],ze=[function(a,b){this.A-=0>this.Ma?this.B.Dl:this.B.Bl;return b},J,J,J,J,J,J,J],Ae=[de,fe,he,je,le,ne,J,pe],Be=[ee,ge,ie,ke,me,oe,J,qe],De=[function(a,b){b=this.ha();this.Z=this.ma=this.pa=a&b;this.ga=256;this.A-=0>this.la?this.B.Ej:this.B.Dj;this.aa|=2;return a},J,function(a){this.A-=0>this.la?this.B.vg:this.B.ug;return a^255},function(a,b){b=0;this.pa=
|
||||
a^b;this.ga=256;this.A-=0>this.la?this.B.vg:this.B.ug;return(this.Z=this.ma=b-a)&255},function(a){this.H=this.Nb=(this.Z=(this.H&255)*a)&65535;this.pa=this.ma=this.Z;this.ga=256;this.H&65280?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?this.B.Hl:this.B.Gl;this.aa|=2;return a},function(a){var b=(this.H<<24>>24)*(a<<24>>24);this.H=this.Nb=b&65535;this.Z=this.pa=this.ma=b;this.ga=256;127<b||-128>b?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?this.B.ml:this.B.ll;this.aa|=2;return a},
|
||||
function(a){if(!a)return Ce.call(this),a;var b=this.H/a;if(255<b)return Ce.call(this),a;this.Nb=this.H=b&255|(this.H%a&255)<<8;this.ma=this.pa=this.Z=b|256;this.ga=256;this.A-=0>this.la?this.B.el:this.B.dl;this.aa|=2;return a},function(a){if(!a)return Ce.call(this),a;var b=(this.H<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Ce.call(this),a;this.Nb=this.H=b&255|((this.H<<16>>16)%(a<<24>>24)&255)<<8;this.ma=this.pa=this.Z=b|256;this.ga=256;this.A-=0>this.la?this.B.il:this.B.hl;this.aa|=2;return a}],
|
||||
Ee=[function(a,b){b=this.L();this.Z=this.ma=this.pa=a&b;this.ga=65536;this.A-=0>this.la?this.B.Ej:this.B.Dj;this.aa|=2;return a},J,function(a){this.A-=0>this.la?this.B.vg:this.B.ug;return a^65535},function(a,b){b=0;this.pa=a^b;this.ga=65536;this.A-=0>this.la?this.B.vg:this.B.ug;return(this.Z=this.ma=b-a)&65535},function(a){this.Nb=this.H=(this.Z=this.H*a)&65535;this.Cg=this.K=this.Z>>16&65535;this.pa=this.ma=this.Z;this.ga=65536;this.K?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?this.B.Jl:
|
||||
this.B.Il;this.aa|=2;return a},function(a){var b=(this.H<<16>>16)*(a<<16>>16);this.H=this.Nb=b&65535;this.K=this.Cg=b>>16&65535;this.Z=this.pa=this.ma=b;this.ga=65536;32767<b||-32768>b?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?this.B.ol:this.B.nl;this.aa|=2;return a},function(a,b){if(!a)return Ce.call(this),a;b=this.H+65536*this.K;var c=Math.floor(b/a);if(65536<=c)return Ce.call(this),a;this.Nb=this.H=c&65535;this.Cg=this.K=b%a&65535;this.ma=this.pa=this.Z=c|65536;this.ga=65536;this.A-=
|
||||
0>this.la?this.B.gl:this.B.fl;this.aa|=2;return a},function(a,b){if(!a)return Ce.call(this),a;var c=a<<16>>16;b=this.K<<16|this.H;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Ce.call(this),a;this.Nb=this.H=d&65535;this.Cg=this.K=b%c&65535;this.ma=this.pa=this.Z=d|65536;this.ga=65536;this.A-=0>this.la?this.B.kl:this.B.jl;this.aa|=2;return a}],Mc=[function(a){this.pa=a;a=(this.ma=a+1)&255;this.Z=a|(this.Z&this.ga?1:0)<<8;this.ga=256;this.A-=0>this.la?this.B.tg:this.B.sg;return a},function(a){this.pa=
|
||||
a;a=(this.ma=a-1)&255;this.Z=a|(this.Z&this.ga?1:0)<<8;this.ga=256;this.A-=0>this.la?this.B.tg:this.B.sg;return a},J,J,J,J,J,J],Oc=[function(a){this.pa=a;a=(this.ma=a+1)&65535;this.Z=a|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=0>this.la?this.B.tg:this.B.sg;return a},function(a){this.pa=a;a=(this.ma=a-1)&65535;this.Z=a|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=0>this.la?this.B.tg:this.B.sg;return a},function(a){H(this,this.va);G(this,a);this.A-=0>this.la?this.B.cl:this.B.bl;this.aa|=2;return a},
|
||||
function(a){if(0>this.la)return J.call(this,a);H(this,this.ya.sa);H(this,this.va);Tc(this,a,this.ua(this.la+2));this.A-=this.B.$k;this.aa|=2;return a},function(a){G(this,a);this.A-=0>this.la?this.B.xl:this.B.wl;this.aa|=2;return a},function(a){if(0>this.la)return J.call(this,a);Tc(this,a,this.ua(this.la+2));this.A-=this.B.ul;this.aa|=2;return a},function(a){var b=a;this.aa&512&&(a=a-2&65535,80286>this.Ia&&(b=a));H(this,b);this.A-=0>this.la?this.B.qc:this.B.Nl;this.aa|=2;return a},ve],Fe=[de,fe,he,
|
||||
je,le,ne,J,pe],Ge=[ee,ge,ie,ke,me,oe,J,qe];function He(a,b){this.A-=0>this.Ma?0>this.la?this.B.Fl:this.B.El:this.B.Cl;return b}function Ie(){return He.call(this,0,this.Nb)}function Je(a,b){this.Z=this.ma=this.pa=a&b;this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Fj:this.B.xg:this.B.xg;this.aa|=2;return a}function Ke(a,b){this.Z=this.ma=this.pa=a&b;this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Fj:this.B.xg:this.B.xg;this.aa|=2;return a}
|
||||
function Le(a,b){var c=(b<<16>>16)*(this.ha()<<24>>24);this.Z=this.pa=this.ma=c;this.ga=256;32767<c||-32768>c?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?21:24;return c&65535}function Me(a,b){var c=(b<<16>>16)*(this.L()<<16>>16);this.Z=this.pa=this.ma=c;this.ga=65536;32767<c||-32768>c?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?21:24;return c&65535}function Ne(a){return a}function Oe(a){if(0>this.la)return L.call(this),a;this.A-=this.B.yl;return this.la}
|
||||
function Pe(a,b){if(0>this.la)return L.call(this),a;kd(this,this.ua(this.la+2));this.A-=this.B.gj;return b}function Qe(a,b){if(0>this.la)return L.call(this),a;md(this,this.ua(this.la+2));this.A-=this.B.gj;return b}function Re(a){if(0>this.la)return tc.call(this),a;var b=a<<16>>16,c=this.ua(this.la)<<16>>16,d=this.ua(this.la+2)<<16>>16;this.A-=this.B.Wk;if(b<c||b>d)G(this,this.Lh-this.ya.Ya),Hd.call(this,5,null,0);this.aa|=2;return a}
|
||||
function Se(a,b){this.A-=10+(0>this.la?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Bd(this),a;wd(this);return a}function Te(a,b){this.A-=14+(0>this.la?0:2);if(0<=this.Sb.load(b,!0)&&this.Sb.Dc>=this.ya.Mc&&this.Sb.Dc>=(b&3))return Bd(this),this.Sb.Oa&65280;wd(this);return a}function Xe(a,b){this.A-=14+(0>this.la?0:2);if(b&65528&&0<=this.Sb.load(b,!0)&&(7168==(this.Sb.Oa&7168)||this.Sb.Dc>=this.ya.Mc)&&this.Sb.Dc>=(b&3))return Bd(this),this.Sb.Pc;wd(this);return a}
|
||||
function Ye(a,b){if(0>this.la){switch(this.Xg&7){case 0:this.H=this.H&-256|a;break;case 1:this.J=this.J&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.C=this.C&-256|a;break;case 4:this.H=this.H&255|a<<8;break;case 5:this.J=this.J&255|a<<8;break;case 6:this.K=this.K&255|a<<8;break;case 7:this.C=this.C&255|a<<8}this.A-=this.B.Hj}else this.Ma=this.la,this.R(a),this.A-=this.B.Gj;return b}
|
||||
function Ze(a,b){if(0>this.la){switch(this.Xg&7){case 0:this.H=a;break;case 1:this.J=a;break;case 2:this.K=a;break;case 3:this.C=a;break;case 4:this.Y=a;break;case 5:this.I=a;break;case 6:this.G=a;break;case 7:this.F=a}this.A-=this.B.Hj}else this.Ma=this.la,this.S(a),this.A-=this.B.Gj;return b}function Hd(a,b,c){id(this,a)&&(H(this,Wc(this)),this.Ca&=this.Nc.Ah,H(this,this.ya.sa),H(this,this.va),null!=b&&H(this,b),Tc(this,this.Nc.Kj,this.Nc.sa),this.A-=this.B.ql+c)}
|
||||
function $e(a){a|=this.Gc&1;this.Gc=this.Gc&65520|a&-65521;this.Gc&1&&Vc(this,!0)}function Ce(){G(this,this.Lh-this.ya.Ya);Hd.call(this,0,null,2)}function kc(a,b,c){this.fa&&(E(this.fa,Kd)&&this.fa.message("Fault 0x"+t(a)+(null!=b?" (0x"+v(b)+")":"")+" on opcode 0x"+t(nb(this.ra,this.Ga))+" at "+ea(this.va,this.ya.sa)),c&&this.Fb());80186<=this.Ia&&(G(this,this.Lh-this.ya.Ya),Hd.call(this,a,b,0))}function tc(){kc.call(this,6);this.Fb()}
|
||||
function L(){G(this,this.Lh-this.ya.Ya);cb(this,"Undefined opcode 0x"+t(nb(this.ra,this.Ga))+" at "+ea(this.va,this.ya.sa));this.Fb()}function af(a){a=a.call(this,this.H&255,this.H&255);this.H=this.H&-256|a}function bf(a){a=a.call(this,this.H&255,this.J&255);this.H=this.H&-256|a}function cf(a){a=a.call(this,this.H&255,this.K&255);this.H=this.H&-256|a}function df(a){a=a.call(this,this.H&255,this.C&255);this.H=this.H&-256|a}function ef(a){a=a.call(this,this.H&255,this.H>>8);this.H=this.H&-256|a}
|
||||
function ff(a){a=a.call(this,this.H&255,this.J>>8);this.H=this.H&-256|a}function gf(a){a=a.call(this,this.H&255,this.K>>8);this.H=this.H&-256|a}function hf(a){a=a.call(this,this.H&255,this.C>>8);this.H=this.H&-256|a}function jf(a){a=a.call(this,this.J&255,this.H&255);this.J=this.J&-256|a}function kf(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function lf(a){a=a.call(this,this.J&255,this.K&255);this.J=this.J&-256|a}
|
||||
function mf(a){a=a.call(this,this.J&255,this.C&255);this.J=this.J&-256|a}function nf(a){a=a.call(this,this.J&255,this.H>>8);this.J=this.J&-256|a}function of(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}function pf(a){a=a.call(this,this.J&255,this.K>>8);this.J=this.J&-256|a}function qf(a){a=a.call(this,this.J&255,this.C>>8);this.J=this.J&-256|a}function rf(a){a=a.call(this,this.K&255,this.H&255);this.K=this.K&-256|a}
|
||||
function sf(a){a=a.call(this,this.K&255,this.J&255);this.K=this.K&-256|a}function tf(a){a=a.call(this,this.K&255,this.K&255);this.K=this.K&-256|a}function uf(a){a=a.call(this,this.K&255,this.C&255);this.K=this.K&-256|a}function vf(a){a=a.call(this,this.K&255,this.H>>8);this.K=this.K&-256|a}function wf(a){a=a.call(this,this.K&255,this.J>>8);this.K=this.K&-256|a}function xf(a){a=a.call(this,this.K&255,this.K>>8);this.K=this.K&-256|a}
|
||||
|
|
@ -377,297 +377,302 @@ b.call(this))},function(a,b){this.K=a[3].call(this,this.K,b.call(this))},functio
|
|||
this.K,b.call(this))},function(a,b){this.C=a[4].call(this,this.C,b.call(this))},function(a,b){this.Y=a[4].call(this,this.Y,b.call(this))},function(a,b){this.I=a[4].call(this,this.I,b.call(this))},function(a,b){this.G=a[4].call(this,this.G,b.call(this))},function(a,b){this.F=a[4].call(this,this.F,b.call(this))},function(a,b){this.H=a[5].call(this,this.H,b.call(this))},function(a,b){this.J=a[5].call(this,this.J,b.call(this))},function(a,b){this.K=a[5].call(this,this.K,b.call(this))},function(a,b){this.C=
|
||||
a[5].call(this,this.C,b.call(this))},function(a,b){this.Y=a[5].call(this,this.Y,b.call(this))},function(a,b){this.I=a[5].call(this,this.I,b.call(this))},function(a,b){this.G=a[5].call(this,this.G,b.call(this))},function(a,b){this.F=a[5].call(this,this.F,b.call(this))},function(a,b){this.H=a[6].call(this,this.H,b.call(this))},function(a,b){this.J=a[6].call(this,this.J,b.call(this))},function(a,b){this.K=a[6].call(this,this.K,b.call(this))},function(a,b){this.C=a[6].call(this,this.C,b.call(this))},
|
||||
function(a,b){this.aa|=512;this.Y=a[6].call(this,this.Y,b.call(this))},function(a,b){this.I=a[6].call(this,this.I,b.call(this))},function(a,b){this.G=a[6].call(this,this.G,b.call(this))},function(a,b){this.F=a[6].call(this,this.F,b.call(this))},function(a,b){this.H=a[7].call(this,this.H,b.call(this))},function(a,b){this.J=a[7].call(this,this.J,b.call(this))},function(a,b){this.K=a[7].call(this,this.K,b.call(this))},function(a,b){this.C=a[7].call(this,this.C,b.call(this))},function(a,b){this.Y=a[7].call(this,
|
||||
this.Y,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))}],Dh=[function(){var a=this.ha();16>(a&56)&&(this.aa|=1);Bh[a].call(this,dd,ue)},function(){var a=this.ha();a&16||(this.aa|=1);Bh[a].call(this,Ch,ue)},function(){N[this.ha()].call(this,Te)},function(){N[this.ha()].call(this,Xe)},L,function(){this.xa.Kc?kc.call(this,13,0,!0):($e.call(this,this.ua(2054)),this.F=
|
||||
this.ua(2086),this.G=this.ua(2088),this.I=this.ua(2090),this.Y=this.ua(2092),this.C=this.ua(2094),this.K=this.ua(2096),this.J=this.ua(2098),this.H=this.ua(2100),oc(this.$a,this.ua(2084),2102),oc(this.xa,this.ua(2082),2108),oc(this.zb,this.ua(2080),2114),oc(this.Eb,this.ua(2078),2120),Uc(this,this.ua(2072)),G(this,this.ua(2074)),this.xc=this.ua(2126)|this.ua(2128)<<16,this.ze=this.xc+this.ua(2130),oc(this.bd,this.ua(2076),2132),this.Gc=this.ua(2138)|this.ua(2140)<<16,this.$d=this.Gc+this.ua(2142),
|
||||
oc(this.Xe,this.ua(2070),2144),this.A-=195)},L,L,L,L,L,tc,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,
|
||||
L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L],ed=[function(){this.A-=2+(0>this.la?0:1);return this.bd.sa},function(){this.A-=2+(0>this.la?0:1);return this.Xe.sa},function(a){this.aa|=2;this.bd.load(a);this.A-=17+(0>this.la?0:2);return a},function(a){this.aa|=2;this.Xe.load(a);this.A-=17+(0>this.la?0:2);return a},function(a){this.aa|=2;this.A-=14+(0>this.la?0:2);if(0<=this.Qb.load(a,!0)&&2048!=(this.Qb.Oa&2560)&&(this.Qb.Ac>=this.xa.Kc&&this.Qb.Ac>=(a&3)||7168==(this.Qb.Oa&7168)))return Bd(this),a;
|
||||
wd(this);return a},function(a){this.aa|=2;this.A-=14+(0>this.la?0:2);if(0<=this.Qb.load(a,!0)&&512==(this.Qb.Oa&2560)&&this.Qb.Ac>=this.xa.Kc&&this.Qb.Ac>=(a&3))return Bd(this),a;wd(this);return a},J,J],fd=[Nc,Nc,Nc,Nc,Nc,Nc,J,J],dd=fd,Ch=[function(a){0>this.la?tc.call(this):(a=this.ze-this.xc,this.cd(this.la+2,this.xc),this.cd(this.la+4,65280|this.xc>>16),this.A-=11);return a},function(a){0>this.la?tc.call(this):(a=this.$d-this.Gc,this.cd(this.la+2,this.Gc),this.cd(this.la+4,65280|this.Gc>>16),this.A-=
|
||||
12);return a},function(a){0>this.la?tc.call(this):(this.xc=this.ua(this.la+2)|this.pb(this.la+4)<<16,this.ze=this.xc+a,this.aa|=2,this.A-=11);return a},function(a){0>this.la?tc.call(this):(this.Gc=this.ua(this.la+2)|this.pb(this.la+4)<<16,this.$d=this.Gc+a,this.aa|=2,this.A-=12);return a},function(){this.A-=2+(0>this.la?0:1);return this.Dc},J,function(a){$e.call(this,a);this.A-=0>this.la?3:6;this.aa|=2;return a},J];function Pc(){Dh[this.ha()].call(this)}
|
||||
function Rc(){H(this,this.Y);this.A-=this.B.pc}function uc(){var a=this.Y;H(this,this.H);H(this,this.J);H(this,this.K);H(this,this.C);H(this,a);H(this,this.I);H(this,this.G);H(this,this.F);this.A-=this.B.Ll}function vc(){this.F=this.La();this.G=this.La();this.I=this.La();this.Y+=2;this.C=this.La();this.K=this.La();this.J=this.La();this.H=this.La();this.A-=this.B.Jl}function wc(){N[this.ha()].call(this,Re)}function Qc(){yh[this.ha()].call(this,Se)}function xc(){H(this,this.L());this.A-=this.B.pc}
|
||||
function yc(){N[this.ha()].call(this,Me)}function zc(){H(this,this.ha());this.A-=this.B.pc}function Ac(){N[this.ha()].call(this,Le)}function Bc(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=ub(this.ra,this.K,this.Ga-b-1);this.Od(this.$a.gc(this.F,0),d);this.F=this.F+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(nd(this,-2),this.aa|=256)}}
|
||||
function Cc(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=this.Ga-b-1,d=ub(this.ra,this.K,d)|ub(this.ra,this.K,d)<<8;this.cd(this.$a.gc(this.F,1),d);this.F=this.F+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(nd(this,-2),this.aa|=256)}}
|
||||
function Dc(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=this.pb(this.Eb.jd(this.G,0));this.G=this.G+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;Ab(this.ra,this.K,d,this.Ga-b-1);a&&(nd(this,-2),this.aa|=256)}}
|
||||
function Ec(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=this.ua(this.Eb.jd(this.G,1));this.G=this.G+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;b=this.Ga-b-1;Ab(this.ra,this.K,d&255,b);Ab(this.ra,this.K,d>>8,b);a&&(nd(this,-2),this.aa|=256)}}function Eh(){var a=this.M();td(this)?(G(this,this.va+a),this.A-=this.B.Wb):this.A-=this.B.Xb}function Fh(){var a=this.M();td(this)?this.A-=this.B.Xb:(G(this,this.va+a),this.A-=this.B.Wb)}
|
||||
function Gh(){var a=this.M();od(this)?(G(this,this.va+a),this.A-=this.B.Wb):this.A-=this.B.Xb}function Hh(){var a=this.M();od(this)?this.A-=this.B.Xb:(G(this,this.va+a),this.A-=this.B.Wb)}function Ih(){var a=this.M();rd(this)?(G(this,this.va+a),this.A-=this.B.Wb):this.A-=this.B.Xb}function Jh(){var a=this.M();rd(this)?this.A-=this.B.Xb:(G(this,this.va+a),this.A-=this.B.Wb)}function Kh(){var a=this.M();od(this)||rd(this)?(G(this,this.va+a),this.A-=this.B.Wb):this.A-=this.B.Xb}
|
||||
function Lh(){var a=this.M();od(this)||rd(this)?this.A-=this.B.Xb:(G(this,this.va+a),this.A-=this.B.Wb)}function Mh(){var a=this.M();sd(this)?(G(this,this.va+a),this.A-=this.B.Wb):this.A-=this.B.Xb}function Nh(){var a=this.M();sd(this)?this.A-=this.B.Xb:(G(this,this.va+a),this.A-=this.B.Wb)}function Oh(){var a=this.M();pd(this)?(G(this,this.va+a),this.A-=this.B.Wb):this.A-=this.B.Xb}function Ph(){var a=this.M();pd(this)?this.A-=this.B.Xb:(G(this,this.va+a),this.A-=this.B.Wb)}
|
||||
function Qh(){var a=this.M();!sd(this)!=!td(this)?(G(this,this.va+a),this.A-=this.B.Wb):this.A-=this.B.Xb}function Rh(){var a=this.M();!sd(this)==!td(this)?(G(this,this.va+a),this.A-=this.B.Wb):this.A-=this.B.Xb}function Sh(){var a=this.M();rd(this)||!sd(this)!=!td(this)?(G(this,this.va+a),this.A-=this.B.Wb):this.A-=this.B.Xb}function Th(){var a=this.M();rd(this)||!sd(this)!=!td(this)?this.A-=this.B.Xb:(G(this,this.va+a),this.A-=this.B.Wb)}
|
||||
function Uh(){Ah[this.ha()].call(this,we,this.ha);this.A-=0>this.Ma?1:this.B.Hh}function Fc(){Ah[this.ha()].call(this,Fe,te)}function Gc(){Bh[this.ha()].call(this,Ge,te)}function Vh(){var a=this.L();G(this,this.La());this.Y=this.Y+a&65535;this.A-=this.B.Ql}function Wh(){G(this,this.La());this.A-=this.B.Nl}
|
||||
function Ic(){var a=this.L(),b=this.ha()&31;this.A-=11;H(this,this.I);var c=this.Y;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.I=this.I-2&65535,H(this,this.ua(this.zb.jd(this.I,1)));H(this,c)}this.I=c;this.Y=this.Y-a&65535}function Jc(){this.Y=this.I;this.I=this.La();this.A-=5}function Xh(){var a=this.L();Tc(this,this.La(),this.La());this.Y=this.Y+a&65535;this.fh&&cd(this,this.Ga);this.A-=this.B.Pl}function Yh(){Tc(this,this.La(),this.La());this.A-=this.B.Ol}
|
||||
this.Y,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))}],Dh=[function(){var a=this.ha();16>(a&56)&&(this.aa|=1);Bh[a].call(this,dd,ue)},function(){var a=this.ha();a&16||(this.aa|=1);Bh[a].call(this,Ch,ue)},function(){N[this.ha()].call(this,Te)},function(){N[this.ha()].call(this,Xe)},L,function(){this.ya.Mc?kc.call(this,13,0,!0):($e.call(this,this.ua(2054)),this.F=
|
||||
this.ua(2086),this.G=this.ua(2088),this.I=this.ua(2090),this.Y=this.ua(2092),this.C=this.ua(2094),this.K=this.ua(2096),this.J=this.ua(2098),this.H=this.ua(2100),oc(this.ab,this.ua(2084),2102),oc(this.ya,this.ua(2082),2108),oc(this.Cb,this.ua(2080),2114),oc(this.Hb,this.ua(2078),2120),Uc(this,this.ua(2072)),G(this,this.ua(2074)),this.zc=this.ua(2126)|this.ua(2128)<<16,this.ze=this.zc+this.ua(2130),oc(this.dd,this.ua(2076),2132),this.Jc=this.ua(2138)|this.ua(2140)<<16,this.$d=this.Jc+this.ua(2142),
|
||||
oc(this.Ye,this.ua(2070),2144),this.A-=195)},L,L,L,L,L,tc,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,
|
||||
L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L],ed=[function(){this.A-=2+(0>this.la?0:1);return this.dd.sa},function(){this.A-=2+(0>this.la?0:1);return this.Ye.sa},function(a){this.aa|=2;this.dd.load(a);this.A-=17+(0>this.la?0:2);return a},function(a){this.aa|=2;this.Ye.load(a);this.A-=17+(0>this.la?0:2);return a},function(a){this.aa|=2;this.A-=14+(0>this.la?0:2);if(0<=this.Sb.load(a,!0)&&2048!=(this.Sb.Oa&2560)&&(this.Sb.Dc>=this.ya.Mc&&this.Sb.Dc>=(a&3)||7168==(this.Sb.Oa&7168)))return Bd(this),a;
|
||||
wd(this);return a},function(a){this.aa|=2;this.A-=14+(0>this.la?0:2);if(0<=this.Sb.load(a,!0)&&512==(this.Sb.Oa&2560)&&this.Sb.Dc>=this.ya.Mc&&this.Sb.Dc>=(a&3))return Bd(this),a;wd(this);return a},J,J],fd=[Nc,Nc,Nc,Nc,Nc,Nc,J,J],dd=fd,Ch=[function(a){0>this.la?tc.call(this):(a=this.ze-this.zc,this.ed(this.la+2,this.zc),this.ed(this.la+4,65280|this.zc>>16),this.A-=11);return a},function(a){0>this.la?tc.call(this):(a=this.$d-this.Jc,this.ed(this.la+2,this.Jc),this.ed(this.la+4,65280|this.Jc>>16),this.A-=
|
||||
12);return a},function(a){0>this.la?tc.call(this):(this.zc=this.ua(this.la+2)|this.tb(this.la+4)<<16,this.ze=this.zc+a,this.aa|=2,this.A-=11);return a},function(a){0>this.la?tc.call(this):(this.Jc=this.ua(this.la+2)|this.tb(this.la+4)<<16,this.$d=this.Jc+a,this.aa|=2,this.A-=12);return a},function(){this.A-=2+(0>this.la?0:1);return this.Gc},J,function(a){$e.call(this,a);this.A-=0>this.la?3:6;this.aa|=2;return a},J];function Pc(){Dh[this.ha()].call(this)}
|
||||
function Rc(){H(this,this.Y);this.A-=this.B.qc}function uc(){var a=this.Y;H(this,this.H);H(this,this.J);H(this,this.K);H(this,this.C);H(this,a);H(this,this.I);H(this,this.G);H(this,this.F);this.A-=this.B.Ml}function vc(){this.F=this.La();this.G=this.La();this.I=this.La();this.Y+=2;this.C=this.La();this.K=this.La();this.J=this.La();this.H=this.La();this.A-=this.B.Kl}function wc(){N[this.ha()].call(this,Re)}function Qc(){yh[this.ha()].call(this,Se)}function xc(){H(this,this.L());this.A-=this.B.qc}
|
||||
function yc(){N[this.ha()].call(this,Me)}function zc(){H(this,this.ha());this.A-=this.B.qc}function Ac(){N[this.ha()].call(this,Le)}function Bc(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=ub(this.ra,this.K,this.Ga-b-1);this.Pd(this.ab.hc(this.F,0),d);this.F=this.F+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(nd(this,-2),this.aa|=256)}}
|
||||
function Cc(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=this.Ga-b-1,d=ub(this.ra,this.K,d)|ub(this.ra,this.K,d)<<8;this.ed(this.ab.hc(this.F,1),d);this.F=this.F+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(nd(this,-2),this.aa|=256)}}
|
||||
function Dc(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=this.tb(this.Hb.ld(this.G,0));this.G=this.G+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;Ab(this.ra,this.K,d,this.Ga-b-1);a&&(nd(this,-2),this.aa|=256)}}
|
||||
function Ec(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=this.ua(this.Hb.ld(this.G,1));this.G=this.G+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;b=this.Ga-b-1;Ab(this.ra,this.K,d&255,b);Ab(this.ra,this.K,d>>8,b);a&&(nd(this,-2),this.aa|=256)}}function Eh(){var a=this.M();td(this)?(G(this,this.va+a),this.A-=this.B.Xb):this.A-=this.B.Yb}function Fh(){var a=this.M();td(this)?this.A-=this.B.Yb:(G(this,this.va+a),this.A-=this.B.Xb)}
|
||||
function Gh(){var a=this.M();od(this)?(G(this,this.va+a),this.A-=this.B.Xb):this.A-=this.B.Yb}function Hh(){var a=this.M();od(this)?this.A-=this.B.Yb:(G(this,this.va+a),this.A-=this.B.Xb)}function Ih(){var a=this.M();rd(this)?(G(this,this.va+a),this.A-=this.B.Xb):this.A-=this.B.Yb}function Jh(){var a=this.M();rd(this)?this.A-=this.B.Yb:(G(this,this.va+a),this.A-=this.B.Xb)}function Kh(){var a=this.M();od(this)||rd(this)?(G(this,this.va+a),this.A-=this.B.Xb):this.A-=this.B.Yb}
|
||||
function Lh(){var a=this.M();od(this)||rd(this)?this.A-=this.B.Yb:(G(this,this.va+a),this.A-=this.B.Xb)}function Mh(){var a=this.M();sd(this)?(G(this,this.va+a),this.A-=this.B.Xb):this.A-=this.B.Yb}function Nh(){var a=this.M();sd(this)?this.A-=this.B.Yb:(G(this,this.va+a),this.A-=this.B.Xb)}function Oh(){var a=this.M();pd(this)?(G(this,this.va+a),this.A-=this.B.Xb):this.A-=this.B.Yb}function Ph(){var a=this.M();pd(this)?this.A-=this.B.Yb:(G(this,this.va+a),this.A-=this.B.Xb)}
|
||||
function Qh(){var a=this.M();!sd(this)!=!td(this)?(G(this,this.va+a),this.A-=this.B.Xb):this.A-=this.B.Yb}function Rh(){var a=this.M();!sd(this)==!td(this)?(G(this,this.va+a),this.A-=this.B.Xb):this.A-=this.B.Yb}function Sh(){var a=this.M();rd(this)||!sd(this)!=!td(this)?(G(this,this.va+a),this.A-=this.B.Xb):this.A-=this.B.Yb}function Th(){var a=this.M();rd(this)||!sd(this)!=!td(this)?this.A-=this.B.Yb:(G(this,this.va+a),this.A-=this.B.Xb)}
|
||||
function Uh(){Ah[this.ha()].call(this,we,this.ha);this.A-=0>this.Ma?1:this.B.Ih}function Fc(){Ah[this.ha()].call(this,Fe,te)}function Hc(){Bh[this.ha()].call(this,Ge,te)}function Vh(){var a=this.L();G(this,this.La());this.Y=this.Y+a&65535;this.A-=this.B.Rl}function Wh(){G(this,this.La());this.A-=this.B.Ol}
|
||||
function Ic(){var a=this.L(),b=this.ha()&31;this.A-=11;H(this,this.I);var c=this.Y;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.I=this.I-2&65535,H(this,this.ua(this.Cb.ld(this.I,1)));H(this,c)}this.I=c;this.Y=this.Y-a&65535}function Jc(){this.Y=this.I;this.I=this.La();this.A-=5}function Xh(){var a=this.L();Tc(this,this.La(),this.La());this.Y=this.Y+a&65535;this.fh&&cd(this,this.Ga);this.A-=this.B.Ql}function Yh(){Tc(this,this.La(),this.La());this.A-=this.B.Pl}
|
||||
function Zh(){N[this.ha()].call(this,Ne);this.A-=8}function $h(){this.aa|=36;this.A-=this.B.pe}function Kc(){L.call(this)}
|
||||
var sc=[function(){var a=this.ha();xh[a].call(this,Nd)},function(){yh[this.ha()].call(this,Vd)},function(){zh[this.ha()].call(this,Nd)},function(){N[this.ha()].call(this,Vd)},function(){this.H=this.H&-256|Nd.call(this,this.H&255,this.ha());this.A--},function(){this.H=Vd.call(this,this.H,this.L());this.A--},function(){H(this,this.$a.sa);this.A-=this.B.yg},function(){md(this,this.La());this.A-=this.B.ic},function(){xh[this.ha()].call(this,Od)},function(){yh[this.ha()].call(this,Wd)},function(){zh[this.ha()].call(this,
|
||||
Od)},function(){N[this.ha()].call(this,Wd)},function(){this.H=this.H&-256|Od.call(this,this.H&255,this.ha());this.A--},function(){this.H=Wd.call(this,this.H,this.L());this.A--},function(){H(this,this.xa.sa);this.A-=this.B.yg},function(){jd(this,this.La());this.A-=this.B.ic},function(){xh[this.ha()].call(this,Pd)},function(){yh[this.ha()].call(this,Xd)},function(){zh[this.ha()].call(this,Pd)},function(){N[this.ha()].call(this,Xd)},function(){this.H=this.H&-256|Pd.call(this,this.H&255,this.ha());this.A--},
|
||||
function(){this.H=Xd.call(this,this.H,this.L());this.A--},function(){H(this,this.zb.sa);this.A-=this.B.yg},function(){ld(this,this.La());this.A-=this.B.ic},function(){xh[this.ha()].call(this,Qd)},function(){yh[this.ha()].call(this,Yd)},function(){zh[this.ha()].call(this,Qd)},function(){N[this.ha()].call(this,Yd)},function(){this.H=this.H&-256|Qd.call(this,this.H&255,this.ha());this.A--},function(){this.H=Yd.call(this,this.H,this.L());this.A--},function(){H(this,this.Eb.sa);this.A-=this.B.yg},function(){kd(this,
|
||||
this.La());this.A-=this.B.ic},function(){xh[this.ha()].call(this,Rd)},function(){yh[this.ha()].call(this,Zd)},function(){zh[this.ha()].call(this,Rd)},function(){N[this.ha()].call(this,Zd)},function(){this.H=this.H&-256|Rd.call(this,this.H&255,this.ha());this.A--},function(){this.H=Zd.call(this,this.H,this.L());this.A--},function(){this.aa|=20;this.D=this.N=this.$a;this.A-=this.B.pe},function(){var a=this.H&255,b=qd(this),c=this.Z&this.ga;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.H=this.H&
|
||||
-256|(this.Z=this.ma=a&255);this.ga=65536;c&&(this.Z|=this.ga);b?Ad(this):vd(this);this.A-=this.B.Qe},function(){xh[this.ha()].call(this,Sd)},function(){yh[this.ha()].call(this,$d)},function(){zh[this.ha()].call(this,Sd)},function(){N[this.ha()].call(this,$d)},function(){this.H=this.H&-256|Sd.call(this,this.H&255,this.ha());this.A--},function(){this.H=$d.call(this,this.H,this.L());this.A--},function(){this.aa|=20;this.D=this.N=this.xa;this.A-=this.B.pe},function(){var a=this.H&255,b=qd(this),c=this.Z&
|
||||
this.ga;if(9<(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.H=this.H&-256|(this.Z=this.ma=a&255);this.ga=65536;c&&(this.Z|=this.ga);b?Ad(this):vd(this);this.A-=this.B.Qe},function(){xh[this.ha()].call(this,Td)},function(){yh[this.ha()].call(this,ae)},function(){zh[this.ha()].call(this,Td)},function(){N[this.ha()].call(this,ae)},function(){this.H=this.H&-256|Td.call(this,this.H&255,this.ha());this.A--},function(){this.H=ae.call(this,this.H,this.L());this.A--},function(){this.aa|=20;this.D=this.N=
|
||||
this.zb;this.A-=this.B.pe},function(){var a=this.H&255,b=this.H>>8,c,d=qd(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.Z=a);this.ga=65536;c&&(this.Z|=this.ga);d?Ad(this):vd(this);this.A-=this.B.Qe},function(){xh[this.ha()].call(this,Ud)},function(){yh[this.ha()].call(this,be)},function(){zh[this.ha()].call(this,Ud)},function(){N[this.ha()].call(this,be)},function(){this.H=this.H&-256|Ud.call(this,this.H&255,this.ha());this.A--},function(){this.H=be.call(this,this.H,this.L());
|
||||
this.A--},function(){this.aa|=20;this.D=this.N=this.Eb;this.A-=this.B.pe},function(){var a=this.H&255,b=this.H>>8,c,d=qd(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.Z=a);this.ga=65536;c&&(this.Z|=this.ga);d?Ad(this):vd(this);this.A-=this.B.Qe},function(){this.pa=this.H;this.H=(this.ma=this.H+1)&65535;this.Z=this.H|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.J;this.J=(this.ma=this.J+1)&65535;this.Z=this.J|(this.Z&this.ga?1:0)<<16;this.ga=65536;
|
||||
var sc=[function(){var a=this.ha();xh[a].call(this,Nd)},function(){yh[this.ha()].call(this,Vd)},function(){zh[this.ha()].call(this,Nd)},function(){N[this.ha()].call(this,Vd)},function(){this.H=this.H&-256|Nd.call(this,this.H&255,this.ha());this.A--},function(){this.H=Vd.call(this,this.H,this.L());this.A--},function(){H(this,this.ab.sa);this.A-=this.B.wg},function(){md(this,this.La());this.A-=this.B.jc},function(){xh[this.ha()].call(this,Od)},function(){yh[this.ha()].call(this,Wd)},function(){zh[this.ha()].call(this,
|
||||
Od)},function(){N[this.ha()].call(this,Wd)},function(){this.H=this.H&-256|Od.call(this,this.H&255,this.ha());this.A--},function(){this.H=Wd.call(this,this.H,this.L());this.A--},function(){H(this,this.ya.sa);this.A-=this.B.wg},function(){jd(this,this.La());this.A-=this.B.jc},function(){xh[this.ha()].call(this,Pd)},function(){yh[this.ha()].call(this,Xd)},function(){zh[this.ha()].call(this,Pd)},function(){N[this.ha()].call(this,Xd)},function(){this.H=this.H&-256|Pd.call(this,this.H&255,this.ha());this.A--},
|
||||
function(){this.H=Xd.call(this,this.H,this.L());this.A--},function(){H(this,this.Cb.sa);this.A-=this.B.wg},function(){ld(this,this.La());this.A-=this.B.jc},function(){xh[this.ha()].call(this,Qd)},function(){yh[this.ha()].call(this,Yd)},function(){zh[this.ha()].call(this,Qd)},function(){N[this.ha()].call(this,Yd)},function(){this.H=this.H&-256|Qd.call(this,this.H&255,this.ha());this.A--},function(){this.H=Yd.call(this,this.H,this.L());this.A--},function(){H(this,this.Hb.sa);this.A-=this.B.wg},function(){kd(this,
|
||||
this.La());this.A-=this.B.jc},function(){xh[this.ha()].call(this,Rd)},function(){yh[this.ha()].call(this,Zd)},function(){zh[this.ha()].call(this,Rd)},function(){N[this.ha()].call(this,Zd)},function(){this.H=this.H&-256|Rd.call(this,this.H&255,this.ha());this.A--},function(){this.H=Zd.call(this,this.H,this.L());this.A--},function(){this.aa|=20;this.D=this.N=this.ab;this.A-=this.B.pe},function(){var a=this.H&255,b=qd(this),c=this.Z&this.ga;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.H=this.H&
|
||||
-256|(this.Z=this.ma=a&255);this.ga=65536;c&&(this.Z|=this.ga);b?Ad(this):vd(this);this.A-=this.B.Re},function(){xh[this.ha()].call(this,Sd)},function(){yh[this.ha()].call(this,$d)},function(){zh[this.ha()].call(this,Sd)},function(){N[this.ha()].call(this,$d)},function(){this.H=this.H&-256|Sd.call(this,this.H&255,this.ha());this.A--},function(){this.H=$d.call(this,this.H,this.L());this.A--},function(){this.aa|=20;this.D=this.N=this.ya;this.A-=this.B.pe},function(){var a=this.H&255,b=qd(this),c=this.Z&
|
||||
this.ga;if(9<(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.H=this.H&-256|(this.Z=this.ma=a&255);this.ga=65536;c&&(this.Z|=this.ga);b?Ad(this):vd(this);this.A-=this.B.Re},function(){xh[this.ha()].call(this,Td)},function(){yh[this.ha()].call(this,ae)},function(){zh[this.ha()].call(this,Td)},function(){N[this.ha()].call(this,ae)},function(){this.H=this.H&-256|Td.call(this,this.H&255,this.ha());this.A--},function(){this.H=ae.call(this,this.H,this.L());this.A--},function(){this.aa|=20;this.D=this.N=
|
||||
this.Cb;this.A-=this.B.pe},function(){var a=this.H&255,b=this.H>>8,c,d=qd(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.Z=a);this.ga=65536;c&&(this.Z|=this.ga);d?Ad(this):vd(this);this.A-=this.B.Re},function(){xh[this.ha()].call(this,Ud)},function(){yh[this.ha()].call(this,be)},function(){zh[this.ha()].call(this,Ud)},function(){N[this.ha()].call(this,be)},function(){this.H=this.H&-256|Ud.call(this,this.H&255,this.ha());this.A--},function(){this.H=be.call(this,this.H,this.L());
|
||||
this.A--},function(){this.aa|=20;this.D=this.N=this.Hb;this.A-=this.B.pe},function(){var a=this.H&255,b=this.H>>8,c,d=qd(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.Z=a);this.ga=65536;c&&(this.Z|=this.ga);d?Ad(this):vd(this);this.A-=this.B.Re},function(){this.pa=this.H;this.H=(this.ma=this.H+1)&65535;this.Z=this.H|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.J;this.J=(this.ma=this.J+1)&65535;this.Z=this.J|(this.Z&this.ga?1:0)<<16;this.ga=65536;
|
||||
this.A-=2},function(){this.pa=this.K;this.K=(this.ma=this.K+1)&65535;this.Z=this.K|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.C;this.C=(this.ma=this.C+1)&65535;this.Z=this.C|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.Y;this.Y=(this.ma=this.Y+1)&65535;this.Z=this.Y|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.I;this.I=(this.ma=this.I+1)&65535;this.Z=this.I|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=
|
||||
this.G;this.G=(this.ma=this.G+1)&65535;this.Z=this.G|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.F;this.F=(this.ma=this.F+1)&65535;this.Z=this.F|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.H;this.H=(this.ma=this.H-1)&65535;this.Z=this.H|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.J;this.J=(this.ma=this.J-1)&65535;this.Z=this.J|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.K;this.K=
|
||||
(this.ma=this.K-1)&65535;this.Z=this.K|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.C;this.C=(this.ma=this.C-1)&65535;this.Z=this.C|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.Y;this.Y=(this.ma=this.Y-1)&65535;this.Z=this.Y|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.I;this.I=(this.ma=this.I-1)&65535;this.Z=this.I|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.G;this.G=(this.ma=this.G-
|
||||
1)&65535;this.Z=this.G|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.F;this.F=(this.ma=this.F-1)&65535;this.Z=this.F|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){H(this,this.H);this.A-=this.B.pc},function(){H(this,this.J);this.A-=this.B.pc},function(){H(this,this.K);this.A-=this.B.pc},function(){H(this,this.C);this.A-=this.B.pc},function(){H(this,this.Y-2&65535);this.A-=this.B.pc},function(){H(this,this.I);this.A-=this.B.pc},function(){H(this,this.G);this.A-=
|
||||
this.B.pc},function(){H(this,this.F);this.A-=this.B.pc},function(){this.H=this.La();this.A-=this.B.ic},function(){this.J=this.La();this.A-=this.B.ic},function(){this.K=this.La();this.A-=this.B.ic},function(){this.C=this.La();this.A-=this.B.ic},function(){this.Y=this.La();this.A-=this.B.ic},function(){this.I=this.La();this.A-=this.B.ic},function(){this.G=this.La();this.A-=this.B.ic},function(){this.F=this.La();this.A-=this.B.ic},Eh,Fh,Gh,Hh,Ih,Jh,Kh,Lh,Mh,Nh,Oh,Ph,Qh,Rh,Sh,Th,Eh,Fh,Gh,Hh,Ih,Jh,Kh,
|
||||
Lh,Mh,Nh,Oh,Ph,Qh,Rh,Sh,Th,Uh,function(){Bh[this.ha()].call(this,xe,this.L);this.A-=0>this.Ma?1:this.B.Hh},Uh,function(){Bh[this.ha()].call(this,xe,this.M);this.A-=0>this.Ma?1:this.B.Hh},function(){xh[this.ha()].call(this,Je)},function(){yh[this.ha()].call(this,Ke)},function(){zh[this.Yg=this.ha()].call(this,Ye)},function(){N[this.Yg=this.ha()].call(this,Ze)},function(){this.aa|=1;xh[this.ha()].call(this,He)},function(){this.aa|=1;yh[this.ha()].call(this,He)},function(){zh[this.ha()].call(this,He)},
|
||||
function(){N[this.ha()].call(this,He)},function(){var a=this.ha();switch((a&56)>>3){case 0:this.Kb=this.$a.sa;break;case 1:this.Kb=this.xa.sa;break;case 2:this.Kb=this.zb.sa;break;case 3:this.Kb=this.Eb.sa;break;default:L.call(this);return}this.aa|=1;yh[a].call(this,Ie)},function(){this.aa|=1;this.D=this.N=this.hm;N[this.ha()].call(this,Oe)},function(){var a,b=this.ha(),c=(b&56)>>3;switch(c){case 0:a=this.H;break;case 2:a=this.K;break;case 3:a=this.C;break;default:if(80286<=this.Ia){tc.call(this);
|
||||
1)&65535;this.Z=this.G|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.F;this.F=(this.ma=this.F-1)&65535;this.Z=this.F|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){H(this,this.H);this.A-=this.B.qc},function(){H(this,this.J);this.A-=this.B.qc},function(){H(this,this.K);this.A-=this.B.qc},function(){H(this,this.C);this.A-=this.B.qc},function(){H(this,this.Y-2&65535);this.A-=this.B.qc},function(){H(this,this.I);this.A-=this.B.qc},function(){H(this,this.G);this.A-=
|
||||
this.B.qc},function(){H(this,this.F);this.A-=this.B.qc},function(){this.H=this.La();this.A-=this.B.jc},function(){this.J=this.La();this.A-=this.B.jc},function(){this.K=this.La();this.A-=this.B.jc},function(){this.C=this.La();this.A-=this.B.jc},function(){this.Y=this.La();this.A-=this.B.jc},function(){this.I=this.La();this.A-=this.B.jc},function(){this.G=this.La();this.A-=this.B.jc},function(){this.F=this.La();this.A-=this.B.jc},Eh,Fh,Gh,Hh,Ih,Jh,Kh,Lh,Mh,Nh,Oh,Ph,Qh,Rh,Sh,Th,Eh,Fh,Gh,Hh,Ih,Jh,Kh,
|
||||
Lh,Mh,Nh,Oh,Ph,Qh,Rh,Sh,Th,Uh,function(){Bh[this.ha()].call(this,xe,this.L);this.A-=0>this.Ma?1:this.B.Ih},Uh,function(){Bh[this.ha()].call(this,xe,this.M);this.A-=0>this.Ma?1:this.B.Ih},function(){xh[this.ha()].call(this,Je)},function(){yh[this.ha()].call(this,Ke)},function(){zh[this.Xg=this.ha()].call(this,Ye)},function(){N[this.Xg=this.ha()].call(this,Ze)},function(){this.aa|=1;xh[this.ha()].call(this,He)},function(){this.aa|=1;yh[this.ha()].call(this,He)},function(){zh[this.ha()].call(this,He)},
|
||||
function(){N[this.ha()].call(this,He)},function(){var a=this.ha();switch((a&56)>>3){case 0:this.Nb=this.ab.sa;break;case 1:this.Nb=this.ya.sa;break;case 2:this.Nb=this.Cb.sa;break;case 3:this.Nb=this.Hb.sa;break;default:L.call(this);return}this.aa|=1;yh[a].call(this,Ie)},function(){this.aa|=1;this.D=this.N=this.im;N[this.ha()].call(this,Oe)},function(){var a,b=this.ha(),c=(b&56)>>3;switch(c){case 0:a=this.H;break;case 2:a=this.K;break;case 3:a=this.C;break;default:if(80286<=this.Ia){tc.call(this);
|
||||
return}switch(c){case 1:a=this.J;break;case 4:a=this.Y;break;case 5:a=this.I;break;case 6:a=this.G;break;case 7:a=this.F}}N[b].call(this,He);switch(c){case 0:md(this,this.H);this.H=a;break;case 1:jd(this,this.J);this.J=a;break;case 2:ld(this,this.K);this.K=a;break;case 3:kd(this,this.C);this.C=a;break;case 4:md(this,this.Y);this.Y=a;break;case 5:jd(this,this.I);this.I=a;break;case 6:ld(this,this.G);this.G=a;break;case 7:kd(this,this.F),this.F=a}},function(){this.aa|=1;Bh[this.ha()].call(this,ye,this.La)},
|
||||
function(){this.A-=3},function(){var a=this.H;this.H=this.J;this.J=a;this.A-=3},function(){var a=this.H;this.H=this.K;this.K=a;this.A-=3},function(){var a=this.H;this.H=this.C;this.C=a;this.A-=3},function(){var a=this.H;this.H=this.Y;this.Y=a;this.A-=3},function(){var a=this.H;this.H=this.I;this.I=a;this.A-=3},function(){var a=this.H;this.H=this.G;this.G=a;this.A-=3},function(){var a=this.H;this.H=this.F;this.F=a;this.A-=3},function(){this.H=this.H<<24>>24&65535;this.A-=2},function(){this.K=this.H&
|
||||
32768?65535:0;this.A-=this.B.Xk},function(){var a=this.L(),b=this.L();H(this,this.xa.sa);H(this,this.va);Tc(this,a,b);this.A-=this.B.$k},function(){L.call(this)},function(){H(this,Wc(this));this.A-=this.B.pc},function(){Uc(this,this.La());this.A-=this.B.ic},function(){var a=this.H>>8;a&1?zd(this):ud(this);a&4?pd(this)||(this.ma^=1):pd(this)&&(this.ma^=1);a&16?Ad(this):vd(this);a&64?Bd(this):wd(this);a&128?Cd(this):xd(this);this.A-=this.B.Jb},function(){this.H=this.H&255|(Wc(this)&213)<<8;this.A-=
|
||||
this.B.Jb},function(){this.H=this.H&-256|this.U(this.D,this.L());this.A-=this.B.mj},function(){this.H=this.V(this.D,this.L());this.A-=this.B.mj},function(){var a=this.L(),b=this.H;this.Od(this.D.gc(a,0),b);this.A-=this.B.nj},function(){var a=this.L(),b=this.H;this.cd(this.D.gc(a,1),b);this.A-=this.B.nj},function(){var a=1,b=0,c=this.B.oj;this.Ba&192&&(a=this.J,b=1,c=this.B.qj,this.Ba&256||(this.A-=this.B.pj));if(a--){var d=this.Ca&1024?-1:1,e=this.U(this.D,this.G);this.Od(this.$a.gc(this.F,0),e);
|
||||
this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(nd(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.oj;this.Ba&192&&(a=this.J,b=1,c=this.B.qj,this.Ba&256||(this.A-=this.B.pj));if(a--){var d=this.Ca&1024?-2:2,e=this.V(this.D,this.G);this.cd(this.$a.gc(this.F,1),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(nd(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.Zi;this.Ba&192&&(a=this.J,b=1,c=this.B.aj,this.Ba&256||
|
||||
(this.A-=this.B.$i));if(a--){var d=this.Ca&1024?-1:1,e=this.U(this.D,this.G),f=this.O(this.$a,this.F);Ud.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c-this.B.xb;this.J-=b;a&&rd(this)==(this.Ba&64)&&(nd(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.Zi;this.Ba&192&&(a=this.J,b=1,c=this.B.aj,this.Ba&256||(this.A-=this.B.$i));if(a--){var d=this.Ca&1024?-2:2,e=this.V(this.D,this.G),f=this.P(this.$a,this.F);be.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+
|
||||
d&65535;this.A-=c-this.B.xb;this.J-=b;a&&rd(this)==(this.Ba&64)&&(nd(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){this.Z=this.ma=this.pa=this.H&255&this.ha();this.ga=256;this.A-=this.B.Qe},function(){this.Z=this.ma=this.pa=this.H&this.L();this.ga=65536;this.A-=this.B.Qe},function(){var a=1,b=0,c=this.B.zj;this.Ba&192&&(a=this.J,b=1,c=this.B.Bj,this.Ba&256||(this.A-=this.B.Aj));if(a--){var d=this.H;this.Od(this.$a.gc(this.F,0),d);this.F=this.F+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&
|
||||
(nd(this,-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.zj;this.Ba&192&&(a=this.J,b=1,c=this.B.Bj,this.Ba&256||(this.A-=this.B.Aj));if(a--){var d=this.H;this.cd(this.$a.gc(this.F,1),d);this.F=this.F+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(nd(this,-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.gj;this.Ba&192&&(a=this.J,b=1,c=this.B.ij,this.Ba&256||(this.A-=this.B.hj));a--&&(this.H=this.H&-256|this.U(this.D,this.G),this.G=this.G+(this.Ca&1024?-1:1)&65535,this.A-=c,this.J-=b,a&&(nd(this,
|
||||
this.Ba&16?-3:-2),this.aa|=256))},function(){var a=1,b=0,c=this.B.gj;this.Ba&192&&(a=this.J,b=1,c=this.B.ij,this.Ba&256||(this.A-=this.B.hj));a--&&(this.H=this.V(this.D,this.G),this.G=this.G+(this.Ca&1024?-2:2)&65535,this.A-=c,this.J-=b,a&&(nd(this,this.Ba&16?-3:-2),this.aa|=256))},function(){var a=1,b=0,c=this.B.tj;this.Ba&192&&(a=this.J,b=1,c=this.B.vj,this.Ba&256||(this.A-=this.B.uj));a--&&(Ud.call(this,this.H&255,this.O(this.$a,this.F)),this.F=this.F+(this.Ca&1024?-1:1)&65535,this.A-=c-this.B.xb,
|
||||
this.J-=b,a&&rd(this)==(this.Ba&64)&&(nd(this,-2),this.aa|=256))},function(){var a=1,b=0,c=this.B.tj;this.Ba&192&&(a=this.J,b=1,c=this.B.vj,this.Ba&256||(this.A-=this.B.uj));a--&&(be.call(this,this.H,this.P(this.$a,this.F)),this.F=this.F+(this.Ca&1024?-2:2)&65535,this.A-=c-this.B.xb,this.J-=b,a&&rd(this)==(this.Ba&64)&&(nd(this,-2),this.aa|=256))},function(){this.H=this.H&-256|this.ha();this.A-=this.B.Jb},function(){this.J=this.J&-256|this.ha();this.A-=this.B.Jb},function(){this.K=this.K&-256|this.ha();
|
||||
this.A-=this.B.Jb},function(){this.C=this.C&-256|this.ha();this.A-=this.B.Jb},function(){this.H=this.H&255|this.ha()<<8;this.A-=this.B.Jb},function(){this.J=this.J&255|this.ha()<<8;this.A-=this.B.Jb},function(){this.K=this.K&255|this.ha()<<8;this.A-=this.B.Jb},function(){this.C=this.C&255|this.ha()<<8;this.A-=this.B.Jb},function(){this.H=this.L();this.A-=this.B.Jb},function(){this.J=this.L();this.A-=this.B.Jb},function(){this.K=this.L();this.A-=this.B.Jb},function(){this.C=this.L();this.A-=this.B.Jb},
|
||||
function(){this.Y=this.L();this.A-=this.B.Jb},function(){this.I=this.L();this.A-=this.B.Jb},function(){this.G=this.L();this.A-=this.B.Jb},function(){this.F=this.L();this.A-=this.B.Jb},Vh,Wh,Vh,Wh,function(){N[this.ha()].call(this,Qe)},function(){N[this.ha()].call(this,Pe)},function(){this.aa|=1;Ah[this.ha()].call(this,ze,this.ha)},function(){this.aa|=1;Bh[this.ha()].call(this,ze,this.L)},Xh,Yh,Xh,Yh,function(){Hd.call(this,3,null,this.B.ql)},function(){var a=this.ha();Yc(this,a)?Hd.call(this,a,null,
|
||||
0):this.A--},function(){td(this)?Hd.call(this,4,null,this.B.rl):this.A-=this.B.sl},function(){Tc(this,this.La(),this.La());Uc(this,this.La());this.fh&&cd(this,this.Ga);this.A-=this.B.ol},function(){Ah[this.ha()].call(this,Ae,re)},function(){Bh[this.ha()].call(this,Be,re)},function(){Ah[this.ha()].call(this,Ae,se)},function(){Bh[this.ha()].call(this,Be,se)},function(){var a=this.ha(),b=this.H&255;this.H=(b/a&255)<<8|b%a;this.ga=256;this.Z=this.ma=b;this.A-=this.B.Uk},function(){var a=this.ha();this.Z=
|
||||
this.ma=this.H=(this.H>>8)*a+this.H&255;this.ga=256;this.A-=this.B.Tk},function(){this.H=this.H&-256|(od(this)?255:0);this.A-=2},function(){this.H=this.H&-256|this.U(this.D,this.C+(this.H&255)&65535);this.A-=this.B.Sl},Zh,Zh,Zh,Zh,Zh,Zh,Zh,Zh,function(){var a=this.M();(this.J=this.J-1&65535)&&this.Z&this.ga-1?(G(this,this.va+a),this.A-=this.B.zl):this.A-=this.B.jj},function(){var a=this.M();!(this.J=this.J-1&65535)||this.Z&this.ga-1?this.A-=this.B.lj:(G(this,this.va+a),this.A-=this.B.kj)},function(){var a=
|
||||
this.M();(this.J=this.J-1&65535)?(G(this,this.va+a),this.A-=this.B.yl):this.A-=this.B.jj},function(){var a=this.M();this.J?this.A-=this.B.lj:(G(this,this.va+a),this.A-=this.B.kj)},function(){var a=this.ha();this.H=this.H&-256|ub(this.ra,a,this.Ga-2);this.A-=this.B.dj},function(){var a=this.ha();this.H=ub(this.ra,a,this.Ga-1)|ub(this.ra,a+1&65535,this.Ga-2)<<8;this.A-=this.B.dj},function(){var a=this.ha();Ab(this.ra,a,this.H&255,this.Ga-2);this.A-=this.B.sj},function(){var a=this.ha();Ab(this.ra,a,
|
||||
this.H&255,this.Ga-2);Ab(this.ra,a+1&65535,this.H>>8,this.Ga-2);this.A-=this.B.sj},function(){var a=this.L();H(this,this.va);G(this,this.va+a);this.A-=this.B.Yk},function(){var a=this.L();G(this,this.va+a);this.A-=this.B.ej},function(){Tc(this,this.L(),this.L());this.A-=this.B.ul},function(){var a=this.M();G(this,this.va+a);this.A-=this.B.ej},function(){this.H=this.H&-256|ub(this.ra,this.K,this.Ga-1);this.A-=this.B.cj},function(){this.H=ub(this.ra,this.K,this.Ga-1)|ub(this.ra,this.K+1&65535,this.Ga-
|
||||
1)<<8;this.A-=this.B.cj},function(){Ab(this.ra,this.K,this.H&255,this.Ga-1);this.A-=this.B.rj},function(){Ab(this.ra,this.K,this.H&255,this.Ga-1);Ab(this.ra,this.K+1&65535,this.H>>8,this.Ga-1);this.A-=this.B.rj},$h,$h,function(){this.aa|=132;this.A-=this.B.pe},function(){this.aa|=68;this.A-=this.B.pe},function(){this.qb|=4;this.A-=2;this.fa&&Ed(this.fa)?(nd(this,-1),this.Cb()):this.Ca&512||(this.fa&&nd(this,-1),this.Cb())},function(){od(this)?ud(this):zd(this);this.A-=2},function(){this.Kb=-1;Ah[this.ha()].call(this,
|
||||
De,ue);0<=this.Kb&&(this.H=this.Kb)},function(){this.Kb=-1;Bh[this.ha()].call(this,Ee,ue);0<=this.Kb&&(this.H=this.Kb,this.K=this.Eg)},function(){this.Z&=~this.ga;this.A-=2},function(){this.Z|=this.ga;this.A-=2},function(){this.Ca&=-513;this.A-=this.B.Wk},function(){this.Ca|=512;this.aa|=4;this.A-=2},function(){this.Ca&=-1025;this.A-=2},function(){this.Ca|=1024;this.A-=2},function(){Ah[this.ha()].call(this,Lc,ue)},function(){Bh[this.ha()].call(this,Oc,ue)}];
|
||||
function O(a){z.call(this,"ChipSet",a,O);this.Ia=a.model;this.Ia=void 0!==this.Ia?parseInt(this.Ia,10):ai;this.$b=0;var b=a.sw1;if(b)this.$b=bi(b,ci|di.qm);else{this.Vd=[360,360];(b=a.floppies)&&void 0!==b.length&&(this.Vd=b);if(b=this.Vd.length)this.$b|=ei.Yh,b--,this.$b|=(b&3)<<ei.Jf;if(b=a.monitor||(this.Ia<fi?"mono":"ega"),void 0!==gi[b])this.$b|=gi[b]<<di.Jf}this.ve=bi(a.sw2||"11110000",0);this.Pn=this.Ia==ai?16:64;this.Wf=this.Xf=1;this.Ia>=fi&&(this.Wf=this.Xf=2);this.th=a.scaleTimers||!1;
|
||||
this.jp=a.rtcDate;this.Ek=!1;a.sound&&window&&"webkitAudioContext"in window&&(this.pi=new webkitAudioContext);this.reset(!0);this.Ta()}A(z,O);var ai=5150,fi=5170,gi={none:0,tv:1,color:2,mono:3,ega:0},ei={Yh:1,ONE:0,cq:64,aq:128,Ap:192,If:192,Jf:6},ci=12,di={bq:16,sp:32,qm:48,If:48,Jf:4};k=O.prototype;
|
||||
k.Fb=function(a,b,c,d){switch(c){case "sw1":return this.ya[c]=d,hi(this,c,d,this.$b,{0:this.Ia==ai?"Bootable Floppy Drive":"Loop on POST",1:this.Ia==ai?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ia==ai)return this.ya[c]=d,hi(this,c,d,this.ve,{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.ra=b;this.T=c;this.fa=d;this.Ka=a;this.Va=eb(a,"Keyboard");this.Tl=Math.round(c.ca.Kd/1193181);tb(b,this,ii);zb(b,this,ji);this.Ia<fi?(tb(b,this,ki),zb(b,this,li)):(tb(b,this,mi),zb(b,this,ni));if(d){var e=this;oi(d,Fd,function(){for(var a=0;a<e.Ab.length;a++){for(var b=e.Ab[a],c="PIC"+a+":",d=0;d<b.sd.length;d++)c+=" IC"+(d+1)+"="+t(b.sd[d]);c+=" IMR="+t(b.yd)+" IRR="+t(b.Nb)+" ISR="+t(b.Hc);e.fa.message(c)}});oi(d,pi,function(){for(var a=0;a<e.Mb.length;a++){qi(e,a);
|
||||
var b=e.Mb[a],c="TIMER"+a+":",d=0;if(void 0!==b.kd)for(var n=0;n<=b.kd;n++)d|=b.ac[n]<<8*n;c+=" MODE"+b.mode+" BYTES="+b.kd+" COUNT="+v(d);e.fa.message(c)}});oi(d,ri,function(){for(var a="",b=0;64>b;b++){var c=13>=b?si(e,b):e.ta[b];a&&(a+="\n");a+="CMOS[0x"+t(b)+"]: 0x"+t(c)}e.fa.message(a)})}Xc(c,ti,this,this.On)};k.Zb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};
|
||||
k.reset=function(a){var b;this.dd=this.$b;this.$e=this.ve;ui(this);this.gb=Array(this.Wf);for(b=0;b<this.Wf;b++)vi(this,b);this.Ab=Array(this.Xf);wi(this,0,32);1<this.Xf&&wi(this,1,160);this.mi=void 0;this.Mb=Array(3);for(b=0;b<this.Mb.length;b++)xi(this,b);this.Vf=this.ki=this.yc=this.$g=void 0;this.Zg=0;if(this.Ia>=fi){this.mb=16;this.xd=0;this.gd=16;this.Vg=0;this.Be=160;512<=yi(this)&&(this.Be|=16);3==zi(this)&&(this.Be|=64);this.ii=3;this.Tf=0;this.Rg=Array(7);this.Ce=0;a&&(this.ta=Array(64));
|
||||
Ai(this,this.jp);for(a=21;24>=a;a++)this.ta[a]=0;for(a=14;46>a;a++)void 0===this.ta[a]&&(this.ta[a]=0);this.ta[20]=this.dd&(di.If|2|ei.Yh|ei.If);this.ta[16]=Bi(this,0)<<4|Bi(this,1);Ci(this)}};
|
||||
function Ai(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.da("CMOS date invalid ("+b+"), using "+c)):b&&a.da("CMOS date: "+c);a.ta[0]=c.getSeconds();a.ta[1]=0;a.ta[2]=c.getMinutes();a.ta[3]=0;a.ta[4]=c.getHours();a.ta[5]=0;a.ta[6]=c.getDay()+1;a.ta[7]=c.getDate();a.ta[8]=c.getMonth()+1;c=c.getFullYear();a.ta[9]=c%100;c/=100;a.ta[50]=c%10|c/10<<4;a.lg=-1;a.ta[10]=38;a.ta[11]=2;a.ta[12]=0;a.ta[13]=128}
|
||||
32768?65535:0;this.A-=this.B.Yk},function(){var a=this.L(),b=this.L();H(this,this.ya.sa);H(this,this.va);Tc(this,a,b);this.A-=this.B.al},function(){L.call(this)},function(){H(this,Wc(this));this.A-=this.B.qc},function(){Uc(this,this.La());this.A-=this.B.jc},function(){var a=this.H>>8;a&1?zd(this):ud(this);a&4?pd(this)||(this.ma^=1):pd(this)&&(this.ma^=1);a&16?Ad(this):vd(this);a&64?Bd(this):wd(this);a&128?Cd(this):xd(this);this.A-=this.B.Mb},function(){this.H=this.H&255|(Wc(this)&213)<<8;this.A-=
|
||||
this.B.Mb},function(){this.H=this.H&-256|this.U(this.D,this.L());this.A-=this.B.nj},function(){this.H=this.V(this.D,this.L());this.A-=this.B.nj},function(){var a=this.L(),b=this.H;this.Pd(this.D.hc(a,0),b);this.A-=this.B.oj},function(){var a=this.L(),b=this.H;this.ed(this.D.hc(a,1),b);this.A-=this.B.oj},function(){var a=1,b=0,c=this.B.pj;this.Ba&192&&(a=this.J,b=1,c=this.B.rj,this.Ba&256||(this.A-=this.B.qj));if(a--){var d=this.Ca&1024?-1:1,e=this.U(this.D,this.G);this.Pd(this.ab.hc(this.F,0),e);
|
||||
this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(nd(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.pj;this.Ba&192&&(a=this.J,b=1,c=this.B.rj,this.Ba&256||(this.A-=this.B.qj));if(a--){var d=this.Ca&1024?-2:2,e=this.V(this.D,this.G);this.ed(this.ab.hc(this.F,1),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(nd(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.$i;this.Ba&192&&(a=this.J,b=1,c=this.B.bj,this.Ba&256||
|
||||
(this.A-=this.B.aj));if(a--){var d=this.Ca&1024?-1:1,e=this.U(this.D,this.G),f=this.O(this.ab,this.F);Ud.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c-this.B.Ab;this.J-=b;a&&rd(this)==(this.Ba&64)&&(nd(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.$i;this.Ba&192&&(a=this.J,b=1,c=this.B.bj,this.Ba&256||(this.A-=this.B.aj));if(a--){var d=this.Ca&1024?-2:2,e=this.V(this.D,this.G),f=this.P(this.ab,this.F);be.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+
|
||||
d&65535;this.A-=c-this.B.Ab;this.J-=b;a&&rd(this)==(this.Ba&64)&&(nd(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){this.Z=this.ma=this.pa=this.H&255&this.ha();this.ga=256;this.A-=this.B.Re},function(){this.Z=this.ma=this.pa=this.H&this.L();this.ga=65536;this.A-=this.B.Re},function(){var a=1,b=0,c=this.B.Aj;this.Ba&192&&(a=this.J,b=1,c=this.B.Cj,this.Ba&256||(this.A-=this.B.Bj));if(a--){var d=this.H;this.Pd(this.ab.hc(this.F,0),d);this.F=this.F+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&
|
||||
(nd(this,-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.Aj;this.Ba&192&&(a=this.J,b=1,c=this.B.Cj,this.Ba&256||(this.A-=this.B.Bj));if(a--){var d=this.H;this.ed(this.ab.hc(this.F,1),d);this.F=this.F+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(nd(this,-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.hj;this.Ba&192&&(a=this.J,b=1,c=this.B.jj,this.Ba&256||(this.A-=this.B.ij));a--&&(this.H=this.H&-256|this.U(this.D,this.G),this.G=this.G+(this.Ca&1024?-1:1)&65535,this.A-=c,this.J-=b,a&&(nd(this,
|
||||
this.Ba&16?-3:-2),this.aa|=256))},function(){var a=1,b=0,c=this.B.hj;this.Ba&192&&(a=this.J,b=1,c=this.B.jj,this.Ba&256||(this.A-=this.B.ij));a--&&(this.H=this.V(this.D,this.G),this.G=this.G+(this.Ca&1024?-2:2)&65535,this.A-=c,this.J-=b,a&&(nd(this,this.Ba&16?-3:-2),this.aa|=256))},function(){var a=1,b=0,c=this.B.uj;this.Ba&192&&(a=this.J,b=1,c=this.B.wj,this.Ba&256||(this.A-=this.B.vj));a--&&(Ud.call(this,this.H&255,this.O(this.ab,this.F)),this.F=this.F+(this.Ca&1024?-1:1)&65535,this.A-=c-this.B.Ab,
|
||||
this.J-=b,a&&rd(this)==(this.Ba&64)&&(nd(this,-2),this.aa|=256))},function(){var a=1,b=0,c=this.B.uj;this.Ba&192&&(a=this.J,b=1,c=this.B.wj,this.Ba&256||(this.A-=this.B.vj));a--&&(be.call(this,this.H,this.P(this.ab,this.F)),this.F=this.F+(this.Ca&1024?-2:2)&65535,this.A-=c-this.B.Ab,this.J-=b,a&&rd(this)==(this.Ba&64)&&(nd(this,-2),this.aa|=256))},function(){this.H=this.H&-256|this.ha();this.A-=this.B.Mb},function(){this.J=this.J&-256|this.ha();this.A-=this.B.Mb},function(){this.K=this.K&-256|this.ha();
|
||||
this.A-=this.B.Mb},function(){this.C=this.C&-256|this.ha();this.A-=this.B.Mb},function(){this.H=this.H&255|this.ha()<<8;this.A-=this.B.Mb},function(){this.J=this.J&255|this.ha()<<8;this.A-=this.B.Mb},function(){this.K=this.K&255|this.ha()<<8;this.A-=this.B.Mb},function(){this.C=this.C&255|this.ha()<<8;this.A-=this.B.Mb},function(){this.H=this.L();this.A-=this.B.Mb},function(){this.J=this.L();this.A-=this.B.Mb},function(){this.K=this.L();this.A-=this.B.Mb},function(){this.C=this.L();this.A-=this.B.Mb},
|
||||
function(){this.Y=this.L();this.A-=this.B.Mb},function(){this.I=this.L();this.A-=this.B.Mb},function(){this.G=this.L();this.A-=this.B.Mb},function(){this.F=this.L();this.A-=this.B.Mb},Vh,Wh,Vh,Wh,function(){N[this.ha()].call(this,Qe)},function(){N[this.ha()].call(this,Pe)},function(){this.aa|=1;Ah[this.ha()].call(this,ze,this.ha)},function(){this.aa|=1;Bh[this.ha()].call(this,ze,this.L)},Xh,Yh,Xh,Yh,function(){Hd.call(this,3,null,this.B.rl)},function(){var a=this.ha();Yc(this,a)?Hd.call(this,a,null,
|
||||
0):this.A--},function(){td(this)?Hd.call(this,4,null,this.B.sl):this.A-=this.B.tl},function(){Tc(this,this.La(),this.La());Uc(this,this.La());this.fh&&cd(this,this.Ga);this.A-=this.B.pl},function(){Ah[this.ha()].call(this,Ae,re)},function(){Bh[this.ha()].call(this,Be,re)},function(){Ah[this.ha()].call(this,Ae,se)},function(){Bh[this.ha()].call(this,Be,se)},function(){var a=this.ha(),b=this.H&255;this.H=(b/a&255)<<8|b%a;this.ga=256;this.Z=this.ma=b;this.A-=this.B.Vk},function(){var a=this.ha();this.Z=
|
||||
this.ma=this.H=(this.H>>8)*a+this.H&255;this.ga=256;this.A-=this.B.Uk},function(){this.H=this.H&-256|(od(this)?255:0);this.A-=2},function(){this.H=this.H&-256|this.U(this.D,this.C+(this.H&255)&65535);this.A-=this.B.Tl},Zh,Zh,Zh,Zh,Zh,Zh,Zh,Zh,function(){var a=this.M();(this.J=this.J-1&65535)&&this.Z&this.ga-1?(G(this,this.va+a),this.A-=this.B.Al):this.A-=this.B.kj},function(){var a=this.M();!(this.J=this.J-1&65535)||this.Z&this.ga-1?this.A-=this.B.mj:(G(this,this.va+a),this.A-=this.B.lj)},function(){var a=
|
||||
this.M();(this.J=this.J-1&65535)?(G(this,this.va+a),this.A-=this.B.zl):this.A-=this.B.kj},function(){var a=this.M();this.J?this.A-=this.B.mj:(G(this,this.va+a),this.A-=this.B.lj)},function(){var a=this.ha();this.H=this.H&-256|ub(this.ra,a,this.Ga-2);this.A-=this.B.ej},function(){var a=this.ha();this.H=ub(this.ra,a,this.Ga-1)|ub(this.ra,a+1&65535,this.Ga-2)<<8;this.A-=this.B.ej},function(){var a=this.ha();Ab(this.ra,a,this.H&255,this.Ga-2);this.A-=this.B.tj},function(){var a=this.ha();Ab(this.ra,a,
|
||||
this.H&255,this.Ga-2);Ab(this.ra,a+1&65535,this.H>>8,this.Ga-2);this.A-=this.B.tj},function(){var a=this.L();H(this,this.va);G(this,this.va+a);this.A-=this.B.Zk},function(){var a=this.L();G(this,this.va+a);this.A-=this.B.fj},function(){Tc(this,this.L(),this.L());this.A-=this.B.vl},function(){var a=this.M();G(this,this.va+a);this.A-=this.B.fj},function(){this.H=this.H&-256|ub(this.ra,this.K,this.Ga-1);this.A-=this.B.dj},function(){this.H=ub(this.ra,this.K,this.Ga-1)|ub(this.ra,this.K+1&65535,this.Ga-
|
||||
1)<<8;this.A-=this.B.dj},function(){Ab(this.ra,this.K,this.H&255,this.Ga-1);this.A-=this.B.sj},function(){Ab(this.ra,this.K,this.H&255,this.Ga-1);Ab(this.ra,this.K+1&65535,this.H>>8,this.Ga-1);this.A-=this.B.sj},$h,$h,function(){this.aa|=132;this.A-=this.B.pe},function(){this.aa|=68;this.A-=this.B.pe},function(){this.ub|=4;this.A-=2;this.fa&&Ed(this.fa)?(nd(this,-1),this.Fb()):this.Ca&512||(this.fa&&nd(this,-1),this.Fb())},function(){od(this)?ud(this):zd(this);this.A-=2},function(){this.Nb=-1;Ah[this.ha()].call(this,
|
||||
De,ue);0<=this.Nb&&(this.H=this.Nb)},function(){this.Nb=-1;Bh[this.ha()].call(this,Ee,ue);0<=this.Nb&&(this.H=this.Nb,this.K=this.Cg)},function(){this.Z&=~this.ga;this.A-=2},function(){this.Z|=this.ga;this.A-=2},function(){this.Ca&=-513;this.A-=this.B.Xk},function(){this.Ca|=512;this.aa|=4;this.A-=2},function(){this.Ca&=-1025;this.A-=2},function(){this.Ca|=1024;this.A-=2},function(){Ah[this.ha()].call(this,Mc,ue)},function(){Bh[this.ha()].call(this,Oc,ue)}];
|
||||
function O(a){z.call(this,"ChipSet",a,O);this.Ia=(this.Ia=a.model)?parseInt(this.Ia,10):ai;this.ac=0;var b=a.sw1;if(b)this.ac=bi(b,ci|di.rm);else{this.Vd=[360,360];(b=a.floppies)&&b.length&&(this.Vd=b);if(b=this.Vd.length)this.ac|=ei.Zh,b--,this.ac|=(b&3)<<ei.Kf;if(b=a.monitor||(this.Ia<fi?"mono":"ega"),void 0!==gi[b])this.ac|=gi[b]<<di.Kf}this.ve=bi(a.sw2||"11110000",0);this.Qn=this.Ia==ai?16:64;this.dh=this.gh=1;this.Ia>=fi&&(this.dh=this.gh=2);this.uh=a.scaleTimers||!1;this.lp=a.rtcDate;this.Fk=
|
||||
!1;a.sound&&window&&"webkitAudioContext"in window&&(this.qi=new window.webkitAudioContext);this.reset(!0);this.Ua()}A(z,O);var ai=5150,fi=5170,gi={none:0,tv:1,color:2,mono:3,ega:0},ei={Zh:1,ONE:0,eq:64,cq:128,Cp:192,Jf:192,Kf:6},ci=12,di={dq:16,vp:32,rm:48,Jf:48,Kf:4};k=O.prototype;
|
||||
k.Db=function(a,b,c,d){switch(c){case "sw1":return this.wa[c]=d,hi(this,c,d,this.ac,{0:this.Ia==ai?"Bootable Floppy Drive":"Loop on POST",1:this.Ia==ai?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ia==ai)return this.wa[c]=d,hi(this,c,d,this.ve,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.wa[c]=d,!0}return!1};
|
||||
k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;this.Ka=a;this.Ra=eb(a,"Keyboard");this.Ul=Math.round(c.ca.Ld/1193181);tb(b,this,ii);zb(b,this,ji);this.Ia<fi?(tb(b,this,ki),zb(b,this,li)):(tb(b,this,mi),zb(b,this,ni));if(d){var e=this;oi(d,Fd,function(){for(var a=0;a<e.Eb.length;a++){for(var b=e.Eb[a],c="PIC"+a+":",d=0;d<b.vc.length;d++)c+=" IC"+(d+1)+"="+t(b.vc[d]);c+=" IMR="+t(b.zd)+" IRR="+t(b.Pb)+" ISR="+t(b.Kc);e.fa.message(c)}});oi(d,pi,function(){for(var a=0;a<e.Ob.length;a++){qi(e,a);
|
||||
var b=e.Ob[a],c="TIMER"+a+":",d=0;if(null!=b.md)for(var n=0;n<=b.md;n++)d|=b.Za[n]<<8*n;c+=" MODE"+b.mode+" BYTES="+b.md+" COUNT="+v(d);e.fa.message(c)}});oi(d,ri,function(){for(var a="",b=0;64>b;b++){var c=13>=b?si(e,b):e.ta[b];a&&(a+="\n");a+="CMOS[0x"+t(b)+"]: 0x"+t(c)}e.fa.message(a)})}Xc(c,ti,this,this.Pn)};k.$b=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Zb=function(a){return a&&this.save?this.save():!0};
|
||||
k.reset=function(a){var b;this.fd=this.ac;this.af=this.ve;ui(this);this.jb=Array(this.dh);for(b=0;b<this.dh;b++)vi(this,b);this.Eb=Array(this.gh);wi(this,0,32);1<this.gh&&wi(this,1,160);this.ni=null;this.Ob=Array(3);for(b=0;b<this.Ob.length;b++)xi(this,b);this.Wf=this.li=this.Ac=this.Zg=null;this.Yg=0;if(this.Ia>=fi){this.qb=16;this.yd=0;this.jd=16;this.Ug=0;this.Be=160;512<=yi(this)&&(this.Be|=16);3==zi(this)&&(this.Be|=64);this.ji=3;this.Uf=0;this.Pg=Array(7);this.Ce=0;a&&(this.ta=Array(64));Ai(this,
|
||||
this.lp);for(a=21;24>=a;a++)this.ta[a]=0;for(a=14;46>a;a++)void 0===this.ta[a]&&(this.ta[a]=0);this.ta[20]=this.fd&(di.Jf|2|ei.Zh|ei.Jf);this.ta[16]=Bi(this,0)<<4|Bi(this,1);Ci(this)}};
|
||||
function Ai(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.da("CMOS date invalid ("+b+"), using "+c)):b&&a.da("CMOS date: "+c);a.ta[0]=c.getSeconds();a.ta[1]=0;a.ta[2]=c.getMinutes();a.ta[3]=0;a.ta[4]=c.getHours();a.ta[5]=0;a.ta[6]=c.getDay()+1;a.ta[7]=c.getDate();a.ta[8]=c.getMonth()+1;c=c.getFullYear();a.ta[9]=c%100;c/=100;a.ta[50]=c%10|c/10<<4;a.jg=-1;a.ta[10]=38;a.ta[11]=2;a.ta[12]=0;a.ta[13]=128}
|
||||
function si(a,b){var c=a.ta[b];if(10>b){var d=!1;4!=b&&5!=b||a.ta[11]&2||(c=12>c?c?c:12:(c-=12)?c+128:140,d=!0);a.ta[11]&4||(d&&128<c&&(c-=48),c=c%10|c/10<<4)}else 10==b&&(a.ta[b]^=128);return c}function Ci(a){for(var b=0,c=16;46>c;c++)b+=a.ta[c];a.ta[47]=b&255;a.ta[46]=b>>8}
|
||||
k.save=function(){var a=new gd(this);a.set(0,[this.$b,this.ve,this.dd,this.$e]);for(var b=[],c=0;c<this.gb;c++){var d=[],e=this.gb[c];d[0]=e.de;d[1]=e.ji;d[2]=e.kk;d[3]=e.vb;for(var f=[],g=0;g<e.Lb.length;g++){var h=[],l=e.Lb[g];h[0]=l.Id;h[1]=l.fk;h[2]=l.Jc;h[3]=l.Sb;h[4]=l.ac;h[5]=l.mode;h[6]=l.ah;h[8]=l.gp;h[9]=l.hp;f[g]=h}d[4]=f;b[c]=d}a.set(1,[b]);b=[];for(c=0;c<this.Ab.length;c++)d=[],e=this.Ab[c],d[0]=e.qg,d[1]=e.sd,d[2]=e.Ld,d[3]=e.yd,d[4]=e.Nb,d[5]=e.Hc,d[6]=e.De,d[7]=e.Uf,b[c]=d;a.set(2,
|
||||
[b]);b=[];for(c=0;c<this.Mb.length;c++)d=[],e=this.Mb[c],d[0]=e.Jc,d[1]=e.Xc,d[2]=e.ac,d[3]=e.bg,d[4]=e.mk,d[5]=e.mode,d[6]=e.Fg,d[7]=e.ge,d[8]=e.kd,d[9]=e.md,d[10]=e.eg,d[11]=e.nf,d[12]=e.se,b[c]=d;a.set(3,[this.mi,b]);a.set(4,[this.$g,this.yc,this.ki,this.Vf,this.Zg]);this.Ia>=fi&&(a.set(5,[this.mb,this.xd,this.gd,this.Vg,this.Be,this.ii]),a.set(6,[this.Tf,this.Rg,this.Ce,this.ta,this.lg]));return a.data()};
|
||||
k.restore=function(a){var b,c;b=a[0];this.$b=b[0];this.ve=b[1];this.dd=b[2];this.$e=b[3];b=a[1];this.gb=Array(this.Wf);for(c=0;c<this.Wf;c++)vi(this,c,1==b.length?b[0][c]:b);b=a[2];this.Ab=Array(this.Xf);for(c=0;c<this.Xf;c++)wi(this,c,0===c?32:160,b[0][c]);b=a[3];this.mi=b[0];this.Mb=Array(3);for(c=0;c<this.Mb.length;c++)xi(this,c,b[1][c]);b=a[4];this.$g=b[0];this.yc=b[1];this.ki=b[2];this.Vf=b[3];this.Zg=b[4];if(b=a[5])this.mb=b[0],this.xd=b[1],this.gd=b[2],this.Vg=b[3],this.Be=b[4],this.ii=b[5];
|
||||
if(b=a[6])this.Tf=b[0],this.Rg=b[1],this.Ce=b[2],this.ta=b[3],this.lg=b[4],Ai(this);return!0};function vi(a,b,c){a=a.gb[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.de=c[0];a.ji=c[1];a.kk=c[2];a.vb=c[3];a.Vn=b<<2;a.Lb=Array(4);for(b=0;b<a.Lb.length;b++)Di(a,b,c[4][b])}function Di(a,b,c){var d=a.Lb[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ia=a;d.Jk=b;d.Id=c[0];d.fk=c[1];d.Jc=c[2];d.Sb=c[3];d.ac=c[4];d.mode=c[5];d.ah=c[6];Ei(d,c[8],c[9])}
|
||||
function Ei(a,b,c,d){"string"==typeof b&&(b=Wa(b));b&&(a.jh=null,a.gp=b.id,a.hp=c,a.hh=b,a.Hi=b[c],a.Jh=d)}function wi(a,b,c,d){a=a.Ab[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.zq=b<<3;a.qg=d[0];a.sd=d[1];a.Ld=d[2];a.yd=d[3];a.Nb=d[4];a.Hc=d[5];a.De=d[6];a.Uf=d[7]}
|
||||
function xi(a,b,c){a=a.Mb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.Jc=c[0];a.Xc=c[1];a.ac=c[2];a.bg=c[3];a.mk=c[4];a.mode=c[5];a.Fg=c[6];a.ge=c[7];a.kd=c[8];a.md=c[9];a.eg=c[10];a.nf=c[11];a.se=c[12]}function yi(a,b){return((((b?a.$b:a.dd)&12)>>2)+1)*a.Pn+32*((b?a.ve:a.$e)&15)}function Fi(a,b){var c=b?a.$b:a.dd;return a.Ia!=ai||c&ei.Yh?((c&ei.If)>>ei.Jf)+1:0}
|
||||
function Bi(a,b){if(b<Fi(a)){if(!a.Vd)return 1;if(b<a.Vd.length)switch(a.Vd[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 zi(a,b){return((b?a.$b:a.dd)&di.If)>>di.Jf}
|
||||
function hi(a,b,c,d,e){for(var f="",g=1;8>=g;g++){var h="pcjs-bitCell";g||(h+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+g)+'" class="'+h+'" data-value="0">'+g+"</div>\n"}c.innerHTML=f;b=D(c,"pcjs-bitCell");c=null;for(g=0;g<b.length;g++)void 0!==e&&void 0!==e[g]&&(c=e[g]),c&&b[g].setAttribute("title",c),Gi(b[g],d&1<<g?!1:!0),b[g].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");Gi(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.$b=
|
||||
a.$b&~e|(c?0:e);break;case "sw2":a.ve=a.ve&~e|(c?0:e)}ui(a)}}(a,b[g])}function Gi(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function ui(a){var b=a.ya.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(void 0!==b){var d;d=""+(yi(a,!0)+"Kb");d+=", "+c[zi(a,!0)]+" Monitor";d+=", "+Fi(a,!0)+" Floppy Drives";if(void 0!==a.dd&&a.dd!=a.$b||void 0!==a.$e&&a.$e!=a.ve)d+=" (Reset required)";b.innerHTML=d}}
|
||||
function Hi(a,b,c,d,e){var f=a.gb[b],g=f.Lb[c].Sb[f.vb];f.vb^=1;a.ea(d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.vb+"]",P,g);return g}function Ii(a,b,c,d,e,f){var g=a.gb[b];a.ea(d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+g.vb+"]",P);a=g.Lb[c];a.Sb[g.vb]=a.fk[g.vb]=e;g.vb^=1}function Ji(a,b,c,d,e){var f=a.gb[b],g=f.Lb[c].ac[f.vb];f.vb^=1;a.ea(d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.vb+"]",P,g);return g}
|
||||
function Ki(a,b,c,d,e,f){var g=a.gb[b];a.ea(d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.vb+"]",P);a=g.Lb[c];a.ac[g.vb]=a.Jc[g.vb]=e;g.vb^=1}function Li(a,b,c,d){var e=a.gb[b],f=e.de|1;e.de&=-16;a.ea(c,null,d,"DMA"+b+".STATUS",P,f);return f}function Mi(a,b,c,d,e){var f=a.gb[b];a.ea(c,d,e,"DMA"+b+".REQ",P);a=d&3;f.de=f.de&~(16<<a)|(d&4)<<a+2;f.kk=d}function Ni(a,b,c,d,e){var f=a.gb[b];a.ea(c,d,e,"DMA"+b+".MASK",P);b=d&3;c=f.Lb[b];c.Id=d&4?!0:!1;c.Id||Oi(a,f.Vn+b)}
|
||||
function Pi(a,b,c,d,e){a.ea(c,d,e,"DMA"+b+".CLEAR",P);a=a.gb[b];for(b=0;b<a.Lb.length;b++)Di(a,b)}function Qi(a,b,c,d,e){var f=a.gb[b].Lb[c].ah;a.ea(d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",P,f);return f}function Ri(a,b,c,d,e,f){a.ea(d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",P);a.gb[b].Lb[c].ah=e}function Si(a,b,c,d){var e=a.Rg[b];a.ea(c,null,d,"DMA.SPARE"+b+".PAGE",P,e);return e}function Ti(a,b,c,d,e){a.ea(c,d,e,"DMA.SPARE"+b+".PAGE",P);a.Rg[b]=d}function Ui(a,b,c,d,e){Ei(a.gb[b>>2].Lb[b&3],c,d,e)}
|
||||
function Oi(a,b,c){b=a.gb[b>>2].Lb[b&3];b.hh&&b.Hi&&b.Jh?(c&&(b.jh=c),b.Id||Id(a,b,!0)):c&&c(!0)}function Id(a,b,c){c&&(b.count=b.ac[1]<<8|b.ac[0],b.mm=b.mode&12,b.Fk=b.Zc=!1);for(var d=!1;0<=b.count&&(c=b.ah<<16|b.Sb[1]<<8|b.Sb[0],4==b.mm?(d=!0,function(c){b.Hi.call(b.hh,b.Jh,-1,function(f,g){0>f&&(b.Fk||(b.Fk=!0),f=255);b.Id||pb(a.ra,c,f);(d=g)&&setTimeout(function(){Vi(b)||Id(a,b)},0)})}(c)):8==b.mm?(c=nb(a.ra,c),0>b.Hi.call(b.hh,b.Jh,c)&&(b.Zc=!0)):b.Zc=!0),!d&&!Vi(b););}
|
||||
function Vi(a){if(!a.Zc&&0<=--a.count&&(a.mode&32?(a.Sb[0]--,0>a.Sb[0]&&(a.Sb[0]=255,a.Sb[1]--,0>a.Sb[1]&&(a.Sb[1]=255))):(a.Sb[0]++,255<a.Sb[0]&&(a.Sb[0]=0,a.Sb[1]++,255<a.Sb[1]&&(a.Sb[1]=0))),!a.Id))return!1;var b=a.ia;b.de=b.de&~(16<<a.Jk)|1<<a.Jk;a.mode&16||(a.Id=!0,a.hh=a.Jh=null);a.jh&&(a.jh(!a.Zc),a.jh=null);return!0}function Wi(a,b,c){var d=0,e=a.Ab[b];if(void 0!==e.Uf)switch(e.Uf&3){case 2:d=e.Nb;break;case 3:d=e.Hc}a.ea(e.port,null,c,"PIC"+b,Fd,d);return d}
|
||||
function Xi(a,b,c,d){var e=a.Ab[b];a.ea(e.port,c,d,"PIC"+b,Fd);if(c&16)e.Ld=0,e.sd[e.Ld++]=c,e.yd=0,e.De=7,e.Nb=e.Hc=0,e.Uf=10;else if(c&8)e.Uf=c;else{var f=c&224;if(f&32){d=0;if(96==(f&96))d=1<<(c&7);else for(c=e.De+1;;){c&=7;f=1<<c;if(e.Hc&f){d=f;break}if(c++==e.De)break}e.Hc&d&&(e.Hc&=~d,Yi(a,b))}else 192==f&&(e.De=c&7)}}function Zi(a,b,c){var d=a.Ab[b],e=d.yd;a.ea(d.port+1,null,c,"PIC"+b,Fd,e);return e}
|
||||
function $i(a,b,c,d){var e=a.Ab[b];a.ea(e.port+1,c,d,"PIC"+b,Fd);e.Ld<e.sd.length?(e.sd[e.Ld++]=c,2==e.Ld&&e.sd[0]&2&&e.Ld++,3!=e.Ld||e.sd[0]&1||e.Ld++):(e.yd=c,d=a.T,d.aa|=4,Yi(a,b,b||253!=c?0:6))}function Yi(a,b,c){b=a.Ab[b];var d=((b.Hc|b.yd)^255)&b.Nb;a=a.T;a.oa&&(a.qb=d?a.qb|1:a.qb&-2);d&&c&&(b.qg=c)}function aj(a,b,c){var d=b>>3,e=a.Ab[d];e.Nb|=1<<(b&7);e.qg=c||0;1==d&&(a.Ab[0].Nb|=4);Yi(a,d)}
|
||||
function bj(a,b){var c=b>>3,d=a.Ab[c],e=1<<(b&7);d.Nb&e&&(d.Nb&=~e,1!=c||d.Nb||(a.Ab[0].Nb&=-5),Yi(a,c))}function Gd(a,b){void 0===b&&(b=0);var c=-1,d=a.Ab[b];if(d.qg)c=-2,d.qg--;else for(var e=d.Nb&((d.Hc|d.yd)^255),f=d.De+1;;){var f=f&7,g=1<<f;if(e&g){c=b||2!=f?d.sd[1]+f:Gd(a,1);0<=c&&(d.Hc|=g,d.Nb&=~g);break}if(f++==d.De)break}return c}function cj(a,b,c){var d;d=a.Mb[b];d.ge==d.kd&&dj(a,b);if(d.eg)return d.bg[d.ge++];qi(a,b);d=d.ac[d.ge++];a.ea(64+b,null,c,"TIMER"+b,pi,d);return d}
|
||||
function ej(a,b,c,d){a.ea(64+b,c,d,"TIMER"+b,pi);d=a.Mb[b];d.ge==d.kd&&dj(a,b);d.Jc[d.ge++]=c;if(d.ge==d.kd){d.nf&&0!=d.mode&&8!=d.mode||(d.eg=!1,d.ac[0]=d.Xc[0]=d.Jc[0],d.ac[1]=d.Xc[1]=d.Jc[1],d.se=Ub(a.T,a.th),d.nf=!0,d.md=0!=d.mode,0==b&&bj(a,0));2==b&&Zb(a);if(0==b){var e=fj(a,0);2048<=e&&(a.T.Dh=Math.round(65536/e))}0==b&&0==d.mode&&16==d.Fg&&(b=a.T,b.qa.Pb&&(a=b.A-c*a.Tl,b.A-=a,b.Oc-=a))}}k.Hn=function(a,b){this.ea(a,null,b,"TIMER_CTRL",pi);return null};
|
||||
k.Wo=function(a,b,c){this.ea(a,b,c,"TIMER_CTRL",pi);this.mi=b;a=(b&192)>>6;if(3!=a){c=b&1;var d=b&14;if(b&=48){var e=this.Mb[a];e.Fg=b;e.mode=d;e.mk=c;e.Jc=[0,0];e.ac=[0,0];e.bg=[0,0];e.md=!1;e.eg=!1;e.nf=!1;dj(this,a);0==a&&bj(this,0);2==a&&255==this.Ab[0].yd&&77==this.yc&&(a=this.Mb[0],a.Xc[0]=a.Jc[0],a.Xc[1]=a.Jc[1],a.se=Ub(this.T,this.th))}else qi(this,a),b=this.Mb[a],b.bg[0]=b.ac[0],b.bg[1]=b.ac[1],b.eg=!0,dj(this,a)}};
|
||||
function fj(a,b){var c=a.Mb[b],d=c.Jc[1]<<8|c.Jc[0];d||(d=1==c.kd?256:65536);return d}function dj(a,b){var c=a.Mb[b];c.ge=32==c.Fg?1:0;c.kd=48==c.Fg?2:1}
|
||||
function qi(a,b,c){var d=a.Mb[b];if(d.nf&&(2!=b||a.yc&1)){var e=Ub(a.T,a.th),f=(e-d.se)/a.Tl|0;0>f&&(d.se=e,f=0);var g=fj(a,b),h=a.Mb[b],l=h.Xc[1]<<8|h.Xc[0];l||(l=1==h.kd?256:65536);h=l-f;0==d.mode?(0>=h&&(h=0),h||(d.md=!0,d.nf=!1,b||aj(a,0))):4==d.mode?(d.md=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Xc[0]=h&255,d.Xc[1]=h>>8,d.se=e,!b&&d.md&&aj(a,0))):6==d.mode&&(h-=f,0>=h&&(d.md=!d.md,h=g+h,0>=h&&(h=g),d.Xc[0]=h&255,d.Xc[1]=h>>8,d.se=e,!b&&d.md&&aj(a,0)));d.ac[0]=h&255;d.ac[1]=h>>8;c&&(a.se=0)}return d}
|
||||
function $b(a,b){for(var c=0;c<a.Mb.length;c++)qi(a,c,b);if(a.Ia>=fi){var c=0,d=a.T.ca.Kd,e=Ub(a.T,a.th);if(0<=a.lg&&(c=e-a.lg,Math.floor(c/d)&&60<=++a.ta[0]&&(a.ta[0]=0,60<=++a.ta[2]&&(a.ta[2]=0,24<=++a.ta[4])))){a.ta[4]=0;a.ta[6]=a.ta[6]%7+1;var f=a.ta[9],g=qa[a.ta[8]-1];28==g&&0===f%4&&(f%100||0===f%400)&&g++;++a.ta[7]>g&&(a.ta[7]=1,12<++a.ta[8]&&(a.ta[8]=1,a.ta[9]=(a.ta[9]+1)%100))}a.lg=e-c%d}}
|
||||
k.zn=function(a,b){var c=this.$g;this.Vf&16&&(this.yc&128?c=this.dd:this.Va&&(c=gj(this.Va)));this.ea(a,null,b,"PPI_A",hj,c);return c};k.Po=function(a,b,c){this.ea(a,b,c,"PPI_A",hj);this.$g=b};k.An=function(a,b){var c=this.yc;this.ea(a,null,b,"PPI_B",hj,c);return c};k.Qo=function(a,b,c){this.ea(a,b,c,"PPI_B",hj);ij(this,b);this.Va&&jj(this.Va,b&128?!1:!0,b&64?!0:!1)};function ij(a,b){var c=!!(b&2),d=!!(a.yc&2);a.yc=b;c!=d&&Zb(a,c)}
|
||||
k.Bn=function(a,b){var c=0,c=this.Ia==ai?this.yc&4?c|this.$e&15:c|this.$e>>4&1:this.yc&8?c|this.dd>>4:c|this.dd&15;this.yc&1&&qi(this,2).md&&(c=this.yc&2?c|32:c|16);this.ea(a,null,b,"PPI_C",hj|Db,c);return c};k.Ro=function(a,b,c){this.ea(a,b,c,"PPI_C",hj);this.ki=b};k.Cn=function(a,b){var c=this.Vf;this.ea(a,null,b,"PPI_CTRL",hj,c);return c};k.So=function(a,b,c){this.ea(a,b,c,"PPI_CTRL",hj);this.Vf=b};
|
||||
k.Pm=function(a,b){var c=this.Vg;this.ea(a,null,b,"8042_OUTBUFF",kj,c);this.mb&=-258;var d=this.Va&&gj(this.Va,!0);d&&lj(this,d);return c};k.io=function(a,b,c){this.ea(a,b,c,"8042_INBUF.DATA",kj);if(this.mb&8)switch(this.xd){case 96:mj(this,b);break;case 209:nj(this,b);break;default:if(mj(this,this.gd&-17),this.Va){a=-1;switch(b){case 255:a=250,oj(this.Va)}lj(this,a)}}this.xd=b;this.mb&=-9};k.Qm=function(a,b){var c=this.yc&-209|(Ub(this.T)&64?16:0);this.ea(a,null,b,"8042_RWREG",kj|pj,c);return c};
|
||||
k.jo=function(a,b,c){this.ea(a,b,c,"8042_RWREG",kj);ij(this,b)};k.Rm=function(a,b){this.ea(a,null,b,"8042_STATUS",kj,this.mb);var c=this.mb&255;this.mb&256&&(this.mb|=1,this.mb&=-257);return c};
|
||||
k.ho=function(a,b,c){this.ea(a,b,c,"8042_INBUFF.CMD",kj);this.xd=b;this.mb|=8;a=0;240<=this.xd&&(a=this.xd^15,this.xd=240);switch(this.xd){case 192:lj(this,this.Be);break;case 173:mj(this,this.gd|16);break;case 174:mj(this,this.gd&-17);break;case 170:this.Va&&qj(this.Va,!0);mj(this,this.gd|16);lj(this,85);nj(this,3);break;case 224:lj(this,this.gd&16?0:1);break;case 240:a&1&&Sc(this.T)}};
|
||||
function mj(a,b){var c=!(a.gd&16);a.gd=b;a.mb=a.mb&-5|b&4;if(a.Va){var d=!(b&16);jj(a.Va,!!(b&8),d)&&lj(a,gj(a.Va,!0));!c&&d&&gj(a.Va)&&rj(a)}}function lj(a,b){0<=b&&(a.Vg=b,a.mb&=-2,a.mb|=256)}function nj(a,b){a.ii=b;jb(a.ra,!!(b&2));b&1||Sc(a.T)}function rj(a){a.Ia<fi?aj(a,1,4):a.gd&16||aj(a,1,120)}k.en=function(a,b){this.ea(a,null,b,"CMOS_ADDR",ri,this.Ce);return this.Ce};k.xo=function(a,b,c){this.ea(a,b,c,"CMOS_ADDR",ri);this.Ce=b;this.Zg=b&128?0:128};
|
||||
k.fn=function(a,b){var c=this.Ce&63,d=13>=c?si(this,c):this.ta[c];this.ea(a,null,b,"CMOS_DATA["+t(c)+"]",ri,d);return d};k.yo=function(a,b,c){var d=this.Ce&63;this.ea(a,b,c,"CMOS_DATA["+t(d)+"]",ri);a=this.ta;13>=d&&10>d&&(c=!1,this.ta[11]&4||(b=10*(b>>4)+(b&15),c=!0),4==d||5==d)&&(c&&12<b&&(b+=48),this.ta[11]&2||(12>=b?b=12==b?0:b:(b-=116,b=24==b?12:b)));a[d]=b};k.xn=function(a,b){this.ea(a,null,b,"MFG_DATA",hj,this.Tf);return this.Tf};k.Mo=function(a,b,c){this.ea(a,b,c,"MFG_DATA",hj);this.Tf=b};
|
||||
k.Oo=function(a,b,c){this.ea(a,b,c,"NMI",hj);this.Zg=b};k.On=function(a){var b=this.T.H>>8;this.fa&&E(this.fa,sj)&&($c(this.fa,ti,a),ad(this.T,a,function(a,d){return function(e){d=Ub(a.T)-d;var f,g=a.T.K&255,h=a.T.K>>8,l=a.T.K&255,n=a.T.K>>8;if(2==b||3==b)f=" CH(hour)="+v(h)+" CL(min)="+t(g)+" DH(sec)="+t(n);else if(4==b||5==b)f=" CX(year)="+v(a.T.J)+" DH(month)="+t(n)+" DL(day)="+t(l);bd(a.fa,ti,e,d,f)}}(this,Ub(this.T))));return!0};
|
||||
k.save=function(){var a=new gd(this);a.set(0,[this.ac,this.ve,this.fd,this.af]);for(var b=[],c=0;c<this.jb;c++){for(var d=this.jb[c],e=d,f=[],g=0;g<e.Ib.length;g++){var h=e.Ib[g];f[g]=[h.Jd,h.Rg,h.bc,h.eb,h.Za,h.mode,h.$g,h.hp,h.ip]}b[c]=[d.de,d.ki,d.kk,d.lb,f]}a.set(1,[b]);b=[];for(c=0;c<this.Eb.length;c++)d=this.Eb[c],b[c]=[d.og,d.vc,d.Md,d.zd,d.Pb,d.Kc,d.De,d.Vf];a.set(2,[b]);b=[];for(c=0;c<this.Ob.length;c++)d=this.Ob[c],b[c]=[d.bc,d.Cc,d.Za,d.Ke,d.mk,d.mode,d.Dg,d.ge,d.md,d.od,d.cg,d.of,d.se];
|
||||
a.set(3,[this.ni,b]);a.set(4,[this.Zg,this.Ac,this.li,this.Wf,this.Yg]);this.Ia>=fi&&(a.set(5,[this.qb,this.yd,this.jd,this.Ug,this.Be,this.ji]),a.set(6,[this.Uf,this.Pg,this.Ce,this.ta,this.jg]));return a.data()};
|
||||
k.restore=function(a){var b,c;b=a[0];this.ac=b[0];this.ve=b[1];this.fd=b[2];this.af=b[3];b=a[1];for(c=0;c<this.dh;c++)vi(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.gh;c++)wi(this,c,0===c?32:160,b[0][c]);b=a[3];this.ni=b[0];for(c=0;c<this.Ob.length;c++)xi(this,c,b[1][c]);b=a[4];this.Zg=b[0];this.Ac=b[1];this.li=b[2];this.Wf=b[3];this.Yg=b[4];if(b=a[5])this.qb=b[0],this.yd=b[1],this.jd=b[2],this.Ug=b[3],this.Be=b[4],this.ji=b[5];if(b=a[6])this.Uf=b[0],this.Pg=b[1],this.Ce=b[2],this.ta=b[3],
|
||||
this.jg=b[4],Ai(this);return!0};var Di=[0,null,null,0,Array(4)];function vi(a,b,c){var d=a.jb[b];d||(d={Ib:Array(4)});c=c&&5==c.length?c:Di;d.de=c[0];d.ki=c[1];d.kk=c[2];d.lb=c[3];d.Wn=b<<2;for(var e=0;e<d.Ib.length;e++)Ei(d,e,c[4][e]);a.jb[b]=d}var Fi=[!0,[0,0],[0,0],[0,0],[0,0]];
|
||||
function Ei(a,b,c){var d=a.Ib[b];d||(d={Rg:[0,0],bc:[0,0],eb:[0,0],Za:[0,0]});c=c&&8==c.length?c:Fi;d.Jd=c[0];d.Rg[0]=c[1][0];d.Rg[1]=c[1][1];d.bc[0]=c[2][0];d.bc[1]=c[2][1];d.eb[0]=c[3][0];d.eb[1]=c[3][1];d.Za[0]=c[4][0];d.Za[1]=c[4][1];d.mode=c[5];d.$g=c[6];d.ia=a;d.Kk=b;Gi(d,c[8],c[9]);a.Ib[b]=d}function Gi(a,b,c,d){"string"==typeof b&&(b=Wa(b));b&&(a.kh=null,a.hp=b.id,a.ip=c,a.ih=b,a.Ii=b[c],a.Kh=d)}var Hi=[0,Array(4)];
|
||||
function wi(a,b,c,d){var e=a.Eb[b];e||(e={vc:[null,null,null,null]});d=d&&8==d.length?d:Hi;e.port=c;e.Bq=b<<3;e.og=d[0];e.vc[0]=d[1][0];e.vc[1]=d[1][1];e.vc[2]=d[1][2];e.vc[3]=d[1][3];e.Md=d[2];e.zd=d[3];e.Pb=d[4];e.Kc=d[5];e.De=d[6];e.Vf=d[7];a.Eb[b]=e}var Ii=[[0,0],[0,0],[0,0],[0,0]];
|
||||
function xi(a,b,c){var d=a.Ob[b];d||(d={bc:[0,0],Cc:[0,0],Za:[0,0],Ke:[0,0]});c=c&&13==c.length?c:Ii;d.bc[0]=c[0][0];d.bc[1]=c[0][1];d.Cc[0]=c[1][0];d.Cc[1]=c[1][1];d.Za[0]=c[2][0];d.Za[1]=c[2][1];d.Ke[0]=c[3][0];d.Ke[1]=c[3][1];d.mk=c[4];d.mode=c[5];d.Dg=c[6];d.ge=c[7];d.md=c[8];d.od=c[9];d.cg=c[10];d.of=c[11];d.se=c[12];a.Ob[b]=d}function yi(a,b){return((((b?a.ac:a.fd)&12)>>2)+1)*a.Qn+32*((b?a.ve:a.af)&15)}function Ji(a,b){var c=b?a.ac:a.fd;return a.Ia!=ai||c&ei.Zh?((c&ei.Jf)>>ei.Kf)+1:0}
|
||||
function Bi(a,b){if(b<Ji(a)){if(!a.Vd)return 1;if(b<a.Vd.length)switch(a.Vd[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 zi(a,b){return((b?a.ac:a.fd)&di.Jf)>>di.Kf}
|
||||
function hi(a,b,c,d,e){for(var f="",g=1;8>=g;g++){var h="pcjs-bitCell";g||(h+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+g)+'" class="'+h+'" data-value="0">'+g+"</div>\n"}c.innerHTML=f;b=D(c,"pcjs-bitCell");c=null;for(g=0;g<b.length;g++)null!=e&&null!=e[g]&&(c=e[g]),c&&b[g].setAttribute("title",c),Ki(b[g],d&1<<g?!1:!0),b[g].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");Ki(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.ac=
|
||||
a.ac&~e|(c?0:e);break;case "sw2":a.ve=a.ve&~e|(c?0:e)}ui(a)}}(a,b[g])}function Ki(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function ui(a){var b=a.wa.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(null!=b){var d;d=""+(yi(a,!0)+"Kb");d+=", "+c[zi(a,!0)]+" Monitor";d+=", "+Ji(a,!0)+" Floppy Drives";if(null!=a.fd&&a.fd!=a.ac||null!=a.af&&a.af!=a.ve)d+=" (Reset required)";b.innerHTML=d}}
|
||||
function Li(a,b,c,d,e){var f=a.jb[b],g=f.Ib[c],h=g.eb[f.lb];a.ea(d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.lb+"]",P,h);f.lb^=1;b||0!=c||f.lb||(g.eb[0]++,255<g.eb[0]&&(g.eb[0]=0,g.eb[1]++,255<g.eb[1]&&(g.eb[1]=0)));return h}function Mi(a,b,c,d,e,f){var g=a.jb[b];a.ea(d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+g.lb+"]",P);a=g.Ib[c];a.eb[g.lb]=a.Rg[g.lb]=e;g.lb^=1}
|
||||
function Ni(a,b,c,d,e){var f=a.jb[b],g=f.Ib[c],h=g.Za[f.lb];a.ea(d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.lb+"]",P,h);f.lb^=1;b||0!=c||f.lb||(g.Za[0]--,0>g.Za[0]&&(g.Za[0]=255,g.Za[1]--,0>g.Za[1]&&(g.Za[1]=255)));return h}function Oi(a,b,c,d,e,f){var g=a.jb[b];a.ea(d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.lb+"]",P);a=g.Ib[c];a.Za[g.lb]=a.bc[g.lb]=e;g.lb^=1}function Pi(a,b,c,d){var e=a.jb[b],f=e.de|1;e.de&=-16;a.ea(c,null,d,"DMA"+b+".STATUS",P,f);return f}
|
||||
function Qi(a,b,c,d,e){var f=a.jb[b];a.ea(c,d,e,"DMA"+b+".REQ",P);a=d&3;f.de=f.de&~(16<<a)|(d&4)<<a+2;f.kk=d}function Ri(a,b,c,d,e){var f=a.jb[b];a.ea(c,d,e,"DMA"+b+".MASK",P);b=d&3;c=f.Ib[b];c.Jd=!!(d&4);c.Jd||Si(a,f.Wn+b)}function Ti(a,b,c,d,e){a.ea(c,d,e,"DMA"+b+".MASTER_CLEAR",P);a=a.jb[b];for(b=0;b<a.Ib.length;b++)Ei(a,b)}function Ui(a,b,c,d,e){var f=a.jb[b].Ib[c].$g;a.ea(d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",P,f);return f}
|
||||
function Vi(a,b,c,d,e,f){a.ea(d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",P);a.jb[b].Ib[c].$g=e}function Wi(a,b,c,d){var e=a.Pg[b];a.ea(c,null,d,"DMA.SPARE"+b+".PAGE",P,e);return e}function Xi(a,b,c,d,e){a.ea(c,d,e,"DMA.SPARE"+b+".PAGE",P);a.Pg[b]=d}function Yi(a,b,c,d,e){Gi(a.jb[b>>2].Ib[b&3],c,d,e)}function Si(a,b,c){b=a.jb[b>>2].Ib[b&3];b.ih&&b.Ii&&b.Kh?(c&&(b.kh=c),b.Jd||Id(a,b,!0)):c&&c(!0)}
|
||||
function Id(a,b,c){c&&(b.count=b.Za[1]<<8|b.Za[0],b.nm=b.mode&12,b.Gk=b.ad=!1);for(var d=!1;0<=b.count&&(c=b.$g<<16|b.eb[1]<<8|b.eb[0],4==b.nm?(d=!0,function(c){b.Ii.call(b.ih,b.Kh,-1,function(f,g){0>f&&(b.Gk||(b.Gk=!0),f=255);b.Jd||pb(a.ra,c,f);(d=g)&&setTimeout(function(){Zi(b)||Id(a,b)},0)})}(c)):8==b.nm?(c=nb(a.ra,c),0>b.Ii.call(b.ih,b.Kh,c)&&(b.ad=!0)):b.ad=!0),!d&&!Zi(b););}
|
||||
function Zi(a){if(!a.ad&&0<=--a.count&&(a.mode&32?(a.eb[0]--,0>a.eb[0]&&(a.eb[0]=255,a.eb[1]--,0>a.eb[1]&&(a.eb[1]=255))):(a.eb[0]++,255<a.eb[0]&&(a.eb[0]=0,a.eb[1]++,255<a.eb[1]&&(a.eb[1]=0))),!a.Jd))return!1;var b=a.ia;b.de=b.de&~(16<<a.Kk)|1<<a.Kk;a.mode&16||(a.Jd=!0,a.ih=a.Kh=null);a.kh&&(a.kh(!a.ad),a.kh=null);return!0}function $i(a,b,c){var d=0,e=a.Eb[b];if(null!=e.Vf)switch(e.Vf&3){case 2:d=e.Pb;break;case 3:d=e.Kc}a.ea(e.port,null,c,"PIC"+b,Fd,d);return d}
|
||||
function aj(a,b,c,d){var e=a.Eb[b];a.ea(e.port,c,d,"PIC"+b,Fd);if(c&16)e.Md=0,e.vc[e.Md++]=c,e.zd=0,e.De=7,e.Pb=e.Kc=0,e.Vf=10;else if(c&8)e.Vf=c;else{var f=c&224;if(f&32){d=0;if(96==(f&96))d=1<<(c&7);else for(c=e.De+1;;){c&=7;f=1<<c;if(e.Kc&f){d=f;break}if(c++==e.De)break}e.Kc&d&&(e.Kc&=~d,bj(a,b))}else 192==f&&(e.De=c&7)}}function cj(a,b,c){var d=a.Eb[b],e=d.zd;a.ea(d.port+1,null,c,"PIC"+b,Fd,e);return e}
|
||||
function dj(a,b,c,d){var e=a.Eb[b];a.ea(e.port+1,c,d,"PIC"+b,Fd);e.Md<e.vc.length?(e.vc[e.Md++]=c,2==e.Md&&e.vc[0]&2&&e.Md++,3!=e.Md||e.vc[0]&1||e.Md++):(e.zd=c,d=a.T,d.aa|=4,bj(a,b,b||253!=c?0:6))}function bj(a,b,c){b=a.Eb[b];var d=((b.Kc|b.zd)^255)&b.Pb;a=a.T;a.oa&&(a.ub=d?a.ub|1:a.ub&-2);d&&c&&(b.og=c)}function ej(a,b,c){var d=b>>3,e=a.Eb[d];e.Pb|=1<<(b&7);e.og=c||0;1==d&&(a.Eb[0].Pb|=4);bj(a,d)}
|
||||
function fj(a,b){var c=b>>3,d=a.Eb[c],e=1<<(b&7);d.Pb&e&&(d.Pb&=~e,1!=c||d.Pb||(a.Eb[0].Pb&=-5),bj(a,c))}function Gd(a,b){void 0===b&&(b=0);var c=-1,d=a.Eb[b];if(d.og)c=-2,d.og--;else for(var e=d.Pb&((d.Kc|d.zd)^255),f=d.De+1;;){var f=f&7,g=1<<f;if(e&g){c=b||2!=f?d.vc[1]+f:Gd(a,1);0<=c&&(d.Kc|=g,d.Pb&=~g);break}if(f++==d.De)break}return c}function gj(a,b,c){var d;d=a.Ob[b];d.ge==d.md&&hj(a,b);if(d.cg)return d.Ke[d.ge++];qi(a,b);d=d.Za[d.ge++];a.ea(64+b,null,c,"TIMER"+b,pi,d);return d}
|
||||
function ij(a,b,c,d){a.ea(64+b,c,d,"TIMER"+b,pi);d=a.Ob[b];d.ge==d.md&&hj(a,b);d.bc[d.ge++]=c;if(d.ge==d.md){d.of&&0!=d.mode&&8!=d.mode||(d.cg=!1,d.Za[0]=d.Cc[0]=d.bc[0],d.Za[1]=d.Cc[1]=d.bc[1],d.se=Ub(a.T,a.uh),d.of=!0,d.od=0!=d.mode,0==b&&fj(a,0));2==b&&Zb(a);if(0==b){var e=jj(a,0);2048<=e&&(a.T.Eh=Math.round(65536/e))}0==b&&0==d.mode&&16==d.Dg&&(b=a.T,b.qa.Rb&&(a=b.A-c*a.Ul,b.A-=a,b.Qc-=a))}}k=O.prototype;k.In=function(a,b){this.ea(a,null,b,"TIMER_CTRL",pi);return null};
|
||||
k.Xo=function(a,b,c){this.ea(a,b,c,"TIMER_CTRL",pi);this.ni=b;a=(b&192)>>6;if(3!=a){c=b&1;var d=b&14;if(b&=48){var e=this.Ob[a];e.Dg=b;e.mode=d;e.mk=c;e.bc=[0,0];e.Za=[0,0];e.Ke=[0,0];e.od=!1;e.cg=!1;e.of=!1;hj(this,a);0==a&&fj(this,0);2==a&&255==this.Eb[0].zd&&77==this.Ac&&(a=this.Ob[0],a.Cc[0]=a.bc[0],a.Cc[1]=a.bc[1],a.se=Ub(this.T,this.uh))}else qi(this,a),b=this.Ob[a],b.Ke[0]=b.Za[0],b.Ke[1]=b.Za[1],b.cg=!0,hj(this,a)}};
|
||||
function jj(a,b){var c=a.Ob[b],d=c.bc[1]<<8|c.bc[0];d||(d=1==c.md?256:65536);return d}function hj(a,b){var c=a.Ob[b];c.ge=32==c.Dg?1:0;c.md=48==c.Dg?2:1}
|
||||
function qi(a,b,c){var d=a.Ob[b];if(d.of&&(2!=b||a.Ac&1)){var e=Ub(a.T,a.uh),f=(e-d.se)/a.Ul|0;0>f&&(d.se=e,f=0);var g=jj(a,b),h=a.Ob[b],l=h.Cc[1]<<8|h.Cc[0];l||(l=1==h.md?256:65536);h=l-f;0==d.mode?(0>=h&&(h=0),h||(d.od=!0,d.of=!1,b||ej(a,0))):4==d.mode?(d.od=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Cc[0]=h&255,d.Cc[1]=h>>8,d.se=e,!b&&d.od&&ej(a,0))):6==d.mode&&(h-=f,0>=h&&(d.od=!d.od,h=g+h,0>=h&&(h=g),d.Cc[0]=h&255,d.Cc[1]=h>>8,d.se=e,!b&&d.od&&ej(a,0)));d.Za[0]=h&255;d.Za[1]=h>>8;c&&(a.se=0)}return d}
|
||||
function $b(a,b){for(var c=0;c<a.Ob.length;c++)qi(a,c,b);if(a.Ia>=fi){var c=0,d=a.T.ca.Ld,e=Ub(a.T,a.uh);if(0<=a.jg&&(c=e-a.jg,Math.floor(c/d)&&60<=++a.ta[0]&&(a.ta[0]=0,60<=++a.ta[2]&&(a.ta[2]=0,24<=++a.ta[4])))){a.ta[4]=0;a.ta[6]=a.ta[6]%7+1;var f=a.ta[9],g=qa[a.ta[8]-1];28==g&&0===f%4&&(f%100||0===f%400)&&g++;++a.ta[7]>g&&(a.ta[7]=1,12<++a.ta[8]&&(a.ta[8]=1,a.ta[9]=(a.ta[9]+1)%100))}a.jg=e-c%d}}
|
||||
k.An=function(a,b){var c=this.Zg;this.Wf&16&&(this.Ac&128?c=this.fd:this.Ra&&(c=kj(this.Ra)));this.ea(a,null,b,"PPI_A",lj,c);return c};k.Qo=function(a,b,c){this.ea(a,b,c,"PPI_A",lj);this.Zg=b};k.Bn=function(a,b){var c=this.Ac;this.ea(a,null,b,"PPI_B",lj,c);return c};k.Ro=function(a,b,c){this.ea(a,b,c,"PPI_B",lj);mj(this,b);this.Ra&&nj(this.Ra,b&128?!1:!0,b&64?!0:!1)};function mj(a,b){var c=!!(b&2),d=!!(a.Ac&2);a.Ac=b;c!=d&&Zb(a,c)}
|
||||
k.Cn=function(a,b){var c=0,c=this.Ia==ai?this.Ac&4?c|this.af&15:c|this.af>>4&1:this.Ac&8?c|this.fd>>4:c|this.fd&15;this.Ac&1&&qi(this,2).od&&(c=this.Ac&2?c|32:c|16);this.ea(a,null,b,"PPI_C",lj|Db,c);return c};k.So=function(a,b,c){this.ea(a,b,c,"PPI_C",lj);this.li=b};k.Dn=function(a,b){var c=this.Wf;this.ea(a,null,b,"PPI_CTRL",lj,c);return c};k.To=function(a,b,c){this.ea(a,b,c,"PPI_CTRL",lj);this.Wf=b};
|
||||
k.Qm=function(a,b){var c=this.Ug;this.ea(a,null,b,"8042_OUTBUFF",oj,c);this.qb&=-258;var d=this.Ra&&kj(this.Ra,!0);d&&pj(this,d);return c};k.jo=function(a,b,c){this.ea(a,b,c,"8042_INBUF.DATA",oj);if(this.qb&8)switch(this.yd){case 96:qj(this,b);break;case 209:rj(this,b);break;default:if(qj(this,this.jd&-17),this.Ra){a=-1;switch(b){case 255:a=250,sj(this.Ra)}pj(this,a)}}this.yd=b;this.qb&=-9};k.Rm=function(a,b){var c=this.Ac&-209|(Ub(this.T)&64?16:0);this.ea(a,null,b,"8042_RWREG",oj|tj,c);return c};
|
||||
k.ko=function(a,b,c){this.ea(a,b,c,"8042_RWREG",oj);mj(this,b)};k.Sm=function(a,b){this.ea(a,null,b,"8042_STATUS",oj,this.qb);var c=this.qb&255;this.qb&256&&(this.qb|=1,this.qb&=-257);return c};
|
||||
k.io=function(a,b,c){this.ea(a,b,c,"8042_INBUFF.CMD",oj);this.yd=b;this.qb|=8;a=0;240<=this.yd&&(a=this.yd^15,this.yd=240);switch(this.yd){case 192:pj(this,this.Be);break;case 173:qj(this,this.jd|16);break;case 174:qj(this,this.jd&-17);break;case 170:this.Ra&&uj(this.Ra,!0);qj(this,this.jd|16);pj(this,85);rj(this,3);break;case 224:pj(this,this.jd&16?0:1);break;case 240:a&1&&Sc(this.T)}};
|
||||
function qj(a,b){var c=!(a.jd&16);a.jd=b;a.qb=a.qb&-5|b&4;if(a.Ra){var d=!(b&16);nj(a.Ra,!!(b&8),d)&&pj(a,kj(a.Ra,!0));!c&&d&&kj(a.Ra)&&vj(a)}}function pj(a,b){0<=b&&(a.Ug=b,a.qb&=-2,a.qb|=256)}function rj(a,b){a.ji=b;jb(a.ra,!!(b&2));b&1||Sc(a.T)}function vj(a){a.Ia<fi?ej(a,1,4):a.jd&16||ej(a,1,120)}k.fn=function(a,b){this.ea(a,null,b,"CMOS_ADDR",ri,this.Ce);return this.Ce};k.yo=function(a,b,c){this.ea(a,b,c,"CMOS_ADDR",ri);this.Ce=b;this.Yg=b&128?0:128};
|
||||
k.gn=function(a,b){var c=this.Ce&63,d=13>=c?si(this,c):this.ta[c];this.ea(a,null,b,"CMOS_DATA["+t(c)+"]",ri,d);return d};k.zo=function(a,b,c){var d=this.Ce&63;this.ea(a,b,c,"CMOS_DATA["+t(d)+"]",ri);a=this.ta;13>=d&&10>d&&(c=!1,this.ta[11]&4||(b=10*(b>>4)+(b&15),c=!0),4==d||5==d)&&(c&&12<b&&(b+=48),this.ta[11]&2||(12>=b?b=12==b?0:b:(b-=116,b=24==b?12:b)));a[d]=b};k.yn=function(a,b){this.ea(a,null,b,"MFG_DATA",lj,this.Uf);return this.Uf};k.No=function(a,b,c){this.ea(a,b,c,"MFG_DATA",lj);this.Uf=b};
|
||||
k.Po=function(a,b,c){this.ea(a,b,c,"NMI",lj);this.Yg=b};k.Pn=function(a){var b=this.T.H>>8;this.fa&&E(this.fa,wj)&&($c(this.fa,ti,a),ad(this.T,a,function(a,d){return function(e){d=Ub(a.T)-d;var f,g=a.T.K&255,h=a.T.K>>8,l=a.T.K&255,n=a.T.K>>8;if(2==b||3==b)f=" CH(hour)="+v(h)+" CL(min)="+t(g)+" DH(sec)="+t(n);else if(4==b||5==b)f=" CX(year)="+v(a.T.J)+" DH(month)="+t(n)+" DL(day)="+t(l);bd(a.fa,ti,e,d,f)}}(this,Ub(this.T))));return!0};
|
||||
function bi(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c}
|
||||
function Zb(a,b){if(a.pi){void 0!==b?a.Ek=b:b=a.Ek&&a.T&&a.T.qa.Pb;var c=Math.round(1193181/fj(a,2));if(20>c||2E4<c)b=!1;b?a.rd?(a.rd.frequency.value=c,a.Ra("speaker set to "+c+"hz",tj)):(a.rd=a.pi.createOscillator(),a.rd.type=1,a.rd.connect(a.pi.destination),a.rd.frequency.value=c,a.Ra("speaker on at "+c+"hz",tj),a.rd.noteOn(0)):a.rd&&(a.rd.noteOff(0),a.rd.disconnect(),delete a.rd,a.Ra("speaker off at "+c+"hz",tj))}else b&&a.Ra("BEEP",tj)}
|
||||
k.Ra=function(a,b,c){this.fa&&(null==b&&(b=hj),void 0!==c&&(b|=0==c?pi:1==c?uj:6==c?vj:Fd),E(this.fa,b)&&this.fa.message(a))};k.ea=function(a,b,c,d,e,f){this.fa&&(null==e&&(e=hj),this.fa.ea(this,a,b,c,d,e,f))};
|
||||
var ii={0:function(a,b){return Hi(this,0,0,a,b)},1:function(a,b){return Ji(this,0,0,a,b)},2:function(a,b){return Hi(this,0,1,a,b)},3:function(a,b){return Ji(this,0,1,a,b)},4:function(a,b){return Hi(this,0,2,a,b)},5:function(a,b){return Ji(this,0,2,a,b)},6:function(a,b){return Hi(this,0,3,a,b)},7:function(a,b){return Ji(this,0,3,a,b)},8:function(a,b){return Li(this,0,a,b)},32:function(a,b){return Wi(this,0,b)},33:function(a,b){return Zi(this,0,b)},64:function(a,b){return cj(this,0,b)},65:function(a,
|
||||
b){return cj(this,1,b)},66:function(a,b){return cj(this,2,b)},67:O.prototype.Hn,129:function(a,b){return Qi(this,0,2,a,b)},130:function(a,b){return Qi(this,0,3,a,b)},131:function(a,b){return Qi(this,0,1,a,b)},135:function(a,b){return Qi(this,0,0,a,b)}},ki={96:O.prototype.zn,97:O.prototype.An,98:O.prototype.Bn,99:O.prototype.Cn},mi={96:O.prototype.Pm,97:O.prototype.Qm,100:O.prototype.Rm,112:O.prototype.en,113:O.prototype.fn,128:O.prototype.xn,132:function(a,b){return Si(this,0,a,b)},133:function(a,
|
||||
b){return Si(this,1,a,b)},134:function(a,b){return Si(this,2,a,b)},136:function(a,b){return Si(this,3,a,b)},137:function(a,b){return Qi(this,1,2,a,b)},138:function(a,b){return Qi(this,1,3,a,b)},139:function(a,b){return Qi(this,1,1,a,b)},140:function(a,b){return Si(this,4,a,b)},141:function(a,b){return Si(this,5,a,b)},142:function(a,b){return Si(this,6,a,b)},143:function(a,b){return Qi(this,1,0,a,b)},160:function(a,b){return Wi(this,1,b)},161:function(a,b){return Zi(this,1,b)},192:function(a,b){return Hi(this,
|
||||
1,0,a,b)},194:function(a,b){return Ji(this,1,0,a,b)},196:function(a,b){return Hi(this,1,1,a,b)},198:function(a,b){return Ji(this,1,1,a,b)},200:function(a,b){return Hi(this,1,2,a,b)},202:function(a,b){return Ji(this,1,2,a,b)},204:function(a,b){return Hi(this,1,3,a,b)},206:function(a,b){return Ji(this,1,3,a,b)},208:function(a,b){return Li(this,1,a,b)}},ji={0:function(a,b,c){Ii(this,0,0,a,b,c)},1:function(a,b,c){Ki(this,0,0,a,b,c)},2:function(a,b,c){Ii(this,0,1,a,b,c)},3:function(a,b,c){Ki(this,0,1,
|
||||
a,b,c)},4:function(a,b,c){Ii(this,0,2,a,b,c)},5:function(a,b,c){Ki(this,0,2,a,b,c)},6:function(a,b,c){Ii(this,0,3,a,b,c)},7:function(a,b,c){Ki(this,0,3,a,b,c)},8:function(a,b,c){this.ea(a,b,c,"DMA0.CMD",P);this.gb[0].ji=b},9:function(a,b,c){Mi(this,0,a,b,c)},10:function(a,b,c){Ni(this,0,a,b,c)},11:function(a,b,c){this.ea(a,b,c,"DMA0.MODE",P);this.gb[0].Lb[b&3].mode=b},12:function(a,b,c){this.ea(a,b,c,"DMA0.INDEX",P);this.gb[0].vb=0},13:function(a,b,c){Pi(this,0,a,b,c)},32:function(a,b,c){Xi(this,
|
||||
0,b,c)},33:function(a,b,c){$i(this,0,b,c)},64:function(a,b,c){ej(this,0,b,c)},65:function(a,b,c){ej(this,1,b,c)},66:function(a,b,c){ej(this,2,b,c)},67:O.prototype.Wo,129:function(a,b,c){Ri(this,0,2,a,b,c)},130:function(a,b,c){Ri(this,0,3,a,b,c)},131:function(a,b,c){Ri(this,0,1,a,b,c)},135:function(a,b,c){Ri(this,0,0,a,b,c)}},li={96:O.prototype.Po,97:O.prototype.Qo,98:O.prototype.Ro,99:O.prototype.So,160:O.prototype.Oo},ni={96:O.prototype.io,97:O.prototype.jo,100:O.prototype.ho,112:O.prototype.xo,
|
||||
113:O.prototype.yo,128:O.prototype.Mo,132:function(a,b,c){Ti(this,0,a,b,c)},133:function(a,b,c){Ti(this,1,a,b,c)},134:function(a,b,c){Ti(this,2,a,b,c)},136:function(a,b,c){Ti(this,3,a,b,c)},137:function(a,b,c){Ri(this,1,2,a,b,c)},138:function(a,b,c){Ri(this,1,3,a,b,c)},139:function(a,b,c){Ri(this,1,1,a,b,c)},140:function(a,b,c){Ti(this,4,a,b,c)},141:function(a,b,c){Ti(this,5,a,b,c)},142:function(a,b,c){Ti(this,6,a,b,c)},143:function(a,b,c){Ri(this,1,0,a,b,c)},160:function(a,b,c){Xi(this,1,b,c)},161:function(a,
|
||||
b,c){$i(this,1,b,c)},192:function(a,b,c){Ii(this,1,0,a,b,c)},194:function(a,b,c){Ki(this,1,0,a,b,c)},196:function(a,b,c){Ii(this,1,1,a,b,c)},198:function(a,b,c){Ki(this,1,1,a,b,c)},200:function(a,b,c){Ii(this,1,2,a,b,c)},202:function(a,b,c){Ki(this,1,2,a,b,c)},204:function(a,b,c){Ii(this,1,3,a,b,c)},206:function(a,b,c){Ki(this,1,3,a,b,c)},208:function(a,b,c){this.ea(a,b,c,"DMA1.CMD",P);this.gb[1].ji=b},210:function(a,b,c){Mi(this,1,a,b,c)},212:function(a,b,c){Ni(this,1,a,b,c)},214:function(a,b,c){this.ea(a,
|
||||
b,c,"DMA1.MODE",P);this.gb[1].Lb[b&3].mode=b},216:function(a,b,c){this.ea(a,b,c,"DMA1.INDEX",P);this.gb[1].vb=0},218:function(a,b,c){Pi(this,1,a,b,c)}};Ha(function(){for(var a=D(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new O(d);Za(d,c);ui(d)}});
|
||||
function wj(a){z.call(this,"ROM",a,wj);this.Gb=null;this.gk=a.addr;this.Uh=a.size;this.sm=a.alias;this.Gg=a.file;this.Lk=a.notify;if(this.Gg){a=this.Gg;var b=ha(this.Gg);"json"!=b&&"hex"!=b&&(a=ta()+"/api/v1/dump?file="+this.Gg+"&format=bytes&decimal=true");sa(a,!0,null,this,wj.prototype.ao)}}A(z,wj);wj.prototype.oc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;xj(this)};wj.prototype.Zb=function(){this.di&&(this.fa&&yj(this.fa,this.gk,this.Uh,this.di),delete this.di);return!0};wj.prototype.Yb=function(){return!0};
|
||||
wj.prototype.ao=function(a,b,c){if(c)this.Ja("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.Gb=e;else if(f)for(this.Gb=Array(4*f.length),c=b=0;b<f.length;b++)this.Gb[c++]=f[b]&255,this.Gb[c++]=f[b]>>8&255,this.Gb[c++]=f[b]>>16&255,this.Gb[c++]=f[b]>>24&255;else this.Gb=d;this.di=d.symbols;if(!this.Gb.length){x("Empty ROM: "+a);return}if(1==this.Gb.length){x(this.Gb[0]);return}}catch(g){this.Ja("ROM data error: "+
|
||||
g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.Gb=Array(a.length),d=0;d<a.length;d++)this.Gb[d]=parseInt(a[d],16);xj(this)}};function xj(a){if(!bb(a))if(!a.Gg)a.Ta();else if(a.Gb&&a.ra){if(a.Gb.length!=a.Uh)cb(a,"ROM size (0x"+p(a.Gb.length)+") does not match specified size (0x"+p(a.Uh)+")");else if(zj(a,a.gk)&&zj(a,a.sm)){if(a.Lk){var b=Wa(a.Lk,a.id);b&&("ega"==b.Ia&&Aj(b,a.Gb,[8752,12640],8),b.Ta())}delete a.Gb}a.Ta()}}
|
||||
function zj(a,b){if(null==b)return!0;if(kb(a.ra,b,a.Uh,!0)){for(var c=0;c<a.Gb.length;c++)pb(a.ra,b+c,a.Gb[c]);return!0}return!1}Ha(function(){for(var a=D(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new wj(d);Za(d,c)}});function Bj(a){z.call(this,"RAM",a,Bj);this.Tg=a.addr;this.Qd=a.size;this.Gm=a.test;this.Em=!!this.Qd;this.kh=!1}A(z,Bj);Bj.prototype.oc=function(a,b,c){this.ra=b;this.T=c;this.oa=eb(a,"ChipSet");this.Ta()};Bj.prototype.Zb=function(a,b){b||this.reset();return!0};
|
||||
Bj.prototype.Yb=function(){return!0};Bj.prototype.reset=function(){if(!this.Tg&&!this.Em&&this.oa){var a=1024*yi(this.oa);this.Qd&&a!=this.Qd&&(mb(this.ra,this.Tg,this.Qd),this.kh=!1);this.Qd=a}!this.kh&&this.Qd&&kb(this.ra,this.Tg,this.Qd)&&(this.kh=!0,this.status(Math.floor(this.Qd/1024)+"Kb"));if(this.kh){if(this.Gm||qb(this.ra,1138,4660),this.oa&&(a=this.oa,a.ta)){var b=1048576>this.Tg?21:23,c=a.ta[b]|a.ta[b+1]<<8,c=c+(this.Qd>>10);a.ta[b]=c&255;a.ta[b+1]=c>>8;Ci(a)}}else x("No RAM allocated")};
|
||||
Ha(function(){for(var a=D(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new Bj(d);Za(d,c)}});function Cj(a){z.call(this,"Keyboard",a,Cj);this.Ak=!1;this.ci={};this.Sn=250;this.Tn=100;this.Ta()}A(z,Cj);
|
||||
var Q={tp:1,vp:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,qp:65,rp:66,$j:67,om:68,E:69,yp:70,Bp:71,ak:72,Dp:73,Ep:74,Fp:75,Gp:76,Hp:77,Zh:78,Jp:79,Kp:80,Mp:81,ck:82,Qp:83,$p:84,dq:85,eq:86,fq:87,hq:88,iq:89,jq:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,kq:97,lq:98,nq:99,oq:100,pq:101,qq:102,rq:103,sq:104,tq:105,uq:106,vq:107,wq:108,
|
||||
xq:109,yq:110,Aq:111,Bq:112,Cq:113,Dq:114,Eq:115,Fq:116,Gq:117,Hq:118,Iq:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},Dj={16:2,17:8,18:32,20:256},Ej={tab:1009,esc:1027,"right-shift":3016,shift:1016,ctrl:1017,alt:1018,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},Fj={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,bs:14,tab:15,q:16,
|
||||
w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,quote:40,"`":41,shift:42,"\\":43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,"right-shift":54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,"num-home":71,"num-up":72,"num-pgup":73,"num-sub":74,"num-left":75,"num-center":76,"num-right":77,"num-add":78,"num-end":79,"num-down":80,
|
||||
"num-pgdn":81,"num-ins":82,"num-del":83,sysreq:84,pause:84,f11:87,f12:88,"num-enter":7392,"right-ctrl":7648,"num-div":13792,"num-mul":14304,"right-alt":14560,home:18400,up:18656,pgup:18912,left:19424,right:19936,end:20448,down:20704,pgdn:20960,ins:21216,del:21472,win:23520,"right-win":23776,menu:24032},S={1027:1};S[Q["1"]]=2;S[Q["!"]]=10754;S[Q["2"]]=3;S[Q["@"]]=10755;S[Q["3"]]=4;S[Q["#"]]=10756;S[Q["4"]]=5;S[Q.$]=10757;S[Q["5"]]=6;S[Q["%"]]=10758;S[Q["6"]]=7;S[Q["^"]]=10759;S[Q["7"]]=8;
|
||||
S[Q["&"]]=10760;S[Q["8"]]=9;S[Q["*"]]=10761;S[Q["9"]]=10;S[Q["("]]=10762;S[Q["0"]]=11;S[Q[")"]]=10763;S[Q["-"]]=12;S[Q._]=10764;S[Q["="]]=13;S[Q["+"]]=10765;S[1008]=14;S[1009]=15;S[113]=16;S[81]=10768;S[119]=17;S[87]=10769;S[101]=18;S[69]=10770;S[114]=19;S[82]=10771;S[116]=20;S[84]=10772;S[121]=21;S[89]=10773;S[117]=22;S[85]=10774;S[105]=23;S[73]=10775;S[111]=24;S[79]=10776;S[112]=25;S[80]=10777;S[Q["["]]=26;S[Q["{"]]=10778;S[Q["]"]]=27;S[Q["}"]]=10779;S[13]=28;S[1017]=29;S[97]=30;S[65]=10782;
|
||||
S[115]=31;S[83]=10783;S[100]=32;S[68]=10784;S[102]=33;S[70]=10785;S[103]=34;S[71]=10786;S[104]=35;S[72]=10787;S[106]=36;S[74]=10788;S[107]=37;S[75]=10789;S[108]=38;S[76]=10790;S[Q[";"]]=39;S[Q[":"]]=10791;S[Q["'"]]=40;S[Q['"']]=10792;S[Q["`"]]=41;S[Q["~"]]=10793;S[1016]=42;S[Q["\\"]]=43;S[Q["|"]]=10795;S[122]=44;S[90]=10796;S[120]=45;S[88]=10797;S[99]=46;S[67]=10798;S[118]=47;S[86]=10799;S[98]=48;S[66]=10800;S[110]=49;S[78]=10801;S[109]=50;S[77]=10802;S[Q[","]]=51;S[Q["<"]]=10803;S[Q["."]]=52;
|
||||
S[Q[">"]]=10804;S[Q["/"]]=53;S[Q["?"]]=10805;S[3016]=54;S[1018]=56;S[Q[" "]]=57;S[1020]=58;S[1112]=59;S[1113]=60;S[1114]=61;S[1115]=62;S[1116]=63;S[1117]=64;S[1118]=65;S[1119]=66;S[1120]=67;S[1121]=68;S[1036]=71;S[1038]=72;S[1033]=73;S[1037]=75;S[1039]=77;S[1035]=79;S[1040]=80;S[1034]=81;S[1045]=82;S[1046]=83;S[1122]=87;S[1123]=88;S[4003]=7470;S[4063]=7494;S[4081]=3677523;k=Cj.prototype;
|
||||
k.Fb=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 Gj(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.Bb&64?e.Bb&=-65:e.Bb&40?b=!1:(e.Ak&&a==Q["`"]&&(a=27),b=!Hj(e,a));return b},d.onkeyup=function(a){return Gj(e,a,!1)},!0;default:if(void 0!==Ej[c]&&"button"==b)return this.ya[a]=d,d.onclick=function(a,b,c){return function(){a.T&&a.T.Pd();return!Hj(a,c)}}(this,
|
||||
c,Ej[c]),!0;if(void 0!==Fj[c])return this.ya[a]=d,b=function(a,b,c){return function(){Ij(a,c)}}(this,c,Fj[c]),c=function(a,b,c){return function(){Ij(a,c)}}(this,c,Fj[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.ra=b;this.T=c;this.fa=d;this.oa=eb(a,"ChipSet")};k.Ta=function(){this.Ck=(this.Om=Aa("iOS"))||Aa("Android");this.Ra("mobile keyboard support: "+(this.Ck?"true":"false"));return z.prototype.Ta.call(this)};
|
||||
function oj(a){a.Ra("keyboard reset",Jj);a.wc=[170];a.oa&&rj(a.oa)}function jj(a,b,c){var d=!1;a.Ai!==c&&(a.Ai=a.Ei=c);a.oh!==b&&(a.oh=b)&&!a.Ei&&qj(a);a.oh&&a.Ei&&(oj(a),a.Ei=!1,d=!0);return d}function gj(a,b){var c=0;a.wc.length&&(c=a.wc[0],a.Ra("scan code 0x"+t(c)+" delivered"),b&&qj(a));return c}function qj(a,b){0<a.wc.length&&(b?a.wc=[]:(a.wc.shift(),0<a.wc.length&&a.oa&&rj(a.oa)))}k.Zb=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};
|
||||
k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.le();this.Bb=0;this.wc=[];if(this.td)for(var a in this.td)ca(a)||this.td[a]&&clearTimeout(this.td[a]);this.td=[];this.Xl=this.Te=0};k.save=function(){var a=new gd(this);a.set(0,this.Vj());return a.data()};k.restore=function(a){return this.le(a[0])};k.le=function(a){var b=0;void 0===a&&(a=[]);this.Ai=a[b++];this.oh=a[b];return!0};k.Vj=function(){var a=0,b=[];b[a++]=this.Ai;b[a]=this.oh;return b};
|
||||
function Ij(a,b){var c=b&127,d=c==b;if(a.wc)if(20>a.wc.length){if(!(!d&&!a.ci[c]||d&&a.ci[c])){a.ci[c]=d;a.Ra("scan code 0x"+t(b)+" buffered");a.wc.push(b);1==a.wc.length&&a.oa&&rj(a.oa);for(var e in Fj)if(Fj[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 Kj(a,b){var c=b?a.Tn:a.Sn;a.T&&a.T.ca.nd&&(c/=a.T.ca.nd);return c}
|
||||
function Lj(a,b){!a.Te||void 0!==b&&b==a.Te||(clearTimeout(a.td[a.Te]),Mj(a,a.Te,!1))}function Gj(a,b,c){var d,e=!c,f=b.keyCode,g=f;c&&(a.Xl=f);if(S[f+1E3]){var g=g+1E3,h=Dj[f]||0;if(h)2==b.location&&(h>>=1,g+=2E3),a.Bb&=~h,c&&(a.Bb|=h),20==f?d=Hj(a,g):e=!1;else if(8==f||9==f||27==f)8==f&&8==(a.Bb&40)&&(g=4063),d=c?!Hj(a,g):!1}else 91==f?(a.Bb&=-65,c&&(a.Bb|=64),e=!1,d=!0):b.altKey||b.ctrlKey?65<=f&&90>=f&&(g+=32):d=!0;e&&(a.Bb&=-65,a.Ck||f!=a.Xl||Lj(a));void 0===d&&(d=!Mj(a,g,c));return d}
|
||||
function Hj(a,b,c){var d=!1;Lj(a,b);Mj(a,b,!0)&&(c?Mj(a,b,!1):(c=!1,a.td[b]&&(clearTimeout(a.td[b]),c=!0),c=Kj(a,c),a.td[a.Te=b]=setTimeout(function(a){return function(){Mj(a,b,!1)}}(a),c)),d=!0);return d}
|
||||
function Mj(a,b,c){var d=!1;c||(a.td[b]=null,a.Te==b&&(a.Te=0));var e=S[b]||S[b+1E3];if(void 0!==e){14==e&&40==(a.Bb&40)&&(e=83);var d=[],f=e&255;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,h=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==h?a.Bb&3||a.Bb&256&&b||(g=h):29==h?a.Bb&12||(g=h):56==h?a.Bb&48||(g=h):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)Ij(a,d[c]);d=!0}return d}
|
||||
k.Ra=function(a,b){this.fa&&(null==b&&(b=uj),b==Jj&&(b|=uj),E(this.fa,b)&&this.fa.message(a))};Ha(function(){for(var a=D(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new Cj(d);Za(d,c)}});
|
||||
function T(a,b,c,d){z.call(this,"Video",a,T);this.Ia=a.model;this.Vc=0;"ega"==this.Ia&&(this.em=a.switches,this.Vc=a.memory||0);this.pd=a.mode;if(void 0===this.pd||void 0===Nj[this.pd])this.pd=Oj;this.Fh=a.charCols;this.Ui=a.charRows;if(void 0===this.Fh||void 0===this.Ui)this.Fh=Nj[this.pd][0],this.Ui=Nj[this.pd][1];this.Ad=a.screenWidth;this.ie=a.screenHeight;this.Fm=a.scale;this.Dm=12<=Math.round(this.Ad/this.Fh);this.Hm=a.touchScreen;this.bb=b;this.Wc=c;this.jm=d;this.me=null;this.Cm=a.autoLock;
|
||||
this.Ua=this.Rb=0;this.Wd=[];this.wd=Array(16);this.Bi=!1;var e=this;b&&(b.onfocus=function(){e.Bi=!0},b.onblur=function(){e.Bi=!1},b.uf=b.requestPointerLock||b.mozRequestPointerLock||b.webkitRequestPointerLock,b.km=b.exitPointerLock||b.mozExitPointerLock||b.webkitExitPointerLock,b=function(){e.Ag(document.pointerLockElement===e.bb||document.mozPointerLockElement===e.bb||document.webkitPointerLockElement===e.bb)},"onpointerlockchange"in document?document.addEventListener("pointerlockchange",b,!1):
|
||||
"onmozpointerlockchange"in document?document.addEventListener("mozpointerlockchange",b,!1):"onwebkitpointerlockchange"in document&&document.addEventListener("webkitpointerlockchange",b,!1));if(a=a.fontROM)"json"!=ha(a)&&(a=ta()+"/api/v1/dump?file="+a+"&format=bytes"),sa(a,!0,null,this,this.bo)}A(z,T);
|
||||
var Pj={2:{Xi:15700,Wi:208,Lj:85,Mj:96},3:{Xi:18432,Wi:364,Lj:85,Mj:96},4:{Xi:21850,Wi:364,Lj:85,Mj:96}},Qj={6:[1,3,!0],7:[2,3,!0],8:[6,3,!0],9:[4,3,!0],10:[3,1,!0],11:[3,2,!0],0:[1,3,!1],1:[2,3,!1],2:[6,3,!1],3:[4,3,!1],4:[3,1,!1],5:[3,2,!1]},Oj=7,Nj=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];Nj[Oj]=[80,25,1,0,1];Nj[13]=[320,200,16];Nj[14]=[640,200,16];Nj[15]=[640,350,16];Nj[16]=[640,350,16];Nj[0]=Nj[1];Nj[2]=Nj[3];Nj[5]=Nj[4];var Rj=Array(5);Rj[0]=[0,0,0,255];
|
||||
Rj[1]=[127,192,127,255];Rj[2]=[127,192,127,255];Rj[3]=[127,255,127,255];Rj[4]=[127,255,127,255];var Sj=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],U=Array(16);U[0]=[0,0,0,255];U[1]=[0,0,170,255];U[2]=[0,170,0,255];U[3]=[0,170,170,255];U[4]=[170,0,0,255];U[5]=[170,0,170,255];U[6]=[170,85,0,255];U[7]=[170,170,170,255];U[8]=[85,85,85,255];U[9]=[85,85,255,255];U[10]=[85,255,85,255];U[11]=[85,255,255,255];U[12]=[255,85,85,255];U[13]=[255,85,255,255];U[14]=[255,255,85,255];U[15]=[255,255,255,255];
|
||||
var Tj=[2,4,6],Uj=[3,5,7],Vj=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],Wj=[0,255,65280,65535,16711680,16711935,16776960,16777215,4278190080,4278190335,4278255360,4278255615,4294901760,4294902015,4294967040,4294967295],Xj=[0];Xj[128]=1;Xj[32768]=2;Xj[32896]=3;Xj[8388608]=4;Xj[8388736]=5;Xj[8421376]=6;Xj[8421504]=7;Xj[2147483648]=8;Xj[2147483776]=9;Xj[2147516416]=10;Xj[2147516544]=11;Xj[2155872256]=12;Xj[2155872384]=13;Xj[2155905024]=14;Xj[2155905152]=15;
|
||||
function Yj(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=Zj[b],f=a.oe||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(ak)];this.fa=a.fa;this.type=e[0];this.port=e[1];this.ke=b;this.Ua=e[2];this.Rb=e[3];this.Vc=d||e[4];65536<=this.Vc&&720896<=this.Ua&&(this.Rb=Math.min(this.Vc>>2,32768));this.Yc=c[0];this.Cc=c[1];this.hf=c[2];this.Ef=c[3];this.nc=c[4]&255;this.wh=c[4]>>8&255;this.dc=c[5];this.Ni=ak;this.Ug=bk;if(5==b){this.Ni=ck;this.Ug=dk;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5),
|
||||
0,0,0,Array(9),0,[this.Ua,this.Rb,this.Vc],Array(this.Vc>>2),771,0,4294967295,0,4294967295,0,4294967295,0,0,0]);this.ld=b[0];this.Ed=b[1];this.Td=b[2];this.fi=ek;this.Wh=b[3];this.ig=b[4];this.vh=b[5];this.Gd=b[6];this.Lf=b[7];this.hi=fk;this.Ii=b[8];this.Ji=b[9];this.Fd=b[10];this.ye=b[11];this.gi=gk;this.Db=b[12];d=b[13];"number"==typeof d&&(d=[this.Ua,this.Rb,d]);this.Ua=d[0];this.Rb=d[1];d=this.Vc>>2;if((this.fd=b[14])&&this.fd.length<d){for(var e=this.fd,g=0,h=Array(d),l=0;l<e.length-1;){for(var n=
|
||||
e[l++],q=e[l++];n--;)h[g]=q,g+=2;g==d&&(g=1)}this.fd=h}this.Th(b[15]);this.Hj=b[16];this.kb=b[17];this.od=b[18];this.rb=b[19];this.Ih=b[20];this.re=b[21];this.Re=b[22];this.Pi=b[23];this.Qi=b[24]}f=Pj[f]||Pj[3];this.Ri=a.T.ca.Kd/f.Xi|0;this.Wn=this.Ri*f.Lj/100|0;this.Sk=this.Ri*f.Wi;this.Zn=this.Sk*f.Mj/100|0;this.Yi=null==c[7]?0:c[7]}}
|
||||
var ak=18,ck=25,bk="HORZ_TOTAL HORZ_DISP HORZ_SYNC_POS HORZ_SYNC_WIDTH VERT_TOTAL VERT_TOTAL_ADJ VERT_DISP VERT_SYNC_POS INTERLACE_POS MAX_SCAN_LINE CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO".split(" "),dk="HORZ_TOTAL HORZ_DISP_END HORZ_BLANK_START HORZ_BLANK_END HORZ_RETRACE_START HORZ_RETRACE_END VERT_TOTAL CRTC_OVERFLOW PRESET_ROW_SCAN MAX_SCAN_LINE CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO VERT_DISP_END OFFSET UNDERLINE VERT_BLANK_START VERT_BLANK_END MODE_CTRL LONE_COMPARE".split(" "),
|
||||
ek="PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVRSCAN PLANES HORZPAN".split(" "),fk=["RESET","CLK","MAPMASK","CHARMAP","MODE"],gk="SRESET ESRESET COLRCMP DATAROT READMAP MODE MISC COLRDC BITMASK".split(" ");function hk(a){return this.rc(a)|this.rc(a+1)<<8}function ik(a,b){this.Ec(a,b&255);this.Ec(a+1,b>>8&255)}
|
||||
var pk=[,,function(a){a+=this.offset;return(this.ia.Db=this.wa[a])>>this.ia.Hj&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.wa[b]>>8:this.wa[b])&255}];pk[16]=function(a){a+=this.offset;a=this.wa[a];for(var b=this.ia.Pi&this.ia.Qi,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};pk[512]=function(a,b){var c=a+this.offset,d;d=this.wa[c]&~this.ia.kb|(b|b<<8|b<<16|b<<24)&this.ia.kb;d=d&this.ia.rb|this.ia.Db&~this.ia.rb;this.wa[c]!=d&&(this.wa[c]=d,this.ob=!0)};
|
||||
pk[1024]=function(a,b){var c=a+this.offset;b=b>>this.ia.od|b<<8-this.ia.od&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.re|this.ia.Re;d=d&this.ia.kb|this.wa[c]&~this.ia.kb;d=d&this.ia.rb|this.ia.Db&~this.ia.rb;this.wa[c]!=d&&(this.wa[c]=d,this.ob=!0)};
|
||||
pk[1536]=function(a,b){var c=a+this.offset;b=b>>this.ia.od|b<<8-this.ia.od&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.re|this.ia.Re;d&=this.ia.Db;d=d&this.ia.kb|this.wa[c]&~this.ia.kb;d=d&this.ia.rb|this.ia.Db&~this.ia.rb;this.wa[c]!=d&&(this.wa[c]=d,this.ob=!0)};
|
||||
pk[2560]=function(a,b){var c=a+this.offset;b=b>>this.ia.od|b<<8-this.ia.od&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.re|this.ia.Re;d|=this.ia.Db;d=d&this.ia.kb|this.wa[c]&~this.ia.kb;d=d&this.ia.rb|this.ia.Db&~this.ia.rb;this.wa[c]!=d&&(this.wa[c]=d,this.ob=!0)};
|
||||
pk[3584]=function(a,b){var c=a+this.offset;b=b>>this.ia.od|b<<8-this.ia.od&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.re|this.ia.Re;d^=this.ia.Db;d=d&this.ia.kb|this.wa[c]&~this.ia.kb;d=d&this.ia.rb|this.ia.Db&~this.ia.rb;this.wa[c]!=d&&(this.wa[c]=d,this.ob=!0)};pk[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ia.kb&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.wa[d]&~c;c=c&this.ia.rb|this.ia.Db&~this.ia.rb;this.wa[d]!=c&&(this.wa[d]=c,this.ob=!0)};
|
||||
pk[4096]=function(a){a+=this.offset;var b=this.wa[a]&~this.ia.kb|this.ia.Db&this.ia.kb;this.wa[a]!=b&&(this.wa[a]=b,this.ob=!0)};pk[8192]=function(a,b){var c=a+this.offset,d=Wj[b&15],d=d&this.ia.kb|this.wa[c]&~this.ia.kb,d=d&this.ia.rb|this.ia.Db&~this.ia.rb;this.wa[c]!=d&&(this.wa[c]=d,this.ob=!0)};pk[24576]=function(a,b){var c=a+this.offset,d=Wj[b&15],d=d&this.ia.Db,d=d&this.ia.kb|this.wa[c]&~this.ia.kb,d=d&this.ia.rb|this.ia.Db&~this.ia.rb;this.wa[c]!=d&&(this.wa[c]=d,this.ob=!0)};
|
||||
pk[40960]=function(a,b){var c=a+this.offset,d=Wj[b&15],d=d|this.ia.Db,d=d&this.ia.kb|this.wa[c]&~this.ia.kb,d=d&this.ia.rb|this.ia.Db&~this.ia.rb;this.wa[c]!=d&&(this.wa[c]=d,this.ob=!0)};pk[57344]=function(a,b){var c=a+this.offset,d=Wj[b&15],d=d^this.ia.Db,d=d&this.ia.kb|this.wa[c]&~this.ia.kb,d=d&this.ia.rb|this.ia.Db&~this.ia.rb;this.wa[c]!=d&&(this.wa[c]=d,this.ob=!0)};
|
||||
function qk(a){var b=[];if(void 0!==a.ke){b[0]=a.Yc;b[1]=a.Cc;b[2]=a.hf;b[3]=a.Ef;b[4]=a.nc|a.wh<<8;b[5]=a.dc;if(5==a.ke){var c=[];c[0]=a.ld;c[1]=a.Ed;c[2]=a.Td;c[3]=a.Wh;c[4]=a.ig;c[5]=a.vh;c[6]=a.Gd;c[7]=a.Lf;c[8]=a.Ii;c[9]=a.Ji;c[10]=a.Fd;c[11]=a.ye;c[12]=a.Db;c[13]=[a.Ua,a.Rb,a.Vc];var d;a:if(d=a.fd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h<d.length;){for(var l=d[h],n=h+2;n<d.length&&d[n]===l;)n+=2;f[e++]=n-h>>1;f[e++]=l;h=n}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
|
||||
a.Ch;c[16]=a.Hj;c[17]=a.kb;c[18]=a.od;c[19]=a.rb;c[20]=a.Ih;c[21]=a.re;c[22]=a.Re;c[23]=a.Pi;c[24]=a.Qi;b[6]=c}b[7]=a.Yi}return b}function rk(a,b,c,d,e){if(d){var f="",g,h=0;for(g=0;g<e.length;g++)h<e[g].length&&(h=e[g].length);h++;for(g=0;g<e.length;g++){f&&(f+="\n");var l=e[g],f=f+(b+"["+t(g)+"]: "+(l+" ".substr(0,h-l.length))+t(d[g])+(g===c?"*":""))}a.fa.message(f)}else a.fa.message(b+": "+t(c))}
|
||||
Yj.prototype.Th=function(a){if(null!=a&&a!=this.Ch){var b=a&255,c=pk[b];c||b&1&&(c=pk[1]);var b=a&65280,d=pk[b];d||b&256&&(d=pk[256]);this.Qf||(this.Qf=[null,hk,null,ik]);this.Qf[0]=c;this.Qf[2]=d;this.Ch=a}};var Zj=[,["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.ra=b;this.T=c;this.fa=d;tb(b,this,sk);zb(b,this,tk);"ega"==this.Ia&&(tb(b,this,uk),zb(b,this,vk));if(d){var e=this;oi(d,wk,function(a){if(e.Ha)if(a){var b=e.Ha;if(b.fd){a=da(a);a=void 0!==a?a-b.Ua:b.bp||0;0>a&&(a=0);for(var c="",d=0;8>d;d++){for(var n=p(b.Ua+a)+":",q=0;8>q&&a<b.fd.length;q++)var r=b.fd[a++],n=n+(" "+p(r));c&&(c+="\n");c+=n}c&&b.fa.message(c);b.bp=a}else b.fa.message("no buffer")}else{e.fa.message("BIOSMODE: "+t(e.Md));b=e.Ha;rk(b,"CRTC",b.nc,b.dc,b.Ug);
|
||||
if(1==b.ke||3==b.ke)rk(b," MODEREG",b.Cc),rk(b," STATUS1",b.Ef);3==b.ke&&rk(b," COLOR",b.hf);5==b.ke&&(b.fa.message(" ATCDATA: "+b.ld),rk(b," ATC",b.Ed,b.Td,b.fi),rk(b," GRC",b.Fd,b.ye,b.gi),rk(b," SEQ",b.Gd,b.Lf,b.hi),rk(b," FEAT",b.vh),rk(b," MISC",b.ig),rk(b," STATUS0",b.Wh),rk(b," LATCHES",b.Db),b.fa.message(" ACCESS: "+v(b.Ch)),b.fa.message("Use 'dump video buffer' to dump video memory"))}else e.fa.message("no active video card")})}(this.Va=eb(a,"Keyboard"))&&this.bb&&this.Va.Fb("input",
|
||||
this.jm?"textarea":"canvas","kbd",this.jm||this.bb);this.Wg=9;(this.oa=eb(a,"ChipSet"))&&this.em&&(this.Wg=bi(this.em,this.Wg));this.Va&&this.Hm&&xk(this)};k.Fb=function(a,b,c,d){var e=this;switch(c){case "lockPointer":return this.ya[c]=d,this.bb&&this.bb.uf?d.onclick=function(){e.uf(!0)}:d.parentNode.removeChild(d),!0;case "refresh":return this.ya[c]=d,d.onclick=function(){Mb(e,!0)},!0}return!1};k.Pd=function(){this.bb&&this.bb.focus()};
|
||||
k.uf=function(a){if(this.bb)if(a){if(this.bb.uf)return this.bb.uf(),this.me.Ag(!0),!0}else if(this.bb.km)return this.bb.km(),this.me.Ag(!1),!0;return!1};k.Ag=function(a){this.me&&(this.me.Ag(a),this.Va&&(this.Va.Ak=a))};function xk(a){var b=a.bb;b&&!a.zi&&(b.addEventListener("touchstart",function(b){yk(a,b)},!1),b.addEventListener("touchmove",function(b){yk(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.zi=!0)}
|
||||
function yk(a,b){a.Bi&&b.preventDefault();var c=0,d=0,e=a.bb;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.Ad/a.bb.offsetWidth*(b.targetTouches[0].pageX-c)/(a.Ad/3)|0;d=a.ie/a.bb.offsetHeight*(b.targetTouches[0].pageY-d)/(a.ie/3)|0;1!=d?d?Hj(a.Va,40,!0):Hj(a.Va,38,!0):1!=c&&(c?Hj(a.Va,39,!0):Hj(a.Va,37,!0))}k.Zb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};
|
||||
k.reset=function(){var a=!0,b=0;this.oa&&(b=zi(this.oa));var c=!1;if(this.Ia)switch(this.Ia){case "ega":var c=!0,d=Qj[this.Wg];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.oe!==b&&(this.oe=b,a=!0);this.Ha=null;this.Uc=this.ni=new Yj(this,1);this.Hb=this.gh=new Yj(this,3);c?(this.na=new Yj(this,5,null,this.Vc),zk(this)):this.na=new Yj;Ak(this);this.Md=null;this.pd=3==b?Oj:3;this.He=this.Mc=-1;this.Ge=0;Bk(this,this.pd);if(this.Ha.Ua&&a){a=this.Ha.Ua+this.oi;for(b=this.Ha.Ua;b<a;b+=
|
||||
2)d=Math.floor(65536*Math.random()),4==this.oe?(c=b>>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),qb(this.ra,b,c|d<<8);Mb(this,!0)}};function zk(a){a.na.ig&1?(a.Uc=a.ni,a.Hb=a.na):(a.Uc=a.na,a.Hb=a.gh)}k.save=function(){var a=new gd(this);a.set(0,qk(this.ni));a.set(1,qk(this.gh));a.set(2,[this.oe,this.pd,this.Md]);a.set(3,qk(this.na));return a.data()};
|
||||
k.restore=function(a){var b=a[2];this.oe=b[0];this.pd=b[1];this.Md=b[2];this.Ha=null;this.Uc=this.ni=new Yj(this,1,a[0]);this.Hb=this.gh=new Yj(this,3,a[1]);this.na=new Yj(this,5,a[3],this.Vc);this.na.Yc&&zk(this);Ak(this);if(!Ck(this))return!1;Dk(this);return!0};
|
||||
k.bo=function(a,b,c){if(c)this.Ja("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){x("Empty font ROM image: "+a);return}if(1==d.length){x(d[0]);return}if(8192==d.length)Aj(this,d,[0,6144]);else{this.Ja("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Ja("Font ROM data error: "+e.message);return}this.Ta()}};
|
||||
function Ek(a,b){if(1==b)return a.wd[0]=U[0],a.wd[1]=U[7],a.wd;if(2==b){var c=a.Ha.hf;if(a.Ha===a.na){var d=a.na.Td[0],c=d&7;d&16&&(c|=8);18!=a.na.Td[1]&&(c|=32)}a.wd[0]=U[c&15];c=c&32?Uj:Tj;for(d=0;d<c.length;d++)a.wd[d+1]=U[c[d]];return a.wd}if(a.Hb===a.gh)return U;c=null!=a.na.Td[15]?a.na.Td:Vj;for(d=0;d<a.wd.length;d++){var e=c[d]||0;a.wd[d]=[(e&4?170:0)|(e&32?85:0),(e&2?170:0)|(e&16?85:0),(e&1?170:0)|(e&8?85:0),255]}return a.wd}function Aj(a,b,c,d){a.Sg=b;a.bi=c;a.Ke=d}
|
||||
function Ak(a){var b=!1;if(window&&a.Sg){var c=a.Ke?0:2048,d=a.Ke?a.Ke:9;Fk(a,1,a.bi[0],c,d,14,a.Sg,Rj,Sj)&&(b=!0);c=Ek(a);d=a.Ke?a.Ke:8;Fk(a,3,a.bi[1],0,d,8,a.Sg,c)&&(b=!0);a.Ke&&Fk(a,5,a.bi[0],0,a.Ke,14,a.Sg,c)&&(b=!0)}return b}function Fk(a,b,c,d,e,f,g,h,l){var n=!1;Gk(a,b,c,d,e,f,g,h,l)&&(n=!0);a.Dm&&Gk(a,b<<1,c,d,e,f,g,h,l)&&(n=!0);return n}
|
||||
function Gk(a,b,c,d,e,f,g,h,l){var n=!1,q=b&1?0:1,r=a.Wd[b];r||(r={kc:e<<q,lc:f<<q,df:Array(h.length),ek:h.slice(),Kf:l,$h:Array(h.length)});for(l=0;l<h.length;l++){var s=h[l],u=r.df[l]?r.ek[l]:[];if(s[0]!==u[0]||s[1]!==u[1]||s[2]!==u[2]){var n=r,u=l,y=q,B=c,M=d,V=e,va=f,wa=g,xb=[0,0,0,0],Qb=window.document.createElement("canvas");Qb.width=n.kc<<4;Qb.height=n.lc<<4;for(var W=Qb.getContext("2d"),K=void 0,w=void 0,R=void 0,I=8>va||!M?va:8,yb=W.createImageData(n.kc,n.lc),K=0;256>K;K++){for(R=0;R<va;R++)for(var La=
|
||||
n.Kf&&u&1&&R>=va-2,ga=wa[R<I?B+K*I+R:M+K*I+R-I],X=0;X<=y;X++)for(w=0;w<V;w++){var Xa=w<<y,Hc=(R<<y)+X,jc=La||ga&128>>(8<=w&&176<=K&&223>=K?7:w)?s:xb;Hk(yb,Xa,Hc,jc);y&&Hk(yb,Xa+1,Hc,jc)}W.putImageData(yb,(K&15)*n.kc,(K>>4)*n.lc)}n.df[u]="#"+t(s[0])+t(s[1])+t(s[2]);n.ek[u]=s;n.$h[u]=Qb;n=!0}}a.Wd[b]=r;return n}function Ik(a){0<a.Ge||0<=a.Mc?0>a.He&&(a.He=0):a.He=-1}
|
||||
function Dk(a){if(a.Ub){for(var b=10;15>=b;b++)if(null==a.Ha.dc[b])return;var c=a.Ha.dc[10],b=c&31,d=a.Ha.dc[11]&31,e=a.Ha.dc[9]&31,f=!1;a.Ha===a.na&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Jk(a);else{c=a.Ha.dc[15]+((a.Ha.dc[14]&63)<<8);a.Mc!=c&&(Jk(a),a.Mc=c);d=d-b+1;if(a.nm!=b||a.tk!=d)a.nm=b,a.tk=d;a.he=e+1;Ik(a)}}}
|
||||
function Jk(a){if(0<=a.Mc){if(void 0!==a.ec){var b=a.ec[a.Mc];if(b&131072){var b=b&-131073,c=a.Mc%a.Ib,d=Math.floor(a.Mc/a.Ib);a.Ub&&a.Wd[a.Ub]&&(a.jf&&Kk(a,c,d,b,a.jf),Kk(a,c,d,b));a.ec[a.Mc]=b}}a.Mc=-1}}
|
||||
function Lk(a){var b;a=a.Ha;var c=a.ye[5];if(null!=c){b=2;var d=512,e=a.ye[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.od=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}k.Ye=function(a){var b=this.Ha;null!=a&&b&&a!=b.Ch&&(b.Th(a),this.ra.Th(b.Ua,b.Rb,b.Qf))};
|
||||
function Ck(a,b){var c,d=a.Md,e=a.Ha;if(e)if(1==e.ke)d=Oj;else if(5==e.ke){var d=null,f=e.Vc>>2,g=32768<f?32768:f,h=e.ye[6];if(null!=h){switch(h&12){case 0:e.Ua=655360;e.Rb=f;d=255;break;case 4:e.Ua=655360;e.Rb=f;d=3==a.oe?15:16;break;case 8:e.Ua=720896;e.Rb=g;d=Oj;break;case 12:e.Ua=753664,e.Rb=g,d=3==a.oe?2:3}c=e.Lf[1]&8;f=e.dc[6]|(e.dc[7]&1)<<8;255!=d&&(h&1?753664==e.Ua?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=Lk(a)}}else e.Cc&8&&(e.Cc&2?(d=e.Cc&16?6:5,e.Cc&4||(d-=1)):(d=e.Cc&1?3:1,e.Cc&4&&(d-=
|
||||
1)));else a.Md=null,null==d&&(d=a.pd);if(!Bk(a,d,b))return!1;a.Ye(c);return!0}
|
||||
function Bk(a,b,c){if(null!=b&&(b!=a.Md||c)){a.tm=0;a.Md=b;b=a.Ha||(b==Oj?a.Uc:a.Hb);if(b!=a.Ha||b.Ua!=a.Ua||b.Rb!=a.Rb){Jk(a);if(a.Ua){if(!mb(a.ra,a.Ua,a.Rb))return!1;a.Ha&&(a.Ha.Yc=!1)}a.Ha=b;b.Yc=!0;a.Ua=b.Ua;a.Rb=b.Rb;if(!kb(a.ra,b.Ua,b.Rb,!1,b===a.na?b:null))return!1}a.Ub=0;a.Ib=a.Fh;a.qc=a.Ui;a.Oi=Nj[Oj][2];b=0;var d=Nj[a.Md];d&&(a.Ib=d[0],a.qc=d[1],a.Oi=d[2],b=d[3]||0,a.Ub=d[4],4==a.oe&&a.Ha===a.na&&3==a.Ub&&(7==a.na.dc[9]?a.qc=43:a.Ub=5));a.Pk=a.Ib*a.qc;a.Eh=a.Pk/a.Oi;a.oi=(a.Eh<<1)+b;a.qk=
|
||||
b?a.oi+b>>1:0;13<=a.Md&&(a.Eh<<=1);a.Wd.length&&(a.Bd=Math.floor(a.Ad/a.Ib),a.Cd=Math.floor(a.ie/a.qc),a.Ub?(b=a.Wd[a.Ub],d=a.Wd[a.Ub<<1],a.Fm&&80==a.Ib?d&&a.Bd>=3*d.kc>>2&&(a.Ub<<=1,b=d):(d&&a.Bd>=d.kc&&(a.Ub<<=1,b=d),b&&(a.Bd=b.kc,a.Cd=b.lc)),a.cg=a.dg=0,b&&(a.cg=a.Ib*b.kc,a.dg=a.qc*b.lc)):(a.Bd=a.Cd=1,a.cg=a.Ib,a.dg=a.qc),a.yh=a.Wc.createImageData(a.cg,a.dg),a.gf=window.document.createElement("canvas"),a.gf.width=a.cg,a.gf.height=a.dg,a.jf=a.gf.getContext("2d"),a.Yj=a.Zj=0,a.qi=a.Ad,a.ri=a.ie,
|
||||
b=a.Ad-a.Ib*a.Bd,d=a.ie-a.qc*a.Cd,0<b&&(a.Yj=b>>1,a.qi-=b),0<d&&(a.Zj=d>>1,a.ri-=d),b||d)&&(a.Wc.fillStyle=a.bb.style.backgroundColor,a.Wc.fillRect(0,0,a.Ad,a.ie));!1!==c?Mb(a,!0):Mk(a,!0)}return!0}function Hk(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Mk(a,b){var c;if(b){if(c=a.Eh,void 0===a.ec||a.ec.length!=c)a.ec=Array(c)}else{if(void 0===a.ec)return;c=a.ec.length}for(var d=0;d<c;d++)a.ec[d]=-1;a.Ge=-1}
|
||||
function Kk(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Wd[a.Ub];h.Kf&&(d=h.Kf[d]);var l=g>>4&15;h.Kf&&(l=h.Kf[l]);e?(b*=h.kc,c*=h.lc,e.fillStyle=h.df[l],e.fillRect(b,c,h.kc,h.lc)):(b=b*a.Bd+a.Yj,c=c*a.Cd+a.Zj,a.Wc.fillStyle=h.df[l],a.Wc.fillRect(b,c,a.Bd,a.Cd));g&256&&(l=(f&15)*h.kc,f=(f>>4)*h.lc,e?e.drawImage(h.$h[d],l,f,h.kc,h.lc,b,c,h.kc,h.lc):a.Wc.drawImage(h.$h[d],l,f,h.kc,h.lc,b,c,a.Bd,a.Cd));g&512&&(f=a.nm,g=a.tk,e?(a.he&&a.he!==h.lc&&(f=Math.floor(f*h.lc/a.he),g=Math.floor(g*h.lc/a.he)),
|
||||
e.fillStyle=h.df[d],e.fillRect(b,c+f,h.kc,g)):(a.he&&a.he!==a.Cd&&(f=Math.floor(f*a.Cd/a.he),g=Math.floor(g*a.Cd/a.he)),a.Wc.fillStyle=h.df[d],a.Wc.fillRect(b,c+f,a.Bd,g)))}
|
||||
function Mb(a,b){if(a.qa.Ob){var c=!1;a.Ha&&(a.Ha===a.na?a.na.Ed&32&&(c=!0):a.Ha.Cc&8&&(c=!0));if(c||b){if(b)Mk(a,!0);else if(void 0===a.ec)return;var d=!1;!(b||++a.tm&15)&&0<=a.He&&(a.He++,d=!0);var e=0,f=a.Pk,c=a.Ha.Ua,g=c+a.Ha.Rb,h=(a.Ha.dc[12]<<8)+a.Ha.dc[13];a.Ub&&(h<<=1);var c=c+h,l=a.oi;c+l>g&&(l=g-c,0>l&&(l=0));g=c+l;if(h=!b){for(var h=a.ra,n=!0,q=c>>h.wb;0<l&&q<h.Fa.length;)h.Fa[q].ob&&(h.Fa[q].ob=n=!1,h.Fa[q].zk=!0),l-=h.fc,q++;h=n}if(h){if(!d)return;if(!a.Ge){if(0>a.Mc)return;e=a.Mc;f=
|
||||
e+1}}if(a.Ub){if(a.Wd[a.Ub]){d=0;h=a.Ge=0;l=1048575;a.Ha.Cc&32&&(h=32768,l&=~h,a.He&2||(l&=-65537));for(c+=e<<1;c<g&&e<f;)n=ob(a.ra,c),n|=65536,n&h&&(a.Ge++,n&=l),e==a.Mc&&(n|=a.He&1?131072:0),q=a.ec[e],q!=n&&(Kk(a,e%a.Ib,Math.floor(e/a.Ib),n,a.jf),a.ec[e]=n,d++),c+=2,e++;d&&a.jf&&a.Wc.drawImage(a.gf,0,0,a.cg,a.dg,a.Yj,a.Zj,a.qi,a.ri);Ik(a)}}else if(a.qk){for(var f=g,r,s,e=c,g=a.Ge=0,d=a.Oi,h=16==d?65536:196608,l=16==d?1:2,n=Ek(a,l),u=q=0,y=a.Ib,B=0,M=a.qc,V=0;e<f;){r=ob(a.ra,e);s=a.ec[g];if(s===
|
||||
r)q+=d;else{a.ec[g]=r;r=r>>8|(r&255)<<8;s=h;var va=16;q<y&&(y=q);for(var wa=0;wa<d;wa++){var xb=(r&(s>>=l))>>(va-=l);Hk(a.yh,q++,u,n[xb])}q>B&&(B=q);u<M&&(M=u);u>=V&&(V=u+1)}e+=2;g++;if(q>=a.Ib){q=0;u+=2;if(u>a.qc)break;u==a.qc&&(u=1,e=c+a.qk)}}y<a.Ib&&(a.jf.putImageData(a.yh,0,0,y,M,B-y,V-M),a.Wc.drawImage(a.gf,0,0,a.Ib,a.qc,0,0,a.Ad,a.ie))}else{f=g;e=a.Ge=0;g=Ek(a);d=a.Ha.fd;l=h=0;n=a.Ib;q=0;u=a.qc;for(y=0;c<f;){B=c++-a.Ua;B=d[B];M=a.ec[e];if(M===B)h+=8;else{a.ec[e]=B;h<n&&(n=h);for(M=0;8>M;M++)V=
|
||||
B&2155905152,0>V&&(V+=4294967296),V=Xj[V]||0,Hk(a.yh,h++,l,g[V]),B<<=1;h>q&&(q=h);l<u&&(u=l);l>=y&&(y=l+1)}e++;if(h>=a.Ib&&(h=0,++l>a.qc))break}n<a.Ib&&(a.jf.putImageData(a.yh,0,0,n,u,q-n,y-u),a.Wc.drawImage(a.gf,0,0,a.Ib,a.qc,0,0,a.Ad,a.ie))}}}}k.un=function(a,b){return Nk(this,this.Uc,b)};k.Ko=function(a,b,c){a=this.Uc;a.wh=a.nc;a.nc=b&31;this.ea(a.port,b,c,"CRTC.INDX")};k.tn=function(a,b){return Ok(this,this.Uc,b)};k.Jo=function(a,b,c){Pk(this,this.Uc,b,c)};
|
||||
k.vn=function(a,b){return Qk(this,this.Uc,b)};k.Lo=function(a,b,c){a=this.Uc;this.ea(a.port+4,b,c,"MODE");a.Cc=b;Ck(this,!1)};k.wn=function(a,b){return Rk(this,this.Uc,b)};k.Wl=function(a,b,c){this.na.vh=this.na.vh&-4|b&3;this.ea(a,b,c,"FEAT")};k.Mk=function(a,b){var c=this.na.ld?this.na.Td[this.na.Ed&31]:this.na.Ed;this.ea(960,null,b,"ATC."+(this.na.ld?this.na.fi[this.na.Ed&31]:"INDX"),c);this.na.ld=!this.na.ld;return c};
|
||||
k.Vl=function(a,b,c){var d=this.na.Ed&32;if(this.na.ld){var e=this.na.Ed&31;if(16<=e||!d)this.ea(a,b,c,"ATC."+this.na.fi[e]),this.na.Td[e]=b;this.na.ld=!1}else this.na.Ed=b,this.ea(a,b,c,"ATC.INDX"),this.na.ld=!0,b&32&&!d&&Ak(this)&&Mb(this,!0)};k.Gn=function(a,b){var c=3-((this.na.ig&12)>>2),c=this.na.Wh&-17|(this.Wg&1<<c)<<4-c;this.na.Wh=c;this.ea(962,null,b,"STATUS0",c);return c};k.No=function(a,b,c){this.na.ig=b;zk(this);this.ea(962,b,c,"MISC")};
|
||||
k.Fn=function(a,b){var c=this.na.Gd;this.ea(964,null,b,"SEQ.INDX",c);return c};k.Uo=function(a,b,c){this.na.Gd=b;this.ea(964,b,c,"SEQ.INDX")};k.En=function(a,b){var c=this.na.Lf[this.na.Gd];this.ea(965,null,b,"SEQ"+this.na.hi[this.na.Gd],c);return c};k.To=function(a,b,c){this.ea(965,b,c,"SEQ."+this.na.hi[this.na.Gd]);this.na.Lf[this.na.Gd]=b;2==this.na.Gd&&(this.na.kb=Wj[b&15])};k.mn=function(a,b){var c=this.na.Ii;this.ea(972,null,b,"GRC1",c);return c};
|
||||
k.Eo=function(a,b,c){this.na.Ii=b;this.ea(972,b,c,"GRC1")};k.nn=function(a,b){var c=this.na.Ji;this.ea(970,null,b,"GRC2",c);return c};k.Fo=function(a,b,c){this.na.Ji=b;this.ea(970,b,c,"GRC2")};k.ln=function(a,b){var c=this.na.Fd;this.ea(974,null,b,"GRC.INDX",c);return c};k.Do=function(a,b,c){this.na.Fd=b;this.ea(974,b,c,"GRC.INDX")};k.kn=function(a,b){var c=this.na.ye[this.na.Fd];this.ea(975,null,b,"GRC."+this.na.gi[this.na.Fd],c);return c};
|
||||
k.Co=function(a,b,c){this.ea(975,b,c,"GRC."+this.na.gi[this.na.Fd]);this.na.ye[this.na.Fd]=b;switch(this.na.Fd){case 0:this.na.Ih=Wj[b&15];this.na.Re=this.na.Ih&~this.na.re;break;case 1:this.na.re=~Wj[b&15];this.na.Re=this.na.Ih&~this.na.re;break;case 2:this.na.Pi=Wj[b&15]&2155905152;break;case 3:case 5:this.Ye(Lk(this));break;case 4:this.na.Hj=(b&3)<<3;break;case 6:Ck(this,!1);break;case 7:this.na.Qi=Wj[b&15^15]&2155905152;break;case 8:this.na.rb=b|b<<8|b<<16|b<<24}};
|
||||
k.bn=function(a,b){return Nk(this,this.Hb,b)};k.vo=function(a,b,c){a=this.Hb;a.wh=a.nc;a.nc=b&31;this.ea(a.port,b,c,"CRTC.INDX")};k.an=function(a,b){return Ok(this,this.Hb,b)};k.uo=function(a,b,c){Pk(this,this.Hb,b,c)};k.cn=function(a,b){return Qk(this,this.Hb,b)};k.wo=function(a,b,c){a=this.Hb;this.ea(a.port+4,b,c,"MODE");a.Cc=b;Ck(this,!1)};k.$m=function(a,b){var c=this.Hb.hf;this.ea(this.Hb.port+5,null,b,this.Hb.type+".COLOR",c);return c};
|
||||
k.to=function(a,b,c){this.ea(this.Hb.port+5,b,c,this.Hb.type+".COLOR");this.Hb.hf!==b&&(this.Hb.hf=b,Mk(this,!1))};k.dn=function(a,b){return Rk(this,this.Hb,b)};function Nk(a,b,c){var d=b.nc;a.ea(b.port,null,c,"CRTC.INDX",d);return d}function Ok(a,b,c){var d;b.nc<b.Ni&&(d=b.dc[b.nc]);a.ea(b.port+1,null,c,"CRTC."+b.Ug[b.nc],d);return d}function Pk(a,b,c,d){b.nc<b.Ni&&(a.ea(b.port+1,c,d,"CRTC."+b.Ug[b.nc]),b.dc[b.nc]=c,9==b.nc&&8!=b.wh&&Ck(a,!0),Dk(a))}
|
||||
function Qk(a,b,c){var d=b.Cc;a.ea(b.port+4,null,c,"MODE",d);return d}function Rk(a,b,c){var d=0,e=Ub(a.T),f=e-b.Yi;0>f&&(f=0);f%b.Ri>b.Wn&&(d|=1);f%=b.Sk;f>b.Zn&&(d|=8);b.Yi=e-f;b===a.na?(d|=b.Ef&48^48,b.ld=!1):d=(b.Ef^=9)|240;b.Ef=d;a.ea(b.port+6,null,c,b===a.na?"STATUS1":"STATUS",d);return d}k.Ra=function(a,b){this.fa&&(b||E(this.fa,wk))&&this.fa.message(a)};k.ea=function(a,b,c,d,e){this.fa&&this.fa.ea(this,a,b,c,d,wk,e)};
|
||||
var sk={948:T.prototype.un,949:T.prototype.tn,952:T.prototype.vn,954:T.prototype.wn,980:T.prototype.bn,981:T.prototype.an,984:T.prototype.cn,985:T.prototype.$m,986:T.prototype.dn},tk={948:T.prototype.Ko,949:T.prototype.Jo,952:T.prototype.Lo,980:T.prototype.vo,981:T.prototype.uo,984:T.prototype.wo,985:T.prototype.to},uk={960:T.prototype.Mk,961:T.prototype.Mk,962:T.prototype.Gn,964:T.prototype.Fn,965:T.prototype.En,970:T.prototype.nn,972:T.prototype.mn,974:T.prototype.ln,975:T.prototype.kn},vk={954:T.prototype.Wl,
|
||||
960:T.prototype.Vl,961:T.prototype.Vl,962:T.prototype.No,964:T.prototype.Uo,965:T.prototype.To,970:T.prototype.Fo,972:T.prototype.Eo,974:T.prototype.Do,975:T.prototype.Co,986:T.prototype.Wl};
|
||||
function Zb(a,b){if(a.qi){void 0!==b?a.Fk=b:b=a.Fk&&a.T&&a.T.qa.Rb;var c=Math.round(1193181/jj(a,2));if(20>c||2E4<c)b=!1;b?a.td?(a.td.frequency.value=c,a.Sa("speaker set to "+c+"hz",xj)):(a.td=a.qi.createOscillator(),a.td.type=1,a.td.connect(a.qi.destination),a.td.frequency.value=c,a.Sa("speaker on at "+c+"hz",xj),a.td.noteOn(0)):a.td&&(a.td.noteOff(0),a.td.disconnect(),delete a.td,a.Sa("speaker off at "+c+"hz",xj))}else b&&a.Sa("BEEP",xj)}
|
||||
k.Sa=function(a,b,c){this.fa&&(null==b&&(b=lj),void 0!==c&&(b|=0==c?pi:1==c?yj:6==c?zj:Fd),E(this.fa,b)&&this.fa.message(a))};k.ea=function(a,b,c,d,e,f){this.fa&&(null==e&&(e=lj),this.fa.ea(this,a,b,c,d,e,f))};
|
||||
var ii={0:function(a,b){return Li(this,0,0,a,b)},1:function(a,b){return Ni(this,0,0,a,b)},2:function(a,b){return Li(this,0,1,a,b)},3:function(a,b){return Ni(this,0,1,a,b)},4:function(a,b){return Li(this,0,2,a,b)},5:function(a,b){return Ni(this,0,2,a,b)},6:function(a,b){return Li(this,0,3,a,b)},7:function(a,b){return Ni(this,0,3,a,b)},8:function(a,b){return Pi(this,0,a,b)},32:function(a,b){return $i(this,0,b)},33:function(a,b){return cj(this,0,b)},64:function(a,b){return gj(this,0,b)},65:function(a,
|
||||
b){return gj(this,1,b)},66:function(a,b){return gj(this,2,b)},67:O.prototype.In,129:function(a,b){return Ui(this,0,2,a,b)},130:function(a,b){return Ui(this,0,3,a,b)},131:function(a,b){return Ui(this,0,1,a,b)},135:function(a,b){return Ui(this,0,0,a,b)}},ki={96:O.prototype.An,97:O.prototype.Bn,98:O.prototype.Cn,99:O.prototype.Dn},mi={96:O.prototype.Qm,97:O.prototype.Rm,100:O.prototype.Sm,112:O.prototype.fn,113:O.prototype.gn,128:O.prototype.yn,132:function(a,b){return Wi(this,0,a,b)},133:function(a,
|
||||
b){return Wi(this,1,a,b)},134:function(a,b){return Wi(this,2,a,b)},136:function(a,b){return Wi(this,3,a,b)},137:function(a,b){return Ui(this,1,2,a,b)},138:function(a,b){return Ui(this,1,3,a,b)},139:function(a,b){return Ui(this,1,1,a,b)},140:function(a,b){return Wi(this,4,a,b)},141:function(a,b){return Wi(this,5,a,b)},142:function(a,b){return Wi(this,6,a,b)},143:function(a,b){return Ui(this,1,0,a,b)},160:function(a,b){return $i(this,1,b)},161:function(a,b){return cj(this,1,b)},192:function(a,b){return Li(this,
|
||||
1,0,a,b)},194:function(a,b){return Ni(this,1,0,a,b)},196:function(a,b){return Li(this,1,1,a,b)},198:function(a,b){return Ni(this,1,1,a,b)},200:function(a,b){return Li(this,1,2,a,b)},202:function(a,b){return Ni(this,1,2,a,b)},204:function(a,b){return Li(this,1,3,a,b)},206:function(a,b){return Ni(this,1,3,a,b)},208:function(a,b){return Pi(this,1,a,b)}},ji={0:function(a,b,c){Mi(this,0,0,a,b,c)},1:function(a,b,c){Oi(this,0,0,a,b,c)},2:function(a,b,c){Mi(this,0,1,a,b,c)},3:function(a,b,c){Oi(this,0,1,
|
||||
a,b,c)},4:function(a,b,c){Mi(this,0,2,a,b,c)},5:function(a,b,c){Oi(this,0,2,a,b,c)},6:function(a,b,c){Mi(this,0,3,a,b,c)},7:function(a,b,c){Oi(this,0,3,a,b,c)},8:function(a,b,c){this.ea(a,b,c,"DMA0.CMD",P);this.jb[0].ki=b},9:function(a,b,c){Qi(this,0,a,b,c)},10:function(a,b,c){Ri(this,0,a,b,c)},11:function(a,b,c){this.ea(a,b,c,"DMA0.MODE",P);this.jb[0].Ib[b&3].mode=b},12:function(a,b,c){this.ea(a,b,c,"DMA0.RESET_FF",P);this.jb[0].lb=0},13:function(a,b,c){Ti(this,0,a,b,c)},32:function(a,b,c){aj(this,
|
||||
0,b,c)},33:function(a,b,c){dj(this,0,b,c)},64:function(a,b,c){ij(this,0,b,c)},65:function(a,b,c){ij(this,1,b,c)},66:function(a,b,c){ij(this,2,b,c)},67:O.prototype.Xo,129:function(a,b,c){Vi(this,0,2,a,b,c)},130:function(a,b,c){Vi(this,0,3,a,b,c)},131:function(a,b,c){Vi(this,0,1,a,b,c)},135:function(a,b,c){Vi(this,0,0,a,b,c)}},li={96:O.prototype.Qo,97:O.prototype.Ro,98:O.prototype.So,99:O.prototype.To,160:O.prototype.Po},ni={96:O.prototype.jo,97:O.prototype.ko,100:O.prototype.io,112:O.prototype.yo,
|
||||
113:O.prototype.zo,128:O.prototype.No,132:function(a,b,c){Xi(this,0,a,b,c)},133:function(a,b,c){Xi(this,1,a,b,c)},134:function(a,b,c){Xi(this,2,a,b,c)},136:function(a,b,c){Xi(this,3,a,b,c)},137:function(a,b,c){Vi(this,1,2,a,b,c)},138:function(a,b,c){Vi(this,1,3,a,b,c)},139:function(a,b,c){Vi(this,1,1,a,b,c)},140:function(a,b,c){Xi(this,4,a,b,c)},141:function(a,b,c){Xi(this,5,a,b,c)},142:function(a,b,c){Xi(this,6,a,b,c)},143:function(a,b,c){Vi(this,1,0,a,b,c)},160:function(a,b,c){aj(this,1,b,c)},161:function(a,
|
||||
b,c){dj(this,1,b,c)},192:function(a,b,c){Mi(this,1,0,a,b,c)},194:function(a,b,c){Oi(this,1,0,a,b,c)},196:function(a,b,c){Mi(this,1,1,a,b,c)},198:function(a,b,c){Oi(this,1,1,a,b,c)},200:function(a,b,c){Mi(this,1,2,a,b,c)},202:function(a,b,c){Oi(this,1,2,a,b,c)},204:function(a,b,c){Mi(this,1,3,a,b,c)},206:function(a,b,c){Oi(this,1,3,a,b,c)},208:function(a,b,c){this.ea(a,b,c,"DMA1.CMD",P);this.jb[1].ki=b},210:function(a,b,c){Qi(this,1,a,b,c)},212:function(a,b,c){Ri(this,1,a,b,c)},214:function(a,b,c){this.ea(a,
|
||||
b,c,"DMA1.MODE",P);this.jb[1].Ib[b&3].mode=b},216:function(a,b,c){this.ea(a,b,c,"DMA1.RESET_FF",P);this.jb[1].lb=0},218:function(a,b,c){Ti(this,1,a,b,c)}};Ha(function(){for(var a=D(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new O(d);Za(d,c);ui(d)}});
|
||||
function Aj(a){z.call(this,"ROM",a,Aj);this.Jb=null;this.gk=a.addr;this.Vh=a.size;this.tm=a.alias;this.Eg=a.file;this.Mk=a.notify;if(this.Eg){a=this.Eg;var b=ha(this.Eg);"json"!=b&&"hex"!=b&&(a=ta()+"/api/v1/dump?file="+this.Eg+"&format=bytes&decimal=true");sa(a,!0,null,this,Aj.prototype.bo)}}A(z,Aj);Aj.prototype.pc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;Bj(this)};Aj.prototype.$b=function(){this.ei&&(this.fa&&Cj(this.fa,this.gk,this.Vh,this.ei),delete this.ei);return!0};Aj.prototype.Zb=function(){return!0};
|
||||
Aj.prototype.bo=function(a,b,c){if(c)this.Ja("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.Jb=e;else if(f)for(this.Jb=Array(4*f.length),c=b=0;b<f.length;b++)this.Jb[c++]=f[b]&255,this.Jb[c++]=f[b]>>8&255,this.Jb[c++]=f[b]>>16&255,this.Jb[c++]=f[b]>>24&255;else this.Jb=d;this.ei=d.symbols;if(!this.Jb.length){x("Empty ROM: "+a);return}if(1==this.Jb.length){x(this.Jb[0]);return}}catch(g){this.Ja("ROM data error: "+
|
||||
g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.Jb=Array(a.length),d=0;d<a.length;d++)this.Jb[d]=parseInt(a[d],16);Bj(this)}};function Bj(a){if(!bb(a))if(!a.Eg)a.Ua();else if(a.Jb&&a.ra){if(a.Jb.length!=a.Vh)cb(a,"ROM size (0x"+p(a.Jb.length)+") does not match specified size (0x"+p(a.Vh)+")");else if(Dj(a,a.gk)&&Dj(a,a.tm)){if(a.Mk){var b=Wa(a.Mk,a.id);b&&("ega"==b.Ia&&Ej(b,a.Jb,[8752,12640],8),b.Ua())}delete a.Jb}a.Ua()}}
|
||||
function Dj(a,b){if(null==b)return!0;if(kb(a.ra,b,a.Vh,!0)){for(var c=0;c<a.Jb.length;c++)pb(a.ra,b+c,a.Jb[c]);return!0}return!1}Ha(function(){for(var a=D(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new Aj(d);Za(d,c)}});function Fj(a){z.call(this,"RAM",a,Fj);this.Sg=a.addr;this.Qd=a.size;this.Hm=a.test;this.Fm=!!this.Qd;this.lh=!1}A(z,Fj);Fj.prototype.pc=function(a,b,c){this.ra=b;this.T=c;this.oa=eb(a,"ChipSet");this.Ua()};Fj.prototype.$b=function(a,b){b||this.reset();return!0};
|
||||
Fj.prototype.Zb=function(){return!0};Fj.prototype.reset=function(){if(!this.Sg&&!this.Fm&&this.oa){var a=1024*yi(this.oa);this.Qd&&a!=this.Qd&&(mb(this.ra,this.Sg,this.Qd),this.lh=!1);this.Qd=a}!this.lh&&this.Qd&&kb(this.ra,this.Sg,this.Qd)&&(this.lh=!0,this.status(Math.floor(this.Qd/1024)+"Kb"));if(this.lh){if(this.Hm||qb(this.ra,1138,4660),this.oa&&(a=this.oa,a.ta)){var b=1048576>this.Sg?21:23,c=a.ta[b]|a.ta[b+1]<<8,c=c+(this.Qd>>10);a.ta[b]=c&255;a.ta[b+1]=c>>8;Ci(a)}}else x("No RAM allocated")};
|
||||
Ha(function(){for(var a=D(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new Fj(d);Za(d,c)}});function Gj(a){z.call(this,"Keyboard",a,Gj);this.Ak=!1;this.di={};this.Tn=250;this.Un=100;this.Ua()}A(z,Gj);
|
||||
var Q={wp:1,xp:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,sp:65,tp:66,ak:67,pm:68,E:69,Ap:70,Dp:71,bk:72,Fp:73,Gp:74,Hp:75,Ip:76,Jp:77,$h:78,Lp:79,Mp:80,Op:81,dk:82,Sp:83,bq:84,fq:85,gq:86,hq:87,jq:88,kq:89,lq:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,mq:97,nq:98,pq:99,qq:100,rq:101,sq:102,tq:103,uq:104,vq:105,wq:106,xq:107,yq:108,
|
||||
zq:109,Aq:110,Cq:111,Dq:112,Eq:113,Fq:114,Gq:115,Hq:116,Iq:117,Jq:118,Kq:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},Hj={16:2,17:8,18:32,20:256,144:512,145:1024},Ij={"caps-lock":256,"num-lock":512,"scroll-lock":1024},Jj={tab:1009,esc:1027,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},Kj={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,
|
||||
bs:14,tab:15,q:16,w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,quote:40,"`":41,shift:42,"\\":43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,"right-shift":54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,"num-home":71,"num-up":72,"num-pgup":73,"num-sub":74,"num-left":75,"num-center":76,"num-right":77,"num-add":78,"num-end":79,
|
||||
"num-down":80,"num-pgdn":81,"num-ins":82,"num-del":83,sysreq:84,pause:84,f11:87,f12:88,"num-enter":7392,"right-ctrl":7648,"num-div":13792,"num-mul":14304,"right-alt":14560,home:18400,up:18656,pgup:18912,left:19424,right:19936,end:20448,down:20704,pgdn:20960,ins:21216,del:21472,win:23520,"right-win":23776,menu:24032},S={1027:1};S[Q["1"]]=2;S[Q["!"]]=10754;S[Q["2"]]=3;S[Q["@"]]=10755;S[Q["3"]]=4;S[Q["#"]]=10756;S[Q["4"]]=5;S[Q.$]=10757;S[Q["5"]]=6;S[Q["%"]]=10758;S[Q["6"]]=7;S[Q["^"]]=10759;
|
||||
S[Q["7"]]=8;S[Q["&"]]=10760;S[Q["8"]]=9;S[Q["*"]]=10761;S[Q["9"]]=10;S[Q["("]]=10762;S[Q["0"]]=11;S[Q[")"]]=10763;S[Q["-"]]=12;S[Q._]=10764;S[Q["="]]=13;S[Q["+"]]=10765;S[1008]=14;S[1009]=15;S[113]=16;S[81]=10768;S[119]=17;S[87]=10769;S[101]=18;S[69]=10770;S[114]=19;S[82]=10771;S[116]=20;S[84]=10772;S[121]=21;S[89]=10773;S[117]=22;S[85]=10774;S[105]=23;S[73]=10775;S[111]=24;S[79]=10776;S[112]=25;S[80]=10777;S[Q["["]]=26;S[Q["{"]]=10778;S[Q["]"]]=27;S[Q["}"]]=10779;S[13]=28;S[1017]=29;S[97]=30;
|
||||
S[65]=10782;S[115]=31;S[83]=10783;S[100]=32;S[68]=10784;S[102]=33;S[70]=10785;S[103]=34;S[71]=10786;S[104]=35;S[72]=10787;S[106]=36;S[74]=10788;S[107]=37;S[75]=10789;S[108]=38;S[76]=10790;S[Q[";"]]=39;S[Q[":"]]=10791;S[Q["'"]]=40;S[Q['"']]=10792;S[Q["`"]]=41;S[Q["~"]]=10793;S[1016]=42;S[Q["\\"]]=43;S[Q["|"]]=10795;S[122]=44;S[90]=10796;S[120]=45;S[88]=10797;S[99]=46;S[67]=10798;S[118]=47;S[86]=10799;S[98]=48;S[66]=10800;S[110]=49;S[78]=10801;S[109]=50;S[77]=10802;S[Q[","]]=51;S[Q["<"]]=10803;
|
||||
S[Q["."]]=52;S[Q[">"]]=10804;S[Q["/"]]=53;S[Q["?"]]=10805;S[3016]=54;S[1018]=56;S[Q[" "]]=57;S[1020]=58;S[1112]=59;S[1113]=60;S[1114]=61;S[1115]=62;S[1116]=63;S[1117]=64;S[1118]=65;S[1119]=66;S[1120]=67;S[1121]=68;S[1144]=69;S[1145]=70;S[1036]=71;S[1038]=72;S[1033]=73;S[1037]=75;S[1039]=77;S[1035]=79;S[1040]=80;S[1034]=81;S[1045]=82;S[1046]=83;S[1122]=87;S[1123]=88;S[4003]=7470;S[4063]=7494;S[4081]=3677523;k=Gj.prototype;
|
||||
k.Db=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.wa[a])switch(c){case "kbd":return this.wa[a]=d,d.onkeydown=function(a){return Lj(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.bb&64?e.bb&=-65:e.bb&40?b=!1:(e.Ak&&a==Q["`"]&&(a=27),b=!Mj(e,a));return b},d.onkeyup=function(a){return Lj(e,a,!1)},!0;case "caps-lock":return this.wa[a]=d,d.onclick=function(){e.T&&e.T.Tc();Mj(e,1020,!0)},!0;case "num-lock":return this.wa[a]=d,d.onclick=function(){e.T&&
|
||||
e.T.Tc();Mj(e,1144,!0)},!0;case "scroll-lock":return this.wa[a]=d,d.onclick=function(){e.T&&e.T.Tc();Mj(e,1145,!0)},!0;default:if(void 0!==Jj[c]&&"button"==b)return this.wa[a]=d,d.onclick=function(a,b,c){return function(){a.T&&a.T.Tc();Nj(a,c);return!Mj(a,c)}}(this,c,Jj[c]),!0;if(void 0!==Kj[c])return this.wa[a]=d,b=function(a,b,c){return function(){Oj(a,c)}}(this,c,Kj[c]),c=function(a,b,c){return function(){Oj(a,c)}}(this,c,Kj[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=
|
||||
b,d.onmouseup=d.onmouseout=c),!0}return!1};k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;this.oa=eb(a,"ChipSet")};k.Ua=function(){this.Dk=(this.Pm=Aa("iOS"))||Aa("Android");this.Sa("mobile keyboard support: "+(this.Dk?"true":"false"));return z.prototype.Ua.call(this)};function sj(a){a.Sa("keyboard reset",Pj);a.yc=[170];a.oa&&vj(a.oa)}function nj(a,b,c){var d=!1;a.Bi!==c&&(a.Bi=a.Fi=c);a.ph!==b&&(a.ph=b)&&!a.Fi&&uj(a);a.ph&&a.Fi&&(sj(a),a.Fi=!1,d=!0);return d}
|
||||
function kj(a,b){var c=0;a.yc.length&&(c=a.yc[0],a.Sa("scan code 0x"+t(c)+" delivered"),b&&uj(a));return c}function uj(a,b){0<a.yc.length&&(b?a.yc=[]:(a.yc.shift(),0<a.yc.length&&a.oa&&vj(a.oa)))}k.$b=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};k.Zb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.le();this.bb=0;this.yc=[];if(this.ud)for(var a in this.ud)ca(a)||this.ud[a]&&clearTimeout(this.ud[a]);this.ud=[];this.Yl=this.Ue=0};
|
||||
k.save=function(){var a=new gd(this);a.set(0,this.Wj());return a.data()};k.restore=function(a){return this.le(a[0])};k.le=function(a){var b=0;void 0===a&&(a=[]);this.Bi=a[b++];this.ph=a[b];return!0};k.Wj=function(){var a=0,b=[];b[a++]=this.Bi;b[a]=this.ph;return b};
|
||||
function Oj(a,b){var c=b&127,d=c==b;if(a.yc)if(20>a.yc.length){if(!(!d&&!a.di[c]||d&&a.di[c])){a.di[c]=d;a.Sa("scan code 0x"+t(b)+" buffered");a.yc.push(b);1==a.yc.length&&a.oa&&vj(a.oa);for(var e in Kj)if(Kj[e]==c){(c=a.wa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.yc.length&&a.yc.push(255),a.Sa("scan code buffer overflow")}function Qj(a,b){var c=b?a.Un:a.Tn;a.T&&a.T.ca.pd&&(c/=a.T.ca.pd);return c}
|
||||
function Rj(a,b){!a.Ue||void 0!==b&&b==a.Ue||(clearTimeout(a.ud[a.Ue]),Sj(a,a.Ue,!1))}function Tj(a,b){var c,d;for(d in Ij){var e="led-"+d,f=Ij[d];b&&b!=f||!(c=a.wa[e])||(c.style.backgroundColor=a.bb&f?"#00ff00":"#000000")}}function Nj(a,b){var c;if(S[b]){var d=Math.floor(b/1E3)&2,e=Hj[Math.floor(b%1E3)]||0;e&&(d&&(e>>=1),e&1792&&(c=!(a.bb&e)),a.bb&=~e,c&&(a.bb|=e),Tj(a,e))}}
|
||||
function Lj(a,b,c){var d,e=!c,f=b.keyCode,g=f;c&&(a.Yl=f);if(S[f+1E3]){var g=g+1E3,h=Hj[f]||0;if(h)2==b.location&&(h>>=1,g+=2E3),a.bb&=~h,c&&(a.bb|=h),Tj(a,h),20==f||144==f||145==f?d=Mj(a,g):e=!1;else if(8==f||9==f||27==f)8==f&&8==(a.bb&40)&&(g=4063),d=c?!Mj(a,g):!1}else 91==f?(a.bb&=-65,c&&(a.bb|=64),e=!1,d=!0):b.altKey||b.ctrlKey?65<=f&&90>=f&&(g+=32):d=!0;e&&(a.bb&=-65,a.Dk||f!=a.Yl||Rj(a));void 0===d&&(d=!Sj(a,g,c));return d}
|
||||
function Mj(a,b,c){var d=!1;Rj(a,b);c&&Nj(a,b);Sj(a,b,!0)&&(c=!1,a.ud[b]&&(clearTimeout(a.ud[b]),c=!0),c=Qj(a,c),a.ud[a.Ue=b]=setTimeout(function(a){return function(){Sj(a,b,!1)}}(a),c),d=!0);return d}
|
||||
function Sj(a,b,c){var d=!1;c||(a.ud[b]=null,a.Ue==b&&(a.Ue=0));var e=S[b]||S[b+1E3];if(void 0!==e){14==e&&40==(a.bb&40)&&(e=83);var d=[],f=e&255;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,h=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==h?a.bb&3||a.bb&256&&b||(g=h):29==h?a.bb&12||(g=h):56==h?a.bb&48||(g=h):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)Oj(a,d[c]);d=!0}return d}
|
||||
k.Sa=function(a,b){this.fa&&(null==b&&(b=yj),b==Pj&&(b|=yj),E(this.fa,b)&&this.fa.message(a))};Ha(function(){for(var a=D(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new Gj(d);Za(d,c)}});
|
||||
function T(a,b,c,d){z.call(this,"Video",a,T);this.Ia=a.model;this.Yc=0;"ega"==this.Ia&&(this.fm=a.switches,this.Yc=a.memory||0);this.rd=a.mode;if(void 0===this.rd||void 0===Uj[this.rd])this.rd=Vj;this.Gh=a.charCols;this.Vi=a.charRows;if(void 0===this.Gh||void 0===this.Vi)this.Gh=Uj[this.rd][0],this.Vi=Uj[this.rd][1];this.Bd=a.screenWidth;this.ie=a.screenHeight;this.Gm=a.scale;this.Em=12<=Math.round(this.Bd/this.Gh);this.Im=a.touchScreen;this.fb=b;this.Zc=c;this.km=d;this.me=null;this.Dm=a.autoLock;
|
||||
this.Va=this.Tb=0;this.Wd=[];this.xd=Array(16);this.Ci=!1;var e=this;b&&(b.onfocus=function(){e.Ci=!0},b.onblur=function(){e.Ci=!1},b.vf=b.requestPointerLock||b.mozRequestPointerLock||b.webkitRequestPointerLock,b.lm=b.exitPointerLock||b.mozExitPointerLock||b.webkitExitPointerLock,b=function(){e.yg(document.pointerLockElement===e.fb||document.mozPointerLockElement===e.fb||document.webkitPointerLockElement===e.fb)},"onpointerlockchange"in document?document.addEventListener("pointerlockchange",b,!1):
|
||||
"onmozpointerlockchange"in document?document.addEventListener("mozpointerlockchange",b,!1):"onwebkitpointerlockchange"in document&&document.addEventListener("webkitpointerlockchange",b,!1));if(a=a.fontROM)"json"!=ha(a)&&(a=ta()+"/api/v1/dump?file="+a+"&format=bytes"),sa(a,!0,null,this,this.co)}A(z,T);
|
||||
var Wj={2:{Yi:15700,Xi:208,Mj:85,Nj:96},3:{Yi:18432,Xi:364,Mj:85,Nj:96},4:{Yi:21850,Xi:364,Mj:85,Nj:96}},Xj={6:[1,3,!0],7:[2,3,!0],8:[6,3,!0],9:[4,3,!0],10:[3,1,!0],11:[3,2,!0],0:[1,3,!1],1:[2,3,!1],2:[6,3,!1],3:[4,3,!1],4:[3,1,!1],5:[3,2,!1]},Vj=7,Uj=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];Uj[Vj]=[80,25,1,0,1];Uj[13]=[320,200,16];Uj[14]=[640,200,16];Uj[15]=[640,350,16];Uj[16]=[640,350,16];Uj[0]=Uj[1];Uj[2]=Uj[3];Uj[5]=Uj[4];var Yj=Array(5);Yj[0]=[0,0,0,255];
|
||||
Yj[1]=[127,192,127,255];Yj[2]=[127,192,127,255];Yj[3]=[127,255,127,255];Yj[4]=[127,255,127,255];var Zj=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],U=Array(16);U[0]=[0,0,0,255];U[1]=[0,0,170,255];U[2]=[0,170,0,255];U[3]=[0,170,170,255];U[4]=[170,0,0,255];U[5]=[170,0,170,255];U[6]=[170,85,0,255];U[7]=[170,170,170,255];U[8]=[85,85,85,255];U[9]=[85,85,255,255];U[10]=[85,255,85,255];U[11]=[85,255,255,255];U[12]=[255,85,85,255];U[13]=[255,85,255,255];U[14]=[255,255,85,255];U[15]=[255,255,255,255];
|
||||
var ak=[2,4,6],bk=[3,5,7],ck=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],dk=[0,255,65280,65535,16711680,16711935,16776960,16777215,4278190080,4278190335,4278255360,4278255615,4294901760,4294902015,4294967040,4294967295],ek=[0];ek[128]=1;ek[32768]=2;ek[32896]=3;ek[8388608]=4;ek[8388736]=5;ek[8421376]=6;ek[8421504]=7;ek[2147483648]=8;ek[2147483776]=9;ek[2147516416]=10;ek[2147516544]=11;ek[2155872256]=12;ek[2155872384]=13;ek[2155905024]=14;ek[2155905152]=15;
|
||||
function fk(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=gk[b],f=a.oe||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(hk)];this.fa=a.fa;this.type=e[0];this.port=e[1];this.ke=b;this.Va=e[2];this.Tb=e[3];this.Yc=d||e[4];65536<=this.Yc&&720896<=this.Va&&(this.Tb=Math.min(this.Yc>>2,32768));this.$c=c[0];this.Fc=c[1];this.jf=c[2];this.Ff=c[3];this.oc=c[4]&255;this.xh=c[4]>>8&255;this.ec=c[5];this.Oi=hk;this.Tg=ik;if(5==b){this.Oi=jk;this.Tg=kk;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5),
|
||||
0,0,0,Array(9),0,[this.Va,this.Tb,this.Yc],Array(this.Yc>>2),771,0,4294967295,0,4294967295,0,4294967295,0,0,0]);this.nd=b[0];this.Fd=b[1];this.Td=b[2];this.gi=lk;this.Xh=b[3];this.gg=b[4];this.wh=b[5];this.Hd=b[6];this.Mf=b[7];this.ii=mk;this.Ji=b[8];this.Ki=b[9];this.Gd=b[10];this.ye=b[11];this.hi=tk;this.Gb=b[12];d=b[13];"number"==typeof d&&(d=[this.Va,this.Tb,d]);this.Va=d[0];this.Tb=d[1];d=this.Yc>>2;if((this.hd=b[14])&&this.hd.length<d){for(var e=this.hd,g=0,h=Array(d),l=0;l<e.length-1;){for(var n=
|
||||
e[l++],q=e[l++];n--;)h[g]=q,g+=2;g==d&&(g=1)}this.hd=h}this.Uh(b[15]);this.Ij=b[16];this.ob=b[17];this.qd=b[18];this.vb=b[19];this.Jh=b[20];this.re=b[21];this.Se=b[22];this.Qi=b[23];this.Ri=b[24]}f=Wj[f]||Wj[3];this.Si=a.T.ca.Ld/f.Yi|0;this.Xn=this.Si*f.Mj/100|0;this.Tk=this.Si*f.Xi;this.$n=this.Tk*f.Nj/100|0;this.Zi=null==c[7]?0:c[7]}}
|
||||
var hk=18,jk=25,ik="HORZ_TOTAL HORZ_DISP HORZ_SYNC_POS HORZ_SYNC_WIDTH VERT_TOTAL VERT_TOTAL_ADJ VERT_DISP VERT_SYNC_POS INTERLACE_POS MAX_SCAN_LINE CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO".split(" "),kk="HORZ_TOTAL HORZ_DISP_END HORZ_BLANK_START HORZ_BLANK_END HORZ_RETRACE_START HORZ_RETRACE_END VERT_TOTAL CRTC_OVERFLOW PRESET_ROW_SCAN MAX_SCAN_LINE CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO VERT_DISP_END OFFSET UNDERLINE VERT_BLANK_START VERT_BLANK_END MODE_CTRL LONE_COMPARE".split(" "),
|
||||
lk="PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVRSCAN PLANES HORZPAN".split(" "),mk=["RESET","CLK","MAPMASK","CHARMAP","MODE"],tk="SRESET ESRESET COLRCMP DATAROT READMAP MODE MISC COLRDC BITMASK".split(" ");function uk(a){return this.sc(a)|this.sc(a+1)<<8}function vk(a,b){this.Hc(a,b&255);this.Hc(a+1,b>>8&255)}
|
||||
var wk=[,,function(a){a+=this.offset;return(this.ia.Gb=this.xa[a])>>this.ia.Ij&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.xa[b]>>8:this.xa[b])&255}];wk[16]=function(a){a+=this.offset;a=this.xa[a];for(var b=this.ia.Qi&this.ia.Ri,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};wk[512]=function(a,b){var c=a+this.offset,d;d=this.xa[c]&~this.ia.ob|(b|b<<8|b<<16|b<<24)&this.ia.ob;d=d&this.ia.vb|this.ia.Gb&~this.ia.vb;this.xa[c]!=d&&(this.xa[c]=d,this.sb=!0)};
|
||||
wk[1024]=function(a,b){var c=a+this.offset;b=b>>this.ia.qd|b<<8-this.ia.qd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.re|this.ia.Se;d=d&this.ia.ob|this.xa[c]&~this.ia.ob;d=d&this.ia.vb|this.ia.Gb&~this.ia.vb;this.xa[c]!=d&&(this.xa[c]=d,this.sb=!0)};
|
||||
wk[1536]=function(a,b){var c=a+this.offset;b=b>>this.ia.qd|b<<8-this.ia.qd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.re|this.ia.Se;d&=this.ia.Gb;d=d&this.ia.ob|this.xa[c]&~this.ia.ob;d=d&this.ia.vb|this.ia.Gb&~this.ia.vb;this.xa[c]!=d&&(this.xa[c]=d,this.sb=!0)};
|
||||
wk[2560]=function(a,b){var c=a+this.offset;b=b>>this.ia.qd|b<<8-this.ia.qd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.re|this.ia.Se;d|=this.ia.Gb;d=d&this.ia.ob|this.xa[c]&~this.ia.ob;d=d&this.ia.vb|this.ia.Gb&~this.ia.vb;this.xa[c]!=d&&(this.xa[c]=d,this.sb=!0)};
|
||||
wk[3584]=function(a,b){var c=a+this.offset;b=b>>this.ia.qd|b<<8-this.ia.qd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.re|this.ia.Se;d^=this.ia.Gb;d=d&this.ia.ob|this.xa[c]&~this.ia.ob;d=d&this.ia.vb|this.ia.Gb&~this.ia.vb;this.xa[c]!=d&&(this.xa[c]=d,this.sb=!0)};wk[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ia.ob&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.xa[d]&~c;c=c&this.ia.vb|this.ia.Gb&~this.ia.vb;this.xa[d]!=c&&(this.xa[d]=c,this.sb=!0)};
|
||||
wk[4096]=function(a){a+=this.offset;var b=this.xa[a]&~this.ia.ob|this.ia.Gb&this.ia.ob;this.xa[a]!=b&&(this.xa[a]=b,this.sb=!0)};wk[8192]=function(a,b){var c=a+this.offset,d=dk[b&15],d=d&this.ia.ob|this.xa[c]&~this.ia.ob,d=d&this.ia.vb|this.ia.Gb&~this.ia.vb;this.xa[c]!=d&&(this.xa[c]=d,this.sb=!0)};wk[24576]=function(a,b){var c=a+this.offset,d=dk[b&15],d=d&this.ia.Gb,d=d&this.ia.ob|this.xa[c]&~this.ia.ob,d=d&this.ia.vb|this.ia.Gb&~this.ia.vb;this.xa[c]!=d&&(this.xa[c]=d,this.sb=!0)};
|
||||
wk[40960]=function(a,b){var c=a+this.offset,d=dk[b&15],d=d|this.ia.Gb,d=d&this.ia.ob|this.xa[c]&~this.ia.ob,d=d&this.ia.vb|this.ia.Gb&~this.ia.vb;this.xa[c]!=d&&(this.xa[c]=d,this.sb=!0)};wk[57344]=function(a,b){var c=a+this.offset,d=dk[b&15],d=d^this.ia.Gb,d=d&this.ia.ob|this.xa[c]&~this.ia.ob,d=d&this.ia.vb|this.ia.Gb&~this.ia.vb;this.xa[c]!=d&&(this.xa[c]=d,this.sb=!0)};
|
||||
function xk(a){var b=[];if(void 0!==a.ke){b[0]=a.$c;b[1]=a.Fc;b[2]=a.jf;b[3]=a.Ff;b[4]=a.oc|a.xh<<8;b[5]=a.ec;if(5==a.ke){var c=[];c[0]=a.nd;c[1]=a.Fd;c[2]=a.Td;c[3]=a.Xh;c[4]=a.gg;c[5]=a.wh;c[6]=a.Hd;c[7]=a.Mf;c[8]=a.Ji;c[9]=a.Ki;c[10]=a.Gd;c[11]=a.ye;c[12]=a.Gb;c[13]=[a.Va,a.Tb,a.Yc];var d;a:if(d=a.hd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h<d.length;){for(var l=d[h],n=h+2;n<d.length&&d[n]===l;)n+=2;f[e++]=n-h>>1;f[e++]=l;h=n}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
|
||||
a.Dh;c[16]=a.Ij;c[17]=a.ob;c[18]=a.qd;c[19]=a.vb;c[20]=a.Jh;c[21]=a.re;c[22]=a.Se;c[23]=a.Qi;c[24]=a.Ri;b[6]=c}b[7]=a.Zi}return b}function yk(a,b,c,d,e){if(d){var f="",g,h=0;for(g=0;g<e.length;g++)h<e[g].length&&(h=e[g].length);h++;for(g=0;g<e.length;g++){f&&(f+="\n");var l=e[g],f=f+(b+"["+t(g)+"]: "+(l+" ".substr(0,h-l.length))+t(d[g])+(g===c?"*":""))}a.fa.message(f)}else a.fa.message(b+": "+t(c))}
|
||||
fk.prototype.Uh=function(a){if(null!=a&&a!=this.Dh){var b=a&255,c=wk[b];c||b&1&&(c=wk[1]);var b=a&65280,d=wk[b];d||b&256&&(d=wk[256]);this.Rf||(this.Rf=[null,uk,null,vk]);this.Rf[0]=c;this.Rf[2]=d;this.Dh=a}};var gk=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];k=T.prototype;
|
||||
k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;tb(b,this,zk);zb(b,this,Ak);"ega"==this.Ia&&(tb(b,this,Bk),zb(b,this,Ck));if(d){var e=this;oi(d,Dk,function(a){if(e.Ha)if(a){var b=e.Ha;if(b.hd){a=da(a);a=void 0!==a?a-b.Va:b.cp||0;0>a&&(a=0);for(var c="",d=0;8>d;d++){for(var f=p(b.Va+a)+":",r=0;8>r&&a<b.hd.length;r++)var s=b.hd[a++],f=f+(" "+p(s));c&&(c+="\n");c+=f}c&&b.fa.message(c);b.cp=a}else b.fa.message("no buffer")}else{e.fa.message("BIOSMODE: "+t(e.Nd));b=e.Ha;yk(b,"CRTC",b.oc,b.ec,b.Tg);
|
||||
if(1==b.ke||3==b.ke)yk(b," MODEREG",b.Fc),yk(b," STATUS1",b.Ff);3==b.ke&&yk(b," COLOR",b.jf);5==b.ke&&(b.fa.message(" ATCDATA: "+b.nd),yk(b," ATC",b.Fd,b.Td,b.gi),yk(b," GRC",b.Gd,b.ye,b.hi),yk(b," SEQ",b.Hd,b.Mf,b.ii),yk(b," FEAT",b.wh),yk(b," MISC",b.gg),yk(b," STATUS0",b.Xh),yk(b," LATCHES",b.Gb),b.fa.message(" ACCESS: "+v(b.Dh)),b.fa.message("Use 'dump video buffer' to dump video memory"))}else e.fa.message("no active video card")})}if((this.Ra=eb(a,"Keyboard"))&&this.fb){for(var f in this.wa)0<
|
||||
f.indexOf("lock")&&this.Ra.Db("input","led",f,this.wa[f]);this.Ra.Db("input",this.km?"textarea":"canvas","kbd",this.km||this.fb)}this.Vg=9;(this.oa=eb(a,"ChipSet"))&&this.fm&&(this.Vg=bi(this.fm,this.Vg));this.Ra&&this.Im&&Ek(this)};k.Db=function(a,b,c,d){var e=this;if(!this.wa[c])switch(this.wa[c]=d,c){case "lockPointer":return this.jp=d.innerHTML,this.fb&&this.fb.vf?d.onclick=function(){e.vf(!0)}:d.parentNode.removeChild(d),!0;case "refresh":return d.onclick=function(){Mb(e,!0)},!0}return!1};
|
||||
k.Tc=function(){this.fb&&this.fb.focus()};k.vf=function(a){if(this.fb)if(a){if(this.fb.vf)return this.fb.vf(),this.me.yg(!0),!0}else if(this.fb.lm)return this.fb.lm(),this.me.yg(!1),!0;return!1};k.yg=function(a){this.me&&(this.me.yg(a),this.Ra&&(this.Ra.Ak=a));var b=this.wa.lockPointer;b&&(b.innerHTML=a?"Press Esc to Unlock Pointer":this.jp)};
|
||||
function Ek(a){var b=a.fb;b&&!a.Ai&&(b.addEventListener("touchstart",function(b){Fk(a,b)},!1),b.addEventListener("touchmove",function(b){Fk(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.Ai=!0)}
|
||||
function Fk(a,b){a.Ci&&b.preventDefault();var c=0,d=0,e=a.fb;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.Bd/a.fb.offsetWidth*(b.targetTouches[0].pageX-c)/(a.Bd/3)|0;d=a.ie/a.fb.offsetHeight*(b.targetTouches[0].pageY-d)/(a.ie/3)|0;1!=d?d?Mj(a.Ra,40,!0):Mj(a.Ra,38,!0):1!=c&&(c?Mj(a.Ra,39,!0):Mj(a.Ra,37,!0))}k.$b=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Zb=function(a){return a&&this.save?this.save():!0};
|
||||
k.reset=function(){var a=!0,b=0;this.oa&&(b=zi(this.oa));var c=!1;if(this.Ia)switch(this.Ia){case "ega":var c=!0,d=Xj[this.Vg];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.oe!==b&&(this.oe=b,a=!0);this.Ha=null;this.Xc=this.oi=new fk(this,1);this.Kb=this.hh=new fk(this,3);c?(this.na=new fk(this,5,null,this.Yc),Gk(this)):this.na=new fk;Hk(this);this.Nd=null;this.rd=3==b?Vj:3;this.He=this.Oc=-1;this.Ge=0;Ik(this,this.rd);if(this.Ha.Va&&a){a=this.Ha.Va+this.pi;for(b=this.Ha.Va;b<a;b+=
|
||||
2)d=Math.floor(65536*Math.random()),4==this.oe?(c=b>>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),qb(this.ra,b,c|d<<8);Mb(this,!0)}};function Gk(a){a.na.gg&1?(a.Xc=a.oi,a.Kb=a.na):(a.Xc=a.na,a.Kb=a.hh)}k.save=function(){var a=new gd(this);a.set(0,xk(this.oi));a.set(1,xk(this.hh));a.set(2,[this.oe,this.rd,this.Nd]);a.set(3,xk(this.na));return a.data()};
|
||||
k.restore=function(a){var b=a[2];this.oe=b[0];this.rd=b[1];this.Nd=b[2];this.Ha=null;this.Xc=this.oi=new fk(this,1,a[0]);this.Kb=this.hh=new fk(this,3,a[1]);this.na=new fk(this,5,a[3],this.Yc);this.na.$c&&Gk(this);Hk(this);if(!Jk(this))return!1;Kk(this);return!0};
|
||||
k.co=function(a,b,c){if(c)this.Ja("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){x("Empty font ROM image: "+a);return}if(1==d.length){x(d[0]);return}if(8192==d.length)Ej(this,d,[0,6144]);else{this.Ja("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Ja("Font ROM data error: "+e.message);return}this.Ua()}};
|
||||
function Lk(a,b){if(1==b)return a.xd[0]=U[0],a.xd[1]=U[7],a.xd;if(2==b){var c=a.Ha.jf;if(a.Ha===a.na){var d=a.na.Td[0],c=d&7;d&16&&(c|=8);18!=a.na.Td[1]&&(c|=32)}a.xd[0]=U[c&15];c=c&32?bk:ak;for(d=0;d<c.length;d++)a.xd[d+1]=U[c[d]];return a.xd}if(a.Kb===a.hh)return U;c=null!=a.na.Td[15]?a.na.Td:ck;for(d=0;d<a.xd.length;d++){var e=c[d]||0;a.xd[d]=[(e&4?170:0)|(e&32?85:0),(e&2?170:0)|(e&16?85:0),(e&1?170:0)|(e&8?85:0),255]}return a.xd}function Ej(a,b,c,d){a.Qg=b;a.ci=c;a.Le=d}
|
||||
function Hk(a){var b=!1;if(window&&a.Qg){var c=a.Le?0:2048,d=a.Le?a.Le:9;Mk(a,1,a.ci[0],c,d,14,a.Qg,Yj,Zj)&&(b=!0);c=Lk(a);d=a.Le?a.Le:8;Mk(a,3,a.ci[1],0,d,8,a.Qg,c)&&(b=!0);a.Le&&Mk(a,5,a.ci[0],0,a.Le,14,a.Qg,c)&&(b=!0)}return b}function Mk(a,b,c,d,e,f,g,h,l){var n=!1;Nk(a,b,c,d,e,f,g,h,l)&&(n=!0);a.Em&&Nk(a,b<<1,c,d,e,f,g,h,l)&&(n=!0);return n}
|
||||
function Nk(a,b,c,d,e,f,g,h,l){var n=!1,q=b&1?0:1,r=a.Wd[b];r||(r={lc:e<<q,mc:f<<q,ef:Array(h.length),fk:h.slice(),Lf:l,ai:Array(h.length)});for(l=0;l<h.length;l++){var s=h[l],u=r.ef[l]?r.fk[l]:[];if(s[0]!==u[0]||s[1]!==u[1]||s[2]!==u[2]){var n=r,u=l,y=q,B=c,M=d,V=e,va=f,wa=g,xb=[0,0,0,0],Qb=window.document.createElement("canvas");Qb.width=n.lc<<4;Qb.height=n.mc<<4;for(var W=Qb.getContext("2d"),K=void 0,w=void 0,R=void 0,I=8>va||!M?va:8,yb=W.createImageData(n.lc,n.mc),K=0;256>K;K++){for(R=0;R<va;R++)for(var Ma=
|
||||
n.Lf&&u&1&&R>=va-2,ga=wa[R<I?B+K*I+R:M+K*I+R-I],X=0;X<=y;X++)for(w=0;w<V;w++){var Ya=w<<y,Gc=(R<<y)+X,jc=Ma||ga&128>>(8<=w&&176<=K&&223>=K?7:w)?s:xb;Ok(yb,Ya,Gc,jc);y&&Ok(yb,Ya+1,Gc,jc)}W.putImageData(yb,(K&15)*n.lc,(K>>4)*n.mc)}n.ef[u]="#"+t(s[0])+t(s[1])+t(s[2]);n.fk[u]=s;n.ai[u]=Qb;n=!0}}a.Wd[b]=r;return n}function Pk(a){0<a.Ge||0<=a.Oc?0>a.He&&(a.He=0):a.He=-1}
|
||||
function Kk(a){if(a.Vb){for(var b=10;15>=b;b++)if(null==a.Ha.ec[b])return;var c=a.Ha.ec[10],b=c&31,d=a.Ha.ec[11]&31,e=a.Ha.ec[9]&31,f=!1;a.Ha===a.na&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Qk(a);else{c=a.Ha.ec[15]+((a.Ha.ec[14]&63)<<8);a.Oc!=c&&(Qk(a),a.Oc=c);d=d-b+1;if(a.om!=b||a.tk!=d)a.om=b,a.tk=d;a.he=e+1;Pk(a)}}}
|
||||
function Qk(a){if(0<=a.Oc){if(void 0!==a.fc){var b=a.fc[a.Oc];if(b&131072){var b=b&-131073,c=a.Oc%a.Lb,d=Math.floor(a.Oc/a.Lb);a.Vb&&a.Wd[a.Vb]&&(a.kf&&Rk(a,c,d,b,a.kf),Rk(a,c,d,b));a.fc[a.Oc]=b}}a.Oc=-1}}
|
||||
function Sk(a){var b;a=a.Ha;var c=a.ye[5];if(null!=c){b=2;var d=512,e=a.ye[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.qd=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}k.Ze=function(a){var b=this.Ha;null!=a&&b&&a!=b.Dh&&(b.Uh(a),this.ra.Uh(b.Va,b.Tb,b.Rf))};
|
||||
function Jk(a,b){var c,d=a.Nd,e=a.Ha;if(e)if(1==e.ke)d=Vj;else if(5==e.ke){var d=null,f=e.Yc>>2,g=32768<f?32768:f,h=e.ye[6];if(null!=h){switch(h&12){case 0:e.Va=655360;e.Tb=f;d=255;break;case 4:e.Va=655360;e.Tb=f;d=3==a.oe?15:16;break;case 8:e.Va=720896;e.Tb=g;d=Vj;break;case 12:e.Va=753664,e.Tb=g,d=3==a.oe?2:3}c=e.Mf[1]&8;f=e.ec[6]|(e.ec[7]&1)<<8;255!=d&&(h&1?753664==e.Va?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=Sk(a)}}else e.Fc&8&&(e.Fc&2?(d=e.Fc&16?6:5,e.Fc&4||(d-=1)):(d=e.Fc&1?3:1,e.Fc&4&&(d-=
|
||||
1)));else a.Nd=null,null==d&&(d=a.rd);if(!Ik(a,d,b))return!1;a.Ze(c);return!0}
|
||||
function Ik(a,b,c){if(null!=b&&(b!=a.Nd||c)){a.um=0;a.Nd=b;b=a.Ha||(b==Vj?a.Xc:a.Kb);if(b!=a.Ha||b.Va!=a.Va||b.Tb!=a.Tb){Qk(a);if(a.Va){if(!mb(a.ra,a.Va,a.Tb))return!1;a.Ha&&(a.Ha.$c=!1)}a.Ha=b;b.$c=!0;a.Va=b.Va;a.Tb=b.Tb;if(!kb(a.ra,b.Va,b.Tb,!1,b===a.na?b:null))return!1}a.Vb=0;a.Lb=a.Gh;a.rc=a.Vi;a.Pi=Uj[Vj][2];b=0;var d=Uj[a.Nd];d&&(a.Lb=d[0],a.rc=d[1],a.Pi=d[2],b=d[3]||0,a.Vb=d[4],4==a.oe&&a.Ha===a.na&&3==a.Vb&&(7==a.na.ec[9]?a.rc=43:a.Vb=5));a.Qk=a.Lb*a.rc;a.Fh=a.Qk/a.Pi;a.pi=(a.Fh<<1)+b;a.qk=
|
||||
b?a.pi+b>>1:0;13<=a.Nd&&(a.Fh<<=1);a.Wd.length&&(a.Cd=Math.floor(a.Bd/a.Lb),a.Dd=Math.floor(a.ie/a.rc),a.Vb?(b=a.Wd[a.Vb],d=a.Wd[a.Vb<<1],a.Gm&&80==a.Lb?d&&a.Cd>=3*d.lc>>2&&(a.Vb<<=1,b=d):(d&&a.Cd>=d.lc&&(a.Vb<<=1,b=d),b&&(a.Cd=b.lc,a.Dd=b.mc)),a.ag=a.bg=0,b&&(a.ag=a.Lb*b.lc,a.bg=a.rc*b.mc)):(a.Cd=a.Dd=1,a.ag=a.Lb,a.bg=a.rc),a.zh=a.Zc.createImageData(a.ag,a.bg),a.hf=window.document.createElement("canvas"),a.hf.width=a.ag,a.hf.height=a.bg,a.kf=a.hf.getContext("2d"),a.Zj=a.$j=0,a.ri=a.Bd,a.si=a.ie,
|
||||
b=a.Bd-a.Lb*a.Cd,d=a.ie-a.rc*a.Dd,0<b&&(a.Zj=b>>1,a.ri-=b),0<d&&(a.$j=d>>1,a.si-=d),b||d)&&(a.Zc.fillStyle=a.fb.style.backgroundColor,a.Zc.fillRect(0,0,a.Bd,a.ie));!1!==c?Mb(a,!0):Tk(a,!0)}return!0}function Ok(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Tk(a,b){var c;if(b){if(c=a.Fh,void 0===a.fc||a.fc.length!=c)a.fc=Array(c)}else{if(void 0===a.fc)return;c=a.fc.length}for(var d=0;d<c;d++)a.fc[d]=-1;a.Ge=-1}
|
||||
function Rk(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Wd[a.Vb];h.Lf&&(d=h.Lf[d]);var l=g>>4&15;h.Lf&&(l=h.Lf[l]);e?(b*=h.lc,c*=h.mc,e.fillStyle=h.ef[l],e.fillRect(b,c,h.lc,h.mc)):(b=b*a.Cd+a.Zj,c=c*a.Dd+a.$j,a.Zc.fillStyle=h.ef[l],a.Zc.fillRect(b,c,a.Cd,a.Dd));g&256&&(l=(f&15)*h.lc,f=(f>>4)*h.mc,e?e.drawImage(h.ai[d],l,f,h.lc,h.mc,b,c,h.lc,h.mc):a.Zc.drawImage(h.ai[d],l,f,h.lc,h.mc,b,c,a.Cd,a.Dd));g&512&&(f=a.om,g=a.tk,e?(a.he&&a.he!==h.mc&&(f=Math.floor(f*h.mc/a.he),g=Math.floor(g*h.mc/a.he)),
|
||||
e.fillStyle=h.ef[d],e.fillRect(b,c+f,h.lc,g)):(a.he&&a.he!==a.Dd&&(f=Math.floor(f*a.Dd/a.he),g=Math.floor(g*a.Dd/a.he)),a.Zc.fillStyle=h.ef[d],a.Zc.fillRect(b,c+f,a.Cd,g)))}
|
||||
function Mb(a,b){if(a.qa.Qb){var c=!1;a.Ha&&(a.Ha===a.na?a.na.Fd&32&&(c=!0):a.Ha.Fc&8&&(c=!0));if(c||b){if(b)Tk(a,!0);else if(void 0===a.fc)return;var d=!1;!(b||++a.um&15)&&0<=a.He&&(a.He++,d=!0);var e=0,f=a.Qk,c=a.Ha.Va,g=c+a.Ha.Tb,h=(a.Ha.ec[12]<<8)+a.Ha.ec[13];a.Vb&&(h<<=1);var c=c+h,l=a.pi;c+l>g&&(l=g-c,0>l&&(l=0));g=c+l;if(h=!b){for(var h=a.ra,n=!0,q=c>>h.zb;0<l&&q<h.Fa.length;)h.Fa[q].sb&&(h.Fa[q].sb=n=!1,h.Fa[q].zk=!0),l-=h.gc,q++;h=n}if(h){if(!d)return;if(!a.Ge){if(0>a.Oc)return;e=a.Oc;f=
|
||||
e+1}}if(a.Vb){if(a.Wd[a.Vb]){d=0;h=a.Ge=0;l=1048575;a.Ha.Fc&32&&(h=32768,l&=~h,a.He&2||(l&=-65537));for(c+=e<<1;c<g&&e<f;)n=ob(a.ra,c),n|=65536,n&h&&(a.Ge++,n&=l),e==a.Oc&&(n|=a.He&1?131072:0),q=a.fc[e],q!=n&&(Rk(a,e%a.Lb,Math.floor(e/a.Lb),n,a.kf),a.fc[e]=n,d++),c+=2,e++;d&&a.kf&&a.Zc.drawImage(a.hf,0,0,a.ag,a.bg,a.Zj,a.$j,a.ri,a.si);Pk(a)}}else if(a.qk){for(var f=g,r,s,e=c,g=a.Ge=0,d=a.Pi,h=16==d?65536:196608,l=16==d?1:2,n=Lk(a,l),u=q=0,y=a.Lb,B=0,M=a.rc,V=0;e<f;){r=ob(a.ra,e);s=a.fc[g];if(s===
|
||||
r)q+=d;else{a.fc[g]=r;r=r>>8|(r&255)<<8;s=h;var va=16;q<y&&(y=q);for(var wa=0;wa<d;wa++){var xb=(r&(s>>=l))>>(va-=l);Ok(a.zh,q++,u,n[xb])}q>B&&(B=q);u<M&&(M=u);u>=V&&(V=u+1)}e+=2;g++;if(q>=a.Lb){q=0;u+=2;if(u>a.rc)break;u==a.rc&&(u=1,e=c+a.qk)}}y<a.Lb&&(a.kf.putImageData(a.zh,0,0,y,M,B-y,V-M),a.Zc.drawImage(a.hf,0,0,a.Lb,a.rc,0,0,a.Bd,a.ie))}else{f=g;e=a.Ge=0;g=Lk(a);d=a.Ha.hd;l=h=0;n=a.Lb;q=0;u=a.rc;for(y=0;c<f;){B=c++-a.Va;B=d[B];M=a.fc[e];if(M===B)h+=8;else{a.fc[e]=B;h<n&&(n=h);for(M=0;8>M;M++)V=
|
||||
B&2155905152,0>V&&(V+=4294967296),V=ek[V]||0,Ok(a.zh,h++,l,g[V]),B<<=1;h>q&&(q=h);l<u&&(u=l);l>=y&&(y=l+1)}e++;if(h>=a.Lb&&(h=0,++l>a.rc))break}n<a.Lb&&(a.kf.putImageData(a.zh,0,0,n,u,q-n,y-u),a.Zc.drawImage(a.hf,0,0,a.Lb,a.rc,0,0,a.Bd,a.ie))}}}}k.vn=function(a,b){return Uk(this,this.Xc,b)};k.Lo=function(a,b,c){a=this.Xc;a.xh=a.oc;a.oc=b&31;this.ea(a.port,b,c,"CRTC.INDX")};k.un=function(a,b){return Vk(this,this.Xc,b)};k.Ko=function(a,b,c){Wk(this,this.Xc,b,c)};
|
||||
k.wn=function(a,b){return Xk(this,this.Xc,b)};k.Mo=function(a,b,c){a=this.Xc;this.ea(a.port+4,b,c,"MODE");a.Fc=b;Jk(this,!1)};k.xn=function(a,b){return Yk(this,this.Xc,b)};k.Xl=function(a,b,c){this.na.wh=this.na.wh&-4|b&3;this.ea(a,b,c,"FEAT")};k.Nk=function(a,b){var c=this.na.nd?this.na.Td[this.na.Fd&31]:this.na.Fd;this.ea(960,null,b,"ATC."+(this.na.nd?this.na.gi[this.na.Fd&31]:"INDX"),c);this.na.nd=!this.na.nd;return c};
|
||||
k.Wl=function(a,b,c){var d=this.na.Fd&32;if(this.na.nd){var e=this.na.Fd&31;if(16<=e||!d)this.ea(a,b,c,"ATC."+this.na.gi[e]),this.na.Td[e]=b;this.na.nd=!1}else this.na.Fd=b,this.ea(a,b,c,"ATC.INDX"),this.na.nd=!0,b&32&&!d&&Hk(this)&&Mb(this,!0)};k.Hn=function(a,b){var c=3-((this.na.gg&12)>>2),c=this.na.Xh&-17|(this.Vg&1<<c)<<4-c;this.na.Xh=c;this.ea(962,null,b,"STATUS0",c);return c};k.Oo=function(a,b,c){this.na.gg=b;Gk(this);this.ea(962,b,c,"MISC")};
|
||||
k.Gn=function(a,b){var c=this.na.Hd;this.ea(964,null,b,"SEQ.INDX",c);return c};k.Vo=function(a,b,c){this.na.Hd=b;this.ea(964,b,c,"SEQ.INDX")};k.Fn=function(a,b){var c=this.na.Mf[this.na.Hd];this.ea(965,null,b,"SEQ"+this.na.ii[this.na.Hd],c);return c};k.Uo=function(a,b,c){this.ea(965,b,c,"SEQ."+this.na.ii[this.na.Hd]);this.na.Mf[this.na.Hd]=b;2==this.na.Hd&&(this.na.ob=dk[b&15])};k.nn=function(a,b){var c=this.na.Ji;this.ea(972,null,b,"GRC1",c);return c};
|
||||
k.Fo=function(a,b,c){this.na.Ji=b;this.ea(972,b,c,"GRC1")};k.on=function(a,b){var c=this.na.Ki;this.ea(970,null,b,"GRC2",c);return c};k.Go=function(a,b,c){this.na.Ki=b;this.ea(970,b,c,"GRC2")};k.mn=function(a,b){var c=this.na.Gd;this.ea(974,null,b,"GRC.INDX",c);return c};k.Eo=function(a,b,c){this.na.Gd=b;this.ea(974,b,c,"GRC.INDX")};k.ln=function(a,b){var c=this.na.ye[this.na.Gd];this.ea(975,null,b,"GRC."+this.na.hi[this.na.Gd],c);return c};
|
||||
k.Do=function(a,b,c){this.ea(975,b,c,"GRC."+this.na.hi[this.na.Gd]);this.na.ye[this.na.Gd]=b;switch(this.na.Gd){case 0:this.na.Jh=dk[b&15];this.na.Se=this.na.Jh&~this.na.re;break;case 1:this.na.re=~dk[b&15];this.na.Se=this.na.Jh&~this.na.re;break;case 2:this.na.Qi=dk[b&15]&2155905152;break;case 3:case 5:this.Ze(Sk(this));break;case 4:this.na.Ij=(b&3)<<3;break;case 6:Jk(this,!1);break;case 7:this.na.Ri=dk[b&15^15]&2155905152;break;case 8:this.na.vb=b|b<<8|b<<16|b<<24}};
|
||||
k.cn=function(a,b){return Uk(this,this.Kb,b)};k.wo=function(a,b,c){a=this.Kb;a.xh=a.oc;a.oc=b&31;this.ea(a.port,b,c,"CRTC.INDX")};k.bn=function(a,b){return Vk(this,this.Kb,b)};k.vo=function(a,b,c){Wk(this,this.Kb,b,c)};k.dn=function(a,b){return Xk(this,this.Kb,b)};k.xo=function(a,b,c){a=this.Kb;this.ea(a.port+4,b,c,"MODE");a.Fc=b;Jk(this,!1)};k.an=function(a,b){var c=this.Kb.jf;this.ea(this.Kb.port+5,null,b,this.Kb.type+".COLOR",c);return c};
|
||||
k.uo=function(a,b,c){this.ea(this.Kb.port+5,b,c,this.Kb.type+".COLOR");this.Kb.jf!==b&&(this.Kb.jf=b,Tk(this,!1))};k.en=function(a,b){return Yk(this,this.Kb,b)};function Uk(a,b,c){var d=b.oc;a.ea(b.port,null,c,"CRTC.INDX",d);return d}function Vk(a,b,c){var d;b.oc<b.Oi&&(d=b.ec[b.oc]);a.ea(b.port+1,null,c,"CRTC."+b.Tg[b.oc],d);return d}function Wk(a,b,c,d){b.oc<b.Oi&&(a.ea(b.port+1,c,d,"CRTC."+b.Tg[b.oc]),b.ec[b.oc]=c,9==b.oc&&8!=b.xh&&Jk(a,!0),Kk(a))}
|
||||
function Xk(a,b,c){var d=b.Fc;a.ea(b.port+4,null,c,"MODE",d);return d}function Yk(a,b,c){var d=0,e=Ub(a.T),f=e-b.Zi;0>f&&(f=0);f%b.Si>b.Xn&&(d|=1);f%=b.Tk;f>b.$n&&(d|=8);b.Zi=e-f;b===a.na?(d|=b.Ff&48^48,b.nd=!1):d=(b.Ff^=9)|240;b.Ff=d;a.ea(b.port+6,null,c,b===a.na?"STATUS1":"STATUS",d);return d}k.Sa=function(a,b){this.fa&&(b||E(this.fa,Dk))&&this.fa.message(a)};k.ea=function(a,b,c,d,e){this.fa&&this.fa.ea(this,a,b,c,d,Dk,e)};
|
||||
var zk={948:T.prototype.vn,949:T.prototype.un,952:T.prototype.wn,954:T.prototype.xn,980:T.prototype.cn,981:T.prototype.bn,984:T.prototype.dn,985:T.prototype.an,986:T.prototype.en},Ak={948:T.prototype.Lo,949:T.prototype.Ko,952:T.prototype.Mo,980:T.prototype.wo,981:T.prototype.vo,984:T.prototype.xo,985:T.prototype.uo},Bk={960:T.prototype.Nk,961:T.prototype.Nk,962:T.prototype.Hn,964:T.prototype.Gn,965:T.prototype.Fn,970:T.prototype.on,972:T.prototype.nn,974:T.prototype.mn,975:T.prototype.ln},Ck={954:T.prototype.Xl,
|
||||
960:T.prototype.Wl,961:T.prototype.Wl,962:T.prototype.Oo,964:T.prototype.Vo,965:T.prototype.Uo,970:T.prototype.Go,972:T.prototype.Fo,974:T.prototype.Eo,975:T.prototype.Do,986:T.prototype.Xl};
|
||||
Ha(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 <canvas> 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);Za(d,c)}});
|
||||
function Sk(a){this.Ik=a.adapter;switch(this.Ik){case 1:this.Nj=1016;this.tg=4;break;case 2:this.Nj=760;this.tg=3;break;default:x("Unrecognized serial adapter #"+this.Ik);return}this.fe=null;z.call(this,"SerialPort",a,Sk);var b=a.binding,c;a=Tk;b&&(void 0===c&&(c="Panel"),(c=Ya(c,this.id))&&(b=c.ya[b])&&this.Fb(null,null,a,b))}A(z,Sk);var Tk="buffer";k=Sk.prototype;k.hk=function(a,b){return a==this.xh?(this.me=b,this):null};
|
||||
k.Fb=function(a,b,c,d){var e=this;switch(c){case Tk:return this.ya[c]=this.fe=d,d.onkeydown=function(a){a=a||window.event;var b=a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),Uk(e,[b]))},d.onkeypress=function(a){a=a||window.event;Uk(e,[a.which||a.keyCode])},!0}return!1};k.oc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;this.oa=eb(a,"ChipSet");tb(b,this,Vk,this.Nj);zb(b,this,Wk,this.Nj);this.Ta()};
|
||||
k.Zb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.le()};k.save=function(){var a=new gd(this),b=0,c=[];c[b++]=this.li;c[b++]=this.lk;c[b++]=this.af;c[b++]=this.Xg;c[b++]=this.be;c[b++]=this.Tc;c[b++]=this.hd;c[b++]=this.Ic;c[b++]=this.jk;c[b]=this.Nf;a.set(0,c);return a.data()};k.restore=function(a){return this.le(a[0])};
|
||||
k.le=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.li=a[b++];this.lk=a[b++];this.af=a[b++];this.Xg=a[b++];this.be=a[b++];this.Tc=a[b++];this.hd=a[b++];this.Ic=a[b++];this.jk=a[b++];this.Nf=a[b];return!0};function Uk(a,b){a.Nf=a.Nf.concat(b);Xk(a)}function Xk(a){0<a.Nf.length&&!(a.Ic&1)&&(a.li=a.Nf.shift(),a.Ic|=1);var b=-1;a.Ic&1&&a.Xg&1&&(b=4);0<=b?(a.be&=-8,a.be|=b,a.oa&&a.tg&&aj(a.oa,a.tg)):(a.be|=1,a.oa&&a.tg&&bj(a.oa,a.tg))}
|
||||
k.Dn=function(a,b){var c=this.Tc&128?this.af&255:this.li;this.ea(a,null,b,this.Tc&128?"DLL":"RBR",c);this.Ic&=-2;Xk(this);return c};k.on=function(a,b){var c=this.Tc&128?this.af>>8:this.Xg;this.ea(a,null,b,this.Tc&128?"DLM":"IER",c);return c};k.pn=function(a,b){var c=this.be;this.ea(a,null,b,"IIR",c);return c};k.qn=function(a,b){var c=this.Tc;this.ea(a,null,b,"LCR",c);return c};k.sn=function(a,b){var c=this.hd;this.ea(a,null,b,"MCR",c);return c};
|
||||
k.rn=function(a,b){var c=this.Ic;this.ea(a,null,b,"LSR",c);return c};k.yn=function(a,b){var c=this.jk;this.ea(a,null,b,"MSR",c);return c};k.Vo=function(a,b,c){this.ea(a,b,c,this.Tc&128?"DLL":"THR");this.Tc&128?this.af=this.af&-256|b:(this.lk=b,this.Ic&=-97,this.fe?(13!=b&&(8==b?this.fe.value=this.fe.value.slice(0,-1):(this.fe.value+=String.fromCharCode(b),this.fe.scrollTop=this.fe.scrollHeight)),a=!0):a=!1,a&&(this.Ic|=96))};
|
||||
k.Go=function(a,b,c){this.ea(a,b,c,this.Tc&128?"DLM":"IER");this.Tc&128?this.af=this.af&255|b<<8:this.Xg=b};k.Ho=function(a,b,c){this.ea(a,b,c,"LCR");this.Tc=b};
|
||||
k.Io=function(a,b,c){var d=this.hd;this.ea(a,b,c,"MCR");this.hd=b;this.me&&(d^b)&3&&(a=this.me,b=this.hd,(c=3==(b&3))?a.Yc||(d=!1,a.hd&2||(a.reset(),a.Ra("serial mouse reset"),d=!0),a.hd&1||(a.Ra("serial mouse ID requested"),d=!0),d&&(Uk(a.Zf,[77,77]),a.Ra("serial mouse ID sent")),Yk(a,a.bb),a.setActive(c)):a.Yc&&(a.Ra("serial mouse inactive"),Zk(a.bb),a.setActive(c)),a.hd=b)};k.Ra=function(a){this.fa&&E(this.fa,$k)&&this.fa.message(a)};
|
||||
k.ea=function(a,b,c,d,e){this.fa&&this.fa.ea(this,a,b,c,d,$k,e)};var Vk={0:Sk.prototype.Dn,1:Sk.prototype.on,2:Sk.prototype.pn,3:Sk.prototype.qn,4:Sk.prototype.sn,5:Sk.prototype.rn,6:Sk.prototype.yn},Wk={0:Sk.prototype.Vo,1:Sk.prototype.Go,3:Sk.prototype.Ho,4:Sk.prototype.Io};Ha(function(){for(var a=D(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new Sk(d);Za(d,c)}});
|
||||
function al(a){z.call(this,"Mouse",a,al);if(this.Ki=a.serial)this.Qj="SerialPort";this.setActive(!1);this.ph=!1;this.Ta()}A(z,al);k=al.prototype;k.oc=function(a,b,c,d){this.Ka=a;this.ra=b;this.T=c;this.fa=d;this.Xh=eb(this.Ka,"Video")};k.setActive=function(a){this.Yc=a};
|
||||
k.Zb=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.Qj&&!this.Zf){for(var c=null;(c=eb(this.Ka,this.Qj,c))&&(!c.hk||!(this.Zf=c.hk(this.Ki,this))););this.Zf?this.Xh&&(c=this.Xh,c.me=this,this.bb=c.bb):x(this.id+": "+this.Qj+" "+this.Ki+" unavailable")}this.Yc?Yk(this,this.bb):Zk(this.bb)}return!0};k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.le()};k.save=function(){var a=new gd(this);a.set(0,this.Vj());return a.data()};
|
||||
k.restore=function(a){return this.le(a[0])};k.le=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.setActive(a[b++]);this.Lg=a[b++];this.Mg=a[b++];this.bf=a[b++];this.cf=a[b++];this.lh=a[b++];this.mh=a[b++];this.hd=a[b];return!0};k.Vj=function(){var a=0,b=[];b[a++]=this.Yc;b[a++]=this.Lg;b[a++]=this.Mg;b[a++]=this.bf;b[a++]=this.cf;b[a++]=this.lh;b[a++]=this.mh;b[a]=this.hd;return b};k.Ag=function(a){this.ph=a};
|
||||
function Yk(a,b){b&&(a.zi||(b.addEventListener("mousemove",function(b){if(a.Yc&&a.T&&a.T.qa.Pb){if(0>a.Lg||0>a.Mg)a.Lg=b.clientX,a.Mg=b.clientY;a.ph?(a.bf=b.movementX||b.mozMovementX||b.webkitMovementX||0,a.cf=b.movementY||b.mozMovementY||b.webkitMovementY||0):(a.bf=b.clientX-a.Lg,a.cf=b.clientY-a.Mg);(a.bf||a.cf)&&bl(a,null,b.clientX,b.clientY);a.Lg=b.clientX;a.Mg=b.clientY}},!1),b.addEventListener("mousedown",function(b){cl(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){cl(a,b.button,
|
||||
!1)},!1),a.zi=!0),b.style.cursor="none")}function Zk(a){a&&(a.style.cursor="auto")}function cl(a,b,c){if(a.Yc&&a.T&&a.T.qa.Pb){var d;!(d=!1!==a.ph)&&(d=a.Xh)&&(d=a.Xh,d=d.Cm?d.uf(!0):!1);d||(a.ph=null);switch(b){case 0:a.lh!=c&&(a.lh=c,bl(a,"mouse button1 "+(c?"dn":"up")));break;case 2:a.mh!=c&&(a.mh=c,bl(a,"mouse button2 "+(c?"dn":"up")))}}}
|
||||
function bl(a,b,c,d){var e=64|(a.lh?32:0)|(a.mh?16:0)|(a.cf&192)>>4|(a.bf&192)>>6,f=a.bf&63,g=a.cf&63;a.Ra((b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+t(e)+","+t(f)+","+t(g)+"]");Uk(a.Zf,[e,f,g]);a.bf=a.cf=0}k.Ra=function(a){this.fa&&E(this.fa,dl)&&this.fa.message(a+" @"+ea(this.T.va,this.T.xa.sa))};Ha(function(){for(var a=D(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new al(d);Za(d,c)}});
|
||||
function el(a,b,c){z.call(this,"Disk",{id:a.Kk+".disk"+fl++},el);this.ia=a;this.Ka=a.Ka;this.fa=a.fa;this.Pa=b;this.qd=b.name;this.pf=b.pf;this.qh=this.Dd=!1;this.create(c,b.sb,b.tb,b.yb,b.jb);this.xe=[];this.Og=[];this.Rd=null;this.Ok=0;this.Fi=!1;this.Ta()}var fl=0;A(z,el);k=el.prototype;k.oc=function(a,b,c,d){this.fa=d};k.Zb=function(a,b){b||!this.qh||this.Dd||(this.Ta(!1),this.load(this.qd,this.Ve,null,this.Bm,this));return!0};k.Bm=function(){this.Ta(!0)};
|
||||
k.Yb=function(a,b){if(this.Dd){var c,d=0;if(this.Fi&&!ua("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=gl(this,!1);)if(d=c[0]){this.ia.Ja('Unable to save "'+this.qd+'" (error '+d+")");break}b&&this.Dd&&(c="action=close&volume="+this.Ve,c+="&machine="+this.ia.rf(),c+="&user="+this.ia.je(),sa(ta()+"/api/v1/disk?"+c,!0),this.Dd=!1);!d&&a&&this.ia.Ja(this.qd+" saved")}return!0};
|
||||
k.create=function(a,b,c,d,e){this.mode=a;this.sb=b;this.tb=c;this.yb=d;this.jb=e;this.ab=[];if("preload"!=this.mode){a=Array(this.sb);for(b=0;b<a.length;b++){c=Array(this.tb);for(d=0;d<c.length;d++){e=Array(this.yb);for(var f=1;f<=e.length;f++)e[f-1]=hl(null,b,d,f,this.jb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.ab=a}this.kf=null};
|
||||
k.load=function(a,b,c,d,e){var f=b;if(!this.Ne)if(this.qd=a,this.Ve=b,this.Ne=d,this.vm=e||this.ia,c){var g=this,h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=ba[c];if(d){g.sb=d[0];g.tb=d[1];g.yb=d[2];g.jb=512;b=g.jb>>2;var e=d=0,a=new DataView(a,0,c);g.ab=Array(g.sb);for(c=0;c<g.ab.length;c++)for(var f=g.ab[c]=Array(g.tb),y=0;y<f.length;y++)for(var B=f[y]=Array(g.yb),M=0;M<B.length;M++){for(var V=hl(null,c,y,M+1,g.jb,0),va=V.data,wa=0;wa<b;wa++,e+=4)var xb=va[wa]=a.getInt32(e,
|
||||
!0),d=d+xb&4294967295;V.zc=b;B[M]=V}g.kf=d;b=g}else g.Ja("Unrecognized diskette format ("+c+" bytes)");g.Ne&&(g.Ne.call(g.ia,g.Pa,b,g.qd,g.Ve),g.Ne=null)};h.readAsArrayBuffer(c)}else 0>b.indexOf("/api/v1/dump")&&(a=ha(b),"json"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=il(this,b),this.qh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):-1!==b.indexOf("/",b.length-1)&&(c="dir"),f=
|
||||
ta()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.pf?"":d)+"&format=json")),sa(f,!0,null,this,this.zm,b)};
|
||||
k.zm=function(a,b,c,d){var e=null;this.qf=!1;var f=0>c&&this.Ka&&!this.Ka.qa.Ob;if(this.qh)c?this.ia.Ja('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Dd=!0,e=this);else if(c)this.ia.Ja('Unable to load disk "'+this.qd+'" (error '+c+")",f);else try{if(0<fa(a,!0).toLowerCase().indexOf("-readonly"))this.qf=!0;else{var g=b.indexOf("\n");0<g&&1024>g&&0<b.substring(0,g).indexOf("write-protected")&&(this.qf=!0)}var h;h="<"==b.substr(0,1)?["Missing disk image: "+this.qd]:0>b.indexOf("0x")&&
|
||||
'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(h.length)if(1==h.length)x(h[0]);else{this.sb=h.length;this.tb=h[0].length;this.yb=h[0][0].length;var l=h[0][0][0];this.jb=l&&l.length||512;for(b=a=0;b<this.sb;b++)for(c=0;c<this.tb;c++)for(d=0;d<this.yb;d++)if(l=h[b][c][d]){var n=l.length;void 0===n&&(n=l.length=512);var n=n>>2,q=l.pattern;void 0===q&&(q=l.pattern=0);var r=l.data;if(void 0===r){var s=l.bytes;if(void 0!==s&&s.length){for(var f=
|
||||
n<<2,u=s.length;u<f;u++)s[u]=q;this.fill(l,s,0)}else r=[],q=l.pattern=q|q<<8|q<<16|q<<24,l.data=r;delete l.bytes}hl(l,b,c);for(f=0;f<r.length;f++)a=a+r[f]&4294967295}this.ab=h;this.kf=a;e=this}else x("Empty disk image: "+this.qd)}catch(y){x("Disk image error: "+y.message)}this.Ne&&(this.Ne.call(this.vm,this.Pa,e,this.qd,this.Ve),this.Ne=null)};function hl(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Lm=b;a.Nm=c;a.$c=a.zc=0;a.ob=!1;return a}
|
||||
k.$n=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],g=d[2],h=d[3];a=d[4];b=JSON.parse(b);for(var l=0;h--;){var n=this.seek(e,f,g,!0);if(!n)break;this.fill(n,b,l);l+=n.length;g++}}(d=d[5])&&d(c,a)};function il(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.sb+":"+a.tb+":"+a.yb+":"+a.jb;c+="&machine="+a.ia.rf();c+="&user="+a.ia.je();return ta()+"/api/v1/disk?"+c}
|
||||
function jl(a,b,c,d,e,f){if(a.Dd){var g;g="action=read&volume="+a.Ve;g+="&chs="+a.sb+":"+a.tb+":"+a.yb+":"+a.jb;g=g+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ia.rf());g+="&user="+a.ia.je();sa(ta()+"/api/v1/disk?"+g,!0,null,a,a.$n,[b,c,d,e,!0,f])}else f&&f(-1,!1)}function kl(a,b,c){b.ob=!0;var d=a.xe.indexOf(b);0<=d&&(a.xe.splice(d,1),a.Og.splice(d,1));a.xe.push(b);a.Og.push(oa());c&&ll(a)}
|
||||
function ll(a){if(a.xe.length){var b=a.Og[0]+2E3;a.Rd&&a.Ok<b&&(clearTimeout(a.Rd),a.Rd=null);if(!a.Rd){var c=oa(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.Rd=setTimeout(function(){gl(a,!0)},b);a.Ok=c+b}}else a.Rd&&(clearTimeout(a.Rd),a.Rd=null)}
|
||||
function gl(a,b){b&&(a.Rd=null);var c=a.xe[0];if(c){for(var d=c.Lm,e=c.Nm,c=c.sector,f=0,g=[],h=c-1;h<a.ab[d][e].length;h++){var l=a.ab[d][e][h];if(!l.ob)break;var n=a.xe.indexOf(l);a.xe.splice(n,1);a.Og.splice(n,1);g=g.concat(ml(l));l.ob=!1;f++}a.Dd?(h={},a.Fi=!0,h.action="write",h.volume=a.Ve,h.chs=a.sb+":"+a.tb+":"+a.yb+":"+a.jb,h.addr=d+":"+e+":"+c+":"+f,h.machine=a.ia.rf(),h.user=a.ia.je(),h.data=JSON.stringify(g),d=sa(ta()+"/api/v1/disk",b,h,a,a.fo,[d,e,c,f,b])):d=!1;return b||d}return!1}
|
||||
k.fo=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.Fi=!1;if(0<=a&&a<this.ab.length&&0<=b&&b<this.ab[a].length)for(e-=1;0<f--&&0<=e&&e<this.ab[a][b].length;e++){var g=this.ab[a][b][e];c?kl(this,g,!1):g.ob||(g.$c=g.zc=0)}d&&ll(this)};k.info=function(){return this.ab.length?[this.ab.length,this.ab[0].length,this.ab[0][0].length,this.ab[0][0][0].length]:[0,0,0,0]};
|
||||
function nl(a){a=JSON.stringify(a.ab);a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");return a=a.replace(/(sector|length|data|pattern):/gm,'"$1":')}
|
||||
k.seek=function(a,b,c,d,e){var f=null,g=this.Pa,h=this.ab[a];if(h){var l=h[b];if(!l&&g.Sf&&b<g.tb)for(l=h[b]=Array(g.ce),h=0;h<l.length;h++)l[h]=hl(null,a,b,h+1,g.eb,0);if(l){for(h=0;h<l.length;h++)if(l[h]&&l[h].sector==c){f=l[h];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++h<l.length;)null===l[h].pattern&&d++;jl(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&g.Sf&&9==g.Xa&&(f=l[h]=hl(null,a,b,g.Xa,g.eb,0))}}e&&e(f,!1);return f};
|
||||
k.fill=function(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e};function ml(a){var b=a.length,c=Array(b),d=0,b=b>>2,e=a.data;a=a.pattern;for(var f=0;f<b;f++){var g=f<e.length?e[f]:a;c[d++]=g&255;c[d++]=g>>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}function ol(a,b){var c=-1;if(b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c}
|
||||
k.write=function(a,b,c){if(this.qf)return!1;if(b<a.length){if(c!=ol(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.zc?f<a.$c?(a.zc+=a.$c-f,a.$c=f):f>=a.$c+a.zc&&(a.zc+=f-(a.$c+a.zc)+1):(a.$c=f,a.zc=1);d[f]=d[f]&~(255<<b)|c<<b;this.Dd&&kl(this,a,!0)}return!0}return null};
|
||||
k.save=function(){var a=0,b=[];b[a++]=[this.Ve,this.kf,this.sb,this.tb,this.yb,this.jb];if(!this.Dd&&!this.qf)for(var c=this.ab,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var g=c[d][e][f];if(g&&g.zc){for(var h=[],l=0,n=g.$c,q=g.$c+g.zc;n<q;)h[l++]=g.data[n++];b[a++]=[d,e,f,g.$c,h]}}return b};
|
||||
k.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.ab.length&&6<=e.length?this.create("local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.kf&&e[1]!=this.kf&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.kf+")",b=-1));for(this.ab.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],l=g[f++],n=g[f++];if(h>=this.ab.length||l>=this.ab[h].length||n>=this.ab[h][l].length){c="sector "+h+":"+l+":"+n+" out of range ("+
|
||||
b+" changes applied)";b=-1;break}if(this.qf){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.ab[h][l][n]){for(l=h.data.length;l<e;)h.data[l++]=h.pattern;l=0;h.$c=e;for(h.zc=f.length;e<g;)h.data[e++]=f[l++];b++}}}0>b&&this.ia.Ja("unable to restore disk '"+this.qd+": "+c);return b};k.Ra=function(a){this.fa&&E(this.fa,pl)&&this.fa.message(a)};
|
||||
function ql(a){z.call(this,"FDC",a,ql);this.dmaRead=this.ti;this.dmaWrite=this.ui;this.dmaFormat=this.wm;this.Je=null;if(a.autoMount&&(this.Je=a.autoMount,"string"==typeof this.Je))try{this.Je=eval("("+a.autoMount+")")}catch(b){x("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Je=null}this.tc=[]}A(z,ql);m={};aa={};
|
||||
var rl={3:{zd:3,ee:0,name:aa.Vp},4:{zd:2,ee:1,name:aa.Tp},5:{zd:9,ee:7,name:aa.gq},6:{zd:9,ee:7,name:aa.Np},7:{zd:2,ee:0,name:aa.Pp},8:{zd:1,ee:2,name:aa.Up},10:{zd:2,ee:7,name:aa.Op},13:{zd:6,ee:7,name:aa.zp},15:{zd:3,ee:0,name:aa.Sp}};k=ql.prototype;
|
||||
k.Fb=function(a,b,c,d){var e=this;switch(c){case "listDisks":return this.ya[c]=d,sl(this,"Local Disk","?"),sl(this,"Remote Disk","??"),d.onchange=function(){var a=e.ya.descDisk,b=d.options[d.selectedIndex];if(a&&b){var c={};if(b=b.getAttribute("data-value"))try{c=eval("({"+b+"})")}catch(l){x("FDC option error: "+l.message)}b=c.desc;void 0===b&&(b="");c=c.href;void 0!==c&&(b='<a href="'+c+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.ya[c]=d,d.onchange=
|
||||
function(){var a=da(d.value,10);null!=a&&tl(e,a)},!0;case "loadDrive":return this.ya[c]=d,d.onclick=function(){var a=e.ya.listDisks;a&&ul(e,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return window&&"FileReader"in window?(this.ya[c]=d,d.addEventListener("change",function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;ul(e,fa(b,!0),b,a)}return!1}):d.parentNode.removeChild(d),!0}return!1};
|
||||
k.oc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;this.Ka=a;this.oa=eb(a,"ChipSet");this.Hd();tb(b,this,vl);zb(b,this,wl);this.Rf()||this.Ta()};
|
||||
k.Zb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Ka.Di){this.tc=[];for(var c=0;c<this.Ea.length;c++)xl(this,c,!0);this.Rf(!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.Vi;d++){var e=window.document.createElement("option");e.value=d;e.innerHTML=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.Vi&&(c.value="0",tl(this,0))}}return!0};
|
||||
k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Hd()};k.save=function(){var a=new gd(this);a.set(0,this.Sj());return a.data()};k.restore=function(a){return this.Hd(a[0])};
|
||||
k.Hd=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.hb=a[b++];b++;this.Da=a[b++];this.cc=a[b++];this.ub=a[b++];this.fb=a[b++];this.Df=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.tc=c);void 0===this.Ea&&(this.Vi=4,this.oa&&(this.Vi=Fi(this.oa)),this.Ea=Array(4));for(c=0;c<this.Ea.length;c++){var f=this.Ea[c];if(void 0===f){var f=this.Ea[c]={},g;if(this.oa)a:{g=this.oa;if(c<Fi(g)){if(!g.Vd){g=360;break a}if(c<g.Vd.length){g=g.Vd[c];break a}}g=0}else g=0;switch(g){case 160:case 180:f.tb=
|
||||
1;default:f.sb=40;f.yb=9;break;case 720:f.sb=80;f.yb=9;break;case 1200:f.sb=80;f.yb=15;break;case 1440:f.sb=80,f.yb=18}}this.Li(f,c,e[c])||(d=!1)}this.te=a[b++]||0;this.Zl=a[b]||0;return d};k.Sj=function(){var a=0,b=[];b[a++]=this.hb;b[a++]=0;b[a++]=this.Da;b[a++]=this.cc;b[a++]=this.ub;b[a++]=this.fb;b[a++]=this.Df;b[a++]=this.Uj();for(var c=a++,d=0;d<this.Ea.length;d++){var e=this.Ea[d];e.za&&yl(this,e.We,e.za)}b[c]=this.tc;b[a++]=this.te;b[a]=this.Zl;return b};
|
||||
k.Li=function(a,b,c){var d=0,e=!0;a.hb=b;a.Bc=a.of=!1;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.sb||40,a.tb||c[3],a.yb||9,a.jb||512,c[1],a.Gh,a.rg,a.sg]);a.Za=c[d++];var f=c[d++];a.name=f[0];a.sb=f[1];a.tb=f[2];a.yb=f[3];a.jb=f[4];a.pf=f[5];(a.Gh=f[6])?(a.rg=f[7],a.sg=f[8]):(a.Gh=a.sb,a.rg=a.tb,a.sg=a.yb);a.Na=c[d++];a.ae=c[d++];a.nb=c[d++];a.ae=100<=a.ae?a.ae-100:a.ae-a.nb;a.Xa=c[d++];a.ce=c[d++];a.eb=c[d++];a.cb=c[d++];a.Sa=null;a.za||(a.We="");var g=c[d++];
|
||||
102==g&&(g=!1);"boolean"==typeof g?(f=c[d++],c=c[d],g?(d=this.Ea[b],xl(this,b,!0,!0),d.of=!0,b=new el(this,d,"preload"),this.vk(d,b,f,c,!0)):zl(this,b,f,c,!0)?a.za&&c&&Al(this,f,c,a.za):this.Ta(!1)):void 0!==g&&a.za&&0>a.za.restore(g)&&(e=!1);e&&a.za&&void 0!==a.cb&&(a.Sa=a.za.seek(a.nb,a.Na,a.Xa));return e};k.Uj=function(){for(var a=0,b=[],c=0;c<this.Ea.length;c++)b[a++]=this.Tj(this.Ea[c]);return b};
|
||||
k.Tj=function(a){var b=0,c=[];c[b++]=a.Za;c[b++]=[a.name,a.sb,a.tb,a.yb,a.jb,a.pf,a.Gh,a.rg,a.sg];c[b++]=a.Na;c[b++]=a.ae+100;c[b++]=a.nb;c[b++]=a.Xa;c[b++]=a.ce;c[b++]=a.eb;c[b++]=a.cb;c[b++]=a.of;c[b++]=a.dm;c[b]=a.We;return c};k.sk=function(a){var b;a=this.Ea[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};k.gm=function(a,b,c){if(a.za){var d=a.za.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.nb=Math.floor(b/f),b%=f,a.Na=Math.floor(b/e),a.Xa=b%e+1,a.eb=c*d[3],a.Za=0,!0}return!1};
|
||||
k.Rf=function(a){a||(this.Fe=0);if(this.Je)for(var b in this.Je){var c=this.Je[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.Ea.length){!zl(this,d,c.name,c.path,!0)&&a&&this.Ta(!1);continue}}this.Ja("Unrecognized auto-mount specification for drive "+b)}return!!this.Fe};
|
||||
function ul(a,b,c,d){var e,f=a.ya.listDrives;if(f&&!isNaN(e=parseInt(f.value,10))&&0<=e&&e<a.Ea.length)if(c)if("?"==c)a.Ja("Use 'Load' to load local disks");else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=fa(c);a.da("Attempting to load "+c+' as "'+b+'"')}for(a.da("loading disk "+c+"...");zl(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var f=a,g=c,h=void 0,h=0;h<f.tc.length;h++)if(f.tc[h][1]==
|
||||
g){f.tc.splice(h,1);break}xl(a,e,!1,!0)}}else xl(a,e);else a.Ja("Nothing to load")}function zl(a,b,c,d,e,f){var g=a.Ea[b];if(d&&g.We!=d){xl(a,b,e,!0);if(g.Bc)return a.Ja("Drive "+b+" busy"),!0;g.Bc=!0;e&&(g.Me=!0,a.Fe++,a.Ra("loading diskette '"+c+"'"));g.of=!!f;(new el(a,g,"preload")).load(c,d,f,a.vk);return!1}return!0}
|
||||
k.vk=function(a,b,c,d,e){var f;a.Bc=!1;b&&(f=b.info(),b&&f[0]>a.sb||f[1]>a.tb)&&(this.Ja('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.hb)),b=null);b?(a.za=b,a.dm=c,a.We=d,Al(this,c,d,b),f=b.info(),this.te|=128,this.Ja('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.hb),a.Me||e),a.Gh=f[0],a.rg=f[1],a.sg=f[2]):a.of=!1;a.Me&&(a.Me=!1,--this.Fe||this.Ta());tl(this,a.hb)};
|
||||
function sl(a,b,c){if(a=a.ya.listDisks){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=window.document.createElement("option");d.value=c;d.innerHTML=b;a.appendChild(d)}}function tl(a,b){if(0<=b&&b<a.Ea.length){var c=a.Ea[b],d=a.ya.listDisks,e=a.ya.listDrives;if(d&&e&&(e=parseInt(e.value,10),c=c.of?"?":c.We,!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}
|
||||
function xl(a,b,c,d){var e=a.Ea[b];e.za&&(yl(a,e.We,e.za),e.dm="",e.We="",e.za=null,e.of=!1,a.te|=128,d||a.Ja("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||tl(a,b))}function Al(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 yl(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.Bo=function(a,b,c){this.ea(a,b,c,"OUTPUT");b&4?this.Df&4||this.Df&8&&this.oa&&aj(this.oa,6):this.Hd();this.Df=b};
|
||||
k.jn=function(a,b){this.ea(a,null,b,"STATUS",this.Da);return this.Da};k.gn=function(a,b){var c=0;this.ub<this.fb&&(c=this.cc[this.ub]);this.Df&8&&this.oa&&bj(this.oa,6);this.ea(a,null,b,"DATA["+this.ub+"]",c);++this.ub>=this.fb&&(this.Da&=-81,this.ub=this.fb=0);return c};
|
||||
k.Ao=function(a,b,c){this.ea(a,b,c,"DATA["+this.fb+"]");this.fb<this.cc.length&&(this.cc[this.fb++]=b);a=this.cc[0]&31;if(void 0!==rl[a]&&this.fb>=rl[a].zd){c=!1;this.ub=0;a=this.Qa();var d,e,f,g,h;b=a&31;switch(b){case 3:this.Qa(m.Wp);this.Qa(m.Cp);this.Tb();break;case 4:e=this.Qa(m.Hf);this.hb=e&3;d=this.Ea[this.hb];this.Tb();this.bc((d.Za&4278190080)>>>24,m.Zp);break;case 5:case 6:e=this.Qa(m.Hf);c=e>>2&1;this.hb=e&3;d=this.Ea[this.hb];d.Na=c;e=d.nb=this.Qa(m.$j);f=this.Qa(m.ak);g=d.Xa=this.Qa(m.ck);
|
||||
h=this.Qa(m.Zh);d.eb=128<<h;d.ce=this.Qa(m.xp);this.Qa(m.pm);this.Qa(m.wp);6==b?this.vi(d):this.wi(d);Bl(this,d,a,c,e,f,g,h);c=!0;break;case 7:e=this.Qa(m.Hf);this.hb=e&3;d=this.Ea[this.hb];d.nb=d.ae=0;d.Za=268435488;this.Tb();c=!0;break;case 8:d=this.Ea[this.hb];d.Na=0;this.Tb();this.bc(d.hb|d.Na<<2|d.Za&255,m.rm);this.bc(d.nb,m.Lp);this.hb=this.hb+1&3;break;case 10:e=this.Qa(m.Hf);c=e>>2&1;this.hb=e&3;d=this.Ea[this.hb];e=d.nb;f=d.Na=c;g=d.Xa=1;h=0;d.Za=0;d.za&&(d.Sa=d.za.seek(d.nb,d.Na,d.Xa))?
|
||||
h=d.Sa.length:d.Za=72;Bl(this,d,a,c,e,f,g,h);c=!0;break;case 13:e=this.Qa(m.Hf);c=e>>2&1;this.hb=e&3;d=this.Ea[this.hb];e=d.nb;f=d.Na=c;g=1;h=this.Qa(m.Zh);d.eb=128<<h;d.ce=this.Qa(m.Rp);this.Qa(m.pm);d.ik=this.Qa(m.om);this.uk(d);Bl(this,d,a,c,e,f,g,h);c=!0;break;case 15:e=this.Qa(m.Hf),this.hb=e&3,d=this.Ea[this.hb],d.Na=e>>2&1,e=this.Qa(m.Ip),d.nb+=e-d.ae,0>d.nb&&(d.nb=0),d.nb>=d.sb&&(d.nb=d.sb-1),d.ae=e,d.Za=32,0==d.nb&&(d.Za|=268435456),this.Tb(),c=!0}0<this.fb&&(this.Da|=80);this.Df&8&&(!d||
|
||||
d.Za&8||!c||this.oa&&aj(this.oa,6))}};k.hn=function(a,b){var c=this.te;this.te&=-129;this.ea(a,null,b,"INPUT",c);return c};k.zo=function(a,b,c){this.ea(a,b,c,"CONTROL");this.Zl=b};function Bl(a,b,c,d,e,f,g,h){a.Tb();a.bc(b.hb|b.Na<<2|b.Za&255,m.rm);a.bc((b.Za&65280)>>>8,m.Xp);a.bc((b.Za&16711680)>>>16,m.Yp);var l=0;if(e!=b.nb||f!=b.Na)l=g=1;c&128&&(f^=l,d||(l=0));a.bc(e+l,m.$j);a.bc(f,m.ak);a.bc(g,m.ck);a.bc(h,m.Zh)}k.Qa=function(){var a=this.cc[this.ub];this.ub++;return a};
|
||||
k.Tb=function(){this.ub=this.fb=0};k.bc=function(a){this.cc[this.fb++]=a};k.ti=function(a,b,c){void 0===b||0>b?this.rc(a,c):c(-1,!1)};k.ui=function(a,b){return void 0!==b&&0<=b?this.Ec(a,b):-1};k.wm=function(a,b){return void 0!==b&&0<=b?this.Wj(a,b):-1};k.vi=function(a){a.Za=72;a.za&&(a.Sa=null,a.Za=0,this.oa&&(Ui(this.oa,2,this,"dmaRead",a),Oi(this.oa,2)))};k.wi=function(a){a.Za=72;a.za&&(a.za.qf?a.Za=576:(a.Sa=null,a.Za=0,this.oa&&(Ui(this.oa,2,this,"dmaWrite",a),Oi(this.oa,2))))};
|
||||
k.uk=function(a){a.Za=72;a.za&&(a.Sa=null,a.Za=0,this.oa&&(a.Ie=0,a.vc=Array(4),a.Sf=!0,a.Yf=0,Ui(this.oa,2,this,"dmaFormat",a),Oi(this.oa,2),a.Sf=!1))};k.rc=function(a,b){var c=-1;if(!a.Za&&a.za){do{if(a.Sa&&0<=(c=ol(a.Sa,a.cb++)))break;a.Sa=a.za.seek(a.nb,a.Na,a.Xa);if(!a.Sa){a.Za=1088;break}a.cb=0;this.Pf(a)}while(1)}b(c,!1)};
|
||||
k.Ec=function(a,b){if(a.Za||!a.za)return-1;do{if(a.Sa&&a.za.write(a.Sa,a.cb++,b))break;a.Sa=a.za.seek(a.nb,a.Na,a.Xa);if(!a.Sa){a.Za=8256;b=-1;break}a.cb=0;this.Pf(a)}while(1);return b};k.Pf=function(a){a.Xa++;a.Xa>=a.sg+1&&(a.Xa=1,a.Na++,a.Na>=a.rg&&(a.Na=0,a.nb++))};k.Wj=function(a,b){if(a.Za)return-1;a.vc[a.Ie++]=b;if(a.Ie==a.vc.length){a.nb=a.vc[0];a.Na=a.vc[1];a.Xa=a.vc[2];a.eb=128<<a.vc[3];for(var c=a.Ie=0;c<a.eb;c++)if(0>this.Ec(a,a.ik))return-1;a.Yf++}a.Yf>=a.ce&&(b=-1);return b};
|
||||
k.Ra=function(a,b){this.fa&&(null==b&&(b=vj),E(this.fa,b)&&this.fa.message(a))};k.ea=function(a,b,c,d,e){this.fa&&this.fa.ea(this,a,b,c,d,vj,e)};var vl={1012:ql.prototype.jn,1013:ql.prototype.gn,1015:ql.prototype.hn},wl={1010:ql.prototype.Bo,1013:ql.prototype.Ao,1015:ql.prototype.zo};Ha(function(){for(var a=D(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new ql(d);Za(d,c)}});
|
||||
function Y(a){z.call(this,"HDC",a,Y);this.dmaRead=this.ti;this.dmaWrite=this.ui;this.dmaWriteBuffer=this.xm;this.dmaWriteFormat=this.ym;this.ai=[];if(a.drives)try{this.ai=eval("("+a.drives+")")}catch(b){x("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.hg=(this.Le="at"==a.type)?1:0;this.Mm=this.Le?2:3}A(z,Y);
|
||||
var Cl=[{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.Fb=function(){return!1};k.oc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;this.Ka=a;this.oa=eb(a,"ChipSet");tb(b,this,this.Le?Dl:El);zb(b,this,this.Le?Fl:Gl);Xc(c,19,this,this.Mn);Xc(c,64,this,this.Nn);this.reset();this.Rf()||this.Ta()};
|
||||
k.Zb=function(a,b){if(!b)if(!a||!this.restore)this.Hd(),this.Ka.Di&&this.Rf(!0);else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};k.rf=function(){return this.Ka?this.Ka.rf():""};k.je=function(){return this.Ka?this.Ka.je():""};k.reset=function(){this.Hd(null,!0)};k.save=function(){var a=new gd(this);a.set(0,this.Sj());return a.data()};k.restore=function(a){return this.Hd(a[0])};
|
||||
k.Hd=function(a,b){var c=0,d=!0;if(this.Le)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.Nd=a[c++],this.cm=a[c++],this.ue=a[c++],this.Rh=a[c++],this.Ph=a[c++],this.Oh=a[c++],this.Cf=a[c++],this.Da=a[c++],this.Pj=a[c++],this.Qh=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.Bf=a[c++];this.Da=a[c++];this.cc=a[c++];this.ub=a[c++];this.fb=a[c++];this.bm=a[c++];this.am=a[c++];this.$l=a[c++];var e=a[c++];void 0!==e?this.sf=e:void 0===this.sf&&(this.sf=-1)}void 0===this.Ea&&(this.Ea=Array(this.ai.length));
|
||||
c=a[c];void 0===c&&(c=[]);for(e=0;e<this.Ea.length;e++){void 0===this.Ea[e]&&(this.Ea[e]={});var f=this.Ea[e];this.Li(e,f,this.ai[e],c[e],b)||(d=!1);null!=this.Bf&&1>=e&&(this.Bf|=(f.type&3)<<(1-e<<1))}return d};
|
||||
k.Sj=function(){var a=0,b=[];this.Le?(b[a++]=this.Nd,b[a++]=this.cm,b[a++]=this.ue,b[a++]=this.Rh,b[a++]=this.Ph,b[a++]=this.Oh,b[a++]=this.Cf,b[a++]=this.Da,b[a++]=this.Pj,b[a++]=this.Qh):(b[a++]=this.Bf,b[a++]=this.Da,b[a++]=this.cc,b[a++]=this.ub,b[a++]=this.fb,b[a++]=this.bm,b[a++]=this.am,b[a++]=this.$l,b[a++]=this.sf);b[a]=this.Uj();return b};
|
||||
k.Li=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.hb=a;b.errorCode=d[f++];b.im=d[f++];b.pf=d[f++];b.ef=d[f++];b.ff=d[f++];b.Na=d[f++];b.tb=d[f++];b.Sd=d[f++];b.Xa=d[f++];b.ce=d[f++];b.eb=d[f++];b.bh=this.Le?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.je()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Cl[this.hg][b.type])b.type=this.Mm;c=Cl[this.hg][b.type];
|
||||
b.yb=c[2]||17;b.jb=c[3]||512;if(e&&this.oa&&(e=this.oa,c=b.type,e.ta)){var h=e.ta[18],h=a?h&240|c:h&15|c<<4;e.ta&&(e.ta[18]=h,Ci(e))}void 0===b.za&&(b.za=null,this.Ja("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Hl(this,b);b.cb=d[f++];b.Sa=null;b.za&&(a=d[f],void 0!==a&&0>b.za.restore(a)&&(g=!1),g&&void 0!==b.cb&&(b.Sa=b.za.seek(b.Sd,b.Na,b.Xa+b.bh)));return g};k.Uj=function(){for(var a=0,b=[],c=0;c<this.Ea.length;c++)b[a++]=this.Tj(this.Ea[c]);return b};
|
||||
k.Tj=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.im;c[b++]=a.pf;c[b++]=a.ef;c[b++]=a.ff;c[b++]=a.Na;c[b++]=a.tb;c[b++]=a.Sd;c[b++]=a.Xa;c[b++]=a.ce;c[b++]=a.eb;c[b++]=a.cb;c[b]=a.za?a.za.save():null;return c};k.sk=function(a){var b;a=this.Ea[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
|
||||
function Hl(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.ef[2])?e=b.ef[0]<<8|b.ef[1]:c=b.type);null==c||d||(d=Cl[a.hg][c][1],e=Cl[a.hg][c][0]);d&&((c=Cl[a.hg][b.type])&&e!=c[0]&&d!=c[1]&&a.Ja("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.sb=e,b.tb=d,null==b.za&&(b.za=new el(a,b,b.mode)))}}
|
||||
k.gm=function(a,b,c){if(a.za){var d=a.za.info(),e=d[0];if(e){var f=d[2],g=d[1]*f;if(b+c<=e*g)return a.Sd=Math.floor(b/g),b%=g,a.Na=Math.floor(b/f),a.Xa=b%f,a.eb=c*d[3],a.errorCode=0,!0}}return!1};
|
||||
k.Rf=function(a){a||(this.Fe=0);for(var b=0;b<this.Ea.length;b++){var c=this.Ea[b];if(c.name&&c.path){if(!(a&&c.za&&c.za.qh)){var d;d=c.name;var c=c.path,e=this.Ea[b];e.Bc?(this.Ja("Drive "+b+" busy"),d=!0):(e.Bc=!0,e.Me=!0,this.Fe++,this.Ra("loading "+d),(e.za||new el(this,e,e.mode)).load(d,c,null,this.Am),d=!1);!d&&a&&this.Ta(!1)}}else a&&void 0!==c.type&&(c.za=null,Hl(this,c,c.type))}return!!this.Fe};
|
||||
k.Am=function(a,b,c){a.Bc=!1;(a.za=b)&&this.Ja('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.hb),a.Me);a.Me&&(a.Me=!1,--this.Fe||this.Ta())};k.Jn=function(a,b){var c=0;this.ub<this.fb&&(c=this.cc[this.ub]);this.oa&&bj(this.oa,5);this.Da&=-33;this.ea(a,null,b,"DATA["+this.ub+"]",c);++this.ub>=this.fb&&(this.ub=this.fb=0,this.Da&=-15);return c};
|
||||
k.Xo=function(a,b,c){this.ea(a,b,c,"DATA["+this.fb+"]");this.fb<this.cc.length&&(this.cc[this.fb++]=b);a=12!=this.cc[0]?6:this.cc.length;6==this.fb&&(this.Da&=-2);this.fb>=a&&(this.Da|=2,this.Da&=-2,Il(this))};k.Kn=function(a,b){var c=this.Da;this.ea(a,null,b,"STATUS",c);this.ub<this.fb&&(this.Da|=1);return c};k.$o=function(a,b,c){this.ea(a,b,c,"RESET");this.bm=b;this.oa&&bj(this.oa,5);this.Hd()};k.In=function(a,b){this.ea(a,null,b,"CONFIG",this.Bf);return this.Bf};
|
||||
k.Zo=function(a,b,c){this.ea(a,b,c,"PULSE");this.am=b;this.Da=13};k.Yo=function(a,b,c){this.ea(a,b,c,"PATTERN");this.$l=b};k.Kj=function(a,b,c){this.ea(a,b,c,"NOISE")};k.Um=function(a,b){var c=-1,d=!1;if(this.Pa&&(d=0<this.Pa.cb,c=this.rc(this.Pa),this.Pa.cb==this.Pa.jb))if(this.Pa.eb-=this.Pa.jb,this.ue=this.ue-1&255,this.Pa.eb>=this.Pa.jb){var e=this;this.rc(this.Pa,function(a){0<=a?Jl(e):(e.Da=1,e.Nd=16)},!1)}else this.Da=80;d||this.ea(a,null,b,"DATA",c);return c};
|
||||
k.no=function(a,b,c){this.Pa&&0!=this.Pa.cb||this.ea(a,b,c,"DATA");this.Pa&&this.Pa.eb>=this.Pa.jb&&(0>this.Ec(this.Pa,b)?(this.Da=1,this.Nd=16):this.Pa.cb==this.Pa.jb&&(this.Pa.eb-=this.Pa.jb,this.ue=this.ue-1&255,Jl(this),this.Pa.eb>=this.Pa.jb||(this.Da=80)))};k.Wm=function(a,b){var c=this.Nd;this.ea(a,null,b,"ERROR",c);return c};k.so=function(a,b,c){this.ea(a,b,c,"WPREC");this.cm=b};k.Xm=function(a,b){var c=this.ue;this.ea(a,null,b,"SECCNT",c);return c};
|
||||
k.qo=function(a,b,c){this.ea(a,b,c,"SECCNT");this.ue=b};k.Ym=function(a,b){var c=this.Rh;this.ea(a,null,b,"SECNUM",c);return c};k.ro=function(a,b,c){this.ea(a,b,c,"SECNUM");this.Rh=b};k.Tm=function(a,b){var c=this.Ph;this.ea(a,null,b,"CYLLO",c);return c};k.mo=function(a,b,c){this.ea(a,b,c,"CYLLO");this.Ph=b};k.Sm=function(a,b){var c=this.Oh;this.ea(a,null,b,"CYLHI",c);return c};k.lo=function(a,b,c){this.ea(a,b,c,"CYLHI");this.Oh=b};k.Vm=function(a,b){var c=this.Cf;this.ea(a,null,b,"DRVHD",c);return c};
|
||||
k.oo=function(a,b,c){this.ea(a,b,c,"DRVHD");this.Cf=b;this.Da=this.Ea[this.Cf&16?1:0]?this.Da|64:this.Da&-65};k.Zm=function(a,b){var c=this.Da;this.ea(a,null,b,"STATUS",c);return c};k.ko=function(a,b,c){this.ea(a,b,c,"COMMAND");this.Pj=b;this.oa&&bj(this.oa,14);Kl(this)};k.po=function(a,b,c){this.ea(a,b,c,"FDR");this.Qh&4&&!(b&4)&&(this.Nd=1);this.Qh=b};
|
||||
function Kl(a){var b=!1,c=a.Pj,d=a.Cf&16?1:0,e=a.Cf&15,f=a.Ph|(a.Oh&3)<<8,g=a.Rh,h=a.ue||256;a.Pa=null;a.Nd=0;a.Da=80;(d=a.Ea[d])?(d.Sd=f,d.Na=e,d.Xa=g,d.eb=h*d.jb,c=144<=c?c:c&240,d.Sa=null,d.errorCode=0,a.Pa=d):c=-1;switch(c&240){case 32:a.rc(d,function(b){0<=b&&a.oa?(Jl(a),a.Da=136):(a.Da=1,a.Nd=16)},!1);break;case 48:a.oa?(Jl(a),a.Da=136):(a.Da=1,a.Nd=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.Nd=1;b=!0;break;case 145:d.tb=e+1,d.yb=h,b=!0}b&&Jl(a)}
|
||||
function Jl(a){!a.oa||a.Qh&2||aj(a.oa,14)}
|
||||
function Il(a){a.ub=0;var b=a.Qa(),c=a.Qa(),d=c&32,e=d>>5,f=c&31,g=a.Qa(),h=a.Qa(),l=g<<2&768|h,n=g&63,q=a.Qa(),r=a.Qa(),s=a.Ea[e];s&&(s.Sd=l,s.Na=f,s.Xa=n,s.eb=q*s.jb);switch(b){case 3:a.Tb(s?s.errorCode:4);a.bc(c);a.bc(g);a.bc(h);a.bc(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Qa());)s&&c<s.ef.length&&(s.ef[c++]=b);s&&Hl(a,s);b=0;s||a.sf!=e||(a.sf=-1,b=2);a.Tb(b|d);b=-1;break;case 224:case 228:a.Tb(0|d),b=-1}if(0<=b)switch(void 0===s?b=-1:(s.errorCode=0,s.im=0),b){case 0:a.Tb(0|d);break;case 1:s.mq=
|
||||
r;a.Tb(0|d);break;case 5:a.Tb(0|d);break;case 8:a.vi(s,function(b){a.Tb(b|d)});break;case 10:a.wi(s,function(b){a.Tb(b|d)});break;case 15:Ll(a,s,function(b){a.Tb(b|d)});break;default:a.Tb(2|d)}}k.Qa=function(){var a=-1;this.ub<this.fb&&(a=this.cc[this.ub++]);return a};k.Tb=function(a){this.ub=this.fb=0;void 0!==a&&this.bc(a);this.oa&&aj(this.oa,5);this.Da|=32};k.bc=function(a){this.cc[this.fb++]=a};k.ti=function(a,b,c){void 0===b||0>b?this.rc(a,c):c(-1,!1)};
|
||||
k.ui=function(a,b){return void 0!==b&&0<=b?this.Ec(a,b):-1};k.xm=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.cb<a.ff.length?a.ff[a.cb++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.ym=function(a,b){return void 0!==b&&0<=b?this.Wj(a,b):-1};k.vi=function(a,b){a.errorCode=4;if(a.za&&(a.Sa=null,this.oa)){a.errorCode=0;Ui(this.oa,3,this,"dmaRead",a);Oi(this.oa,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
|
||||
k.wi=function(a,b){a.errorCode=4;if(a.za&&(a.Sa=null,this.oa)){a.errorCode=0;Ui(this.oa,3,this,"dmaWrite",a);Oi(this.oa,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 Ll(a,b,c){b.errorCode=4;b.ff&&b.ff.length==b.eb||(b.ff=Array(b.eb));b.cb=0;a.oa?(b.errorCode=0,Ui(a.oa,3,a,"dmaWriteBuffer",b),Oi(a.oa,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
|
||||
k.uk=function(a,b){a.errorCode=4;if(a.za&&(a.Sa=null,this.oa)){a.Ie=0;a.vc=Array(4);a.Sf=!0;a.Yf=0;a.errorCode=0;Ui(this.oa,3,this,"dmaWriteFormat",a);Oi(this.oa,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Sf=!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=ol(a.Sa,a.cb),a.cb+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;if(a.za)return a.za.seek(a.Sd,a.Na,a.Xa+a.bh,!1,function(c,h){(a.Sa=c)?(a.cb=0,f.Pf(a),d=ol(a.Sa,a.cb),a.cb+=e):a.errorCode=20;b(d,h)}),d;a.errorCode=20;b(d,!1)}return d};
|
||||
k.Ec=function(a,b){if(a.errorCode)return-1;do{if(a.Sa&&a.za.write(a.Sa,a.cb++,b))break;a.za&&a.za.seek(a.Sd,a.Na,a.Xa+a.bh,!0,function(b){a.Sa=b});if(!a.Sa){a.errorCode=20;b=-1;break}a.cb=0;this.Pf(a)}while(1);return b};k.Pf=function(a){a.Xa++;var b=1-a.bh;a.Xa>=a.yb+b&&(a.Xa=b,a.Na++,a.Na>=a.tb&&(a.Na=0,a.Sd++))};
|
||||
k.Wj=function(a,b){if(a.errorCode)return-1;a.vc[a.Ie++]=b;if(a.Ie==a.vc.length){a.Sd=a.vc[0];a.Na=a.vc[1];a.Xa=a.vc[2];a.eb=128<<a.vc[3];for(var c=a.Ie=0;c<a.eb;c++)if(0>this.Ec(a,a.ik))return-1;a.Yf++}a.Yf>=a.ce&&(b=-1);return b};k.Mn=function(){var a=this.T.K&255;!(this.T.H>>8)&&128<a&&(this.sf=a-128);return!0};k.Nn=function(){var a;(a=this.T.H>>8)||(a=!this.oa)||(a=!(this.oa.Ab[0].yd&64));return a?!0:!1};k.Ra=function(a,b){this.fa&&(null==b&&(b=Ml),E(this.fa,b)&&this.fa.message(a))};
|
||||
k.ea=function(a,b,c,d,e){this.fa&&this.fa.ea(this,a,b,c,d,Ml,e)};
|
||||
var El={800:Y.prototype.Jn,801:Y.prototype.Kn,802:Y.prototype.In},Dl={496:Y.prototype.Um,497:Y.prototype.Wm,498:Y.prototype.Xm,499:Y.prototype.Ym,500:Y.prototype.Tm,501:Y.prototype.Sm,502:Y.prototype.Vm,503:Y.prototype.Zm},Gl={800:Y.prototype.Xo,801:Y.prototype.$o,802:Y.prototype.Zo,803:Y.prototype.Yo,807:Y.prototype.Kj,811:Y.prototype.Kj,815:Y.prototype.Kj},Fl={496:Y.prototype.no,497:Y.prototype.so,498:Y.prototype.qo,499:Y.prototype.ro,500:Y.prototype.mo,501:Y.prototype.lo,502:Y.prototype.oo,503:Y.prototype.ko,
|
||||
1014:Y.prototype.po};Ha(function(){for(var a=D(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new Y(d);Za(d,c)}});
|
||||
function Nl(a){z.call(this,"Debugger",a,Nl);this.eh=this.ad=-1;this.Fc=[0,0];this.dk=[0,0];this.Mh=null;this.lf=!1;this.we=[0,0];this.uc=[];Ol(this);Pl(this);var b=a.messages;this.ei=[];this.jc=0;b=Ql(this,b);if(b.length)for(var c in Rl)0<=b.indexOf(c)&&(this.jc|=Rl[c],this.da(c+" messages enabled"));this.lb={AL:0,CL:0,DL:0,BL:0,AH:0,CH:0,DH:0,BH:0,AX:0,CX:0,DX:0,BX:0,SP:0,BP:0,SI:0,DI:0,ES:0,CS:0,SS:0,DS:0,IP:0};this.Rj=a.commands}
|
||||
var Db=1,Jj=2,P=4,Fd=8,pi=16,ri=32,sj=64,kj=128,hj=256,uj=512,wk=2048,vj=4096,Ml=8192,pl=16384,$k=32768,tj=65536,dl=262144,Kd=1048576,Zc=4194304,pj=16777216;A(z,Nl);
|
||||
var ti=26,Sl={16:wk,22:uj,28:pi,33:2097152,51:dl},Tl={"?":"help","a [#]":"assemble","b [#]":"breakpoint",c:"clear output","d [#]":"dump memory","e [#]":"edit memory",f:"frequencies","g [#]":"go [to #]","h [#]":"halt/history","i [#]":"input port #",l:"load sector(s)",m:"messages","o [#]":"output port #",p:"step over",r:"dump/edit registers","t [#]":"step instruction(s)","u [#]":"unassemble",x:"execution options",reset:"reset computer",ver:"display version"},Ul="DB AAA AAD AAM AAS ADC ADD AND ARPL AS: BOUND BSF BSR BT BTC BTR BTS CALL CBW CLC CLD CLI CLTS CMC CMP CMPSB CMPSW CS: CWD DAA DAS DEC DIV DS: ENTER ES: ESC FADD FBLD FBSTP FCOM FCOMP FDIV FDIVR FIADD FICOM FICOMP FIDIV FIDIVR FILD FIMUL FIST FISTP FISUB FISUBR FLD FLDCW FLDENV FMUL FNSAVE FNSTCW FNSTENV FNSTSW FRSTOR FS: FST FSTP FSUB FSUBR GBP GS: HLT IDIV IMUL IN INC INS INT INT3 INTO IRET JBE JC JCXZ JG JGE JL JLE JMP JNBE JNC JNO JNP JNS JNZ JO JP JS JZ LAHF LAR LDS LEA LEAVE LES LFS LGDT LGS LIDT LLDT LMSW LOADALL LOCK LODSB LODSW LOOP LOOPNZ LOOPZ LSL LSS LTR MOV MOVSB MOVSW MOVSX MOVZX MUL NEG NOP NOT OR OS: OUT OUTS POP POPA POPF PUSH PUSHA PUSHF RCL RCR REPNZ REPZ RET RETF ROL ROR SAHF SAR SBB SCASB SCASW SETBE SETC SETG SETGE SETL SETLE SETNBE SETNC SETNO SETNP SETNS SETNZ SETO SETP SETS SETZ SGDT SHL SHLD SHR SHRD SIDT SLDT SMSW SS: STC STD STI STOSB STOSW STR SUB TEST VERR VERW WAIT XCHG XLAT XOR".split(" "),
|
||||
Z="AL CL DL BL AH CH DH BH AX CX DX BX SP BP SI DI ES CS SS DS IP".split(" "),Vl="BX+SI BX+DI BP+SI BP+DI SI DI BP BX".split(" "),Rl={mem:Db,port:Jj,dma:P,pic:Fd,timer:pi,cmos:ri,rtc:sj,8042:kj,chipset:hj,kbd:uj,keys:1024,video:wk,fdc:vj,hdc:Ml,disk:pl,serial:$k,speaker:tj,state:131072,mouse:dl,computer:524288,cpu:Kd,dos:2097152,"int":Zc,log:pj,halt:268435456},$=[0,0],Wl=[205,12291],Xl=[[6,12417,4257],[6,12420,4260],[6,12449,4225],[6,12452,4228],[6,12385,4097],[6,14435,4100],[137,4211],[134,8307],
|
||||
function Zk(a){this.Jk=a.adapter;switch(this.Jk){case 1:this.Oj=1016;this.rg=4;break;case 2:this.Oj=760;this.rg=3;break;default:x("Unrecognized serial adapter #"+this.Jk);return}this.fe=null;z.call(this,"SerialPort",a,Zk);var b=a.binding,c;a=$k;b&&(void 0===c&&(c="Panel"),(c=Xa(c,this.id))&&(b=c.wa[b])&&this.Db(null,null,a,b))}A(z,Zk);var $k="buffer";k=Zk.prototype;k.hk=function(a,b){return a==this.yh?(this.me=b,this):null};
|
||||
k.Db=function(a,b,c,d){var e=this;switch(c){case $k:return this.wa[c]=this.fe=d,d.onkeydown=function(a){a=a||window.event;var b=a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),al(e,[b]))},d.onkeypress=function(a){a=a||window.event;al(e,[a.which||a.keyCode])},!0}return!1};k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;this.oa=eb(a,"ChipSet");tb(b,this,bl,this.Oj);zb(b,this,cl,this.Oj);this.Ua()};
|
||||
k.$b=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Zb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.le()};k.save=function(){var a=new gd(this),b=0,c=[];c[b++]=this.mi;c[b++]=this.lk;c[b++]=this.bf;c[b++]=this.Wg;c[b++]=this.be;c[b++]=this.Wc;c[b++]=this.kd;c[b++]=this.Lc;c[b++]=this.jk;c[b]=this.Of;a.set(0,c);return a.data()};k.restore=function(a){return this.le(a[0])};
|
||||
k.le=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.mi=a[b++];this.lk=a[b++];this.bf=a[b++];this.Wg=a[b++];this.be=a[b++];this.Wc=a[b++];this.kd=a[b++];this.Lc=a[b++];this.jk=a[b++];this.Of=a[b];return!0};function al(a,b){a.Of=a.Of.concat(b);dl(a)}function dl(a){0<a.Of.length&&!(a.Lc&1)&&(a.mi=a.Of.shift(),a.Lc|=1);var b=-1;a.Lc&1&&a.Wg&1&&(b=4);0<=b?(a.be&=-8,a.be|=b,a.oa&&a.rg&&ej(a.oa,a.rg)):(a.be|=1,a.oa&&a.rg&&fj(a.oa,a.rg))}
|
||||
k.En=function(a,b){var c=this.Wc&128?this.bf&255:this.mi;this.ea(a,null,b,this.Wc&128?"DLL":"RBR",c);this.Lc&=-2;dl(this);return c};k.pn=function(a,b){var c=this.Wc&128?this.bf>>8:this.Wg;this.ea(a,null,b,this.Wc&128?"DLM":"IER",c);return c};k.qn=function(a,b){var c=this.be;this.ea(a,null,b,"IIR",c);return c};k.rn=function(a,b){var c=this.Wc;this.ea(a,null,b,"LCR",c);return c};k.tn=function(a,b){var c=this.kd;this.ea(a,null,b,"MCR",c);return c};
|
||||
k.sn=function(a,b){var c=this.Lc;this.ea(a,null,b,"LSR",c);return c};k.zn=function(a,b){var c=this.jk;this.ea(a,null,b,"MSR",c);return c};k.Wo=function(a,b,c){this.ea(a,b,c,this.Wc&128?"DLL":"THR");this.Wc&128?this.bf=this.bf&-256|b:(this.lk=b,this.Lc&=-97,this.fe?(13!=b&&(8==b?this.fe.value=this.fe.value.slice(0,-1):(this.fe.value+=String.fromCharCode(b),this.fe.scrollTop=this.fe.scrollHeight)),a=!0):a=!1,a&&(this.Lc|=96))};
|
||||
k.Ho=function(a,b,c){this.ea(a,b,c,this.Wc&128?"DLM":"IER");this.Wc&128?this.bf=this.bf&255|b<<8:this.Wg=b};k.Io=function(a,b,c){this.ea(a,b,c,"LCR");this.Wc=b};
|
||||
k.Jo=function(a,b,c){var d=this.kd;this.ea(a,b,c,"MCR");this.kd=b;this.me&&(d^b)&3&&(a=this.me,b=this.kd,(c=3==(b&3))?a.$c||(d=!1,a.kd&2||(a.reset(),a.Sa("serial mouse reset"),d=!0),a.kd&1||(a.Sa("serial mouse ID requested"),d=!0),d&&(al(a.Yf,[77,77]),a.Sa("serial mouse ID sent")),el(a,a.fb),a.setActive(c)):a.$c&&(a.Sa("serial mouse inactive"),fl(a.fb),a.setActive(c)),a.kd=b)};k.Sa=function(a){this.fa&&E(this.fa,gl)&&this.fa.message(a)};
|
||||
k.ea=function(a,b,c,d,e){this.fa&&this.fa.ea(this,a,b,c,d,gl,e)};var bl={0:Zk.prototype.En,1:Zk.prototype.pn,2:Zk.prototype.qn,3:Zk.prototype.rn,4:Zk.prototype.tn,5:Zk.prototype.sn,6:Zk.prototype.zn},cl={0:Zk.prototype.Wo,1:Zk.prototype.Ho,3:Zk.prototype.Io,4:Zk.prototype.Jo};Ha(function(){for(var a=D(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new Zk(d);Za(d,c)}});
|
||||
function hl(a){z.call(this,"Mouse",a,hl);if(this.Li=a.serial)this.Rj="SerialPort";this.setActive(!1);this.qh=!1;this.Ua()}A(z,hl);k=hl.prototype;k.pc=function(a,b,c,d){this.Ka=a;this.ra=b;this.T=c;this.fa=d;this.Yh=eb(this.Ka,"Video")};k.setActive=function(a){this.$c=a};
|
||||
k.$b=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.Rj&&!this.Yf){for(var c=null;(c=eb(this.Ka,this.Rj,c))&&(!c.hk||!(this.Yf=c.hk(this.Li,this))););this.Yf?this.Yh&&(c=this.Yh,c.me=this,this.fb=c.fb):x(this.id+": "+this.Rj+" "+this.Li+" unavailable")}this.$c?el(this,this.fb):fl(this.fb)}return!0};k.Zb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.le()};k.save=function(){var a=new gd(this);a.set(0,this.Wj());return a.data()};
|
||||
k.restore=function(a){return this.le(a[0])};k.le=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.setActive(a[b++]);this.Jg=a[b++];this.Kg=a[b++];this.cf=a[b++];this.df=a[b++];this.mh=a[b++];this.nh=a[b++];this.kd=a[b];return!0};k.Wj=function(){var a=0,b=[];b[a++]=this.$c;b[a++]=this.Jg;b[a++]=this.Kg;b[a++]=this.cf;b[a++]=this.df;b[a++]=this.mh;b[a++]=this.nh;b[a]=this.kd;return b};k.yg=function(a){this.qh=a};
|
||||
function el(a,b){b&&(a.Ai||(b.addEventListener("mousemove",function(b){if(a.$c&&a.T&&a.T.qa.Rb){if(0>a.Jg||0>a.Kg)a.Jg=b.clientX,a.Kg=b.clientY;a.qh?(a.cf=b.movementX||b.mozMovementX||b.webkitMovementX||0,a.df=b.movementY||b.mozMovementY||b.webkitMovementY||0):(a.cf=b.clientX-a.Jg,a.df=b.clientY-a.Kg);(a.cf||a.df)&&il(a,null,b.clientX,b.clientY);a.Jg=b.clientX;a.Kg=b.clientY}},!1),b.addEventListener("mousedown",function(b){jl(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){jl(a,b.button,
|
||||
!1)},!1),a.Ai=!0),b.style.cursor="none")}function fl(a){a&&(a.style.cursor="auto")}function jl(a,b,c){if(a.$c&&a.T&&a.T.qa.Rb){var d;!(d=!1!==a.qh)&&(d=a.Yh)&&(d=a.Yh,d=d.Dm?d.vf(!0):!1);d||(a.qh=null);switch(b){case 0:a.mh!=c&&(a.mh=c,il(a,"mouse button1 "+(c?"dn":"up")));break;case 2:a.nh!=c&&(a.nh=c,il(a,"mouse button2 "+(c?"dn":"up")))}}}
|
||||
function il(a,b,c,d){var e=64|(a.mh?32:0)|(a.nh?16:0)|(a.df&192)>>4|(a.cf&192)>>6,f=a.cf&63,g=a.df&63;a.Sa((b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+t(e)+","+t(f)+","+t(g)+"]");al(a.Yf,[e,f,g]);a.cf=a.df=0}k.Sa=function(a){this.fa&&E(this.fa,kl)&&this.fa.message(a+" @"+ea(this.T.va,this.T.ya.sa))};Ha(function(){for(var a=D(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new hl(d);Za(d,c)}});
|
||||
function ll(a,b,c){z.call(this,"Disk",{id:a.Lk+".disk"+ml++},ll);this.ia=a;this.Ka=a.Ka;this.fa=a.fa;this.Pa=b;this.sd=b.name;this.qf=b.qf;this.rh=this.Ed=!1;this.create(c,b.wb,b.xb,b.Bb,b.nb);this.xe=[];this.Mg=[];this.Rd=null;this.Pk=0;this.Gi=!1;this.Ua()}var ml=0;A(z,ll);k=ll.prototype;k.pc=function(a,b,c,d){this.fa=d};k.$b=function(a,b){b||!this.rh||this.Ed||(this.Ua(!1),this.load(this.sd,this.We,null,this.Cm,this));return!0};k.Cm=function(){this.Ua(!0)};
|
||||
k.Zb=function(a,b){if(this.Ed){var c,d=0;if(this.Gi&&!ua("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=nl(this,!1);)if(d=c[0]){this.ia.Ja('Unable to save "'+this.sd+'" (error '+d+")");break}b&&this.Ed&&(c="action=close&volume="+this.We,c+="&machine="+this.ia.sf(),c+="&user="+this.ia.je(),sa(ta()+"/api/v1/disk?"+c,!0),this.Ed=!1);!d&&a&&this.ia.Ja(this.sd+" saved")}return!0};
|
||||
k.create=function(a,b,c,d,e){this.mode=a;this.wb=b;this.xb=c;this.Bb=d;this.nb=e;this.cb=[];if("preload"!=this.mode){a=Array(this.wb);for(b=0;b<a.length;b++){c=Array(this.xb);for(d=0;d<c.length;d++){e=Array(this.Bb);for(var f=1;f<=e.length;f++)e[f-1]=ol(null,b,d,f,this.nb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.cb=a}this.lf=null};
|
||||
k.load=function(a,b,c,d,e){var f=b;if(!this.Oe)if(this.sd=a,this.We=b,this.Oe=d,this.wm=e||this.ia,c){var g=this,h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=ba[c];if(d){g.wb=d[0];g.xb=d[1];g.Bb=d[2];g.nb=512;b=g.nb>>2;var e=d=0,a=new DataView(a,0,c);g.cb=Array(g.wb);for(c=0;c<g.cb.length;c++)for(var f=g.cb[c]=Array(g.xb),y=0;y<f.length;y++)for(var B=f[y]=Array(g.Bb),M=0;M<B.length;M++){for(var V=ol(null,c,y,M+1,g.nb,0),va=V.data,wa=0;wa<b;wa++,e+=4)var xb=va[wa]=a.getInt32(e,
|
||||
!0),d=d+xb&4294967295;V.Bc=b;B[M]=V}g.lf=d;b=g}else g.Ja("Unrecognized diskette format ("+c+" bytes)");g.Oe&&(g.Oe.call(g.ia,g.Pa,b,g.sd,g.We),g.Oe=null)};h.readAsArrayBuffer(c)}else 0>b.indexOf("/api/v1/dump")&&(a=ha(b),"json"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=pl(this,b),this.rh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"):-1!==b.indexOf("/",b.length-1)&&(c="dir"),f=
|
||||
ta()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.qf?"":d)+"&format=json")),sa(f,!0,null,this,this.Am,b)};
|
||||
k.Am=function(a,b,c,d){var e=null;this.rf=!1;var f=0>c&&this.Ka&&!this.Ka.qa.Qb;if(this.rh)c?this.ia.Ja('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Ed=!0,e=this);else if(c)this.ia.Ja('Unable to load disk "'+this.sd+'" (error '+c+")",f);else try{if(0<fa(a,!0).toLowerCase().indexOf("-readonly"))this.rf=!0;else{var g=b.indexOf("\n");0<g&&1024>g&&0<b.substring(0,g).indexOf("write-protected")&&(this.rf=!0)}var h;h="<"==b.substr(0,1)?["Missing disk image: "+this.sd]:0>b.indexOf("0x")&&
|
||||
'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(h.length)if(1==h.length)x(h[0]);else{this.wb=h.length;this.xb=h[0].length;this.Bb=h[0][0].length;var l=h[0][0][0];this.nb=l&&l.length||512;for(b=a=0;b<this.wb;b++)for(c=0;c<this.xb;c++)for(d=0;d<this.Bb;d++)if(l=h[b][c][d]){var n=l.length;void 0===n&&(n=l.length=512);var n=n>>2,q=l.pattern;void 0===q&&(q=l.pattern=0);var r=l.data;if(void 0===r){var s=l.bytes;if(void 0!==s&&s.length){for(var f=
|
||||
n<<2,u=s.length;u<f;u++)s[u]=q;this.fill(l,s,0)}else r=[],q=l.pattern=q|q<<8|q<<16|q<<24,l.data=r;delete l.bytes}ol(l,b,c);for(f=0;f<r.length;f++)a=a+r[f]&4294967295}this.cb=h;this.lf=a;e=this}else x("Empty disk image: "+this.sd)}catch(y){x("Disk image error: "+y.message)}this.Oe&&(this.Oe.call(this.wm,this.Pa,e,this.sd,this.We),this.Oe=null)};function ol(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Mm=b;a.Om=c;a.bd=a.Bc=0;a.sb=!1;return a}
|
||||
k.ao=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],g=d[2],h=d[3];a=d[4];b=JSON.parse(b);for(var l=0;h--;){var n=this.seek(e,f,g,!0);if(!n)break;this.fill(n,b,l);l+=n.length;g++}}(d=d[5])&&d(c,a)};function pl(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.wb+":"+a.xb+":"+a.Bb+":"+a.nb;c+="&machine="+a.ia.sf();c+="&user="+a.ia.je();return ta()+"/api/v1/disk?"+c}
|
||||
function ql(a,b,c,d,e,f){if(a.Ed){var g;g="action=read&volume="+a.We;g+="&chs="+a.wb+":"+a.xb+":"+a.Bb+":"+a.nb;g=g+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ia.sf());g+="&user="+a.ia.je();sa(ta()+"/api/v1/disk?"+g,!0,null,a,a.ao,[b,c,d,e,!0,f])}else f&&f(-1,!1)}function rl(a,b,c){b.sb=!0;var d=a.xe.indexOf(b);0<=d&&(a.xe.splice(d,1),a.Mg.splice(d,1));a.xe.push(b);a.Mg.push(oa());c&&sl(a)}
|
||||
function sl(a){if(a.xe.length){var b=a.Mg[0]+2E3;a.Rd&&a.Pk<b&&(clearTimeout(a.Rd),a.Rd=null);if(!a.Rd){var c=oa(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.Rd=setTimeout(function(){nl(a,!0)},b);a.Pk=c+b}}else a.Rd&&(clearTimeout(a.Rd),a.Rd=null)}
|
||||
function nl(a,b){b&&(a.Rd=null);var c=a.xe[0];if(c){for(var d=c.Mm,e=c.Om,c=c.sector,f=0,g=[],h=c-1;h<a.cb[d][e].length;h++){var l=a.cb[d][e][h];if(!l.sb)break;var n=a.xe.indexOf(l);a.xe.splice(n,1);a.Mg.splice(n,1);g=g.concat(tl(l));l.sb=!1;f++}a.Ed?(h={},a.Gi=!0,h.action="write",h.volume=a.We,h.chs=a.wb+":"+a.xb+":"+a.Bb+":"+a.nb,h.addr=d+":"+e+":"+c+":"+f,h.machine=a.ia.sf(),h.user=a.ia.je(),h.data=JSON.stringify(g),d=sa(ta()+"/api/v1/disk",b,h,a,a.ho,[d,e,c,f,b])):d=!1;return b||d}return!1}
|
||||
k.ho=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.Gi=!1;if(0<=a&&a<this.cb.length&&0<=b&&b<this.cb[a].length)for(e-=1;0<f--&&0<=e&&e<this.cb[a][b].length;e++){var g=this.cb[a][b][e];c?rl(this,g,!1):g.sb||(g.bd=g.Bc=0)}d&&sl(this)};k.info=function(){return this.cb.length?[this.cb.length,this.cb[0].length,this.cb[0][0].length,this.cb[0][0][0].length]:[0,0,0,0]};
|
||||
function ul(a){a=JSON.stringify(a.cb);a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");return a=a.replace(/(sector|length|data|pattern):/gm,'"$1":')}
|
||||
k.seek=function(a,b,c,d,e){var f=null,g=this.Pa,h=this.cb[a];if(h){var l=h[b];if(!l&&g.Tf&&b<g.xb)for(l=h[b]=Array(g.ce),h=0;h<l.length;h++)l[h]=ol(null,a,b,h+1,g.hb,0);if(l){for(h=0;h<l.length;h++)if(l[h]&&l[h].sector==c){f=l[h];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++h<l.length;)null===l[h].pattern&&d++;ql(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&g.Tf&&9==g.Xa&&(f=l[h]=ol(null,a,b,g.Xa,g.hb,0))}}e&&e(f,!1);return f};
|
||||
k.fill=function(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e};function tl(a){var b=a.length,c=Array(b),d=0,b=b>>2,e=a.data;a=a.pattern;for(var f=0;f<b;f++){var g=f<e.length?e[f]:a;c[d++]=g&255;c[d++]=g>>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}function vl(a,b){var c=-1;if(b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c}
|
||||
k.write=function(a,b,c){if(this.rf)return!1;if(b<a.length){if(c!=vl(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Bc?f<a.bd?(a.Bc+=a.bd-f,a.bd=f):f>=a.bd+a.Bc&&(a.Bc+=f-(a.bd+a.Bc)+1):(a.bd=f,a.Bc=1);d[f]=d[f]&~(255<<b)|c<<b;this.Ed&&rl(this,a,!0)}return!0}return null};
|
||||
k.save=function(){var a=0,b=[];b[a++]=[this.We,this.lf,this.wb,this.xb,this.Bb,this.nb];if(!this.Ed&&!this.rf)for(var c=this.cb,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var g=c[d][e][f];if(g&&g.Bc){for(var h=[],l=0,n=g.bd,q=g.bd+g.Bc;n<q;)h[l++]=g.data[n++];b[a++]=[d,e,f,g.bd,h]}}return b};
|
||||
k.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.cb.length&&6<=e.length?this.create("local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.lf&&e[1]!=this.lf&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.lf+")",b=-1));for(this.cb.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],l=g[f++],n=g[f++];if(h>=this.cb.length||l>=this.cb[h].length||n>=this.cb[h][l].length){c="sector "+h+":"+l+":"+n+" out of range ("+
|
||||
b+" changes applied)";b=-1;break}if(this.rf){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.cb[h][l][n]){for(l=h.data.length;l<e;)h.data[l++]=h.pattern;l=0;h.bd=e;for(h.Bc=f.length;e<g;)h.data[e++]=f[l++];b++}}}0>b&&this.ia.Ja("unable to restore disk '"+this.sd+": "+c);return b};k.Sa=function(a){this.fa&&E(this.fa,wl)&&this.fa.message(a)};
|
||||
function xl(a){z.call(this,"FDC",a,xl);this.dmaRead=this.ui;this.dmaWrite=this.vi;this.dmaFormat=this.xm;this.Je=null;if(a.autoMount&&(this.Je=a.autoMount,"string"==typeof this.Je))try{this.Je=eval("("+a.autoMount+")")}catch(b){x("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Je=null}this.uc=[];this.Ck=!1}A(z,xl);m={};aa={};
|
||||
var yl={3:{Ad:3,ee:0,name:aa.Xp},4:{Ad:2,ee:1,name:aa.Vp},5:{Ad:9,ee:7,name:aa.iq},6:{Ad:9,ee:7,name:aa.Pp},7:{Ad:2,ee:0,name:aa.Rp},8:{Ad:1,ee:2,name:aa.Wp},10:{Ad:2,ee:7,name:aa.Qp},13:{Ad:6,ee:7,name:aa.Bp},15:{Ad:3,ee:0,name:aa.Up}};k=xl.prototype;
|
||||
k.Db=function(a,b,c,d){var e=this;switch(c){case "listDisks":return this.wa[c]=d,d.onchange=function(){var a=e.wa.descDisk,b=d.options[d.selectedIndex];if(a&&b){var c={};if(b=b.getAttribute("data-value"))try{c=eval("({"+b+"})")}catch(l){x("FDC option error: "+l.message)}b=c.desc;void 0===b&&(b="");c=c.href;void 0!==c&&(b='<a href="'+c+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.wa[c]=d,d.onchange=function(){var a=da(d.value,10);null!=a&&zl(e,a)},
|
||||
!0;case "loadDrive":return this.wa[c]=d,d.onclick=function(){var a=e.wa.listDisks;a&&Al(e,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return window&&"FileReader"in window?(this.Ck=!0,this.wa[c]=d,d.addEventListener("change",function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Al(e,fa(b,!0),b,a)}return!1}):d.parentNode.removeChild(d),!0}return!1};
|
||||
k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;this.Ka=a;this.oa=eb(a,"ChipSet");this.Id();tb(b,this,Bl);zb(b,this,Cl);this.Ck&&Dl(this,"Local Disk","?");Dl(this,"Remote Disk","??");this.Sf()||this.Ua()};
|
||||
k.$b=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Ka.Ei){this.uc=[];for(var c=0;c<this.Ea.length;c++)El(this,c,!0);this.Sf(!0)}}else if(!this.restore(a))return!1;if(c=this.wa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.innerHTML="";for(var d=0;d<this.Wi;d++){var e=window.document.createElement("option");e.value=d;e.innerHTML=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.Wi&&(c.value="0",zl(this,0))}}return!0};
|
||||
k.Zb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Id()};k.save=function(){var a=new gd(this);a.set(0,this.Tj());return a.data()};k.restore=function(a){return this.Id(a[0])};
|
||||
k.Id=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.kb=a[b++];b++;this.Da=a[b++];this.dc=a[b++];this.yb=a[b++];this.ib=a[b++];this.Ef=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.uc=c);void 0===this.Ea&&(this.Wi=4,this.oa&&(this.Wi=Ji(this.oa)),this.Ea=Array(4));for(c=0;c<this.Ea.length;c++){var f=this.Ea[c];if(void 0===f){var f=this.Ea[c]={},g;if(this.oa)a:{g=this.oa;if(c<Ji(g)){if(!g.Vd){g=360;break a}if(c<g.Vd.length){g=g.Vd[c];break a}}g=0}else g=0;switch(g){case 160:case 180:f.xb=
|
||||
1;default:f.wb=40;f.Bb=9;break;case 720:f.wb=80;f.Bb=9;break;case 1200:f.wb=80;f.Bb=15;break;case 1440:f.wb=80,f.Bb=18}}this.Mi(f,c,e[c])||(d=!1)}this.te=a[b++]||0;this.$l=a[b]||0;return d};k.Tj=function(){var a=0,b=[];b[a++]=this.kb;b[a++]=0;b[a++]=this.Da;b[a++]=this.dc;b[a++]=this.yb;b[a++]=this.ib;b[a++]=this.Ef;b[a++]=this.Vj();for(var c=a++,d=0;d<this.Ea.length;d++){var e=this.Ea[d];e.za&&Fl(this,e.Xe,e.za)}b[c]=this.uc;b[a++]=this.te;b[a]=this.$l;return b};
|
||||
k.Mi=function(a,b,c){var d=0,e=!0;a.kb=b;a.Ec=a.pf=!1;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.wb||40,a.xb||c[3],a.Bb||9,a.nb||512,c[1],a.Hh,a.pg,a.qg]);a.$a=c[d++];var f=c[d++];a.name=f[0];a.wb=f[1];a.xb=f[2];a.Bb=f[3];a.nb=f[4];a.qf=f[5];(a.Hh=f[6])?(a.pg=f[7],a.qg=f[8]):(a.Hh=a.wb,a.pg=a.xb,a.qg=a.Bb);a.Na=c[d++];a.ae=c[d++];a.rb=c[d++];a.ae=100<=a.ae?a.ae-100:a.ae-a.rb;a.Xa=c[d++];a.ce=c[d++];a.hb=c[d++];a.gb=c[d++];a.Ta=null;a.za||(a.Xe="");var g=c[d++];
|
||||
102==g&&(g=!1);"boolean"==typeof g?(f=c[d++],c=c[d],g?(d=this.Ea[b],El(this,b,!0,!0),d.pf=!0,b=new ll(this,d,"preload"),this.vk(d,b,f,c,!0)):Gl(this,b,f,c,!0)?a.za&&c&&Hl(this,f,c,a.za):this.Ua(!1)):void 0!==g&&a.za&&0>a.za.restore(g)&&(e=!1);e&&a.za&&void 0!==a.gb&&(a.Ta=a.za.seek(a.rb,a.Na,a.Xa));return e};k.Vj=function(){for(var a=0,b=[],c=0;c<this.Ea.length;c++)b[a++]=this.Uj(this.Ea[c]);return b};
|
||||
k.Uj=function(a){var b=0,c=[];c[b++]=a.$a;c[b++]=[a.name,a.wb,a.xb,a.Bb,a.nb,a.qf,a.Hh,a.pg,a.qg];c[b++]=a.Na;c[b++]=a.ae+100;c[b++]=a.rb;c[b++]=a.Xa;c[b++]=a.ce;c[b++]=a.hb;c[b++]=a.gb;c[b++]=a.pf;c[b++]=a.em;c[b]=a.Xe;return c};k.sk=function(a){var b;a=this.Ea[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};k.hm=function(a,b,c){if(a.za){var d=a.za.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.rb=Math.floor(b/f),b%=f,a.Na=Math.floor(b/e),a.Xa=b%e+1,a.hb=c*d[3],a.$a=0,!0}return!1};
|
||||
k.Sf=function(a){a||(this.Fe=0);if(this.Je)for(var b in this.Je){var c=this.Je[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.Ea.length){!Gl(this,d,c.name,c.path,!0)&&a&&this.Ua(!1);continue}}this.Ja("Unrecognized auto-mount specification for drive "+b)}return!!this.Fe};
|
||||
function Al(a,b,c,d){var e,f=a.wa.listDrives;if(f&&!isNaN(e=parseInt(f.value,10))&&0<=e&&e<a.Ea.length)if(c)if("?"==c)a.Ja('Use "Choose File" and "Load" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=fa(c);a.da("Attempting to load "+c+' as "'+b+'"')}for(a.da("loading disk "+c+"...");Gl(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var f=
|
||||
a,g=c,h=void 0,h=0;h<f.uc.length;h++)if(f.uc[h][1]==g){f.uc.splice(h,1);break}El(a,e,!1,!0)}}else El(a,e);else a.Ja("Nothing to load")}function Gl(a,b,c,d,e,f){var g=a.Ea[b];if(d&&g.Xe!=d){El(a,b,e,!0);if(g.Ec)return a.Ja("Drive "+b+" busy"),!0;g.Ec=!0;e&&(g.Ne=!0,a.Fe++,a.Sa("loading diskette '"+c+"'"));g.pf=!!f;(new ll(a,g,"preload")).load(c,d,f,a.vk);return!1}return!0}
|
||||
k.vk=function(a,b,c,d,e){var f;a.Ec=!1;b&&(f=b.info(),b&&f[0]>a.wb||f[1]>a.xb)&&(this.Ja('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.kb)),b=null);b?(a.za=b,a.em=c,a.Xe=d,Hl(this,c,d,b),f=b.info(),this.te|=128,this.Ja('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.kb),a.Ne||e),a.Hh=f[0],a.pg=f[1],a.qg=f[2]):a.pf=!1;a.Ne&&(a.Ne=!1,--this.Fe||this.Ua());zl(this,a.kb)};
|
||||
function Dl(a,b,c){if(a=a.wa.listDisks){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=window.document.createElement("option");d.value=c;d.innerHTML=b;a.appendChild(d)}}function zl(a,b){if(0<=b&&b<a.Ea.length){var c=a.Ea[b],d=a.wa.listDisks,e=a.wa.listDrives;if(d&&e&&(e=parseInt(e.value,10),c=c.pf?"?":c.Xe,!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}
|
||||
function El(a,b,c,d){var e=a.Ea[b];e.za&&(Fl(a,e.Xe,e.za),e.em="",e.Xe="",e.za=null,e.pf=!1,a.te|=128,d||a.Ja("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||zl(a,b))}function Hl(a,b,c,d){var e;for(e=0;e<a.uc.length;e++)if(a.uc[e][1]==c){d.restore(a.uc[e][2]);return}a.uc[e]=[b,c,[]]}function Fl(a,b,c){var d;for(d=0;d<a.uc.length;d++)if(a.uc[d][1]==b){a.uc[d][2]=c.save();break}}k.Co=function(a,b,c){this.ea(a,b,c,"OUTPUT");b&4?this.Ef&4||this.Ef&8&&this.oa&&ej(this.oa,6):this.Id();this.Ef=b};
|
||||
k.kn=function(a,b){this.ea(a,null,b,"STATUS",this.Da);return this.Da};k.hn=function(a,b){var c=0;this.yb<this.ib&&(c=this.dc[this.yb]);this.Ef&8&&this.oa&&fj(this.oa,6);this.ea(a,null,b,"DATA["+this.yb+"]",c);++this.yb>=this.ib&&(this.Da&=-81,this.yb=this.ib=0);return c};
|
||||
k.Bo=function(a,b,c){this.ea(a,b,c,"DATA["+this.ib+"]");this.ib<this.dc.length&&(this.dc[this.ib++]=b);a=this.dc[0]&31;if(void 0!==yl[a]&&this.ib>=yl[a].Ad){c=!1;this.yb=0;a=this.Qa();var d,e,f,g,h;b=a&31;switch(b){case 3:this.Qa(m.Yp);this.Qa(m.Ep);this.Ub();break;case 4:e=this.Qa(m.If);this.kb=e&3;d=this.Ea[this.kb];this.Ub();this.cc((d.$a&4278190080)>>>24,m.aq);break;case 5:case 6:e=this.Qa(m.If);c=e>>2&1;this.kb=e&3;d=this.Ea[this.kb];d.Na=c;e=d.rb=this.Qa(m.ak);f=this.Qa(m.bk);g=d.Xa=this.Qa(m.dk);
|
||||
h=this.Qa(m.$h);d.hb=128<<h;d.ce=this.Qa(m.zp);this.Qa(m.qm);this.Qa(m.yp);6==b?this.wi(d):this.xi(d);Il(this,d,a,c,e,f,g,h);c=!0;break;case 7:e=this.Qa(m.If);this.kb=e&3;d=this.Ea[this.kb];d.rb=d.ae=0;d.$a=268435488;this.Ub();c=!0;break;case 8:d=this.Ea[this.kb];d.Na=0;this.Ub();this.cc(d.kb|d.Na<<2|d.$a&255,m.sm);this.cc(d.rb,m.Np);this.kb=this.kb+1&3;break;case 10:e=this.Qa(m.If);c=e>>2&1;this.kb=e&3;d=this.Ea[this.kb];e=d.rb;f=d.Na=c;g=d.Xa=1;h=0;d.$a=0;d.za&&(d.Ta=d.za.seek(d.rb,d.Na,d.Xa))?
|
||||
h=d.Ta.length:d.$a=72;Il(this,d,a,c,e,f,g,h);c=!0;break;case 13:e=this.Qa(m.If);c=e>>2&1;this.kb=e&3;d=this.Ea[this.kb];e=d.rb;f=d.Na=c;g=1;h=this.Qa(m.$h);d.hb=128<<h;d.ce=this.Qa(m.Tp);this.Qa(m.qm);d.ik=this.Qa(m.pm);this.uk(d);Il(this,d,a,c,e,f,g,h);c=!0;break;case 15:e=this.Qa(m.If),this.kb=e&3,d=this.Ea[this.kb],d.Na=e>>2&1,e=this.Qa(m.Kp),d.rb+=e-d.ae,0>d.rb&&(d.rb=0),d.rb>=d.wb&&(d.rb=d.wb-1),d.ae=e,d.$a=32,0==d.rb&&(d.$a|=268435456),this.Ub(),c=!0}0<this.ib&&(this.Da|=80);this.Ef&8&&(!d||
|
||||
d.$a&8||!c||this.oa&&ej(this.oa,6))}};k.jn=function(a,b){var c=this.te;this.te&=-129;this.ea(a,null,b,"INPUT",c);return c};k.Ao=function(a,b,c){this.ea(a,b,c,"CONTROL");this.$l=b};function Il(a,b,c,d,e,f,g,h){a.Ub();a.cc(b.kb|b.Na<<2|b.$a&255,m.sm);a.cc((b.$a&65280)>>>8,m.Zp);a.cc((b.$a&16711680)>>>16,m.$p);var l=0;if(e!=b.rb||f!=b.Na)l=g=1;c&128&&(f^=l,d||(l=0));a.cc(e+l,m.ak);a.cc(f,m.bk);a.cc(g,m.dk);a.cc(h,m.$h)}k.Qa=function(){var a=this.dc[this.yb];this.yb++;return a};
|
||||
k.Ub=function(){this.yb=this.ib=0};k.cc=function(a){this.dc[this.ib++]=a};k.ui=function(a,b,c){void 0===b||0>b?this.sc(a,c):c(-1,!1)};k.vi=function(a,b){return void 0!==b&&0<=b?this.Hc(a,b):-1};k.xm=function(a,b){return void 0!==b&&0<=b?this.Xj(a,b):-1};k.wi=function(a){a.$a=72;a.za&&(a.Ta=null,a.$a=0,this.oa&&(Yi(this.oa,2,this,"dmaRead",a),Si(this.oa,2)))};k.xi=function(a){a.$a=72;a.za&&(a.za.rf?a.$a=576:(a.Ta=null,a.$a=0,this.oa&&(Yi(this.oa,2,this,"dmaWrite",a),Si(this.oa,2))))};
|
||||
k.uk=function(a){a.$a=72;a.za&&(a.Ta=null,a.$a=0,this.oa&&(a.Ie=0,a.xc=Array(4),a.Tf=!0,a.Xf=0,Yi(this.oa,2,this,"dmaFormat",a),Si(this.oa,2),a.Tf=!1))};k.sc=function(a,b){var c=-1;if(!a.$a&&a.za){do{if(a.Ta&&0<=(c=vl(a.Ta,a.gb++)))break;a.Ta=a.za.seek(a.rb,a.Na,a.Xa);if(!a.Ta){a.$a=1088;break}a.gb=0;this.Qf(a)}while(1)}b(c,!1)};
|
||||
k.Hc=function(a,b){if(a.$a||!a.za)return-1;do{if(a.Ta&&a.za.write(a.Ta,a.gb++,b))break;a.Ta=a.za.seek(a.rb,a.Na,a.Xa);if(!a.Ta){a.$a=8256;b=-1;break}a.gb=0;this.Qf(a)}while(1);return b};k.Qf=function(a){a.Xa++;a.Xa>=a.qg+1&&(a.Xa=1,a.Na++,a.Na>=a.pg&&(a.Na=0,a.rb++))};k.Xj=function(a,b){if(a.$a)return-1;a.xc[a.Ie++]=b;if(a.Ie==a.xc.length){a.rb=a.xc[0];a.Na=a.xc[1];a.Xa=a.xc[2];a.hb=128<<a.xc[3];for(var c=a.Ie=0;c<a.hb;c++)if(0>this.Hc(a,a.ik))return-1;a.Xf++}a.Xf>=a.ce&&(b=-1);return b};
|
||||
k.Sa=function(a,b){this.fa&&(null==b&&(b=zj),E(this.fa,b)&&this.fa.message(a))};k.ea=function(a,b,c,d,e){this.fa&&this.fa.ea(this,a,b,c,d,zj,e)};var Bl={1012:xl.prototype.kn,1013:xl.prototype.hn,1015:xl.prototype.jn},Cl={1010:xl.prototype.Co,1013:xl.prototype.Bo,1015:xl.prototype.Ao};Ha(function(){for(var a=D(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new xl(d);Za(d,c)}});
|
||||
function Y(a){z.call(this,"HDC",a,Y);this.dmaRead=this.ui;this.dmaWrite=this.vi;this.dmaWriteBuffer=this.ym;this.dmaWriteFormat=this.zm;this.bi=[];if(a.drives)try{this.bi=eval("("+a.drives+")")}catch(b){x("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.fg=(this.Me="at"==a.type)?1:0;this.Nm=this.Me?2:3}A(z,Y);
|
||||
var Jl=[{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.Db=function(){return!1};k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;this.Ka=a;this.oa=eb(a,"ChipSet");tb(b,this,this.Me?Kl:Ll);zb(b,this,this.Me?Ml:Nl);Xc(c,19,this,this.Nn);Xc(c,64,this,this.On);this.reset();this.Sf()||this.Ua()};
|
||||
k.$b=function(a,b){if(!b)if(!a||!this.restore)this.Id(),this.Ka.Ei&&this.Sf(!0);else if(!this.restore(a))return!1;return!0};k.Zb=function(a){return a&&this.save?this.save():!0};k.sf=function(){return this.Ka?this.Ka.sf():""};k.je=function(){return this.Ka?this.Ka.je():""};k.reset=function(){this.Id(null,!0)};k.save=function(){var a=new gd(this);a.set(0,this.Tj());return a.data()};k.restore=function(a){return this.Id(a[0])};
|
||||
k.Id=function(a,b){var c=0,d=!0;if(this.Me)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.Od=a[c++],this.dm=a[c++],this.ue=a[c++],this.Sh=a[c++],this.Qh=a[c++],this.Ph=a[c++],this.Df=a[c++],this.Da=a[c++],this.Qj=a[c++],this.Rh=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.Cf=a[c++];this.Da=a[c++];this.dc=a[c++];this.yb=a[c++];this.ib=a[c++];this.cm=a[c++];this.bm=a[c++];this.am=a[c++];var e=a[c++];void 0!==e?this.tf=e:void 0===this.tf&&(this.tf=-1)}void 0===this.Ea&&(this.Ea=Array(this.bi.length));
|
||||
c=a[c];void 0===c&&(c=[]);for(e=0;e<this.Ea.length;e++){void 0===this.Ea[e]&&(this.Ea[e]={});var f=this.Ea[e];this.Mi(e,f,this.bi[e],c[e],b)||(d=!1);null!=this.Cf&&1>=e&&(this.Cf|=(f.type&3)<<(1-e<<1))}return d};
|
||||
k.Tj=function(){var a=0,b=[];this.Me?(b[a++]=this.Od,b[a++]=this.dm,b[a++]=this.ue,b[a++]=this.Sh,b[a++]=this.Qh,b[a++]=this.Ph,b[a++]=this.Df,b[a++]=this.Da,b[a++]=this.Qj,b[a++]=this.Rh):(b[a++]=this.Cf,b[a++]=this.Da,b[a++]=this.dc,b[a++]=this.yb,b[a++]=this.ib,b[a++]=this.cm,b[a++]=this.bm,b[a++]=this.am,b[a++]=this.tf);b[a]=this.Vj();return b};
|
||||
k.Mi=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.kb=a;b.errorCode=d[f++];b.jm=d[f++];b.qf=d[f++];b.ff=d[f++];b.gf=d[f++];b.Na=d[f++];b.xb=d[f++];b.Sd=d[f++];b.Xa=d[f++];b.ce=d[f++];b.hb=d[f++];b.ah=this.Me?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.je()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Jl[this.fg][b.type])b.type=this.Nm;c=Jl[this.fg][b.type];
|
||||
b.Bb=c[2]||17;b.nb=c[3]||512;if(e&&this.oa&&(e=this.oa,c=b.type,e.ta)){var h=e.ta[18],h=a?h&240|c:h&15|c<<4;e.ta&&(e.ta[18]=h,Ci(e))}void 0===b.za&&(b.za=null,this.Ja("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Ol(this,b);b.gb=d[f++];b.Ta=null;b.za&&(a=d[f],void 0!==a&&0>b.za.restore(a)&&(g=!1),g&&void 0!==b.gb&&(b.Ta=b.za.seek(b.Sd,b.Na,b.Xa+b.ah)));return g};k.Vj=function(){for(var a=0,b=[],c=0;c<this.Ea.length;c++)b[a++]=this.Uj(this.Ea[c]);return b};
|
||||
k.Uj=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.jm;c[b++]=a.qf;c[b++]=a.ff;c[b++]=a.gf;c[b++]=a.Na;c[b++]=a.xb;c[b++]=a.Sd;c[b++]=a.Xa;c[b++]=a.ce;c[b++]=a.hb;c[b++]=a.gb;c[b]=a.za?a.za.save():null;return c};k.sk=function(a){var b;a=this.Ea[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
|
||||
function Ol(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.ff[2])?e=b.ff[0]<<8|b.ff[1]:c=b.type);null==c||d||(d=Jl[a.fg][c][1],e=Jl[a.fg][c][0]);d&&((c=Jl[a.fg][b.type])&&e!=c[0]&&d!=c[1]&&a.Ja("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.wb=e,b.xb=d,null==b.za&&(b.za=new ll(a,b,b.mode)))}}
|
||||
k.hm=function(a,b,c){if(a.za){var d=a.za.info(),e=d[0];if(e){var f=d[2],g=d[1]*f;if(b+c<=e*g)return a.Sd=Math.floor(b/g),b%=g,a.Na=Math.floor(b/f),a.Xa=b%f,a.hb=c*d[3],a.errorCode=0,!0}}return!1};
|
||||
k.Sf=function(a){a||(this.Fe=0);for(var b=0;b<this.Ea.length;b++){var c=this.Ea[b];if(c.name&&c.path){if(!(a&&c.za&&c.za.rh)){var d;d=c.name;var c=c.path,e=this.Ea[b];e.Ec?(this.Ja("Drive "+b+" busy"),d=!0):(e.Ec=!0,e.Ne=!0,this.Fe++,this.Sa("loading "+d),(e.za||new ll(this,e,e.mode)).load(d,c,null,this.Bm),d=!1);!d&&a&&this.Ua(!1)}}else a&&void 0!==c.type&&(c.za=null,Ol(this,c,c.type))}return!!this.Fe};
|
||||
k.Bm=function(a,b,c){a.Ec=!1;(a.za=b)&&this.Ja('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.kb),a.Ne);a.Ne&&(a.Ne=!1,--this.Fe||this.Ua())};k.Kn=function(a,b){var c=0;this.yb<this.ib&&(c=this.dc[this.yb]);this.oa&&fj(this.oa,5);this.Da&=-33;this.ea(a,null,b,"DATA["+this.yb+"]",c);++this.yb>=this.ib&&(this.yb=this.ib=0,this.Da&=-15);return c};
|
||||
k.Yo=function(a,b,c){this.ea(a,b,c,"DATA["+this.ib+"]");this.ib<this.dc.length&&(this.dc[this.ib++]=b);a=12!=this.dc[0]?6:this.dc.length;6==this.ib&&(this.Da&=-2);this.ib>=a&&(this.Da|=2,this.Da&=-2,Pl(this))};k.Ln=function(a,b){var c=this.Da;this.ea(a,null,b,"STATUS",c);this.yb<this.ib&&(this.Da|=1);return c};k.ap=function(a,b,c){this.ea(a,b,c,"RESET");this.cm=b;this.oa&&fj(this.oa,5);this.Id()};k.Jn=function(a,b){this.ea(a,null,b,"CONFIG",this.Cf);return this.Cf};
|
||||
k.$o=function(a,b,c){this.ea(a,b,c,"PULSE");this.bm=b;this.Da=13};k.Zo=function(a,b,c){this.ea(a,b,c,"PATTERN");this.am=b};k.Lj=function(a,b,c){this.ea(a,b,c,"NOISE")};k.Vm=function(a,b){var c=-1,d=!1;if(this.Pa&&(d=0<this.Pa.gb,c=this.sc(this.Pa),this.Pa.gb==this.Pa.nb))if(this.Pa.hb-=this.Pa.nb,this.ue=this.ue-1&255,this.Pa.hb>=this.Pa.nb){var e=this;this.sc(this.Pa,function(a){0<=a?Ql(e):(e.Da=1,e.Od=16)},!1)}else this.Da=80;d||this.ea(a,null,b,"DATA",c);return c};
|
||||
k.oo=function(a,b,c){this.Pa&&0!=this.Pa.gb||this.ea(a,b,c,"DATA");this.Pa&&this.Pa.hb>=this.Pa.nb&&(0>this.Hc(this.Pa,b)?(this.Da=1,this.Od=16):this.Pa.gb==this.Pa.nb&&(this.Pa.hb-=this.Pa.nb,this.ue=this.ue-1&255,Ql(this),this.Pa.hb>=this.Pa.nb||(this.Da=80)))};k.Xm=function(a,b){var c=this.Od;this.ea(a,null,b,"ERROR",c);return c};k.to=function(a,b,c){this.ea(a,b,c,"WPREC");this.dm=b};k.Ym=function(a,b){var c=this.ue;this.ea(a,null,b,"SECCNT",c);return c};
|
||||
k.ro=function(a,b,c){this.ea(a,b,c,"SECCNT");this.ue=b};k.Zm=function(a,b){var c=this.Sh;this.ea(a,null,b,"SECNUM",c);return c};k.so=function(a,b,c){this.ea(a,b,c,"SECNUM");this.Sh=b};k.Um=function(a,b){var c=this.Qh;this.ea(a,null,b,"CYLLO",c);return c};k.no=function(a,b,c){this.ea(a,b,c,"CYLLO");this.Qh=b};k.Tm=function(a,b){var c=this.Ph;this.ea(a,null,b,"CYLHI",c);return c};k.mo=function(a,b,c){this.ea(a,b,c,"CYLHI");this.Ph=b};k.Wm=function(a,b){var c=this.Df;this.ea(a,null,b,"DRVHD",c);return c};
|
||||
k.po=function(a,b,c){this.ea(a,b,c,"DRVHD");this.Df=b;this.Da=this.Ea[this.Df&16?1:0]?this.Da|64:this.Da&-65};k.$m=function(a,b){var c=this.Da;this.ea(a,null,b,"STATUS",c);return c};k.lo=function(a,b,c){this.ea(a,b,c,"COMMAND");this.Qj=b;this.oa&&fj(this.oa,14);Rl(this)};k.qo=function(a,b,c){this.ea(a,b,c,"FDR");this.Rh&4&&!(b&4)&&(this.Od=1);this.Rh=b};
|
||||
function Rl(a){var b=!1,c=a.Qj,d=a.Df&16?1:0,e=a.Df&15,f=a.Qh|(a.Ph&3)<<8,g=a.Sh,h=a.ue||256;a.Pa=null;a.Od=0;a.Da=80;(d=a.Ea[d])?(d.Sd=f,d.Na=e,d.Xa=g,d.hb=h*d.nb,c=144<=c?c:c&240,d.Ta=null,d.errorCode=0,a.Pa=d):c=-1;switch(c&240){case 32:a.sc(d,function(b){0<=b&&a.oa?(Ql(a),a.Da=136):(a.Da=1,a.Od=16)},!1);break;case 48:a.oa?(Ql(a),a.Da=136):(a.Da=1,a.Od=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.Od=1;b=!0;break;case 145:d.xb=e+1,d.Bb=h,b=!0}b&&Ql(a)}
|
||||
function Ql(a){!a.oa||a.Rh&2||ej(a.oa,14)}
|
||||
function Pl(a){a.yb=0;var b=a.Qa(),c=a.Qa(),d=c&32,e=d>>5,f=c&31,g=a.Qa(),h=a.Qa(),l=g<<2&768|h,n=g&63,q=a.Qa(),r=a.Qa(),s=a.Ea[e];s&&(s.Sd=l,s.Na=f,s.Xa=n,s.hb=q*s.nb);switch(b){case 3:a.Ub(s?s.errorCode:4);a.cc(c);a.cc(g);a.cc(h);a.cc(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Qa());)s&&c<s.ff.length&&(s.ff[c++]=b);s&&Ol(a,s);b=0;s||a.tf!=e||(a.tf=-1,b=2);a.Ub(b|d);b=-1;break;case 224:case 228:a.Ub(0|d),b=-1}if(0<=b)switch(void 0===s?b=-1:(s.errorCode=0,s.jm=0),b){case 0:a.Ub(0|d);break;case 1:s.oq=
|
||||
r;a.Ub(0|d);break;case 5:a.Ub(0|d);break;case 8:a.wi(s,function(b){a.Ub(b|d)});break;case 10:a.xi(s,function(b){a.Ub(b|d)});break;case 15:Sl(a,s,function(b){a.Ub(b|d)});break;default:a.Ub(2|d)}}k.Qa=function(){var a=-1;this.yb<this.ib&&(a=this.dc[this.yb++]);return a};k.Ub=function(a){this.yb=this.ib=0;void 0!==a&&this.cc(a);this.oa&&ej(this.oa,5);this.Da|=32};k.cc=function(a){this.dc[this.ib++]=a};k.ui=function(a,b,c){void 0===b||0>b?this.sc(a,c):c(-1,!1)};
|
||||
k.vi=function(a,b){return void 0!==b&&0<=b?this.Hc(a,b):-1};k.ym=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.gb<a.gf.length?a.gf[a.gb++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.zm=function(a,b){return void 0!==b&&0<=b?this.Xj(a,b):-1};k.wi=function(a,b){a.errorCode=4;if(a.za&&(a.Ta=null,this.oa)){a.errorCode=0;Yi(this.oa,3,this,"dmaRead",a);Si(this.oa,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
|
||||
k.xi=function(a,b){a.errorCode=4;if(a.za&&(a.Ta=null,this.oa)){a.errorCode=0;Yi(this.oa,3,this,"dmaWrite",a);Si(this.oa,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 Sl(a,b,c){b.errorCode=4;b.gf&&b.gf.length==b.hb||(b.gf=Array(b.hb));b.gb=0;a.oa?(b.errorCode=0,Yi(a.oa,3,a,"dmaWriteBuffer",b),Si(a.oa,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
|
||||
k.uk=function(a,b){a.errorCode=4;if(a.za&&(a.Ta=null,this.oa)){a.Ie=0;a.xc=Array(4);a.Tf=!0;a.Xf=0;a.errorCode=0;Yi(this.oa,3,this,"dmaWriteFormat",a);Si(this.oa,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Tf=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
|
||||
k.sc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Ta&&(d=vl(a.Ta,a.gb),a.gb+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;if(a.za)return a.za.seek(a.Sd,a.Na,a.Xa+a.ah,!1,function(c,h){(a.Ta=c)?(a.gb=0,f.Qf(a),d=vl(a.Ta,a.gb),a.gb+=e):a.errorCode=20;b(d,h)}),d;a.errorCode=20;b(d,!1)}return d};
|
||||
k.Hc=function(a,b){if(a.errorCode)return-1;do{if(a.Ta&&a.za.write(a.Ta,a.gb++,b))break;a.za&&a.za.seek(a.Sd,a.Na,a.Xa+a.ah,!0,function(b){a.Ta=b});if(!a.Ta){a.errorCode=20;b=-1;break}a.gb=0;this.Qf(a)}while(1);return b};k.Qf=function(a){a.Xa++;var b=1-a.ah;a.Xa>=a.Bb+b&&(a.Xa=b,a.Na++,a.Na>=a.xb&&(a.Na=0,a.Sd++))};
|
||||
k.Xj=function(a,b){if(a.errorCode)return-1;a.xc[a.Ie++]=b;if(a.Ie==a.xc.length){a.Sd=a.xc[0];a.Na=a.xc[1];a.Xa=a.xc[2];a.hb=128<<a.xc[3];for(var c=a.Ie=0;c<a.hb;c++)if(0>this.Hc(a,a.ik))return-1;a.Xf++}a.Xf>=a.ce&&(b=-1);return b};k.Nn=function(){var a=this.T.K&255;!(this.T.H>>8)&&128<a&&(this.tf=a-128);return!0};k.On=function(){var a;(a=this.T.H>>8)||(a=!this.oa)||(a=!(this.oa.Eb[0].zd&64));return a?!0:!1};k.Sa=function(a,b){this.fa&&(null==b&&(b=Tl),E(this.fa,b)&&this.fa.message(a))};
|
||||
k.ea=function(a,b,c,d,e){this.fa&&this.fa.ea(this,a,b,c,d,Tl,e)};
|
||||
var Ll={800:Y.prototype.Kn,801:Y.prototype.Ln,802:Y.prototype.Jn},Kl={496:Y.prototype.Vm,497:Y.prototype.Xm,498:Y.prototype.Ym,499:Y.prototype.Zm,500:Y.prototype.Um,501:Y.prototype.Tm,502:Y.prototype.Wm,503:Y.prototype.$m},Nl={800:Y.prototype.Yo,801:Y.prototype.ap,802:Y.prototype.$o,803:Y.prototype.Zo,807:Y.prototype.Lj,811:Y.prototype.Lj,815:Y.prototype.Lj},Ml={496:Y.prototype.oo,497:Y.prototype.to,498:Y.prototype.ro,499:Y.prototype.so,500:Y.prototype.no,501:Y.prototype.mo,502:Y.prototype.po,503:Y.prototype.lo,
|
||||
1014:Y.prototype.qo};Ha(function(){for(var a=D(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new Y(d);Za(d,c)}});
|
||||
function Ul(a){z.call(this,"Debugger",a,Ul);this.eh=this.cd=-1;this.Ic=[0,0];this.ek=[0,0];this.Nh=null;this.mf=!1;this.we=[0,0];this.wc=[];Vl(this);Wl(this);var b=a.messages;this.fi=[];this.kc=0;b=Xl(this,b);if(b.length)for(var c in Yl)0<=b.indexOf(c)&&(this.kc|=Yl[c],this.da(c+" messages enabled"));this.pb={AL:0,CL:0,DL:0,BL:0,AH:0,CH:0,DH:0,BH:0,AX:0,CX:0,DX:0,BX:0,SP:0,BP:0,SI:0,DI:0,ES:0,CS:0,SS:0,DS:0,IP:0};this.Sj=a.commands}
|
||||
var Db=1,Pj=2,P=4,Fd=8,pi=16,ri=32,wj=64,oj=128,lj=256,yj=512,Dk=2048,zj=4096,Tl=8192,wl=16384,gl=32768,xj=65536,kl=262144,Kd=1048576,Zc=4194304,tj=16777216;A(z,Ul);
|
||||
var ti=26,Zl={16:Dk,22:yj,28:pi,33:2097152,51:kl},$l={"?":"help","a [#]":"assemble","b [#]":"breakpoint",c:"clear output","d [#]":"dump memory","e [#]":"edit memory",f:"frequencies","g [#]":"go [to #]","h [#]":"halt/history","i [#]":"input port #",l:"load sector(s)",m:"messages","o [#]":"output port #",p:"step over",r:"dump/edit registers","t [#]":"step instruction(s)","u [#]":"unassemble",x:"execution options",reset:"reset computer",ver:"display version"},am="DB AAA AAD AAM AAS ADC ADD AND ARPL AS: BOUND BSF BSR BT BTC BTR BTS CALL CBW CLC CLD CLI CLTS CMC CMP CMPSB CMPSW CS: CWD DAA DAS DEC DIV DS: ENTER ES: ESC FADD FBLD FBSTP FCOM FCOMP FDIV FDIVR FIADD FICOM FICOMP FIDIV FIDIVR FILD FIMUL FIST FISTP FISUB FISUBR FLD FLDCW FLDENV FMUL FNSAVE FNSTCW FNSTENV FNSTSW FRSTOR FS: FST FSTP FSUB FSUBR GBP GS: HLT IDIV IMUL IN INC INS INT INT3 INTO IRET JBE JC JCXZ JG JGE JL JLE JMP JNBE JNC JNO JNP JNS JNZ JO JP JS JZ LAHF LAR LDS LEA LEAVE LES LFS LGDT LGS LIDT LLDT LMSW LOADALL LOCK LODSB LODSW LOOP LOOPNZ LOOPZ LSL LSS LTR MOV MOVSB MOVSW MOVSX MOVZX MUL NEG NOP NOT OR OS: OUT OUTS POP POPA POPF PUSH PUSHA PUSHF RCL RCR REPNZ REPZ RET RETF ROL ROR SAHF SAR SBB SCASB SCASW SETBE SETC SETG SETGE SETL SETLE SETNBE SETNC SETNO SETNP SETNS SETNZ SETO SETP SETS SETZ SGDT SHL SHLD SHR SHRD SIDT SLDT SMSW SS: STC STD STI STOSB STOSW STR SUB TEST VERR VERW WAIT XCHG XLAT XOR".split(" "),
|
||||
Z="AL CL DL BL AH CH DH BH AX CX DX BX SP BP SI DI ES CS SS DS IP".split(" "),bm="BX+SI BX+DI BP+SI BP+DI SI DI BP BX".split(" "),Yl={mem:Db,port:Pj,dma:P,pic:Fd,timer:pi,cmos:ri,rtc:wj,8042:oj,chipset:lj,kbd:yj,keys:1024,video:Dk,fdc:zj,hdc:Tl,disk:wl,serial:gl,speaker:xj,state:131072,mouse:kl,computer:524288,cpu:Kd,dos:2097152,"int":Zc,log:tj,halt:268435456},$=[0,0],cm=[205,12291],dm=[[6,12417,4257],[6,12420,4260],[6,12449,4225],[6,12452,4228],[6,12385,4097],[6,14435,4100],[137,4211],[134,8307],
|
||||
[130,12417,4257],[130,12420,4260],[130,12449,4225],[130,12452,4228],[130,12385,4097],[130,14435,4100],[137,4467],[134,8563],[5,12417,4257],[5,12420,4260],[5,12449,4225],[5,12452,4228],[5,12385,4097],[5,14435,4100],[137,4723],[134,8819],[150,12417,4257],[150,12420,4260],[150,12449,4225],[150,12452,4228],[150,12385,4097],[150,14435,4100],[137,4979],[134,9075],[7,12417,4257],[7,12420,4260],[7,12449,4225],[7,12452,4228],[7,12385,4097],[7,14435,4100],[35,15],[29],[184,12417,4257],[184,12420,4260],[184,
|
||||
12449,4225],[184,12452,4228],[184,12385,4097],[184,14435,4100],[27,15],[30],[191,12417,4257],[191,12420,4260],[191,12449,4225],[191,12452,4228],[191,12385,4097],[191,14435,4100],[177,15],[1],[24,4225,4257],[24,4228,4260],[24,4257,4225],[24,4260,4228],[24,4193,4097],[24,6243,4100],[33,15],[4],[75,14435],[75,14691],[75,14947],[75,15203],[75,15459],[75,15715],[75,15971],[75,16227],[31,14435],[31,14691],[31,14947],[31,15203],[31,15459],[31,15715],[31,15971],[31,16227],[137,6243],[137,6499],[137,6755],
|
||||
[137,7011],[137,7267],[137,7523],[137,7779],[137,8035],[134,10339],[134,10595],[134,10851],[134,11107],[134,11363],[134,11619],[134,11875],[134,12131],[138,32768],[135,32768],[10,37028,4247],[8,8323,4259],[64,49152],[70,49152],[131,49152],[9,49152],[137,36868],[73,45219,4234],[137,36866],[73,45219,4233],[76,41041,6755],[76,41044,6755],[133,39523,4161],[133,39523,4164],[95,4145],[91,4145],[82,4145],[90,4145],[98,4145],[94,4145],[81,4145],[89,4145],[97,4145],[93,4145],[96,4145],[92,4145],[86,4145],
|
||||
[85,4145],[87,4145],[84,4145],[192,12417,4097],[193,12420,4100],[192,12417,4097],[194,12420,4097],[185,4225,4257],[185,4228,4260],[189,12449,12417],[189,12452,12420],[121,8321,4257],[121,8324,4260],[121,8353,4225],[121,8356,4228],[121,8323,4275],[102,8356,148],[121,8371,4227],[134,8324],[128],[189,14435,14691],[189,14435,14947],[189,14435,15203],[189,14435,15459],[189,14435,15715],[189,14435,15971],[189,14435,16227],[18],[28],[17,4102],[188],[139],[136],[148],[99],[121,8289,4129],[121,10339,4132],
|
||||
[121,8225,4193],[121,8228,6243],[122,8273,4161],[123,8276,4164],[25,4177,4161],[26,4180,4164],[185,4193,4097],[185,6243,4100],[181,8273,4193],[182,8276,6243],[113,8289,4161],[114,10339,4164],[151,4193,4177],[152,6243,4180],[121,8289,4097],[121,8545,4097],[121,8801,4097],[121,9057,4097],[121,9313,4097],[121,9569,4097],[121,9825,4097],[121,10081,4097],[121,10339,4100],[121,10595,4100],[121,10851,4100],[121,11107,4100],[121,11363,4100],[121,11619,4100],[121,11875,4100],[121,12131,4100],[195,28801,4097],
|
||||
[196,28804,4097],[144,4099],[144],[104,8356,4246],[101,8356,4246],[121,8321,4097],[121,8324,4100],[34,36867,4097],[103,32768],[145,4099],[145],[78],[77,4097],[79],[80],[197,12417,4113],[198,12420,4113],[199,12417,4449],[200,12420,4449],[3,1],[2,1],[69],[190],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[116,4145],[117,4145],[115,4145],[83,4145],[74,8289,4097],[74,10339,4097],[132,4097,4193],[132,4097,6243],[17,4148],[88,4148],[88,4102],[88,4145],[74,8289,6755],[74,
|
||||
10339,6755],[132,6755,4193],[132,6755,6243],[112,15],[0],[142,15],[143,15],[71],[23],[201,12417],[202,12420],[19],[178],[21],[180],[20],[179],[203,12417],[204,12420]],Yl={0:[206,12419],1:[207,12419],2:[100,37027,4243],3:[118,37027,4243],5:[111,32768]},Zl=[[[6,12417,4097],[130,12417,4097],[5,12417,4097],[150,12417,4097],[7,12417,4097],[184,12417,4097],[191,12417,4097],[24,4225,4097]],[[6,12420,4100],[130,12420,4100],[5,12420,4100],[150,12420,4100],[7,12420,4100],[184,12420,4100],[191,12420,4100],[24,
|
||||
10339,6755],[132,6755,4193],[132,6755,6243],[112,15],[0],[142,15],[143,15],[71],[23],[201,12417],[202,12420],[19],[178],[21],[180],[20],[179],[203,12417],[204,12420]],em={0:[206,12419],1:[207,12419],2:[100,37027,4243],3:[118,37027,4243],5:[111,32768]},fm=[[[6,12417,4097],[130,12417,4097],[5,12417,4097],[150,12417,4097],[7,12417,4097],[184,12417,4097],[191,12417,4097],[24,4225,4097]],[[6,12420,4100],[130,12420,4100],[5,12420,4100],[150,12420,4100],[7,12420,4100],[184,12420,4100],[191,12420,4100],[24,
|
||||
4228,4100]],[[6,12420,4098],[130,12420,4098],[5,12420,4098],[150,12420,4098],[7,12420,4098],[184,12420,4098],[191,12420,4098],[24,4228,4098]],[[146,45185,4097],[147,45185,4097],[140,45185,4097],[141,45185,4097],[170,45185,4097],[172,45185,4097],$,[149,45185,4097]],[[146,45188,4097],[147,45188,4097],[140,45188,4097],[141,45188,4097],[170,45188,4097],[172,45188,4097],$,[149,45188,4097]],[[146,12417,4113],[147,12417,4113],[140,12417,4113],[141,12417,4113],[170,12417,4113],[172,12417,4113],$,[149,12417,
|
||||
4113]],[[146,12420,4113],[147,12420,4113],[140,12420,4113],[141,12420,4113],[170,12420,4113],[172,12420,4113],$,[149,12420,4113]],[[146,12417,4449],[147,12417,4449],[140,12417,4449],[141,12417,4449],[170,12417,4449],[172,12417,4449],$,[149,12417,4449]],[[146,12420,4449],[147,12420,4449],[140,12420,4449],[141,12420,4449],[170,12420,4449],[172,12420,4449],$,[149,12420,4449]],[[185,4225,4097],$,[129,12417],[127,12417],[126,4225],[73,12417],[32,4225],[72,12417]],[[185,4228,4100],$,[129,12420],[127,12420],
|
||||
[126,4228],[73,12420],[32,4228],[72,12420]],[[75,12417],[31,12417],$,$,$,$,$,$],[[75,12420],[31,12420],[17,4228],[17,4230],[88,4228],[88,4230],[137,4228],$],[],[[175,8323],[183,8323],[109,4227],[120,4227],[186,4227],[187,4227],$,$],[[169,8323],[174,8323],[106,4227],[108,4227],[176,8323],$,[110,4227],$]],$l={19:{0:"disk reset",1:"get status",2:"read drive DL (CH:DH:CL:AL) into ES:BX",3:"write drive DL (CH:DH:CL:AL) from ES:BX",4:"verify drive DL (CH:DH:CL:AL)",5:"format drive DL using ES:BX",8:"read drive DL parameters into ES:DI",
|
||||
[126,4228],[73,12420],[32,4228],[72,12420]],[[75,12417],[31,12417],$,$,$,$,$,$],[[75,12420],[31,12420],[17,4228],[17,4230],[88,4228],[88,4230],[137,4228],$],[],[[175,8323],[183,8323],[109,4227],[120,4227],[186,4227],[187,4227],$,$],[[169,8323],[174,8323],[106,4227],[108,4227],[176,8323],$,[110,4227],$]],gm={19:{0:"disk reset",1:"get status",2:"read drive DL (CH:DH:CL:AL) into ES:BX",3:"write drive DL (CH:DH:CL:AL) from ES:BX",4:"verify drive DL (CH:DH:CL:AL)",5:"format drive DL using ES:BX",8:"read drive DL parameters into ES:DI",
|
||||
21:"get drive DL DASD type",22:"get drive DL change line status",23:"set drive DL DASD type",24:"set drive DL media type"},21:{128:"open device",129:"close device",130:"program termination",131:"wait CX:DXus for event",132:"joystick support",133:"SYSREQ pressed",134:"wait CX:DXus",135:"move block (CX words)",136:"get extended memory size",137:"processor to virtual mode",144:"device busy loop",145:"interrupt complete flag set"},33:{0:"terminate program",1:"read character (al) from stdin with echo",
|
||||
2:"write character DL to stdout",3:"read character (al) from stdaux",4:"write character DL to stdaux",5:"write character DL to stdprn",6:"direct console output (input if DL=FF)",7:"direct console input without echo",8:"read character (al) from stdin without echo",9:"write $-terminated string DS:DX to stdout",10:"buffered input (ds:dx)",11:"get stdin status",12:"flush buffer and read stdin",13:"disk reset",14:"select default drive DL",15:"open file using fcb DS:DX",16:"close file using fcb DS:DX",
|
||||
17:"find first matching file using fcb DS:DX",18:"find next matching file using fcb DS:DX",19:"delete file using fcb DS:DX",20:"sequential read from file using fcb DS:DX",21:"sequential write to file using fcb DS:DX",22:"create or truncate file using fcb DS:DX",23:"rename file using fcb DS:DX",25:"get current default drive (al)",26:"set disk transfer area (dta) DS:DX",27:"get allocation information for default drive",28:"get allocation information for specific drive DL",31:"get drive parameter block for default drive",
|
||||
|
|
@ -675,89 +680,89 @@ Z="AL CL DL BL AH CH DH BH AX CX DX BX SP BP SI DI ES CS SS DS IP".split(" "),Vl
|
|||
44:"get system time (hour=ch, min=cl, sec=dh, 100ths=dl)",45:"set system time (hour=CH, min=CL, sec=DH, 100ths=DL)",46:"set verify flag AL",47:"get disk transfer area address (es:bx)",48:"get DOS version (al=major, ah=minor)",49:"terminate and stay resident",50:"get drive parameter block (dpb=ds:bx) for drive DL",51:"extended break check",52:"get address (es:bx) of InDOS flag",53:"get address (es:bx) of interrupt vector AL",54:"get free disk space of drive DL",55:"get(0)/set(1) switch character DL (AL)",
|
||||
56:"get country-specific information",57:"create subdirectory DS:DX",58:"remove subdirectory DS:DX",59:"set current directory DS:DX",60:"create or truncate file DS:DX with attributes CX",61:"open existing file DS:DX with mode AL",62:"close file BX",63:"read CX bytes from file BX into buffer DS:DX",64:"write CX bytes to file BX from buffer DS:DX",65:"delete file DS:DX",66:"set position CX:DX of file BX relative to AL",67:"get(0)/set(1) attributes CX of file DS:DX (AL)",68:"get device information (IOCTL)",
|
||||
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=Nl.prototype;
|
||||
k.oc=function(a,b,c,d){this.ra=b;this.T=c;this.Ka=a;this.Im=eb(a,"FDC");this.Hk=eb(a,"HDC");this.Mf=Xl;80186<=this.T.Ia&&(this.Mf=Xl.slice(),this.Mf[15]=$,80286<=this.T.Ia&&(this.Mf[15]=Wl));oi(this,2097152,function(a){if(a)for(d.da("dumpDOS("+a+")"),a=da(a);a;){var b=[0,a,void 0],c=d.pb(b,1),e=d.ua(b,2),n=d.ua(b,5);if(77!=c&&90!=c)break;d.da(ea(0,a)+": '"+String.fromCharCode(c)+"' PID="+v(e)+" LEN="+v(n)+' "'+am(d,b)+'"');a+=1+n}});this.Ta();if(this.Rj){a=Ql(this,this.Rj);delete this.Rj;for(var e in a)bm(this,
|
||||
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=Ul.prototype;
|
||||
k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.Ka=a;this.Jm=eb(a,"FDC");this.Ik=eb(a,"HDC");this.Nf=dm;80186<=this.T.Ia&&(this.Nf=dm.slice(),this.Nf[15]=$,80286<=this.T.Ia&&(this.Nf[15]=cm));oi(this,2097152,function(a){if(a)for(d.da("dumpDOS("+a+")"),a=da(a);a;){var b=[0,a,void 0],c=d.tb(b,1),e=d.ua(b,2),n=d.ua(b,5);if(77!=c&&90!=c)break;d.da(ea(0,a)+": '"+String.fromCharCode(c)+"' PID="+v(e)+" LEN="+v(n)+' "'+hm(d,b)+'"');a+=1+n}});this.Ua();if(this.Sj){a=Xl(this,this.Sj);delete this.Sj;for(var e in a)im(this,
|
||||
a[e])}};
|
||||
k.Fb=function(a,b,c,d){var e=this;switch(c){case "debugInput":return this.$f=this.ya[c]=d,d.onkeypress=function(a){if(13==a.keyCode){var b=d.value;d.value="";var c=Ql(e,b,!0);for(b in c)bm(e,c[b]);a.preventDefault&&a.preventDefault()}},!0;case "debugEnter":return this.ya[c]=d,Ca(d,function(){if(e.$f){var a=e.$f.value;e.$f.value="";var b=Ql(e,a,!0);for(a in b)bm(e,b[a]);return!0}return!1}),!0;case "step":return this.ya[c]=d,Ca(d,function(a){var b=!1;ab(e,!0)||($a(e,!0),b=e.Ff(a?1:0),$a(e,!1));return b}),
|
||||
!0}return!1};k.Pd=function(){this.$f&&this.$f.focus()};function am(a,b){var c,d="";for(c=8;d.length<c;){var e=a.pb(b,1);if(!e)break;d+=32<=e&&128>e?String.fromCharCode(e):"."}return d}function oi(a,b,c){for(var d in Rl)if(b==Rl[d]){a.ei[d]=c;break}}function E(a,b){return(a.jc&b)===b}
|
||||
function $c(a,b,c){var d=Sl[b],e=d&&E(a,d);if(e){var f=a.T.H>>8,g=a.T.K&255;if(33==b&&11==f||d==vj&&128<=g||d==Ml&&128>g)e=!1}if(e){if(d=(d=$l[b])&&d[f]||"")g=a.T,a.lb[Z[0]]=t(g.H&255),a.lb[Z[1]]=t(g.J&255),a.lb[Z[2]]=t(g.K&255),a.lb[Z[3]]=t(g.C&255),a.lb[Z[4]]=t(g.H>>8),a.lb[Z[5]]=t(g.J>>8),a.lb[Z[6]]=t(g.K>>8),a.lb[Z[7]]=t(g.C>>8),a.lb[Z[8]]=v(g.H),a.lb[Z[9]]=v(g.J),a.lb[Z[10]]=v(g.K),a.lb[Z[11]]=v(g.C),a.lb[Z[12]]=v(g.Y),a.lb[Z[13]]=v(g.I),a.lb[Z[14]]=v(g.G),a.lb[Z[15]]=v(g.F),a.lb[Z[16]]=v(g.$a.sa),
|
||||
a.lb[Z[17]]=v(g.xa.sa),a.lb[Z[18]]=v(g.zb.sa),a.lb[Z[19]]=v(g.Eb.sa),a.lb[Z[20]]=v(g.va),d=" "+ka(a.lb,d);a.message("INT 0x"+t(b)+": AH="+t(f)+" at "+ea(c-a.T.xa.Ya,a.T.xa.sa)+d)}return e}function bd(a,b,c,d,e){a.message("INT 0x"+t(b)+": C="+(od(a.T)?1:0)+(e||"")+" (cycles="+d+(c?",level="+(c+1):"")+")")}
|
||||
k.ea=function(a,b,c,d,e,f,g){f||(f=0);f|=Jj;if(null==d||(this.jc&f)==f)f=null,null!=d&&(f=this.T.xa.sa,d-=this.T.xa.Ya),this.message(a.xh+"."+(null!=c?"outPort":"inPort")+"(0x"+v(b)+","+(e?e:"unknown")+(null!=c?",0x"+t(c):"")+")"+(null!=g?": 0x"+t(g):"")+(null!=d?" at "+ea(d,f):""))};k.message=function(a){this.da(a);this.T&&(this.jc&268435456&&this.T.Cb(),a=this.T,a.ca.zf=0,a.Oc-=a.A,a.A=0,a.ih())};k.Ln=function(){this.da("Type ? for list of debugger commands")};
|
||||
function Pl(a){var b;if(Ed(a)){if(!a.Xd||!a.Xd.length){a.Xd=Array(1E4);for(b=0;b<a.Xd.length;b++)a.Xd[b]=[0,null,0];a.tf=0}if(!a.Sc||!a.Sc.length)for(a.Sc=Array(256),b=0;b<a.Sc.length;b++)a.Sc[b]=[b,0]}else a.tf=0,a.Xd=[],a.Sc=[]}k.Ue=function(a){if(!cm(this))return!1;this.T.Ue(a);return!0};
|
||||
k.Ff=function(a,b,c){if(!cm(this))return!1;this.ad=0;do{a||Ed(this)&&Jd(this,this.T.Ga,!0);try{var d=this.T.Ff(a);0<d&&(this.ad+=d,Xb(this.T,d,!0),Tb(this.T,d),this.eh++)}catch(e){this.ad=0,cb(this.T,e.message||e)}}while(this.T.aa&240);!1!==c&&Sb(this.T);Rb(this,b||!1,!1);return 0<this.ad};k.Cb=function(){this.T.Cb()};function Rb(a,b,c){void 0===b&&(b=!0);void 0===c&&(c=!0);a.Fc=[a.T.va,a.T.xa.sa,void 0];b&&1!=a.mc?dm(a,null,c):em(a)}
|
||||
function cm(a){var b;if(b=a.T&&bb(a.T))b=a.T,b.qa.Ob?b=!0:(b.da(b.toString()+" not powered"),b=!1);b&&!ab(a.T)?(a=a.T,a.qa.Zc?(a.da(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}k.Zb=function(a,b){return!b&&(this.reset(!0),this.da(a?"resuming":"powering up"),a&&this.restore&&!this.restore(a))?!1:!0};k.Yb=function(a,b){b&&this.da(a?"suspending":"shutting down");return a&&this.save?this.save():!0};
|
||||
k.reset=function(a){Pl(this);this.ad=this.eh=0;this.Fc=[this.T.va,this.T.xa.sa,void 0];void 0===this.qa.Pb||a||this.da("reset");this.qa.Pb=!1;fm(this);a||Rb(this)};k.save=function(){var a=new gd(this);a.set(0,this.Fc);a.set(1,this.we);a.set(2,[this.Mh,this.lf,this.jc]);return a.data()};k.restore=function(a){var b=0;void 0!==a[2]&&(this.Fc=a[b++],this.we=a[b++],this.Mh=a[b][0],this.lf=a[b][1],this.jc||(this.jc=a[b][2]));return!0};
|
||||
k.start=function(a,b){this.mc||this.da("running");this.qa.Pb=!0;this.Un=a;this.Yn=b};k.stop=function(a,b){if(this.qa.Pb){this.qa.Pb=!1;this.ad=b-this.Yn;if(!this.mc){var c="stopped";if(this.ad){var d=a-this.Un,e=0<d?Math.round(1E3*this.ad/d):0,c=c+" (";Ed(this)&&(c+=this.eh+" ops, ");c+=this.ad+" cycles, "+d+" ms, "+e+" hz)"}this.da(c)}Rb(this,!0,2!=this.mc);this.Pd();fm(this,this.T.Ga)}};function Ed(a){return 1<a.sc.length||E(a,Zc)}
|
||||
function Jd(a,b,c){if(!c&&gm(a,b,a.sc))return!0;a.Sc.length&&(a.eh++,c=nb(a.ra,b),a.Sc[c][1]++,c=a.Xd[a.tf],c[0]=a.T.va,c[1]=a.T.xa.sa,c[2]=b,++a.tf==a.Xd.length&&(a.tf=0));return!1}function Eb(a,b){return gm(a,b,a.Ud)?(a.T.Cb(!0),!0):!1}function Fb(a,b){return gm(a,b,a.Rc)?(a.T.Cb(!0),!0):!1}function vb(a,b,c){a.da("break on input from port "+v(b)+": "+t(c));a.T.Cb(!0)}function Bb(a,b,c){a.da("break on output to port "+v(b)+": "+t(c));a.T.Cb(!0)}
|
||||
function hm(a,b){if(b==a.T.xa.sa)return a.T.xa;if(b==a.T.Eb.sa)return a.T.Eb;if(b==a.T.$a.sa)return a.T.$a;if(b==a.T.zb.sa)return a.T.zb;var c=new bc(a.T);c.load(b,!0);return c}function im(a,b,c,d){var e=b[2];null==e&&(a=hm(a,b[1]),e=c?a.gc(b[0],d||0,!0):a.jd(b[0],d||0,!0));16711680==(e&16711680)&&(e&=1048575);return e}k.pb=function(a,b){var c=255,d=im(this,a,!1,0);0<=d&&(c=nb(this.ra,d),void 0!==b&&jm(a,b));return c};
|
||||
k.ua=function(a,b){var c=65535,d=im(this,a,!1,1);0<=d&&(c=ob(this.ra,d),void 0!==b&&jm(a,b));return c};k.Od=function(a,b,c){var d=im(this,a,!0,0);0<=d&&(pb(this.ra,d,b),void 0!==c&&jm(a,c),Sb(this.T))};k.cd=function(a,b,c){var d=im(this,a,!0,1);0<=d&&(qb(this.ra,d,b),void 0!==c&&jm(a,c),Sb(this.T))};function km(a){return null==a[1]?"%"+p(a[2]):ea(a[0],a[1])}function jm(a,b){b=void 0===b?1:b;null!=a[2]&&(a[2]+=b);null!=a[1]&&(a[0]+=b,a[0]!=(a[0]&65535)&&(a[0]&=65535,a[2]=null))}
|
||||
function Ol(a){var b;a.sc=["exec"];if(void 0!==a.Ud)for(b=1;b<a.Ud.length;b++){var c=a.ra,d=im(a,a.Ud[b]);Jb(c.Fa[d>>c.wb],!1)}a.Ud=["read"];if(void 0!==a.Rc)for(b=1;b<a.Rc.length;b++)c=a.ra,d=im(a,a.Rc[b]),Jb(c.Fa[d>>c.wb],!0);a.Rc=["write"]}k.Yd=function(a,b,c){if(!lm(this,a,b)){b[2]=im(this,b);b[3]=c;a.push(b);if(a!=this.sc){var d=this.ra,e=im(this,b);d.Fa[e>>d.wb].Yd(e&d.ib,a==this.Rc)}c||this.da("breakpoint enabled: "+km(b)+" ("+a[0]+")");Pl(this);return!0}return!1};
|
||||
function lm(a,b,c,d){var e=!1;c=im(a,c);for(var f=1;f<b.length;f++){var g=b[f];if(c==im(a,g)){e=!0;if(d){b.splice(f,1);b!=a.sc&&(d=a.ra,Jb(d.Fa[c>>d.wb],b==a.Rc));g[3]||a.da("breakpoint cleared: "+km(g)+" ("+b[0]+")");Pl(a);break}a.da("breakpoint exists: "+km(g)+" ("+b[0]+")");break}}return e}function mm(a,b){for(var c=1;c<b.length;c++)a.da("breakpoint enabled: "+km(b[c])+" ("+b[0]+")");return b.length-1}
|
||||
function Kb(a,b,c,d){if(void 0===d)Kb(a,b,c,a.Ud),Kb(a,b,c,a.Rc);else for(var e=1;e<d.length;e++){var f=im(a,d[e]);if(f>=b&&f<b+c){var g=a.ra;g.Fa[f>>g.wb].Yd(f&g.ib,d==a.Rc)}}}function fm(a,b){if(void 0!==b)gm(a,b,a.sc,!0),a.mc=0;else for(var c=1;c<a.sc.length;c++){var d=a.sc[c];if(d[3]){if(!lm(a,a.sc,d,!0))break;c=0}}}
|
||||
function gm(a,b,c,d){var e=!1;16711680==(b&16711680)&&(b&=1048575);for(var f=1;f<c.length;f++){var g=c[f];if(b==im(a,g)){g[3]?lm(a,c,g,!0):d||a.da("breakpoint hit: "+km(g)+" ("+c[0]+")");e=!0;break}}return e}
|
||||
function nm(a,b,c,d){var e=[b[0],b[1],b[2]],f=a.pb(b,1),g=a.Mf[f],h=g[0],l=-1;205==h&&(h=a.pb(b,1),g=Yl[h]||$,f|=h<<8,h=g[0]);h>=Ul.length&&(l=a.pb(b,1),g=Zl[h-Ul.length][l>>3&7]);var n=2,h="";if(164<=f&&167>=f||170<=f&&175>=f)n=0;for(f=1;f<=n;f++){var q="",r=g[f];if(void 0!==r){var s=r&15;if(0!=s&&15!=s){var u=r&240;if(128<=u)if(0>l&&(l=a.pb(b,1)),160<=u)q=l>>3&7,176==(r&240)?q+=16:3<=(r&15)&&(q+=8),q=Z[q];else{if(128<=u){var q=a,y=r,s=b,B="",u=l>>6,B=l&7;3>u?(y=void 0,u||6!=B?(B=Vl[B],1==u?(y=q.pb(s,
|
||||
1),y&128?(y=y<<24>>24,B+="-"+t(-y)):B+="+"+t(y)):2==u&&(y=q.ua(s,2),B+="+"+v(y))):(y=q.ua(s,2),B=v(y)),B="["+B+"]"):B=Z[B+(1==(y&15)?0:8)];q=B}}else if(16==u)q="1";else if(0==u){q=a;u=r;s=b;y=" ";switch(u&15){case 1:u&12288&&(y=t(q.pb(s,1)));break;case 2:y=v(q.pb(s,1)<<24>>24);break;case 3:case 4:y=v(q.ua(s,2));break;case 6:u=q.ua(s,2);q=q.ua(s,2);y=km([u,q,void 0]);break;default:y="imm("+v(u)+")"}q=y}else 32==u?q="["+v(a.ua(b,2))+"]":48==u?(1==s?(q=a.pb(b,1),q=q<<24>>24):q=a.ua(b,2),q=b[0]+q&65535,
|
||||
q=om(a,[q,b[1],void 0])[0]||v(q)):96==u?q=Z[(r&3840)>>8]:112==u?q=Z[((r&3840)>>8)+16]:64==u?q="DS:[SI]":80==u&&(q="ES:[DI]");q.length||(q="type("+v(r)+")");0<h.length&&(h+=",");h+=q}}}l=km(e)+" ";n="";do n+=t(a.pb(e,1));while(e[0]!=b[0]);l+=(n+" ").substr(0,14);l+=(Ul[g[0]]+" ").substr(0,8);h&&(l+=" "+h);c&&(l=(l+" ").substr(0,50),l+=";",l=a.T.qa.mf?l+("cycles="+Ub(a.T).toString()+" cs="+p(a.T.ca.kg)):l+(c+(null!=d?"="+d.toString():"")));return l}
|
||||
function pm(a,b){var c;switch(b){case "V":c=td(a.T);break;case "D":c=a.T.Ca&1024;break;case "I":c=a.T.Ca&512;break;case "T":c=a.T.Ca&256;break;case "S":c=sd(a.T);break;case "Z":c=rd(a.T);break;case "A":c=qd(a.T);break;case "P":c=pd(a.T);break;case "C":c=od(a.T);break;default:c=0}return" "+b+(c?"1":"0")}function qm(a,b){return a.Hg+"="+v(a.sa)+(b?"["+p(a.Ya,6)+","+v(a.Nc)+"]":"")}function rm(a,b,c,d){return a+"="+(null!=b?v(b):"")+"["+p(c,6)+","+v(d-c)+"]"}
|
||||
function sm(a,b,c){var d=2==c?a.dk:a.Fc;c=d[0];var e=d[1],d=d[2];if(void 0!==b){"%"==b.charAt(0)&&(b=b.substr(1),e=null);var f=b,d=null;if(f.match(/^[a-z_][a-z0-9_]*$/i))for(var d=[],g=f.toUpperCase(),h=0;h<a.uc.length;h++){var f=a.uc[h][0],l=a.uc[h][2][g];if(void 0!==l){g=l.o;void 0!==g&&(h=l.s,void 0===h&&(h=f>>>4),d[0]=g,d[1]=h,void 0!==l.p&&(d[2]=l.p));break}}if(d&&d.length)return d;d=b.indexOf(":");0>d?null!=e?(c=tm(a,b),d=null):d=tm(a,b):(e=tm(a,b.substring(0,d)),c=tm(a,b.substring(d+1)),d=
|
||||
k.Db=function(a,b,c,d){var e=this;switch(c){case "debugInput":return this.Zf=this.wa[c]=d,d.onkeypress=function(a){if(13==a.keyCode){var b=d.value;d.value="";var c=Xl(e,b,!0);for(b in c)im(e,c[b]);a.preventDefault&&a.preventDefault()}},!0;case "debugEnter":return this.wa[c]=d,Ca(d,function(){if(e.Zf){var a=e.Zf.value;e.Zf.value="";var b=Xl(e,a,!0);for(a in b)im(e,b[a]);return!0}return!1}),!0;case "step":return this.wa[c]=d,Ca(d,function(a){var b=!1;ab(e,!0)||($a(e,!0),b=e.Gf(a?1:0),$a(e,!1));return b}),
|
||||
!0}return!1};k.Tc=function(){this.Zf&&this.Zf.focus()};function hm(a,b){var c,d="";for(c=8;d.length<c;){var e=a.tb(b,1);if(!e)break;d+=32<=e&&128>e?String.fromCharCode(e):"."}return d}function oi(a,b,c){for(var d in Yl)if(b==Yl[d]){a.fi[d]=c;break}}function E(a,b){return(a.kc&b)===b}
|
||||
function $c(a,b,c){var d=Zl[b],e=d&&E(a,d);if(e){var f=a.T.H>>8,g=a.T.K&255;if(33==b&&11==f||d==zj&&128<=g||d==Tl&&128>g)e=!1}if(e){if(d=(d=gm[b])&&d[f]||"")g=a.T,a.pb[Z[0]]=t(g.H&255),a.pb[Z[1]]=t(g.J&255),a.pb[Z[2]]=t(g.K&255),a.pb[Z[3]]=t(g.C&255),a.pb[Z[4]]=t(g.H>>8),a.pb[Z[5]]=t(g.J>>8),a.pb[Z[6]]=t(g.K>>8),a.pb[Z[7]]=t(g.C>>8),a.pb[Z[8]]=v(g.H),a.pb[Z[9]]=v(g.J),a.pb[Z[10]]=v(g.K),a.pb[Z[11]]=v(g.C),a.pb[Z[12]]=v(g.Y),a.pb[Z[13]]=v(g.I),a.pb[Z[14]]=v(g.G),a.pb[Z[15]]=v(g.F),a.pb[Z[16]]=v(g.ab.sa),
|
||||
a.pb[Z[17]]=v(g.ya.sa),a.pb[Z[18]]=v(g.Cb.sa),a.pb[Z[19]]=v(g.Hb.sa),a.pb[Z[20]]=v(g.va),d=" "+ka(a.pb,d);a.message("INT 0x"+t(b)+": AH="+t(f)+" at "+ea(c-a.T.ya.Ya,a.T.ya.sa)+d)}return e}function bd(a,b,c,d,e){a.message("INT 0x"+t(b)+": C="+(od(a.T)?1:0)+(e||"")+" (cycles="+d+(c?",level="+(c+1):"")+")")}
|
||||
k.ea=function(a,b,c,d,e,f,g){f||(f=0);f|=Pj;if(null==d||(this.kc&f)==f)f=null,null!=d&&(f=this.T.ya.sa,d-=this.T.ya.Ya),this.message(a.yh+"."+(null!=c?"outPort":"inPort")+"(0x"+v(b)+","+(e?e:"unknown")+(null!=c?",0x"+t(c):"")+")"+(null!=g?": 0x"+t(g):"")+(null!=d?" at "+ea(d,f):""))};k.message=function(a){this.da(a);this.T&&(this.kc&268435456&&this.T.Fb(),a=this.T,a.ca.Af=0,a.Qc-=a.A,a.A=0,a.jh())};k.Mn=function(){this.da("Type ? for list of debugger commands")};
|
||||
function Wl(a){var b;if(Ed(a)){if(!a.Xd||!a.Xd.length){a.Xd=Array(1E4);for(b=0;b<a.Xd.length;b++)a.Xd[b]=[0,null,0];a.uf=0}if(!a.Vc||!a.Vc.length)for(a.Vc=Array(256),b=0;b<a.Vc.length;b++)a.Vc[b]=[b,0]}else a.uf=0,a.Xd=[],a.Vc=[]}k.Ve=function(a){if(!jm(this))return!1;this.T.Ve(a);return!0};
|
||||
k.Gf=function(a,b,c){if(!jm(this))return!1;this.cd=0;do{a||Ed(this)&&Jd(this,this.T.Ga,!0);try{var d=this.T.Gf(a);0<d&&(this.cd+=d,Xb(this.T,d,!0),Tb(this.T,d),this.eh++)}catch(e){this.cd=0,cb(this.T,e.message||e)}}while(this.T.aa&240);!1!==c&&Sb(this.T);Rb(this,b||!1,!1);return 0<this.cd};k.Fb=function(){this.T.Fb()};function Rb(a,b,c){void 0===b&&(b=!0);void 0===c&&(c=!0);a.Ic=[a.T.va,a.T.ya.sa,void 0];b&&1!=a.nc?km(a,null,c):lm(a)}
|
||||
function jm(a){var b;if(b=a.T&&bb(a.T))b=a.T,b.qa.Qb?b=!0:(b.da(b.toString()+" not powered"),b=!1);b&&!ab(a.T)?(a=a.T,a.qa.ad?(a.da(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}k.$b=function(a,b){return!b&&(this.reset(!0),this.da(a?"resuming":"powering up"),a&&this.restore&&!this.restore(a))?!1:!0};k.Zb=function(a,b){b&&this.da(a?"suspending":"shutting down");return a&&this.save?this.save():!0};
|
||||
k.reset=function(a){Wl(this);this.cd=this.eh=0;this.Ic=[this.T.va,this.T.ya.sa,void 0];void 0===this.qa.Rb||a||this.da("reset");this.qa.Rb=!1;mm(this);a||Rb(this)};k.save=function(){var a=new gd(this);a.set(0,this.Ic);a.set(1,this.we);a.set(2,[this.Nh,this.mf,this.kc]);return a.data()};k.restore=function(a){var b=0;void 0!==a[2]&&(this.Ic=a[b++],this.we=a[b++],this.Nh=a[b][0],this.mf=a[b][1],this.kc||(this.kc=a[b][2]));return!0};
|
||||
k.start=function(a,b){this.nc||this.da("running");this.qa.Rb=!0;this.Vn=a;this.Zn=b};k.stop=function(a,b){if(this.qa.Rb){this.qa.Rb=!1;this.cd=b-this.Zn;if(!this.nc){var c="stopped";if(this.cd){var d=a-this.Vn,e=0<d?Math.round(1E3*this.cd/d):0,c=c+" (";Ed(this)&&(c+=this.eh+" ops, ");c+=this.cd+" cycles, "+d+" ms, "+e+" hz)"}this.da(c)}Rb(this,!0,2!=this.nc);this.Tc();mm(this,this.T.Ga)}};function Ed(a){return 1<a.tc.length||E(a,Zc)}
|
||||
function Jd(a,b,c){if(!c&&nm(a,b,a.tc))return!0;a.Vc.length&&(a.eh++,c=nb(a.ra,b),a.Vc[c][1]++,c=a.Xd[a.uf],c[0]=a.T.va,c[1]=a.T.ya.sa,c[2]=b,++a.uf==a.Xd.length&&(a.uf=0));return!1}function Eb(a,b){return nm(a,b,a.Ud)?(a.T.Fb(!0),!0):!1}function Fb(a,b){return nm(a,b,a.Uc)?(a.T.Fb(!0),!0):!1}function vb(a,b,c){a.da("break on input from port "+v(b)+": "+t(c));a.T.Fb(!0)}function Bb(a,b,c){a.da("break on output to port "+v(b)+": "+t(c));a.T.Fb(!0)}
|
||||
function om(a,b){if(b==a.T.ya.sa)return a.T.ya;if(b==a.T.Hb.sa)return a.T.Hb;if(b==a.T.ab.sa)return a.T.ab;if(b==a.T.Cb.sa)return a.T.Cb;var c=new bc(a.T);c.load(b,!0);return c}function pm(a,b,c,d){var e=b[2];null==e&&(a=om(a,b[1]),e=c?a.hc(b[0],d||0,!0):a.ld(b[0],d||0,!0));16711680==(e&16711680)&&(e&=1048575);return e}k.tb=function(a,b){var c=255,d=pm(this,a,!1,0);0<=d&&(c=nb(this.ra,d),void 0!==b&&qm(a,b));return c};
|
||||
k.ua=function(a,b){var c=65535,d=pm(this,a,!1,1);0<=d&&(c=ob(this.ra,d),void 0!==b&&qm(a,b));return c};k.Pd=function(a,b,c){var d=pm(this,a,!0,0);0<=d&&(pb(this.ra,d,b),void 0!==c&&qm(a,c),Sb(this.T))};k.ed=function(a,b,c){var d=pm(this,a,!0,1);0<=d&&(qb(this.ra,d,b),void 0!==c&&qm(a,c),Sb(this.T))};function rm(a){return null==a[1]?"%"+p(a[2]):ea(a[0],a[1])}function qm(a,b){b=void 0===b?1:b;null!=a[2]&&(a[2]+=b);null!=a[1]&&(a[0]+=b,a[0]!=(a[0]&65535)&&(a[0]&=65535,a[2]=null))}
|
||||
function Vl(a){var b;a.tc=["exec"];if(void 0!==a.Ud)for(b=1;b<a.Ud.length;b++){var c=a.ra,d=pm(a,a.Ud[b]);Jb(c.Fa[d>>c.zb],!1)}a.Ud=["read"];if(void 0!==a.Uc)for(b=1;b<a.Uc.length;b++)c=a.ra,d=pm(a,a.Uc[b]),Jb(c.Fa[d>>c.zb],!0);a.Uc=["write"]}k.Yd=function(a,b,c){if(!sm(this,a,b)){b[2]=pm(this,b);b[3]=c;a.push(b);if(a!=this.tc){var d=this.ra,e=pm(this,b);d.Fa[e>>d.zb].Yd(e&d.mb,a==this.Uc)}c||this.da("breakpoint enabled: "+rm(b)+" ("+a[0]+")");Wl(this);return!0}return!1};
|
||||
function sm(a,b,c,d){var e=!1;c=pm(a,c);for(var f=1;f<b.length;f++){var g=b[f];if(c==pm(a,g)){e=!0;if(d){b.splice(f,1);b!=a.tc&&(d=a.ra,Jb(d.Fa[c>>d.zb],b==a.Uc));g[3]||a.da("breakpoint cleared: "+rm(g)+" ("+b[0]+")");Wl(a);break}a.da("breakpoint exists: "+rm(g)+" ("+b[0]+")");break}}return e}function tm(a,b){for(var c=1;c<b.length;c++)a.da("breakpoint enabled: "+rm(b[c])+" ("+b[0]+")");return b.length-1}
|
||||
function Kb(a,b,c,d){if(void 0===d)Kb(a,b,c,a.Ud),Kb(a,b,c,a.Uc);else for(var e=1;e<d.length;e++){var f=pm(a,d[e]);if(f>=b&&f<b+c){var g=a.ra;g.Fa[f>>g.zb].Yd(f&g.mb,d==a.Uc)}}}function mm(a,b){if(void 0!==b)nm(a,b,a.tc,!0),a.nc=0;else for(var c=1;c<a.tc.length;c++){var d=a.tc[c];if(d[3]){if(!sm(a,a.tc,d,!0))break;c=0}}}
|
||||
function nm(a,b,c,d){var e=!1;16711680==(b&16711680)&&(b&=1048575);for(var f=1;f<c.length;f++){var g=c[f];if(b==pm(a,g)){g[3]?sm(a,c,g,!0):d||a.da("breakpoint hit: "+rm(g)+" ("+c[0]+")");e=!0;break}}return e}
|
||||
function um(a,b,c,d){var e=[b[0],b[1],b[2]],f=a.tb(b,1),g=a.Nf[f],h=g[0],l=-1;205==h&&(h=a.tb(b,1),g=em[h]||$,f|=h<<8,h=g[0]);h>=am.length&&(l=a.tb(b,1),g=fm[h-am.length][l>>3&7]);var n=2,h="";if(164<=f&&167>=f||170<=f&&175>=f)n=0;for(f=1;f<=n;f++){var q="",r=g[f];if(void 0!==r){var s=r&15;if(0!=s&&15!=s){var u=r&240;if(128<=u)if(0>l&&(l=a.tb(b,1)),160<=u)q=l>>3&7,176==(r&240)?q+=16:3<=(r&15)&&(q+=8),q=Z[q];else{if(128<=u){var q=a,y=r,s=b,B="",u=l>>6,B=l&7;3>u?(y=void 0,u||6!=B?(B=bm[B],1==u?(y=q.tb(s,
|
||||
1),y&128?(y=y<<24>>24,B+="-"+t(-y)):B+="+"+t(y)):2==u&&(y=q.ua(s,2),B+="+"+v(y))):(y=q.ua(s,2),B=v(y)),B="["+B+"]"):B=Z[B+(1==(y&15)?0:8)];q=B}}else if(16==u)q="1";else if(0==u){q=a;u=r;s=b;y=" ";switch(u&15){case 1:u&12288&&(y=t(q.tb(s,1)));break;case 2:y=v(q.tb(s,1)<<24>>24);break;case 3:case 4:y=v(q.ua(s,2));break;case 6:u=q.ua(s,2);q=q.ua(s,2);y=rm([u,q,void 0]);break;default:y="imm("+v(u)+")"}q=y}else 32==u?q="["+v(a.ua(b,2))+"]":48==u?(1==s?(q=a.tb(b,1),q=q<<24>>24):q=a.ua(b,2),q=b[0]+q&65535,
|
||||
q=vm(a,[q,b[1],void 0])[0]||v(q)):96==u?q=Z[(r&3840)>>8]:112==u?q=Z[((r&3840)>>8)+16]:64==u?q="DS:[SI]":80==u&&(q="ES:[DI]");q.length||(q="type("+v(r)+")");0<h.length&&(h+=",");h+=q}}}l=rm(e)+" ";n="";do n+=t(a.tb(e,1));while(e[0]!=b[0]);l+=(n+" ").substr(0,14);l+=(am[g[0]]+" ").substr(0,8);h&&(l+=" "+h);c&&(l=(l+" ").substr(0,50),l+=";",l=a.T.qa.nf?l+("cycles="+Ub(a.T).toString()+" cs="+p(a.T.ca.ig)):l+(c+(null!=d?"="+d.toString():"")));return l}
|
||||
function wm(a,b){var c;switch(b){case "V":c=td(a.T);break;case "D":c=a.T.Ca&1024;break;case "I":c=a.T.Ca&512;break;case "T":c=a.T.Ca&256;break;case "S":c=sd(a.T);break;case "Z":c=rd(a.T);break;case "A":c=qd(a.T);break;case "P":c=pd(a.T);break;case "C":c=od(a.T);break;default:c=0}return" "+b+(c?"1":"0")}function xm(a,b){return a.Fg+"="+v(a.sa)+(b?"["+p(a.Ya,6)+","+v(a.Pc)+"]":"")}function ym(a,b,c,d){return a+"="+(null!=b?v(b):"")+"["+p(c,6)+","+v(d-c)+"]"}
|
||||
function zm(a,b,c){var d=2==c?a.ek:a.Ic;c=d[0];var e=d[1],d=d[2];if(void 0!==b){"%"==b.charAt(0)&&(b=b.substr(1),e=null);var f=b,d=null;if(f.match(/^[a-z_][a-z0-9_]*$/i))for(var d=[],g=f.toUpperCase(),h=0;h<a.wc.length;h++){var f=a.wc[h][0],l=a.wc[h][2][g];if(void 0!==l){g=l.o;void 0!==g&&(h=l.s,void 0===h&&(h=f>>>4),d[0]=g,d[1]=h,void 0!==l.p&&(d[2]=l.p));break}}if(d&&d.length)return d;d=b.indexOf(":");0>d?null!=e?(c=Am(a,b),d=null):d=Am(a,b):(e=Am(a,b.substring(0,d)),c=Am(a,b.substring(d+1)),d=
|
||||
null)}return[c,e,d]}
|
||||
function tm(a,b,c){var d;if(void 0!==b)switch(b=b.toUpperCase(),b){case "AX":d=a.T.H;break;case "BX":d=a.T.C;break;case "CX":d=a.T.J;break;case "DX":d=a.T.K;break;case "SI":d=a.T.G;break;case "DI":d=a.T.F;break;case "BP":d=a.T.I;break;case "SP":d=a.T.Y;break;case "CS":d=a.T.xa.sa;break;case "DS":d=a.T.Eb.sa;break;case "ES":d=a.T.$a.sa;break;case "SS":d=a.T.zb.sa;break;case "IP":d=a.T.va;break;default:d=da(b),void 0===d&&a.da("invalid "+(c?c:"value")+": "+b)}else a.da("missing "+(c?c:"value"));return d}
|
||||
function yj(a,b,c,d){function e(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0}var f=[],g=[],h;for(h in d){var l=d[h];"number"==typeof l&&(d[h]=l={o:l});var n=l.o,q=l.s,r=l.a;void 0!==n&&(void 0!==q&&(f[0]=n,f[1]=q,l.p=im(a,f)),na(g,[n,h],e));r&&(l.a=r.replace(/''/g,'"'))}a.uc.push([b,c,d,g])}
|
||||
function om(a,b,c){for(var d=[],e=im(a,b),f=0;f<a.uc.length;f++){var g=a.uc[f][0],h=a.uc[f][1];if(e>=g&&e<g+h){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?um(a,f,b,d):c&&(b=~b,um(a,f,b-1,d),um(a,f,b,d));break}}return d}function um(a,b,c,d){var e={},f=a.uc[b][3],g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.uc[b][2][h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}
|
||||
function vm(a,b){if("?"==b)a.da("\nfrequency commands:"),a.da("\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.da("frequency data cleared");d++}else if(void 0!==b)a.da("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],g=e[c][1];g&&(a.da((Ul[a.Mf[f][0]]+" ").substr(0,5)+" ("+t(f)+"): "+g+" times"),d++)}}d||a.da("no frequency data available")}}
|
||||
function wm(a,b){if("l"==b[0]&&void 0===b[1]||"?"==b[1])a.da("\nlist/load commands:"),a.da("\tl [address] [drive #] [sector #] [# sectors]"),a.da("\tln [address] lists symbol(s) nearest to address");else{var c=[],d,e=0,f=0,g=!1;if("json"==b[1])g=!0;else if(d="ln"==b[0],c=sm(a,b[1],d?1:2),d){e=om(a,c,!0);e.length?(e[0]&&(g="",(f=c[0]-e[1])&&(g=" + "+v(f)),a.da(e[0]+" ("+ea(e[1],c[1])+")"+g)),4<e.length&&e[4]&&(g="",(f=e[5]-c[0])&&(g=" - "+v(f)),a.da(e[4]+" ("+ea(e[5],c[1])+")"+g))):a.da("no symbols");
|
||||
return}d=tm(a,b[2],"drive #");if(void 0!==d){if(!g){e=tm(a,b[3],"sector #");if(void 0===e)return;f=tm(a,b[4],"# of sectors");void 0===f&&(f=1)}var h=a.Im;2<=d&&a.Hk&&(d-=2,h=a.Hk);if(h){var l=h.sk(d);if(l)if(l.za)if(g)a.da(nl(l.za));else if(h.gm(l,e,f)){for(var n=0,q=!1,e=km(c);!q&&0<l.eb--;)(function(a,b){h.rc(l,function(c){0>c?(a.da("out of data at address "+km(b)),q=!0):(a.Od(b,c,1),n++)})})(a,c);a.da(n+" bytes read at "+e)}else a.da("sector "+e+" request out of range");else a.da("drive "+d+" not loaded");
|
||||
function Am(a,b,c){var d;if(void 0!==b)switch(b=b.toUpperCase(),b){case "AX":d=a.T.H;break;case "BX":d=a.T.C;break;case "CX":d=a.T.J;break;case "DX":d=a.T.K;break;case "SI":d=a.T.G;break;case "DI":d=a.T.F;break;case "BP":d=a.T.I;break;case "SP":d=a.T.Y;break;case "CS":d=a.T.ya.sa;break;case "DS":d=a.T.Hb.sa;break;case "ES":d=a.T.ab.sa;break;case "SS":d=a.T.Cb.sa;break;case "IP":d=a.T.va;break;default:d=da(b),void 0===d&&a.da("invalid "+(c?c:"value")+": "+b)}else a.da("missing "+(c?c:"value"));return d}
|
||||
function Cj(a,b,c,d){function e(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0}var f=[],g=[],h;for(h in d){var l=d[h];"number"==typeof l&&(d[h]=l={o:l});var n=l.o,q=l.s,r=l.a;void 0!==n&&(void 0!==q&&(f[0]=n,f[1]=q,l.p=pm(a,f)),na(g,[n,h],e));r&&(l.a=r.replace(/''/g,'"'))}a.wc.push([b,c,d,g])}
|
||||
function vm(a,b,c){for(var d=[],e=pm(a,b),f=0;f<a.wc.length;f++){var g=a.wc[f][0],h=a.wc[f][1];if(e>=g&&e<g+h){b=ma(a.wc[f][3],[b[0]],function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0});0<=b?Bm(a,f,b,d):c&&(b=~b,Bm(a,f,b-1,d),Bm(a,f,b,d));break}}return d}function Bm(a,b,c,d){var e={},f=a.wc[b][3],g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.wc[b][2][h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}
|
||||
function Cm(a,b){if("?"==b)a.da("\nfrequency commands:"),a.da("\tclear\tclear all frequency counts");else{var c,d=0;if(a.Vc)if("clear"==b){for(c=0;c<a.Vc.length;c++)a.Vc[c]=[c,0];a.da("frequency data cleared");d++}else if(void 0!==b)a.da("unknown frequency command: "+b),d++;else{var e=a.Vc.slice();e.sort(function(a,b){return b[1]-a[1]});for(c=0;c<e.length;c++){var f=e[c][0],g=e[c][1];g&&(a.da((am[a.Nf[f][0]]+" ").substr(0,5)+" ("+t(f)+"): "+g+" times"),d++)}}d||a.da("no frequency data available")}}
|
||||
function Dm(a,b){if("l"==b[0]&&void 0===b[1]||"?"==b[1])a.da("\nlist/load commands:"),a.da("\tl [address] [drive #] [sector #] [# sectors]"),a.da("\tln [address] lists symbol(s) nearest to address");else{var c=[],d,e=0,f=0,g=!1;if("json"==b[1])g=!0;else if(d="ln"==b[0],c=zm(a,b[1],d?1:2),d){e=vm(a,c,!0);e.length?(e[0]&&(g="",(f=c[0]-e[1])&&(g=" + "+v(f)),a.da(e[0]+" ("+ea(e[1],c[1])+")"+g)),4<e.length&&e[4]&&(g="",(f=e[5]-c[0])&&(g=" - "+v(f)),a.da(e[4]+" ("+ea(e[5],c[1])+")"+g))):a.da("no symbols");
|
||||
return}d=Am(a,b[2],"drive #");if(void 0!==d){if(!g){e=Am(a,b[3],"sector #");if(void 0===e)return;f=Am(a,b[4],"# of sectors");void 0===f&&(f=1)}var h=a.Jm;2<=d&&a.Ik&&(d-=2,h=a.Ik);if(h){var l=h.sk(d);if(l)if(l.za)if(g)a.da(ul(l.za));else if(h.hm(l,e,f)){for(var n=0,q=!1,e=rm(c);!q&&0<l.hb--;)(function(a,b){h.sc(l,function(c){0>c?(a.da("out of data at address "+rm(b)),q=!0):(a.Pd(b,c,1),n++)})})(a,c);a.da(n+" bytes read at "+e)}else a.da("sector "+e+" request out of range");else a.da("drive "+d+" not loaded");
|
||||
else a.da("invalid drive: "+d)}else a.da("disk controller not present")}}}
|
||||
function dm(a,b,c){if(b&&"?"==b[1])a.da("\nregister commands:"),a.da("\tr\t\tdisplay all registers"),a.da("\tr [target=#]\tmodify target register"),a.da("supported targets:"),a.da("\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 g=f.indexOf("=");if(0<g)c=f.substr(g+1),f=f.substr(0,g);else if(2<b.length)c=b[2];else{a.da("missing value for "+b[1]);return}b=parseInt(c,16);if(isNaN(b)){a.da("invalid value: "+
|
||||
function km(a,b,c){if(b&&"?"==b[1])a.da("\nregister commands:"),a.da("\tr\t\tdisplay all registers"),a.da("\tr [target=#]\tmodify target register"),a.da("supported targets:"),a.da("\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.zc;else{d=!1;c=null;var g=f.indexOf("=");if(0<g)c=f.substr(g+1),f=f.substr(0,g);else if(2<b.length)c=b[2];else{a.da("missing value for "+b[1]);return}b=parseInt(c,16);if(isNaN(b)){a.da("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":kd(a.T,b);break;case "ES":md(a.T,b);break;case "SS":ld(a.T,b);break;case "CS":d=!0;jd(a.T,b);a.Fc=[a.T.va,a.T.xa.sa,void 0];break;case "IP":d=!0;G(a.T,b);a.Fc=[a.T.va,a.T.xa.sa,void 0];break;case "PC":Uc(a.T,b);break;case "C":b?zd(a.T):ud(a.T);break;case "P":b?(f=a.T,pd(f)||(f.ma^=1)):(f=a.T,pd(f)&&(f.ma^=1));break;case "A":b?Ad(a.T):vd(a.T);break;case "Z":b?Bd(a.T):wd(a.T);break;case "S":b?Cd(a.T):
|
||||
xd(a.T);break;case "I":b?(f=a.T,f.Ca|=512):(f=a.T,f.Ca&=-513);break;case "D":b?(f=a.T,f.Ca|=1024):(f=a.T,f.Ca&=-1025);break;case "V":b?Dd(a.T):yd(a.T);break;default:c=!0;if(80286<=a.T.Ia)switch(c=!1,f){case "MS":$e.call(a.T,b);break;case "TR":a.T.Xe.load(b);break;default:c=!0}if(c){a.da("unknown register: "+f);return}}Sb(a.T);a.da("\nupdated registers:");c=!0}}f=e;void 0===f&&(f=!!(a.T.Dc&1));e="AX="+v(a.T.H)+" BX="+v(a.T.C)+" CX="+v(a.T.J)+" DX="+v(a.T.K)+" SP="+v(a.T.Y)+" BP="+v(a.T.I)+" SI="+v(a.T.G)+
|
||||
" DI="+v(a.T.F)+"\n";e+=qm(a.T.Eb,f)+" "+qm(a.T.$a,f)+" "+qm(a.T.zb,f);e=e+(f?"\n":" ")+(qm(a.T.xa,f)+" IP="+v(a.T.va)+pm(a,"V")+pm(a,"D")+pm(a,"I")+pm(a,"T")+pm(a,"S")+pm(a,"Z")+pm(a,"A")+pm(a,"P")+pm(a,"C"));f&&(f=a.ra,e+=" MS="+v(a.T.Dc)+"\n"+rm("LD",a.T.bd.sa,a.T.bd.Ya,a.T.bd.Ya+a.T.bd.Nc)+" "+rm("GD",null,a.T.xc,a.T.ze)+" "+rm("ID",null,a.T.Gc,a.T.$d)+" TR="+v(a.T.Xe.sa)+" A20="+(f.Of==f.ed?"ON":"OFF"));a.da((c?"":"\n")+e);d&&(a.Fc=[a.T.va,a.T.xa.sa,void 0],em(a,km(a.Fc)))}}
|
||||
function xm(a,b,c){var d="tr"==b;b=null!=c?parseInt(c,10):1;var e=1==b?0:1;Ba(b,function(){return $a(a,!0)&&a.Ff(e,d,!1)},function(){Sb(a.T);$a(a,!1)})}
|
||||
function em(a,b,c,d){b=sm(a,b,1);if(null!=b[0]){void 0===d&&(d=1);var e=[65535,b[1],a.ra.Of];if(void 0!==c){e=sm(a,c,1);if(null==e[0]||e[0]<b[0])return;if(256<e[0]-b[0]){a.da("range too large");return}e[0]++;d=-1}for(c=b[0]!=a.Fc[0];d&&(null!=b[1]?b[0]<e[0]:b[2]<e[2]);){d--;var f=a.pb(b),g=ab(a,!1)||a.mc?a.ad:null;if(38==f||46==f||54==f||62==f||240==f||242==f||243==f)g=null,d||d++;var f=null!=g?"cycles":null,h=om(a,b);if(h[0]){var l=h[0]+":";c=!1;h[2]&&(l+=" "+h[2]);a.da(l)}c&&a.da();h[3]&&(f=h[3],
|
||||
g=null);c=nm(a,b,f,g);a.da(c);a.Fc=b;c=!1}d&&a.da("end of memory")}}function Ql(a,b,c){c&&(b?a.Mh=b:b=a.Mh);a=b?b.split(0<=b.indexOf("|")?"|":";"):[""];for(var d in a)a[d]=la(a[d]);return a}
|
||||
function bm(a,b){try{if(!b.length&&a.lf&&(a.da("ended assemble @"+km(a.we)),a.Fc=a.we,a.lf=!1),b=b.toLowerCase(),bb(a)&&!ab(a,!0)&&0<b.length){if(a.lf)b="a "+km(a.we)+" "+b;else{var c,d,e;switch(b){case "reset":a.Ka&&a.Ka.reset();return;case "ver":a.da("PCjs version 1.16.0 (release,noprefetch,eatests,dwordarrays)");return;default:for(d=b.charAt(0),e=1;e<b.length;e++){c=b.charAt(e);if(" "==c)break;if("r"==d||"a">c||"z"<c){b=b.substring(0,e)+" "+b.substring(e);break}}}}var f=b.split(" ");switch(f[0].charAt(0)){case "a":var g=
|
||||
sm(a,f[1],1);if(null!=g[0])if(a.we=g,void 0===f[2])a.da("begin assemble @"+km(g)),a.lf=!0,Sb(a.T);else{var h;a.da("not supported yet");h=[];if(h.length){for(var l=0;l<h.length;l++)a.Od(g,h[l],1);a.da(nm(a,a.we))}}break;case "b":a:{var n=f[1],q=f[0].charAt(1);if(q&&"?"!=q)if("l"==q)l=0,l+=mm(a,a.sc),l+=mm(a,a.Ud),(l+=mm(a,a.Rc))||a.da("no breakpoints");else if(void 0===n)a.da("missing breakpoint address");else{l=[];if("*"!=n&&(l=sm(a,n,1),null==l[0]))break a;n=null==l[0]?n:v(l[0]);"c"==q?null==l[0]?
|
||||
(Ol(a),a.da("all breakpoints cleared")):lm(a,a.sc,l,!0)||lm(a,a.Ud,l,!0)||lm(a,a.Rc,l,!0)||a.da("breakpoint missing: "+km(l)):"i"==q?a.da("breakpoint "+(sb(a.ra,l[0])?"enabled":"cleared")+": port "+n+" (input)"):"o"==q?a.da("breakpoint "+(wb(a.ra,l[0])?"enabled":"cleared")+": port "+n+" (output)"):null!=l[0]&&("p"==q?a.Yd(a.sc,l):"r"==q?a.Yd(a.Ud,l):"w"==q?a.Yd(a.Rc,l):a.da("unknown breakpoint command: "+q))}else a.da("\nbreakpoint commands:"),a.da("\tbi [p]\ttoggle break on input port [p]"),a.da("\tbo [p]\ttoggle break on output port [p]"),
|
||||
a.da("\tbp [a]\tset exec breakpoint at addr [a]"),a.da("\tbr [a]\tset read breakpoint at addr [a]"),a.da("\tbw [a]\tset write breakpoint at addr [a]"),a.da("\tbc [a]\tclear breakpoint at addr [a]"),a.da("\tbl\tlist all breakpoints")}break;case "c":a.ag&&(a.ag.value="");break;case "d":a:{var l=f[0],r=f[1],s=f[2],u;if("?"==r){l="symbols";for(u in Rl)a.ei[u]&&(l.length&&(l+=","),l+=u);l+=",state";a.da("\ndump commands:");a.da("\tdb [a] [#] dump bytes at address a");a.da("\tdw [a] [#] dump words at address a");
|
||||
a.da("\tds [s] dump descriptor for selector s");l.length&&a.da("dumps are also available for: "+l)}else if("state"==r)a.da(ym(a.Ka,!0));else if("symbols"==r)for(l=0;l<a.uc.length;l++){var y=a.uc[l][0],B=a.uc[l][2],M;for(M in B)if("."!=M.charAt(0)){var V=B[M],va=V.o;if(void 0!==va){var wa=V.s;void 0===wa&&(wa=y>>>4);var xb=B[M].l;xb&&(M=xb);a.da(ea(va,wa)+" "+M)}}}else{for(u in Rl)if(r==u){var Qb=a.ei[u];Qb?Qb(s):a.da("no dump registered for "+r);break a}var W=sm(a,r,2);if(null!=W[0])if("ds"==
|
||||
l){var K=hm(a,W[0]);if(null!=K.sa){var w="selector="+v(W[0])+" limit="+v(K.Nc)+" base="+p(K.Ya);if(K.Oa){w+=" access="+v(K.Oa);if(K.Oa&4096)K.Oa&2048?(w+="code:",w+=K.Oa&512?"readable,":"execonly,",w+=K.Oa&1024?"conforming,":"nonconforming,"):(w+="data:",w+=K.Oa&512?"writeable,":"readonly,",w+=K.Oa&1024?"expand down,":"expand up,"),w+=K.Oa&256?"accessed":"not accessed";else switch(w+="type:",K.Oa&7936){case 256:w+="tss";break;case 512:w+="ldt";break;case 768:w+="tss(busy)";break;case 1024:w+="call";
|
||||
break;case 1280:w+="task";break;case 1536:w+="int";break;case 1792:w+="trap";break;default:w+="unknown"}w+=",dpl"+(K.Oa>>13&24576);w+=K.Oa&32768?",present":",not present"}a.da(w)}else a.da("invalid selector: "+v(W[0]))}else{var R=0;void 0!==s&&("l"==s.charAt(0)&&(s=s.substr(1)),R=parseInt(s,10));var I="";R||(R=8);for(var yb=0;yb<R;yb++){for(var La=f="",r=km(W),ga=0,X=0;16>X;X++){var Xa=a.pb(W,1);"dw"==l?X&1&&(f+=v(ga|Xa<<8)+(7==X?" - ":" ")):f+=t(Xa)+(7==X?"-":" ");La+=32<=Xa&&128>Xa?String.fromCharCode(Xa):
|
||||
".";ga=Xa}I&&(I+="\n");I+=r+" "+f+" "+La}I&&a.da(I);a.dk=W}}}break;case "e":var Hc=f[1];if(void 0===Hc)a.da("missing address");else{var jc=sm(a,Hc,2);if(null!=jc[0])for(l=2;l<f.length;l++){var jk=parseInt(f[l],16);a.da("setting "+km(jc)+" to "+t(jk));a.Od(jc,jk,1)}}break;case "f":vm(a,f[1]);break;case "g":a:{var kk=f[1];if(void 0!==kk){var lk=sm(a,kk,1);if(null==lk[0])break a;a.Yd(a.sc,lk,!0)}a.Ue(!0)||a.da('cpu not available, "g" command ignored')}break;case "h":La=f[1];if(a.qa.Pb&&void 0===La)a.Cb();
|
||||
else{l="";r=10;ga=a.tf;X=a.Xd;if(X.length){var Pa=void 0===La?a.Ul:parseInt(La,10);isNaN(Pa)?Pa=r:l="more ";Pa>X.length&&(a.da("note: only "+X.length+" available"),Pa=X.length);ga-=Pa;0>ga&&(null!=X[X.length-1][1]?ga+=X.length:(Pa=ga+Pa,ga=0));for(void 0!==La&&a.da(Pa+" instructions earlier:");r&&ga!=a.tf;){var lc=X[ga];if(null==lc[1])break;lc=[lc[0],lc[1],lc[2]];a.da(nm(a,lc,"history",-Pa));++ga==X.length&&(ga=0);a.Ul=--Pa;r--}}10==r&&(a.da("no "+l+"history available"),a.Ul=void 0)}break;case "i":var Ue=
|
||||
f[1];if(Ue&&"?"!=Ue){var Ve=tm(a,Ue);if(void 0!==Ve){var Om=ub(a.ra,Ve);a.da(v(Ve)+": "+t(Om))}}else a.da("\ninput commands:"),a.da("\ti [p]\tread port [p]"),a.da("warning: port accesses can affect hardware state");break;case "l":wm(a,f);break;case "m":a:{l=null;I=f[1];"?"==I&&(I=void 0);if(void 0!==I){r=0;if("all"==I)r=4294967295,I=null;else if("on"==I)l=!0,I=null;else if("off"==I)l=!1,I=null;else{for(R in Rl)if(I==R){r=Rl[R];l=!!(a.jc&r);break}if(!r){a.da("unknown message category: "+I);break a}}r&&
|
||||
("on"==f[2]?(a.jc|=r,l=!0):"off"==f[2]&&(a.jc&=~r,l=!1))}r=0;W="";for(R in Rl)if(!I||I==R)if(yb=!!(a.jc&Rl[R]),null===l||l==yb)W&&(W+=","),++r%10||(W+="\n\t"),W+=R;void 0===I&&a.da("\nmessage commands:\n\tm [category] [on|off]\tturn categories on/off");a.da((null!==l?l?"messages on: ":"messages off: ":"message categories:\n\t")+(W||"none"))}break;case "o":var We=f[1],Pm=f[2];if(We&&"?"!=We){var mk=tm(a,We,"port #"),nk=tm(a,Pm);void 0!==mk&&void 0!==nk&&Ab(a.ra,mk,nk)}else a.da("\noutput commands:"),
|
||||
a.da("\to [p] [d]\twrite data [d] to port [p]"),a.da("warning: port accesses can affect hardware state");break;case "p":case "pr":var ok="pr"==f[0]?1:0,l=1+ok;if(a.mc)a.da("step in progress");else{var Ld,r=!1,Qa=[a.T.va,a.T.xa.sa,void 0];do switch(Ld=!1,a.pb(Qa)){case 38:case 46:case 54:case 62:case 240:jm(Qa,1);Ld=!0;break;case 204:case 206:a.mc=l;jm(Qa,1);break;case 205:case 224:case 225:case 226:a.mc=l;jm(Qa,2);break;case 232:a.mc=l;jm(Qa,3);break;case 154:a.mc=l;jm(Qa,5);break;case 255:a.mc=0<=
|
||||
nm(a,Qa).indexOf("CALL")?l:0;break;case 243:case 242:jm(Qa,1);r=Ld=!0;break;case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:r&&(a.mc=l,jm(Qa,1))}while(Ld);a.mc?(a.Yd(a.sc,Qa,!0),a.Ue()||(a.T.Pd(),a.mc=0)):xm(a,ok?"tr":"t")}break;case "r":dm(a,f);break;case "t":case "tr":xm(a,f[0],f[1]);break;case "u":em(a,f[1],f[2],8);break;case "x":a:if(void 0===f[1]||"?"==f[1])a.da("\nexecution options:"),a.da("\tcs int #\tset checksum cycle interval to #"),a.da("\tcs start #\tset checksum cycle start count to #"),
|
||||
a.da("\tcs stop #\tset checksum cycle stop count to #"),a.da("\tsp #\t\tset speed multiplier to #");else switch(f[1]){case "cs":var Mc;void 0!==f[3]&&(Mc=parseInt(f[3],10));switch(f[2]){case "int":a.T.ca.wf=Mc;break;case "start":a.T.ca.mg=Mc;break;case "stop":a.T.ca.yf=Mc;break;default:a.da("unknown cs option");break a}void 0!==Mc&&Ob(a.T);a.da("checksums "+(a.T.qa.mf?"enabled":"disabled"));break;case "sp":void 0!==f[2]&&Wb(a.T,parseInt(f[2],10));a.da("target speed: "+(a.T.ca.Oe.toFixed(2)+"Mhz")+
|
||||
" ("+a.T.ca.Jd+"x)");break;default:a.da("unknown option: "+f[1])}break;case "?":var l="commands:",Md;for(Md in Tl)l+="\n"+Md+" ".substr(0,7-Md.length)+Tl[Md];Ed(a)||(l+="\nnote: frequency/history disabled if no exec breakpoints");a.da(l);break;default:a.da("unknown command: "+b)}}}catch(Qm){a.da("debugger sad: "+Qm.message)}}Ha(function(){for(var a=D(window.document,"pcjs","debugger"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new Nl(d);Za(d,c)}});
|
||||
function gd(a,b,c){this.id=a.id;this.key=zm(a,b,c);this.fa=a.fa;Am(this,a.ap)}function zm(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}
|
||||
gd.prototype={set:function(a,b){try{this[this.id][a]=b}catch(c){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.Ci=!0):this.Ci?!0:xa()&&(a=ya(this.key))?(this[this.id]=a,this.Ci=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){x(b.message||b),a=!1}return a},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},
|
||||
clear:function(a){Am(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(f){}b.splice(c,1);c=0}},Ra:function(a){this.fa&&E(this.fa,131072)&&this.fa.message(a)}};function Am(a,b){a[a.id]={};b&&a.set("parms",b);a.Ci=!1}
|
||||
function Bm(a){var b=!0;if(xa()){var c=JSON.stringify(a[a.id]);za(a.key,c)||(x("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}
|
||||
function Cm(a,b,c){z.call(this,"Computer",a,Cm);this.qa.Ob=!1;this.jg=a.buswidth;this.Pc=Dm;this.Ig=null;this.uh=!1;this.url=b?b.url:null;this.ip=(Math.random()+0.1).toString(36).substr(2,12);this.Qc=Em(this);if(this.T=Ya("CPU",this.id)){this.fa=Ya("Debugger",this.id);this.ra=new gb({id:this.Kk+".bus",buswidth:this.jg},this.T,this.fa);var d,e=Va(this.id);if((this.Cg=Ya("Panel",this.id))&&this.Cg.ag)for(b=0;b<e.length;b++)d=e[b],d.Ja=this.Cg.Ja,d.da=this.Cg.da,d.ag=this.Cg.ag;for(b=0;b<e.length;b++)d=
|
||||
e[b],d.oc&&d.oc(this,this.ra,this.T,this.fa);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Sh=d:this.Pc=parseInt(d,10));var f;if(a=Oa&&Oa.state||(f=!0,a.state))b=this.fm=a,f||(this.uh=!0,this.Pc=Dm),this.Pc&&(this.Vh=new gd(this,"1.16.0"),this.Vh.load()?b=null:delete this.Vh);!b&&this.Pc&&(f=null,this.Qc&&(f=ta()+"/api/v1/user?req=load&user="+this.Qc+"&state="+zm(this,"1.16.0")),b=f)&&(this.uh=!0);b?sa(b,!0,null,this,this.co):this.Ta();c||Fm(this,this.Lh)}else x("Unable to find CPU component")}
|
||||
A(z,Cm);var Dm=0;k=Cm.prototype;k.rf=function(){return this.ip};k.je=function(){return this.Qc?this.Qc:""};k.co=function(a,b,c){c?(this.Sh=null,this.uh=!1,this.Ja("Unable to load machine state from server (error "+c+(b?": "+la(b):"")+")")):this.Ig=b;this.Ta()};function Fm(a,b,c){for(var d=Va(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!bb(f)){bb(f,function(){Fm(a,b,c)});return}}b.call(a,c)}
|
||||
function Gm(a,b){var c=new gd(a,"1.16.0","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.Ja("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
|
||||
k.Lh=function(a){void 0===a&&(a=this.Pc||(this.Ig?1:Dm));var b=!1,c=!1;this.Dk=!1;var d=this.Vh||new gd(this,"1.16.0");if(-1==a)b=!0;else if(a>Dm){if(d.load(this.Ig)){this.Ze=new gd(this,"1.16.0","failsafe");this.Ze.load()&&(Hm(this,d),a=2,Am(this.Ze));this.Ze.set("timestamp",pa());Bm(this.Ze);var e=this.Pc&&!this.uh;if(1==a||ua("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==
|
||||
f&&"no machine state"!=g?(this.Ja("Error: "+g),"unable to verify user"==g&&(za("user",""),this.Qc=null)):this.da(f+": "+g),Am(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Gm(this,c?d:null)}else 2==a&&d.clear()}else Gm(this);delete this.Ig;delete this.Vh}e=Va(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.T&&(c=Im(this,g,d,b,c));b=[d,a,c];-1!=a?Fm(this,this.wk,b):this.wk(b)};
|
||||
function Im(a,b,c,d,e){if(!b.qa.Ob){b.qa.Ob=!0;if(b.Zb){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.Zb(f,d)&&f&&(x("Unable to restore state for "+b.type),a.fm&&!a.Ig?(c.clear(),a.Pc=Dm,window&&window.location.reload()):a.Dk=!0,b.Zb(null),e=!1)}if(!d&&b.rk)for(a=b.rk.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
|
||||
k.wk=function(a){var b=a[0],c=0>a[1];a=a[2];this.qa.Ob=!0;this.Bk||(this.da("PCjs v1.16.0\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.Bk=!0);this.T&&Im(this,this.T,b,c,a);this.Dk&&(Hm(this,b),b.clear());!c&&this.Ze&&(this.Ze.clear(),delete this.Ze)};
|
||||
function Hm(a,b){if(ua("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.je(),d=b.toString(),e={app:"PCjs",ver:"1.16.0"};e.url=a.url;e.user=c;e.type="bug";e.data=d;sa("http://www.pcjs.org/api/v1/report",!0,e)}}
|
||||
function ym(a,b,c){var d,e="none",f=new gd(a,"1.16.0"),g=new gd(a,"1.16.0","validate"),h=pa();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.16.0");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.T&&a.T.Yb&&(c&&a.T.Cb(),d=a.T.Yb(b,c),"object"===typeof d&&f.set(a.T.id,d),c&&(a.T.qa.Ob=!1,!1===d&&(e=null)));for(var h=Va(a.id),l=0;l<h.length;l++){var n=h[l];n.qa.Ob&&(n.Yb&&(d=n.Yb(b,c),"object"===typeof d&&f.set(n.id,d)),c&&(n.qa.Ob=
|
||||
!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.Qc&&Jm(a,a.Qc,f.toString()),Bm(g)&&Bm(f)||(e=null,d=h=!0)):a.Pc&&(d=!0,h=3==a.Pc),d&&f.clear(h)):e=f.toString());c&&(a.qa.Ob=!1);return e}k.reset=function(){this.ra&&this.ra.reset&&(this.Ra("Resetting "+this.ra.type,!0),this.ra.reset());for(var a=Va(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ra&&c.reset&&(this.Ra("Resetting "+c.type,!0),c.reset())}};
|
||||
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":kd(a.T,b);break;case "ES":md(a.T,b);break;case "SS":ld(a.T,b);break;case "CS":d=!0;jd(a.T,b);a.Ic=[a.T.va,a.T.ya.sa,void 0];break;case "IP":d=!0;G(a.T,b);a.Ic=[a.T.va,a.T.ya.sa,void 0];break;case "PC":Uc(a.T,b);break;case "C":b?zd(a.T):ud(a.T);break;case "P":b?(f=a.T,pd(f)||(f.ma^=1)):(f=a.T,pd(f)&&(f.ma^=1));break;case "A":b?Ad(a.T):vd(a.T);break;case "Z":b?Bd(a.T):wd(a.T);break;case "S":b?Cd(a.T):
|
||||
xd(a.T);break;case "I":b?(f=a.T,f.Ca|=512):(f=a.T,f.Ca&=-513);break;case "D":b?(f=a.T,f.Ca|=1024):(f=a.T,f.Ca&=-1025);break;case "V":b?Dd(a.T):yd(a.T);break;default:c=!0;if(80286<=a.T.Ia)switch(c=!1,f){case "MS":$e.call(a.T,b);break;case "TR":a.T.Ye.load(b);break;default:c=!0}if(c){a.da("unknown register: "+f);return}}Sb(a.T);a.da("\nupdated registers:");c=!0}}f=e;void 0===f&&(f=!!(a.T.Gc&1));e="AX="+v(a.T.H)+" BX="+v(a.T.C)+" CX="+v(a.T.J)+" DX="+v(a.T.K)+" SP="+v(a.T.Y)+" BP="+v(a.T.I)+" SI="+v(a.T.G)+
|
||||
" DI="+v(a.T.F)+"\n";e+=xm(a.T.Hb,f)+" "+xm(a.T.ab,f)+" "+xm(a.T.Cb,f);e=e+(f?"\n":" ")+(xm(a.T.ya,f)+" IP="+v(a.T.va)+wm(a,"V")+wm(a,"D")+wm(a,"I")+wm(a,"T")+wm(a,"S")+wm(a,"Z")+wm(a,"A")+wm(a,"P")+wm(a,"C"));f&&(f=a.ra,e+=" MS="+v(a.T.Gc)+"\n"+ym("LD",a.T.dd.sa,a.T.dd.Ya,a.T.dd.Ya+a.T.dd.Pc)+" "+ym("GD",null,a.T.zc,a.T.ze)+" "+ym("ID",null,a.T.Jc,a.T.$d)+" TR="+v(a.T.Ye.sa)+" A20="+(f.Pf==f.gd?"ON":"OFF"));a.da((c?"":"\n")+e);d&&(a.Ic=[a.T.va,a.T.ya.sa,void 0],lm(a,rm(a.Ic)))}}
|
||||
function Em(a,b,c){var d="tr"==b;b=null!=c?parseInt(c,10):1;var e=1==b?0:1;Ba(b,function(){return $a(a,!0)&&a.Gf(e,d,!1)},function(){Sb(a.T);$a(a,!1)})}
|
||||
function lm(a,b,c,d){b=zm(a,b,1);if(null!=b[0]){void 0===d&&(d=1);var e=[65535,b[1],a.ra.Pf];if(void 0!==c){e=zm(a,c,1);if(null==e[0]||e[0]<b[0])return;if(256<e[0]-b[0]){a.da("range too large");return}e[0]++;d=-1}for(c=b[0]!=a.Ic[0];d&&(null!=b[1]?b[0]<e[0]:b[2]<e[2]);){d--;var f=a.tb(b),g=ab(a,!1)||a.nc?a.cd:null;if(38==f||46==f||54==f||62==f||240==f||242==f||243==f)g=null,d||d++;var f=null!=g?"cycles":null,h=vm(a,b);if(h[0]){var l=h[0]+":";c=!1;h[2]&&(l+=" "+h[2]);a.da(l)}c&&a.da();h[3]&&(f=h[3],
|
||||
g=null);c=um(a,b,f,g);a.da(c);a.Ic=b;c=!1}d&&a.da("end of memory")}}function Xl(a,b,c){c&&(b?a.Nh=b:b=a.Nh);a=b?b.split(0<=b.indexOf("|")?"|":";"):[""];for(var d in a)a[d]=la(a[d]);return a}
|
||||
function im(a,b){try{if(!b.length&&a.mf&&(a.da("ended assemble @"+rm(a.we)),a.Ic=a.we,a.mf=!1),b=b.toLowerCase(),bb(a)&&!ab(a,!0)&&0<b.length){if(a.mf)b="a "+rm(a.we)+" "+b;else{var c,d,e;switch(b){case "reset":a.Ka&&a.Ka.reset();return;case "ver":a.da("PCjs version 1.16.0 (release,noprefetch,eatests,dwordarrays)");return;default:for(d=b.charAt(0),e=1;e<b.length;e++){c=b.charAt(e);if(" "==c)break;if("r"==d||"a">c||"z"<c){b=b.substring(0,e)+" "+b.substring(e);break}}}}var f=b.split(" ");switch(f[0].charAt(0)){case "a":var g=
|
||||
zm(a,f[1],1);if(null!=g[0])if(a.we=g,void 0===f[2])a.da("begin assemble @"+rm(g)),a.mf=!0,Sb(a.T);else{var h;a.da("not supported yet");h=[];if(h.length){for(var l=0;l<h.length;l++)a.Pd(g,h[l],1);a.da(um(a,a.we))}}break;case "b":a:{var n=f[1],q=f[0].charAt(1);if(q&&"?"!=q)if("l"==q)l=0,l+=tm(a,a.tc),l+=tm(a,a.Ud),(l+=tm(a,a.Uc))||a.da("no breakpoints");else if(void 0===n)a.da("missing breakpoint address");else{l=[];if("*"!=n&&(l=zm(a,n,1),null==l[0]))break a;n=null==l[0]?n:v(l[0]);"c"==q?null==l[0]?
|
||||
(Vl(a),a.da("all breakpoints cleared")):sm(a,a.tc,l,!0)||sm(a,a.Ud,l,!0)||sm(a,a.Uc,l,!0)||a.da("breakpoint missing: "+rm(l)):"i"==q?a.da("breakpoint "+(sb(a.ra,l[0])?"enabled":"cleared")+": port "+n+" (input)"):"o"==q?a.da("breakpoint "+(wb(a.ra,l[0])?"enabled":"cleared")+": port "+n+" (output)"):null!=l[0]&&("p"==q?a.Yd(a.tc,l):"r"==q?a.Yd(a.Ud,l):"w"==q?a.Yd(a.Uc,l):a.da("unknown breakpoint command: "+q))}else a.da("\nbreakpoint commands:"),a.da("\tbi [p]\ttoggle break on input port [p]"),a.da("\tbo [p]\ttoggle break on output port [p]"),
|
||||
a.da("\tbp [a]\tset exec breakpoint at addr [a]"),a.da("\tbr [a]\tset read breakpoint at addr [a]"),a.da("\tbw [a]\tset write breakpoint at addr [a]"),a.da("\tbc [a]\tclear breakpoint at addr [a]"),a.da("\tbl\tlist all breakpoints")}break;case "c":a.$f&&(a.$f.value="");break;case "d":a:{var l=f[0],r=f[1],s=f[2],u;if("?"==r){l="symbols";for(u in Yl)a.fi[u]&&(l.length&&(l+=","),l+=u);l+=",state";a.da("\ndump commands:");a.da("\tdb [a] [#] dump bytes at address a");a.da("\tdw [a] [#] dump words at address a");
|
||||
a.da("\tds [s] dump descriptor for selector s");l.length&&a.da("dumps are also available for: "+l)}else if("state"==r)a.da(Fm(a.Ka,!0));else if("symbols"==r)for(l=0;l<a.wc.length;l++){var y=a.wc[l][0],B=a.wc[l][2],M;for(M in B)if("."!=M.charAt(0)){var V=B[M],va=V.o;if(void 0!==va){var wa=V.s;void 0===wa&&(wa=y>>>4);var xb=B[M].l;xb&&(M=xb);a.da(ea(va,wa)+" "+M)}}}else{for(u in Yl)if(r==u){var Qb=a.fi[u];Qb?Qb(s):a.da("no dump registered for "+r);break a}var W=zm(a,r,2);if(null!=W[0])if("ds"==
|
||||
l){var K=om(a,W[0]);if(null!=K.sa){var w="selector="+v(W[0])+" limit="+v(K.Pc)+" base="+p(K.Ya);if(K.Oa){w+=" access="+v(K.Oa);if(K.Oa&4096)K.Oa&2048?(w+="code:",w+=K.Oa&512?"readable,":"execonly,",w+=K.Oa&1024?"conforming,":"nonconforming,"):(w+="data:",w+=K.Oa&512?"writeable,":"readonly,",w+=K.Oa&1024?"expand down,":"expand up,"),w+=K.Oa&256?"accessed":"not accessed";else switch(w+="type:",K.Oa&7936){case 256:w+="tss";break;case 512:w+="ldt";break;case 768:w+="tss(busy)";break;case 1024:w+="call";
|
||||
break;case 1280:w+="task";break;case 1536:w+="int";break;case 1792:w+="trap";break;default:w+="unknown"}w+=",dpl"+(K.Oa>>13&24576);w+=K.Oa&32768?",present":",not present"}a.da(w)}else a.da("invalid selector: "+v(W[0]))}else{var R=0;void 0!==s&&("l"==s.charAt(0)&&(s=s.substr(1)),R=parseInt(s,10));var I="";R||(R=8);for(var yb=0;yb<R;yb++){for(var Ma=f="",r=rm(W),ga=0,X=0;16>X;X++){var Ya=a.tb(W,1);"dw"==l?X&1&&(f+=v(ga|Ya<<8)+(7==X?" - ":" ")):f+=t(Ya)+(7==X?"-":" ");Ma+=32<=Ya&&128>Ya?String.fromCharCode(Ya):
|
||||
".";ga=Ya}I&&(I+="\n");I+=r+" "+f+" "+Ma}I&&a.da(I);a.ek=W}}}break;case "e":var Gc=f[1];if(void 0===Gc)a.da("missing address");else{var jc=zm(a,Gc,2);if(null!=jc[0])for(l=2;l<f.length;l++){var nk=parseInt(f[l],16);a.da("setting "+rm(jc)+" to "+t(nk));a.Pd(jc,nk,1)}}break;case "f":Cm(a,f[1]);break;case "g":a:{var ok=f[1];if(void 0!==ok){var pk=zm(a,ok,1);if(null==pk[0])break a;a.Yd(a.tc,pk,!0)}a.Ve(!0)||a.da('cpu not available, "g" command ignored')}break;case "h":Ma=f[1];if(a.qa.Rb&&void 0===Ma)a.Fb();
|
||||
else{l="";r=10;ga=a.uf;X=a.Xd;if(X.length){var Qa=void 0===Ma?a.Vl:parseInt(Ma,10);isNaN(Qa)?Qa=r:l="more ";Qa>X.length&&(a.da("note: only "+X.length+" available"),Qa=X.length);ga-=Qa;0>ga&&(null!=X[X.length-1][1]?ga+=X.length:(Qa=ga+Qa,ga=0));for(void 0!==Ma&&a.da(Qa+" instructions earlier:");r&&ga!=a.uf;){var lc=X[ga];if(null==lc[1])break;lc=[lc[0],lc[1],lc[2]];a.da(um(a,lc,"history",-Qa));++ga==X.length&&(ga=0);a.Vl=--Qa;r--}}10==r&&(a.da("no "+l+"history available"),a.Vl=void 0)}break;case "i":var Ue=
|
||||
f[1];if(Ue&&"?"!=Ue){var Ve=Am(a,Ue);if(void 0!==Ve){var Vm=ub(a.ra,Ve);a.da(v(Ve)+": "+t(Vm))}}else a.da("\ninput commands:"),a.da("\ti [p]\tread port [p]"),a.da("warning: port accesses can affect hardware state");break;case "l":Dm(a,f);break;case "m":a:{l=null;I=f[1];"?"==I&&(I=void 0);if(void 0!==I){r=0;if("all"==I)r=4294967295,I=null;else if("on"==I)l=!0,I=null;else if("off"==I)l=!1,I=null;else{for(R in Yl)if(I==R){r=Yl[R];l=!!(a.kc&r);break}if(!r){a.da("unknown message category: "+I);break a}}r&&
|
||||
("on"==f[2]?(a.kc|=r,l=!0):"off"==f[2]&&(a.kc&=~r,l=!1))}r=0;W="";for(R in Yl)if(!I||I==R)if(yb=!!(a.kc&Yl[R]),null===l||l==yb)W&&(W+=","),++r%10||(W+="\n\t"),W+=R;void 0===I&&a.da("\nmessage commands:\n\tm [category] [on|off]\tturn categories on/off");a.da((null!==l?l?"messages on: ":"messages off: ":"message categories:\n\t")+(W||"none"))}break;case "o":var We=f[1],Wm=f[2];if(We&&"?"!=We){var qk=Am(a,We,"port #"),rk=Am(a,Wm);void 0!==qk&&void 0!==rk&&Ab(a.ra,qk,rk)}else a.da("\noutput commands:"),
|
||||
a.da("\to [p] [d]\twrite data [d] to port [p]"),a.da("warning: port accesses can affect hardware state");break;case "p":case "pr":var sk="pr"==f[0]?1:0,l=1+sk;if(a.nc)a.da("step in progress");else{var Ld,r=!1,Ra=[a.T.va,a.T.ya.sa,void 0];do switch(Ld=!1,a.tb(Ra)){case 38:case 46:case 54:case 62:case 240:qm(Ra,1);Ld=!0;break;case 204:case 206:a.nc=l;qm(Ra,1);break;case 205:case 224:case 225:case 226:a.nc=l;qm(Ra,2);break;case 232:a.nc=l;qm(Ra,3);break;case 154:a.nc=l;qm(Ra,5);break;case 255:a.nc=0<=
|
||||
um(a,Ra).indexOf("CALL")?l:0;break;case 243:case 242:qm(Ra,1);r=Ld=!0;break;case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:r&&(a.nc=l,qm(Ra,1))}while(Ld);a.nc?(a.Yd(a.tc,Ra,!0),a.Ve()||(a.T.Tc(),a.nc=0)):Em(a,sk?"tr":"t")}break;case "r":km(a,f);break;case "t":case "tr":Em(a,f[0],f[1]);break;case "u":lm(a,f[1],f[2],8);break;case "x":a:if(void 0===f[1]||"?"==f[1])a.da("\nexecution options:"),a.da("\tcs int #\tset checksum cycle interval to #"),a.da("\tcs start #\tset checksum cycle start count to #"),
|
||||
a.da("\tcs stop #\tset checksum cycle stop count to #"),a.da("\tsp #\t\tset speed multiplier to #");else switch(f[1]){case "cs":var Lc;void 0!==f[3]&&(Lc=parseInt(f[3],10));switch(f[2]){case "int":a.T.ca.xf=Lc;break;case "start":a.T.ca.kg=Lc;break;case "stop":a.T.ca.zf=Lc;break;default:a.da("unknown cs option");break a}void 0!==Lc&&Ob(a.T);a.da("checksums "+(a.T.qa.nf?"enabled":"disabled"));break;case "sp":void 0!==f[2]&&Wb(a.T,parseInt(f[2],10));a.da("target speed: "+(a.T.ca.Pe.toFixed(2)+"Mhz")+
|
||||
" ("+a.T.ca.Kd+"x)");break;default:a.da("unknown option: "+f[1])}break;case "?":var l="commands:",Md;for(Md in $l)l+="\n"+Md+" ".substr(0,7-Md.length)+$l[Md];Ed(a)||(l+="\nnote: frequency/history disabled if no exec breakpoints");a.da(l);break;default:a.da("unknown command: "+b)}}}catch(Xm){a.da("debugger sad: "+Xm.message)}}Ha(function(){for(var a=D(window.document,"pcjs","debugger"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new Ul(d);Za(d,c)}});
|
||||
function gd(a,b,c){this.id=a.id;this.key=Gm(a,b,c);this.fa=a.fa;Hm(this,a.bp)}function Gm(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}
|
||||
gd.prototype={set:function(a,b){try{this[this.id][a]=b}catch(c){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.Di=!0):this.Di?!0:xa()&&(a=ya(this.key))?(this[this.id]=a,this.Di=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){x(b.message||b),a=!1}return a},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},
|
||||
clear:function(a){Hm(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(f){}b.splice(c,1);c=0}},Sa:function(a){this.fa&&E(this.fa,131072)&&this.fa.message(a)}};function Hm(a,b){a[a.id]={};b&&a.set("parms",b);a.Di=!1}
|
||||
function Im(a){var b=!0;if(xa()){var c=JSON.stringify(a[a.id]);za(a.key,c)||(x("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}
|
||||
function Jm(a,b,c){z.call(this,"Computer",a,Jm);this.qa.Qb=!1;this.hg=a.buswidth;this.Rc=Km;this.Gg=null;this.vh=!1;this.url=b?b.url:null;this.kp=(Math.random()+0.1).toString(36).substr(2,12);this.Sc=Lm(this);if(this.T=Xa("CPU",this.id)){this.fa=Xa("Debugger",this.id);this.ra=new gb({id:this.Lk+".bus",buswidth:this.hg},this.T,this.fa);var d,e=Va(this.id);if((this.Ag=Xa("Panel",this.id))&&this.Ag.$f)for(b=0;b<e.length;b++)d=e[b],d.Ja=this.Ag.Ja,d.da=this.Ag.da,d.$f=this.Ag.$f;for(b=0;b<e.length;b++)d=
|
||||
e[b],d.pc&&d.pc(this,this.ra,this.T,this.fa);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Th=d:this.Rc=parseInt(d,10));var f;if(a=Oa&&Oa.state||(f=!0,a.state))b=this.gm=a,f||(this.vh=!0,this.Rc=Km),this.Rc&&(this.Wh=new gd(this,"1.16.0"),this.Wh.load()?b=null:delete this.Wh);!b&&this.Rc&&(f=null,this.Sc&&(f=ta()+"/api/v1/user?req=load&user="+this.Sc+"&state="+Gm(this,"1.16.0")),b=f)&&(this.vh=!0);b?sa(b,!0,null,this,this.eo):this.Ua();c||Mm(this,this.Mh)}else x("Unable to find CPU component")}
|
||||
A(z,Jm);var Km=0;k=Jm.prototype;k.sf=function(){return this.kp};k.je=function(){return this.Sc?this.Sc:""};k.eo=function(a,b,c){c?(this.Th=null,this.vh=!1,this.Ja("Unable to load machine state from server (error "+c+(b?": "+la(b):"")+")")):this.Gg=b;this.Ua()};function Mm(a,b,c){for(var d=Va(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!bb(f)){bb(f,function(){Mm(a,b,c)});return}}b.call(a,c)}
|
||||
function Nm(a,b){var c=new gd(a,"1.16.0","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.Ja("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
|
||||
k.Mh=function(a){void 0===a&&(a=this.Rc||(this.Gg?1:Km));var b=!1,c=!1;this.Ek=!1;var d=this.Wh||new gd(this,"1.16.0");if(-1==a)b=!0;else if(a>Km){if(d.load(this.Gg)){this.$e=new gd(this,"1.16.0","failsafe");this.$e.load()&&(Om(this,d),a=2,Hm(this.$e));this.$e.set("timestamp",pa());Im(this.$e);var e=this.Rc&&!this.vh;if(1==a||ua("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==
|
||||
f&&"no machine state"!=g?(this.Ja("Error: "+g),"unable to verify user"==g&&(za("user",""),this.Sc=null)):this.da(f+": "+g),Hm(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Nm(this,c?d:null)}else 2==a&&d.clear()}else Nm(this);delete this.Gg;delete this.Wh}e=Va(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.T&&(c=Pm(this,g,d,b,c));b=[d,a,c];-1!=a?Mm(this,this.wk,b):this.wk(b)};
|
||||
function Pm(a,b,c,d,e){if(!b.qa.Qb){b.qa.Qb=!0;if(b.$b){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.$b(f,d)&&f&&(x("Unable to restore state for "+b.type),a.gm&&!a.Gg?(c.clear(),a.Rc=Km,window&&window.location.reload()):a.Ek=!0,b.$b(null),e=!1)}if(!d&&b.rk)for(a=b.rk.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
|
||||
k.wk=function(a){var b=a[0],c=0>a[1];a=a[2];this.qa.Qb=!0;this.Bk||(this.da("PCjs v1.16.0\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.Bk=!0);this.T&&Pm(this,this.T,b,c,a);this.Ek&&(Om(this,b),b.clear());!c&&this.$e&&(this.$e.clear(),delete this.$e)};
|
||||
function Om(a,b){if(ua("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.je(),d=b.toString(),e={app:"PCjs",ver:"1.16.0"};e.url=a.url;e.user=c;e.type="bug";e.data=d;sa("http://www.pcjs.org/api/v1/report",!0,e)}}
|
||||
function Fm(a,b,c){var d,e="none",f=new gd(a,"1.16.0"),g=new gd(a,"1.16.0","validate"),h=pa();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.16.0");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.T&&a.T.Zb&&(c&&a.T.Fb(),d=a.T.Zb(b,c),"object"===typeof d&&f.set(a.T.id,d),c&&(a.T.qa.Qb=!1,!1===d&&(e=null)));for(var h=Va(a.id),l=0;l<h.length;l++){var n=h[l];n.qa.Qb&&(n.Zb&&(d=n.Zb(b,c),"object"===typeof d&&f.set(n.id,d)),c&&(n.qa.Qb=
|
||||
!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.Sc&&Qm(a,a.Sc,f.toString()),Im(g)&&Im(f)||(e=null,d=h=!0)):a.Rc&&(d=!0,h=3==a.Rc),d&&f.clear(h)):e=f.toString());c&&(a.qa.Qb=!1);return e}k.reset=function(){this.ra&&this.ra.reset&&(this.Sa("Resetting "+this.ra.type,!0),this.ra.reset());for(var a=Va(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ra&&c.reset&&(this.Sa("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.Fb=function(a,b,c,d){var e=this;switch(c){case "save":return this.ya[c]=d,d.onclick=function(){var a=Em(e,!0);if(a){var b=!(!e.Pc||e.Sh),c=ym(e,b);b?Jm(e,a,c):e.Ja("Resume disabled, machine state not saved")}},!0;case "reset":return this.ya[c]=d,d.onclick=function(){Vb(e)},!0}return!1};
|
||||
function Em(a,b){var c=a.Qc;c||(c=ya("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 support@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=Km(a,c))||a.Ja("Your user ID has not been approved."))):b&&a.Ja("Browser local storage is not available"));return c}
|
||||
function Km(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&&(za("user",c.data),a.Qc=c.data)}catch(e){x(e.message+" ("+d+")")}return a.Qc}
|
||||
function Jm(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=zm(a,"1.16.0");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.Ja("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.Ja(c),za("user",""),a.Qc=null)}}
|
||||
function Vb(a){if(a.Pc&&!a.Sh){var b=ua("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");ym(a,b,!0);!b&&a.fm?window&&window.location.reload():(b||(a.Di=!0),a.Lh(Dm),a.Di=!1)}else a.reset(),a.T&&Pb(a.T)}function eb(a,b,c){a=Va(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}k.Ra=function(a,b){this.fa&&(b||E(this.fa,524288))&&this.fa.message(a)};
|
||||
Ha(function(){for(var a=D(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=C(c),c=D(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=C(f),g=new Cm(g,d,!0);Za(g,f);Fm(g,g.Lh)}});Da.show.push(function(){for(var a=D(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=C(a[b]);(c=Ya("Computer",c.id))&&c.Bk&&!c.qa.Ob&&c.Lh(-1)}});
|
||||
Da.exit.push(function(){for(var a=D(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=C(a[b]);(c=Ya("Computer",c.id))&&c.qa.Ob&&ym(c,!(!c.Pc||c.Sh),!0)}});var Lm=0;function Mm(a,b,c,d,e,f){e("Loading "+a+"...");sa(a,!0,null,null,function(g,h,l){l?(h||(h="unable to load "+a+" ("+l+")"),f(h,null)):Nm(h,a,b,c,d,e,f)})}
|
||||
function Nm(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{if(c){var h=b;h&&0>h.indexOf("/")&&(h=window.location.pathname+h);a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(h?" url=$2"+h+"$2":""))}h=null;if("<"==a.charAt(0))try{window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),h=new window.ActiveXObject("Microsoft.XMLDOM"),h.async=!1,h.loadXML(a)):h=(new window.DOMParser).parseFromString(a,"text/xml")}catch(r){h=
|
||||
null,a=r.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,h)}}a?e?Rm(a,f,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)}
|
||||
function Rm(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");sa(e,!0,null,null,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=h[0],n,q=/( [a-z]+=)(['"])(.*?)\2/g;n=q.exec(f);)l=0>l.indexOf(n[1])?l.replace(">",n[0]+">"):l.replace(new RegExp(n[1]+"(['\"])(.*?)\\1"),n[0]);h[0]!=l&&(g=g.replace(h[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
|
||||
"");a=a.replace(d[0],g);Rm(a,b,c)}})}else c(a,null)}
|
||||
function Sm(a,b,c,d){function e(a){if(void 0===l){var b=h&&D(h,"machine-warning");l=b&&b[0]||h}l&&(l.innerHTML=ja(a))}function f(a){e("Error: "+a);n&&g();n=!1}function g(){0==--Lm&&Ja(!0)}var h,l,n=!0;Lm++;try{if(h=window.document.getElementById(a)){c||(c="/versions/pcjs/1.16.0/components.xsl");var q=function(a,d){if(d){var l=function(a,l){if(l)if(l)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var n=d.transformNode(l);n?(h.outerHTML=n,g()):f("transformNodeToObject failed")}else window.document.implementation&&
|
||||
window.document.implementation.createDocument?(n=new XSLTProcessor,n.importStylesheet(l),(n=n.transformToFragment(d,window.document))?(h.parentNode.replaceChild(n,h),g()):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f("failed to load XSL file: "+c);else f(a)};d?Mm(c,null,null,!1,e,l):f("failed to load XML file: "+b)}else f(a)};"<"!=b.charAt(0)?Mm(b,a,d,!0,e,q):Nm(b,null,a,d,!1,e,q)}else f("failed to find machine element: "+a)}catch(r){f(r.message)}return n}
|
||||
window.embedPC=function(a,b,c,d){Ja(!1);return Sm(a,b,c,d)};window.enableEvents=Ja;window.sendEvent=Ka;})();
|
||||
k.Db=function(a,b,c,d){var e=this;switch(c){case "save":return this.wa[c]=d,d.onclick=function(){var a=Lm(e,!0);if(a){var b=!(!e.Rc||e.Th),c=Fm(e,b);b?Qm(e,a,c):e.Ja("Resume disabled, machine state not saved")}},!0;case "reset":return this.wa[c]=d,d.onclick=function(){Vb(e)},!0}return!1};
|
||||
function Lm(a,b){var c=a.Sc;c||(c=ya("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 support@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=Rm(a,c))||a.Ja("Your user ID has not been approved."))):b&&a.Ja("Browser local storage is not available"));return c}
|
||||
function Rm(a,b){a.Sc=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&&(za("user",c.data),a.Sc=c.data)}catch(e){x(e.message+" ("+d+")")}return a.Sc}
|
||||
function Qm(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Gm(a,"1.16.0");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.Ja("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.Ja(c),za("user",""),a.Sc=null)}}
|
||||
function Vb(a){if(a.Rc&&!a.Th){var b=ua("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Fm(a,b,!0);!b&&a.gm?window&&window.location.reload():(b||(a.Ei=!0),a.Mh(Km),a.Ei=!1)}else a.reset(),a.T&&Pb(a.T)}function eb(a,b,c){a=Va(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}k.Sa=function(a,b){this.fa&&(b||E(this.fa,524288))&&this.fa.message(a)};
|
||||
Ha(function(){for(var a=D(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=C(c),c=D(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=C(f),g=new Jm(g,d,!0);Za(g,f);Mm(g,g.Mh)}});Da.show.push(function(){for(var a=D(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=C(a[b]);(c=Xa("Computer",c.id))&&c.Bk&&!c.qa.Qb&&c.Mh(-1)}});
|
||||
Da.exit.push(function(){for(var a=D(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=C(a[b]);(c=Xa("Computer",c.id))&&c.qa.Qb&&Fm(c,!(!c.Rc||c.Th),!0)}});var Sm=0;function Tm(a,b,c,d,e,f){e("Loading "+a+"...");sa(a,!0,null,null,function(g,h,l){l?(h||(h="unable to load "+a+" ("+l+")"),f(h,null)):Um(h,a,b,c,d,e,f)})}
|
||||
function Um(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{if(c){var h=b;h&&0>h.indexOf("/")&&(h=window.location.pathname+h);a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(h?" url=$2"+h+"$2":""))}h=null;if("<"==a.charAt(0))try{window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),h=new window.ActiveXObject("Microsoft.XMLDOM"),h.async=!1,h.loadXML(a)):h=(new window.DOMParser).parseFromString(a,"text/xml")}catch(r){h=
|
||||
null,a=r.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,h)}}a?e?Ym(a,f,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)}
|
||||
function Ym(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");sa(e,!0,null,null,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=h[0],n,q=/( [a-z]+=)(['"])(.*?)\2/g;n=q.exec(f);)l=0>l.indexOf(n[1])?l.replace(">",n[0]+">"):l.replace(new RegExp(n[1]+"(['\"])(.*?)\\1"),n[0]);h[0]!=l&&(g=g.replace(h[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
|
||||
"");a=a.replace(d[0],g);Ym(a,b,c)}})}else c(a,null)}
|
||||
function Zm(a,b,c,d){function e(a){if(void 0===l){var b=h&&D(h,"machine-warning");l=b&&b[0]||h}l&&(l.innerHTML=ja(a))}function f(a){e("Error: "+a);n&&g();n=!1}function g(){0==--Sm&&Ja(!0)}var h,l,n=!0;Sm++;try{if(h=window.document.getElementById(a)){c||(c="/versions/pcjs/1.16.0/components.xsl");var q=function(a,d){if(d){var l=function(a,l){if(l)if(l)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var n=d.transformNode(l);n?(h.outerHTML=n,g()):f("transformNodeToObject failed")}else window.document.implementation&&
|
||||
window.document.implementation.createDocument?(n=new XSLTProcessor,n.importStylesheet(l),(n=n.transformToFragment(d,window.document))?(h.parentNode.replaceChild(n,h),g()):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f("failed to load XSL file: "+c);else f(a)};d?Tm(c,null,null,!1,e,l):f("failed to load XML file: "+b)}else f(a)};"<"!=b.charAt(0)?Tm(b,a,d,!0,e,q):Um(b,null,a,d,!1,e,q)}else f("failed to find machine element: "+a)}catch(r){f(r.message)}return n}
|
||||
window.embedPC=function(a,b,c,d){Ja(!1);return Zm(a,b,c,d)};window.enableEvents=Ja;window.sendEvent=Ka;})();
|
||||
|
|
|
|||
Loading…
Reference in a new issue