Updated the VisiCalc demo with an autoType sequence, a fresh disk image, new state file, and reference cards; also, updated autoType support to cancel autoType if a saved machine state is loaded

This commit is contained in:
Jeff Parsons 2017-06-19 08:48:42 -07:00 committed by Jeff Parsons
commit d527e1bbe3
2 changed files with 11 additions and 11 deletions

View file

@ -460,7 +460,7 @@ function Nd(a,b){for(var c=0;c<a.G.length;c++)Al(a,c,b);if(a.ca>=dh){b=a.H.T.td;
l.mo=function(a,b,c){w(this,a,b,c,"PPI_B");cp(this,b)};function cp(a,b){var c=!!(b&dp),d=!!(a.J&dp);a.J=b;a.C&&ep(a.C,!(b&ap),!!(b&Oo));c!=d&&Um(a,c)}l.Jm=function(a,b){var c=0,c=(this.ca|0)==jl?this.J&Mo?c|this.B[1][1]&fp:c|this.B[1][1]>>4&1:this.J&gp?c|this.B[0][1]>>4:c|this.B[0][1]&15;this.J&Lo&&Al(this,vo).gd&&(c=this.J&dp?c|hp:c|ip);w(this,a,null,b,"PPI_C",c,32896);return c};l.no=function(a,b,c){w(this,a,b,c,"PPI_C");this.Ca=b};l.Km=function(a,b){var c=this.ga;w(this,a,null,b,"PPI_CTRL",c);return c};
l.oo=function(a,b,c){w(this,a,b,c,"PPI_CTRL");this.ga=b};l.Tl=function(a,b){var c=this.C?bp(this.C):0;w(this,a,null,b,"8041_KBD",c);this.aa&=~jp;return c};l.vn=function(a,b,c){w(this,a,b,c,"8041_KBD")};l.Sl=function(a,b){var c=this.J;w(this,a,null,b,"8041_CTRL",c);return c};l.un=function(a,b,c){w(this,a,b,c,"8041_CTRL");cp(this,b)};l.Ul=function(a,b){var c=this.aa;w(this,a,null,b,"8041_STATUS",c);return c};
l.Vl=function(a,b){var c=this.oa;w(this,a,null,b,"8042_OUTBUFF",c,16384);this.D&=~(jp|kp);this.C&&lp(this.C);return c};
l.xn=function(a,b,c){w(this,a,b,c,"8042_INBUF.DATA",null,16384);if(this.D&mp)switch(this.L){case np:op(this,b);break;case pp:qp(this,b);break;default:if(op(this,this.K&~Nl),this.C){a=this.C;c=b;var d=-1;t(a)&&Lb(a,"sendCmd("+r(c)+")");switch(a.F||c){case rp:d=sp;tp(a);break;case up:a.F&&(c=0);vp(a,sp);a.F=c;break;case wp:a.F&&(c=0);vp(a,sp);a.F=c;break;default:Lb(a,"sendCmd(): unrecognized command")}xp(this,d)}}this.L=b;this.D&=~mp};
l.xn=function(a,b,c){w(this,a,b,c,"8042_INBUF.DATA",null,16384);if(this.D&mp)switch(this.L){case np:op(this,b);break;case pp:qp(this,b);break;default:if(op(this,this.K&~Nl),this.C){a=this.C;c=b;var d=-1;t(a)&&Lb(a,"sendCmd("+r(c)+")");switch(a.I||c){case rp:d=sp;tp(a);break;case up:a.I&&(c=0);vp(a,sp);a.I=c;break;case wp:a.I&&(c=0);vp(a,sp);a.I=c;break;default:Lb(a,"sendCmd(): unrecognized command")}xp(this,d)}}this.L=b;this.D&=~mp};
l.Wl=function(a,b){var c=this.J&~(yp|zp)|(Dd(this.H)&64?zp:0);w(this,a,null,b,"8042_RWREG",c,16384);return c};l.yn=function(a,b,c){w(this,a,b,c,"8042_RWREG",null,16384);cp(this,b)};l.Xl=function(a,b){w(this,a,null,b,"8042_STATUS",this.D,16384);a=this.D&255;this.D&kp&&(this.D|=jp,this.D&=~kp);return a};
l.wn=function(a,b,c){w(this,a,b,c,"8042_INBUFF.CMD",null,16384);this.L=b;this.D|=mp;a=0;this.L>=Ap&&(a=this.L^15,this.L=Ap);switch(this.L){case Bp:xp(this,this.K);break;case Cp:op(this,this.K|Nl);break;case Dp:op(this,this.K&~Nl);this.C&&lp(this.C);break;case Ep:this.C&&(a=this.C,a.A=[],t(a)&&Lb(a,"scan codes flushed"));op(this,this.K|Nl);xp(this,Fp);qp(this,Xl|Yl);break;case Gp:xp(this,Hp);break;case Ip:xp(this,this.M);break;case Jp:xp(this,this.qa);break;case Kp:xp(this,this.K&Nl?0:Lp);break;case Ap:a&
1&&jf(this.H)}};function op(a,b){a.K=b;a.D=a.D&~Mp|b&Np;a.C&&ep(a.C,!!(b&Op),!(b&Nl))}function xp(a,b,c){0<=b&&(a.oa=b,c?a.D|=jp:(a.D&=~jp,a.D|=kp))}function qp(a,b){a.qa=b;nc(a.ka,!!(b&Yl));b&Xl||jf(a.H)}function Pp(a,b){a.ca<dh?(gh(a,Qp,4),a.aa|=jp):a.K&Nl||a.D&(jp|kp)||(xp(a,b,!0),Rp(a.C),gh(a,Qp,120))}function Sp(a,b,c,d){var e=a.B[b][1];w(a,c,null,d,"DIPSW-"+b,e,32768);return e}l.km=function(a,b){w(this,a,null,b,"CMOS.ADDR",this.W,4096);return this.W};
@ -495,14 +495,14 @@ l.Xb=function(a,b){return!b&&(this.reset(),a&&this.controller&&!this.restore(a))
l.reset=function(){if(!this.C&&!this.D&&this.W){var a=1024*Ql(this.W);this.A&&a!=this.A&&(Bc(this.ka,this.C,this.A),this.B=!1);this.A=a}!this.B&&this.A&&oc(this.ka,this.C,this.A,1)&&(this.B=!0,"ramCPQ"==this.ce&&(this.controller=new eq(this),oc(this.ka,fq,4,4,this.controller)));if(this.B){if(this.F||Jc(this.ka,1138,4660),"ramCPQ"!=this.ce&&this.W&&(a=this.W,a.A)){var b=1048576>this.C?$l:23,c=a.A[b]|a.A[b+1]<<8,c=c+(this.A>>10);a.A[b]=c&255;a.A[b+1]=c>>8;jm(a)}}else gb("No RAM allocated")};
l.save=function(){var a=new Wf(this);this.controller&&a.set(0,this.controller.save());return a.data()};l.restore=function(a){return this.controller?this.controller.restore(a[0]):!0};function eq(a){this.D=a;this.B=gq;this.H=hq;this.C=iq;this.A=null}l=eq.prototype;l.save=function(){return[this.B,this.C]};l.restore=function(a){this.fc(0,a[0]&255);this.fc(2,a[1]&255);return!0};l.Ia=function(a){var b=255;2>a?b=a&1?this.H>>8:this.H&255:4>a&&(b=a&1?this.C>>8:this.C&255);return b};
l.fc=function(a,b){if(a)2==a&&(this.C=this.C&-256|b);else if(b!=(this.B&255)){a=this.D.ka;if(b&jq)this.A&&(wc(a,kq,lq,this.A),this.A=null);else{this.A||(this.A=xc(a,kq,lq));var c=xc(a,mq,lq);wc(a,kq,lq,c,b&nq?1:Dc)}this.B=this.B&-256|b}};l.wj=function(){return oq};l.gh=function(){return pq};var fq=-2134900736,mq=16646144,kq=917504,lq=131072,jq=1,nq=2,gq=65535,hq=2575,iq=2,oq=[null,0],pq=[function(a){return this.controller.Ia(a)},null,null,function(a,b){this.controller.fc(a,b)},null,null];
$a(function(){for(var a=zb(document,"pcx86","ram"),b=0;b<a.length;b++){var c=a[b],d=vb(c),d=new dq(d);yb(d,c)}});function qq(a){mb.call(this,"Keyboard",a,65536);rq(this,a.model);this.O=Ta("Mobi");this.Z=Ta("MSIE");Lb(this,"mobile keyboard support: "+(this.O?"true":"false"));this.N=0;this.Y=this.eh=!1;this.C=[];this.da=50;this.I=null;this.J=a.autoType;Ib(this)}ba(qq,mb);l=qq.prototype;
$a(function(){for(var a=zb(document,"pcx86","ram"),b=0;b<a.length;b++){var c=a[b],d=vb(c),d=new dq(d);yb(d,c)}});function qq(a){mb.call(this,"Keyboard",a,65536);rq(this,a.model);this.O=Ta("Mobi");this.Z=Ta("MSIE");Lb(this,"mobile keyboard support: "+(this.O?"true":"false"));this.N=0;this.Y=this.eh=!1;this.C=[];this.da=50;this.F=null;this.G=a.autoType;Ib(this)}ba(qq,mb);l=qq.prototype;
l.Cb=function(a,b,c,d){var e=this,f=a+"-"+b;if(void 0===this.na[f])switch(b){case "kbd":case "screen":return c.onkeydown=function(a){return sq(e,a,!0)},c.onkeypress=function(a){a=a||window.event;a=a.which||a.keyCode;e.B="";var b=!O[a]||!!(e.jc&tq);b||uq(e,a,!0);return b},c.onkeyup=function(a){return sq(e,a,!1)},!0;case "caps-lock":return this.na[f]=c,c.onclick=function(){e.pa&&e.pa.md();uq(e,vq,!0)},!0;case "num-lock":return this.na[f]=c,c.onclick=function(){e.pa&&e.pa.md();uq(e,wq,!0)},!0;case "scroll-lock":return this.na[f]=
c,c.onclick=function(){e.pa&&e.pa.md();uq(e,xq,!0)},!0;default:var g=b.toUpperCase().replace(/-/g,"_");if(void 0!==yq[g]&&"button"==a)return this.na[f]=c,c.onclick=function(a,b,c){return function(){a.pa&&a.pa.md();a.B="";zq(a,c,!0);uq(a,c,!0)}}(this,g,yq[g]),!0;if(void 0!==Aq[b])return this.N++,this.na[f]=c,a=function(a,b,c){return function(){a.B="";uq(a,c)}}(this,b,Aq[b]),b=function(a,b,c){return function(){Bq(a,c)}}(this,b,Aq[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=
a,c.onmouseup=c.onmouseout=b),!0;if(d)return this.na[f]=c,c.onclick=function(){e.pa&&e.pa.md();d&&!e.B&&(e.B=d,Cq(e,150))},!0}return!1};function Dq(a,b,c){if(a.N){for(var d in na)if(b==na[d]){b=+d;(d=ma[d])&&(b=d);break}for(var e in Aq)if((d=Aq[e]==b)||(d=b,d>=n.ee&&d<=n.z&&(d-=n.ee-n.de),d=Aq[e]==d),d){(a=a.na["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}
l.uc=function(a,b,c,d){this.pa=a;this.ka=b;this.H=c;this.ba=d;this.W=Wb(a,"ChipSet");this.J=yd(a,"autoType")||this.J;Rf(c,33,this.Zm.bind(this))};l.Zm=function(){if(10==(this.H.D>>8&255)&&!this.I&&this.J){var a=this.I=this.J;a&&!this.B&&(this.B=a,Cq(this,150))}return!0};function rq(a,b){var c=0;a.ca=null;"string"==typeof b&&(a.ca=b.toUpperCase(),c=Eq.indexOf(a.ca),0>c&&(c=0));if(b=Eq[c])a.aa=parseInt(b.substr(2),10)}function tp(a){Lb(a,"keyboard reset",65792);a.A=[];vp(a,Fq)}
function ep(a,b,c){a.L!==c&&(a.L=a.M=c)&&(a.G=!0);a.K!==b&&(a.K=b)&&!a.M&&Rp(a,!0);a.K&&a.M&&(tp(a),a.M=!1)}function vp(a,b){a.W&&(a.A.unshift(b),a.G=!0,Pp(a.W,b))}function lp(a){var b=0;a.A.length&&a.G&&(b=a.A[0],a.W&&Pp(a.W,b));t(a)&&Lb(a,b?"scan code "+r(b)+" available":"no scan codes available")}function bp(a){var b=0;a.A.length&&(b=a.A[0]);t(a)&&Lb(a,"scan code "+r(b)+" delivered");return b}
function Rp(a,b){0<a.A.length&&(a.A.shift(),(a.G=b)&&(a.A.length&&a.W?Pp(a.W,a.A[0]):b=!1),t(a)&&Lb(a,"scan codes shifted, notify "+(b?"true":"false")))}l.Xb=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};l.Wb=function(a){return a?this.save():!0};l.reset=function(){if(!this.ca&&this.W)switch(this.W.ca){case jl:case 5160:rq(this,Eq[0]);break;default:rq(this,Eq[1])}Gq(this);this.jc=this.D=0;this.A=[];this.G=!0;this.I=null;this.B=""};
l.save=function(){var a=new Wf(this),b=[];b[0]=this.L;b[1]=this.K;a.set(0,b);return a.data()};l.restore=function(a){return Gq(this,a[0])};function Gq(a,b){var c=0;b||(b=[]);a.L=a.G=b[c++];a.K=b[c];a.F=0;return!0}function Cq(a,b){for(var c=0;0<a.B.length&&!c;)if(c=a.B.charAt(0),a.B=a.B.substr(1),c=c.charCodeAt(0),240<=c){b=100*(c-240)||150;c=0;break}c&&(10==c&&(c=13),uq(a,c,!0));0<a.B.length&&setTimeout(function(a){return function(){Cq(a,b)}}(a),b)}
l.uc=function(a,b,c,d){this.pa=a;this.ka=b;this.H=c;this.ba=d;this.W=Wb(a,"ChipSet");this.G=yd(a,"autoType")||this.G;Rf(c,33,this.Zm.bind(this))};l.Zm=function(){if(10==(this.H.D>>8&255)&&!this.F&&this.G){var a=this.F=this.G;a&&!this.B&&(this.B=a,Cq(this,150))}return!0};function rq(a,b){var c=0;a.ca=null;"string"==typeof b&&(a.ca=b.toUpperCase(),c=Eq.indexOf(a.ca),0>c&&(c=0));if(b=Eq[c])a.aa=parseInt(b.substr(2),10)}function tp(a){Lb(a,"keyboard reset",65792);a.A=[];vp(a,Fq)}
function ep(a,b,c){a.L!==c&&(a.L=a.M=c)&&(a.J=!0);a.K!==b&&(a.K=b)&&!a.M&&Rp(a,!0);a.K&&a.M&&(tp(a),a.M=!1)}function vp(a,b){a.W&&(a.A.unshift(b),a.J=!0,Pp(a.W,b))}function lp(a){var b=0;a.A.length&&a.J&&(b=a.A[0],a.W&&Pp(a.W,b));t(a)&&Lb(a,b?"scan code "+r(b)+" available":"no scan codes available")}function bp(a){var b=0;a.A.length&&(b=a.A[0]);t(a)&&Lb(a,"scan code "+r(b)+" delivered");return b}
function Rp(a,b){0<a.A.length&&(a.A.shift(),(a.J=b)&&(a.A.length&&a.W?Pp(a.W,a.A[0]):b=!1),t(a)&&Lb(a,"scan codes shifted, notify "+(b?"true":"false")))}l.Xb=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};l.Wb=function(a){return a?this.save():!0};l.reset=function(){if(!this.ca&&this.W)switch(this.W.ca){case jl:case 5160:rq(this,Eq[0]);break;default:rq(this,Eq[1])}Gq(this)};l.save=function(){var a=new Wf(this),b=[];b[0]=this.L;b[1]=this.K;a.set(0,b);return a.data()};
l.restore=function(a){return Gq(this,a[0])};function Gq(a,b){var c=0;b?a.F=a.G:(b=[],a.F=null);a.L=b[c++];a.K=b[c];a.I=0;a.jc=a.D=0;a.A=[];a.J=!0;a.B="";return!0}function Cq(a,b){for(var c=0;0<a.B.length&&!c;)if(c=a.B.charAt(0),a.B=a.B.substr(1),c=c.charCodeAt(0),240<=c){b=100*(c-240)||150;c=0;break}c&&(10==c&&(c=13),uq(a,c,!0));0<a.B.length&&setTimeout(function(a){return function(){Cq(a,b)}}(a),b)}
function zq(a,b,c,d){if(O[b]){var e=Math.floor(b/1E3)&2;if(b=Hq[b]||0){!e||b&Iq||(b>>=1);if(b&Jq){if(!1===d)return!0;d=null}null==d?d=!((c?a.D:a.jc)&b):d||b&Kq&&(b=Kq);if(c){a.D&=~b;d&&(a.D|=b);c=b;var f,g;for(g in Lq)d="led-"+g,e=Lq[g],c&&c!=e||!(f=a.na[d])||(f.style.backgroundColor=a.D&e?"#00ff00":"#000000")}else a.jc&=~b,d&&(a.jc|=b);return!0}}return!1}
function uq(a,b,c){if((O[b]||O[b+=1E3])&&a.H&&a.H.ea.vb){Hq[b]&&a.C.length&&0<a.C[0].vd&&(a.C[0].vd=0);for(var d,e=0;e<a.C.length;e++)if(d=a.C[e],d.ve==b){if(!c||0<=d.vd){e=-1;break}0<e&&(0<a.C[0].vd&&(a.C[0].vd=0),a.C.splice(e,1));break}0>e||(e==a.C.length&&(d={},d.ve=b,d.jc=a.jc,Dq(a,b,!0),e++),0<e&&a.C.splice(0,0,d),d.rf=!0,d.vd=c?-1:Hq[b]?0:1,Mq(a,d))}}
function Bq(a,b,c){if(!O[b]||!(c||a.H&&a.H.ea.vb))return!1;for(var d=!1,e=0;e<a.C.length;e++){var f=a.C[e];if(f.ve==b||f.ve==na[b]){a.C.splice(e,1);f.dl&&clearTimeout(f.dl);f.rf&&!c&&Nq(a,f.ve,!1);Dq(a,b,!1);d=!0;break}}!a.C.length&&a.Y&&(zq(a,vq),a.Y=!1);return d}function Mq(a,b){if(!a.H||!a.H.ea.vb)Bq(a,b.ve,!0);else if(Nq(a,b.ve,b.rf)&&b.vd){var c;if(0>b.vd){if(!b.rf){Bq(a,b.ve);return}b.rf=!1;c=a.da}else c=1==b.vd++?500:100;b.dl=setTimeout(function(a){return function(){Mq(a,b)}}(a),c)}}

View file

@ -435,7 +435,7 @@ function Yl(a,b,c){var d=a.H[b];if(d.Hd&&(b!=fm||a.J&um)){var e=Yc(a.U,a.V),f=(e
function ad(a,b){for(var c=0;c<a.H.length;c++)Yl(a,c,b);if(a.aa>=Ef){b=a.U.R.Xc;c=Yc(a.U,a.V);null==a.xa&&(a.na=Yc(a.U,a.V),a.Ha=1024,a.xa=Math.floor(a.U.R.Xc/a.Ha),Nk(a));c>=a.X&&(a.A[Kk]|=Bm,a.A[dd]&ed&&(a.A[Kk]|=Cm,Hf(a,Dm)),a.X=c+a.xa);a.A[xk]==a.A[yk]&&a.A[zk]==a.A[Ak]&&a.A[Bk]==a.A[Ck]&&(a.A[Kk]|=Em,a.A[dd]&Fm&&(a.A[Kk]|=Cm,Hf(a,Dm)));var d=c-a.na,e=Math.floor(d/b);if(e&&!(a.A[dd]&Gm)){for(;e--;)if(60<=++a.A[xk]&&(a.A[xk]=0,60<=++a.A[zk]&&(a.A[zk]=0,24<=++a.A[Bk]))){a.A[Bk]=0;a.A[Dk]=a.A[Dk]%
7+1;var f;f=a.A[Gk];var g=za[a.A[Fk]-1];28==g&&(f%4||!(f%100)&&f%400||g++);f=g;++a.A[Ek]>f&&(a.A[Ek]=1,12<++a.A[Fk]&&(a.A[Fk]=1,a.A[Gk]=(a.A[Gk]+1)%100))}a.A[Kk]|=Hm;a.A[dd]&Mm&&(a.A[Kk]|=Cm,Hf(a,Dm))}a.na=c-d%b}}k.sl=function(){var a=this.ua;this.ga&Nm&&(this.J&Om?a=this.C[0][1]:this.B&&(a=Pm(this.B)));return a};k.Nm=function(a,b){this.ua=b};k.tl=function(){return this.J};k.Om=function(a,b){Qm(this,b)};
function Qm(a,b){var c=!!(b&Rm),d=!!(a.J&Rm);a.J=b;a.B&&Sm(a.B,!(b&Om),!!(b&xm));c!=d&&Pk(a,c)}k.ul=function(){var a=0,a=(this.aa|0)==zj?this.J&vm?a|this.C[1][1]&Tm:a|this.C[1][1]>>4&1:this.J&Um?a|this.C[0][1]>>4:a|this.C[0][1]&15;this.J&um&&Yl(this,fm).Lc&&(a=this.J&Rm?a|Vm:a|Wm);return a};k.Pm=function(a,b){this.Ba=b};k.vl=function(){return this.ga};k.Qm=function(a,b){this.ga=b};k.Ek=function(){var a=this.B?Pm(this.B):0;this.Z&=~Xm;return a};k.Zl=function(){};k.Dk=function(){return this.J};
k.Yl=function(a,b){Qm(this,b)};k.Fk=function(){return this.Z};k.Gk=function(){var a=this.pa;this.F&=~(Xm|Ym);this.B&&Zm(this.B);return a};k.am=function(a,b){if(this.F&$m)switch(this.L){case an:bn(this,b);break;case cn:dn(this,b);break;default:if(bn(this,this.K&~Yj),this.B){a=this.B;var c=b,d=-1;switch(a.D||c){case en:d=fn;a.Jb=[];gn(a,hn);break;case jn:a.D&&(c=0);gn(a,fn);a.D=c;break;case kn:a.D&&(c=0),gn(a,fn),a.D=c}ln(this,d)}}this.L=b;this.F&=~$m};
k.Yl=function(a,b){Qm(this,b)};k.Fk=function(){return this.Z};k.Gk=function(){var a=this.pa;this.F&=~(Xm|Ym);this.B&&Zm(this.B);return a};k.am=function(a,b){if(this.F&$m)switch(this.L){case an:bn(this,b);break;case cn:dn(this,b);break;default:if(bn(this,this.K&~Yj),this.B){a=this.B;var c=b,d=-1;switch(a.G||c){case en:d=fn;a.Jb=[];gn(a,hn);break;case jn:a.G&&(c=0);gn(a,fn);a.G=c;break;case kn:a.G&&(c=0),gn(a,fn),a.G=c}ln(this,d)}}this.L=b;this.F&=~$m};
k.Hk=function(){return this.J&~(mn|nn)|(Yc(this.U)&64?nn:0)};k.bm=function(a,b){Qm(this,b)};k.Ik=function(){var a=this.F&255;this.F&Ym&&(this.F|=Xm,this.F&=~Ym);return a};
k.$l=function(a,b){this.L=b;this.F|=$m;a=0;this.L>=on&&(a=this.L^15,this.L=on);switch(this.L){case pn:ln(this,this.K);break;case qn:bn(this,this.K|Yj);break;case rn:bn(this,this.K&~Yj);this.B&&Zm(this.B);break;case sn:this.B&&(this.B.Jb=[]);bn(this,this.K|Yj);ln(this,tn);dn(this,ik|jk);break;case un:ln(this,vn);break;case wn:ln(this,this.M);break;case xn:ln(this,this.qa);break;case yn:ln(this,this.K&Yj?0:zn);break;case on:a&1&&le(this.U)}};
function bn(a,b){a.K=b;a.F=a.F&~An|b&Bn;a.B&&Sm(a.B,!!(b&Cn),!(b&Yj))}function ln(a,b,c){0<=b&&(a.pa=b,c?a.F|=Xm:(a.F&=~Xm,a.F|=Ym))}function dn(a,b){a.qa=b;Pb(a.ma,!!(b&jk));b&ik||le(a.U)}function Dn(a,b){a.aa<Ef?(Hf(a,En,4),a.Z|=Xm):a.K&Yj||a.F&(Xm|Ym)||(ln(a,b,!0),Fn(a.B),Hf(a,En,120))}k.Wk=function(){return this.W};k.pm=function(a,b){this.W=b;this.ba=b&Gn?If:Hn};
@ -466,13 +466,13 @@ k.Ob=function(a,b){return!b&&(this.reset(),a&&this.controller&&!this.restore(a))
k.reset=function(){if(!this.B&&!this.D&&this.V){var a=1024*bk(this.V);this.A&&a!=this.A&&(ac(this.ma,this.B,this.A),this.C=!1);this.A=a}!this.C&&this.A&&Qb(this.ma,this.B,this.A,1)&&(this.C=!0,"ramCPQ"==this.Ud&&(this.controller=new Tn(this),Qb(this.ma,Un,4,4,this.controller)));if(this.C){if(this.F||ic(this.ma,1138,4660),"ramCPQ"!=this.Ud&&this.V&&(a=this.V,a.A)){var b=1048576>this.B?mk:23,c=a.A[b]|a.A[b+1]<<8,c=c+(this.A>>10);a.A[b]=c&255;a.A[b+1]=c>>8;wk(a)}}else r("No RAM allocated")};
k.save=function(){var a=new Qe(this);this.controller&&a.set(0,this.controller.save());return a.data()};k.restore=function(a){return this.controller?this.controller.restore(a[0]):!0};function Tn(a){this.F=a;this.C=Vn;this.D=Wn;this.B=Xn;this.A=null}k=Tn.prototype;k.save=function(){return[this.C,this.B]};k.restore=function(a){this.Dc(0,a[0]&255);this.Dc(2,a[1]&255);return!0};k.Eb=function(a){var b=255;2>a?b=a&1?this.D>>8:this.D&255:4>a&&(b=a&1?this.B>>8:this.B&255);return b};
k.Dc=function(a,b){if(a)2==a&&(this.B=this.B&-256|b);else if(b!=(this.C&255)){a=this.F.ma;if(b&Yn)this.A&&(Wb(a,Zn,$n,this.A),this.A=null);else{this.A||(this.A=Xb(a,Zn,$n));var c=Xb(a,ao,$n);Wb(a,Zn,$n,c,b&bo?1:cc)}this.C=this.C&-256|b}};k.ti=function(){return co};k.qg=function(){return eo};var Un=-2134900736,ao=16646144,Zn=917504,$n=131072,Yn=1,bo=2,Vn=65535,Wn=2575,Xn=2,co=[null,0],eo=[function(a){return this.controller.Eb(a)},null,null,function(a,b){this.controller.Dc(a,b)},null,null];
Ma(function(){for(var a=eb(document,"pcx86","ram"),b=0;b<a.length;b++){var c=a[b],d=bb(c),d=new Sn(d);db(d,c)}});function fo(a){t.call(this,"Keyboard",a);go(this,a.model);this.W=Ha("Mobi");this.O=Ha("MSIE");this.L=0;this.M=this.og=!1;this.A=[];this.Z=50;this.G=null;this.H=a.autoType;mb(this)}ba(fo,t);k=fo.prototype;
Ma(function(){for(var a=eb(document,"pcx86","ram"),b=0;b<a.length;b++){var c=a[b],d=bb(c),d=new Sn(d);db(d,c)}});function fo(a){t.call(this,"Keyboard",a);go(this,a.model);this.W=Ha("Mobi");this.O=Ha("MSIE");this.L=0;this.M=this.og=!1;this.A=[];this.Z=50;this.D=null;this.F=a.autoType;mb(this)}ba(fo,t);k=fo.prototype;
k.wb=function(a,b,c,d){var e=this,f=a+"-"+b;if(void 0===this.ia[f])switch(b){case "kbd":case "screen":return c.onkeydown=function(a){return ho(e,a,!0)},c.onkeypress=function(a){a=a||window.event;a=a.which||a.keyCode;e.B="";var b=!V[a]||!!(e.Sb&io);b||jo(e,a,!0);return b},c.onkeyup=function(a){return ho(e,a,!1)},!0;case "caps-lock":return this.ia[f]=c,c.onclick=function(){e.oa&&Zc(e.oa);jo(e,ko,!0)},!0;case "num-lock":return this.ia[f]=c,c.onclick=function(){e.oa&&Zc(e.oa);jo(e,lo,!0)},!0;case "scroll-lock":return this.ia[f]=
c,c.onclick=function(){e.oa&&Zc(e.oa);jo(e,mo,!0)},!0;default:var g=b.toUpperCase().replace(/-/g,"_");if(void 0!==no[g]&&"button"==a)return this.ia[f]=c,c.onclick=function(a,b,c){return function(){a.oa&&Zc(a.oa);a.B="";oo(a,c,!0);jo(a,c,!0)}}(this,g,no[g]),!0;if(void 0!==po[b])return this.L++,this.ia[f]=c,a=function(a,b,c){return function(){a.B="";jo(a,c)}}(this,b,po[b]),b=function(a,b,c){return function(){qo(a,c)}}(this,b,po[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=
a,c.onmouseup=c.onmouseout=b),!0;if(d)return this.ia[f]=c,c.onclick=function(){e.oa&&Zc(e.oa);d&&!e.B&&(e.B=d,ro(e,150))},!0}return!1};function so(a,b,c){if(a.L){for(var d in p)if(b==p[d]){b=+d;(d=ma[d])&&(b=d);break}for(var e in po)if((d=po[e]==b)||(d=b,d>=n.Dd&&d<=n.z&&(d-=n.Dd-n.Cd),d=po[e]==d),d){(a=a.ia["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}
k.hc=function(a,b,c,d){this.oa=a;this.ma=b;this.U=c;this.Ea=d;this.V=vb(a,"ChipSet");this.H=Mc(a,"autoType")||this.H;Me(c,33,this.Kl.bind(this))};k.Kl=function(){if(10==(this.U.F>>8&255)&&!this.G&&this.H){var a=this.G=this.H;a&&!this.B&&(this.B=a,ro(this,150))}return!0};function go(a,b){var c=0;a.aa=null;"string"==typeof b&&(a.aa=b.toUpperCase(),c=to.indexOf(a.aa),0>c&&(c=0));if(b=to[c])a.X=parseInt(b.substr(2),10)}
function Sm(a,b,c){a.J!==c&&(a.J=a.K=c)&&(a.F=!0);a.I!==b&&(a.I=b)&&!a.K&&Fn(a,!0);a.I&&a.K&&(a.Jb=[],gn(a,hn),a.K=!1)}function gn(a,b){a.V&&(a.Jb.unshift(b),a.F=!0,Dn(a.V,b))}function Zm(a){var b;a.Jb.length&&a.F&&(b=a.Jb[0],a.V&&Dn(a.V,b))}function Pm(a){var b=0;a.Jb.length&&(b=a.Jb[0]);return b}function Fn(a,b){0<a.Jb.length&&(a.Jb.shift(),(a.F=b)&&a.Jb.length&&a.V&&Dn(a.V,a.Jb[0]))}k.Ob=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};
k.Nb=function(a){return a?this.save():!0};k.reset=function(){if(!this.aa&&this.V)switch(this.V.aa){case zj:case 5160:go(this,to[0]);break;default:go(this,to[1])}uo(this);this.Sb=this.C=0;this.Jb=[];this.F=!0;this.G=null;this.B=""};k.save=function(){var a=new Qe(this),b=[];b[0]=this.J;b[1]=this.I;a.set(0,b);return a.data()};k.restore=function(a){return uo(this,a[0])};function uo(a,b){var c=0;b||(b=[]);a.J=a.F=b[c++];a.I=b[c];a.D=0;return!0}
k.hc=function(a,b,c,d){this.oa=a;this.ma=b;this.U=c;this.Ea=d;this.V=vb(a,"ChipSet");this.F=Mc(a,"autoType")||this.F;Me(c,33,this.Kl.bind(this))};k.Kl=function(){if(10==(this.U.F>>8&255)&&!this.D&&this.F){var a=this.D=this.F;a&&!this.B&&(this.B=a,ro(this,150))}return!0};function go(a,b){var c=0;a.aa=null;"string"==typeof b&&(a.aa=b.toUpperCase(),c=to.indexOf(a.aa),0>c&&(c=0));if(b=to[c])a.X=parseInt(b.substr(2),10)}
function Sm(a,b,c){a.J!==c&&(a.J=a.K=c)&&(a.H=!0);a.I!==b&&(a.I=b)&&!a.K&&Fn(a,!0);a.I&&a.K&&(a.Jb=[],gn(a,hn),a.K=!1)}function gn(a,b){a.V&&(a.Jb.unshift(b),a.H=!0,Dn(a.V,b))}function Zm(a){var b;a.Jb.length&&a.H&&(b=a.Jb[0],a.V&&Dn(a.V,b))}function Pm(a){var b=0;a.Jb.length&&(b=a.Jb[0]);return b}function Fn(a,b){0<a.Jb.length&&(a.Jb.shift(),(a.H=b)&&a.Jb.length&&a.V&&Dn(a.V,a.Jb[0]))}k.Ob=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};
k.Nb=function(a){return a?this.save():!0};k.reset=function(){if(!this.aa&&this.V)switch(this.V.aa){case zj:case 5160:go(this,to[0]);break;default:go(this,to[1])}uo(this)};k.save=function(){var a=new Qe(this),b=[];b[0]=this.J;b[1]=this.I;a.set(0,b);return a.data()};k.restore=function(a){return uo(this,a[0])};function uo(a,b){var c=0;b?a.D=a.F:(b=[],a.D=null);a.J=b[c++];a.I=b[c];a.G=0;a.Sb=a.C=0;a.Jb=[];a.H=!0;a.B="";return!0}
function ro(a,b){for(var c=0;0<a.B.length&&!c;)if(c=a.B.charAt(0),a.B=a.B.substr(1),c=c.charCodeAt(0),240<=c){b=100*(c-240)||150;c=0;break}c&&(10==c&&(c=13),jo(a,c,!0));0<a.B.length&&setTimeout(function(a){return function(){ro(a,b)}}(a),b)}
function oo(a,b,c,d){if(V[b]){var e=Math.floor(b/1E3)&2;if(b=vo[b]||0){!e||b&wo||(b>>=1);if(b&xo){if(!1===d)return!0;d=null}null==d?d=!((c?a.C:a.Sb)&b):d||b&yo&&(b=yo);if(c){a.C&=~b;d&&(a.C|=b);c=b;var f,g;for(g in zo)d="led-"+g,e=zo[g],c&&c!=e||!(f=a.ia[d])||(f.style.backgroundColor=a.C&e?"#00ff00":"#000000")}else a.Sb&=~b,d&&(a.Sb|=b);return!0}}return!1}
function jo(a,b,c){if((V[b]||V[b+=1E3])&&a.U&&a.U.ca.Ib){vo[b]&&a.A.length&&0<a.A[0].Zc&&(a.A[0].Zc=0);for(var d,e=0;e<a.A.length;e++)if(d=a.A[e],d.Td==b){if(!c||0<=d.Zc){e=-1;break}0<e&&(0<a.A[0].Zc&&(a.A[0].Zc=0),a.A.splice(e,1));break}0>e||(e==a.A.length&&(d={},d.Td=b,d.Sb=a.Sb,so(a,b,!0),e++),0<e&&a.A.splice(0,0,d),d.Je=!0,d.Zc=c?-1:vo[b]?0:1,Ao(a,d))}}