Fixed problems booting the Oct 86 CP-DOS boot disk (the showstopper was allowing the mode of the LDT register to be changed by LOADALL)

This commit is contained in:
Jeff Parsons 2016-01-25 15:07:44 -08:00
commit b9a2968f03
26 changed files with 7184 additions and 160 deletions

View file

@ -21,9 +21,9 @@ Wa.prototype={constructor:Wa,parent:null,toString:function(){return this.name?th
this.Va=function(a,b,c){this.U(a,"notice",c)}),!0;default:return!1}},log:function(){},U:function(){},status:function(a){this.U(this.ce+": "+a)},Va:function(a,b){b||Ba(a)},nc:function(){return this.ra.dc=!0},mc:function(a,b){b&&(this.ra.dc=!1);return!0}};function m(a,b,c,d,e,f,g){a.ma&&(!0===g?g=0:null==g&&(g=a.rc),mb(a.ma,a,b,c,d,e,f,g))}function nb(a,b,c,d){a.ma&&(!0===c||n(a,c|0))&&a.ma.message(b,d)}
function n(a,b){if(a.ma){a===a.ma?b|=0:b=b||a.rc;var c=a.ma.rc&b;return!!b&&c===b||!!(c&a.ma.zk)}return!1}function qb(a,b){if(a.ra.Yg)return a.ra.Yc&&(a.ra.Yc=!1),a.ra.Yg=!1;if(a.ra.td)return a.U(a.toString()+" error"),!1;a.ra.Yc=b;return a.ra.Yc}function rb(a,b){a.ra.Yc&&(b?a.ra.Yg=!0:void 0===b&&a.U(a.toString()+" busy"));return a.ra.Yc}function sb(a,b){if(!a.ra.td&&(a.ra.Ue=!1!==b,a.ra.Ue)){var c=a.mg;a.mg=null;c&&c()}}function tb(a,b){b&&(a.ra.Ue?b():a.mg=b);return a.ra.Ue}
function ub(a,b){a.ra.td=!0;a.Va(b)}
var vb="undefined"!==typeof ArrayBuffer,wb={zg:4,aa:5,Ia:6,oa:7,pa:8,N:9,S:11,T:12,Be:4,Qi:60,Ri:83,uc:3,Yb:9,Ic:16,yg:1,Vi:19,Xi:28,Zi:16,Yi:21,Wi:37,Ti:2,wh:9,Ui:5,Si:33,yh:10,xh:8,Hf:3,Gf:15,mj:51,nj:1,oj:2,pj:4,lj:32,zh:15,rj:15,eb:16,fb:4,tj:11,sj:18,qj:24,fc:4,uj:2,ff:16,vj:17,Eh:18,wj:19,Dh:5,Fh:6,Bj:2,Aj:8,yj:9,zj:10,xj:10,Gh:10,Hh:10,aj:80,cj:144,$i:86,bj:154,ej:101,gj:165,dj:107,fj:171,Dj:70,Fj:113,Cj:76,Ej:124,ij:80,kj:128,hj:86,jj:134,Jf:3,If:16,Mh:10,Lh:8,Gj:51,vc:8,Hj:17,Ij:36,Oc:11,
var vb="undefined"!==typeof ArrayBuffer,wb={zg:4,aa:5,Ia:6,oa:7,pa:8,N:9,S:11,T:12,Be:4,Qi:60,Ri:83,uc:3,Yb:9,Ic:16,yg:1,Vi:19,Xi:28,Zi:16,Yi:21,Wi:37,Ti:2,wh:9,Ui:5,Si:33,yh:10,xh:8,Hf:3,Gf:15,mj:51,nj:1,oj:2,pj:4,lj:32,zh:15,rj:15,eb:16,fb:4,tj:11,sj:18,qj:24,fc:4,uj:2,ff:16,vj:17,Eh:18,wj:19,Dh:5,Fh:6,Bj:2,Aj:8,yj:9,zj:10,xj:10,Gh:10,Hh:10,aj:80,cj:144,$i:86,bj:154,ej:101,gj:165,dj:107,fj:171,Dj:70,Fj:113,Cj:76,Ej:124,ij:80,kj:128,hj:86,jj:134,Jf:3,If:16,Mh:10,Lh:8,Gj:51,vc:8,Hj:17,Ij:36,Pc:11,
Jj:16,Ce:10,ld:2,th:18,uh:7,vh:15,Ah:12,Bh:7,Ch:11,Ih:18,Jh:7,Kh:15,Nh:15,Oh:7,Ph:13,Th:11,Uh:7,Vh:8,Kj:8,Nj:12,Lj:18,Mj:17,Oj:15,Rh:8,Qh:20,Sh:2,Yh:3,Kf:9,Xh:5,Wh:11,$h:4,Zh:17,Pj:11},xb={zg:0,aa:0,Ia:0,oa:0,pa:0,N:0,S:1,T:1,Be:3,Qi:14,Ri:16,uc:2,Yb:7,Ic:7,yg:0,Vi:7,Xi:13,Zi:7,Yi:11,Wi:16,Ti:3,wh:6,Ui:2,Si:13,yh:5,xh:5,Hf:2,Gf:7,mj:23,nj:0,oj:1,pj:3,lj:17,zh:7,rj:11,eb:7,fb:3,tj:7,sj:11,qj:15,fc:2,uj:3,ff:7,vj:8,Eh:8,wj:8,Dh:4,Fh:4,Bj:2,Aj:3,yj:5,zj:2,xj:3,Gh:5,Hh:3,aj:14,cj:22,$i:17,bj:25,ej:17,
gj:25,dj:20,fj:28,Dj:13,Fj:21,Cj:16,Ej:24,ij:13,kj:21,hj:16,jj:24,Jf:2,If:7,Mh:5,Lh:5,Gj:19,vc:5,Hj:5,Ij:17,Oc:3,Jj:5,Ce:3,ld:0,th:8,uh:5,vh:9,Ah:5,Bh:5,Ch:4,Ih:5,Jh:5,Kh:4,Nh:7,Oh:5,Ph:8,Th:3,Uh:4,Vh:3,Kj:11,Nj:11,Lj:15,Mj:15,Oj:7,Rh:5,Qh:8,Sh:0,Yh:2,Kf:6,Xh:3,Wh:6,$h:3,Zh:5,Pj:5},yb={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",
gj:25,dj:20,fj:28,Dj:13,Fj:21,Cj:16,Ej:24,ij:13,kj:21,hj:16,jj:24,Jf:2,If:7,Mh:5,Lh:5,Gj:19,vc:5,Hj:5,Ij:17,Pc:3,Jj:5,Ce:3,ld:0,th:8,uh:5,vh:9,Ah:5,Bh:5,Ch:4,Ih:5,Jh:5,Kh:4,Nh:7,Oh:5,Ph:8,Th:3,Uh:4,Vh:3,Kj:11,Nj:11,Lj:15,Mj:15,Oj:7,Rh:5,Qh:8,Sh:0,Yh:2,Kf:6,Xh:3,Wh:6,$h:3,Zh:5,Pj:5},yb={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",
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 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",
@ -58,14 +58,14 @@ Ob.prototype={constructor:Ob,parent:null,eh:function(a){this.Sa=a},save:function
b,c){this.yc(a++,b&255,c++);this.yc(a++,b>>8&255,c++);this.yc(a++,b>>16&255,c++);this.yc(a,b>>>24,c)},Ka:function(a){return this.fa[a>>2]>>>((a&3)<<3)&255},Eb:function(a){var b=a>>2;a=(a&3)<<3;var c=this.fa[b]>>a;return 24>a?c&65535:c&255|(this.fa[b+1]&255)<<8},bb:function(a){var b=a>>2;a=(a&3)<<3;var c=this.fa[b];a&&(c=c>>>a|this.fa[b+1]<<32-a);return c},ce:function(a,b){var c=a>>2,d=(a&3)<<3;this.fa[c]=this.fa[c]&~(255<<d)|b<<d;this.$a=!0},Gd:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.fa[c]=
this.fa[c]&~(65535<<d)|b<<d:(this.fa[c]=this.fa[c]&16777215|b<<24,c++,this.fa[c]=this.fa[c]&-256|b>>8);this.$a=!0},qd:function(a,b){var c=a>>2,d=(a&3)<<3;if(d){var e=-1<<d;this.fa[c]=this.fa[c]&~e|b<<d;c++;this.fa[c]=this.fa[c]&e|b>>>32-d}else this.fa[c]=b;this.$a=!0},Ga:function(a,b){this.ma&&Dc(this.ma,b)||this.M&&Ec(this.M,b,1,!1);return this.ne(a,b)},rb:function(a,b){this.ma&&Dc(this.ma,b,2)||this.M&&Ec(this.M,b,2,!1);return this.Vf(a,b)},Ua:function(a,b){this.ma&&Dc(this.ma,b,4)||this.M&&Ec(this.M,
b,4,!1);return this.fi(a,b)},jc:function(a,b,c){this.ma&&Fc(this.ma,c)||this.M&&Ec(this.M,c,1,!0);this.ja?this.W(a,b,c):this.of(a,b,c)},Ed:function(a,b,c){this.ma&&Fc(this.ma,c,2)||this.M&&Ec(this.M,c,2,!0);this.ja?this.W(a,b,c):this.li(a,b,c)},dd:function(a,b,c){this.ma&&Fc(this.ma,c,4)||this.M&&Ec(this.M,c,4,!0);this.ja?this.W(a,b,c):this.Aa(a,b,c)},Oa:function(a,b){this.A.fa[this.R]|=this.xa;this.C.fa[this.O]|=this.xa;return this.zd.oc(a,b)},Qb:function(a,b){this.A.fa[this.R]|=this.xa;this.C.fa[this.O]|=
this.xa;return this.zd.Uf(a,b)},Wb:function(a,b){this.A.fa[this.R]|=this.xa;this.C.fa[this.O]|=this.xa;return this.zd.Yd(a,b)},Qc:function(a,b,c){this.A.fa[this.R]|=this.xa;this.C.fa[this.O]|=this.ka;this.zd.yc(a,b,c)},Id:function(a,b,c){this.A.fa[this.R]|=this.xa;this.C.fa[this.O]|=this.ka;this.zd.cg(a,b,c)},sd:function(a,b,c){this.A.fa[this.R]|=this.xa;this.C.fa[this.O]|=this.ka;this.zd.bg(a,b,c)},Pa:function(a,b){return Gc(this.M,b,!1).oc(a,b)},Xb:function(a,b){return Gc(this.M,b,!1).Uf(a,b)},
lb:function(a,b){return Gc(this.M,b,!1).Yd(a,b)},Rc:function(a,b,c){Gc(this.M,c,!0).yc(a,b,c)},Jd:function(a,b,c){Gc(this.M,c,!0).cg(a,b,c)},Ad:function(a,b,c){Gc(this.M,c,!0).bg(a,b,c)},Fa:function(a){return this.cb[a]},Ha:function(a){return this.cb[a]},Na:function(a){this.A.fa[this.R]|=32;this.C.fa[this.O]|=32;return this.cb[a]},qb:function(a){return this.ha.getUint16(a,!0)},xb:function(a){return a&1?this.cb[a]|this.cb[a+1]<<8:this.fe[a>>1]},Fb:function(a){this.A.fa[this.R]|=32;this.C.fa[this.O]|=
this.xa;return this.zd.Uf(a,b)},Wb:function(a,b){this.A.fa[this.R]|=this.xa;this.C.fa[this.O]|=this.xa;return this.zd.Yd(a,b)},Rc:function(a,b,c){this.A.fa[this.R]|=this.xa;this.C.fa[this.O]|=this.ka;this.zd.yc(a,b,c)},Id:function(a,b,c){this.A.fa[this.R]|=this.xa;this.C.fa[this.O]|=this.ka;this.zd.cg(a,b,c)},sd:function(a,b,c){this.A.fa[this.R]|=this.xa;this.C.fa[this.O]|=this.ka;this.zd.bg(a,b,c)},Pa:function(a,b){return Gc(this.M,b,!1).oc(a,b)},Xb:function(a,b){return Gc(this.M,b,!1).Uf(a,b)},
lb:function(a,b){return Gc(this.M,b,!1).Yd(a,b)},Sc:function(a,b,c){Gc(this.M,c,!0).yc(a,b,c)},Jd:function(a,b,c){Gc(this.M,c,!0).cg(a,b,c)},Ad:function(a,b,c){Gc(this.M,c,!0).bg(a,b,c)},Fa:function(a){return this.cb[a]},Ha:function(a){return this.cb[a]},Na:function(a){this.A.fa[this.R]|=32;this.C.fa[this.O]|=32;return this.cb[a]},qb:function(a){return this.ha.getUint16(a,!0)},xb:function(a){return a&1?this.cb[a]|this.cb[a+1]<<8:this.fe[a>>1]},Fb:function(a){this.A.fa[this.R]|=32;this.C.fa[this.O]|=
32;return a&1?this.cb[a]|this.cb[a+1]<<8:this.fe[a>>1]},Ra:function(a){return this.ha.getInt32(a,!0)},Kc:function(a){return a&3?this.cb[a]|this.cb[a+1]<<8|this.cb[a+2]<<16|this.cb[a+3]<<24:this.fa[a>>2]},ib:function(a){this.A.fa[this.R]|=32;this.C.fa[this.O]|=32;return a&3?this.cb[a]|this.cb[a+1]<<8|this.cb[a+2]<<16|this.cb[a+3]<<24:this.fa[a>>2]},$b:function(a,b){this.cb[a]=b;this.$a=!0},kc:function(a,b){this.cb[a]=b;this.$a=!0},Ec:function(a,b){this.cb[a]=b;this.A.fa[this.R]|=32;this.C.fa[this.O]|=
96;this.zd.$a=!0},Dd:function(a,b){this.ha.setUint16(a,b,!0);this.$a=!0},Fd:function(a,b){a&1?(this.cb[a]=b,this.cb[a+1]=b>>8):this.fe[a>>1]=b;this.$a=!0},Hd:function(a,b){a&1?(this.cb[a]=b,this.cb[a+1]=b>>8):this.fe[a>>1]=b;this.A.fa[this.R]|=32;this.C.fa[this.O]|=96;this.zd.$a=!0},Sc:function(a,b){this.ha.setInt32(a,b,!0);this.$a=!0},ed:function(a,b){a&3?(this.cb[a]=b,this.cb[a+1]=b>>8,this.cb[a+2]=b>>16,this.cb[a+3]=b>>24):this.fa[a>>2]=b;this.$a=!0},pd:function(a,b){a&3?(this.cb[a]=b,this.cb[a+
96;this.zd.$a=!0},Dd:function(a,b){this.ha.setUint16(a,b,!0);this.$a=!0},Fd:function(a,b){a&1?(this.cb[a]=b,this.cb[a+1]=b>>8):this.fe[a>>1]=b;this.$a=!0},Hd:function(a,b){a&1?(this.cb[a]=b,this.cb[a+1]=b>>8):this.fe[a>>1]=b;this.A.fa[this.R]|=32;this.C.fa[this.O]|=96;this.zd.$a=!0},Tc:function(a,b){this.ha.setInt32(a,b,!0);this.$a=!0},ed:function(a,b){a&3?(this.cb[a]=b,this.cb[a+1]=b>>8,this.cb[a+2]=b>>16,this.cb[a+3]=b>>24):this.fa[a>>2]=b;this.$a=!0},pd:function(a,b){a&3?(this.cb[a]=b,this.cb[a+
1]=b>>8,this.cb[a+2]=b>>16,this.cb[a+3]=b>>24):this.fa[a>>2]=b;this.A.fa[this.R]|=32;this.C.fa[this.O]|=96;this.zd.$a=!0}};function Pb(a,b,c){a.ma=b;a.X=a.da=0;c&&(c.M&&(a.M=c.M),(a.X=c.X)&&Ac(a,Bc,!1),(a.da=c.da)&&Cc(a,Bc,!1))}function Hc(a,b){b?0===--a.da&&(a.yc=a.ja?a.W:a.of,a.cg=a.ja?a.qa:a.li,a.bg=a.ja?a.la:a.Aa):0===--a.X&&(a.oc=a.ne,a.Uf=a.Vf,a.Yd=a.fi)}
function Cc(a,b,c){c&&a.da||(a.yc=!a.ja&&b[3]||a.W,a.cg=!a.ja&&b[4]||a.qa,a.bg=!a.ja&&b[5]||a.la);if(c||void 0===c)a.of=b[3]||a.W,a.li=b[4]||a.qa,a.Aa=b[5]||a.la}function Ac(a,b,c){c&&a.X||(a.oc=b[0]||a.va,a.Uf=b[1]||a.ya,a.Yd=b[2]||a.ta);if(c||void 0===c)a.ne=b[0]||a.va,a.Vf=b[1]||a.ya,a.fi=b[2]||a.ta}function Zb(a,b,c){b||(b=5==a.type?Ic:6==a.type?Jc:Kc);Ac(a,b,c);Cc(a,b,c)}
var Kc=[],ec=[Ob.prototype.Ka,Ob.prototype.Eb,Ob.prototype.bb,Ob.prototype.ce,Ob.prototype.Gd,Ob.prototype.qd],Bc=[Ob.prototype.Ga,Ob.prototype.rb,Ob.prototype.Ua,Ob.prototype.jc,Ob.prototype.Ed,Ob.prototype.dd],Jc=[Ob.prototype.Oa,Ob.prototype.Qb,Ob.prototype.Wb,Ob.prototype.Qc,Ob.prototype.Id,Ob.prototype.sd],Ic=[Ob.prototype.Pa,Ob.prototype.Xb,Ob.prototype.lb,Ob.prototype.Rc,Ob.prototype.Jd,Ob.prototype.Ad];
if(vb)var dc=[Ob.prototype.Fa,Ob.prototype.qb,Ob.prototype.Ra,Ob.prototype.$b,Ob.prototype.Dd,Ob.prototype.Sc],cc=[Ob.prototype.Ha,Ob.prototype.xb,Ob.prototype.Kc,Ob.prototype.kc,Ob.prototype.Fd,Ob.prototype.ed],Lc=[Ob.prototype.Na,Ob.prototype.Fb,Ob.prototype.ib,Ob.prototype.Ec,Ob.prototype.Hd,Ob.prototype.pd];
var Kc=[],ec=[Ob.prototype.Ka,Ob.prototype.Eb,Ob.prototype.bb,Ob.prototype.ce,Ob.prototype.Gd,Ob.prototype.qd],Bc=[Ob.prototype.Ga,Ob.prototype.rb,Ob.prototype.Ua,Ob.prototype.jc,Ob.prototype.Ed,Ob.prototype.dd],Jc=[Ob.prototype.Oa,Ob.prototype.Qb,Ob.prototype.Wb,Ob.prototype.Rc,Ob.prototype.Id,Ob.prototype.sd],Ic=[Ob.prototype.Pa,Ob.prototype.Xb,Ob.prototype.lb,Ob.prototype.Sc,Ob.prototype.Jd,Ob.prototype.Ad];
if(vb)var dc=[Ob.prototype.Fa,Ob.prototype.qb,Ob.prototype.Ra,Ob.prototype.$b,Ob.prototype.Dd,Ob.prototype.Tc],cc=[Ob.prototype.Ha,Ob.prototype.xb,Ob.prototype.Kc,Ob.prototype.kc,Ob.prototype.Fd,Ob.prototype.ed],Lc=[Ob.prototype.Na,Ob.prototype.Fb,Ob.prototype.ib,Ob.prototype.Ec,Ob.prototype.Hd,Ob.prototype.pd];
function Mc(a,b){Wa.call(this,"CPU",a,Mc,1);var c=a.cycles||b,d=a.multiplier||1;this.ba={};this.ba.Kd=c;this.ba.Ud=d;this.ba.pg=Math.round(this.ba.Kd/1E4)/100;this.ba.ze=this.ba.pg*this.ba.Ud;this.ra.Mb=!1;this.ra.ah=!1;this.ra.Xg=a.autoStart;this.ra.Gi=!1;c=$a.autostart;void 0!==c&&(this.ra.Xg="true"==c?!0:"false"==c?!1:null);this.ra.Re=!1;this.ba.zf=this.ba.bf=0;this.ba.Af=a.csStart;this.ba.af=a.csInterval;this.ba.cf=a.csStop;this.dd=[];this.Lg=this.Fe.bind(this);sb(this)}eb(Mc);
var Nc=["power","reset"];h=Mc.prototype;h.Hc=function(a,b,c,d){this.ha=a;this.ja=b;this.ma=d;for(b=0;b<Nc.length;b++)(c=this.xa[Nc[b]])&&this.ha.Vb(null,Nc[b],c);this.Wb=Eb(a,"FPU");for(b=null;b=Eb(a,"Video",b);)this.dd.push(b);this.R=Eb(a,"ChipSet");sb(this)};h.reset=function(){};h.save=function(){return null};h.restore=function(){return!1};
h.nc=function(a,b){if(!b){if(a&&this.restore){Oc(this);if(!this.restore(a))return!1;Qc(this)}else this.reset();this.ma?this.ma.eh():this.U("No debugger detected")}Tc(this);return!0};h.mc=function(a){return a?this.save():!0};function Uc(a){(!0===a.ra.Xg||null===a.ra.Xg&&!a.ma&&void 0===a.xa.run)&&a.Fe()}h.Ii=function(){return 0};
@ -84,7 +84,7 @@ h.Zb=function(a){rb(this,!0);this.bb-=this.A;this.A=0;ad(this,this.Fb);this.Fb=0
function fd(a,b,c,d){this.M=a;this.ma=a.ma;this.id=b;this.ic=c||"";this.ga=0;this.ab=65535;this.gc=this.ab+1;this.ac=this.Gc=this.ext=this.Gb=this.type=this.Ca=0;this.cc=-1;this.ia=this.cd=2;this.B=this.Ea=65535;this.xa=this.ih;this.P=this.wi;this.ja=this.yi;this.A={ga:-1,Ca:0,ab:0,Gb:0,type:0,ext:0,cc:-1};1==this.id&&(this.Nf=0,this.R=null,this.We=!1,this.O=Array(32),this.C=[]);gd(this,!0,d)}function id(a,b){a.C.push(b);return[a.C.length,1]}h=fd.prototype;
h.ih=function(a){this.ga=a&65535;return this.Ca=this.ga<<4};h.ng=function(a,b){var c,d,e=this.M;a&=65535;a&4?(c=e.Jc.Ca,d=c+e.Jc.ab|0):(c=e.gd,d=e.de);if(c){c=c+(a&65528)|0;if(d-c|0)return e.A-=15,jd(this,c,a,b);6>this.id&&p.call(e,b&&3==this.id?10:13,a&65532)}return-1};h.Wl=function(a){var b=this.M;a=b.hd+(a<<2);var c=b.ua(a);b.ea&=-769;return this.load(b.ua(a+2))+c|0};
h.Vl=function(a){var b=this.M;a<<=3;var c=b.hd+a|0;if(7<=(b.ee-c|0))return this.R=!0,a=jd(this,c,a),-1!==a&&(a+=this.Nf),a;p.call(b,13,a|2);return-1};h.wi=function(a){return this.Ca+a|0};h.yi=function(a){return this.Ca+a|0};h.vi=function(a,b){return(a>>>0)+b<=this.gc?this.Ca+a|0:this.ig()};h.Bk=function(a,b){return(a>>>0)+b>this.gc?this.Ca+a|0:this.ig()};h.ig=function(){p.call(this.M,13,0);return-1};h.xi=function(a,b){return(a>>>0)+b<=this.gc?this.Ca+a|0:this.jg()};
h.Ck=function(a,b){return(a>>>0)+b>this.gc?this.Ca+a|0:this.jg()};h.jg=function(){p.call(this.M,13,0);return-1};function kd(a,b,c){var d=a.M,e=d.ua(b+2),f=d.ua(b)|(e&255)<<16,d=d.ua(b+4);a.ga=c;a.Ca=f;a.ab=d;a.gc=(d>>>0)+1;a.Gb=e;a.type=e&7936;a.ext=0;a.cc=b;gd(a,!0)}
h.Ck=function(a,b){return(a>>>0)+b>this.gc?this.Ca+a|0:this.jg()};h.jg=function(){p.call(this.M,13,0);return-1};function kd(a,b,c){var d=a.M,e=d.ua(b+2),f=d.ua(b)|(e&255)<<16,d=d.ua(b+4);a.ga=c;a.Ca=f;a.ab=d;a.gc=(d>>>0)+1;a.Gb=e;a.type=e&7936;a.ext=0;a.cc=b;4>a.id&&gd(a,!0)}
function jd(a,b,c,d){var e=a.M;if(!d&&c===a.A.ga)return a.ga=c,a.Ca=a.A.Ca,a.ab=a.A.ab,a.gc=(a.A.ab>>>0)+1,a.Gb=a.A.Gb,a.type=a.A.type,a.ext=a.A.ext,a.cc=a.A.cc,a.A.ga=-1,gd(a,!0,!0,!1),a.Ca;a.A.ga=-1;var f=e.ua(b+0),g=e.ua(b+4),k=g&7936,q=e.ua(b+2)|(g&255)<<16,r=e.ua(b+6),x=c&65528;if(80386<=e.na){var B=f,q=q|(r&65280)<<16,f=f|(r&15)<<16;r&128&&(f=f<<12|4095)}switch(a.id){case 1:var y=a.R;a.We=!1;if(y&&1==c&&a.C.length){var L=a.C[a.Nf-1];if(L&&!L())return-1}var L=c&3,F=(g&24576)>>13,I,V,P;if(x&&
!(g&32768))return 6>a.id&&p.call(e,11,c&65532),-1;if(6144<=k){if(L>a.ac){if(!1!==y&&!(F==a.ac||k&1024&&F<=a.ac))return-1;I=ld(e);md(e,ld(e),!0);t(e,I);a.We=!0}I=0}else{if(256==k||2304==k)return nd(a,c,y)?a.Ca:-1;if(1024==k)I=2,P=0,L<a.ac&&(L=a.ac);else if(3072==k)I=4,P=0,L<a.ac&&(L=a.ac);else if(1536==k)I=2,P=148224;else if(3584==k)I=4,P=148224;else if(1792==k)I=2,P=147712;else if(3840==k)I=4,P=147712;else if(1280==k)return nd(a,q&65535,y)?a.Ca:-1}if(I&&(x=a.ac,V=b==e.hd+c,L<=F&&(!V||0<=e.lb||x<=
F))){b=q&65535;k&2048&&(f=B|r<<16);r=k=0;c=b&3;if(c<x){if(-1===a.ng(b,!0))return-1;r=e.Ya.Ca;e.Ya.type&2048?(c=(c<<2)+4,d=4):(c=(c<<2)+2,d=2);k=e.ua(r+c+d);if(!k)return p.call(e,10,k),-1;if(-1===e.za.ng(k,!0))return-1;r=2==d?e.ua(r+c):e.Ta(r+c)}c=e.ea;e.ea&=~P;c&131072&&sd(e,!0,!1);if(-1===a.ng(b))return-1;td(e,I);a.Nf=f;if(a.ac<x){if(!0!==y)return-1;I=u(e);f=0;for(g&=31;g--;)a.O[f++]=ud(e,e.za,I),I+=2;y=e.za.ga;g=u(e);md(e,k,!0);t(e,r);c&131072&&(td(e,4),vd(e,e.Ub.ga),e.Ub.load(0),vd(e,e.Tb.ga),
@ -96,7 +96,7 @@ function nd(a,b,c){var d=a.M,e=a.ac,f=d.Ya.ga,g=d.Ya.Ca;if(!c){if(!(d.Ya.type&51
!0),t(d,d.Ta(k+g)));c&&d.pb(k+0,f);d.gb|=8;return!0}h.save=function(){return[this.ga,this.Ca,this.ab,this.Gb,this.id,this.ic,this.ac,this.Gc,this.cc,this.cd,this.Ea,this.ia,this.B,this.type,this.gc]};
h.restore=function(a){"number"==typeof a?this.load(a):(this.ga=a[0],this.Ca=a[1],this.ab=a[2],this.Gb=a[3],this.id=a[4],this.ic=a[5],this.ac=a[6],this.Gc=a[7],this.cc=a[8],this.cd=a[9]||2,this.Ea=a[10]||65535,this.ia=a[11]||2,this.B=a[12]||65535,this.type=a[13]||this.Gb&7936,this.gc=a[14]||(this.ab>>>0)+1)};
function gd(a,b,c,d){void 0===c&&(c=!!(a.M.gb&1));a.Zc=!1;if(c)if(a.load=a.ng,a.Mi=a.Vl,a.Fc=a.vi,a.Ac=a.xi,void 0===d&&(d=!!(a.M.ea&131072)),d)a.load=a.xa,a.Fc=a.P,a.Ac=a.ja,a.ac=a.Gc=3,a.ia=a.cd=2,a.B=a.Ea=65535,a.ab=65535,a.gc=a.ab+1,a.cd=a.ia,a.cc=-1,a.We=!1;else{if(!(a.ga&-4))a.Fc=a.ig,a.Ac=a.jg;else if(a.type&4096){6144==(a.type&6656)&&(a.Fc=a.ig);if(a.type&2048||!(a.type&512))a.Ac=a.jg;1024==(a.type&3072)&&(a.Fc==a.vi&&(a.Fc=a.Bk),a.Ac==a.xi&&(a.Ac=a.Ck),a.Zc=!0);b&&6>a.id&&a.ga&-4&&-1!==a.cc&&
(c=a.cc+5,a.M.xc(c,a.M.Xa(c)|1))}b&&(a.ac=a.ga&3,a.Gc=(a.Gb&24576)>>13,80386>a.M.na||!(a.ext&64)?(a.ia=2,a.B=65535):(a.ia=4,a.B=-1),a.cd=a.ia,a.Ea=a.B)}else a.load=a.ih,a.Mi=a.Wl,a.Fc=a.wi,a.Ac=a.yi,a.ac=a.Gc=0,a.cc=-1,a.We=!1}
(c=a.cc+5,d=a.M.Xa(c),d&1||a.M.xc(c,d|1))}b&&(a.ac=a.ga&3,a.Gc=(a.Gb&24576)>>13,80386>a.M.na||!(a.ext&64)?(a.ia=2,a.B=65535):(a.ia=4,a.B=-1),a.cd=a.ia,a.Ea=a.B)}else a.load=a.ih,a.Mi=a.Wl,a.Fc=a.wi,a.Ac=a.yi,a.ac=a.Gc=0,a.cc=-1,a.We=!1}
function Cd(a){this.na=a.model||8088;var b=a.stepping;this.jc=this.na+(b?ca(b,16):0);b=0;switch(this.na){default:b=4772727;break;case 80286:b=6E6;break;case 80386:b=16E6}Mc.call(this,a,b);this.Sf=61442;this.$b=1792;this.Pf=28672;this.Ad=4;this.va=255;this.C=80286<=this.na?xb:wb;this.W=Dd;this.Zf=Ed;this.$f=Fd;this.ag=Gd;if(80186<=this.na&&(this.W=Dd.slice(),this.Zf=Ed.slice(),this.$f=Fd.slice(),this.va=31,this.W[15]=Hd,this.W[96]=Id,this.W[97]=Jd,this.W[98]=Kd,this.W[99]=Hd,this.W[100]=Hd,this.W[101]=
Hd,this.W[102]=Hd,this.W[103]=Hd,this.W[104]=Ld,this.W[105]=Md,this.W[106]=Nd,this.W[107]=Rd,this.W[108]=Sd,this.W[109]=Td,this.W[110]=Yd,this.W[111]=Zd,this.W[192]=$d,this.W[193]=ae,this.W[200]=be,this.W[201]=ce,this.W[241]=de,this.Zf[7]=ee,this.$f[7]=ee,80286<=this.na)){this.Sf=2;this.$b|=28672;this.Ad=0;this.W[15]=fe;this.Qb=ge.slice();for(a=0;a<this.Qb.length;a++)this.Qb[a]||(this.Qb[a]=he);this.W[84]=ie;this.W[99]=je;if(80386<=this.na){var c;this.Pf=0;this.$b|=196608;this.W[100]=ke;this.W[101]=
le;this.W[102]=me;this.W[103]=ne;for(c in w)this.Qb[+c]=w[c];80546<=this.jc&&80562>=this.jc&&(this.Qb[166]=oe,this.Qb[167]=pe)}}this.Fd=[];this.Gd=[];this.Id=0;Oc(this);this.ra.Sd=this.ra.Ei=!1;this.Kg=0;this.Lc=this.wa=[];this.La=this.Pb=this.Ga=this.Dd=this.ed=this.Jb=this.qb=0;qe(this)}eb(Cd,Mc);
@ -104,7 +104,7 @@ function re(a){var b;if(a.wa===a.Lc){a.wa=Array(a.Dd);a.Hd=new Ob(null,0,0,5,nul
function Gc(a,b,c,d){var e=(b&-4194304)>>>20,f=a.Lc[(a.Nd+e&a.Jb)>>>a.La],g=f.Yd(e);if(!(g&1))return d||se.call(a,b,!1,c),a.qd;if(!(g&4)&&3==a.ta)return d||se.call(a,b,!0,c),a.qd;var k=(b&4190208)>>>10,g=a.Lc[((g&-4096)+k&a.Jb)>>>a.La],q=g.Yd(k);if(!(q&1))return d||se.call(a,b,!1,c),a.qd;if(!(q&4)&&3==a.ta)return d||se.call(a,b,!0,c),a.qd;c=a.Lc[((q&-4096)+(b&4095)&a.Jb)>>>a.La];if(d)return c;d=b>>>a.La;q=a.wa[d];b=b&-4096;var r;0<a.Jd?(r=a.Tf[--a.Jd],r.eh(b)):r=new Ob(b,0,0,6);b=r;b.zd=c;b.A=f;b.R=
e>>2;b.C=g;b.O=k>>2;vb&&bc&&c.fa&&!c.controller?(b.cb=c.cb,b.fe=c.fe,b.fa=c.fa,Zb(b,Lc)):(b.xa=c?zc(32):0,b.ka=c?zc(96):0,Zb(b,Jc));Pb(b,a.ma,q);a.wa[d]=b;a.Ed.push(d);return b}function te(a){a.wa!==a.Lc&&(a.wa=a.Lc,a.Hd=null,a.Ed=null,a.qd=null)}h=Cd.prototype;h.reset=function(){this.ra.Mb&&this.Zb();qe(this);Oc(this);this.ra.td=!1};
function ue(a,b){var c;switch(b){case 0:c=a.F;break;case 1:c=a.G;break;case 2:c=a.H;break;case 3:c=a.D;break;case 4:c=u(a);break;case 5:c=a.K;break;case 6:c=a.J;break;case 7:c=a.I}return c}function ve(a,b,c){switch(b){case 0:a.F=c;break;case 1:a.G=c;break;case 2:a.H=c;break;case 3:a.D=c;break;case 4:t(a,c);break;case 5:a.K=c;break;case 6:a.J=c;break;case 7:a.I=c}}
function qe(a){a.F=0;a.D=0;a.G=0;a.H=0;a.ib=0;a.K=0;a.J=0;a.I=0;a.Ua=!1;a.la=a.Aa=0;a.xb=0;a.Jg=0;a.kc=0;a.gb=65520;a.hd=0;a.ee=1023;a.ea=a.Pa=0;a.Rc=a.sd=a.Qc=a.Sc=0;a.lb=-1;a.Ec=-1;a.De=a.X=-1;a.Ba=new fd(a,1,"CS");a.Db=new fd(a,2,"DS");a.hb=new fd(a,2,"ES");a.za=new fd(a,3,"SS");t(a,0);md(a,0);if(80386<=a.na){switch(a.jc){case 80562:case 80563:a.H=771;break;case 80578:a.H=772;break;case 80594:a.H=773;break;case 80595:case 80596:a.H=776}a.gb=16;a.gi=0;a.oe=0;a.Nd=0;a.Ka=[0,0,0,0,null,null,0,0];
function qe(a){a.F=0;a.D=0;a.G=0;a.H=0;a.ib=0;a.K=0;a.J=0;a.I=0;a.Ua=!1;a.la=a.Aa=0;a.xb=0;a.Jg=0;a.kc=0;a.gb=65520;a.hd=0;a.ee=1023;a.ea=a.Pa=0;a.Sc=a.sd=a.Rc=a.Tc=0;a.lb=-1;a.Ec=-1;a.De=a.X=-1;a.Ba=new fd(a,1,"CS");a.Db=new fd(a,2,"DS");a.hb=new fd(a,2,"ES");a.za=new fd(a,3,"SS");t(a,0);md(a,0);if(80386<=a.na){switch(a.jc){case 80562:case 80563:a.H=771;break;case 80578:a.H=772;break;case 80594:a.H=773;break;case 80595:case 80596:a.H=776}a.gb=16;a.gi=0;a.oe=0;a.Nd=0;a.Ka=[0,0,0,0,null,null,0,0];
a.we=[null,null,null,null,null,null,0,0];a.Tb=new fd(a,2,"FS");a.Ub=new fd(a,2,"GS");te(a)}a.jf=new fd(a,0,"NULL");a.O=a.Db;a.P=a.za;a.V=a.Ja=0;a.Y=a.Z=-1;a.nd=a.jf;a.ya=0;if(80286>a.na)Ad(a,0,65535);else{a.gd=0;a.de=65535;a.Jc=new fd(a,5,"LDT",!0);a.Ya=new fd(a,4,"TSS",!0);a.Fa=new fd(a,6,"VER",!0);Ad(a,65520,61440);var b,c=v(a);b=a.Ba;var d=-65536;80386>b.M.na&&(d&=16777215);b=b.Ca=d;a.Ma=b+c|0;a.hf=b+a.Ba.ab|0}zd(a,0);sd(a)}function we(a,b){b.ga&65528&&b.Gc<a.ta&&7168!=(b.Gb&7168)&&b.load(0)}
function xe(a){2==a.cd?(a.ec=a.ua,a.Oa=z,a.Ra=ye,a.Eb=ze,a.da=A,a.qa=Ce,a.Na=De):(a.ec=a.Ta,a.Oa=C,a.Ra=Ee,a.Eb=Fe,a.da=D,a.qa=Ge,a.Na=He)}function td(a,b){a.ia!=b&&(a.Ja|=1024,a.ia=b,a.B=2==b?65535:-1,Ie(a))}function Ie(a){2==a.ia?(a.Ha=32768,a.vb=a.ua,a.pc=a.pb):(a.Ha=-2147483648,a.vb=a.Ta,a.pc=a.ub)}function Je(a){a.cd=a.Ba.cd;a.Ea=a.Ba.Ea;xe(a);a.ia=a.Ba.ia;a.B=a.Ba.B;Ie(a);a.Ja&=-3073}
h.Ii=function(){var a=this.F+this.D+this.G+this.H+u(this)+this.K+this.J+this.I|0;return a=a+v(this)+this.Ba.ga+this.Db.ga+this.za.ga+this.hb.ga+yd(this)|0};function Ke(a,b,c){void 0===a.Fd[b]&&(a.Fd[b]=[]);a.Fd[b].push(c)}function Le(a,b,c){void 0!==c&&(null==a.Gd[b]&&a.Id++,a.Gd[b]=c)}function Me(a,b){var c=a.Gd[b];null!=c&&(c(--a.Id),delete a.Gd[b])}
@ -116,10 +116,10 @@ h.restore=function(a){var b=a[0];this.F=b[0];this.D=b[1];this.G=b[2];this.H=b[3]
var f=a[4],g;for(g=0;g<f.length-1;g+=2){var k=f[g],q=f[g+1];if(q&&q.length<e.la){for(var r=0,x=Array(e.la),B=0;B<q.length-1;)for(var y=q[B++],L=q[B++];y--;)x[r++]=L;q=x}r=e.wa[k];if(!r||!r.restore(q)){Ba("Unable to restore memory block "+k);e=!1;break a}}void 0!==f[g]&&Ub(e,f[g]);e=!0}e&&(Ad(this,b[0],this.Ba.ga),t(this,c),md(this,this.za.ga),80386<=this.na&&(this.Tb.restore(b[7]),this.Ub.restore(b[8])),d=!0);b=a[2];this.O=null!=b[0]&&Ye(this,b[0])||this.Db;this.P=null!=b[1]&&Ye(this,b[1])||this.za;
this.V=b[2];this.Ja=b[3];this.ya=b[4];this.Y=b[5];this.Z=b[6];b=a[3];this.Xb=b[1];Zc(this,b[2]);return d};function Ye(a,b){switch(b){case "CS":return a.Ba;case "DS":return a.Db;case "SS":return a.za;case "ES":return a.hb;case "NULL":return a.jf;default:return[0,b,0,0,""]}}function Ze(a,b){null!=Ad(a,v(a),b)&&(a.V|=a.Ad)}function wd(a,b){-1!==a.Db.load(b)&&(a.V|=a.Ad)}
function md(a,b,c){var d=u(a);-1!==a.za.load(b)&&(t(a,d),a.za.Zc?(a.Gg=a.za.Ca+a.za.Ea|0,a.pd=a.za.Ca+a.za.ab|0):(a.Gg=a.za.Ca+a.za.ab|0,a.pd=a.za.Ca),c||(a.V|=4))}function xd(a,b){-1!==a.hb.load(b)&&(a.V|=a.Ad)}function v(a){return a.Ma-a.Ba.Ca|0}function $e(a,b){a.Ma=a.Ba.Ca+(b&a.B)|0}function af(a,b){a.Ma=b|0;a.hf=a.Ba.Ca+a.Ba.ab|0;a.ta=a.Ba.ac;Je(a)}function Ad(a,b,c,d){var e=a.Ba;e.Nf=b;e.R=d;b=e.load(c);return-1!==b?(af(a,b+(a.Ba.Nf&a.Ba.B)),a.Ba.We):null}
function bf(a,b){a.Ma=a.Ma+b|0;var c=a.hf-a.Ma|0;0>c&&0<=(a.hf^a.Ma)&&(8088>=a.na||a.Ba.ab==a.Ba.Ea?$e(a,a.Ma-a.Ba.Ca):-1>c&&p.call(a,13,0))}function cf(a){a.Ma=a.De}function u(a){return a.ib&~a.za.Ea|a.ka-a.za.Ca}function t(a,b){a.ib=b;a.ka=a.za.Ca+(b&a.za.Ea)|0}function df(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&ef(a),g&2&&ff(a),g&4&&gf(a),g&8&&hf(a),g&16&&jf(a),g&32&&kf(a))}f?(a.Rc=d,a.Qc=b):(a.Rc=b,a.Qc=d);a.sd=c;a.Sc=d;a.resultType=e}
function lf(a,b,c,d,e){a.resultType=c|26;a.Sc=b;d?mf(a):nf(a);e?of(a):pf(a);return b}function qf(a,b,c,d){c&d?mf(a):nf(a);(b^c)&d?of(a):pf(a)}function rf(a){return ef(a)?1:0}function ef(a){a.resultType&1&&(a.ea&=-2,(a.Rc^(a.Rc^a.sd)&(a.sd^a.Qc))&a.resultType&-2147450752&&(a.ea|=1),a.resultType&=-2);return a.ea&1}function ff(a){a.resultType&2&&(a.ea&=-5,38505>>((a.Sc^a.Sc>>4)&15)&1&&(a.ea|=4),a.resultType&=-3);return a.ea&4}
function gf(a){a.resultType&4&&(a.ea&=-17,(a.Qc^a.Rc^a.sd)&16&&(a.ea|=16),a.resultType&=-5);return a.ea&16}function hf(a){a.resultType&8&&(a.ea&=-65,a.Sc&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.ea|=64),a.resultType&=-9);return a.ea&64}function jf(a){a.resultType&16&&(a.ea&=-129,a.Sc&a.resultType&-2147450752&&(a.ea|=128),a.resultType&=-17);return a.ea&128}
function kf(a){a.resultType&32&&(a.ea&=-2049,(a.Rc^a.Qc)&(a.sd^a.Qc)&a.resultType&-2147450752&&(a.ea|=2048),a.resultType&=-33);return a.ea&2048}function nf(a){a.resultType&=-2;a.ea&=-2}function sf(a){a.resultType&=-5;a.ea&=-17}function tf(a){a.resultType&=-9;a.ea&=-65}function pf(a){a.resultType&=-33;a.ea&=-2049}function mf(a){a.resultType&=-2;a.ea|=1}function uf(a){a.resultType&=-5;a.ea|=16}function vf(a){a.resultType&=-9;a.ea|=64}function of(a){a.resultType&=-33;a.ea|=2048}
function bf(a,b){a.Ma=a.Ma+b|0;var c=a.hf-a.Ma|0;0>c&&0<=(a.hf^a.Ma)&&(8088>=a.na||a.Ba.ab==a.Ba.Ea?$e(a,a.Ma-a.Ba.Ca):-1>c&&p.call(a,13,0))}function cf(a){a.Ma=a.De}function u(a){return a.ib&~a.za.Ea|a.ka-a.za.Ca}function t(a,b){a.ib=b;a.ka=a.za.Ca+(b&a.za.Ea)|0}function df(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&ef(a),g&2&&ff(a),g&4&&gf(a),g&8&&hf(a),g&16&&jf(a),g&32&&kf(a))}f?(a.Sc=d,a.Rc=b):(a.Sc=b,a.Rc=d);a.sd=c;a.Tc=d;a.resultType=e}
function lf(a,b,c,d,e){a.resultType=c|26;a.Tc=b;d?mf(a):nf(a);e?of(a):pf(a);return b}function qf(a,b,c,d){c&d?mf(a):nf(a);(b^c)&d?of(a):pf(a)}function rf(a){return ef(a)?1:0}function ef(a){a.resultType&1&&(a.ea&=-2,(a.Sc^(a.Sc^a.sd)&(a.sd^a.Rc))&a.resultType&-2147450752&&(a.ea|=1),a.resultType&=-2);return a.ea&1}function ff(a){a.resultType&2&&(a.ea&=-5,38505>>((a.Tc^a.Tc>>4)&15)&1&&(a.ea|=4),a.resultType&=-3);return a.ea&4}
function gf(a){a.resultType&4&&(a.ea&=-17,(a.Rc^a.Sc^a.sd)&16&&(a.ea|=16),a.resultType&=-5);return a.ea&16}function hf(a){a.resultType&8&&(a.ea&=-65,a.Tc&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.ea|=64),a.resultType&=-9);return a.ea&64}function jf(a){a.resultType&16&&(a.ea&=-129,a.Tc&a.resultType&-2147450752&&(a.ea|=128),a.resultType&=-17);return a.ea&128}
function kf(a){a.resultType&32&&(a.ea&=-2049,(a.Sc^a.Rc)&(a.sd^a.Rc)&a.resultType&-2147450752&&(a.ea|=2048),a.resultType&=-33);return a.ea&2048}function nf(a){a.resultType&=-2;a.ea&=-2}function sf(a){a.resultType&=-5;a.ea&=-17}function tf(a){a.resultType&=-9;a.ea&=-65}function pf(a){a.resultType&=-33;a.ea&=-2049}function mf(a){a.resultType&=-2;a.ea|=1}function uf(a){a.resultType&=-5;a.ea|=16}function vf(a){a.resultType&=-9;a.ea|=64}function of(a){a.resultType&=-33;a.ea|=2048}
function yd(a){return a.ea&-2262|ef(a)|ff(a)|gf(a)|hf(a)|jf(a)|kf(a)}function wf(a,b){b=b|a.gb&1|65520;a.gb=a.gb&-65536|b&65535;a.gb&1&&sd(a,!0)}function zd(a,b,c){a.gb&1||(b&=~a.Pf);void 0===c&&(c=a.ta);c?b=b&-12289|a.ea&12288:a.Pa=(b&12288)>>12;c>a.Pa&&(b=b&-513|a.ea&512);a.resultType=128;a.ea=a.ea&~(a.$b|2261)|b&(a.$b|2261)|a.Sf;a.ea&256&&(a.ya|=2,a.V|=4)}
function xf(a,b,c,d){var e=0;if(a.gb&1&&(a.ta>a.Pa||a.ea&131072)&&a.Ya.oi)for(var f=a.Ya.oi+(b>>>3),e=(1<<c)-1<<(b&7);e&&f<=a.Ya.yk&&!(a.Xa(f)&e);)e>>>=8,f++;return e?(n(a,256)&&nb(a,"checkIOPM("+ga(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),p.call(a,13,0),!1):!0}
h.Vb=function(a,b,c){var d=!1;switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case "ESP":case "EBP":case "ESI":case "EDI":case "EIP":case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "IP":case "PC":case "CS":case "DS":case "SS":case "ES":case "FS":case "GS":case "CR0":case "CR2":case "CR3":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "V":this.xa[b]=c;this.Kg++;d=!0;break;default:d=this.parent.Vb.call(this,a,b,c)}return d};
@ -190,9 +190,9 @@ function $i(a,b){var c=a^b;lf(this,c,128);this.A-=-1===this.Z?-1===this.Y?this.C
function fj(){var a=this.G&255;this.A-=(-1===this.Y?this.C.Rh:this.C.Qh)+(a<<this.C.Sh);return a}function gj(){var a=this.ca();this.A-=(-1===this.Y?this.C.Rh:this.C.Qh)+(a<<this.C.Sh);return a}function hj(){return null}function ij(){return this.xb}function Jf(a,b){this.lb=a;void 0===b&&(b=11);Ih.call(this,a,null,b)}
function p(a,b,c,d){var e=null;this.ra.Sd?80186<=this.na&&(0>this.lb?(Je(this),-1!=this.Ec&&(Ze(this,this.Ec),this.Ec=-1),$e(this,this.De-this.Ba.Ca),-1!==this.X&&(t(this,this.ib&~this.za.Ea|this.X-this.za.Ca),this.X=-1),e=!0):8!=this.lb?(b=0,a=8,e=!0):(a=-1,b=0,qe(this),d=!1)):(Je(this),$e(this,this.De-this.Ba.Ca));var f=a,g=b,k=32,q=yf(this,this.Ma);204!=q||this.ee||(d=!1);this.ea&131072&&(6==f&&99==q||13==f&&205==q)&&(d=!1);!1===d&&(k|=1);983040<=this.Ma&&1048575>=this.Ma&&(d=!1);n(this,k|-2147483648)&&
(d=!0);if(n(this,k)||d){var r=this.ra.Mb,f="Fault "+fa(f)+(null!=g?" ("+ga(g)+")":"")+" on opcode "+fa(q);d&&r&&(f+=" (blocked by PCjs Debugger)");this.ma?(nb(this,f,d||k,!0),d&&(d=r,this.ma.Zb())):(this.Va(f),this.Zb())}d&&(e=!1);if(e)throw this.lb=a,Ih.call(this,a,b,c),this.De=this.Ma,this.V=1==a?this.V|8192:this.V|4096,a;}function se(a,b,c){this.oe=a;a=0;b&&(a|=1);c&&(a|=2);3==this.ta&&(a|=4);p.call(this,14,a)}function fe(){this.Qb[this.ca()].call(this)}
function ie(){vd(this,u(this)&this.B);this.A-=this.C.Oc}function Id(){this.X=this.ka;var a=u(this)&this.B;vd(this,this.F&this.B);vd(this,this.G&this.B);vd(this,this.H&this.B);vd(this,this.D&this.B);vd(this,a);vd(this,this.K&this.B);vd(this,this.J&this.B);vd(this,this.I&this.B);this.A-=this.C.Ij;this.X=-1}
function ie(){vd(this,u(this)&this.B);this.A-=this.C.Pc}function Id(){this.X=this.ka;var a=u(this)&this.B;vd(this,this.F&this.B);vd(this,this.G&this.B);vd(this,this.H&this.B);vd(this,this.D&this.B);vd(this,a);vd(this,this.K&this.B);vd(this,this.J&this.B);vd(this,this.I&this.B);this.A-=this.C.Ij;this.X=-1}
function Jd(){this.X=this.ka;this.I=this.I&~this.B|ld(this);this.J=this.J&~this.B|ld(this);this.K=this.K&~this.B|ld(this);t(this,u(this)+this.ia);this.D=this.D&~this.B|ld(this);this.H=this.H&~this.B|ld(this);this.G=this.G&~this.B|ld(this);this.F=this.F&~this.B|ld(this);this.A-=this.C.Gj;this.X=-1}function Kd(){this.da[this.ca()].call(this,jh)}function je(){!(this.gb&1)||this.ea&131072?p.call(this,6):this.qa[this.ca()].call(this,ih)}
function ke(){this.V|=20;this.O=this.P=this.Tb;this.A-=this.C.ld}function le(){this.V|=20;this.O=this.P=this.Ub;this.A-=this.C.ld}function me(){this.V|=1024;this.Ja&1024||(this.ia^=6,this.B^=-65536,Ie(this));this.A-=this.C.ld}function ne(){this.V|=2048;this.Ja&2048||(this.cd^=6,this.Ea^=-65536,xe(this));this.A-=this.C.ld}function Ld(){vd(this,this.Qa());this.A-=this.C.Oc}function Md(){this.da[this.ca()].call(this,Dh)}function Nd(){vd(this,this.L());this.A-=this.C.Oc}
function ke(){this.V|=20;this.O=this.P=this.Tb;this.A-=this.C.ld}function le(){this.V|=20;this.O=this.P=this.Ub;this.A-=this.C.ld}function me(){this.V|=1024;this.Ja&1024||(this.ia^=6,this.B^=-65536,Ie(this));this.A-=this.C.ld}function ne(){this.V|=2048;this.Ja&2048||(this.cd^=6,this.Ea^=-65536,xe(this));this.A-=this.C.ld}function Ld(){vd(this,this.Qa());this.A-=this.C.Pc}function Md(){this.da[this.ca()].call(this,Dh)}function Nd(){vd(this,this.L());this.A-=this.C.Pc}
function Rd(){this.da[this.ca()].call(this,Bh)}function Sd(){var a=1,b=0,c=this.Ea,d=5;this.Ja&192&&(a=this.G&c,b=1,this.Ja&256&&(d=4));if(a--){var e=this.H&65535;xf(this,e,1,!0)&&(e=jc(this.ja,e,1,this.Ma-b-1),this.xc(this.hb.Ac(this.I&c,1),e),this.V&4096||(this.I=this.I&~c|this.I+(this.ea&1024?-1:1)&c,this.G=this.G&~c|this.G-b&c,this.A-=d,a&&(cf(this),this.V|=256)))}}
function Td(){var a=1,b=0,c=this.Ea,d=5;this.Ja&192&&(a=this.G&c,b=1,this.Ja&256&&(d=4));if(a--){var e=this.H&65535;xf(this,e,this.ia,!0)&&(e=jc(this.ja,e,this.ia,this.Ma-b-1),this.pc(this.hb.Ac(this.I&c,this.ia),e),this.V&4096||(this.I=this.I&~c|this.I+(this.ea&1024?-this.ia:this.ia)&c,this.G=this.G&~c|this.G-b&c,this.A-=d,a&&(cf(this),this.V|=256)))}}
function Yd(){var a=1,b=0,c=this.Ea,d=5;this.Ja&192&&(a=this.G&c,b=1,this.Ja&256&&(d=4));if(a--){var e=this.H&65535;if(xf(this,e,1,!1)){var f=this.Xa(this.Db.Fc(this.J&c,1));this.V&4096||(nc(this.ja,e,1,f,this.Ma-b-1),this.J=this.J&~c|this.J+(this.ea&1024?-1:1)&c,this.G=this.G&~c|this.G-b&c,this.A-=d,a&&(cf(this),this.V|=256))}}}
@ -212,15 +212,15 @@ Si)},function(){this.da[this.ca()].call(this,Ti)},function(){this.F=this.F&-256|
$i)},function(){this.qa[this.ca()].call(this,aj)},function(){this.Oa[this.ca()].call(this,$i)},function(){this.da[this.ca()].call(this,aj)},function(){this.F=this.F&-256|$i.call(this,this.F&255,this.ca());this.A--},function(){this.F=this.F&~this.B|aj.call(this,this.F&this.B,this.Qa());this.A--},function(){this.V|=20;this.O=this.P=this.za;this.A-=this.C.ld},function(){var a,b,c=this.F&255,d=this.F>>8&255;9<(c&15)||gf(this)?(c+=6,80286<=this.na&&255<c&&d++,d++,a=b=1):a=b=0;this.F=this.F&-65536|(d<<
8|c)&65295;a?mf(this):nf(this);b?uf(this):sf(this);this.A-=this.C.Be},function(){this.Ra[this.ca()].call(this,vh)},function(){this.qa[this.ca()].call(this,wh)},function(){this.Oa[this.ca()].call(this,vh)},function(){this.da[this.ca()].call(this,wh)},function(){vh.call(this,this.F&255,this.ca());this.A--},function(){wh.call(this,this.F&this.B,this.Qa());this.A--},function(){this.V|=20;this.O=this.P=this.Db;this.A-=this.C.ld},function(){var a,b,c=this.F&255,d=this.F>>8&255;9<(c&15)||gf(this)?(c=c-6&
15,d=d-1&255,a=b=1):a=b=0;this.F=this.F&-65536|d<<8|c;a?mf(this):nf(this);b?uf(this):sf(this);this.A-=this.C.Be},function(){this.F=Hh.call(this,this.F)},function(){this.G=Hh.call(this,this.G)},function(){this.H=Hh.call(this,this.H)},function(){this.D=Hh.call(this,this.D)},function(){t(this,Hh.call(this,u(this)))},function(){this.K=Hh.call(this,this.K)},function(){this.J=Hh.call(this,this.J)},function(){this.I=Hh.call(this,this.I)},function(){this.F=xh.call(this,this.F)},function(){this.G=xh.call(this,
this.G)},function(){this.H=xh.call(this,this.H)},function(){this.D=xh.call(this,this.D)},function(){t(this,xh.call(this,u(this)))},function(){this.K=xh.call(this,this.K)},function(){this.J=xh.call(this,this.J)},function(){this.I=xh.call(this,this.I)},function(){vd(this,this.F&this.B);this.A-=this.C.Oc},function(){vd(this,this.G&this.B);this.A-=this.C.Oc},function(){vd(this,this.H&this.B);this.A-=this.C.Oc},function(){vd(this,this.D&this.B);this.A-=this.C.Oc},function(){vd(this,u(this)-2&65535);this.A-=
this.C.Oc},function(){vd(this,this.K&this.B);this.A-=this.C.Oc},function(){vd(this,this.J&this.B);this.A-=this.C.Oc},function(){vd(this,this.I&this.B);this.A-=this.C.Oc},function(){this.F=this.F&~this.B|ld(this);this.A-=this.C.vc},function(){this.G=this.G&~this.B|ld(this);this.A-=this.C.vc},function(){this.H=this.H&~this.B|ld(this);this.A-=this.C.vc},function(){this.D=this.D&~this.B|ld(this);this.A-=this.C.vc},function(){t(this,u(this)&~this.B|ld(this));this.A-=this.C.vc},function(){this.K=this.K&
this.G)},function(){this.H=xh.call(this,this.H)},function(){this.D=xh.call(this,this.D)},function(){t(this,xh.call(this,u(this)))},function(){this.K=xh.call(this,this.K)},function(){this.J=xh.call(this,this.J)},function(){this.I=xh.call(this,this.I)},function(){vd(this,this.F&this.B);this.A-=this.C.Pc},function(){vd(this,this.G&this.B);this.A-=this.C.Pc},function(){vd(this,this.H&this.B);this.A-=this.C.Pc},function(){vd(this,this.D&this.B);this.A-=this.C.Pc},function(){vd(this,u(this)-2&65535);this.A-=
this.C.Pc},function(){vd(this,this.K&this.B);this.A-=this.C.Pc},function(){vd(this,this.J&this.B);this.A-=this.C.Pc},function(){vd(this,this.I&this.B);this.A-=this.C.Pc},function(){this.F=this.F&~this.B|ld(this);this.A-=this.C.vc},function(){this.G=this.G&~this.B|ld(this);this.A-=this.C.vc},function(){this.H=this.H&~this.B|ld(this);this.A-=this.C.vc},function(){this.D=this.D&~this.B|ld(this);this.A-=this.C.vc},function(){t(this,u(this)&~this.B|ld(this));this.A-=this.C.vc},function(){this.K=this.K&
~this.B|ld(this);this.A-=this.C.vc},function(){this.J=this.J&~this.B|ld(this);this.A-=this.C.vc},function(){this.I=this.I&~this.B|ld(this);this.A-=this.C.vc},jj,kj,lj,mj,nj,oj,pj,qj,rj,sj,tj,uj,vj,wj,xj,yj,jj,kj,lj,mj,nj,oj,pj,qj,rj,sj,tj,uj,vj,wj,xj,yj,zj,function(){this.Na[this.ca()].call(this,Kj,this.Qa);this.A-=-1===this.Z?1:this.C.yg},zj,function(){this.Na[this.ca()].call(this,Kj,this.L);this.A-=-1===this.Z?1:this.C.yg},function(){this.Ra[this.ca()].call(this,Ui)},function(){this.qa[this.ca()].call(this,
Vi)},function(){this.Oa[this.kc=this.ca()].call(this,Yi)},function(){this.da[this.kc=this.ca()].call(this,Zi)},function(){this.V|=1;this.Ra[this.ca()].call(this,Sh)},function(){this.V|=1;this.qa[this.ca()].call(this,Sh)},function(){this.Oa[this.ca()].call(this,Sh)},function(){this.da[this.ca()].call(this,Sh)},function(){var a=this.ca();switch((a&56)>>3){case 0:this.xb=this.hb.ga;break;case 1:this.xb=this.Ba.ga;break;case 2:this.xb=this.za.ga;break;case 3:this.xb=this.Db.ga;break;case 4:if(80386<=
this.na){this.xb=this.Tb.ga;break}p.call(this,6);return;case 5:if(80386<=this.na){this.xb=this.Ub.ga;break}default:p.call(this,6);return}this.V|=1;this.qa[a].call(this,Uh)},function(){this.V|=1;this.O=this.P=this.jf;this.da[this.ca()].call(this,Mh)},function(){var a,b;b=this.ca();var c=(b&56)>>3;switch(c){case 0:a=this.F;break;case 2:a=this.H;break;case 3:a=this.D;break;default:if(80286==this.na||80386==this.na&&4!=c&&5!=c){p.call(this,6);return}switch(c){case 1:a=this.G;break;case 4:a=u(this);break;
case 5:a=this.K;break;case 6:a=this.J;break;case 7:a=this.I}}this.da[b].call(this,Sh);switch(c){case 0:b=this.F;this.F=a;xd(this,b);break;case 1:b=this.G;this.G=a;Ze(this,b);break;case 2:b=this.H;this.H=a;md(this,b);break;case 3:b=this.D;this.D=a;wd(this,b);break;case 4:b=u(this);t(this,a);80386<=this.na?this.Tb.load(b):xd(this,b);break;case 5:b=this.K;this.K=a;80386<=this.na?this.Ub.load(b):Ze(this,b);break;case 6:b=this.J;this.J=a;md(this,b);break;case 7:b=this.I,this.I=a,wd(this,b)}},function(){this.V|=
1;this.X=this.ka;this.xb=ld(this);this.Na[this.ca()].call(this,Lj,ij);this.X=-1},function(){this.A-=3},function(){var a=this.F;this.F=this.F&~this.B|this.G&this.B;this.G=this.G&~this.B|a&this.B;this.A-=3},function(){var a=this.F;this.F=this.F&~this.B|this.H&this.B;this.H=this.H&~this.B|a&this.B;this.A-=3},function(){var a=this.F;this.F=this.F&~this.B|this.D&this.B;this.D=this.D&~this.B|a&this.B;this.A-=3},function(){var a=this.F,b=u(this);this.F=this.F&~this.B|b&this.B;t(this,b&~this.B|a&this.B);
this.A-=3},function(){var a=this.F;this.F=this.F&~this.B|this.K&this.B;this.K=this.K&~this.B|a&this.B;this.A-=3},function(){var a=this.F;this.F=this.F&~this.B|this.J&this.B;this.J=this.J&~this.B|a&this.B;this.A-=3},function(){var a=this.F;this.F=this.F&~this.B|this.I&this.B;this.I=this.I&~this.B|a&this.B;this.A-=3},function(){this.F=2==this.ia?this.F&-65536|this.F<<24>>24&65535:this.F<<16>>16;this.A-=2},function(){this.H=2==this.ia?this.H&-65536|(this.F&32768?65535:0):this.F&-2147483648?-1:0;this.A-=
this.C.Ui},function(){uh.call(this,this.Qa(),Df(this));this.A-=this.C.Xi},function(){this.A-=3},function(){var a=yd(this);a&131072&&3>this.Pa?p.call(this,13,0):(vd(this,a&-196609),this.A-=this.C.Oc)},function(){if(this.ea&131072&&3>this.Pa)p.call(this,13,0);else{var a=ld(this),a=a&65535|this.ea&-65536;zd(this,a);this.A-=this.C.vc}},function(){var a=this.F>>8&255;a&1?mf(this):nf(this);a&4?(this.resultType&=-3,this.ea|=4):(this.resultType&=-3,this.ea&=-5);a&16?uf(this):sf(this);a&64?vf(this):tf(this);
this.C.Ui},function(){uh.call(this,this.Qa(),Df(this));this.A-=this.C.Xi},function(){this.A-=3},function(){var a=yd(this);a&131072&&3>this.Pa?p.call(this,13,0):(vd(this,a&-196609),this.A-=this.C.Pc)},function(){if(this.ea&131072&&3>this.Pa)p.call(this,13,0);else{var a=ld(this),a=a&65535|this.ea&-65536;zd(this,a);this.A-=this.C.vc}},function(){var a=this.F>>8&255;a&1?mf(this):nf(this);a&4?(this.resultType&=-3,this.ea|=4):(this.resultType&=-3,this.ea&=-5);a&16?uf(this):sf(this);a&64?vf(this):tf(this);
a&128?(this.resultType&=-17,this.ea|=128):(this.resultType&=-17,this.ea&=-129);this.A-=this.C.fc},function(){this.F=this.F&-65281|(yd(this)&213)<<8;this.A-=this.C.fc},function(){var a=this.F&-256,b;b=S(this);b=this.Xa(this.O.Fc(b,1));this.F=a|b;this.A-=this.C.Gh},function(){this.F=this.F&~this.B|ud(this,this.O,S(this));this.A-=this.C.Gh},function(){var a=S(this),b=this.F;this.xc(this.O.Ac(a,1),b);this.A-=this.C.Hh},function(){var a=S(this),b=this.F;this.pc(this.O.Ac(a,this.ia),b);this.A-=this.C.Hh},
function(){var a=1,b=0,c=this.Ea,d=this.C.Ih;this.Ja&192&&(a=this.G&c,b=1,d=this.C.Kh,this.Ja&256||(this.A-=this.C.Jh));if(a--){var e=this.Xa(this.O.Fc(this.J&c,1));this.xc(this.hb.Ac(this.I&c,1),e);this.V&4096||(e=this.ea&1024?-1:1,this.J=this.J&~c|this.J+e&c,this.I=this.I&~c|this.I+e&c,this.A-=d,this.G=this.G&~c|this.G-b&c,a&&(cf(this),this.V|=256))}},function(){var a=1,b=0,c=this.Ea,d=this.C.Ih;this.Ja&192&&(a=this.G&c,b=1,d=this.C.Kh,this.Ja&256||(this.A-=this.C.Jh));if(a--){var e=ud(this,this.O,
this.J&c);this.pc(this.hb.Ac(this.I&c,this.ia),e);this.V&4096||(e=this.ea&1024?-this.ia:this.ia,this.J=this.J&~c|this.J+e&c,this.I=this.I&~c|this.I+e&c,this.A-=d,this.G=this.G&~c|this.G-b&c,a&&(cf(this),this.V|=256))}},function(){var a=1,b=0,c=this.Ea,d=this.C.th;this.Ja&192&&(a=this.G&c,b=1,d=this.C.vh,this.Ja&256||(this.A-=this.C.uh));if(a--){var e=zf(this,this.O,this.J&c),f=Bf(this,this.hb,this.I&c);this.V&4096||(vh.call(this,e,f),e=this.ea&1024?-1:1,this.J=this.J&~c|this.J+e&c,this.I=this.I&~c|
@ -253,7 +253,7 @@ a,this.F),80563==this.jc&&68657152==this.F&&129==a&&(this.Aa=0);this.Aa?(mf(this
a;b=65536*(this.H&65535)+(this.F&65535);var c=b/a;if(65536<=c)return dj.call(this),a;this.la=c&65535;this.Aa=b%a&65535}else{if(!zh.call(this,this.F,this.H,a))return dj.call(this),a;this.la|=0;this.Aa|=0}this.Ua=!0;this.A-=-1===this.Y?this.C.cj:this.C.bj;this.V|=2;return a},function(a,b){if(2==this.ia){if(!a)return dj.call(this),a;var c=a<<16>>16,d=(b=this.H<<16|this.F&65535)/c|0;if(d!=d<<16>>16||8086==this.na&&-32768==d)return dj.call(this),a;this.la=d&65535;this.Aa=b%c&65535}else{var c=this.F,d=
this.H,e=a,f=0,g=0;0>e&&(e=-e|0,f=1-f);0>d&&(c=-c|0,d=~d+(c?0:1)|0,g=1,f=1-f);!zh.call(this,c,d,e)||this.la>2147483647+f||this.Aa>2147483647+g?c=!1:(f&&(this.la=-this.la),g&&(this.Aa=-this.Aa),c=!0);if(!c)return dj.call(this),a;this.la|=0;this.Aa|=0}this.Ua=!0;this.A-=-1===this.Y?this.C.gj:this.C.fj;this.V|=2;return a}],Ed=[function(a){var b=a+1|0;df(this,a,1,b,190);this.A-=-1===this.Y?this.C.Hf:this.C.Gf;return b&255},function(a){var b=a-1|0;df(this,a,1,b,190,!0);this.A-=-1===this.Y?this.C.Hf:this.C.Gf;
return b&255},cj,cj,cj,cj,cj,cj],Fd=[function(a){var b=a+1|0;df(this,a,1,b,this.Ha|62);this.A-=-1===this.Y?this.C.Hf:this.C.Gf;return b&this.B},function(a){var b=a-1|0;df(this,a,1,b,this.Ha|62,!0);this.A-=-1===this.Y?this.C.Hf:this.C.Gf;return b&this.B},function(a){vd(this,v(this));$e(this,a);this.A-=-1===this.Y?this.C.Zi:this.C.Yi;this.V|=2;return a},function(a){if(-1===this.Y)return cj.call(this,a);this.X=this.ka;uh.call(this,a,this.ua(this.Y+this.ia));this.A-=this.C.Wi;this.V|=2;this.X=-1;return a},
function(a){$e(this,a);this.A-=-1===this.Y?this.C.tj:this.C.sj;this.V|=2;return a},function(a){if(-1===this.Y)return cj.call(this,a);Ad(this,a,this.ua(this.Y+this.ia));this.A-=this.C.qj;this.V|=2;return a},function(a){var b=a;this.V&512&&(a=a-2&65535,80286>this.na&&(b=a));vd(this,b);this.A-=-1===this.Y?this.C.Oc:this.C.Jj;this.V|=2;return a},bj];function oe(){this.da[this.ca()].call(this,Xi);this.A-=-1===this.Y?6:13}function pe(){this.qa[this.ca()].call(this,Wi);this.A-=-1===this.Y?12:19}var ge=Array(256);
function(a){$e(this,a);this.A-=-1===this.Y?this.C.tj:this.C.sj;this.V|=2;return a},function(a){if(-1===this.Y)return cj.call(this,a);Ad(this,a,this.ua(this.Y+this.ia));this.A-=this.C.qj;this.V|=2;return a},function(a){var b=a;this.V&512&&(a=a-2&65535,80286>this.na&&(b=a));vd(this,b);this.A-=-1===this.Y?this.C.Pc:this.C.Jj;this.V|=2;return a},bj];function oe(){this.da[this.ca()].call(this,Xi);this.A-=-1===this.Y?6:13}function pe(){this.qa[this.ca()].call(this,Wi);this.A-=-1===this.Y?12:19}var ge=Array(256);
ge[0]=function(){var a=this.ca();16>(a&56)&&(this.V|=1);this.Na[a].call(this,this.ag,hj)};ge[1]=function(){var a=this.ca();a&16||(this.V|=1);this.Na[a].call(this,Qj,hj)};ge[2]=function(){!(this.gb&1)||this.ea&131072?p.call(this,6):this.da[this.ca()].call(this,Jh)};ge[3]=function(){!(this.gb&1)||this.ea&131072?p.call(this,6):this.da[this.ca()].call(this,Qh)};
ge[5]=function(){this.ta?p.call(this,13,0,0,!0):(wf(this,this.ua(2054)),this.I=this.ua(2086),this.J=this.ua(2088),this.K=this.ua(2090),this.D=this.ua(2094),this.H=this.ua(2096),this.G=this.ua(2098),this.F=this.ua(2100),kd(this.hb,2102,this.ua(2084)),kd(this.Ba,2108,this.ua(2082)),kd(this.za,2114,this.ua(2080)),kd(this.Db,2120,this.ua(2078)),zd(this,this.ua(2072)),$e(this,this.ua(2074)),t(this,this.ua(2092)),this.gd=this.ua(2126)|this.Xa(2128)<<16,this.de=this.gd+this.ua(2130),kd(this.Jc,2132,this.ua(2076)),
this.hd=this.ua(2138)|this.Xa(2140)<<16,this.ee=this.hd+this.ua(2142),kd(this.Ya,2144,this.ua(2070)),this.A-=195)};ge[6]=function(){this.ta?p.call(this,13,0):(this.gb&=-9,this.A-=2)};ge[11]=Hd;ge[166]=Hd;ge[255]=Hd;var w=[];w[5]=Hd;w[7]=function(){this.ta?p.call(this,13,0,0,!0):(he.call(this),this.A-=122)};
@ -799,19 +799,19 @@ function(){return this.F},function(){return this.G},function(){return this.H},fu
function Sj(a){Wa.call(this,"ChipSet",a,Sj,32768);this.na=(this.na=a.model)&&Tj[this.na]||Uj;this.Z=0;var b=a[Vj];if(b)this.Z=Wj(b,Xj|Yj.uk);else{this.ta=[360,360];(b=a.floppies)&&b.length&&(this.ta=b);if(b=this.ta.length)this.Z|=Zj.Mg,b--,this.Z|=(b&3)<<Zj.qf;if(b=a.monitor||(this.na<Rf?"mono":"ega"),void 0!==ak[b])this.Z|=ak[b]<<Yj.qf}this.Aa=Wj(a[bk]||"11110000",0);this.jc=this.na==Uj?16:64;this.qb=this.Oa=1;this.na>=Rf&&(this.qb=this.Oa=2);this.va=a.scaleTimers||!1;this.kc=a.rtcDate;this.Xb=!1;
a.sound&&(this.Fb=this.Pa=null,window&&(this.Fb=window.AudioContext||window.webkitAudioContext),this.Fb&&(this.Pa=new this.Fb));this.reset(!0);sb(this)}eb(Sj);var Uj=5150,Rf=5170,Tj={5150:Uj,5160:5160,5170:Rf,deskpro386:5180},Vj="sw1",bk="sw2",ak={none:0,tv:1,color:2,mono:3,ega:0,vga:0},Zj={Mg:1,ONE:0,Nn:64,Ln:128,qn:192,pf:192,qf:6},Xj=12,Yj={Mn:16,hn:32,uk:48,pf:48,qf:4};h=Sj.prototype;
h.Vb=function(a,b,c){switch(b){case Vj:return this.xa[b]=c,ck(this,b,this.Z,{0:this.na==Uj?"Bootable Floppy Drive":"Loop on POST",1:this.na<Uj?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case bk:if(this.na==Uj)return this.xa[b]=c,ck(this,b,this.Aa,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.xa[b]=c,!0}return!1};
h.Hc=function(a,b,c,d){this.ja=b;this.M=c;this.ma=d;this.ha=a;if(this.Wb=Eb(a,"FPU"))this.Z|=2;this.O=Eb(a,"Keyboard");this.xb=c.ba.Kd/1193181;ic(b,this,dk);mc(b,this,ek);this.na<Rf?(ic(b,this,fk),mc(b,this,gk)):(ic(b,this,hk),mc(b,this,ik));if(d){var e=this;jk(d,1024,function(){for(var a=0;a<e.qc.length;a++){for(var b=e.qc[a],c="PIC"+a+":",d=0;d<b.Tc.length;d++)c+=" IC"+(d+1)+"="+fa(b.Tc[d]);c+=" IMR="+fa(b.yd)+" IRR="+fa(b.lc)+" ISR="+fa(b.Uc)+" DELAY="+b.ef;e.ma.U(c)}});jk(d,2048,function(a){a=
h.Hc=function(a,b,c,d){this.ja=b;this.M=c;this.ma=d;this.ha=a;if(this.Wb=Eb(a,"FPU"))this.Z|=2;this.O=Eb(a,"Keyboard");this.xb=c.ba.Kd/1193181;ic(b,this,dk);mc(b,this,ek);this.na<Rf?(ic(b,this,fk),mc(b,this,gk)):(ic(b,this,hk),mc(b,this,ik));if(d){var e=this;jk(d,1024,function(){for(var a=0;a<e.qc.length;a++){for(var b=e.qc[a],c="PIC"+a+":",d=0;d<b.Uc.length;d++)c+=" IC"+(d+1)+"="+fa(b.Uc[d]);c+=" IMR="+fa(b.yd)+" IRR="+fa(b.lc)+" ISR="+fa(b.Mc)+" DELAY="+b.ef;e.ma.U(c)}});jk(d,2048,function(a){a=
(a=a[0])?+a:null;for(var b=0;b<e.P.length;b++)if(null==a||b==a){kk(e,b);var c=e.P[b],d="TIMER"+b+":",r=0;if(null!=c.kd)for(var x=0;x<=c.kd;x++)r|=c.Bb[x]<<8*x;d+=" mode="+(c.mode>>1)+" bytes="+c.kd+" count="+ga(r);e.ma.U(d)}});jk(d,4096,function(){for(var a="",b=0;64>b;b++){var c=13>=b?lk(e,b):e.A[b];a&&(a+="\n");a+="CMOS["+fa(b)+"]: "+fa(c)}e.ma.U(a)})}Ke(c,26,this.Ql.bind(this))};h.nc=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};
h.mc=function(a){return a?this.save():!0};
h.reset=function(a){var b;this.da=this.Z;this.ya=this.Aa;mk(this,Vj,this.da);mk(this,bk,this.ya);nk(this);this.R=Array(this.qb);for(b=0;b<this.qb;b++)ok(this,b);this.qc=Array(this.Oa);pk(this,0,32);1<this.Oa&&pk(this,1,160);this.Qb=this.ib=null;this.P=Array(5180==this.na?6:3);for(b=0;b<this.P.length;b++)qk(this,b);this.Na=this.Eb=this.X=this.lb=null;this.Ka=0;if(this.na>=Rf){this.C=16;this.la=0;this.ka=16;this.Ua=0;this.qa=160;512<=rk(this)&&(this.qa|=16);3==sk(this)&&(this.qa|=64);5180==this.na&&
(this.qa|=12);this.bb=3;this.Ga=Array(8);this.Fa=0;a&&(this.A=Array(64));tk(this,this.kc);for(a=21;24>=a;a++)this.A[a]=0;for(a=14;46>a;a++)void 0===this.A[a]&&(this.A[a]=0);this.A[20]=this.da&(Yj.pf|2|Zj.Mg|Zj.pf);this.A[16]=uk(this,0)<<4|uk(this,1);vk(this)}};
function tk(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.U("CMOS date invalid ("+b+"), using "+c)):b&&a.U("CMOS date: "+c);a.A[0]=c.getSeconds();a.A[1]=0;a.A[2]=c.getMinutes();a.A[3]=0;a.A[4]=c.getHours();a.A[5]=0;a.A[6]=c.getDay()+1;a.A[7]=c.getDate();a.A[8]=c.getMonth()+1;c=c.getFullYear();a.A[9]=c%100;c/=100;a.A[50]=c%10|c/10<<4;a.A[10]=38;a.A[11]=2;a.A[12]=0;a.A[13]=128;a.Ra=a.Ha=0;a.$b=a.rb=null}
function lk(a,b){var c=a.A[b];if(10>b){var d=!1;4!=b&&5!=b||a.A[11]&2||(12>c?c=c?c:12:c=(c-=12)?c+128:140,d=!0);a.A[11]&4||(d&&128<c&&(c-=48),c=c%10|c/10<<4)}else 10==b&&(a.A[b]^=128);return c}function wk(a){var b;void 0===b&&(b=a.rb);a.Ha=Wc(a.M,a.va)+b;a.A[11]&64&&$c(a.M,b)}function vk(a){for(var b=0,c=16;46>c;c++)b+=a.A[c];a.A[47]=b&255;a.A[46]=b>>8}
h.save=function(){var a=new We(this);Xe(a,0,[this.Z,this.Aa,this.da,this.ya]);for(var b=[],c=0;c<this.R;c++){for(var d=this.R[c],e=d,f=[],g=0;g<e.zc.length;g++){var k=e.zc[g];f[g]=[k.ye,k.dg,k.Bc,k.Hb,k.Bb,k.mode,k.fg,k.cn,k.dn]}b[c]=[d.jd,d.Tg,d.si,d.Nb,f]}Xe(a,1,[b]);b=[];for(c=0;c<this.qc.length;c++)d=this.qc[c],b[c]=[d.ef,d.Tc,d.Vd,d.yd,d.lc,d.Uc,d.se,d.tf];Xe(a,2,[b]);b=[];for(c=0;c<this.P.length;c++)d=this.P[c],b[c]=[d.Bc,d.Wc,d.Bb,d.te,d.Vg,d.mode,d.Xf,d.Cd,d.kd,d.ud,d.Se,d.ve,d.wd,d.jd,d.Xe];
h.save=function(){var a=new We(this);Xe(a,0,[this.Z,this.Aa,this.da,this.ya]);for(var b=[],c=0;c<this.R;c++){for(var d=this.R[c],e=d,f=[],g=0;g<e.zc.length;g++){var k=e.zc[g];f[g]=[k.ye,k.dg,k.Bc,k.Hb,k.Bb,k.mode,k.fg,k.cn,k.dn]}b[c]=[d.jd,d.Tg,d.si,d.Nb,f]}Xe(a,1,[b]);b=[];for(c=0;c<this.qc.length;c++)d=this.qc[c],b[c]=[d.ef,d.Uc,d.Vd,d.yd,d.lc,d.Mc,d.se,d.tf];Xe(a,2,[b]);b=[];for(c=0;c<this.P.length;c++)d=this.P[c],b[c]=[d.Bc,d.Wc,d.Bb,d.te,d.Vg,d.mode,d.Xf,d.Cd,d.kd,d.ud,d.Se,d.ve,d.wd,d.jd,d.Xe];
Xe(a,3,[this.ib,b,this.Qb]);Xe(a,4,[this.lb,this.X,this.Eb,this.Na,this.Ka]);this.na>=Rf&&(Xe(a,5,[this.C,this.la,this.ka,this.Ua,this.qa,this.bb]),Xe(a,6,[this.Ga[7],this.Ga,this.Fa,this.A,this.Ra,this.Ha]));return a.data()};
h.restore=function(a){var b,c;b=a[0];this.Z=b[0];this.Aa=b[1];this.da=b[2];this.ya=b[3];b=a[1];for(c=0;c<this.qb;c++)ok(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.Oa;c++)pk(this,c,0===c?32:160,b[0][c]);b=a[3];this.ib=b[0];this.Qb=b[2];for(c=0;c<this.P.length;c++)qk(this,c,b[1][c]);b=a[4];this.lb=b[0];this.X=b[1];this.Eb=b[2];this.Na=b[3];this.Ka=b[4];if(b=a[5])this.C=b[0],this.la=b[1],this.ka=b[2],this.Ua=b[3],this.qa=b[4],this.bb=b[5];if(b=a[6])this.Ga=b[1],this.Ga[7]=b[0],this.Fa=b[2],
this.A=b[3],this.Ra=b[4],this.Ha=b[5],tk(this);return!0};var xk=[0,null,null,0,Array(4)];function ok(a,b,c){var d=a.R[b];d||(d={zc:Array(4)});c=c&&5==c.length?c:xk;d.jd=c[0];d.Tg=c[1];d.si=c[2];d.Nb=c[3];d.Xl=b<<2;for(var e=0;e<d.zc.length;e++)yk(d,e,c[4][e]);a.R[b]=d}var zk=[!0,[0,0],[0,0],[0,0],[0,0]];
function yk(a,b,c){var d=a.zc[b];d||(d={dg:[0,0],Bc:[0,0],Hb:[0,0],Bb:[0,0]});c=c&&8==c.length?c:zk;d.ye=c[0];d.dg[0]=c[1][0];d.dg[1]=c[1][1];d.Bc[0]=c[2][0];d.Bc[1]=c[2][1];d.Hb[0]=c[3][0];d.Hb[1]=c[3][1];d.Bb[0]=c[4][0];d.Bb[1]=c[4][1];d.mode=c[5];d.fg=c[6];d.controller=a;d.Li=b;Ak(d,c[8],c[9]);a.zc[b]=d}function Ak(a,b,c,d){"string"==typeof b&&(b=gb(b));b&&(a.done=null,a.cn=b.id,a.dn=c,a.kg=b,a.bh=b[c],a.Ag=d)}var Bk=[0,Array(4)];
function pk(a,b,c,d){var e=a.qc[b];e||(e={Tc:[null,null,null,null]});d=d&&8==d.length?d:Bk;e.port=c;e.io=b<<3;e.ef=d[0];e.Tc[0]=d[1][0];e.Tc[1]=d[1][1];e.Tc[2]=d[1][2];e.Tc[3]=d[1][3];e.Vd=d[2];e.yd=d[3];e.lc=d[4];e.Uc=d[5];e.se=d[6];e.tf=d[7];a.qc[b]=e}var Ck=[[0,0],[0,0],[0,0],[0,0]];
function pk(a,b,c,d){var e=a.qc[b];e||(e={Uc:[null,null,null,null]});d=d&&8==d.length?d:Bk;e.port=c;e.io=b<<3;e.ef=d[0];e.Uc[0]=d[1][0];e.Uc[1]=d[1][1];e.Uc[2]=d[1][2];e.Uc[3]=d[1][3];e.Vd=d[2];e.yd=d[3];e.lc=d[4];e.Mc=d[5];e.se=d[6];e.tf=d[7];a.qc[b]=e}var Ck=[[0,0],[0,0],[0,0],[0,0]];
function qk(a,b,c){var d=a.P[b];d||(d={Bc:[0,0],Wc:[0,0],Bb:[0,0],te:[0,0]});c=c&&13<=c.length?c:Ck;d.Bc[0]=c[0][0];d.Bc[1]=c[0][1];d.Wc[0]=c[1][0];d.Wc[1]=c[1][1];d.Bb[0]=c[2][0];d.Bb[1]=c[2][1];d.te[0]=c[3][0];d.te[1]=c[3][1];d.Vg=c[4];d.mode=c[5];d.Xf=c[6];d.Cd=c[7];d.kd=c[8];d.ud=c[9];d.Se=c[10];d.ve=c[11];d.wd=c[12];d.jd=c[13]||0;d.Xe=c[14]||!1;a.P[b]=d}function rk(a,b){return((((b?a.Z:a.da)&12)>>2)+1)*a.jc+32*((b?a.Aa:a.ya)&15)}
function Dk(a,b){var c=b?a.Z:a.da;return a.na!=Uj||c&Zj.Mg?((c&Zj.pf)>>Zj.qf)+1:0}function uk(a,b){if(b<Dk(a)){if(!a.ta)return 1;if(b<a.ta.length)switch(a.ta[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 sk(a,b){return((b?a.Z:a.da)&Yj.pf)>>Yj.qf}
function ck(a,b,c,d){for(var e="",f=a.xa[b],g=1;8>=g;g++){var k="pcjs-bitCell";g||(k+=" pcjs-bitCellLeft");e+='<div id="'+(b+"-"+g)+'" class="'+k+'" data-value="0">'+g+"</div>\n"}f.innerHTML=e;mk(a,b,c,d)}
@ -822,11 +822,11 @@ function Hk(a,b,c,d,e){var f=a.R[b],g=f.zc[c],k=g.Bb[f.Nb];n(a,768)&&m(a,d,null,
function Kk(a,b,c,d,e){var f=a.R[b];n(a,768)&&m(a,c,d,e,"DMA"+b+".REQ",null,!0);a=d&3;f.jd=f.jd&~(16<<a)|(d&4)<<a+2;f.si=d}function Lk(a,b,c,d,e){var f=a.R[b];n(a,768)&&m(a,c,d,e,"DMA"+b+".MASK",null,!0);b=d&3;c=f.zc[b];c.ye=!!(d&4);c.ye||Mk(a,f.Xl+b)}function Nk(a,b,c,d,e){n(a,768)&&m(a,c,d,e,"DMA"+b+".MODE",null,!0);a.R[b].zc[d&3].mode=d}function Ok(a,b,c,d,e){n(a,768)&&m(a,c,d,e,"DMA"+b+".MASTER_CLEAR",null,!0);a=a.R[b];for(b=0;b<a.zc.length;b++)yk(a,b)}
function Pk(a,b,c,d,e){var f=a.R[b].zc[c].fg;n(a,768)&&m(a,d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",f,!0);return f}function Qk(a,b,c,d,e,f){n(a,768)&&m(a,d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",null,!0);a.R[b].zc[c].fg=e}function Rk(a,b,c,d){var e=a.Ga[b];n(a,768)&&m(a,c,null,d,"DMA.SPARE"+b+".PAGE",e,!0);return e}function Sk(a,b,c,d,e){n(a,768)&&m(a,c,d,e,"DMA.SPARE"+b+".PAGE",null,!0);a.Ga[b]=d}function Tk(a,b,c,d,e){Ak(a.R[b>>2].zc[b&3],c,d,e)}
function Mk(a,b,c){b=a.R[b>>2].zc[b&3];b.kg&&b.bh&&b.Ag?(c&&(b.done=c),b.ye||Uk(a,b,!0)):c&&c(!0)}function Uk(a,b,c){c&&(b.count=b.Bb[1]<<8|b.Bb[0],b.type=b.mode&12,b.Hi=b.td=!1);for(var d=!1;0<=b.count&&(c=b.fg<<16|b.Hb[1]<<8|b.Hb[0],4==b.type?(d=!0,function(c){b.bh.call(b.kg,b.Ag,-1,function(f,g){0>f&&(b.Hi||(b.Hi=!0),f=255);b.ye||a.ja.xc(c,f);(d=g)&&setTimeout(function(){Vk(b)||Uk(a,b)},0)})}(c)):8==b.type?(c=a.ja.Xa(c),0>b.bh.call(b.kg,b.Ag,c)&&(b.td=!0)):0!=b.type&&(b.td=!0)),!d&&!Vk(b););}
function Vk(a){if(!a.td&&0<=--a.count&&(a.mode&32?(a.Hb[0]--,0>a.Hb[0]&&(a.Hb[0]=255,a.Hb[1]--,0>a.Hb[1]&&(a.Hb[1]=255))):(a.Hb[0]++,255<a.Hb[0]&&(a.Hb[0]=0,a.Hb[1]++,255<a.Hb[1]&&(a.Hb[1]=0))),!a.ye))return!1;var b=a.controller;b.jd=b.jd&~(16<<a.Li)|1<<a.Li;a.mode&16||(a.ye=!0,a.kg=a.Ag=null);a.done&&(a.done(!a.td),a.done=null);return!0}function Wk(a,b,c){var d=0,e=a.qc[b];if(null!=e.tf)switch(e.tf&3){case 2:d=e.lc;break;case 3:d=e.Uc}n(a,34048)&&m(a,e.port,null,c,"PIC"+b,d,!0);return d}
function Xk(a,b,c,d){var e=a.qc[b];n(a,34048)&&m(a,e.port,c,d,"PIC"+b,null,!0);if(c&16)e.Vd=0,e.Tc[e.Vd++]=c,e.yd=0,e.se=7,e.lc=e.Uc=0,e.tf=10;else if(c&8)c&100&&n(a,1073741824)&&nb(a,"PIC"+b+"("+fa(e.port)+"): unsupported OCW3 command "+fa(c),!0,!0),e.tf=c;else if(d=c&224,d&32){var f,g=0;if(96==(d&96))g=1<<(c&7);else for(f=e.se+1;;){f&=7;var k=1<<f;if(e.Uc&k){g=k;break}if(f++==e.se)break}e.Uc&g&&(e.Uc&=~g,Yk(a));d&128&&n(a,1073741824)&&nb(a,"PIC"+b+"("+fa(e.port)+"): unsupported OCW2 rotate command "+
fa(c),!0,!0)}else 192==d?e.se=c&7:n(a,1073741824)&&nb(a,"PIC"+b+"("+fa(e.port)+"): unsupported OCW2 automatic EOI command "+fa(c),!0,!0)}function Zk(a,b,c){var d=a.qc[b],e=d.yd;n(a,34048)&&m(a,d.port+1,null,c,"PIC"+b,e,!0);return e}function $k(a,b,c,d){var e=a.qc[b];n(a,34048)&&m(a,e.port+1,c,d,"PIC"+b,null,!0);e.Vd<e.Tc.length?(e.Tc[e.Vd++]=c,2==e.Vd&&e.Tc[0]&2&&e.Vd++,3!=e.Vd||e.Tc[0]&1||e.Vd++):(e.yd=c,d=a.M,d.V|=4,Yk(a,b||253!=c?0:6))}
function Tf(a,b,c){var d=a.qc[b>>3];b=1<<(b&7);d.lc&b||(d.lc|=b,d.ef=c||0,Yk(a))}function Sf(a,b){var c=a.qc[b>>3],d=1<<(b&7);c.lc&d&&(c.lc&=~d,Yk(a))}function Yk(a,b){var c,d=-1;1<a.Oa&&(c=a.qc[1],d=~(c.Uc|c.yd)&c.lc);c=a.qc[0];0<=d&&(c.lc=d?c.lc|4:c.lc&-5);var d=~(c.Uc|c.yd)&c.lc,e=a.M;e.R&&(e.ya=d?e.ya|1:e.ya&-2);d&&b&&(c.ef=b)}
function If(a,b){void 0===b&&(b=0);var c=-1,d=a.qc[b];if(d.ef)c=-2,d.ef--;else for(var e=d.lc&((d.Uc|d.yd)^255),f=d.se+1;;){var f=f&7,g=1<<f;if(e&g){b||2!=f?c=d.Tc[1]+f:c=If(a,1);0<=c&&(d.Uc|=g,d.lc&=~g);break}if(f++==d.se)break}return c}function al(a,b,c,d){var e,f=a.P[b];f.Xe?(e=f.jd,f.Xe=!1):(f.Cd==f.kd&&bl(a,b),f.Se?(e=f.te[f.Cd++],f.Cd==f.kd&&(f.Se=!1)):(kk(a,b),e=f.Bb[f.Cd++]));n(a,2304)&&m(a,c,null,d,"TIMER"+b,e,!0);return e}
function Vk(a){if(!a.td&&0<=--a.count&&(a.mode&32?(a.Hb[0]--,0>a.Hb[0]&&(a.Hb[0]=255,a.Hb[1]--,0>a.Hb[1]&&(a.Hb[1]=255))):(a.Hb[0]++,255<a.Hb[0]&&(a.Hb[0]=0,a.Hb[1]++,255<a.Hb[1]&&(a.Hb[1]=0))),!a.ye))return!1;var b=a.controller;b.jd=b.jd&~(16<<a.Li)|1<<a.Li;a.mode&16||(a.ye=!0,a.kg=a.Ag=null);a.done&&(a.done(!a.td),a.done=null);return!0}function Wk(a,b,c){var d=0,e=a.qc[b];if(null!=e.tf)switch(e.tf&3){case 2:d=e.lc;break;case 3:d=e.Mc}n(a,34048)&&m(a,e.port,null,c,"PIC"+b,d,!0);return d}
function Xk(a,b,c,d){var e=a.qc[b];n(a,34048)&&m(a,e.port,c,d,"PIC"+b,null,!0);if(c&16)e.Vd=0,e.Uc[e.Vd++]=c,e.yd=0,e.se=7,e.lc=e.Mc=0,e.tf=10;else if(c&8)c&100&&n(a,1073741824)&&nb(a,"PIC"+b+"("+fa(e.port)+"): unsupported OCW3 command "+fa(c),!0,!0),e.tf=c;else if(d=c&224,d&32){var f,g=0;if(96==(d&96))g=1<<(c&7);else for(f=e.se+1;;){f&=7;var k=1<<f;if(e.Mc&k){g=k;break}if(f++==e.se)break}e.Mc&g&&(e.Mc&=~g,Yk(a));d&128&&n(a,1073741824)&&nb(a,"PIC"+b+"("+fa(e.port)+"): unsupported OCW2 rotate command "+
fa(c),!0,!0)}else 192==d?e.se=c&7:n(a,1073741824)&&nb(a,"PIC"+b+"("+fa(e.port)+"): unsupported OCW2 automatic EOI command "+fa(c),!0,!0)}function Zk(a,b,c){var d=a.qc[b],e=d.yd;n(a,34048)&&m(a,d.port+1,null,c,"PIC"+b,e,!0);return e}function $k(a,b,c,d){var e=a.qc[b];n(a,34048)&&m(a,e.port+1,c,d,"PIC"+b,null,!0);e.Vd<e.Uc.length?(e.Uc[e.Vd++]=c,2==e.Vd&&e.Uc[0]&2&&e.Vd++,3!=e.Vd||e.Uc[0]&1||e.Vd++):(e.yd=c,d=a.M,d.V|=4,Yk(a,b||253!=c?0:6))}
function Tf(a,b,c){var d=a.qc[b>>3];b=1<<(b&7);d.lc&b||(d.lc|=b,d.ef=c||0,Yk(a))}function Sf(a,b){var c=a.qc[b>>3],d=1<<(b&7);c.lc&d&&(c.lc&=~d,Yk(a))}function Yk(a,b){var c,d=-1;1<a.Oa&&(c=a.qc[1],d=~(c.Mc|c.yd)&c.lc);c=a.qc[0];0<=d&&(c.lc=d?c.lc|4:c.lc&-5);var d=~(c.Mc|c.yd)&c.lc,e=a.M;e.R&&(e.ya=d?e.ya|1:e.ya&-2);d&&b&&(c.ef=b)}
function If(a,b){void 0===b&&(b=0);var c=-1,d=a.qc[b];if(d.ef)c=-2,d.ef--;else for(var e=d.lc&((d.Mc|d.yd)^255),f=d.se+1;;){var f=f&7,g=1<<f;if(d.Mc&g)break;if(e&g){b||2!=f?c=d.Uc[1]+f:c=If(a,1);0<=c&&(d.Mc|=g,d.lc&=~g);break}if(f++==d.se)break}return c}function al(a,b,c,d){var e,f=a.P[b];f.Xe?(e=f.jd,f.Xe=!1):(f.Cd==f.kd&&bl(a,b),f.Se?(e=f.te[f.Cd++],f.Cd==f.kd&&(f.Se=!1)):(kk(a,b),e=f.Bb[f.Cd++]));n(a,2304)&&m(a,c,null,d,"TIMER"+b,e,!0);return e}
function cl(a,b,c,d,e){n(a,2304)&&m(a,c,d,e,"TIMER"+b,null,!0);c=a.P[b];c.Cd==c.kd&&bl(a,b);c.Bc[c.Cd++]=d;c.Cd==c.kd&&(c.ve&&0!=c.mode&&8!=c.mode||(c.Se=!1,c.Bb[0]=c.Wc[0]=c.Bc[0],c.Bb[1]=c.Wc[1]=c.Bc[1],c.wd=Wc(a.M,a.va),c.ve=!0,c.ud=0!=c.mode,0==b&&(Sf(a,0),d=dl(a,0)*a.xb|0,6==c.mode&&(d>>=1),$c(a.M,d))),2==b&&cd(a))}h=Sj.prototype;h.zl=function(a,b){m(this,a,null,b,"PIT1_CTRL",null,2048);return this.ib};
h.Qm=function(a,b,c){this.ib=b;m(this,a,b,c,"PIT1_CTRL",null,2048);a=b&192;if(192==a){if(!(b&16))for(a=0;2>=a;a++)b&2<<a&&(c=this.P[a],c.Xe||(kk(this,a),c.jd=c.Vg|c.mode|c.Xf|(c.Cd<c.kd?64:0)|(c.ud?128:0),c.Xe=!0));if(!(b&32))for(a=0;2>=a;a++)b&2<<a&&el(this,a)}else{a>>=6;c=b&1;var d=b&14;b&=48;if(0==b)el(this,a);else{var e=a,f=this.P[e];f.Xf=b;f.mode=d;f.Vg=c;f.Bc=[0,0];f.Bb=[0,0];f.te=[0,0];f.ud=!1;f.Se=!1;f.ve=!1;f.Xe=!1;bl(this,e);0==a&&Sf(this,0);2==a&&255==this.qc[0].yd&&77==this.X&&(a=this.P[0],
a.Wc[0]=a.Bc[0],a.Wc[1]=a.Bc[1],a.wd=Wc(this.M,this.va))}}};function dl(a,b){var c=a.P[b],d=c.Bc[1]<<8|c.Bc[0];d||(d=1==c.kd?256:65536);return d}function ed(a,b){var c=a.P[b],d=c.Wc[1]<<8|c.Wc[0];d||(d=1==c.kd?256:65536);return d}function el(a,b){kk(a,b);var c=a.P[b];c.te[0]=c.Bb[0];c.te[1]=c.Bb[1];c.Se=!0;bl(a,b)}function bl(a,b){var c=a.P[b];c.Cd=32==c.Xf?1:0;c.kd=48==c.Xf?2:1}
@ -895,7 +895,7 @@ Wl[17]=[640,480,8];Wl[18]=[640,480,8];Wl[19]=[320,200,1];Wl[20]=[320,240,4];Wl[2
var bm=[[0,0,0,255],[127,192,127,255],[127,192,127,255],[127,255,127,255],[127,255,127,255]],cm=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],dm=[[0,0,0,255],[0,0,170,255],[0,170,0,255],[0,170,170,255],[170,0,0,255],[170,0,170,255],[170,85,0,255],[170,170,170,255],[85,85,85,255],[85,85,255,255],[85,255,85,255],[85,255,255,255],[255,85,85,255],[255,85,255,255],[255,255,85,255],[255,255,255,255]],em=[2,4,6],fm=[3,5,7],gm=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],hm=[0,255,65280,65535,16711680,16711935,16776960,
16777215,-16777216,-16776961,-16711936,-16711681,-65536,-65281,-256,-1],im=[0];im[128]=1;im[32768]=2;im[32896]=3;im[8388608]=4;im[8388736]=5;im[8421376]=6;im[8421504]=7;im[-2147483648]=8;im[-2147483520]=9;im[-2147450880]=10;im[-2147450752]=11;im[-2139095040]=12;im[-2139094912]=13;im[-2139062272]=14;im[-2139062144]=15;
function jm(a,b,c,d){if(void 0!==b&&(!c||c.length)){this.video=a;var e=km[b],f=a.Ga||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(5>b?lm:mm)];this.ma=a.ma;this.type=e[0];this.port=e[1];this.nb=b;this.sb=e[2];this.bc=e[3];this.Bd=d||e[4];65536<=this.Bd&&720896<=this.sb&&(this.bc=Math.min(this.Bd>>2,32768));this.Cc=c[0];this.ad=c[1];this.kf=c[2];this.sa=c[3];this.wc=c[4]&255;this.Eg=c[4]>>8&255;this.zb=c[5];this.kh=lm;this.eg=nm;if(5<=b){this.kh=mm;this.eg=om;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.sb,this.bc,this.Bd],Array(this.Bd>>2),-2147478512,0,-1,0,-1,0,-1,0,0,0,0,1,255,0,0,0,Array(256)]);this.Qe=b[0];this.Md=b[1];this.Pc=b[2];this.Pg=pm;this.Hg=b[3];this.mf=b[4];this.Wf=b[5];this.ae=b[6];this.Ee=b[7];this.Rg=qm;this.Uj=b[8];this.Vj=b[9];this.$d=b[10];this.Zd=b[11];this.Qg=rm;this.Ib=b[12];d=b[13];"number"==typeof d&&(d=[this.sb,this.bc,d]);this.sb=d[0];this.bc=d[1];d=this.Bd>>2;if((this.rd=b[14])&&this.rd.length<d){for(var e=this.rd,g=0,
0,3==f?0:1,0,0,Array(5),0,0,0,Array(9),0,[this.sb,this.bc,this.Bd],Array(this.Bd>>2),-2147478512,0,-1,0,-1,0,-1,0,0,0,0,1,255,0,0,0,Array(256)]);this.Qe=b[0];this.Md=b[1];this.Qc=b[2];this.Pg=pm;this.Hg=b[3];this.mf=b[4];this.Wf=b[5];this.ae=b[6];this.Ee=b[7];this.Rg=qm;this.Uj=b[8];this.Vj=b[9];this.$d=b[10];this.Zd=b[11];this.Qg=rm;this.Ib=b[12];d=b[13];"number"==typeof d&&(d=[this.sb,this.bc,d]);this.sb=d[0];this.bc=d[1];d=this.Bd>>2;if((this.rd=b[14])&&this.rd.length<d){for(var e=this.rd,g=0,
k=Array(d),q=0;q<e.length-1;){for(var r=e[q++],x=e[q++];r--;)k[g]=x,g+=2;g==d&&(g=1)}this.rd=k}(d=b[15])&&(d&-2147483648?d&=2147483647:d=sm[d&65280]|sm[d&255]);this.Ig(d);this.ai=b[16];this.wb=b[17];this.$c=b[18];this.Ob=b[19];this.Lf=b[20];this.Wd=b[21];this.me=b[22];this.lh=b[23];this.mh=b[24];this.Of=b[25];this.bi=this.gf=0;this.nb==sl&&(this.ii=b[26],this.hi=b[27],this.md=b[28],this.Dc=b[29],this.Fg=b[30],this.lf=b[31])}f=$l[f]||$l[3];this.nh=a.M.ba.Kd/f.xg|0;this.Zl=this.nh*f.Cg/100|0;this.qh=
this.nh*f.wg|0;this.am=this.qh*f.Dg/100|0;this.sh=c[7]||0}}
var lm=18,mm=25,nm="HTOTAL HDISP HSYNC_POS HSYNC_WIDTH VTOTAL VTOTAL_ADJ VDISP VSYNC_POS INTERLACE_POS MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO".split(" "),om="HTOTAL HDISP_END HBLANK_START HBLANK_END HRETRACE_START HRETRACE_END VTOTAL OVERFLOW PRESET_SCAN MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO VRETRACE_START VRETRACE_END VDISP_END OFFSET UNDERLINE VBLANK_START VBLANK_END MODE_CTRL LINE_COMPARE".split(" "),pm=
@ -910,28 +910,28 @@ tm[16]=function(a,b){a+=this.P;var c,d=a&-2;c=(b|b<<8|b<<16|b<<24)&this.controll
tm[17]=function(a){a+=this.P;var b=a&-2;a=this.controller.wb&(b==a?16711935:-16711936);a=this.fa[b]&~a|this.controller.Ib&a;this.fa[b]!=a&&(this.fa[b]=a,this.$a=!0)};tm[2]=function(a,b){var c=a+this.P,d=hm[b&15],d=d&this.controller.Ob|this.controller.Ib&~this.controller.Ob,d=d&this.controller.wb|this.fa[c]&~this.controller.wb;this.fa[c]!=d&&(this.fa[c]=d,this.$a=!0)};
tm[98]=function(a,b){var c=a+this.P,d=hm[b&15],d=d&this.controller.Ib,d=d&this.controller.Ob|this.controller.Ib&~this.controller.Ob,d=d&this.controller.wb|this.fa[c]&~this.controller.wb;this.fa[c]!=d&&(this.fa[c]=d,this.$a=!0)};tm[162]=function(a,b){var c=a+this.P,d=hm[b&15],d=d|this.controller.Ib,d=d&this.controller.Ob|this.controller.Ib&~this.controller.Ob,d=d&this.controller.wb|this.fa[c]&~this.controller.wb;this.fa[c]!=d&&(this.fa[c]=d,this.$a=!0)};
tm[226]=function(a,b){var c=a+this.P,d=hm[b&15],d=d^this.controller.Ib,d=d&this.controller.Ob|this.controller.Ib&~this.controller.Ob,d=d&this.controller.wb|this.fa[c]&~this.controller.wb;this.fa[c]!=d&&(this.fa[c]=d,this.$a=!0)};tm[3]=function(a,b){var c=a+this.P;b=b>>this.controller.$c|b<<8-this.controller.$c&255;var d;d=(b|b<<8|b<<16|b<<24)&this.controller.Ob;d=this.controller.Lf&d|this.controller.Ib&~d;d=d&this.controller.wb|this.fa[c]&~this.controller.wb;this.fa[c]!=d&&(this.fa[c]=d,this.$a=!0)};
function um(a){var b=[];if(void 0!==a.nb){b[0]=a.Cc;b[1]=a.ad;b[2]=a.kf;b[3]=a.sa;b[4]=a.wc|a.Eg<<8;b[5]=a.zb;if(5<=a.nb){var c=[];c[0]=a.Qe;c[1]=a.Md;c[2]=a.Pc;c[3]=a.Hg;c[4]=a.mf;c[5]=a.Wf;c[6]=a.ae;c[7]=a.Ee;c[8]=a.Uj;c[9]=a.Vj;c[10]=a.$d;c[11]=a.Zd;c[12]=a.Ib;c[13]=[a.sb,a.bc,a.Bd];var d;a:if(d=a.rd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var k=g;k<d.length;){for(var q=d[k],r=k+2;r<d.length&&d[r]===q;)r+=2;f[e++]=r-k>>1;f[e++]=q;k=r}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
function um(a){var b=[];if(void 0!==a.nb){b[0]=a.Cc;b[1]=a.ad;b[2]=a.kf;b[3]=a.sa;b[4]=a.wc|a.Eg<<8;b[5]=a.zb;if(5<=a.nb){var c=[];c[0]=a.Qe;c[1]=a.Md;c[2]=a.Qc;c[3]=a.Hg;c[4]=a.mf;c[5]=a.Wf;c[6]=a.ae;c[7]=a.Ee;c[8]=a.Uj;c[9]=a.Vj;c[10]=a.$d;c[11]=a.Zd;c[12]=a.Ib;c[13]=[a.sb,a.bc,a.Bd];var d;a:if(d=a.rd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var k=g;k<d.length;){for(var q=d[k],r=k+2;r<d.length&&d[r]===q;)r+=2;f[e++]=r-k>>1;f[e++]=q;k=r}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=
a.rg|-2147483648;c[16]=a.ai;c[17]=a.wb;c[18]=a.$c;c[19]=a.Ob;c[20]=a.Lf;c[21]=a.Wd;c[22]=a.me;c[23]=a.lh;c[24]=a.mh;c[25]=a.Of;a.nb==sl&&(c[26]=a.ii,c[27]=a.hi,c[28]=a.md,c[29]=a.Dc,c[30]=a.Fg,c[31]=a.lf);b[6]=c}b[7]=a.sh}return b}function vm(a,b,c,d,e){if(d){var f,g="";for(f=0;f<e.length;f++)g&&(g+="\n"),g+=b+"["+fa(f)+"]: "+na(e[f],19)+fa(d[f])+(f===c?"*":"");a.ma.U(g)}else a.ma.U(b+": "+fa(c))}jm.prototype.Ji=function(a){return[this.rd,a-this.sb]};jm.prototype.dh=function(){return this.A};
jm.prototype.Ig=function(a){if(null!=a&&a!=this.rg){var b=a&65280,c=tm[b];c||b&4096&&(c=tm[4096]);var b=a&255,d=tm[b];d||b&16&&(d=tm[16]);this.A||(this.A=Array(6));this.A[0]=c;this.A[3]=d;this.rg=a}};var km=[];km[Vl]=["MDA",948,720896,4096,0,3];km[3]=["CGA",980,753664,16384,0,2];km[5]=["EGA",980,753664,16384,65536,4];km[sl]=["VGA",980,753664,16384,262144,7];var Yl=0;h=Tl.prototype;
h.Hc=function(a,b,c,d){this.ja=b;this.M=c;this.ma=d;3!=Ul[this.na]&&(ic(b,this,wm),mc(b,this,xm));Ul[this.na]!=Vl&&(ic(b,this,ym),mc(b,this,zm));5<=this.nb&&(ic(b,this,Am),mc(b,this,Bm));this.nb==sl&&(ic(b,this,Cm),mc(b,this,Dm));if(d){var e=this;jk(d,262144,function(a){if(e.C)if(a[0]){var b=e.C;if(b.rd){var c,d,f,B=!1,y=8,L=8,F=-1,I=b.video.P>>3;for(c=0;c<a.length;c++){var V=a[c];if(c){var P=V.charAt(0);d=ca(V.substr(1));switch(P){case "l":y=d;break;case "n":1<=d&&8>=d&&(L=d,B=!0);break;case "p":0<=
d&&3>=d&&(F=d);break;case "w":d<I&&(I=d);break;default:b.ma.U("unrecognized argument: "+V)}}else f=ca(V)}void 0===f?f=b.C||0:f>=b.sb&&(f-=b.sb);a="";for(c=0;c<y;c++){V=l(b.sb+f)+":";for(d=0;d<L&&f<b.rd.length;d++)P=b.rd[f++],V+=" "+(0>F?l(P):da(P>>(F<<3),8));B&&(f+=I-L);a&&(a+="\n");a+=V}a&&b.ma.U(a);b.C=f}else b.ma.U("no buffer")}else e.ma.U("BIOSMODE: "+fa(e.Oa)),b=e.C,vm(b,"CRTC",b.wc,b.zb,b.eg),5<=b.nb&&(vm(b," GRC",b.$d,b.Zd,b.Qg),vm(b," SEQ",b.ae,b.Ee,b.Rg),vm(b," ATC",b.Md,b.Pc,b.Pg),vm(b,
d&&3>=d&&(F=d);break;case "w":d<I&&(I=d);break;default:b.ma.U("unrecognized argument: "+V)}}else f=ca(V)}void 0===f?f=b.C||0:f>=b.sb&&(f-=b.sb);a="";for(c=0;c<y;c++){V=l(b.sb+f)+":";for(d=0;d<L&&f<b.rd.length;d++)P=b.rd[f++],V+=" "+(0>F?l(P):da(P>>(F<<3),8));B&&(f+=I-L);a&&(a+="\n");a+=V}a&&b.ma.U(a);b.C=f}else b.ma.U("no buffer")}else e.ma.U("BIOSMODE: "+fa(e.Oa)),b=e.C,vm(b,"CRTC",b.wc,b.zb,b.eg),5<=b.nb&&(vm(b," GRC",b.$d,b.Zd,b.Qg),vm(b," SEQ",b.ae,b.Ee,b.Rg),vm(b," ATC",b.Md,b.Qc,b.Pg),vm(b,
" ATCINDX",b.Md),b.ma.U(" ATCDATA: "+b.Qe),vm(b," FEAT",b.Wf),vm(b," MISC",b.mf),vm(b," STATUS0",b.Hg)),vm(b," STATUS1",b.sa),b.nb!=Vl&&3!=b.nb||vm(b," MODEREG",b.ad),3==b.nb&&vm(b," COLOR",b.kf),5<=b.nb&&(b.ma.U(" LATCHES: 0x"+l(b.Ib)),b.ma.U(" ACCESS: "+ga(b.rg)),b.ma.U("Use 'dump video [addr]' to dump video memory"));else e.ma.U("no active video card")})}if((this.O=Eb(a,"Keyboard"))&&this.va){for(var f in this.xa)0<f.indexOf("lock")&&this.O.Vb("led",f,this.xa[f]);this.O.Vb(this.qk?
"textarea":"canvas","kbd",this.ha)}this.Qc=9;(this.R=Eb(a,"ChipSet"))&&this.Tf&&5==this.nb&&(this.Qc=Wj(this.Tf,this.Qc));"mouse"==this.Zf?(this.Z=Eb(a,"Mouse"))&&Em(this,2):"keygrid"==this.Zf&&this.O&&Em(this,1)};
"textarea":"canvas","kbd",this.ha)}this.Rc=9;(this.R=Eb(a,"ChipSet"))&&this.Tf&&5==this.nb&&(this.Rc=Wj(this.Tf,this.Rc));"mouse"==this.Zf?(this.Z=Eb(a,"Mouse"))&&Em(this,2):"keygrid"==this.Zf&&this.O&&Em(this,1)};
h.Vb=function(a,b,c){var d=this;if(!this.xa[b])switch(this.xa[b]=c,b){case "fullScreen":return this.la&&this.la.Pe?c.onclick=function(){d.Pe()}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.mk=c.textContent,this.ha&&this.ha.xe?c.onclick=function(){d.xe(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){Yc(d,!0)},!0}return!1};h.bd=function(){this.ha&&this.ha.focus()};
h.Pe=function(){var a=!1;if(this.la){if(this.la.Pe){a="100%";if(screen&&screen.width&&screen.height){var b=screen.width/screen.height,c=this.Aa/this.Ka;b>c&&(a=Math.round(c/b*100)+"%")}this.jf?(this.va.style.width=a,this.va.style.width=a,this.va.style.display="block",this.va.style.margin="auto"):(this.la.style.width=a,this.la.style.height="auto");this.la.style.backgroundColor="black";this.la.Pe();a=!0}this.bd()}return a};
function Zl(a,b){!b&&a.la&&(a.jf?a.va.style.width=a.va.style.height="":a.la.style.width=a.la.style.height="");nb(a,"notifyFullScreen("+b+")",!0);a.O&&(a.O.Zg=b)}h.xe=function(a){var b=!1;this.ha&&(a?this.ha.xe&&(this.ha.xe(),this.Z&&this.Z.Mf(!0),b=!0):this.ha.dk&&(this.ha.dk(),this.Z&&this.Z.Mf(!1),b=!0),this.bd());return b};h.Mf=function(a){this.Z&&(this.Z.Mf(a),this.O&&(this.O.Zg=a));var b=this.xa.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.mk)};
function Em(a,b){var c=a.ha;c&&!a.Hd&&(c.addEventListener("touchstart",function(b){Fm(a,b,!0)},!1),c.addEventListener("touchmove",function(b){Fm(a,b)},!0),c.addEventListener("touchend",function(b){Fm(a,b,!1)},!1),a.Hd=b,a.jc=a.kc=a.$f=-1,a.Fd=!1,a.Sc=null,a.Ed=!1,a.ik=function(){a.Ed=!0;a.Z.je(Gm,!0)})}h.Bg=function(a){this.O&&this.O.Bg(a)};
function Em(a,b){var c=a.ha;c&&!a.Hd&&(c.addEventListener("touchstart",function(b){Fm(a,b,!0)},!1),c.addEventListener("touchmove",function(b){Fm(a,b)},!0),c.addEventListener("touchend",function(b){Fm(a,b,!1)},!1),a.Hd=b,a.jc=a.kc=a.$f=-1,a.Fd=!1,a.Tc=null,a.Ed=!1,a.ik=function(){a.Ed=!0;a.Z.je(Gm,!0)})}h.Bg=function(a){this.O&&this.O.Bg(a)};
function Fm(a,b,c){var d,e,f=0,g=0;e=a.va;do isNaN(e.offsetLeft)||(f+=e.offsetLeft,g+=e.offsetTop);while(e=e.offsetParent);var k=a.Aa/a.va.offsetWidth,q=a.Ka/a.va.offsetHeight;b.targetTouches&&b.targetTouches.length?(d=b.targetTouches[0].pageX,e=b.targetTouches[0].pageY):(d=b.pageX,e=b.pageY);d=(d-f)*k;e=(e-g)*q;if(1==a.Hd)d=d/(a.Aa/3)|0,e=e/(a.Ka/3)|0,1!=e?e?Ll(a.O,1040,!0):Ll(a.O,1038,!0):1!=d&&(d?Ll(a.O,1039,!0):Ll(a.O,1037,!0));else if(a.Z){g=a.Fd;f=b.timeStamp-a.$f;!0===c?(a.Fd=500<f,a.$f=b.timeStamp,
a.Sc=setTimeout(a.ik,500)):null!=a.Sc&&(clearTimeout(a.Sc),a.Sc=null);void 0===c&&(a.Fd=!1);g||b.preventDefault();if(!1===c){a.Ed?(a.Z.je(Gm,!1),a.Ed=!1,b=!0):b=!1;if(b)return;if(200>f){a.Z.je(Gm,!0);a.Z.je(Gm,!1);return}}if(c||0>a.jc||0>a.kc)a.jc=d,a.kc=e;c=Math.round(d-a.jc);b=Math.round(e-a.kc);a.jc=d;a.kc=e;a.Z.yf(c,b,a.jc,a.kc)}}h.nc=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};h.mc=function(a){return a?this.save():!0};
h.reset=function(){var a=!0,b=0;this.R&&(b=sk(this.R));this.na||(this.nb=3==b?Vl:3);this.Fa=3;switch(this.nb){case sl:b=7;break;case 5:var c=am[this.Qc];c&&(b=c[0]);b||(b=4);break;case Vl:b=3;this.Fa=Xl;break;default:b=2}this.Ga!==b&&(this.Ga=b,a=!0);this.C=null;this.ya=this.pd=new jm(this,Vl);this.da=this.Rc=new jm(this,3);5>this.nb?this.A=new jm:(this.A=new jm(this,this.nb,null,this.Bd),Hm(this));Im(this);this.Oa=null;this.Wb=this.ta=-1;this.bb=0;Jm(this,this.Fa);if(this.C.sb&&a){a=this.C.sb+this.Qb;
for(b=this.C.sb;b<a;b+=2){var d=65536*Math.random()|0;4==this.Ga||7==this.Ga?(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);gc(this.ja,b,c|d<<8)}Yc(this,!0)}};function Hm(a){a.A.mf&1?(a.ya=a.pd,a.da=a.A):(a.ya=a.A,a.da=a.Rc)}h.save=function(){var a=new We(this);Xe(a,0,um(this.pd));Xe(a,1,um(this.Rc));Xe(a,2,[this.Ga,this.Fa,this.Oa]);Xe(a,3,um(this.A));return a.data()};
h.restore=function(a){var b=a[2];this.Ga=b[0];this.Fa=b[1];this.Oa=b[2];this.C=null;this.ya=this.pd=new jm(this,Vl,a[0]);this.da=this.Rc=new jm(this,3,a[1]);this.A=new jm(this,this.nb,a[3],this.Bd);this.A.Cc&&Hm(this);Im(this);if(!Km(this))return!1;Lm(this);return!0};
a.Tc=setTimeout(a.ik,500)):null!=a.Tc&&(clearTimeout(a.Tc),a.Tc=null);void 0===c&&(a.Fd=!1);g||b.preventDefault();if(!1===c){a.Ed?(a.Z.je(Gm,!1),a.Ed=!1,b=!0):b=!1;if(b)return;if(200>f){a.Z.je(Gm,!0);a.Z.je(Gm,!1);return}}if(c||0>a.jc||0>a.kc)a.jc=d,a.kc=e;c=Math.round(d-a.jc);b=Math.round(e-a.kc);a.jc=d;a.kc=e;a.Z.yf(c,b,a.jc,a.kc)}}h.nc=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};h.mc=function(a){return a?this.save():!0};
h.reset=function(){var a=!0,b=0;this.R&&(b=sk(this.R));this.na||(this.nb=3==b?Vl:3);this.Fa=3;switch(this.nb){case sl:b=7;break;case 5:var c=am[this.Rc];c&&(b=c[0]);b||(b=4);break;case Vl:b=3;this.Fa=Xl;break;default:b=2}this.Ga!==b&&(this.Ga=b,a=!0);this.C=null;this.ya=this.pd=new jm(this,Vl);this.da=this.Sc=new jm(this,3);5>this.nb?this.A=new jm:(this.A=new jm(this,this.nb,null,this.Bd),Hm(this));Im(this);this.Oa=null;this.Wb=this.ta=-1;this.bb=0;Jm(this,this.Fa);if(this.C.sb&&a){a=this.C.sb+this.Qb;
for(b=this.C.sb;b<a;b+=2){var d=65536*Math.random()|0;4==this.Ga||7==this.Ga?(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);gc(this.ja,b,c|d<<8)}Yc(this,!0)}};function Hm(a){a.A.mf&1?(a.ya=a.pd,a.da=a.A):(a.ya=a.A,a.da=a.Sc)}h.save=function(){var a=new We(this);Xe(a,0,um(this.pd));Xe(a,1,um(this.Sc));Xe(a,2,[this.Ga,this.Fa,this.Oa]);Xe(a,3,um(this.A));return a.data()};
h.restore=function(a){var b=a[2];this.Ga=b[0];this.Fa=b[1];this.Oa=b[2];this.C=null;this.ya=this.pd=new jm(this,Vl,a[0]);this.da=this.Sc=new jm(this,3,a[1]);this.A=new jm(this,this.nb,a[3],this.Bd);this.A.Cc&&Hm(this);Im(this);if(!Km(this))return!1;Lm(this);return!0};
h.vk=function(a,b,c){if(c)this.Va("Unable to load font ROM (error "+c+": "+a+")");else{try{var d=eval("("+b+")");if(!d.length){Ba("Empty font ROM: "+a);return}if(1==d.length){Ba(d[0]);return}if(8192==d.length)rl(this,d,[6144,0]);else{this.Va("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Va("Font ROM data error: "+e.message);return}(this.qa||this.ma)&&sb(this)}};
function Mm(a,b){if(1==b)return a.Ha[0]=dm[0],a.Ha[1]=dm[7],a.Ha;if(2==b){var c=a.C.kf;if(a.C===a.A){var d=a.A.Pc[0],c=d&7;d&16&&(c|=8);18!=a.A.Pc[1]&&(c|=32)}a.Ha[0]=dm[c&15];c=c&32?fm:em;for(d=0;d<c.length;d++)a.Ha[d+1]=dm[c[d]];return a.Ha}if(a.da===a.Rc)return dm;a.xb&&b&&!a.Ha[16]&&(a.xb=!1);if(!a.xb){var c=a.A,d=c.lf,e,f,g,k,q;if(8==b)for(f=0;256>f;f++)g=d[f]||0,k=g<<2&252,q=g>>4&252,g=g>>10&252,a.Ha[f]=[k,q,g,255];else{var r=d&&d[255];e=null!=c.Pc[15]?c.Pc:gm;for(f=0;16>f;f++)g=e[f]&63,r?(g|=
(c.Pc[20]&12)<<4,c.Pc[16]&128&&(g&=-49,g|=(c.Pc[20]&3)<<4),g=d[g],k=g<<2&252,q=g>>4&252,g=g>>10&252):(k=(g&4?170:0)|(g&32?85:0),q=(g&2?170:0)|(g&16?85:0),g=(g&1?170:0)|(g&8?85:0)),a.Ha[f]=[k,q,g,255]}a.xb=!0}return a.Ha}function rl(a,b,c,d){a.Ec=b;a.qd=c;a.rb=d}
function Mm(a,b){if(1==b)return a.Ha[0]=dm[0],a.Ha[1]=dm[7],a.Ha;if(2==b){var c=a.C.kf;if(a.C===a.A){var d=a.A.Qc[0],c=d&7;d&16&&(c|=8);18!=a.A.Qc[1]&&(c|=32)}a.Ha[0]=dm[c&15];c=c&32?fm:em;for(d=0;d<c.length;d++)a.Ha[d+1]=dm[c[d]];return a.Ha}if(a.da===a.Sc)return dm;a.xb&&b&&!a.Ha[16]&&(a.xb=!1);if(!a.xb){var c=a.A,d=c.lf,e,f,g,k,q;if(8==b)for(f=0;256>f;f++)g=d[f]||0,k=g<<2&252,q=g>>4&252,g=g>>10&252,a.Ha[f]=[k,q,g,255];else{var r=d&&d[255];e=null!=c.Qc[15]?c.Qc:gm;for(f=0;16>f;f++)g=e[f]&63,r?(g|=
(c.Qc[20]&12)<<4,c.Qc[16]&128&&(g&=-49,g|=(c.Qc[20]&3)<<4),g=d[g],k=g<<2&252,q=g>>4&252,g=g>>10&252):(k=(g&4?170:0)|(g&32?85:0),q=(g&2?170:0)|(g&16?85:0),g=(g&1?170:0)|(g&8?85:0)),a.Ha[f]=[k,q,g,255]}a.xb=!0}return a.Ha}function rl(a,b,c,d){a.Ec=b;a.qd=c;a.rb=d}
function Im(a,b){var c=!1;if(window&&a.Ec&&(!b||a.W)){var d=0,e=a.rb?a.rb:8,f=Mm(a);Nm(a,3,a.qd[0],d,e,8,a.Ec,f)&&(c=!0);d=a.rb?0:2048;e=a.rb?a.rb:9;Nm(a,1,a.qd[1],d,e,14,a.Ec,bm,cm)&&(c=!0);a.rb&&Nm(a,a.nb,a.qd[1],0,a.rb,14,a.Ec,f)&&(c=!0)}return c}function Nm(a,b,c,d,e,f,g,k,q){var r=!1;null!=c&&(Om(a,b,c,d,e,f,g,k,q)&&(r=!0),a.Lg&&Om(a,b<<1,c,d,e,f,g,k,q)&&(r=!0));return r}
function Om(a,b,c,d,e,f,g,k,q){var r=!1,x=b&1?0:1,B=a.Ua[b],y=16>k.length?k.length:16;B||(B={Mc:e<<x,Nc:f<<x,Je:Array(y),ni:k.slice(0,y),rf:q,Og:Array(y)});for(q=0;q<y;q++){var L=k[q],F=B.Je[q]?B.ni[q]:[];if(L[0]!==F[0]||L[1]!==F[1]||L[2]!==F[2]){var r=B,F=q,I=x,V=c,P=d,ua=e,X=f,oa=g,Za=[0,0,0,0],ia=window.document.createElement("canvas");ia.width=r.Mc<<4;ia.height=r.Nc<<4;for(var Ra=ia.getContext("2d"),xa=void 0,Gb=void 0,Ia=void 0,Da=8>X||!P?X:8,hd=Ra.createImageData(r.Mc,r.Nc),xa=0;256>xa;xa++){for(Ia=
0;Ia<X;Ia++)for(var Od=r.rf&&F&1&&Ia>=X-2,Pc=oa[Ia<Da?V+xa*Da+Ia:P+xa*Da+Ia-Da],Pd=0;Pd<=I;Pd++)for(Gb=0;Gb<ua;Gb++){var Ae=Gb<<I,Qd=(Ia<<I)+Pd,Be=Od||Pc&128>>(8<=Gb&&192<=xa&&223>=xa?7:Gb)?L:Za;Pm(hd,Ae,Qd,Be);I&&Pm(hd,Ae+1,Qd,Be)}Ra.putImageData(hd,(xa&15)*r.Mc,(xa>>4)*r.Nc)}r.Je[F]="#"+l(L[0],2)+l(L[1],2)+l(L[2],2);r.ni[F]=L;r.Og[F]=ia;r=!0}}a.Ua[b]=B;return r}function rn(a){0<a.bb||0<=a.ta?0>a.Wb&&(a.Wb=0):a.Wb=-1}
function Om(a,b,c,d,e,f,g,k,q){var r=!1,x=b&1?0:1,B=a.Ua[b],y=16>k.length?k.length:16;B||(B={Nc:e<<x,Oc:f<<x,Je:Array(y),ni:k.slice(0,y),rf:q,Og:Array(y)});for(q=0;q<y;q++){var L=k[q],F=B.Je[q]?B.ni[q]:[];if(L[0]!==F[0]||L[1]!==F[1]||L[2]!==F[2]){var r=B,F=q,I=x,V=c,P=d,ua=e,X=f,oa=g,Za=[0,0,0,0],ia=window.document.createElement("canvas");ia.width=r.Nc<<4;ia.height=r.Oc<<4;for(var Ra=ia.getContext("2d"),xa=void 0,Gb=void 0,Ia=void 0,Da=8>X||!P?X:8,hd=Ra.createImageData(r.Nc,r.Oc),xa=0;256>xa;xa++){for(Ia=
0;Ia<X;Ia++)for(var Od=r.rf&&F&1&&Ia>=X-2,Pc=oa[Ia<Da?V+xa*Da+Ia:P+xa*Da+Ia-Da],Pd=0;Pd<=I;Pd++)for(Gb=0;Gb<ua;Gb++){var Ae=Gb<<I,Qd=(Ia<<I)+Pd,Be=Od||Pc&128>>(8<=Gb&&192<=xa&&223>=xa?7:Gb)?L:Za;Pm(hd,Ae,Qd,Be);I&&Pm(hd,Ae+1,Qd,Be)}Ra.putImageData(hd,(xa&15)*r.Nc,(xa>>4)*r.Oc)}r.Je[F]="#"+l(L[0],2)+l(L[1],2)+l(L[2],2);r.ni[F]=L;r.Og[F]=ia;r=!0}}a.Ua[b]=B;return r}function rn(a){0<a.bb||0<=a.ta?0>a.Wb&&(a.Wb=0):a.Wb=-1}
function Lm(a){if(a.W){for(var b=10;15>=b;b++)if(null==a.C.zb[b])return;var c=a.C.zb[10],b=c&31,d=a.C.zb[11]&31,e=a.C.zb[9]&31,f=!1;a.C===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)sn(a);else{c=a.C.zb[15]+((a.C.zb[14]&63)<<8);a.ta!=c&&(sn(a),a.ta=c);d=d-b+1;if(a.ag!=b||a.we!=d)a.ag=b,a.we=d;a.ib=e+1;rn(a)}}}
function sn(a){if(0<=a.ta){if(void 0!==a.ka){var b=a.ka[a.ta];if(b&131072){var b=b&-131073,c=a.ta%a.P,d=a.ta/a.P|0;a.W&&a.Ua[a.W]&&(a.qb&&tn(a,c,d,b,a.qb),tn(a,c,d,b));a.ka[a.ta]=b}}a.ta=-1}}
function un(a){var b,c=a.C;a.hf=!1;var d=c.Zd[5];if(null!=d){b=1024;var e=0,f=c.Zd[3]&31;switch(d&3){case 0:if(f){e=32;switch(f&24){case 8:e=96;break;case 16:e=160;break;case 24:e=224}c.$c=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.nb==sl&&(e=3,c.$c=f&7)}d&8&&(b=1280);c=c.Ee[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.hf=!0));b|=e}return b}
@ -939,18 +939,18 @@ function vn(a,b){var c=a.C;c&&null!=b&&b!=c.rg&&(c.Ig(b),a.ja.Ig(c.sb,c.bc,c.dh(
function Km(a,b){var c,d=a.Oa,e=a.C;if(e)if(e.nb==Vl)d=Xl;else if(5<=e.nb){var d=null,f=e.Bd>>2,g=32768<f?32768:f,k=e.Zd[6];if(null!=k){switch(k&12){case 0:e.sb=655360;e.bc=f;d=255;break;case 4:e.sb=655360;e.bc=f;d=3==a.Ga?15:16;break;case 8:e.sb=720896;e.bc=g;d=Xl;break;case 12:e.sb=753664,e.bc=g,d=3==a.Ga?2:3}var q=80==(e.Zd[5]&80);!q||e.sb==a.sb&&e.bc==a.bc||(b=!0);c=e.Ee[1]&8;f=e.zb[6];f|=e.zb[7]&1?256:0;e.nb==sl&&(f|=e.zb[7]&32?512:0);g=e.zb[9];255!=d&&(k&1?655360!=e.sb&&!q&&350>f?d=c?7-d:6:
e.Zd[5]&64?d=g&31?143>=e.zb[18]?19:20:21:g&128||350>f?d=c?13:14:480<=f&&(d=3==a.Ga?17:18):d-=c?2:0);c=un(a)}}else e.ad&8&&(e.ad&2?(d=e.ad&16?6:5,e.ad&4||--d):(d=e.ad&1?3:1,e.ad&4&&--d));else a.Oa=null,null==d&&(d=a.Fa);if(!Jm(a,d,b))return!1;vn(a,c);return!0}
function Jm(a,b,c){if(null!=b&&(b!=a.Oa||c)){a.Jg=0;a.Oa=b;a.xb=!1;b=a.C||(b==Xl?a.ya:a.da);if(b!=a.C||b.sb!=a.sb||b.bc!=a.bc){sn(a);if(a.sb){if(!$b(a.ja,a.sb,a.bc))return!1;a.C&&(a.C.Cc=!1)}a.C=b;b.Cc=!0;a.sb=b.sb;a.bc=b.bc;if(!Vb(a.ja,b.sb,b.bc,3,b===a.A?b:null))return!1}a.W=0;a.P=a.ed;a.X=a.Gd;a.Fb=a.P;a.dd=Wl[Xl][2];b=0;if(c=Wl[a.Oa])a.P=c[0],a.X=c[1],a.dd=c[2],b=c[3],a.W=c[4],4!=a.Ga&&7!=a.Ga||a.C!==a.A||3!=a.W||(7==a.A.zb[9]?a.X=43:a.W=a.nb);a.Sf=a.P*a.X|0;a.Pf=a.Sf/a.dd|0;a.Qb=a.Pf;a.sd=0;
void 0!==b&&(a.Qb=(a.Qb<<1)+b|0,a.sd=a.Qb+b>>1);a.Ua.length&&(a.Pa=a.Aa/a.P|0,a.Ra=a.Ka/a.X|0,a.W?(b=a.Ua[a.W],c=a.Ua[a.W<<1],a.hk&&80==a.P?c&&a.Pa>=3*c.Mc>>2&&(a.W<<=1,b=c):(c&&a.Pa>=c.Mc&&(a.W<<=1,b=c),b&&(a.Pa=b.Mc,a.Ra=b.Nc)),a.Xb=a.$b=0,b&&(a.Xb=a.P*b.Mc,a.$b=a.X*b.Nc)):(a.Pa=a.Ra=1,a.Xb=a.P,a.$b=a.X),a.Eb=a.qa.createImageData(a.Xb,a.$b),a.lb=window.document.createElement("canvas"),a.lb.width=a.Xb,a.lb.height=a.$b,a.qb=a.lb.getContext("2d"),a.Id=a.Jd=0,a.Ad=a.Aa,a.Dd=a.Ka,b=a.Aa-a.P*a.Pa,c=a.Ka-
void 0!==b&&(a.Qb=(a.Qb<<1)+b|0,a.sd=a.Qb+b>>1);a.Ua.length&&(a.Pa=a.Aa/a.P|0,a.Ra=a.Ka/a.X|0,a.W?(b=a.Ua[a.W],c=a.Ua[a.W<<1],a.hk&&80==a.P?c&&a.Pa>=3*c.Nc>>2&&(a.W<<=1,b=c):(c&&a.Pa>=c.Nc&&(a.W<<=1,b=c),b&&(a.Pa=b.Nc,a.Ra=b.Oc)),a.Xb=a.$b=0,b&&(a.Xb=a.P*b.Nc,a.$b=a.X*b.Oc)):(a.Pa=a.Ra=1,a.Xb=a.P,a.$b=a.X),a.Eb=a.qa.createImageData(a.Xb,a.$b),a.lb=window.document.createElement("canvas"),a.lb.width=a.Xb,a.lb.height=a.$b,a.qb=a.lb.getContext("2d"),a.Id=a.Jd=0,a.Ad=a.Aa,a.Dd=a.Ka,b=a.Aa-a.P*a.Pa,c=a.Ka-
a.X*a.Ra,0<b&&(a.Id=b>>1,a.Ad-=b),0<c&&(a.Jd=c>>1,a.Dd-=c),b||c)&&(a.qa.fillStyle=a.va.style.backgroundColor,a.qa.fillRect(0,0,a.Aa,a.Ka));wn(a,!0);Yc(a)}return!0}function Pm(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function xn(a){a.bb=-1;a.Na=!1;var b=a.Pf;if(void 0===a.ka||a.ka.length!=b)a.ka=Array(b)}function wn(a,b){b||(a.xb=!1);xn(a)}
function tn(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var k=a.Ua[a.W];k.rf&&(d=k.rf[d]);var q=g>>4&15;k.rf&&(q=k.rf[q]);e?(b*=k.Mc,c*=k.Nc,e.fillStyle=k.Je[q],e.fillRect(b,c,k.Mc,k.Nc)):(b=b*a.Pa+a.Id,c=c*a.Ra+a.Jd,a.qa.fillStyle=k.Je[q],a.qa.fillRect(b,c,a.Pa,a.Ra));g&256&&(q=(f&15)*k.Mc,f=(f>>4)*k.Nc,e?e.drawImage(k.Og[d],q,f,k.Mc,k.Nc,b,c,k.Mc,k.Nc):a.qa.drawImage(k.Og[d],q,f,k.Mc,k.Nc,b,c,a.Pa,a.Ra));g&512&&(f=a.ag,g=a.we,e?(a.ib&&a.ib!==k.Nc&&(f=f*k.Nc/a.ib|0,g=g*k.Nc/a.ib|0),e.fillStyle=k.Je[d],
e.fillRect(b,c+f,k.Mc,g)):(a.ib&&a.ib!==a.Ra&&(f=f*a.Ra/a.ib|0,g=g*a.Ra/a.ib|0),a.qa.fillStyle=k.Je[d],a.qa.fillRect(b,c+f,a.Pa,g)))}
function tn(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var k=a.Ua[a.W];k.rf&&(d=k.rf[d]);var q=g>>4&15;k.rf&&(q=k.rf[q]);e?(b*=k.Nc,c*=k.Oc,e.fillStyle=k.Je[q],e.fillRect(b,c,k.Nc,k.Oc)):(b=b*a.Pa+a.Id,c=c*a.Ra+a.Jd,a.qa.fillStyle=k.Je[q],a.qa.fillRect(b,c,a.Pa,a.Ra));g&256&&(q=(f&15)*k.Nc,f=(f>>4)*k.Oc,e?e.drawImage(k.Og[d],q,f,k.Nc,k.Oc,b,c,k.Nc,k.Oc):a.qa.drawImage(k.Og[d],q,f,k.Nc,k.Oc,b,c,a.Pa,a.Ra));g&512&&(f=a.ag,g=a.we,e?(a.ib&&a.ib!==k.Oc&&(f=f*k.Oc/a.ib|0,g=g*k.Oc/a.ib|0),e.fillStyle=k.Je[d],
e.fillRect(b,c+f,k.Nc,g)):(a.ib&&a.ib!==a.Ra&&(f=f*a.Ra/a.ib|0,g=g*a.Ra/a.ib|0),a.qa.fillStyle=k.Je[d],a.qa.fillRect(b,c+f,a.Pa,g)))}
function Yc(a,b){if(a.ra.dc){var c=!1,d=a.C;d&&(d!==a.A?d.ad&8&&(c=!0):d.Md&32&&(c=!0));if(c||b){if(b)xn(a);else if(void 0===a.ka)return;var e=!1;!(b||++a.Jg&15)&&0<=a.Wb&&(a.Wb++,e=!0);var f=0,g=a.Sf,k=a.sb,c=k,q=c+a.bc;19<=a.Oa&&(k=c=655360,q=c+65536);if(yn(a,d)&8||d.gf&&d.gf<d.bi)d.Of=(d.zb[12]<<8)+d.zb[13]|0,d.gf=0;var r=d.Of;a.W&&(r<<=1);c+=r;r=a.Qb;5<=a.nb&&d.zb[19]&&d.zb[19]<<1!=d.zb[1]+1&&(a.Fb=d.zb[19]<<(a.W?1:d.zb[20]&64?3:4),r=(a.Fb*(a.X-1)+a.P)/a.dd|0,a.Oa<=Xl&&(r<<=1));c+r>q&&(r=q-c,
0>r&&(r=0));q=c+r;if(d=!b&&a.Na){for(var d=a.ja,x=!0,B=c>>>d.La;0<r&&B<d.wa.length;)d.wa[B].$a&&(d.wa[B].$a=x=!1,d.wa[B].Fi=!0),r-=d.Pb,B++;d=x}if(d){if(!e)return;if(!a.bb){if(0>a.ta)return;f=a.ta;g=f+1}}if(a.W){if(a.Ua[a.W]){e=0;k=a.bb=0;d=1048575;r=a.C.ad&32;5<=a.nb&&(r=a.C.Pc[16]&8);r&&(k=32768,d&=~k,a.Wb&2||(d&=-65537));for(c+=f<<1;c<q&&f<g;)r=fc(a.ja,c),r|=65536,r&k&&(a.bb++,r&=d),f==a.ta&&(r|=a.Wb&1?131072:0),a.Na&&r===a.ka[f]||(tn(a,f%a.P,f/a.P|0,r,a.qb),a.ka[f]=r,e++),c+=2,f++;a.Na=!0;e&&
0>r&&(r=0));q=c+r;if(d=!b&&a.Na){for(var d=a.ja,x=!0,B=c>>>d.La;0<r&&B<d.wa.length;)d.wa[B].$a&&(d.wa[B].$a=x=!1,d.wa[B].Fi=!0),r-=d.Pb,B++;d=x}if(d){if(!e)return;if(!a.bb){if(0>a.ta)return;f=a.ta;g=f+1}}if(a.W){if(a.Ua[a.W]){e=0;k=a.bb=0;d=1048575;r=a.C.ad&32;5<=a.nb&&(r=a.C.Qc[16]&8);r&&(k=32768,d&=~k,a.Wb&2||(d&=-65537));for(c+=f<<1;c<q&&f<g;)r=fc(a.ja,c),r|=65536,r&k&&(a.bb++,r&=d),f==a.ta&&(r|=a.Wb&1?131072:0),a.Na&&r===a.ka[f]||(tn(a,f%a.P,f/a.P|0,r,a.qb),a.ka[f]=r,e++),c+=2,f++;a.Na=!0;e&&
a.qb&&a.qa.drawImage(a.lb,0,0,a.Xb,a.$b,a.Id,a.Jd,a.Ad,a.Dd);rn(a)}}else if(a.sd){for(var g=q,y,q=c,f=a.bb=0,e=a.dd,k=16==e?65536:196608,d=16==e?1:2,r=Mm(a,d),B=x=0,L=a.P,F=0,I=a.X,V=0;q<g;){y=fc(a.ja,q);if(a.Na&&y===a.ka[f])x+=e;else{a.ka[f]=y;y=y>>8|(y&255)<<8;var P=k,ua=16;x<L&&(L=x);for(var X=0;X<e;X++){var oa=(y&(P>>=d))>>(ua-=d);Pm(a.Eb,x++,B,r[oa])}x>F&&(F=x);B<I&&(I=B);B>=V&&(V=B+1)}q+=2;f++;if(x>=a.P){x=0;B+=2;if(B>a.X)break;B==a.X&&(B=1,q=c+a.sd)}}a.Na=!0;L<a.P&&(a.qb.putImageData(a.Eb,
0,0,L,I,F-L,V-I),a.qa.drawImage(a.lb,0,0,a.P,a.X,0,0,a.Aa,a.Ka))}else if(a.hf){g=k;e=a.bb=0;k=Mm(a,8);d=a.C.rd;x=r=0;B=a.P;L=0;F=a.X;I=0;V=a.C.Ee[4]&8?4:1;y=a.C.Pc[19]&15;for(P=a.Fb>a.P?a.Fb-a.P-y>>3:0;c<q;){f=d[c-g];X=4;y||(a.Na&&f===a.ka[e]?(r+=X,X=0):a.ka[e]=f,e++);if(X){r<B&&(B=r);for(ua=0;ua<X;ua++)Pm(a.Eb,r++,x,k[f&255]),f>>=8;r>L&&(L=r);x<F&&(F=x);x>=I&&(I=x+1)}c+=V;if(r>=a.P){r=0;if(++x>a.X)break;c+=P}}y||(a.Na=!0);B<a.P&&(a.qb.putImageData(a.Eb,0,0,B,F,L-B,I-F),a.qa.drawImage(a.lb,0,0,a.P,
a.X,0,0,a.Aa,a.Ka))}else{g=k;f=a.bb=0;e=Mm(a);k=a.C.rd;r=d=0;x=a.P;B=0;L=a.X;F=0;I=a.C.Pc[19]&15;for(V=a.Fb>a.P?a.Fb-a.P-I>>3:0;c<q;){y=c++-g;y=k[y];ua=8;I?d?(P=a.P-d,ua>P&&(ua=P)):(y<<=I,ua-=I,a.Na=!1):(a.Na&&y===a.ka[f]?(d+=ua,ua=0):a.ka[f]=y,f++);if(ua){d<x&&(x=d);for(P=0;P<ua;P++)X=im[y&-2139062144]||0,Pm(a.Eb,d++,r,e[X]),y<<=1;d>B&&(B=d);r<L&&(L=r);r>=F&&(F=r+1)}if(d>=a.P){d=0;if(++r>a.X)break;c+=V}}I||(a.Na=!0);x<a.P&&(a.qb.putImageData(a.Eb,0,0,x,L,B-x,F-L),a.qa.drawImage(a.lb,0,0,a.P,a.X,
0,0,L,I,F-L,V-I),a.qa.drawImage(a.lb,0,0,a.P,a.X,0,0,a.Aa,a.Ka))}else if(a.hf){g=k;e=a.bb=0;k=Mm(a,8);d=a.C.rd;x=r=0;B=a.P;L=0;F=a.X;I=0;V=a.C.Ee[4]&8?4:1;y=a.C.Qc[19]&15;for(P=a.Fb>a.P?a.Fb-a.P-y>>3:0;c<q;){f=d[c-g];X=4;y||(a.Na&&f===a.ka[e]?(r+=X,X=0):a.ka[e]=f,e++);if(X){r<B&&(B=r);for(ua=0;ua<X;ua++)Pm(a.Eb,r++,x,k[f&255]),f>>=8;r>L&&(L=r);x<F&&(F=x);x>=I&&(I=x+1)}c+=V;if(r>=a.P){r=0;if(++x>a.X)break;c+=P}}y||(a.Na=!0);B<a.P&&(a.qb.putImageData(a.Eb,0,0,B,F,L-B,I-F),a.qa.drawImage(a.lb,0,0,a.P,
a.X,0,0,a.Aa,a.Ka))}else{g=k;f=a.bb=0;e=Mm(a);k=a.C.rd;r=d=0;x=a.P;B=0;L=a.X;F=0;I=a.C.Qc[19]&15;for(V=a.Fb>a.P?a.Fb-a.P-I>>3:0;c<q;){y=c++-g;y=k[y];ua=8;I?d?(P=a.P-d,ua>P&&(ua=P)):(y<<=I,ua-=I,a.Na=!1):(a.Na&&y===a.ka[f]?(d+=ua,ua=0):a.ka[f]=y,f++);if(ua){d<x&&(x=d);for(P=0;P<ua;P++)X=im[y&-2139062144]||0,Pm(a.Eb,d++,r,e[X]),y<<=1;d>B&&(B=d);r<L&&(L=r);r>=F&&(F=r+1)}if(d>=a.P){d=0;if(++r>a.X)break;c+=V}}I||(a.Na=!0);x<a.P&&(a.qb.putImageData(a.Eb,0,0,x,L,B-x,F-L),a.qa.drawImage(a.lb,0,0,a.P,a.X,
0,0,a.Aa,a.Ka))}}}}function yn(a,b){var c=0,d=Wc(a.M)-b.sh;0>d&&(b.sh=d,d=-d|0);d%b.nh>b.Zl&&(c|=1);d%b.qh>b.am&&(c|=9);b.bi=d/b.qh|0;return c}h.vl=function(a,b){return zn(this,this.ya,a,b)};h.Mm=function(a,b,c){var d=this.ya;d.Eg=d.wc;d.wc=b&31;m(this,a,b,c,"CRTC.INDX")};h.ul=function(a,b){return An(this,this.ya,a,b)};h.Lm=function(a,b,c){Bn(this,this.ya,a,b,c)};h.wl=function(a,b){return Cn(this,this.ya,b)};h.Nm=function(a,b,c){a=this.ya;m(this,a.port+4,b,c,"MODE");a.ad=b;Km(this,!1)};
h.xl=function(a,b){return Dn(this,this.ya,b)};h.Tj=function(a,b,c){this.A.Wf=this.A.Wf&-4|b&3;m(this,a,b,c,"FEAT")};h.Xk=function(a,b){var c=this.A.Md;b&&!n(this)||m(this,960,null,b,"ATC.INDX",c);return c};h.wk=function(a,b){var c=this.A.Pc[this.A.Md&31];b&&!n(this)||m(this,960,null,b,"ATC."+this.A.Pg[this.A.Md&31],c);return c};
h.Sj=function(a,b,c){var d=this.A,e=d.Md&32;if(d.Qe){d.Qe=!1;var f=d.Md&31;if(16<=f||!e)c&&!n(this)||m(this,a,b,c,"ATC."+d.Pg[f]),d.Pc[f]=b,wn(this,!1)}else d.Md=b,m(this,a,b,c,"ATC.INDX"),d.Qe=!0,b&32&&!e&&Im(this,!0)&&Yc(this,!0),d.Of=(d.zb[12]<<8)+d.zb[13]|0,d.gf=0};h.Hl=function(a,b){var c=0;if(5==this.nb)c=3-((this.A.mf&12)>>2),c=(this.Qc&1<<c)<<4-c;else{var d=this.A.lf[0];45!=(d&63)&&2880!=(d&4032)&&184320!=(d&258048)&&(c|=16)}c|=this.A.Hg&-17;this.A.Hg=c;m(this,962,null,b,"STATUS0",c);return c};
h.xl=function(a,b){return Dn(this,this.ya,b)};h.Tj=function(a,b,c){this.A.Wf=this.A.Wf&-4|b&3;m(this,a,b,c,"FEAT")};h.Xk=function(a,b){var c=this.A.Md;b&&!n(this)||m(this,960,null,b,"ATC.INDX",c);return c};h.wk=function(a,b){var c=this.A.Qc[this.A.Md&31];b&&!n(this)||m(this,960,null,b,"ATC."+this.A.Pg[this.A.Md&31],c);return c};
h.Sj=function(a,b,c){var d=this.A,e=d.Md&32;if(d.Qe){d.Qe=!1;var f=d.Md&31;if(16<=f||!e)c&&!n(this)||m(this,a,b,c,"ATC."+d.Pg[f]),d.Qc[f]=b,wn(this,!1)}else d.Md=b,m(this,a,b,c,"ATC.INDX"),d.Qe=!0,b&32&&!e&&Im(this,!0)&&Yc(this,!0),d.Of=(d.zb[12]<<8)+d.zb[13]|0,d.gf=0};h.Hl=function(a,b){var c=0;if(5==this.nb)c=3-((this.A.mf&12)>>2),c=(this.Rc&1<<c)<<4-c;else{var d=this.A.lf[0];45!=(d&63)&&2880!=(d&4032)&&184320!=(d&258048)&&(c|=16)}c|=this.A.Hg&-17;this.A.Hg=c;m(this,962,null,b,"STATUS0",c);return c};
h.Om=function(a,b,c){this.A.mf=b;Hm(this);m(this,962,b,c,"MISC")};h.Il=function(a,b){var c=this.A.ii;m(this,963,null,b,"VGA_ENABLE",c);return c};h.Ym=function(a,b,c){this.A.ii=b;m(this,963,b,c,"VGA_ENABLE")};h.Gl=function(a,b){var c=this.A.ae;m(this,964,null,b,"SEQ.INDX",c);return c};h.Wm=function(a,b,c){this.A.ae=b;m(this,964,b,c,"SEQ.INDX")};h.Fl=function(a,b){var c=this.A.Ee[this.A.ae];b&&!n(this)||m(this,965,null,b,"SEQ."+this.A.Rg[this.A.ae],c);return c};
h.Vm=function(a,b,c){c&&!n(this)||m(this,965,b,c,"SEQ."+this.A.Rg[this.A.ae]);this.A.Ee[this.A.ae]=b;switch(this.A.ae){case 2:this.A.wb=hm[b&15];break;case 4:vn(this,un(this))}};h.il=function(a,b){var c=this.A.hi;b&&!n(this)||m(this,966,null,b,"DAC.MASK",c);return c};h.wm=function(a,b,c){c&&!n(this)||m(this,966,b,c,"DAC.MASK");this.A.hi=b};h.jl=function(a,b){var c=this.A.Fg;b&&!n(this)||m(this,967,null,b,"DAC.STATE",c);return c};
h.xm=function(a,b,c){c&&!n(this)||m(this,967,b,c,"DAC.READ");this.A.md=b;this.A.Fg=3;this.A.Dc=0};h.ym=function(a,b,c){c&&!n(this)||m(this,968,b,c,"DAC.WRITE");this.A.md=b;this.A.Fg=0;this.A.Dc=0};h.hl=function(a,b){var c=this.A.lf[this.A.md]>>this.A.Dc&63;b&&!n(this)||m(this,969,null,b,"DAC.DATA["+fa(this.A.md)+"]["+fa(this.A.Dc)+"]",c);this.A.Dc+=6;12<this.A.Dc&&(this.A.Dc=0,this.A.md=this.A.md+1&255);return c};
@ -1089,7 +1089,7 @@ bus:64,mem:128,port:256,dma:512,pic:1024,timer:2048,cmos:4096,rtc:8192,8042:1638
4100],[5,12420,4100],[120,12420,4100],[7,12420,4100],[154,12420,4100],[162,12420,4100],[24,4228,4100]],[[6,12420,4098],[99,12420,4098],[5,12420,4098],[120,12420,4098],[7,12420,4098],[154,12420,4098],[162,12420,4098],[24,4228,4098]],[[115,45185,4097],[116,45185,4097],[109,45185,4097],[110,45185,4097],[140,45185,4097],[142,45185,4097],Gp,[119,45185,4097]],[[115,45188,4097],[116,45188,4097],[109,45188,4097],[110,45188,4097],[140,45188,4097],[142,45188,4097],Gp,[119,45188,4097]],[[115,12417,4113],[116,
12417,4113],[109,12417,4113],[110,12417,4113],[140,12417,4113],[142,12417,4113],Gp,[119,12417,4113]],[[115,12420,4113],[116,12420,4113],[109,12420,4113],[110,12420,4113],[140,12420,4113],[142,12420,4113],Gp,[119,12420,4113]],[[115,12417,4449],[116,12417,4449],[109,12417,4449],[110,12417,4449],[140,12417,4449],[142,12417,4449],Gp,[119,12417,4449]],[[115,12420,4449],[116,12420,4449],[109,12420,4449],[110,12420,4449],[140,12420,4449],[142,12420,4449],Gp,[119,12420,4449]],[[155,4225,4097],Gp,[98,12417],
[96,12417],[95,4225],[42,12417],[32,4225],[41,12417]],[[155,4228,4100],Gp,[98,12420],[96,12420],[95,4228],[42,12420],[32,4228],[41,12420]],[[44,12417],[31,12417],Gp,Gp,Gp,Gp,Gp,Gp],[[44,12420],[31,12420],[17,4228],[17,4231],[57,4228],[57,4231],[108,4228],Gp],[],[[145,41091],[153,41091],[78,36995],[89,36995],[156,36995],[157,36995],Gp,Gp],[[139,41091],[144,41091],[75,36995],[77,36995],[146,41091],Gp,[79,36995],Gp],[Gp,Gp,Gp,Gp,[13,53380,4097],[16,57476,4097],[15,57476,4097],[14,57476,4097]]];h=qp.prototype;
h.Hc=function(a,b,c,d){this.ja=b;this.M=c;this.ha=a;this.jc=Eb(a,"FDC");this.Qb=Eb(a,"HDC");this.Wb=Eb(a,"FPU");this.Z=Eb(a,"Mouse");this.Ha=b.O>>2;this.Ea=b.sg;this.$b=new fd(this.M,8,"DBG");this.Oa=Ip;80186<=this.M.na&&(this.Oa=Ip.slice(),this.Oa[15]=Gp,80286<=this.M.na&&(this.Oa[15]=Hp,80386<=this.M.na&&(this.Pa=8)));jk(this,64,function(a){Mp(d,d.M.Lc,a[0])});jk(this,128,function(a){Mp(d,d.M.wa,a[0],d.M.wa!==d.M.Lc)});jk(this,4,function(a){if(a=a[0]){var b=Np(d,a);if(void 0===b)d.U("invalid selector: "+
h.Hc=function(a,b,c,d){this.ja=b;this.M=c;this.ha=a;this.jc=Eb(a,"FDC");this.Qb=Eb(a,"HDC");this.Wb=Eb(a,"FPU");this.Z=Eb(a,"Mouse");this.Ha=b.O>>2;this.Ea=b.sg;this.$b=new fd(this.M,7,"DBG");this.Oa=Ip;80186<=this.M.na&&(this.Oa=Ip.slice(),this.Oa[15]=Gp,80286<=this.M.na&&(this.Oa[15]=Hp,80386<=this.M.na&&(this.Pa=8)));jk(this,64,function(a){Mp(d,d.M.Lc,a[0])});jk(this,128,function(a){Mp(d,d.M.wa,a[0],d.M.wa!==d.M.Lc)});jk(this,4,function(a){if(a=a[0]){var b=Np(d,a);if(void 0===b)d.U("invalid selector: "+
a);else if(a=Op(d,b,2),d.U("dumpSel("+ga(a?a.ga:b)+"): %"+l(a?a.cc:null,d.Ha)),a){var c,b=!1;if(a.type&4096)a.type&2048?(c="code"+(a.type&512?",readable":",execonly"),a.type&1024&&(c+=",conforming")):(c="data"+(a.type&512?",writable":",readonly"),a.type&1024&&(c+=",expdown")),a.type&256&&(c+=",accessed");else{var k=Pp[a.type];k&&(c=k[0],b=k[1])}!c||a.Gb&32768||(c+=",not present");d.U((b?"seg="+ga(a.Ca&65535)+" off="+ga(a.ab):"base="+l(a.Ca,d.Ha)+" limit="+Qp(a.ab))+" type="+fa(a.type>>8)+" ("+c+") ext="+
ga(a.ext&-65296)+" dpl="+fa(a.Gc))}}else d.U("no selector")});jk(this,8,function(a){a:{if(a=a[0]){var b=Np(d,a);if(void 0===b){d.U("invalid task selector: "+a);break a}a=Op(d,b,2)}else a=d.M.Ya;d.U("dumpTSS("+ga(a?a.ga:b)+"): %"+l(a?a.Ca:null,d.Ha));if(a){var b="",c=a.type&-513,k=256==c?4:8,q=256==c?Rp:Sp,r,x,B,y;for(y in q)r=q[y],x=a.Ca+r,B=yf(d.M,x,2),2304==c&&(B|=yf(d.M,x+2,2)<<16),b&&(b+="\n"),b+=ga(r)+" "+na(y+":",11)+l(B,k);if(2304==c)for(y=0,r=B>>>16;r<a.gc&&1023>y;)x=a.Ca+r,B=yf(d.M,x,2),
b+="\n"+ga(r)+" ports "+ga(y)+"-"+ga(y+15)+": "+ea(B,2),y+=16,r+=2;d.U(b)}}});jk(this,134217728,function(a){var b;(a=a[0])&&(b=Np(d,a));if(void 0===b)d.U("invalid MCB");else for(d.U("dumpMCB("+ga(b)+")");b;){a=rp(d,0,b);var c=d.Xa(a,1),k=d.ua(a,2),q=d.ua(a,5);if(77!=c&&90!=c)break;d.U(Tp(0,b)+": '"+String.fromCharCode(c)+"' PID="+ga(k)+" LEN="+ga(q)+' "'+Up(d,a,8)+'"');b+=1+q}});this.R=null;this.xb=0;this.lb=!1;Ke(this.M,48,this.Rl.bind(this));Ke(this.M,65,this.Sl.bind(this));this.ta=null;Ke(this.M,