Fixed the signed truncation of 36-bit values (so that "-34,359,738,368. - 1" correctly produces "34359738367. aka 0o377777777777"), added the proper the right-to-left parsing of unary operators (all two of them: negate and complement), changed the PDP-10 disassembler to honor the selected base when displaying opcodes, and updated all the number-to-string conversions to select an appropriate number of digits when rendering values without a specified number of digits.

This commit is contained in:
Jeff 2017-03-20 13:34:25 -07:00 committed by Jeff Parsons
commit a6021441c3
13 changed files with 665 additions and 637 deletions

View file

@ -50,10 +50,10 @@ var la={163840:[40,1,8,,254],184320:[40,1,9,,252],327680:[40,2,8,,255],368640:[4
"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,ce:65,ti:66,ui:67,vi:68,E:69,wi:70,xi:71,yi:72,zi:73,Ai:74,Bi:75,Ci:76,Di:77,Ei:78,Fi:79,Gi:80,Q:81,Hi:82,Ii:83,Ji:84,Ki:85,Li:86,Mi:87,Ni:88,Oi:89,eg:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,de:97,vl:98,xl:99,d:100,e:101,Hl:102,Il:103,Jl:104,Kl:105,an:106,k:107,dn:108,hn:109,n:110,qn:111,p:112,q:113,r:114,No:115,t:116,Qo:117,Ro:118,So:119,x:120,
y:121,z:122,"{":123,"|":124,"}":125,"~":126,Mp:127},ma={};ma[173]=n["-"];ma[186]=n[";"];ma[187]=n["="];ma[189]=n["-"];ma[188]=n[","];ma[190]=n["."];ma[191]=n["/"];ma[192]=n["`"];ma[219]=n["["];ma[220]=n["\\"];ma[221]=n["]"];ma[222]=n["'"];var na={};na[n["1"]]=n["!"];na[n["2"]]=n["@"];na[n["3"]]=n["#"];na[n["4"]]=n.$;na[n["5"]]=n["%"];na[n["6"]]=n["^"];na[n["7"]]=n["&"];na[n["8"]]=n["*"];na[n["9"]]=n["("];na[n["0"]]=n[")"];na[186]=n[":"];na[187]=n["+"];na[188]=n["<"];na[189]=n._;na[190]=n[">"];
na[191]=n["?"];na[192]=n["~"];na[219]=n["{"];na[220]=n["|"];na[221]=n["}"];na[222]=n['"'];na[173]=n._;na[61]=n["+"];na[59]=n[":"];
function oa(a,b){var c;if(a){b||(b=10);var d=a.charAt(0),e=0<a.indexOf(",");e&&(a=a.replace(/,/g,""));"#"==d?(b=8,d=null):"$"==d&&(b=16,d=null);null==d?a=a.substr(1):("0"==d?(d=a.charAt(1),"b"==d&&e&&(b=2,d=null),"o"==d?(b=8,d=null):"x"==d&&(b=16,d=null)):"^"==d&&(d=a.charAt(1),"D"==d?(b=10,d=null):"O"==d?(b=8,d=null):"B"==d&&(b=2,d=null)),null==d?a=a.substr(2):(d=a.charAt(a.length-1).toLowerCase(),"y"==d?(b=2,d=null):"."==d?(b=10,d=null):"h"==d&&(b=16,d=null),null==d&&(a=a.substr(0,a.length-1))));
var f,d=0;if(e=a.match(/(-?[0-9]+)B([0-9]*)/))a=e[1],d=35-((e[2]||35)&255);var e=a,g=b;(g&&10!=g?16==g?e.match(/^-?[0-9a-f]+$/i):8==g?e.match(/^-?[0-7]+$/):2==g&&e.match(/^-?[01]+$/):e.match(/^-?[0-9]+$/))&&!isNaN(f=parseInt(a,b))&&(d&&(0>f&&(f+=Math.pow(2,36)),f=0<d?f*Math.pow(2,d):Math.trunc(f/Math.pow(2,-d))),c=f)}return c}
function pa(a,b,c,d){var e="";isNaN(a)?a=null:null!=a&&(0>a&&-1<a&&(a=-1),0>a&&(a+=Math.pow(b,c)),a>=Math.pow(b,c)&&(c=Math.ceil(Math.log(a)/Math.log(b))));if(null==a)for(;0<c--;)e="?"+e;else for(;0<c--;){var f=a%b,f=f+(0<=f&&9>=f?48:55),e=String.fromCharCode(f)+e;a=Math.trunc(a/b)}return(void 0===d?"":d)+e}function qa(a,b){var c,d="";b?32<b&&(b=32):b=32;for(var e=null==a||isNaN(a),f=c=c||b;0<b--;)f||(d=","+d,f=c),d=(e?"?":a&1?"1":"0")+d,a>>=1,f--;return d}
function ra(a,b,c){var d="";if(!b||4<b)b=4;for(var e=0;e<b;e++)d&&(d=","+d),d=qa(a&255,8)+d,a>>=8;return(c?"0b":"")+d}function sa(a,b,c){b?12<b&&(b=12):b=a&-16777216?12:a&-65536?8:6;return pa(a,8,b,c?"0o":"")}function q(a,b,c){b?9<b&&(b=9):b=a&-65536?8:4;return pa(a,16,b,c?"0x":"")}function r(a){return q(a,2,!0)}function ta(a){return q(a,4,!0)}
function oa(a,b){var c;if(a){b||(b=10);var d,e,f=0<a.indexOf(",");f&&(a=a.replace(/,/g,""));d=e=a.charAt(0);"#"==e?(b=8,e=""):"$"==e&&(b=16,e="");d!=e?a=a.substr(1):(d=e=a.substr(0,2),"0b"==e&&f||"^B"==e?(b=2,e=""):"0o"==e||"^O"==e?(b=8,e=""):"^D"==e?(b=10,e=""):"0x"==e&&(b=16,e=""),d!=e&&(a=a.substr(2)));d=e=a.slice(-1);"Y"==e||"y"==e?(b=2,e=""):"."==e?(b=10,e=""):"H"==e||"h"==e?(b=16,e=""):"K"==e?e="000":"M"==e?e="000000":"G"==e&&(e="000000000");d!=e&&(a=a.slice(0,-1)+e);var g;d=0;if(e=a.match(/(-?[0-9]+)B([0-9]*)/))a=
e[1],d=35-((e[2]||35)&255);e=a;((f=b)&&10!=f?16==f?e.match(/^-?[0-9a-f]+$/i):8==f?e.match(/^-?[0-7]+$/):2==f&&e.match(/^-?[01]+$/):e.match(/^-?[0-9]+$/))&&!isNaN(g=parseInt(a,b))&&(d&&(0>g&&(g+=Math.pow(2,36)),g=0<d?g*Math.pow(2,d):Math.trunc(g/Math.pow(2,-d))),c=g)}return c}
function pa(a,b,c,d,e){e=void 0===e?-1:e;var f="";isNaN(a)?a=null:null!=a&&(0>a&&-1<a&&(a=-1),0>a&&(a+=Math.pow(b,c)),a>=Math.pow(b,c)&&(c=Math.ceil(Math.log(a)/Math.log(b))));for(var g=e;0<c--;){g||(f=","+f,g=e);if(null==a)f="?"+f;else{var h=a%b,h=h+(0<=h&&9>=h?48:55),f=String.fromCharCode(h)+f;a=Math.trunc(a/b)}g--}return(void 0===d?"":d)+f}function qa(a,b){b?36<b&&(b=36):(b=Math.abs(a),b=255>=b?8:262143>=b?18:36);return pa(a,2,b,"",void 0)}
function ra(a,b,c){var d="";if(!b||4<b)b=4;for(var e=0;e<b;e++)d&&(d=","+d),d=qa(a&255,8)+d,a>>=8;return(c?"0b":"")+d}function sa(a,b,c){b?12<b&&(b=12):(b=Math.abs(a),b=262143>=b?6:16777215>=b?8:12);return pa(a,8,b,c?"0o":"")}function q(a,b,c){b?9<b&&(b=9):(b=Math.abs(a),b=65535>=b?4:4294967295>=b?8:9);return pa(a,16,b,c?"0x":"")}function r(a){return q(a,2,!0)}function ta(a){return q(a,4,!0)}
function va(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));d=c.indexOf("&");0<d&&(c=c.substr(0,d));b&&(d=c.lastIndexOf("."),0<d&&(c=c.substring(0,d)));return c}function wa(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}function xa(a,b){return-1!==a.indexOf(b,a.length-b.length)}function ya(a){return a.replace(/[&<>"']/g,function(a){return Aa[a]})}
function Ba(a,b,c){return c?(" "+a).slice(-b):(a+" ").slice(0,b)}function Ca(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}
var Aa={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"},Da={0:"NUL",1:"SOH",2:"STX",3:"ETX",4:"EOT",5:"ENQ",6:"ACK",7:"BEL",8:"BS",9:"TAB",10:"LF",11:"VT",12:"FF",13:"CR",14:"SO",15:"SI",16:"DLE",17:"XON",18:"DC2",19:"XOFF",20:"DC4",21:"NAK",22:"SYN",23:"ETB",24:"CAN",25:"EM",26:"SUB",27:"ESC",28:"FS",29:"GS",30:"RS",31:"US"};function Ea(a,b,c){var d=0,e=a.length,f=0;for(c||(c=function(a,b){return a>b?1:a<b?-1:0});d<e;){var g=d+e>>1,h;h=c(b,a[g]);0<h?d=g+1:(e=g,f=!h)}return f?d:~d}
@ -157,7 +157,7 @@ function Wd(a,b,c,d){void 0===c&&(c=!!(a.gc.qa&1));a.Oc=!1;if(c)if(a.load=a.qg,a
function ze(a){var b=+a.model||8088,c;switch(b){default:c=4772727;break;case 80286:c=6E6;break;case 80386:c=16E6}xd.call(this,a,c);this.ca=b;a=a.stepping;this.we=b+(a?oa(a,16):0);this.Ri=61442;this.Qd=1792;this.si=28672;this.Vf=4;this.Ta=255;this.B=80286<=this.ca?Qb:Pb;this.va=Ae;this.bj=Be;this.ij=Ce;this.nj=De;if(80186<=this.ca&&(this.va=Ae.slice(),this.bj=Be.slice(),this.ij=Ce.slice(),this.Ta=31,this.va[15]=Ee,this.va[96]=Fe,this.va[97]=Ge,this.va[98]=He,this.va[99]=Ee,this.va[100]=Ee,this.va[101]=
Ee,this.va[102]=Ee,this.va[103]=Ee,this.va[104]=Ie,this.va[105]=Je,this.va[106]=Ke,this.va[107]=Le,this.va[108]=Me,this.va[109]=Ne,this.va[110]=Oe,this.va[111]=Pe,this.va[192]=Qe,this.va[193]=Re,this.va[200]=Se,this.va[201]=Te,this.va[241]=Ue,this.bj[7]=Ve,this.ij[7]=Ve,80286<=this.ca)){this.Ri=2;this.Qd|=28672;this.Vf=0;this.va[15]=We;this.Pd=Xe.slice();for(b=0;b<this.Pd.length;b++)this.Pd[b]||(this.Pd[b]=Ye);this.va[84]=Ze;this.va[99]=$e;if(80386<=this.ca){var d;this.si=0;this.Qd|=196608;this.va[100]=
af;this.va[101]=bf;this.va[102]=ff;this.va[103]=gf;for(d in B)this.Pd[+d]=B[+d];80546<=this.we&&80562>=this.we&&(this.Pd[166]=hf,this.Pd[167]=jf)}}this.Yf=[];this.Zf=[];this.ag=0;Ad(this);this.ea.complete=this.ea.jj=!1;this.tj=0;this.sc=this.aa=[];this.hb=this.Ng=this.Db=this.Wf=this.df=this.ef=this.ed=0;kf(this)}ba(ze,xd);function lf(a,b,c,d){b=(d?a.sc:a.aa)[b>>>a.hb];c?--b.ie||od(b):--b.he||nd(b);d&&tc(a)}
function mf(a){var b;if(a.aa===a.sc){a.aa=Array(a.Wf);a.$f=new x(null,0,0,cd,null,a);nc(a.$f,a.ba);for(b=0;b<a.Wf;b++)a.aa[b]=a.$f;a.ff=new x;a.Zi=Array(sf);a.bg=0}else for(var c=0;c<a.Xf.length;c++){b=a.Xf[c];var d=a.aa[b];a.bg<sf&&(a.Zi[a.bg++]=d);a.aa[b]=a.$f}a.Xf=[]}function tc(a){a.qa&-2147483648&&mf(a)}
function mf(a){var b;if(a.aa===a.sc){a.aa=Array(a.Wf);a.$f=new x(null,0,0,cd,null,a);nc(a.$f,a.ba);for(b=0;b<a.Wf;b++)a.aa[b]=a.$f;a.ff=new x;a.Zi=Array(nf);a.bg=0}else for(var c=0;c<a.Xf.length;c++){b=a.Xf[c];var d=a.aa[b];a.bg<nf&&(a.Zi[a.bg++]=d);a.aa[b]=a.$f}a.Xf=[]}function tc(a){a.qa&-2147483648&&mf(a)}
function td(a,b,c,d){var e=(b&-4194304)>>>20,f=a.sc[(a.Wc+e&a.ef)>>>a.hb],g=f.Nd(e);if(!(g&1))return d||tf.call(a,b,!1,c),a.ff;if(!(g&4)&&3==a.Ma)return d||tf.call(a,b,!0,c),a.ff;var h=(b&4190208)>>>10,g=a.sc[((g&-4096)+h&a.ef)>>>a.hb],k=g.Nd(h);if(!(k&1))return d||tf.call(a,b,!1,c),a.ff;if(!(k&4)&&3==a.Ma)return d||tf.call(a,b,!0,c),a.ff;c=a.sc[((k&-4096)+(b&4095)&a.ef)>>>a.hb];if(d)return c;d=b>>>a.hb;k=a.aa[d];b&=-4096;var m;0<a.bg?(m=a.Zi[--a.bg],m.ih(b)):m=new x(b,0,0,ed);b=m;b.pd=c;b.ob=f;b.A=
e>>2;b.pb=g;b.B=h>>2;Ob&&Fc&&c.X&&!c.controller&&!c.he&&!c.ie?(b.Pa=c.Pa,b.Rd=c.Rd,b.X=c.X,Ac(b,wd)):(b.F=c?ud(32):0,b.J=c?ud(96):0,Ac(b,fd));nc(b,a.ba,k);a.aa[d]=b;a.Xf.push(d);return b}function uf(a){a.aa!==a.sc&&(a.aa=a.sc,a.$f=null,a.Xf=null,a.ff=null)}l=ze.prototype;l.reset=function(){this.ea.wb&&this.Jb();kf(this);Ad(this);this.ea.error=!1};
function vf(a,b){var c;switch(b){case 0:c=a.D;break;case 1:c=a.I;break;case 2:c=a.L;break;case 3:c=a.G;break;case 4:c=z(a);break;case 5:c=a.M;break;case 6:c=a.K;break;case 7:c=a.J}return c}function wf(a,b,c){switch(b){case 0:a.D=c;break;case 1:a.I=c;break;case 2:a.L=c;break;case 3:a.G=c;break;case 4:he(a,c);break;case 5:a.M=c;break;case 6:a.K=c;break;case 7:a.J=c}}
@ -176,7 +176,7 @@ function ge(a,b,c){var d=z(a);-1!==a.Y.load(b)&&(he(a,d),a.Y.Oc?(a.cg=a.Y.ua+a.Y
function ag(a,b){b=(a.da>>>0)+b;b>a.Pg&&(8088>=a.ca||a.Z.Ka==a.Z.wa?b=a.Z.ua+(b-a.Pg&a.R):y.call(a,13,0));return b|0}function bg(a){a.da=a.Bd}function z(a){return a.Hc&~a.Y.wa|a.Aa-a.Y.ua}function he(a,b){a.Hc=b;a.Aa=a.Y.ua+(b&a.Y.wa)|0}function cg(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&dg(a),g&2&&eg(a),g&4&&fg(a),g&8&&gg(a),g&16&&hg(a),g&32&&ig(a))}f?(a.ze=d,a.ye=b):(a.ze=b,a.ye=d);a.hf=c;a.Ae=d;a.resultType=e}
function jg(a,b,c,d,e){a.resultType=c|26;a.Ae=b;d?kg(a):lg(a);e?mg(a):ng(a);return b}function og(a,b,c,d){c&d?kg(a):lg(a);(b^c)&d?mg(a):ng(a)}function pg(a){return dg(a)?1:0}function dg(a){a.resultType&1&&(a.O&=-2,(a.ze^(a.ze^a.hf)&(a.hf^a.ye))&a.resultType&-2147450752&&(a.O|=1),a.resultType&=-2);return a.O&1}function eg(a){a.resultType&2&&(a.O&=-5,38505>>((a.Ae^a.Ae>>4)&15)&1&&(a.O|=4),a.resultType&=-3);return a.O&4}
function fg(a){a.resultType&4&&(a.O&=-17,(a.ye^a.ze^a.hf)&16&&(a.O|=16),a.resultType&=-5);return a.O&16}function gg(a){a.resultType&8&&(a.O&=-65,a.Ae&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.O|=64),a.resultType&=-9);return a.O&64}function hg(a){a.resultType&16&&(a.O&=-129,a.Ae&a.resultType&-2147450752&&(a.O|=128),a.resultType&=-17);return a.O&128}
function ig(a){a.resultType&32&&(a.O&=-2049,(a.ze^a.ye)&(a.hf^a.ye)&a.resultType&-2147450752&&(a.O|=2048),a.resultType&=-33);return a.O&2048}function lg(a){a.resultType&=-2;a.O&=-2}function qg(a){a.resultType&=-5;a.O&=-17}function rg(a){a.resultType&=-9;a.O&=-65}function ng(a){a.resultType&=-33;a.O&=-2049}function kg(a){a.resultType&=-2;a.O|=1}function sg(a){a.resultType&=-5;a.O|=16}function vg(a){a.resultType&=-9;a.O|=64}function mg(a){a.resultType&=-33;a.O|=2048}
function ig(a){a.resultType&32&&(a.O&=-2049,(a.ze^a.ye)&(a.hf^a.ye)&a.resultType&-2147450752&&(a.O|=2048),a.resultType&=-33);return a.O&2048}function lg(a){a.resultType&=-2;a.O&=-2}function qg(a){a.resultType&=-5;a.O&=-17}function rg(a){a.resultType&=-9;a.O&=-65}function ng(a){a.resultType&=-33;a.O&=-2049}function kg(a){a.resultType&=-2;a.O|=1}function sg(a){a.resultType&=-5;a.O|=16}function tg(a){a.resultType&=-9;a.O|=64}function mg(a){a.resultType&=-33;a.O|=2048}
function re(a){return a.O&-2262|dg(a)|eg(a)|fg(a)|gg(a)|hg(a)|ig(a)}function wg(a,b){b|=a.qa&1|65520;a.qa=a.qa&-65536|b&65535;a.qa&1&&je(a,!0)}function se(a,b,c){a.qa&1||(b&=~a.si);void 0===c&&(c=a.Ma);c?b=b&-12289|a.O&12288:a.lc=(b&12288)>>12;c>a.lc&&(b=b&-513|a.O&512);a.resultType=128;a.O=a.O&~(a.Qd|2261)|b&(a.Qd|2261)|a.Ri;a.O&256&&(a.Xa|=2,a.N|=4)}
function xg(a,b,c,d){var e=0;if(a.qa&1&&(a.Ma>a.lc||a.O&131072)&&a.la.Si)for(var f=a.la.Si+(b>>>3),e=(1<<c)-1<<(b&7);e&&f<=a.la.tl&&!(a.Ia(f)&e);)e>>>=8,f++;return e?(t(a,256)&&Mb(a,"checkIOPM("+ta(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),y.call(a,13,0),!1):!0}
l.Cb=function(a,b,c){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.na[b]=c;this.tj++;a=!0;break;default:a=xd.prototype.Cb.call(this,a,b,c)}return a};
@ -189,11 +189,11 @@ l.Ea=function(){var a=ag(this,this.W),b=this.jb(this.da);this.da=a;return b};l.S
function me(a,b,c,d){c=a.Aa-c|0;0>(c-a.gf|0)&&0<=(a.gf^c)&&(8088>=a.ca||!a.Y.Oc&&a.Y.Ka==a.Y.wa||a.Y.Oc&&!a.Y.Ka?(he(a,c-a.Y.ua&a.Y.wa),c=a.Aa):y.call(a,12,0));switch(d){case 1:a.fc(c,b);break;case 2:a.fb(c,b);break;case 4:a.bb(c,b)}a.Aa=c}function pe(a,b){var c=a.Aa-a.W|0;0>(c-a.gf|0)&&0<=(a.gf^c)&&(8088>=a.ca||!a.Y.Oc&&a.Y.Ka==a.Y.wa||a.Y.Oc&&!a.Y.Ka?(he(a,c-a.Y.ua&a.Y.wa),c=a.Aa):y.call(a,12,0));a.yb(c,b);a.Aa=c}
function Ig(a,b,c){var d=4;1==b.length&&(d=1,c=c?1:0);if(80386>a.ca)2<b.length&&(b=b.substr(1,2));else if("PS"==b||2<b.length)d=8;a.na[b]&&(void 0===c&&(Gb(a,"Value for "+b+" is invalid"),a.Jb()),d=!a.ea.wb||a.ea.kj?q(c,d):"--------".substr(0,d),a.na[b].textContent!=d&&(a.na[b].textContent=d))}
l.Lg=function(a){this.ea.complete=!0;var b=this.ea.jj=this.ba&&Jg(this.ba),c=a?this.ea.ni?0:1:-1;this.ea.ni=!1;this.zc=this.A=a;this.V&&!a&&Od(this.V);a||t(this,1024)||(this.N|=4);do{var d=this.N&3312;if(d)this.ha|=d;else if(this.Bd=this.da,this.Da=this.Ca,this.Rb=this.Y,this.C=this.F=-1,this.ha&3072&&Rf(this),this.ha=this.N&256,this.Xa){a:{if(!(this.N&4))for(var d=80286>this.ca?0:1,e=0;2>e;e++){switch(d){case 0:if(this.Xa&1&&this.O&512){var f=Kg(this.V);if(-1<=f&&(this.Xa&=-2,0<=f)){this.Xa&=-5;
Lg.call(this,f);d=!0;break a}}break;case 1:if(this.Xa&2){this.Xa&=-3;80386<=this.ca&&(this.Qb[6]|=16384);Lg.call(this,1);d=!0;break a}}d=1-d}d=!1}if(d&&!a){this.P("interrupt dispatched");this.N=0;break}if(this.Xa&4){this.N=this.A=0;break}}if(b){if(Mg(this.ba,this.da,c)){this.Jb();break}c=1}this.N=0;this.va[this.ra()].call(this)}while(0<this.A);return this.ea.complete?this.zc-this.A:void 0===this.ea.complete?0:-1};var sf=512;
Lg.call(this,f);d=!0;break a}}break;case 1:if(this.Xa&2){this.Xa&=-3;80386<=this.ca&&(this.Qb[6]|=16384);Lg.call(this,1);d=!0;break a}}d=1-d}d=!1}if(d&&!a){this.P("interrupt dispatched");this.N=0;break}if(this.Xa&4){this.N=this.A=0;break}}if(b){if(Mg(this.ba,this.da,c)){this.Jb();break}c=1}this.N=0;this.va[this.ra()].call(this)}while(0<this.A);return this.ea.complete?this.zc-this.A:void 0===this.ea.complete?0:-1};var nf=512;
ab(function(){for(var a=Ab(document,"pcx86","cpu"),b=0;b<a.length;b++){var c=a[b],d=wb(c),d=new ze(d);zb(d,c)}});
function Ng(a){nb.call(this,"FPU",a);this.ca=a.model||8087;this.F=new Float64Array(8);this.L=new Int32Array(this.F.buffer);this.Z=new Float32Array(1);this.ha=new Int32Array(this.Z.buffer);this.K=new Float64Array(1);this.G=new Int32Array(this.K.buffer);this.D=Array(3);this.M=this.N=-1;this.I=this.J=this.O=this.A=0;this.Y=new Float64Array(1);this.aa=new Int32Array(this.Y.buffer);this.aa[0]=0;this.aa[1]=268402688;$g(this);this.ga=Ng.prototype.mi;this.da=Ng.prototype.bl}ba(Ng,nb);l=Ng.prototype;
l.uc=function(a,b,c){this.H=c;this.V=Xb(a,"ChipSet");Jb(this)};l.Xb=function(a,b){if(!b)if(!a||!this.restore)$g(this);else if(!this.restore(a))return!1;return!0};l.Wb=function(a){return a?this.save():!0};l.save=function(){var a=new Xf(this),b=[],c=0;b[c++]=this.Zb;b[c++]=ah(this);b[c++]=bh(this);for(var d=0;d<this.F.length;d++)b[c++]=this.F[d];a.set(0,b);return a.data()};
l.restore=function(a){a=a[0];var b=0;this.Zb=a[b++]&-57409;var c=a[b++];this.fa=c&-14337;this.B=(c&14336)>>11;ch(this);dh(this,a[b++]);for(c=0;c<this.F.length;c++)this.F[c]=a[b++];return!0};function $g(a){a.C=0;a.Zb=959;a.fa=0;a.B=0;a.V&&(a=a.V,a.ca>=eh&&fh(a,gh))}function ch(a){a.fa&=-129;a.fa&~a.Zb&63&&(a.fa|=128);if(a.fa&128&&!(a.Zb&128))return a=a.V,a.ca>=eh?hh(a,gh):a.da&ih||Lg.call(a.H,2),!0;a=a.V;a.ca>=eh&&fh(a,gh);return!1}function jh(a,b){80387<=a.ca||(b&=-65);a.fa|=b;return ch(a)}
function Ng(a){nb.call(this,"FPU",a);this.ca=a.model||8087;this.F=new Float64Array(8);this.L=new Int32Array(this.F.buffer);this.Z=new Float32Array(1);this.ha=new Int32Array(this.Z.buffer);this.K=new Float64Array(1);this.G=new Int32Array(this.K.buffer);this.D=Array(3);this.M=this.N=-1;this.I=this.J=this.O=this.A=0;this.Y=new Float64Array(1);this.aa=new Int32Array(this.Y.buffer);this.aa[0]=0;this.aa[1]=268402688;Og(this);this.ga=Ng.prototype.mi;this.da=Ng.prototype.bl}ba(Ng,nb);l=Ng.prototype;
l.uc=function(a,b,c){this.H=c;this.V=Xb(a,"ChipSet");Jb(this)};l.Xb=function(a,b){if(!b)if(!a||!this.restore)Og(this);else if(!this.restore(a))return!1;return!0};l.Wb=function(a){return a?this.save():!0};l.save=function(){var a=new Xf(this),b=[],c=0;b[c++]=this.Zb;b[c++]=ah(this);b[c++]=bh(this);for(var d=0;d<this.F.length;d++)b[c++]=this.F[d];a.set(0,b);return a.data()};
l.restore=function(a){a=a[0];var b=0;this.Zb=a[b++]&-57409;var c=a[b++];this.fa=c&-14337;this.B=(c&14336)>>11;ch(this);dh(this,a[b++]);for(c=0;c<this.F.length;c++)this.F[c]=a[b++];return!0};function Og(a){a.C=0;a.Zb=959;a.fa=0;a.B=0;a.V&&(a=a.V,a.ca>=eh&&fh(a,gh))}function ch(a){a.fa&=-129;a.fa&~a.Zb&63&&(a.fa|=128);if(a.fa&128&&!(a.Zb&128))return a=a.V,a.ca>=eh?hh(a,gh):a.da&ih||Lg.call(a.H,2),!0;a=a.V;a.ca>=eh&&fh(a,gh);return!1}function jh(a,b){80387<=a.ca||(b&=-65);a.fa|=b;return ch(a)}
function ah(a){return a.fa|a.B<<11}function kh(a,b){return isFinite(b)?!0:!jh(a,Infinity===b?8:16)}function lh(a,b,c){var d=null;null!=b&&null!=c&&(d=b+c,kh(a,d)||(d=null));return d}function mh(a,b,c){var d=null;null!=b&&null!=c&&(d=b-c,kh(a,d)||(d=null));return d}function nh(a,b,c){var d=null;null!=b&&null!=c&&(d=b*c,kh(a,d)||(d=null));return d}function oh(a,b,c){var d=null;null==b||null==c||!c&&jh(a,2)||(d=b/c,kh(a,d)||(d=null));return d}
function ph(a,b,c){if(null!=b&&null!=c){var d=0;isNaN(b)||isNaN(c)?d=17664:(b-=c,0>b?d=256:b||(d=16384));a.fa=a.fa&-18177|d;return!0}return!1}function qh(a,b,c){if(null==b)return null;var d=a.Zb&3072;d?d=1024==d||3072==d&&0<b?Math.floor(b):Math.ceil(b):(d=Math.round(b),.5===d-b&&d%2&&d--);if(c){if(d>=c){if(jh(a,1))return null;d=-c}else if(d<-c){if(jh(a,1))return null;d=-c}a.G[0]=d|0;2147483648<c&&(a.G[1]=d/4294967296|0,!a.G[1]&&0>d&&(a.G[1]=-1))}return d}
function rh(a,b){var c=3;a.C&1<<b&&(a=a.F[b],c=0,a?isFinite(a)||(c=2):c=1);return c}function bh(a){for(var b=0,c=a.F.length-1;0<=c;c--)b<<=2,b|=rh(a,c);return b}function dh(a,b){a.C=0;for(var c=1;128>=c;c<<=1)3!=(b&3)&&(a.C|=c),b>>=2}function sh(a){var b=a.B+0&7;return a.C&1<<b?(a.Z[0]=a.F[b],!0):jh(a,1)?!1:(a.Z[0]=a.Y[0],!0)}function th(a){var b=a.B+0&7;return a.C&1<<b?(a.K[0]=a.F[b],!0):jh(a,1)?!1:(a.K[0]=a.Y[0],!0)}
@ -203,7 +203,7 @@ function vh(a,b,c){var d=c>>20&2047,e=2147483648|(c&1048575)<<11|b>>>21;2047==d?
function Gh(a,b){if(null!=b){var c=a.B-1&7,d=1<<c;if(a.C&d&&(a.fa|=512,jh(a,65)))return;if(isNaN(b)&&jh(a,1)){if(jh(a,1))return;b=NaN}a.F[a.B=c]=b;a.C|=d}}
function Hh(a,b){var c,d=a.H;c=d.jb(b);a.Zb=c&-57409;c=d.jb(b+=d.W);a.fa=c&-14337;a.B=(c&14336)>>11;ch(a);dh(a,d.jb(b+=d.W));!(d.qa&1)||d.O&131072?(a.I=d.jb(b+=d.W),c=d.jb(b+=d.W),a.O=c&2047,a.I|=(c&-4096)<<4,a.M=-1,a.J=d.jb(b+=d.W),a.J|=(d.jb(b+=d.W)&-4096)<<4,a.N=-1):(a.I=d.jb(b+=d.W),c=d.jb(b+=d.W),a.M=c&65535,a.O=c>>16&2047,a.J=d.jb(b+=d.W),a.N=d.jb(b+=d.W)&65535);return b+d.W}
function Ih(a,b){var c=a.H;c.yb(b,a.Zb);c.yb(b+=c.W,ah(a));c.yb(b+=c.W,bh(a));if(!(c.qa&1)||c.O&131072){var d=(a.M<<4)+a.I;c.yb(b+=c.W,d);c.yb(b+=c.W,d>>4&-4096|a.O);d=(a.N<<4)+a.J;c.yb(b+=c.W,d);c.yb(b+=c.W,d>>4&-4096)}else c.yb(b+=c.W,a.I),c.yb(b+=c.W,a.M|a.O<<16),c.yb(b+=c.W,a.J),c.yb(b+=c.W,a.N);return b+c.W}function Jh(){this.fa&=-32896;ch(this)}function Kh(){ph(this,M(this,0),M(this,this.A))}function Lh(){ph(this,M(this,0),M(this,this.A))&&Fh(this)}function Mh(){Lh.call(this)}
function Nh(){N(this,0,oh(this,M(this,0),yh(this)))}function Oh(){this.C&=~(1<<this.B)}function Ph(){$g(this)}function Qh(){this.Zb=this.H.ja(this.H.C)&-57409}function Rh(){Hh(this,this.H.C)}function Sh(){for(var a=this.H,b=Hh(this,a.C),c=this.D,d=0;d<this.F.length;d++)c[0]=a.ia(b),c[1]=a.ia(b+=4),c[2]=a.ja(b+=4),c&&N(this,d,Ch(this,c)),b+=2}function Th(){for(var a=this.H,b=Ih(this,a.C),c=0;c<this.F.length;c++){var d=uh(this,c,!0);a.bb(b,d[0]);a.bb(b+=4,d[1]);a.fb(b+=4,d[2]);b+=2}$g(this)}
function Nh(){N(this,0,oh(this,M(this,0),yh(this)))}function Oh(){this.C&=~(1<<this.B)}function Ph(){Og(this)}function Qh(){this.Zb=this.H.ja(this.H.C)&-57409}function Rh(){Hh(this,this.H.C)}function Sh(){for(var a=this.H,b=Hh(this,a.C),c=this.D,d=0;d<this.F.length;d++)c[0]=a.ia(b),c[1]=a.ia(b+=4),c[2]=a.ja(b+=4),c&&N(this,d,Ch(this,c)),b+=2}function Th(){for(var a=this.H,b=Ih(this,a.C),c=0;c<this.F.length;c++){var d=uh(this,c,!0);a.bb(b,d[0]);a.bb(b+=4,d[1]);a.fb(b+=4,d[2]);b+=2}Og(this)}
function Uh(){Ih(this,this.H.C);this.Zb|=63}function Vh(){N(this,this.A,M(this,0))&&Fh(this)}function Wh(){Vh.call(this)}function Xh(){this.H.fb(this.H.C,this.Zb)}function Yh(){this.H.fb(this.H.C,ah(this))}function Zh(){80287<=this.ca&&(this.H.D=this.H.D&-65536|ah(this))}function $h(){var a=M(this,0);N(this,0,M(this,this.A));N(this,this.A,a)}function ai(){$h.call(this)}
var bi=Math.log(10)/Math.LN2,ci=Math.LOG2E,di=Math.PI,ei=Math.log(2)/Math.LN10,fi=Math.LN2,gi=Math.pow(2,63),hi={216:{0:function(){N(this,0,lh(this,M(this,0),yh(this)))},1:function(){N(this,0,nh(this,M(this,0),yh(this)))},2:function(){ph(this,M(this,0),yh(this))},3:function(){ph(this,M(this,0),yh(this))&&Fh(this)},4:function(){N(this,0,mh(this,M(this,0),yh(this)))},5:function(){N(this,0,mh(this,yh(this),M(this,0)))},6:Nh,7:Nh,48:function(){N(this,0,lh(this,M(this,0),M(this,this.A)))},49:function(){N(this,
0,nh(this,M(this,0),M(this,this.A)))},50:Kh,51:Lh,52:function(){N(this,0,mh(this,M(this,0),M(this,this.A)))},53:function(){N(this,0,mh(this,M(this,this.A),M(this,0)))},54:function(){N(this,0,oh(this,M(this,0),M(this,this.A)))},55:function(){N(this,0,oh(this,M(this,this.A),M(this,0)))}},217:{0:function(){Gh(this,yh(this))},2:function(){sh(this)&&this.ga()},3:function(){sh(this)&&(this.ga(),Fh(this))},4:Rh,5:Qh,6:Uh,7:Xh,48:function(){Gh(this,M(this,this.A))},49:$h,50:function(){},51:Wh,64:function(){N(this,
@ -218,18 +218,18 @@ this.A,oh(this,M(this,this.A),M(this,0)))}},221:{0:function(){Gh(this,zh(this))}
54:function(){N(this,this.A,oh(this,M(this,0),M(this,this.A)))&&Fh(this)},55:function(){N(this,this.A,oh(this,M(this,this.A),M(this,0)))&&Fh(this)}},223:{0:function(){Gh(this,wh(this))},2:function(){null!=qh(this,M(this,0),32768)&&this.H.fb(this.H.C,this.G[0])},3:function(){null!=qh(this,M(this,0),32768)&&(this.H.fb(this.H.C,this.G[0]),Fh(this))},4:function(){var a=Ah(this),b=Dh(a[0],8)+1E8*Dh(a[1],8)+1E16*Dh(a[2],2);a[2]&32768&&(b=-b);Gh(this,b)},5:function(){var a;a=this.H.ia(this.H.C);a=4294967296*
this.H.ia(this.H.C+4)+(a>>>0);Gh(this,a)},6:function(){var a=qh(this,Fh(this));null!=a&&(this.D[0]=Eh(a,8),this.D[1]=Eh(a/1E8,8),this.D[2]=Eh(a/1E16,2),0>a&&(this.D[2]|=32768),Bh(this))},7:function(){null!=qh(this,M(this,0),gi)&&(this.bl(),Fh(this))},48:function(){Oh.call(this);Fh(this)},49:ai,50:Wh,51:Wh,52:Zh}},ii=[Jh,Ph,Qh,Rh,Sh,Th,Xh,Uh,Yh,Zh];ab(function(){for(var a=Ab(document,"pcx86","fpu"),b=0;b<a.length;b++){var c=a[b],d=wb(c),d=new Ng(d);zb(d,c)}});
function ji(a,b){var c=a+b+pg(this)|0;cg(this,a,b,c,191);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Ib:this.B.Ac;return c&255}function ki(a,b){var c=a+b+pg(this)|0;cg(this,a,b,c,this.Fb|63);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Ib:this.B.Ac;return c&this.R}function li(a,b){var c=a+b|0;cg(this,a,b,c,191);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Ib:this.B.Ac;return c&255}
function mi(a,b){var c=a+b|0;cg(this,a,b,c,this.Fb|63);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Ib:this.B.Ac;return c&this.R}function ni(a,b){a&=b;jg(this,a,128);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Ib:this.B.Ac;return a}function oi(a,b){this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Ib:this.B.Ac;return jg(this,a&b,this.Fb)&this.R}function pi(a,b){this.A-=10+(-1===this.C?0:1);if((a&3)<(b&3))return a=a&-4|b&3,vg(this),a;rg(this);return a}
function qi(a){if(-1===this.C)return y.call(this,6),a;var b=a,c=this.jb(this.C),d=this.jb(this.C+this.W);2==this.W&&(b=a<<16>>16,c=c<<16>>16,d=d<<16>>16);this.A-=this.B.Ij;(b<c||b>d)&&y.call(this,5);this.N|=2;return a}function ri(a,b){var c=0;if(b){rg(this);for(var d=1;d&this.R;){if(b&d){a=c;break}d<<=1;c++}}else vg(this);this.A-=11+3*c;return a}function si(a,b){var c=0;if(b){rg(this);for(var d=2==this.W?15:31,e=1<<d;e;){if(b&e){a=d;break}e>>>=1;c++;d--}}else vg(this);this.A-=11+3*c;return a}
function mi(a,b){var c=a+b|0;cg(this,a,b,c,this.Fb|63);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Ib:this.B.Ac;return c&this.R}function ni(a,b){a&=b;jg(this,a,128);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Ib:this.B.Ac;return a}function oi(a,b){this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Ib:this.B.Ac;return jg(this,a&b,this.Fb)&this.R}function pi(a,b){this.A-=10+(-1===this.C?0:1);if((a&3)<(b&3))return a=a&-4|b&3,tg(this),a;rg(this);return a}
function qi(a){if(-1===this.C)return y.call(this,6),a;var b=a,c=this.jb(this.C),d=this.jb(this.C+this.W);2==this.W&&(b=a<<16>>16,c=c<<16>>16,d=d<<16>>16);this.A-=this.B.Ij;(b<c||b>d)&&y.call(this,5);this.N|=2;return a}function ri(a,b){var c=0;if(b){rg(this);for(var d=1;d&this.R;){if(b&d){a=c;break}d<<=1;c++}}else tg(this);this.A-=11+3*c;return a}function si(a,b){var c=0;if(b){rg(this);for(var d=2==this.W?15:31,e=1<<d;e;){if(b&e){a=d;break}e>>>=1;c++;d--}}else tg(this);this.A-=11+3*c;return a}
function ti(a,b){a&1<<(b&(2==this.W?15:31))?kg(this):lg(this);this.A-=-1===this.C?3:6;this.N|=2;return a}function ui(a,b){b=1<<(b&(2==this.W?15:31));a&b?kg(this):lg(this);this.A-=-1===this.C?6:8;return a^b}function vi(a,b){b=1<<(b&(2==this.W?15:31));a&b?kg(this):lg(this);this.A-=-1===this.C?6:8;return a&~b}function wi(a,b){b=1<<(b&(2==this.W?15:31));a&b?kg(this):lg(this);this.A-=-1===this.C?6:8;return a|b}
function xi(a,b){if(-1===this.C)return ti.call(this,a,b);var c=this.W<<3;if(b>=c||b<-c)a=Bg(this,this.ab,this.lb+(b>>(2==this.W?4:5))*this.W);b=1<<(b&(2==this.W?15:31));a&b?kg(this):lg(this);this.A-=6;this.N|=2;return a}function yi(a,b){if(-1===this.C)return ui.call(this,a,b);var c=this.W<<3;if(b>=c||b<-c)a=Bg(this,this.ab,this.lb+(b>>(2==this.W?4:5))*this.W);b=1<<(b&(2==this.W?15:31));a&b?kg(this):lg(this);this.A-=8;return a^b}
function zi(a,b){if(-1===this.C)return vi.call(this,a,b);var c=this.W<<3;if(b>=c||b<-c)a=Bg(this,this.ab,this.lb+(b>>(2==this.W?4:5))*this.W);b=1<<(b&(2==this.W?15:31));a&b?kg(this):lg(this);this.A-=8;return a&~b}function Ai(a,b){if(-1===this.C)return wi.call(this,a,b);var c=this.W<<3;if(b>=c||b<-c)a=Bg(this,this.ab,this.lb+(b>>(2==this.W?4:5))*this.W);b=1<<(b&(2==this.W?15:31));a&b?kg(this):lg(this);this.A-=8;return a|b}
function Bi(a,b){cg(this,a,b,a-b|0,191,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Ah:this.B.Ib;this.N|=2;return a}function Ci(a,b){cg(this,a,b,a-b|0,this.Fb|63,!0);this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Ah:this.B.Ib;this.N|=2;return a}
function Di(a){if(this.Tc){var b=this.Tc,c=this.sj,d=this.ga,e=d>>3&7;b.A=d&7;var f=(3>(d>>6&3)?0:48)+e;(217==c||219==c)&&52<=f&&(f=e<<4|b.A);if(e=hi[c][f]){if(0>ii.indexOf(e)){var f=b.H,g=f.Bd;8087==b.ca&&(f.ha&16&&g++,f.ha&32&&g++);b.M=f.Z.U;b.I=g-f.Z.ua;-1!==f.C&&(b.N=f.ab.U,b.J=f.C-f.ab.ua);b.O=(c&7)<<8|d}e.call(b)}}this.A-=-1===this.C?2:8;return a}function Ei(a){if(80186>this.ca)return Fi.call(this,a);y.call(this,13,0);return a}function Ve(a){y.call(this,6);return a}
function Fi(a){Ye.call(this);return a}function Gi(a,b){a=Hi.call(this,this.S(),b);80386>this.ca&&(this.A-=12);return a}function Ii(a,b){a=this.Ea();a=2==this.W?Hi.call(this,a,b):Ji.call(this,a,b);80386>this.ca&&(this.A-=12);return a}function Ki(a,b){var c=!1;0>b&&(b=-b|0,c=!c);0>a&&(a=-a|0,c=!c);Li.call(this,a,b);c&&(this.Ba=~this.Ba+1|0,this.Ya=~this.Ya+(this.Ba?0:1)|0)}
function Hi(a,b){a=(a<<16>>16)*(b<<16>>16)|0;32767<a||-32768>a?(kg(this),mg(this)):(lg(this),ng(this));this.A-=-1===this.C?9:12;return a&65535}function Ji(a,b){Ki.call(this,a,b);this.Ya!=this.Ba>>31?(kg(this),mg(this)):(lg(this),ng(this));this.A-=-1===this.C?9:12;return this.Ba}function Mi(a,b){this.A-=14+(-1===this.C?0:2);rg(this);-1!==this.xb.load(b)&&this.xb.qc>=this.Ma&&this.xb.qc>=(b&3)&&(vg(this),a=this.xb.mb&-256,2<this.W&&(a|=(this.xb.ext&-65281)<<16));return a}
function Hi(a,b){a=(a<<16>>16)*(b<<16>>16)|0;32767<a||-32768>a?(kg(this),mg(this)):(lg(this),ng(this));this.A-=-1===this.C?9:12;return a&65535}function Ji(a,b){Ki.call(this,a,b);this.Ya!=this.Ba>>31?(kg(this),mg(this)):(lg(this),ng(this));this.A-=-1===this.C?9:12;return this.Ba}function Mi(a,b){this.A-=14+(-1===this.C?0:2);rg(this);-1!==this.xb.load(b)&&this.xb.qc>=this.Ma&&this.xb.qc>=(b&3)&&(tg(this),a=this.xb.mb&-256,2<this.W&&(a|=(this.xb.ext&-65281)<<16));return a}
function Ni(a,b){if(-1===this.C)return Ye.call(this),a;ne(this,this.ja(this.C+this.W));this.A-=this.B.Xe;return b}function Oi(){this.A-=this.B.kk;return this.C}function Pi(a,b){if(-1===this.C)return Ye.call(this),a;oe(this,this.ja(this.C+this.W));this.A-=this.B.Xe;return b}function Qi(a,b){if(-1===this.C)return Ye.call(this),a;a=this.ja(this.C+this.W);this.Ga.load(a);this.A-=this.B.Xe;return b}
function Ri(a,b){if(-1===this.C)return Ye.call(this),a;a=this.ja(this.C+this.W);this.Ha.load(a);this.A-=this.B.Xe;return b}function Si(a,b){this.A-=14+(-1===this.C?0:2);if(b&65528&&-1!==this.xb.load(b)&&(7168==(this.xb.mb&7168)||this.xb.qc>=this.Ma)&&this.xb.qc>=(b&3))return vg(this),this.xb.Ka;rg(this);return a}function Ti(a,b){if(-1===this.C)return Ye.call(this),a;ge(this,this.ja(this.C+this.W));this.A-=this.B.Xe;return b}
function Ui(a,b){this.A-=-1===this.F?-1===this.C?this.B.sk:this.B.rk:this.B.pk;return b}function ej(a,b){switch(this.ga>>3&7){case 4:this.xa=this.D;break;case 5:this.xa=this.I;break;case 6:this.xa=this.L;break;case 7:this.xa=this.G}return b}function fj(a,b){return b}
function Ri(a,b){if(-1===this.C)return Ye.call(this),a;a=this.ja(this.C+this.W);this.Ha.load(a);this.A-=this.B.Xe;return b}function Si(a,b){this.A-=14+(-1===this.C?0:2);if(b&65528&&-1!==this.xb.load(b)&&(7168==(this.xb.mb&7168)||this.xb.qc>=this.Ma)&&this.xb.qc>=(b&3))return tg(this),this.xb.Ka;rg(this);return a}function Ti(a,b){if(-1===this.C)return Ye.call(this),a;ge(this,this.ja(this.C+this.W));this.A-=this.B.Xe;return b}
function Ui(a,b){this.A-=-1===this.F?-1===this.C?this.B.sk:this.B.rk:this.B.pk;return b}function Vi(a,b){switch(this.ga>>3&7){case 4:this.xa=this.D;break;case 5:this.xa=this.I;break;case 6:this.xa=this.L;break;case 7:this.xa=this.G}return b}function fj(a,b){return b}
function gj(a,b){a=this.ga>>3&7;switch(a){case 0:this.xa=this.D;break;case 2:this.xa=this.L;break;case 3:this.xa=this.G;break;default:if(80286==this.ca||80386==this.ca&&4!=a&&5!=a)y.call(this,6);else switch(a){case 1:this.xa=this.I;break;case 4:this.xa=z(this);break;case 5:this.xa=this.M;break;case 6:this.xa=this.K;break;case 7:this.xa=this.J}}return Ui.call(this,0,b)}
function hj(a,b){switch(this.ga>>3&7){case 0:b=this.oa.U;break;case 1:b=this.Z.U;break;case 2:b=this.Y.U;break;case 3:b=this.Ca.U;break;case 4:if(80386<=this.ca){b=this.Ga.U;break}y.call(this,6);b=a;break;case 5:if(80386<=this.ca){b=this.Ha.U;break}default:y.call(this,6),b=a}-1!==this.F&&ke(this,2);return Ui.call(this,0,b)}
function Li(a,b){if(a&-65536||b&-65536){var c=b&65535;b>>>=16;var d=a&65535;a>>>=16;var e=c*d,d=(e>>>16)+b*d,f=d>>>16,d=(d&65535)+c*a;this.Ba=d<<16|e&65535;this.Ya=f+((d>>>16)+b*a)|0}else this.Ba=a*b|0,this.Ya=0}function ij(a,b){this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Ib:this.B.Ac;return jg(this,a|b,128)}function jj(a,b){this.A-=-1===this.F?-1===this.C?this.B.mc:this.B.Ib:this.B.Ac;return jg(this,a|b,this.Fb)&this.R}
@ -363,7 +363,7 @@ Tk,this.Ea);this.A-=-1===this.F?1:this.B.yg},Ek,function(){this.ib.call(this,Tk,
this.I=this.xa;Zf(this,a);break;case 2:a=this.L;this.L=this.xa;ge(this,a);break;case 3:a=this.G;this.G=this.xa;ne(this,a);break;case 4:a=z(this);he(this,this.xa);80386<=this.ca?this.Ga.load(a):oe(this,a);break;case 5:a=this.M;this.M=this.xa;80386<=this.ca?this.Ha.load(a):Zf(this,a);break;case 6:a=this.K;this.K=this.xa;ge(this,a);break;case 7:a=this.J,this.J=this.xa,ne(this,a)}},function(){this.N|=1;this.ta=this.Aa;this.xa=fe(this);this.ib.call(this,Uk,hk);this.ta=-1},function(){this.A-=3},function(){var a=
this.D;this.D=this.D&~this.R|this.I&this.R;this.I=this.I&~this.R|a&this.R;this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.L&this.R;this.L=this.L&~this.R|a&this.R;this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.G&this.R;this.G=this.G&~this.R|a&this.R;this.A-=3},function(){var a=this.D,b=z(this);this.D=this.D&~this.R|b&this.R;he(this,b&~this.R|a&this.R);this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.M&this.R;this.M=this.M&~this.R|a&this.R;this.A-=3},function(){var a=
this.D;this.D=this.D&~this.R|this.K&this.R;this.K=this.K&~this.R|a&this.R;this.A-=3},function(){var a=this.D;this.D=this.D&~this.R|this.J&this.R;this.J=this.J&~this.R|a&this.R;this.A-=3},function(){this.D=2==this.W?this.D&-65536|this.D<<24>>24&65535:this.D<<16>>16;this.A-=2},function(){this.L=2==this.W?this.L&-65536|(this.D&32768?65535:0):this.D&-2147483648?-1:0;this.A-=this.B.Kj},function(){ik.call(this,this.Ea(),Hg(this));this.A-=this.B.Nj},function(){this.A-=3},function(){var a=re(this);a&131072&&
3>this.lc?y.call(this,13,0):(pe(this,a&-196609),this.A-=this.B.Ic)},function(){if(this.O&131072&&3>this.lc)y.call(this,13,0);else{var a=fe(this),a=a&65535|this.O&-65536;se(this,a);this.A-=this.B.nc}},function(){var a=this.D>>8&255;a&1?kg(this):lg(this);a&4?(this.resultType&=-3,this.O|=4):(this.resultType&=-3,this.O&=-5);a&16?sg(this):qg(this);a&64?vg(this):rg(this);a&128?(this.resultType&=-17,this.O|=128):(this.resultType&=-17,this.O&=-129);this.A-=this.B.Vb},function(){this.D=this.D&-65281|(re(this)&
3>this.lc?y.call(this,13,0):(pe(this,a&-196609),this.A-=this.B.Ic)},function(){if(this.O&131072&&3>this.lc)y.call(this,13,0);else{var a=fe(this),a=a&65535|this.O&-65536;se(this,a);this.A-=this.B.nc}},function(){var a=this.D>>8&255;a&1?kg(this):lg(this);a&4?(this.resultType&=-3,this.O|=4):(this.resultType&=-3,this.O&=-5);a&16?sg(this):qg(this);a&64?tg(this):rg(this);a&128?(this.resultType&=-17,this.O|=128):(this.resultType&=-17,this.O&=-129);this.A-=this.B.Vb},function(){this.D=this.D&-65281|(re(this)&
213)<<8;this.A-=this.B.Vb},function(){var a=this.D&-256,b;b=J(this);b=this.Ia(this.Da.bc(b,1));this.D=a|b;this.A-=this.B.Kh},function(){this.D=this.D&~this.R|le(this,this.Da,J(this));this.A-=this.B.Kh},function(){var a=J(this),b=this.D;this.fc(this.Da.cc(a,1),b);this.A-=this.B.Lh},function(){var a=J(this),b=this.D;this.yb(this.Da.cc(a,this.W),b);this.A-=this.B.Lh},function(){var a=1,b=0,c=this.wa,d=this.B.Mh;this.ha&192&&(a=this.I&c,b=1,d=this.B.Oh,this.ha&256||(this.A-=this.B.Nh));if(a--){var e=
this.Ia(this.Da.bc(this.K&c,1));this.fc(this.oa.cc(this.J&c,1),e);e=this.O&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d;this.I=this.I&~c|this.I-b&c;a&&(bg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.Mh;this.ha&192&&(a=this.I&c,b=1,d=this.B.Oh,this.ha&256||(this.A-=this.B.Nh));if(a--){var e=le(this,this.Da,this.K&c);this.yb(this.oa.cc(this.J&c,this.W),e);e=this.O&1024?-this.W:this.W;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d;
this.I=this.I&~c|this.I-b&c;a&&(bg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.xh;this.ha&192&&(a=this.I&c,b=1,d=this.B.zh,this.ha&256||(this.A-=this.B.yh));if(a--){var e=zg(this,this.Da,this.K),f=zg(this,this.oa,this.J);this.F=this.C;Bi.call(this,e,f);e=this.O&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Ib;a&&gg(this)==(this.ha&64)&&(bg(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.B.xh;this.ha&192&&
@ -411,13 +411,13 @@ B[145]=function(){ck.call(this,mj)};B[146]=function(){ck.call(this,nj)};B[147]=f
B[159]=function(){ck.call(this,Aj)};B[160]=function(){me(this,this.Ga.U,this.W,2);this.A-=this.B.re};B[161]=function(){this.ta=this.Aa;var a=fe(this);this.Ga.load(a);this.A-=this.B.nc;this.ta=-1};B[163]=function(){this.za.call(this,xi);-1!==this.C&&(this.A-=6)};B[164]=function(){this.za.call(this,2==this.W?Bj:Dj);this.A-=-1===this.C?3:7};B[165]=function(){this.za.call(this,2==this.W?Fj:Gj);this.A-=-1===this.C?3:7};B[168]=function(){me(this,this.Ha.U,this.W,2);this.A-=this.B.re};
B[169]=function(){this.ta=this.Aa;var a=fe(this);this.Ha.load(a);this.A-=this.B.nc;this.ta=-1};B[171]=function(){this.za.call(this,Ai);-1!==this.C&&(this.A-=5)};B[172]=function(){this.za.call(this,2==this.W?Hj:Jj);this.A-=-1===this.C?3:7};B[173]=function(){this.za.call(this,2==this.W?Lj:Mj);this.A-=-1===this.C?3:7};B[175]=function(){this.ma.call(this,2==this.W?Hi:Ji)};B[178]=function(){this.ma.call(this,Ti)};B[179]=function(){this.za.call(this,zi);-1!==this.C&&(this.A-=5)};
B[180]=function(){this.ma.call(this,Qi)};B[181]=function(){this.ma.call(this,Ri)};
B[182]=function(){this.kc.call(this,ej);switch(this.ga>>3&7){case 0:this.D=this.D&~this.R|this.D&255;break;case 1:this.I=this.I&~this.R|this.I&255;break;case 2:this.L=this.L&~this.R|this.L&255;break;case 3:this.G=this.G&~this.R|this.G&255;break;case 4:this.Hc=this.Hc&~this.R|this.D>>8&255;this.D=this.xa;break;case 5:this.M=this.M&~this.R|this.I>>8&255;this.I=this.xa;break;case 6:this.K=this.K&~this.R|this.L>>8&255;this.L=this.xa;break;case 7:this.J=this.J&~this.R|this.G>>8&255,this.G=this.xa}this.A-=
B[182]=function(){this.kc.call(this,Vi);switch(this.ga>>3&7){case 0:this.D=this.D&~this.R|this.D&255;break;case 1:this.I=this.I&~this.R|this.I&255;break;case 2:this.L=this.L&~this.R|this.L&255;break;case 3:this.G=this.G&~this.R|this.G&255;break;case 4:this.Hc=this.Hc&~this.R|this.D>>8&255;this.D=this.xa;break;case 5:this.M=this.M&~this.R|this.I>>8&255;this.I=this.xa;break;case 6:this.K=this.K&~this.R|this.L>>8&255;this.L=this.xa;break;case 7:this.J=this.J&~this.R|this.G>>8&255,this.G=this.xa}this.A-=
-1===this.C?3:6};B[183]=function(){ke(this,2);this.ma.call(this,fj);switch(this.ga>>3&7){case 0:this.D=this.D&65535;break;case 1:this.I=this.I&65535;break;case 2:this.L=this.L&65535;break;case 3:this.G=this.G&65535;break;case 4:this.Hc=this.Hc&65535;break;case 5:this.M=this.M&65535;break;case 6:this.K=this.K&65535;break;case 7:this.J=this.J&65535}this.A-=-1===this.C?3:6};B[186]=function(){this.ib.call(this,$k,this.ra)};B[187]=function(){this.za.call(this,yi);-1!==this.C&&(this.A-=5)};
B[188]=function(){this.ma.call(this,ri)};B[189]=function(){this.ma.call(this,si)};
B[190]=function(){this.kc.call(this,ej);switch(this.ga>>3&7){case 0:this.D=this.D&~this.R|(this.D&255)<<24>>24&this.R;break;case 1:this.I=this.I&~this.R|(this.I&255)<<24>>24&this.R;break;case 2:this.L=this.L&~this.R|(this.L&255)<<24>>24&this.R;break;case 3:this.G=this.G&~this.R|(this.G&255)<<24>>24&this.R;break;case 4:this.Hc=this.Hc&~this.R|this.D<<16>>24&this.R;this.D=this.xa;break;case 5:this.M=this.M&~this.R|this.I<<16>>24&this.R;this.I=this.xa;break;case 6:this.K=this.K&~this.R|this.L<<16>>24&
B[190]=function(){this.kc.call(this,Vi);switch(this.ga>>3&7){case 0:this.D=this.D&~this.R|(this.D&255)<<24>>24&this.R;break;case 1:this.I=this.I&~this.R|(this.I&255)<<24>>24&this.R;break;case 2:this.L=this.L&~this.R|(this.L&255)<<24>>24&this.R;break;case 3:this.G=this.G&~this.R|(this.G&255)<<24>>24&this.R;break;case 4:this.Hc=this.Hc&~this.R|this.D<<16>>24&this.R;this.D=this.xa;break;case 5:this.M=this.M&~this.R|this.I<<16>>24&this.R;this.I=this.xa;break;case 6:this.K=this.K&~this.R|this.L<<16>>24&
this.R;this.L=this.xa;break;case 7:this.J=this.J&~this.R|this.G<<16>>24&this.R,this.G=this.xa}this.A-=-1===this.C?3:6};B[191]=function(){ke(this,2);this.ma.call(this,fj);switch(this.ga>>3&7){case 0:this.D=this.D<<16>>16;break;case 1:this.I=this.I<<16>>16;break;case 2:this.L=this.L<<16>>16;break;case 3:this.G=this.G<<16>>16;break;case 4:this.Hc=this.Hc<<16>>16;break;case 5:this.M=this.M<<16>>16;break;case 6:this.K=this.K<<16>>16;break;case 7:this.J=this.J<<16>>16}this.A-=-1===this.C?3:6};
var Wf=[function(){this.A-=2+(-1===this.C?0:1);return this.Eb.U},function(){this.A-=2+(-1===this.C?0:1);return this.la.U},function(a){this.N|=2;this.Eb.load(a);this.A-=17+(-1===this.C?0:2);return a},function(a){this.N|=2;-1!==this.la.load(a)&&(this.fb(this.la.Lb+4,this.la.mb|=512),this.la.type|=512);this.A-=17+(-1===this.C?0:2);return a},function(a){this.N|=2;this.A-=14+(-1===this.C?0:2);if(-1!==this.xb.load(a)&&2048!=(this.xb.mb&2560)&&(this.xb.qc>=this.Ma&&this.xb.qc>=(a&3)||7168==(this.xb.mb&7168)))return vg(this),
a;rg(this);return a},function(a){this.N|=2;this.A-=14+(-1===this.C?0:2);if(-1!==this.xb.load(a)&&512==(this.xb.mb&2560)&&this.xb.qc>=this.Ma&&this.xb.qc>=(a&3))return vg(this),a;rg(this);return a},Fi,Fi],De=[Ve,Ve,Ve,Ve,Ve,Ve,Fi,Fi],Zk=[function(a){if(-1===this.C)y.call(this,6);else{a=this.Pc-this.Kb;var b=this.Kb;80286==this.ca?b|=-16777216:80386<=this.ca&&2!=this.W&&(a|=b<<16);this.bb(this.C+2,b);this.A-=11}return a},function(a){if(-1===this.C)y.call(this,6);else{a=this.cd-this.Pb;var b=this.Pb;
var Wf=[function(){this.A-=2+(-1===this.C?0:1);return this.Eb.U},function(){this.A-=2+(-1===this.C?0:1);return this.la.U},function(a){this.N|=2;this.Eb.load(a);this.A-=17+(-1===this.C?0:2);return a},function(a){this.N|=2;-1!==this.la.load(a)&&(this.fb(this.la.Lb+4,this.la.mb|=512),this.la.type|=512);this.A-=17+(-1===this.C?0:2);return a},function(a){this.N|=2;this.A-=14+(-1===this.C?0:2);if(-1!==this.xb.load(a)&&2048!=(this.xb.mb&2560)&&(this.xb.qc>=this.Ma&&this.xb.qc>=(a&3)||7168==(this.xb.mb&7168)))return tg(this),
a;rg(this);return a},function(a){this.N|=2;this.A-=14+(-1===this.C?0:2);if(-1!==this.xb.load(a)&&512==(this.xb.mb&2560)&&this.xb.qc>=this.Ma&&this.xb.qc>=(a&3))return tg(this),a;rg(this);return a},Fi,Fi],De=[Ve,Ve,Ve,Ve,Ve,Ve,Fi,Fi],Zk=[function(a){if(-1===this.C)y.call(this,6);else{a=this.Pc-this.Kb;var b=this.Kb;80286==this.ca?b|=-16777216:80386<=this.ca&&2!=this.W&&(a|=b<<16);this.bb(this.C+2,b);this.A-=11}return a},function(a){if(-1===this.C)y.call(this,6);else{a=this.cd-this.Pb;var b=this.Pb;
80286==this.ca?b|=-16777216:80386<=this.ca&&2!=this.W&&(a|=b<<16);this.bb(this.C+2,b);this.A-=12}return a},function(a){-1===this.C||this.O&131072?y.call(this,6):(this.Kb=this.ia(this.C+2)&(this.R|this.R<<8),a&=65535,this.Pc=this.Kb+a,this.N|=2,this.A-=11);return a},function(a){-1===this.C||this.O&131072?y.call(this,6):(this.Pb=this.ia(this.C+2)&(this.R|this.R<<8),a&=65535,this.cd=this.Pb+a,this.N|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.C?0:1);return this.qa},Fi,function(a){this.O&
131072?y.call(this,6):(wg(this,a),this.A-=-1===this.C?3:6,this.N|=2);return a},Fi],$k=[Fi,Fi,Fi,Fi,ti,wi,vi,ui];
function al(a){nb.call(this,"ChipSet",a,32768);var b=a.model;b&&!bl[b]&&hb("Unrecognized ChipSet model: "+b);this.ca=bl[b]||cl;this.C=[];b=dl(a[el]);this.C[0]=[b,b];null==b&&(this.N=[360,360],(b=a.floppies)&&b.length&&(this.N=b),fl(this,gl,this.N.length),fl(this,hl,a.monitor||(this.ca<eh?"mono":"ega")));b=dl(a[il]);this.C[1]=[b,b];this.za=this.ha=1;this.ca>=eh&&(this.za=this.ha=2);this.O=a.scaleTimers||!1;this.Ma=a.rtcDate;this.Ga=!1;a.sound&&(this.Da=this.la=null,window&&(this.Da=window.AudioContext||
@ -466,7 +466,7 @@ l.Vl=function(a,b){var c=this.J&~(zp|Ap)|(Ed(this.H)&64?Ap:0);w(this,a,null,b,"8
l.un=function(a,b,c){w(this,a,b,c,"8042_INBUFF.CMD",null,16384);this.L=b;this.D|=np;a=0;this.L>=Bp&&(a=this.L^15,this.L=Bp);switch(this.L){case Cp:yp(this,this.K);break;case Dp:pp(this,this.K|Ol);break;case Ep:pp(this,this.K&~Ol);this.B&&mp(this.B);break;case Fp:this.B&&(a=this.B,a.A=[],t(a)&&Mb(a,"scan codes flushed"));pp(this,this.K|Ol);yp(this,Gp);rp(this,Yl|Zl);break;case Hp:yp(this,Ip);break;case Jp:yp(this,this.M);break;case Kp:yp(this,this.qa);break;case Lp:yp(this,this.K&Ol?0:Mp);break;case Bp:a&
1&&kf(this.H)}};function pp(a,b){a.K=b;a.D=a.D&~Np|b&Op;a.B&&fp(a.B,!!(b&Pp),!(b&Ol))}function yp(a,b,c){0<=b&&(a.oa=b,c?a.D|=kp:(a.D&=~kp,a.D|=lp))}function rp(a,b){a.qa=b;oc(a.ka,!!(b&Zl));b&Yl||kf(a.H)}function Qp(a,b){a.ca<eh?(hh(a,Rp,4),a.aa|=kp):a.K&Ol||a.D&(kp|lp)||(yp(a,b,!0),Sp(a.B),hh(a,Rp,120))}function Tp(a,b,c,d){var e=a.C[b][1];w(a,c,null,d,"DIPSW-"+b,e,32768);return e}l.jm=function(a,b){w(this,a,null,b,"CMOS.ADDR",this.V,4096);return this.V};
l.Kn=function(a,b,c){w(this,a,b,c,"CMOS.ADDR",null,4096);this.V=b;this.da=b&Up?ih:Vp};l.km=function(a,b){var c=this.V&Wp,d=c<=Dl?El(this,c):this.A[c];t(this,4352)&&w(this,a,null,b,"CMOS.DATA["+r(c)+"]",d,!0);null!=b&&c==Pm&&(this.A[c]&=Xp,d&Uo&&fh(this,Vo),d&To&&this.A[Rd]&Td&&Tm(this));return d};
l.Ln=function(a,b,c){var d=this.V&Wp;t(this,4352)&&w(this,a,b,c,"CMOS.DATA["+r(d)+"]",null,!0);a=b^this.A[d];if(d<=Dl){if(c=b,d<Nm){var e=!1;this.A[Rd]&Rm||(c=10*(c>>4)+(c&15),e=!0);if(d==pm||d==Hm)e&&23<c&&(c+=48),this.A[Rd]&Om||(12>=c?c=12==c?0:c:(c-=116,c=24==c?12:c))}}else c=b;this.A[d]=c;d==Rd&&a&Td&&b&Td&&Tm(this)};l.Nk=function(a,b,c){w(this,a,b,c,"NMI");this.da=b};l.Vn=function(a,b,c){w(this,a,b,c,"FPU.CLEAR")};l.Wn=function(a,b,c){w(this,a,b,c,"FPU.RESET");this.Tc&&$g(this.Tc)};
l.Ln=function(a,b,c){var d=this.V&Wp;t(this,4352)&&w(this,a,b,c,"CMOS.DATA["+r(d)+"]",null,!0);a=b^this.A[d];if(d<=Dl){if(c=b,d<Nm){var e=!1;this.A[Rd]&Rm||(c=10*(c>>4)+(c&15),e=!0);if(d==pm||d==Hm)e&&23<c&&(c+=48),this.A[Rd]&Om||(12>=c?c=12==c?0:c:(c-=116,c=24==c?12:c))}}else c=b;this.A[d]=c;d==Rd&&a&Td&&b&Td&&Tm(this)};l.Nk=function(a,b,c){w(this,a,b,c,"NMI");this.da=b};l.Vn=function(a,b,c){w(this,a,b,c,"FPU.CLEAR")};l.Wn=function(a,b,c){w(this,a,b,c,"FPU.RESET");this.Tc&&Og(this.Tc)};
l.Xm=function(a){if(t(this,16)&&Wk(this.ba,26,a)){var b=this.H.D>>8;Tf(this.H,a,function(a,d){return function(c){d=Ed(a.H)-d;var e,g=a.H.L&255,h=a.H.L>>8,k=a.H.L&255,m=a.H.L>>8;if(2==b||3==b)e=" CH(hour)="+ta(h)+" CL(min)="+r(g)+" DH(sec)="+r(m);else if(4==b||5==b)e=" CX(year)="+ta(a.H.I)+" DH(month)="+r(m)+" DL(day)="+r(k);g=a.ba;h=d;g.message("INT "+r(26)+": C="+(dg(g.H)?1:0)+(e||"")+" (cycles="+h+(c?",level="+(c+1):"")+")")}}(this,Ed(this.H)))}return!0};
function Vm(a,b){if(a.la)try{void 0!==b?a.Ga=b:b=!!(a.Ga&&a.H&&a.H.ea.wb);var c=Math.round(ol/vo(a,wo));if(20>c||2E4<c)b=!1;b?a.I?(a.I.frequency.value=c,t(a,33554432)&&Mb(a,"speaker set to "+c+"hz",!0)):(a.I=a.la.createOscillator(),a.I&&(a.I.type="number"==typeof a.I.type?1:"square",a.I.connect(a.la.destination),a.I.frequency.value=c,"start"in a.I?a.I.start(0):a.I.noteOn(0),t(a,33554432)&&Mb(a,"speaker on at "+c+"hz",!0))):a.I&&("stop"in a.I?a.I.stop(0):a.I.noteOff(0),a.I.disconnect(),delete a.I,
t(a,33554432)&&Mb(a,"speaker off at "+c+"hz",!0))}catch(d){a.Fa("AudioContext exception: "+d.message),a.la=null}else b&&Mb(a,"BEEP",33554432)}var kl=5150,cl=5150.9,eh=5170,ll=5160.101,xl=5180,bl={5150:kl,5160:5160,5170:eh,att6300:ll,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:cl};bl.deskpro386=xl;
@ -561,7 +561,7 @@ function Qs(a,b){if(1==b)return a.ha[0]=Rs[Ls],a.ha[1]=Rs[Js],a.ha;if(2==b){var
(c.Cc[20]&12)<<4,c.Cc[16]&128&&(f&=-49,f|=(c.Cc[20]&3)<<4),f=d[f],g=f<<2&252,h=f>>4&252,f=f>>10&252):(g=(f&4?170:0)|(f&32?85:0),h=(f&2?170:0)|(f&16?85:0),f=(f&1?170:0)|(f&8?85:0)),a.ha[e]=[g,h,f,255]}a.Ga=!0}return a.ha}function cq(a,b,c,d){a.lb=b;a.Ta=c;a.Da=d}
function Gs(a,b){var c=!1;if(window&&a.lb&&(!b||a.I)){b=0;var d=a.Da?a.Da:8,e=Qs(a);null!=a.Ta[0]&&Vs(a,Ws,a.Ta[0],b,d,8,a.lb,e)&&(c=!0);b=a.Da?0:2048;d=a.Da?a.Da:9;null!=a.Ta[1]&&(Vs(a,Xs,a.Ta[1],b,d,14,a.lb,Ys,Zs)&&(c=!0),a.Da&&Vs(a,a.La,a.Ta[1],0,a.Da,14,a.lb,e)&&(c=!0))}return c}function Vs(a,b,c,d,e,f,g,h,k){var m=!1;null!=c&&($s(a,b,c,d,e,f,g,h,k)&&(m=!0),a.Cd&&$s(a,b<<1,c,d,e,f,g,h,k)&&(m=!0));return m}
function $s(a,b,c,d,e,f,g,h,k){var m=!1,p=b&1?0:1,v=a.va[b],u=16>h.length?h.length:16;v||(v={Fc:e<<p,Gc:f<<p,Be:Array(u),Qi:h.slice(0,u),jf:k,Sg:Array(u)});for(k=0;k<u;k++){var E=h[k],K=v.Be[k]?v.Qi[k]:[];if(E[0]!==K[0]||E[1]!==K[1]||E[2]!==K[2]){var m=v,K=k,H=p,I=c,T=d,L=e,ua=f,ca=g,xb=[0,0,0,0],za=document.createElement("canvas");za.width=m.Fc<<4;za.height=m.Gc<<4;var cb=za.getContext("2d"),Sa,rb,db,rc=8>ua||!T?ua:8,ib=cb.createImageData(m.Fc,m.Gc);for(Sa=0;256>Sa;Sa++){for(db=0;db<ua;db++)for(var cf=
m.jf&&K&1&&db>=ua-2,Ld=ca[db<rc?I+Sa*rc+db:T+Sa*rc+db-rc],df=0;df<=H;df++)for(rb=0;rb<L;rb++){var tg=rb<<H,ef=(db<<H)+df,ug=cf||Ld&128>>(8<=rb&&192<=Sa&&223>=Sa?7:rb)?E:xb;at(ib,tg,ef,ug);H&&at(ib,tg+1,ef,ug)}cb.putImageData(ib,(Sa&15)*m.Fc,(Sa>>4)*m.Gc)}m.Be[K]="#"+q(E[0],2)+q(E[1],2)+q(E[2],2);m.Qi[K]=E;m.Sg[K]=za;m=!0}}a.va[b]=v;return m}function bt(a){0<a.xa||0<=a.aa?0>a.Aa&&(a.Aa=0):a.Aa=-1}
m.jf&&K&1&&db>=ua-2,Ld=ca[db<rc?I+Sa*rc+db:T+Sa*rc+db-rc],df=0;df<=H;df++)for(rb=0;rb<L;rb++){var ug=rb<<H,ef=(db<<H)+df,vg=cf||Ld&128>>(8<=rb&&192<=Sa&&223>=Sa?7:rb)?E:xb;at(ib,ug,ef,vg);H&&at(ib,ug+1,ef,vg)}cb.putImageData(ib,(Sa&15)*m.Fc,(Sa>>4)*m.Gc)}m.Be[K]="#"+q(E[0],2)+q(E[1],2)+q(E[2],2);m.Qi[K]=E;m.Sg[K]=za;m=!0}}a.va[b]=v;return m}function bt(a){0<a.xa||0<=a.aa?0>a.Aa&&(a.Aa=0):a.Aa=-1}
function Ps(a){if(a.I){for(var b=10;15>=b;b++)if(null==a.C.Wa[b])return;var c=a.C.Wa[10],b=c&31,d=a.C.Wa[11]&31,e=a.C.Wa[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)ct(a);else{c=a.C.Wa[15]+((a.C.Wa[14]&63)<<8);a.aa!=c&&(ct(a),a.aa=c);d=d-b+1;if(a.md!=b||a.Hc!=d)a.md=b,a.Hc=d;a.za=e+1;bt(a)}}}
function ct(a){if(0<=a.aa){if(void 0!==a.M){var b=dt<<8,c=a.M[a.aa];if(c&b){var c=c&~b,b=a.aa%a.F,d=a.aa/a.F|0;a.I&&a.va[a.I]&&(a.Ca&&et(a,b,d,c,a.Ca),et(a,b,d,c));a.M[a.aa]=c}}a.aa=-1}}
function ft(a){var b,c=a.C;a.Pc=!1;var d=c.xd[5];if(null!=d){b=ur;var e=wr,f=c.xd[3]&31;switch(d&3){case 0:if(f){e=wr|32;switch(f&24){case 8:e=wr|96;break;case 16:e=wr|160;break;case 24:e=wr|224}c.Qc=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.La==dq&&(e=3,c.Qc=f&7)}d&8&&(b=1280);c=c.$d[4];null!=c&&(c&4||(b|=vr,e|=xr),d&64&&(c&8&&(b|=16384,e|=4),a.Pc=!0));b|=e}return b}
@ -714,30 +714,31 @@ function lx(a,b){if(a.errorCode)return-1;do{if(a.eb&&a.sa.write(a.eb,a.Sa++,b))b
var Tw="Hard Drive",Ww=["XTC","ATC","COMPAQ"],Uw=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966,
6],19:[1023,8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}],Mw=496,px=1,sx=0,jx=16,rx=3,qx=15,mx=16,ix=1,hx=8,gx=16,Qw=64,ex=128,vx=16,wx=32,xx=48,yx=64,zx=
112,tx=144,Ax=145,ux=240,Bx=2,ox=4,Hx=0,Ix=2,Lx=0,Mx=1,Dx=3,Nx=5,Ox=8,Qx=10,ax=12,Sx=15,Jx=224,Kx=228,Sw=0,Fx=4,Ux=20,Rw=0,bx=1,Yw=2,Zw=4,$w=8,Xw=32,Jw={800:Hw.prototype.Tm,801:Hw.prototype.Um,802:Hw.prototype.Sm},Iw={496:Hw.prototype.nl,497:Hw.prototype.$l,498:Hw.prototype.bm,499:Hw.prototype.cm,500:Hw.prototype.Yl,501:Hw.prototype.Xl,502:Hw.prototype.Zl,503:Hw.prototype.dm},Lw={800:Hw.prototype.ro,801:Hw.prototype.uo,802:Hw.prototype.to,803:Hw.prototype.so,807:Hw.prototype.hi,811:Hw.prototype.hi,
815:Hw.prototype.hi},Kw={496:Hw.prototype.An,497:Hw.prototype.Fn,498:Hw.prototype.Dn,499:Hw.prototype.En,500:Hw.prototype.zn,501:Hw.prototype.yn,502:Hw.prototype.Bn,503:Hw.prototype.xn,1014:Hw.prototype.Cn};ab(function(){for(var a=Ab(document,"pcx86","hdc"),b=0;b<a.length;b++){var c=a[b],d=wb(c),d=new Hw(d);zb(d,c)}});function Wx(a){nb.call(this,"Debugger",a);this.L=+a.base||16;this.Ha=null;this.qa=["{","}"];this.Aa=["[","]"];this.Y=this.ha=this.M=0;this.da=!1;this.A=-1;this.C=[];this.ga={}}
815:Hw.prototype.hi},Kw={496:Hw.prototype.An,497:Hw.prototype.Fn,498:Hw.prototype.Dn,499:Hw.prototype.En,500:Hw.prototype.zn,501:Hw.prototype.yn,502:Hw.prototype.Bn,503:Hw.prototype.xn,1014:Hw.prototype.Cn};ab(function(){for(var a=Ab(document,"pcx86","hdc"),b=0;b<a.length;b++){var c=a[b],d=wb(c),d=new Hw(d);zb(d,c)}});function Wx(a){nb.call(this,"Debugger",a);this.F=+a.base||16;this.Ha=null;this.qa=["{","}"];this.Aa=["[","]"];this.Y=this.ha=this.M=0;this.da=!1;this.A=-1;this.C=[];this.ga={}}
ba(Wx,nb);Wx.prototype.gh=function(){return-1};Wx.prototype.hh=function(){};Wx.prototype.Pk=function(a,b){return a.replace("["+b+"]","unimplemented")};
Wx.prototype.Cg=function(a,b,c){if(b)if(a){0>this.A&&this.C.length&&(this.A=0);if(0>this.A||a!=this.C[this.A])this.C.splice(0,0,a),this.A=0;this.A--}else this.da?a="end":a=this.C[this.A+1];b=[];if(a){a=a.replace(/""/g,"'");var d=0,e=null;c=c||";";for(var f=0;f<=a.length;f++){var g=a.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==c&&!e||!g)b.push(Ca(a.substring(d,f))),d=f+1}}return b};
function Xx(a,b,c){var d=a;b=b||32;if(c)if(32==b)d=a>>>0;else if(32>b)d=a&(1<<b)-1;else{if(b=Math.pow(2,b),0>a||a>=b)d=a%b,0>d&&(d+=b)}else 32>=b?d=a|0:(b=Math.pow(2,b-1),a<-b?d=a%b:a>=2*b&&(d=a%(2*b)));a!=d&&(a=d);return a}
function Xx(a,b,c){var d=a;b=b||32;if(c)if(32==b)d=a>>>0;else if(32>b)d=a&(1<<b)-1;else{if(b=Math.pow(2,b),0>a||a>=b)d=a%b,0>d&&(d+=b)}else 32>=b?d=a|0:(b=Math.pow(2,b-1),a<-b?(a<2*-b&&(d=a%(2*b)),d+=2*b):d>=b&&(a>=2*b&&(d=a%(2*b)),d-=2*b));a!=d&&(a=d);return a}
function Yx(a,b,c){for(c=void 0===c?-1:c;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e,f=a.pop();e=a.pop();switch(d){case "*":e*=f;break;case "/":if(!f)return!1;e=Math.trunc(e/f);break;case "%":if(!f)return!1;e%=f;break;case "+":e+=f;break;case "-":e-=f;break;case "<<":e<<=f;break;case ">>":e>>=f;break;case ">>>":e>>>=f;break;case "<":e=e<f?1:0;break;case "<=":e=e<=f?1:0;break;case ">":e=e>f?1:0;break;case ">=":e=e>=f?1:0;break;case "==":e=e==f?1:0;break;case "!=":e=e!=f?1:0;break;case "&":e&=
f;break;case "!":case "|":e|=f;break;case "^!":e|=f;break;case "&&":e=e&&f?1:0;break;case "||":e=e||f?1:0;break;case "_":case "^_":"^_"==d&&(f=35-(f&255));f&&(e=Xx(e,0,!0),e=0<f?e*Math.pow(2,f):Math.trunc(e/Math.pow(2,-f)));break;default:return!1}a.push(Xx(e))}return!0}
function Zx(a,b,c,d,e,f){var g,h,k,m=!1,p=0,v=[],u=[],E=a.L;for(a.L=e;c<d;){h=b[c++].trim();k=c<d?b[c++]:"";if(h)p=$x(a,h,null,f,p);else if("{"==k){h=1;for(p=c;c<d;)if(c++,k=c<b.length?b[c++]:"","{"==k)h++;else if("}"==k&&!--h)break;p=Zx(a,b,p,c-1,a.L,f);h=c<d?b[c++].trim():"";k=c<d?b[c++]:""}else{if("~"==k||"^-"==k){p=1;continue}if("-"==k){p=-1;continue}m=!0;break}if(void 0===p)if(null==a.Ha&&f)a.Ha=h,p=0;else{m=!0;f=!f;break}v.push(Xx(p));if(!k)break;u.length&&ay[k]<ay[u[u.length-1]]&&Yx(v,u,1);
u.push(k);a.L="^_"==k?10:e;p=0}Yx(v,u)&&1==v.length||(m=!0);m?!1===f&&a.P("parse error ("+(h||k)+")"):g=v.pop();a.L=E;return g}function by(a,b,c,d,e,f){for(var g;0<=(g=b.indexOf(c));){for(var h=0,k=g+1,m=e;k<b.length;){var p=b[k++];if(p==c){m=-1;break}if(!m)break;m--;p=p.charCodeAt(0);7==d?p&=127:p=p-32&63;h=Xx(h*Math.pow(2,d)+p,d*e,!0)}if(0<=m){!1===f&&a.P("parse error ("+b+")");break}else b=b.substr(0,g)+cy(a,h,-1)+b.substr(k)}return b}
function dy(a,b,c){var d=void 0;a.Ha=null;if(b){"{"!=a.qa[0]&&(b=b.split(a.qa[0]).join("{").split(a.qa[1]).join("}"));b=by(a,b,'"',7,5,c);if(!b)return d;b=by(a,b,"'",6,6,c);if(!b)return d;b=b.replace(/(^|[^A-Z0-9$%.])([0-9]+)B/,"$1$2^_");b=b.split(/(\{|}|\|\||&&|\||\^!|\^-|~|\^_|_|&|!=|!|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);d=Zx(a,b,0,b.length,a.L,c);void 0!==d&&!1===c&&ey(a,null,d)}return d}
function Zx(a,b,c,d,e,f){var g,h,k,m=!1,p=0,v=[],u=[],E=a.F;for(a.F=e;c<d;){h=b[c++].trim();k=c<d?b[c++]:"";if(h)p=$x(a,h,null,f,p);else if("{"==k){h=1;for(p=c;c<d;)if(c++,k=c<b.length?b[c++]:"","{"==k)h++;else if("}"==k&&!--h)break;p=Zx(a,b,p,c-1,a.F,f);h=c<d?b[c++].trim():"";k=c<d?b[c++]:""}else{if("^B"==k){a.F=2;continue}if("^O"==k){a.F=8;continue}if("^D"==k){a.F=10;continue}if(!(p&-1073741824)){if("-"==k){p=p<<2|1;continue}if("~"==k||"^-"==k){p=p<<2|2;continue}}m=!0;break}if(void 0===p)if(null==
a.Ha&&f)a.Ha=h,p=0;else{m=!0;f=!f;break}v.push(Xx(p));if(!k)break;u.length&&ay[k]<ay[u[u.length-1]]&&Yx(v,u,1);u.push(k);a.F="^_"==k?10:e;p=0}if(m||!Yx(v,u)||1!=v.length)m=!0;m?!1===f&&a.P("parse error ("+(h||k)+")"):g=v.pop();a.F=E;return g}
function by(a,b,c,d,e,f){for(var g;0<=(g=b.indexOf(c));){for(var h=0,k=g+1,m=e;k<b.length;){var p=b[k++];if(p==c){m=-1;break}if(!m)break;m--;p=p.charCodeAt(0);7==d?p&=127:p=p-32&63;h=Xx(h*Math.pow(2,d)+p,d*e,!0)}if(0<=m){!1===f&&a.P("parse error ("+b+")");break}else b=b.substr(0,g)+cy(a,h,-1)+b.substr(k)}return b}
function dy(a,b,c){var d=void 0;a.Ha=null;if(b){"{"!=a.qa[0]&&(b=b.split(a.qa[0]).join("{").split(a.qa[1]).join("}"));b=by(a,b,'"',7,5,c);if(!b)return d;b=by(a,b,"'",6,6,c);if(!b)return d;b=b.replace(/(^|[^A-Z0-9$%.])([0-9]+)B/,"$1$2^_");b=b.split(/(\{|}|\|\||&&|\||\^!|\^B|\^O|\^D|\^-|~|\^_|_|&|!=|!|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);d=Zx(a,b,0,b.length,a.F,c);void 0!==d&&!1===c&&ey(a,null,d)}return d}
function fy(a,b){var c,d=a.qa[0],e=a.qa[1];c="("==d||"{"==d||"["==d?"\\":"";for(var f="["==d?"\\":"",f=new RegExp(c+d+"([^"+f+d+f+e+"]+)"+c+e);c=b.match(f);){var g=dy(a,c[1]);if(void 0===g)return;b=b.replace(d+c[1]+e,null!=g?cy(a,g):"undefined")}if(a.Aa.length)for(d=a.Aa[0],e=a.Aa[1],c="("==d||"{"==d||"["==d?"\\":"",f="["==d?"\\":"",f=new RegExp(c+d+"([^"+f+d+f+e+"]+)"+c+e);c=b.match(f);)b=a.Pk(b,c[1]);for(;d=b.match(/\$([a-z]+)/i);){e=null;switch(d[1].toLowerCase()){case "ops":e=a.Y-a.ha}if(null==
e)break;b=b.replace(d[0],e.toString())}return b}function $x(a,b,c,d,e){e=void 0===e?0:e;var f;null!=b?(f=a.gh(b),0<=f?f=a.hh(f):(f=a.ga[b],null==f&&(f=1<b.length?a.L:10,0>e&&(b="-"+b,e=0),f=oa(b,f))),null!=f?0>e?f=-f:0<e&&(f|=-1):d||a.P("invalid "+(c?c:"value")+": "+b)):d||a.P("missing "+(c||"value"));return f}
function ey(a,b,c){var d,e=!1;void 0!==c&&(e=!0,d=8==a.L?c+". "+sa(c,0,!0):q(c,0,!0)+" "+c+". "+sa(c,0,!0)+" "+ra(c,4,!0),32<=c&&127>c&&(d+=" '"+String.fromCharCode(c)+"'"));a.P((null!=b?b+": ":"")+d);return e}function gy(a,b){if(b)return ey(a,b,a.ga[b]);var c=0;for(b in a.ga)ey(a,b,a.ga[b]),c++;return 0<c}
function cy(a,b,c){c=void 0===c?0:c;switch(a.L){case 2:b=qa(b,0<c?c:0);break;case 8:b=sa(b,0<c?(c+2)/3|0:0);break;case 10:(a=0<c?Math.ceil(.3*c):0)?11<a&&(a=11):a=b&-65536?10:5;b=pa(b,10,a);break;default:b=q(b,0<c?c+3>>2:0)}0>c?c=b.replace(/^0+([0-9A-F]+)$/i,"$1"):c=b;return c}var ay={"||":0,"&&":1,"!":2,"|":2,"^!":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9,_:10,"^_":10,"{":11,"}":11};
function hy(a){Wx.call(this,a);this.ta=4;this.la=5;this.wa=1048575;this.K=iy(this);this.Ta=iy(this);this.aa=iy(this);this.D=[];this.B=this.Z=this.N=[];jy(this);this.xa=0;ky(this);this.Ba={};ly(this,a.messages);this.Ga=a.commands;var b=this;window?void 0===window.pcx86&&(window.pcx86=function(a){return my(b,a)}):void 0===global.pcx86&&(global.pcx86=function(a){return my(b,a)})}ba(hy,Wx);l=hy.prototype;
e)break;b=b.replace(d[0],e.toString())}return b}function $x(a,b,c,d,e){e=void 0===e?0:e;var f;if(null!=b)if(f=a.gh(b),0<=f?f=a.hh(f):(f=a.ga[b],null==f&&(f=oa(b,1<b.length?a.F:10))),null!=f){for(;e;)e&1?f=-Xx(f):e&2&&(f|=-1),e>>>=2;f=Xx(f)}else d||a.P("invalid "+(c?c:"value")+": "+b);else d||a.P("missing "+(c||"value"));return f}
function ey(a,b,c){var d,e=!1;void 0!==c&&(e=!0,d=8==a.F?c+". "+sa(c,0,!0):q(c,0,!0)+" "+c+". "+sa(c,0,!0)+" "+ra(c,4,!0),32<=c&&127>c&&(d+=" '"+String.fromCharCode(c)+"'"));a.P((null!=b?b+": ":"")+d);return e}function gy(a,b){if(b)return ey(a,b,a.ga[b]);var c=0;for(b in a.ga)ey(a,b,a.ga[b]),c++;return 0<c}
function cy(a,b,c){c=void 0===c?0:c;switch(a.F){case 2:b=qa(b,0<c?c:0);break;case 8:b=sa(b,0<c?(c+2)/3|0:0);break;case 10:(a=0<c?Math.ceil(.3*c):0)?11<a&&(a=11):a=99999>=Math.abs(b)?5:11;b=pa(b,10,a);break;default:b=q(b,0<c?c+3>>2:0)}0>c?c=b.replace(/^0+([0-9A-F]+)$/i,"$1"):c=b;return c}var ay={"||":0,"&&":1,"!":2,"|":2,"^!":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9,_:10,"^_":10,"{":11,"}":11};
function hy(a){Wx.call(this,a);this.ta=4;this.la=5;this.wa=1048575;this.L=iy(this);this.Ta=iy(this);this.aa=iy(this);this.D=[];this.B=this.Z=this.N=[];jy(this);this.xa=0;ky(this);this.Ba={};ly(this,a.messages);this.Ga=a.commands;var b=this;window?void 0===window.pcx86&&(window.pcx86=function(a){return my(b,a)}):void 0===global.pcx86&&(global.pcx86=function(a){return my(b,a)})}ba(hy,Wx);l=hy.prototype;
l.uc=function(a,b,c,d){this.ka=b;this.H=c;this.pa=a;this.hb=Xb(a,"FDC");this.Xa=Xb(a,"HDC");this.Tc=Xb(a,"FPU");this.G=Xb(a,"Mouse");(a=zd(a,"messages"))&&ly(this,a);this.la=b.I>>2;this.wa=b.N;this.ab=new Vd(this.H,7,"DBG");this.oa=ny;80186<=this.H.ca&&(this.oa=ny.slice(),this.oa[15]=oy,80286<=this.H.ca&&(this.oa[15]=py,80386<=this.H.ca&&(this.ta=8)));Al(this,64,function(a){qy(d,d.H.sc,a[0])});Al(this,4,function(a){if(a=a[0]){var b=$x(d,a);if(void 0===b)d.P("invalid selector: "+a);else if(a=ry(d,
b,sy),d.P("dumpSel("+ta(a?a.U:b)+"): %"+q(a?a.Lb:null,d.la)),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 e=ty[a.type];e&&(c=e[0],b=e[1])}!c||a.mb&32768||(c+=",not present");d.P((b?"seg="+ta(a.ua&65535)+" off="+ta(a.Ka):"base="+q(a.ua,d.la)+" limit="+uy(a.Ka))+" type="+r(a.type>>8)+" ("+c+") ext="+ta(a.ext&-65296)+
" dpl="+r(a.qc))}}else d.P("no selector")});Al(this,134217728,function(a){var b;(a=a[0])&&(b=$x(d,a));if(void 0===b)d.P("invalid MCB");else for(d.P("dumpMCB("+ta(b)+")");b;){a=iy(d,0,b);var c=d.Ia(a,1),e=d.Yc(a,2),k=d.Yc(a,5);if(77!=c&&90!=c)break;d.P(vy(0,b)+": '"+String.fromCharCode(c)+"' PID="+ta(e)+" LEN="+ta(k)+' "'+wy(d,a,8)+'"');b+=1+k}});Al(this,128,function(a){qy(d,d.H.aa,a[0],d.H.aa!==d.H.sc)});Al(this,8,function(a){a:{if(a=a[0]){var b=$x(d,a);if(void 0===b){d.P("invalid task selector: "+
a);break a}a=ry(d,b,sy)}else a=d.H.la;d.P("dumpTSS("+ta(a?a.U:b)+"): %"+q(a?a.ua:null,d.la));if(a){var b="",c=a.type&-513,e=256==c?4:8,k=256==c?xy:yy,m,p,v,u;for(u in k)m=k[u],p=a.ua+m,v=yg(d.H,p,2),2304==c&&(v|=yg(d.H,p+2,2)<<16),b&&(b+="\n"),b+=ta(m)+" "+Ba(u+":",11)+q(v,e);if(2304==c)for(u=0,m=v>>>16;m<a.Nb&&1023>u;)p=a.ua+m,v=yg(d.H,p,2),b+="\n"+ta(m)+" ports "+ta(u)+"-"+ta(u+15)+": "+ra(v,2),u+=16,m+=2;d.P(b)}}});this.F=null;this.Ma=0;this.Ca=!1;Sf(this.H,48,this.Ym.bind(this));Sf(this.H,65,
a);break a}a=ry(d,b,sy)}else a=d.H.la;d.P("dumpTSS("+ta(a?a.U:b)+"): %"+q(a?a.ua:null,d.la));if(a){var b="",c=a.type&-513,e=256==c?4:8,k=256==c?xy:yy,m,p,v,u;for(u in k)m=k[u],p=a.ua+m,v=yg(d.H,p,2),2304==c&&(v|=yg(d.H,p+2,2)<<16),b&&(b+="\n"),b+=ta(m)+" "+Ba(u+":",11)+q(v,e);if(2304==c)for(u=0,m=v>>>16;m<a.Nb&&1023>u;)p=a.ua+m,v=yg(d.H,p,2),b+="\n"+ta(m)+" ports "+ta(u)+"-"+ta(u+15)+": "+ra(v,2),u+=16,m+=2;d.P(b)}}});this.I=null;this.Ma=0;this.Ca=!1;Sf(this.H,48,this.Ym.bind(this));Sf(this.H,65,
this.Zm.bind(this));this.V=null;Sf(this.H,104,this.$m.bind(this));Jb(this)};function zy(a,b,c,d,e,f){b=wy(a,b);var g=ry(a,d),g=g?g.Ka+1:0,h=(e?"_CODE":"_DATA")+q(c,2);f&&t(a,128)&&a.message(b+" "+(e?"code":"data")+"("+q(c,4)+")=#"+q(d,4)+" len "+q(g));e=Ay(a,b,c);e[b+h]=0;aq(a,b,c,d,0,null,g,e)}
function By(a,b,c,d){var e=a.Yc(b,2),f=a.Yc(b,2),g=Cy(a,b,4),h=Cy(a,b,4),k=iy(a,Cy(a,b,4),a.Yc(b,2));b=iy(a,Cy(a,b,4),a.Yc(b,2));b=wy(a,b).toUpperCase();var k=wy(a,k).toUpperCase(),m=(c?"_CODE":"_DATA")+q(e,2);d&&t(a,128)&&a.message((b==k?"":b+"!")+k+" "+(c?"code":"data")+"("+q(e,4)+")="+q(f,4)+":"+q(g)+" len "+q(h));c=Ay(a,k,e);c[k+m]=g;aq(a,k,e,f,g,null,h,c)}function Dy(a,b,c){c=wy(a,c).toUpperCase();Ey(a,c,b)}
l.Ym=function(){var a=this.H;if(null!=this.F&&2752554==a.D){var b=a.L&65535,c=a.K&65535,d=iy(this,z(a)+12,a.Y.U);switch(Cy(this,d)){case 336:By(this,iy(this,a.G,b),!c,!!this.F)}}return!0};
l.Zm=function(a){var b=this.H,c=b.D&65535,d=b.G&65535,e=b.I&65535,f=b.L&65535,g=b.K&65535,h=b.J&65535,k=b.oa.U;if(null==this.F)return 79==c&&Tf(b,a,function(a){return function(){62342!=(b.D&65535)?(b.D=b.D&-65536|62342,Mb(a,"INT 0x41 handling enabled",128),a.F=!0):(Mb(a,"INT 0x41 monitoring enabled",128),a.F=!1)}}(this)),!0;switch(c){case 79:this.F&&(b.D=b.D&-65536|62342,Mb(this,"INT 0x41 handling enabled",128));break;case 80:zy(this,iy(this,h,k),d+1,e,!(g&1),!!this.F);break;case 82:Ey(this,null,
d);break;case 127:this.F&&(b.D=b.D&-65536|(this.Ca?0:1));break;case 131:this.F&&(a=iy(this,b.L,e),this.Ma++?(this.P("TRAPFAULT failed"),Fy(this,this.B,a,!0,!0),this.Ma=0,this.Jb()):(this.P("INT 0x41 TRAPFAULT: fault="+ta(d)+" error="+q(b.K,8,!0)+" addr="+Gy(a)),this.Gd(this.B,a,!0),ky(this,!0)));break;case 141:this.F&&(b.D=b.D&-65536|1);break;case 336:By(this,iy(this,b.G,f),!g,!!this.F);break;case 338:Dy(this,d,iy(this,b.J,f))}this.Ca=!1;return!this.F};
l.$m=function(a){var b=this.H,c=b.D&255,d=b.D>>8&255,e=b.G&65535,f=b.I&65535,g=b.L&65535,h=b.J&65535,k=b.oa.U;if(null==this.V){if(67==d){if(609437257==b.ia((b.Z.U<<4)+10)||1111835735==b.ia((b.Z.U<<4)+95))return!0;Tf(b,a,function(a){return function(){62342!=(b.D&65535)?(b.D=b.D&-65536|62342,Mb(a,"INT 0x68 handling enabled",128),a.F=a.V=!0):(Mb(a,"INT 0x68 monitoring enabled",128),a.V=!1)}}(this))}return!0}switch(d){case 67:this.V&&(b.D=b.D&-65536|62342);break;case 68:this.V&&(a=Xd(b.Z,this.yl.bind(this)))&&
l.Ym=function(){var a=this.H;if(null!=this.I&&2752554==a.D){var b=a.L&65535,c=a.K&65535,d=iy(this,z(a)+12,a.Y.U);switch(Cy(this,d)){case 336:By(this,iy(this,a.G,b),!c,!!this.I)}}return!0};
l.Zm=function(a){var b=this.H,c=b.D&65535,d=b.G&65535,e=b.I&65535,f=b.L&65535,g=b.K&65535,h=b.J&65535,k=b.oa.U;if(null==this.I)return 79==c&&Tf(b,a,function(a){return function(){62342!=(b.D&65535)?(b.D=b.D&-65536|62342,Mb(a,"INT 0x41 handling enabled",128),a.I=!0):(Mb(a,"INT 0x41 monitoring enabled",128),a.I=!1)}}(this)),!0;switch(c){case 79:this.I&&(b.D=b.D&-65536|62342,Mb(this,"INT 0x41 handling enabled",128));break;case 80:zy(this,iy(this,h,k),d+1,e,!(g&1),!!this.I);break;case 82:Ey(this,null,
d);break;case 127:this.I&&(b.D=b.D&-65536|(this.Ca?0:1));break;case 131:this.I&&(a=iy(this,b.L,e),this.Ma++?(this.P("TRAPFAULT failed"),Fy(this,this.B,a,!0,!0),this.Ma=0,this.Jb()):(this.P("INT 0x41 TRAPFAULT: fault="+ta(d)+" error="+q(b.K,8,!0)+" addr="+Gy(a)),this.Gd(this.B,a,!0),ky(this,!0)));break;case 141:this.I&&(b.D=b.D&-65536|1);break;case 336:By(this,iy(this,b.G,f),!g,!!this.I);break;case 338:Dy(this,d,iy(this,b.J,f))}this.Ca=!1;return!this.I};
l.$m=function(a){var b=this.H,c=b.D&255,d=b.D>>8&255,e=b.G&65535,f=b.I&65535,g=b.L&65535,h=b.J&65535,k=b.oa.U;if(null==this.V){if(67==d){if(609437257==b.ia((b.Z.U<<4)+10)||1111835735==b.ia((b.Z.U<<4)+95))return!0;Tf(b,a,function(a){return function(){62342!=(b.D&65535)?(b.D=b.D&-65536|62342,Mb(a,"INT 0x68 handling enabled",128),a.I=a.V=!0):(Mb(a,"INT 0x68 monitoring enabled",128),a.V=!1)}}(this))}return!0}switch(d){case 67:this.V&&(b.D=b.D&-65536|62342);break;case 68:this.V&&(a=Xd(b.Z,this.yl.bind(this)))&&
(b.J=a[0],oe(b,a[1]));break;case 72:Ey(this,null,e);break;case 80:32==c?zy(this,iy(this,h,k),0,f,!0,!!this.V):128>c?zy(this,iy(this,h,k),e+1,c&64?g:f,!(c&1),!!this.V):By(this,iy(this,h,k),!(c&1),!!this.V),this.V&&(b.D=b.D&-256|1)}return!this.V};l.yl=function(){var a=this.H;5==(a.D&255)&&(a.I=a.K=0,a.D=a.D&-256|1);return!1};
l.Cb=function(a,b,c){var d=this;switch(b){case "debugInput":return this.va=this.na[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",my(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.A<d.C.length-1&&(b=d.C[++d.A])):40==a.keyCode&&(0<d.A?b=d.C[--d.A]:(b="",d.A=-1)),null!=b){var e=b.length;c.value=b;c.setSelectionRange(e,e)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.na[b]=c,Za(c,function(){if(d.va){var a=d.va.value;
d.va.value="";my(d,a,!0);return!0}return!1}),!0;case "step":return this.na[b]=c,Za(c,function(a){var b=!1;Kb(d,!0)||(Lb(d,!0),b=Hy(d,a?1:0),Lb(d,!1));return b}),!0}return!1};l.ld=function(){this.va&&this.va.focus()};function Iy(a){return!(!(a.H&&a.H.qa&1)||a.H.O&131072)}
@ -746,7 +747,7 @@ d+6,2);80386<=c.ca&&(h|=(k&65280)<<16,e|=(k&15)<<16,k&128&&(e=e<<12|4095));a.U=b
l.jb=function(a,b){return a.Hb?Cy(this,a,b?4:0):this.Yc(a,b?2:0)};l.Yc=function(a,b){var c=65535,d=this.Sb(a,!1,2);-1!==d&&(c=yg(this.H,d,2,a.type==Ky)|0,b&&Ly(this,a,b));return c};function Cy(a,b,c){var d=-1,e=a.Sb(b,!1,4);-1!==e&&(d=yg(a.H,e,4,b.type==Ky)|0,c&&Ly(a,b,c));return d}l.fc=function(a,b,c,d){var e=this.Sb(a,!0,1);if(-1!==e){if(a.type!=Ky)this.H.fc(e,b);else{var f=this.ka;f.aa[(e&f.C)>>>f.A].bf(e&f.D,b&255,e)}c&&Ly(this,a,c);d||Cd(this.H,!0)}};
l.il=function(a,b,c){var d=this.Sb(a,!0,2);-1!==d&&(a.type!=Ky?this.H.fb(d,b):Kc(this.ka,d,b),c&&Ly(this,a,c),Cd(this.H,!0))};function iy(a,b,c,d,e,f,g){return My(a,{},b,c,d,e,f,g)}function My(a,b,c,d,e,f,g,h){b.Ja=c||0;b.U=d;b.ya=e;b.type=f||(Iy(a)?sy:Jy);b.Hb=null!=g?g:!(!a.H||4!=a.H.Z.W);b.dc=null!=h?h:!(!a.H||4!=a.H.Z.Jc);b.Jd=!1;return b}function Ny(a){return[a.Ja,a.U,a.ya,a.Jd,a.Hb,a.dc,a.Fe,a.bh]}function Oy(a){return{Ja:a[0],U:a[1],ya:a[2],Jd:a[3],Hb:a[4],dc:a[5],Fe:a[6],bh:a[7]}}
function Py(a,b,c){if(null!=b.U&&(a=ry(a,b.U,b.type))){var d=b.Ja&a.wa;if(!a.Oc){if(d>>>0>=a.Nb)return!1}else if(d>>>0<a.Nb)return!1;c&&(b.Ja=d,b.Hb=4==a.W,b.dc=4==a.Jc)}return!0}
function Qy(a,b,c,d){var e,f=c?a.K:a.Ta;c=d?Ry:f.type;var g=f.Ja,h=f.U,f=f.ya;if(void 0!==b){b=fy(a,b);e=b.charAt(0);f=b.indexOf(":");switch(e){case "&":c=Jy;break;case "#":c=sy;break;case "%":c=Sy;e=b.charAt(1);"%"==e&&(c=Ky,e+=e);g=0;h=null;break;default:0<=f&&(c=Ry),e=""}e&&(b=b.substr(e.length),f-=e.length);e=b;var k;if(e.match(/^[a-z_][a-z0-9_]*$/i))for(var m=e.toUpperCase(),p=0;p<a.D.length;p++){e=a.D[p];var v=e.Fd[m];if(void 0!==v){m=v.o;void 0!==m&&(k=v.s,void 0===k&&(k=e.U),k=iy(a,m,k,v.p));
function Qy(a,b,c,d){var e,f=c?a.L:a.Ta;c=d?Ry:f.type;var g=f.Ja,h=f.U,f=f.ya;if(void 0!==b){b=fy(a,b);e=b.charAt(0);f=b.indexOf(":");switch(e){case "&":c=Jy;break;case "#":c=sy;break;case "%":c=Sy;e=b.charAt(1);"%"==e&&(c=Ky,e+=e);g=0;h=null;break;default:0<=f&&(c=Ry),e=""}e&&(b=b.substr(e.length),f-=e.length);e=b;var k;if(e.match(/^[a-z_][a-z0-9_]*$/i))for(var m=e.toUpperCase(),p=0;p<a.D.length;p++){e=a.D[p];var v=e.Fd[m];if(void 0!==v){m=v.o;void 0!==m&&(k=v.s,void 0===k&&(k=e.U),k=iy(a,m,k,v.p));
break}}if(e=k)return e;0>f?null!=h?(g=dy(a,b,void 0),f=null):(f=dy(a,b,void 0),null==f&&(g=null)):(h=dy(a,b.substring(0,f),void 0),g=dy(a,b.substring(f+1),void 0),f=null)}null!=g&&(e=iy(a,g,h,f,c),d||Py(a,e,!0)||(a.P("invalid offset: "+Gy(e)),e=null));return e}function Ty(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.sl=a.Cg(b.Yk=c[2]))}l.Pk=function(a,b){var c=Qy(this,b);return a.replace("["+b+"]",c?q(this.jb(c),c.Hb?8:4):"undefined")};
function Ly(a,b,c){c=c||1;null!=b.ya&&(b.ya+=c);null!=b.U&&(b.Ja+=c,Py(a,b)||(b.Ja=0,b.ya=null))}function vy(a,b,c){return null!=b?q(b,4)+":"+q(a,a&-65536||c?8:4):q(a)}function Gy(a){var b;switch(a.type){case Jy:case Uy:b="&";break;case sy:b="#";break;case Sy:b="%";break;case Ky:b="%%";break;default:b=a.U?"":"%"}return a.type>=Sy||null==a.U?b+q(a.ya):b+vy(a.Ja,a.U,a.dc)}
function wy(a,b,c){var d="";for(c=c||256;d.length<c;){var e=a.Ia(b,1);if(!e||36==e||127<=e)break;d+=32<=e?String.fromCharCode(e):"."}return d}
@ -760,16 +761,16 @@ function Jz(a,b){b=fy(a,b)||b;for(var c=0,d,e;0<=(c=b.indexOf("@",c));)e=a.gh(b,
d=e+' "'+wy(a,d,11)+'"',b=b.replace("^"+e,d),c+=d.length):c++;return b}l.message=function(a,b){b&&(a+=" at "+Gy(iy(this,A(this.H),this.H.Z.U))+" (%"+q(this.H.da)+")");this.za&&a==this.za||(this.za=a,this.ic&-2147483648&&(this.Jb(),a+=" (cpu halted)"),this.P(a),this.H&&(a=this.H,a.zc-=a.A,a.A=0,a.T.Ve=0,Cd(a)))};
function Wk(a,b,c,d){var e,f;if(!d&&(d=t(a,1)&&0>Kz.indexOf(b),!d)){var g=Lz[b];g&&(d=t(a,g)?!0:524288==g&&t(a,g=1048576))}d&&(e=a.H.D>>8&255,f=a.H.L&255,33==b&&11==e||524288==g&&128<=f||1048576==g&&128>f)&&(d=!1);d&&((g=(g=Rb[b])&&g[e]||"")&&(g=" "+Jz(a,g)),a.message("INT "+r(b)+": AH="+r(e)+" at "+vy(c-2-a.H.Z.ua,a.H.Z.U)+g));return d}
function Nb(a,b,c,d,e,f,g,h){h|=256;if(null==e||(a.ic&h)==h)h=null,null!=e&&(h=a.H.Z.U,e-=a.H.Z.ua),a.message(b.be+"."+(null!=d?"outPort":"inPort")+"("+ta(c)+","+(f?f:"unknown")+(null!=d?","+r(d):"")+")"+(null!=g?": "+r(g):"")+(null!=e?" at "+vy(e,h):""))}l.ih=function(){this.P("Type ? for help with PCx86 Debugger commands");Mz(this);if(this.Ga){var a=this.Ga;this.Ga=null;my(this,a)}};
function ky(a,b){var c;if(Jg(a)){if(!a.O||!a.O.length){a.O=Array(Nz);for(c=0;c<a.O.length;c++)a.O[c]=iy(a);a.ma=0;b||a.P("instruction history buffer allocated")}if(!a.J||!a.J.length)for(a.J=Array(256),c=0;c<a.J.length;c++)a.J[c]=[c,0]}else a.O&&a.O.length&&!b&&a.P("instruction history buffer freed"),a.ma=0,a.O=[],a.J=[]}function Oz(a,b){if(!Pz(a))return!1;a.H.Uf(b);return!0}
function Hy(a,b,c,d){if(!Pz(a))return!1;a.M=0;do{b||Jg(a)&&Mg(a,a.H.da,0);try{var e=a.H.Lg(b);0<e&&(a.M+=e,Hd(a.H,e,!0),Dd(a.H,e),a.Y++)}catch(g){if("number"!=typeof g){var f=g;a.M=0;Gb(a.H,f.stack||f.message)}}}while(a.H.N&3312);!1!==d&&Cd(a.H);Mz(a,c||!1);return 0<a.M}l.Jb=function(a){this.H&&this.H.Jb(a)};function Mz(a,b){void 0===b&&(b=!0);a.K=iy(a,A(a.H),a.H.Z.U);b&&1!=a.I?Qz(a):Rz(a)}
function Pz(a){var b;if(b=a.H&&Ib(a.H))b=a.H,b.ea.Yb?b=!0:(b.P(b.toString()+" not powered"),b=!1);b&&!Kb(a.H)?(a=a.H,a.ea.error?(a.P(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}l.Xb=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};l.Wb=function(a,b){b&&this.P(a?"suspending":"shutting down");return a?this.save():!0};l.reset=function(a){ky(this);this.Y=this.ha=0;this.za=null;this.M=0;this.K=iy(this,A(this.H),this.H.Z.U);this.ea.wb=!1;Sz(this);a||Mz(this)};
l.save=function(){var a=new Xf(this);a.set(0,Ny(this.K));a.set(1,Ny(this.aa));a.set(2,[this.C,this.da,this.ic]);a.set(3,this.D);return a.data()};l.restore=function(a){var b=0;void 0!==a[2]&&(this.K=Oy(a[b++]),this.aa=Oy(a[b++]),this.C=a[b][0],"string"==typeof this.C&&(this.C=[this.C]),this.da=a[b][1],this.ic|=a[b][2]);a[3]&&(this.D=a[3]);return!0};l.start=function(a,b){this.I||this.P("running");this.ea.wb=!0;this.ib=a;this.jd=b};
l.stop=function(a,b){if(this.ea.wb){this.ea.wb=!1;this.M=b-this.jd;if(!this.I){b="stopped";if(this.M){a-=this.ib;var c=0<a?Math.round(1E3*this.M/a):0;b+=" (";Jg(this)&&(b+=this.Y+" opcodes, ",this.ha-=this.Y,this.Y=0);b+=this.M+" cycles, "+a+" ms, "+c+" hz)"}else t(this,-2147483648)&&(b+=" (use the 't' command to execute blocked faults)");this.P(b)}Mz(this,!0);this.ld();Sz(this,this.H.da)}};function Jg(a){return 1<a.B.length||!!a.xa||t(a,16)}
function Mg(a,b,c){var d=a.H;if(0<c&&(a.xa&&!--a.xa||Tz(a,b,1,a.B)))return!0;0<=c&&a.J.length&&(a.Y++,b=yg(d,b),null!=b&&(a.J[b][1]++,My(a,a.O[a.ma],A(d),d.Z.U),++a.ma==a.O.length&&(a.ma=0)));return!1}function qd(a,b,c){return Tz(a,b,c||1,a.Z)?(a.Jb(!0),!0):!1}function sd(a,b,c){return Tz(a,b,c||1,a.N)?(a.Jb(!0),!0):!1}function Qc(a,b,c){a.P("break on input from port "+ta(b)+": "+q(c));a.Jb(!0)}function Uc(a,b,c){a.P("break on output to port "+ta(b)+": "+q(c));a.Jb(!0)}
function ky(a,b){var c;if(Jg(a)){if(!a.O||!a.O.length){a.O=Array(Nz);for(c=0;c<a.O.length;c++)a.O[c]=iy(a);a.ma=0;b||a.P("instruction history buffer allocated")}if(!a.K||!a.K.length)for(a.K=Array(256),c=0;c<a.K.length;c++)a.K[c]=[c,0]}else a.O&&a.O.length&&!b&&a.P("instruction history buffer freed"),a.ma=0,a.O=[],a.K=[]}function Oz(a,b){if(!Pz(a))return!1;a.H.Uf(b);return!0}
function Hy(a,b,c,d){if(!Pz(a))return!1;a.M=0;do{b||Jg(a)&&Mg(a,a.H.da,0);try{var e=a.H.Lg(b);0<e&&(a.M+=e,Hd(a.H,e,!0),Dd(a.H,e),a.Y++)}catch(g){if("number"!=typeof g){var f=g;a.M=0;Gb(a.H,f.stack||f.message)}}}while(a.H.N&3312);!1!==d&&Cd(a.H);Mz(a,c||!1);return 0<a.M}l.Jb=function(a){this.H&&this.H.Jb(a)};function Mz(a,b){void 0===b&&(b=!0);a.L=iy(a,A(a.H),a.H.Z.U);b&&1!=a.J?Qz(a):Rz(a)}
function Pz(a){var b;if(b=a.H&&Ib(a.H))b=a.H,b.ea.Yb?b=!0:(b.P(b.toString()+" not powered"),b=!1);b&&!Kb(a.H)?(a=a.H,a.ea.error?(a.P(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}l.Xb=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};l.Wb=function(a,b){b&&this.P(a?"suspending":"shutting down");return a?this.save():!0};l.reset=function(a){ky(this);this.Y=this.ha=0;this.za=null;this.M=0;this.L=iy(this,A(this.H),this.H.Z.U);this.ea.wb=!1;Sz(this);a||Mz(this)};
l.save=function(){var a=new Xf(this);a.set(0,Ny(this.L));a.set(1,Ny(this.aa));a.set(2,[this.C,this.da,this.ic]);a.set(3,this.D);return a.data()};l.restore=function(a){var b=0;void 0!==a[2]&&(this.L=Oy(a[b++]),this.aa=Oy(a[b++]),this.C=a[b][0],"string"==typeof this.C&&(this.C=[this.C]),this.da=a[b][1],this.ic|=a[b][2]);a[3]&&(this.D=a[3]);return!0};l.start=function(a,b){this.J||this.P("running");this.ea.wb=!0;this.ib=a;this.jd=b};
l.stop=function(a,b){if(this.ea.wb){this.ea.wb=!1;this.M=b-this.jd;if(!this.J){b="stopped";if(this.M){a-=this.ib;var c=0<a?Math.round(1E3*this.M/a):0;b+=" (";Jg(this)&&(b+=this.Y+" opcodes, ",this.ha-=this.Y,this.Y=0);b+=this.M+" cycles, "+a+" ms, "+c+" hz)"}else t(this,-2147483648)&&(b+=" (use the 't' command to execute blocked faults)");this.P(b)}Mz(this,!0);this.ld();Sz(this,this.H.da)}};function Jg(a){return 1<a.B.length||!!a.xa||t(a,16)}
function Mg(a,b,c){var d=a.H;if(0<c&&(a.xa&&!--a.xa||Tz(a,b,1,a.B)))return!0;0<=c&&a.K.length&&(a.Y++,b=yg(d,b),null!=b&&(a.K[b][1]++,My(a,a.O[a.ma],A(d),d.Z.U),++a.ma==a.O.length&&(a.ma=0)));return!1}function qd(a,b,c){return Tz(a,b,c||1,a.Z)?(a.Jb(!0),!0):!1}function sd(a,b,c){return Tz(a,b,c||1,a.N)?(a.Jb(!0),!0):!1}function Qc(a,b,c){a.P("break on input from port "+ta(b)+": "+q(c));a.Jb(!0)}function Uc(a,b,c){a.P("break on output to port "+ta(b)+": "+q(c));a.Jb(!0)}
function jy(a){var b,c;a.B=["bp"];if(a.Z)for(b=1;b<a.Z.length;b++)c=a.Z[b],lf(a.H,a.Sb(c),!1,c.type==Ky);a.Z=["br"];if(a.N)for(b=1;b<a.N.length;b++)c=a.N[b],lf(a.H,a.Sb(c),!0,c.type==Ky);a.N=["bw"];a.Da=0}
l.Gd=function(a,b,c){var d=!0;c||Fy(this,a,b,!1,!0);if(a!=this.B){var e=this.Sb(b);if(-1===e)this.P("invalid address: "+Gy(b)),d=!1;else{var f=this.H,g=b.type==Ky;(g?f.sc:f.aa)[e>>>f.hb].Gd(e&f.Db,a==this.N);g&&tc(f)}}d&&(a.push(b),c?(null!=b.ya&&(b.U=null),b.Jd=!0):(Uz(this,a,a.length-1,"set"),ky(this)));return d};
function Fy(a,b,c,d,e){for(var f=!1,g=Vz(a,a.Sb(c)),h=1;h<b.length;h++){var k=b[h];if(-1!==g&&g==Vz(a,a.Sb(k))||-1===g&&c.U==k.U&&c.Ja==k.Ja)if(!d||k.Jd){f=!0;k.Jd||e||Uz(a,b,h,"cleared");b.splice(h,1);b!=a.B&&lf(a.H,g,b==a.N,k.type==Ky);k.Jd||ky(a);break}}return f}function Wz(a,b){for(var c=1;c<b.length;c++)Uz(a,b,c);return b.length-1}function Uz(a,b,c,d){c=b[c];a.P(b[0]+" "+Gy(c)+(d?" "+d:c.Yk?' "'+c.Yk+'"':""))}
function Sz(a,b){if(void 0!==b)Tz(a,b,1,a.B,!0),a.I=0;else for(b=1;b<a.B.length;b++){var c=a.B[b];if(c.Jd){if(!Fy(a,a.B,c,!0))break;b=0}}}function Vz(a,b){-1!==b&&(a=a.wa&-65536,(b&a)==a&&(b&=1048575));return b}
function Sz(a,b){if(void 0!==b)Tz(a,b,1,a.B,!0),a.J=0;else for(b=1;b<a.B.length;b++){var c=a.B[b];if(c.Jd){if(!Fy(a,a.B,c,!0))break;b=0}}}function Vz(a,b){-1!==b&&(a=a.wa&-65536,(b&a)==a&&(b&=1048575));return b}
function Tz(a,b,c,d,e){var f=!1;if(!a.Da++){b=Vz(a,b);t(a,-2147483632)&&204==yg(a.H,b)&&(f=!0);for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.Jd){null!=h.U&&(h.ya=null);for(var k=Vz(a,a.Sb(h)),m=0;m<c;m++)if(b+m==k){var p,f=!0;h.Jd&&(Fy(a,d,h,!0),e=!0);if(p=h.sl){for(var f=!1,v=0;v<p.length;v++)if(!Xz(a,p[v],!0)){if(p[v].indexOf("if")){f=!0;break}for(var u=v+1;u<p.length&&p[u].indexOf("else");u++)v++;if(u==p.length){f=!0;break}}a.H.ea.wb||(f=!0)}if(f){e||Uz(a,d,g,"hit");break}}}}}a.Da--;return f}
function Yz(a,b,c,d){for(var e=iy(a,b.Ja,b.U,b.ya,b.type),f=a.Ia(b,1),g=4,h=0,k=!1,m=!1;(102==f||103==f)&&g--;)102==f?k||(b.Hb=!b.Hb,k=!0):m||(b.dc=!b.dc,m=!0),h++,f=a.Ia(b,1);var g=-1,p=Zz,k=a.oa[f],m=k[0];m==$z&&(m=a.Ia(b,1),k=aA[m]||oy,f|=m<<8,m=k[0]);if(m==bA){var g=a.Ia(b,1),v;v=null;var u=g>>3&7,E=(3>(g>>6&3)?0:48)+u;(217==f||219==f)&&52<=E&&(E=u<<4|g&7);(u=cA[f])&&(v=u[E]);v&&(p=dA,k=v,m=k[0])}m>=p.length&&(g=a.Ia(b,1),k=eA[m-p.length][g>>3&7],m=k[0]);p=p[m];u=k.length-1;v="";b.Hb&&(m==fA?
p="CWDE":m==gA?p="CDQ":m>=hA&&m<=iA&&(p+="D"));if(164<=f&&167>=f||170<=f&&175>=f)u=0,b.Hb&&"W"==p.slice(-1)&&(p=p.slice(0,-1)+"D");for(var f=-1,E=!0,K=1;K<=u;K++){var H,I;H="";I=k[K];if(void 0!==I){0>f&&(f=I>>jA);m==kA&&(f==lA?v="[%800]":f==mA&&(v="ES:["+(b.dc?"E":"")+"DI]"));var T=I&nA;if(T!=oA)if(T==pA)E=!1;else{var L=I&qA;if(L>=R)if(0>g&&(g=a.Ia(b,1)),L<rA){L=a;H=I;var ua=u;I=b;var ca="",xb=g>>6,za=g&7;if(3>xb){T=!p.indexOf("FI");if(!xb&&(!I.dc&&6==za||I.dc&&5==za))xb=2;else{if(I.dc)if(4!=za)za+=
@ -785,7 +786,7 @@ null,a.H.Pb,a.H.cd)+" ";c=c+(d+" "+e)+WA(a,Dz);80386<=a.H.ca&&(c+=WA(a,Fz)+WA(a,
function aq(a,b,c,d,e,f,g,h){var k={},m=[],p;for(p in h){var v=h[p];"number"==typeof v&&(h[p]=v={o:v});var u=v.o,E=v.s,K=v.a;if(void 0!==u){void 0!==E&&(k.Ja=u,k.U=E,k.ya=null,a.Sb(k),(k.ya&-65536)==(a.ka.N&-65536)&&(k.ya&=1048575),v.p=k.ya);var E=m,u=[u>>>0,p],H=Ea(E,u,a.gj);0>H&&E.splice(-(H+1),0,u)}K&&(v.a=K.replace(/''/g,'"'))}a.D.push({Rf:b,pn:c,U:d,Ja:e,ya:f,en:g,Fd:h,Pi:m})}
function Ey(a,b,c){for(var d=0;d<a.D.length;d++){var e=a.D[d];if(!b||e.Rf==b)if(b&&c==e.pn||!b&&c==e.U){a.D.splice(d,1);break}}}function EA(a,b,c){for(var d=[],e=b.Ja>>>0,f=a.Sb(b)>>>0,g=0;g<a.D.length;g++){var h=a.D[g],k=h.U,m=h.Ja>>>0,p=h.ya;null!=p&&(p>>>=0);var v=h.en;48==k&&(k=40);if(k==b.U&&e>=m&&e<m+v||null!=p&&f>=p&&f<p+v){b=Ea(h.Pi,[e],a.gj);0<=b?$A(a,g,b,d):c&&(b=~b,$A(a,g,b-1,d),$A(a,g,b,d));break}}!d.length&&(a=a.ka.wj(f,!0))&&(d.push(a),d.push(f));return d}
function $A(a,b,c,d){var e={},f=a.D[b].Pi,g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.D[b].Fd[h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}function aB(a){a.Ie&&(a.Ie.value="")}
function bB(a,b){if("?"==b)a.P("frequency commands:"),a.P("\tclear\tclear all frequency counts");else{var c=0;if(a.J)if("clear"==b){for(b=0;b<a.J.length;b++)a.J[b]=[b,0];a.P("frequency data cleared");c++}else if(void 0!==b)a.P("unknown frequency command: "+b),c++;else{var d=a.J.slice();d.sort(function(a,b){return b[1]-a[1]});for(b=0;b<d.length;b++){var e=d[b][0],f=d[b][1];f&&(a.P((Zz[a.oa[e][0]]+" ").substr(0,5)+" ("+r(e)+"): "+f+" times"),c++)}}c||a.P("no frequency data available")}}
function bB(a,b){if("?"==b)a.P("frequency commands:"),a.P("\tclear\tclear all frequency counts");else{var c=0;if(a.K)if("clear"==b){for(b=0;b<a.K.length;b++)a.K[b]=[b,0];a.P("frequency data cleared");c++}else if(void 0!==b)a.P("unknown frequency command: "+b),c++;else{var d=a.K.slice();d.sort(function(a,b){return b[1]-a[1]});for(b=0;b<d.length;b++){var e=d[b][0],f=d[b][1];f&&(a.P((Zz[a.oa[e][0]]+" ").substr(0,5)+" ("+r(e)+"): "+f+" times"),c++)}}c||a.P("no frequency data available")}}
function cB(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return gy(a)||a.P("no variables"),!0;if(!c[2])return gy(a,c[1]);if(!c[3])return delete a.ga[c[1]],!0;b=dy(a,c[3]);return void 0!==b?(a.ga[c[1]]=b,!0):!1}a.P("invalid assignment:"+b);return!1}
function dB(a,b,c){var d=null;if(b=Qy(a,b,!0)){a.Sb(b);var e=EA(a,b,!0);if(e.length){var f,g;e[0]&&(g="",(f=b.Ja-e[1])&&(g=" + "+ta(f)),f=e[0]+" ("+vy(e[1],b.U)+")"+g,c&&a.P(f),d=f);4<e.length&&e[4]&&(g="",(f=e[5]-b.Ja)&&(g=" - "+ta(f)),f=e[4]+" ("+vy(e[5],b.U)+")"+g,c&&a.P(f),d||(d=f))}else c&&a.P("no symbols")}return d}
function eB(a,b){if(b[1]&&"?"!=b[1]){var c="json"==b[1],d,e=0,f=0,g=c?{}:Qy(a,b[1]);if(g&&(d=$x(a,b[2],"drive #"),void 0!==d)){if(!c){e=$x(a,b[3],"sector #");if(void 0===e)return;f=$x(a,b[4],"# of sectors");void 0===f&&(f=1)}var h=a.hb;2<=d&&a.Xa&&(d-=2,h=a.Xa);if(h){var k=h.hj(d);if(k)if(k.sa)if(c)aB(a),a.P(k.sa.toJSON());else if(h.$k(k,e,f)){var m=0,p=!1;for(b=Gy(g);!p&&0<k.vb--;)(function(a,b){h.se(k,function(c){0>c?(a.P("out of data at address "+Gy(b)),p=!0):(a.fc(b,c,1,!0),m++)})})(a,g);Cd(a.H,
@ -793,34 +794,34 @@ function eB(a,b){if(b[1]&&"?"!=b[1]){var c="json"==b[1],d,e=0,f=0,g=c?{}:Qy(a,b[
function Qz(a,b){var c;if(b&&"?"==b[1])a.P("register commands:"),a.P("\tr\tdump registers"),a.Tc&&a.P("\trfp\tdump floating-point registers"),a.P("\trp\tdump all registers"),a.P("\trx [#]\tset flag or register x to [#]");else{var d;null==c&&(c=!0);if(b&&1<b.length){var e=b[1];if(a.Tc&&"fp"==e){c=a.Tc;d=ah(c);b=c.Zb;for(var f=0;8>f;f++){var g=c,e=null;if(f<g.F.length){var e=[],h=g.B+f&7;e[0]=h;e[1]=rh(g,h);e[2]=g.F[h];h<<=1;e[3]=g.L[h];e[4]=g.L[h+1];g=vh(g,e[3],e[4]);e[5]=g[0];e[6]=g[1];e[7]=g[2]}if(!e)break;
a.P("ST"+f+": "+Ba(e[2].toFixed(15),24,!0)+" "+q(e[4])+","+q(e[3])+" ["+e[0]+":"+fB[e[1]]+"]")}a.P(" B3SSS210ESPUOZDI xxxIRRPPIxPUOZDI");a.P("SW: "+qa(d,16)+" ("+ta(d)+") CW: "+qa(b,16)+" ("+ta(b)+")");return}if("p"==e)d=80286<=a.H.ca;else{f=e.indexOf("=");if(0<f)b=e.substr(f+1),e=e.substr(0,f);else if(2<b.length)b=b[2];else{a.P("missing value for "+b[1]);return}g=dy(a,b);if(void 0===g)return;f=!0;h=e.toUpperCase();"E"==h.charAt(0)&&4>=a.ta&&(h=null);switch(h){case "AL":a.H.D=
a.H.D&-256|g&255;break;case "AH":a.H.D=a.H.D&-65281|g<<8&255;break;case "AX":a.H.D=a.H.D&-65536|g&65535;break;case "BL":a.H.G=a.H.G&-256|g&255;break;case "BH":a.H.G=a.H.G&-65281|g<<8&255;break;case "BX":a.H.G=a.H.G&-65536|g&65535;break;case "CL":a.H.I=a.H.I&-256|g&255;break;case "CH":a.H.I=a.H.I&-65281|g<<8&255;break;case "CX":a.H.I=a.H.I&-65536|g&65535;break;case "DL":a.H.L=a.H.L&-256|g&255;break;case "DH":a.H.L=a.H.L&-65281|g<<8&255;break;case "DX":a.H.L=a.H.L&-65536|g&65535;break;case "SP":he(a.H,
z(a.H)&-65536|g&65535);break;case "BP":a.H.M=a.H.M&-65536|g&65535;break;case "SI":a.H.K=a.H.K&-65536|g&65535;break;case "DI":a.H.J=a.H.J&-65536|g&65535;break;case "DS":ne(a.H,g);break;case "ES":oe(a.H,g);break;case "SS":ge(a.H,g);break;case "CS":Zf(a.H,g);a.K=iy(a,A(a.H),a.H.Z.U);break;case "IP":case "EIP":C(a.H,g);a.K=iy(a,A(a.H),a.H.Z.U);break;case "PC":case "PS":se(a.H,g);break;case "C":g?kg(a.H):lg(a.H);break;case "P":g?(e=a.H,e.resultType&=-3,e.O|=4):(e=a.H,e.resultType&=-3,e.O&=-5);break;case "A":g?
sg(a.H):qg(a.H);break;case "Z":g?vg(a.H):rg(a.H);break;case "S":g?(e=a.H,e.resultType&=-17,e.O|=128):(e=a.H,e.resultType&=-17,e.O&=-129);break;case "I":g?(e=a.H,e.O|=512):(e=a.H,e.O&=-513);break;case "D":g?(e=a.H,e.O|=1024):(e=a.H,e.O&=-1025);break;case "V":g?mg(a.H):ng(a.H);break;default:var k=!0;if(80286<=a.H.ca)switch(k=!1,h){case "MS":wg(a.H,g);break;case "TR":-1===a.H.la.load(g)&&(f=!1);break;default:if(k=!0,80386<=a.H.ca)switch(k=!1,h){case "EAX":a.H.D=g;break;case "EBX":a.H.G=g;break;case "ECX":a.H.I=
g;break;case "EDX":a.H.L=g;break;case "ESP":he(a.H,g);break;case "EBP":a.H.M=g;break;case "ESI":a.H.K=g;break;case "EDI":a.H.J=g;break;case "FS":a.H.Ga.load(g);break;case "GS":a.H.Ha.load(g);break;case "CR0":a.H.qa=g;bk.call(a.H,g);break;case "CR2":a.H.Cd=g;break;case "CR3":a.H.Wc=g;ue.call(a.H,g);break;default:k=!0}}if(k){a.P("unknown register: "+e);return}}if(!f){a.P("invalid value: "+b);return}Cd(a.H);a.P("updated registers:")}}a.P(ZA(a,d));c&&(a.K=iy(a,A(a.H),a.H.Z.U),Rz(a,Gy(a.K)))}}
z(a.H)&-65536|g&65535);break;case "BP":a.H.M=a.H.M&-65536|g&65535;break;case "SI":a.H.K=a.H.K&-65536|g&65535;break;case "DI":a.H.J=a.H.J&-65536|g&65535;break;case "DS":ne(a.H,g);break;case "ES":oe(a.H,g);break;case "SS":ge(a.H,g);break;case "CS":Zf(a.H,g);a.L=iy(a,A(a.H),a.H.Z.U);break;case "IP":case "EIP":C(a.H,g);a.L=iy(a,A(a.H),a.H.Z.U);break;case "PC":case "PS":se(a.H,g);break;case "C":g?kg(a.H):lg(a.H);break;case "P":g?(e=a.H,e.resultType&=-3,e.O|=4):(e=a.H,e.resultType&=-3,e.O&=-5);break;case "A":g?
sg(a.H):qg(a.H);break;case "Z":g?tg(a.H):rg(a.H);break;case "S":g?(e=a.H,e.resultType&=-17,e.O|=128):(e=a.H,e.resultType&=-17,e.O&=-129);break;case "I":g?(e=a.H,e.O|=512):(e=a.H,e.O&=-513);break;case "D":g?(e=a.H,e.O|=1024):(e=a.H,e.O&=-1025);break;case "V":g?mg(a.H):ng(a.H);break;default:var k=!0;if(80286<=a.H.ca)switch(k=!1,h){case "MS":wg(a.H,g);break;case "TR":-1===a.H.la.load(g)&&(f=!1);break;default:if(k=!0,80386<=a.H.ca)switch(k=!1,h){case "EAX":a.H.D=g;break;case "EBX":a.H.G=g;break;case "ECX":a.H.I=
g;break;case "EDX":a.H.L=g;break;case "ESP":he(a.H,g);break;case "EBP":a.H.M=g;break;case "ESI":a.H.K=g;break;case "EDI":a.H.J=g;break;case "FS":a.H.Ga.load(g);break;case "GS":a.H.Ha.load(g);break;case "CR0":a.H.qa=g;bk.call(a.H,g);break;case "CR2":a.H.Cd=g;break;case "CR3":a.H.Wc=g;ue.call(a.H,g);break;default:k=!0}}if(k){a.P("unknown register: "+e);return}}if(!f){a.P("invalid value: "+b);return}Cd(a.H);a.P("updated registers:")}}a.P(ZA(a,d));c&&(a.L=iy(a,A(a.H),a.H.Z.U),Rz(a,Gy(a.L)))}}
function gB(a,b){b=Ca(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.P(Jz(a,c[2])):dy(a,b,!1)}function hB(a,b,c){for(var d=null,e=b.Ja,f=e,g=1;6>=g&&e;g++){if(2<g){b.Ja=e;b.ya=null;var h=Yz(a,b);if(0<=h.indexOf("CALL")||c&&0<=h.indexOf("INT")){var k=h.indexOf(" ");if(e+(h.indexOf(" ",k+1)-k-1)/2==f){d=h;break}}}e--}b.Ja=f;return d}function iB(a,b,c){var d="t"!=b;c=$x(a,c,null,!0)||1;var e=1==c?0:1;"tc"==b&&(e=c,c=1);Ya(c,function(){return Lb(a,!0)&&Hy(a,e,d,!1)},function(){Cd(a.H);Lb(a,!1)})}
function PA(a,b,c){if(a.bh=b)null!=a.pj&&(a.Hb=a.pj),null!=a.oj&&(a.dc=a.oj),a.pj=a.Hb,a.oj=a.dc;a.Fe=c||0}
function Rz(a,b,c,d){if(b=Qy(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c){d=Qy(a,c,!0);if(!d||d.Ja<b.Ja)return;e=d.Ja-b.Ja;if(256<e){a.P("range too large");return}d=-1}c=0;var f;for(PA(b,!0);0<e&&d--;){f=Kb(a,!1)||a.I?a.M:null;var g=null!=f?"cycles":null,h=EA(a,b),k=b.ya;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.P(m)}h[3]&&(g=h[3],f=null);f=Yz(a,b,g,f);b.bh||d||d++;a.P(f);a.K=b;e-=b.ya-k;c++}}}
function Rz(a,b,c,d){if(b=Qy(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c){d=Qy(a,c,!0);if(!d||d.Ja<b.Ja)return;e=d.Ja-b.Ja;if(256<e){a.P("range too large");return}d=-1}c=0;var f;for(PA(b,!0);0<e&&d--;){f=Kb(a,!1)||a.J?a.M:null;var g=null!=f?"cycles":null,h=EA(a,b),k=b.ya;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.P(m)}h[3]&&(g=h[3],f=null);f=Yz(a,b,g,f);b.bh||d||d++;a.P(f);a.L=b;e-=b.ya-k;c++}}}
l.Cg=function(a,b,c){if(b)if(a){0>this.A&&this.C.length&&(this.A=0);if(0>this.A||a!=this.C[this.A])this.C.splice(0,0,a),this.A=0;this.A--}else a=this.C[this.A+1];b=[];if(a){a=a.toLowerCase().replace(/""/g,"'");var d=0,e=null;c=c||";";for(var f=0;f<=a.length;f++){var g=a.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==c&&!e||!g)b.push(Ca(a.substring(d,f))),d=f+1}}return b};
function Xz(a,b,c){var d=!0;try{if(!b.length||"end"==b)a.da&&(a.P("ended assemble at "+Gy(a.aa)),a.K=a.aa,a.da=!1),b="";else if(!c){var e=">> ";a.H.qa&1&&(e=a.H.O&131072?"-- ":"## ");a.P(e+b)}var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.za=null;if(Ib(a)&&0<b.length){a.da&&(b="a "+Gy(a.aa)+" "+b);var g=b.replace(/ +/g," ").split(" ");if(g&&g.length)for(var h=g[0],k=h.charAt(0),m=1;m<h.length;m++){var p=h.charAt(m);if("?"==k||"r"==k||"a">p||"z"<p){g[0]=h.substr(m);g.unshift(h.substr(0,m));break}}switch(g[0].charAt(0)){case "a":var v=
function Xz(a,b,c){var d=!0;try{if(!b.length||"end"==b)a.da&&(a.P("ended assemble at "+Gy(a.aa)),a.L=a.aa,a.da=!1),b="";else if(!c){var e=">> ";a.H.qa&1&&(e=a.H.O&131072?"-- ":"## ");a.P(e+b)}var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.za=null;if(Ib(a)&&0<b.length){a.da&&(b="a "+Gy(a.aa)+" "+b);var g=b.replace(/ +/g," ").split(" ");if(g&&g.length)for(var h=g[0],k=h.charAt(0),m=1;m<h.length;m++){var p=h.charAt(m);if("?"==k||"r"==k||"a">p||"z"<p){g[0]=h.substr(m);g.unshift(h.substr(0,m));break}}switch(g[0].charAt(0)){case "a":var v=
Qy(a,g[1],!0);if(v)if(a.aa=v,void 0===g[2])a.P("begin assemble at "+Gy(v)),a.da=!0,Cd(a.H);else{var u;a.P("not supported yet");u=[];if(u.length){for(var E=0;E<u.length;E++)a.fc(v,u[E],1);a.P(Yz(a,a.aa))}}break;case "b":a:{var K=g[0],H=g[1],I=b;if("?"==H)a.P("breakpoint commands:"),a.P("\tbi [p]\ttoggle break on input port [p]"),a.P("\tbo [p]\ttoggle break on output port [p]"),a.P("\tbp [a]\tset exec breakpoint at addr [a]"),a.P("\tbr [a]\tset read breakpoint at addr [a]"),a.P("\tbw [a]\tset write breakpoint at addr [a]"),
a.P("\tbc [a]\tclear breakpoint at addr [a]"),a.P("\tbl\tlist all breakpoints"),a.P("\tbn [n]\tbreak after [n] instruction(s)");else{var T=K.charAt(1);if("l"==T){var L;L=0+Wz(a,a.B);L+=Wz(a,a.Z);(L+=Wz(a,a.N))||a.P("no breakpoints")}else if("n"==T)a.xa=$x(a,H),a.P("break after "+a.xa+" instruction(s)");else if(void 0===H)a.P("missing breakpoint address");else{var ua={};if("*"!=H&&(ua=Qy(a,H,!0,!0),!ua))break a;H=null==ua.Ja?H:ta(ua.Ja);"c"==T?null==ua.Ja?(jy(a),a.P("all breakpoints cleared")):Fy(a,
a.B,ua)||Fy(a,a.Z,ua)||Fy(a,a.N,ua)||a.P("breakpoint missing: "+Gy(ua)):"i"==T?a.P("breakpoint "+(Nc(a.ka,ua.Ja)?"enabled":"cleared")+": port "+H+" (input)"):"o"==T?a.P("breakpoint "+(Rc(a.ka,ua.Ja)?"enabled":"cleared")+": port "+H+" (output)"):null!=ua.Ja&&(Ty(a,ua,I),"p"==T?a.Gd(a.B,ua):"r"==T?a.Gd(a.Z,ua):"w"==T?a.Gd(a.N,ua):a.P("unknown breakpoint command: "+T))}}}break;case "c":aB(a);break;case "d":a:{var ca=g,xb,za=ca[0],cb=ca[1],Sa=ca[2],rb=ca[3];if("?"==cb){var db="";for(xb in Sb)a.Ba[xb]&&
(db&&(db+=","),db+=xb);db+=",state,symbols";a.P("dump memory commands:");a.P("\tdb [a] [#] dump # bytes at address a");a.P("\tdw [a] [#] dump # words at address a");a.P("\tdd [a] [#] dump # dwords at address a");a.P("\tdh [#] [#] dump # instructions from history");a.P("\tdi [#] dump descriptor info for IDT #");a.P("\tds [#] dump descriptor info for selector #");db.length&&a.P("dump extension commands:\n\t"+db)}else if("state"==cb){var rc=jB(a.pa,!0);rc?"console"==Sa?console.log(rc):
(aB(a),a.P(rc)):a.P("powerOff() error")}else if("symbols"==cb)for(var ib=0;ib<a.D.length;ib++){var cf=a.D[ib],Ld;for(Ld in cf.Fd)if("."!=Ld.charAt(0)){var df=cf.Fd[Ld],tg=df.o;if(void 0!==tg){var ef=df.s;void 0===ef&&(ef=cf.U);var ug=cf.Fd[Ld].l;ug&&(Ld=ug);a.P(vy(tg,ef)+" "+Ld)}}}else{if("ds"==za||"dg"==za||"dl"==za)za="d",ca=[za,"desc",cb];"d"==za&&"page"==cb&&(za="dp",ca.shift());if("dp"==za){ca.shift();var qm=ca[0];if(qm){var Og=a.Sb(Qy(a,qm));if(-1===Og)a.P("invalid address: "+qm);else{var nf,
Qa=null;if(80386<=a.H.ca){var of=a.ka,Qa={};Qa.Jk=(Og&-4194304)>>>20;Qa.Ti=a.H.Wc+Qa.Jk;Qa.ob=of.aa[(Qa.Ti&of.C)>>>of.A];Qa.Aj=Qa.ob.Nd(Qa.Jk);Qa.Kk=(Og&4190208)>>>10;Qa.Ui=(Qa.Aj&-4096)+Qa.Kk;Qa.pb=of.aa[(Qa.Ui&of.C)>>>of.A];Qa.Bj=Qa.pb.Nd(Qa.Kk);Qa.ul=(Qa.Bj&-4096)+(Og&4095)}if(nf=Qa){a.P("linear PDE addr PDE PTE addr PTE physical");a.P("--------- ---------- -------- ---------- -------- ----------");var ve="%"+q(Og),ve=ve+(" %%"+Vy(nf.Ti,nf.Aj)),ve=
ve+(" %%"+Vy(nf.Ui,nf.Bj,!0)),ve=ve+(" %%"+q(nf.ul));a.P(ve)}else a.P("unsupported operation")}}else a.P("missing address")}else{if("d"==za){if("disk"==cb){ca[0]="l";ca[1]="json";eB(a,ca);break a}for(xb in Sb)if(ca[1]==xb){var xt=a.Ba[xb];xt?(ca.shift(),ca.shift(),xt(ca)):a.P("no dump registered for "+cb);break a}cb||(za=a.lb||"db")}else a.lb=za;if("dh"==za){var yt=cb,zt=Sa,At="",Bt=0,Lc=a.ma,jd=a.O;if(jd.length){var uc=+yt||a.Ya,Pg=+zt||10;isNaN(uc)?uc=Pg:At="more ";uc>jd.length&&(a.P("note: only "+
jd.length+" available"),uc=jd.length);Lc-=uc;0>Lc&&(null==jd[jd.length-1].U?(uc=Lc+uc,Lc=0):Lc+=jd.length);var rm=[];"call"==zt&&(Pg=1E5,rm=["CALL"]);for(void 0!==yt&&a.P(uc+" instructions earlier:");0<Pg&&Lc!=a.ma;){var we=jd[Lc++];if(null==we.U)break;var Qg=iy(a,we.Ja,we.U,we.ya,we.type,we.Hb,we.dc),$B=uc--,Ct=Yz(a,Qg,"history",$B);(!rm.length||0<=Ct.indexOf(rm[0]))&&a.P(Ct);Qg.Fe&&(Lc+=Qg.Fe,Pg-=Qg.Fe,uc-=Qg.Fe);Lc>=jd.length&&(Lc=0);a.Ya=uc;Bt++;Pg--}}Bt||(a.P("no "+At+"history available"),a.Ya=
void 0)}else if("di"==za){ca.shift();var sm=ca[0];if(sm){var Rg=$x(a,sm);if(void 0===Rg||0>Rg||255<Rg)a.P("invalid vector: "+sm);else{var Dt="&",Et=!!(a.H.qa&1),Ft=!1,Vi=a.H.Pb+(Rg<<(Et?3:2)),Gt=a.H.ja(Vi+0),aC=a.H.ja(Vi+2);Et&&(Dt="#",a.H.ja(Vi+4)&2048&&(Ft=!0,Gt|=a.H.ja(Vi+6)<<16));a.P("dumpIDT("+ta(Rg)+"): "+Dt+q(aC,4)+":"+q(Gt,Ft?8:4))}}else a.P("no IDT vector")}else if("dt"==za)ca.shift(),a.P("no information");else{var pf=Qy(a,cb);if(pf&&(null!=pf.U||null!=pf.ya)){var Wi=0;Sa&&("l"==Sa.charAt(0)&&
(Sa=Sa.substr(1)||rb),Wi=$x(a,Sa)>>>0,65536<Wi&&(Wi=65536));for(var Sg="",qf="dd"==za?4:"dw"==za?2:1,Xi=qf*Wi||128,bC=Xi+15>>4||1;bC--&&0<Xi;){var Tg=0,tm=0,Ug,um="",Ht="",cb=Gy(pf);for(Ug=4==qf?16:a.L;0<Ug&&0<Xi;Ug--){var Yi=a.Ia(pf,1),Tg=Tg|Yi<<(tm++<<3);tm==qf&&(um+=8==a.L?sa(Tg,3*qf):q(Tg,2*qf),um+=1==qf?9==Ug?"-":" ":" ",Tg=tm=0);Ht+=32<=Yi&&128>Yi?String.fromCharCode(Yi):".";Xi--}Sg&&(Sg+="\n");Sg+=cb+" "+um+(Ug?"":" "+Ht)}Sg&&a.P(Sg);a.Ta=pf}}}}}break;case "e":if("else"==g[0])break;var Zi=
1,It=255,Jt=a.Ia,Kt=a.fc;"ew"==g[0]&&(Zi=2,It=65535,Jt=a.Yc,Kt=a.il);var Lt=Zi<<1,Mt=g[1];if(null==Mt)a.P("edit memory commands:"),a.P("\teb [a] [...] edit bytes at address a"),a.P("\tew [a] [...] edit words at address a");else{var $i=Qy(a,Mt);if($i)for(var aj=2;aj<g.length;aj++){var Vg=dy(a,g[aj]);if(void 0===Vg){a.P("unrecognized value: "+g[aj]);break}Vg&~It&&a.P("warning: "+q(Vg)+" exceeds "+Zi+"-byte value");var cC=Jt.call(a,$i);a.P("changing "+Gy($i)+" from "+q(cC,Lt,!0)+" to "+q(Vg,Lt,!0));
Kt.call(a,$i,Vg,Zi)}}break;case "f":bB(a,g[1]);break;case "g":a:{var Nt=g[1],dC=b;"gt"==g[0]&&(a.Ca=!0);if(void 0!==Nt){var vm=Qy(a,Nt,!0);if(!vm)break a;Ty(a,vm,dC);a.Gd(a.B,vm,!0)}Oz(a,!0)||c||a.P("cpu busy or unavailable, run command ignored")}break;case "h":a:{var wm;if(a.ea.wb)wm="halting",a.Jb();else{if(Kb(a,!0))break a;wm="already halted"}c||a.P(wm)}break;case "i":if("if"==g[0]){var xm;var Wg=b.substr(2),Wg=Ca(Wg);dy(a,Wg)?(c||a.P("true: "+Wg),xm=!0):(c||a.P("false: "+Wg),xm=!1);xm||(d=!1);
break}if("int"==g[0]){var bj;a:switch($x(a,g[1])){case 19:Wk(a,19,a.H.da,!0);a.ha=a.Y;bj=!0;break a;case 33:Wk(a,33,a.H.da,!0);a.ha=a.Y;bj=!0;break a;default:bj=!1}bj||(d=!1);break}var ym=g[1];if(ym&&"?"!=ym){var zm=$x(a,ym);if(void 0!==zm){var eC=Pc(a.ka,zm,1);a.P(ta(zm)+": "+r(eC))}}else a.P("input commands:"),a.P("\ti [p]\tread port [p]"),a.P("warning: port accesses can affect hardware state");break;case "k":var fC=g[0];if("?"==g[1])a.P("stack trace commands:"),a.P("\tk\tshow frame addresses"),
a.P("\tks\tshow symbol information");else{var Am=0,Ot=a.H.Z.U,Xg=iy(a),Sd=iy(a,z(a.H),a.H.Y.U);for(a.P("stack trace for "+Gy(Sd));10>Am;){for(var kd=null,gC=256;Sd.Ja>>>0<a.H.cg>>>0;){Xg.Ja=a.jb(Sd,!0);if(null==Sd.ya||!gC--)break;Xg.U=Ot;if(kd=hB(a,Xg))break;Xg.U=a.jb(Sd);if(kd=hB(a,Xg,!0)){Ot=a.jb(Sd,!0);0<kd.indexOf("INT")&&a.jb(Sd,!0);break}}if(!kd||null==kd)break;var Pt=null;if("ks"==fC){var Qt=kd.match(/[0-9A-F]+$/);Qt&&(Pt=dB(a,Qt[0]))}kd=Ba(kd,50)+" ;"+(Pt||"stack="+Gy(Sd));a.P(kd);Am++}Am||
a.P("no return addresses found")}break;case "l":if("ln"==g[0]){dB(a,g[1],!0);break}eB(a,g);break;case "m":if("mouse"==g[0]){var Bm=g[1],cj=g[2];if(a.G){var Rt=1;"-"==cj.charAt(0)&&(Rt=-1,cj=cj.substr(1));var xe=$x(a,cj,Bm);if(void 0!==xe)switch(xe=xe*Rt|0,Bm){case "x":a.G.tf(xe,0);break;case "y":a.G.tf(0,xe);break;case "click":a.G.Vd(xe,!0);a.G.Vd(xe,!1);break;default:a.P("unknown action: "+Bm)}}else a.P("no mouse");break}a:{var ld,md=null,fb=g[1];"?"==fb&&(fb=void 0);if(void 0!==fb){var ye=0;if("all"==
fb)ye=1610481663,fb=null;else if("on"==fb)md=!0,fb=null;else if("off"==fb)md=!1,fb=null;else{"keys"==fb&&(fb="key");"kbd"==fb&&(fb="keyboard");for(ld in Sb)if(fb==ld){ye=Sb[ld];md=!!(a.ic&ye);break}if(!ye){a.P("unknown message category: "+fb);break a}}ye&&("on"==g[2]?(a.ic|=ye,md=!0):"off"==g[2]&&(a.ic&=~ye,md=!1))}var hC=0,Yg="";for(ld in Sb)if(!fb||fb==ld){var iC=!!(a.ic&Sb[ld]);if(null===md||md==iC)Yg&&(Yg+=","),++hC%10||(Yg+="\n\t"),"key"==ld&&(ld="keys"),Yg+=ld}void 0===fb&&a.P("message commands:\n\tm [category] [on|off]\tturn categories on/off");
a.P((null!==md?md?"messages on: ":"messages off: ":"message categories:\n\t")+(Yg||"none"));ky(a)}break;case "o":var Cm=g[1],jC=g[2];if(Cm&&"?"!=Cm){var Dm=$x(a,Cm,"port #"),Em=$x(a,jC);void 0!==Dm&&void 0!==Em&&(Tc(a.ka,Dm,1,Em),a.P(ta(Dm)+": "+r(Em)))}else a.P("output commands:"),a.P("\to [p] [b]\twrite byte [b] to port [p]"),a.P("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){gB(a,b.substr(5));break}var St="pr"==g[0]?1:0,rf=1+St;if(a.I)a.P("step in progress");
else{var dj,Tt=!1,Hb=iy(a,A(a.H),a.H.Z.U);do switch(dj=!1,a.Ia(Hb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:Ly(a,Hb,1);dj=!0;break;case 204:case 206:a.I=rf;Ly(a,Hb,1);break;case 205:case 224:case 225:case 226:a.I=rf;Ly(a,Hb,Hb.Hb?4:2);break;case 232:a.I=rf;Ly(a,Hb,Hb.Hb?5:3);break;case 154:a.I=rf;Ly(a,Hb,Hb.Hb?7:5);break;case 255:var Ut=a.jb(Hb)&14591;if(4351==Ut||6399==Ut)a.I=rf,Yz(a,Hb);break;case 243:case 242:Ly(a,Hb,1);Tt=dj=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:Tt&&
(a.I=rf,Ly(a,Hb,1))}while(dj);a.I?(a.Gd(a.B,Hb,!0),Oz(a)||(a.pa&&a.pa.ld(),a.I=0)):iB(a,St?"tr":"t")}break;case "r":if("reset"==b){a.pa&&a.pa.reset();break}Qz(a,g);break;case "t":iB(a,g[0],g[1]);break;case "u":Rz(a,g[1],g[2],8);break;case "v":if("var"==g[0]){cB(a,b.substr(3))||(d=!1);break}a.P("PCx86 version 1.34.2 ("+a.H.ca+",RELEASE,NOPREFETCH"+(Ob?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)");a.P(Na());break;case "x":a:if(g[1]&&"?"!=g[1])switch(g[1]){case "cs":var Zg;void 0!==g[3]&&(Zg=+g[3]);
switch(g[2]){case "int":a.H.T.Se=Zg;break;case "start":a.H.T.wf=Zg;break;case "stop":a.H.T.Ue=Zg;break;default:a.P("unknown cs option");break a}void 0!==Zg&&Bd(a.H);a.P("checksums "+(a.H.ea.He?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(Fd(a.H,+g[2])||a.P("warning: using 1x multiplier, previous target not reached"));a.P("target speed: "+(a.H.T.oe.toFixed(2)+"Mhz")+" ("+a.H.T.Kd+"x)");break;default:a.P("unknown option: "+g[1])}else a.P("execution options:"),a.P("\tcs int #\tset checksum cycle interval to #"),
(aB(a),a.P(rc)):a.P("powerOff() error")}else if("symbols"==cb)for(var ib=0;ib<a.D.length;ib++){var cf=a.D[ib],Ld;for(Ld in cf.Fd)if("."!=Ld.charAt(0)){var df=cf.Fd[Ld],ug=df.o;if(void 0!==ug){var ef=df.s;void 0===ef&&(ef=cf.U);var vg=cf.Fd[Ld].l;vg&&(Ld=vg);a.P(vy(ug,ef)+" "+Ld)}}}else{if("ds"==za||"dg"==za||"dl"==za)za="d",ca=[za,"desc",cb];"d"==za&&"page"==cb&&(za="dp",ca.shift());if("dp"==za){ca.shift();var qm=ca[0];if(qm){var Pg=a.Sb(Qy(a,qm));if(-1===Pg)a.P("invalid address: "+qm);else{var of,
Qa=null;if(80386<=a.H.ca){var pf=a.ka,Qa={};Qa.Jk=(Pg&-4194304)>>>20;Qa.Ti=a.H.Wc+Qa.Jk;Qa.ob=pf.aa[(Qa.Ti&pf.C)>>>pf.A];Qa.Aj=Qa.ob.Nd(Qa.Jk);Qa.Kk=(Pg&4190208)>>>10;Qa.Ui=(Qa.Aj&-4096)+Qa.Kk;Qa.pb=pf.aa[(Qa.Ui&pf.C)>>>pf.A];Qa.Bj=Qa.pb.Nd(Qa.Kk);Qa.ul=(Qa.Bj&-4096)+(Pg&4095)}if(of=Qa){a.P("linear PDE addr PDE PTE addr PTE physical");a.P("--------- ---------- -------- ---------- -------- ----------");var ve="%"+q(Pg),ve=ve+(" %%"+Vy(of.Ti,of.Aj)),ve=
ve+(" %%"+Vy(of.Ui,of.Bj,!0)),ve=ve+(" %%"+q(of.ul));a.P(ve)}else a.P("unsupported operation")}}else a.P("missing address")}else{if("d"==za){if("disk"==cb){ca[0]="l";ca[1]="json";eB(a,ca);break a}for(xb in Sb)if(ca[1]==xb){var xt=a.Ba[xb];xt?(ca.shift(),ca.shift(),xt(ca)):a.P("no dump registered for "+cb);break a}cb||(za=a.lb||"db")}else a.lb=za;if("dh"==za){var yt=cb,zt=Sa,At="",Bt=0,Lc=a.ma,jd=a.O;if(jd.length){var uc=+yt||a.Ya,Qg=+zt||10;isNaN(uc)?uc=Qg:At="more ";uc>jd.length&&(a.P("note: only "+
jd.length+" available"),uc=jd.length);Lc-=uc;0>Lc&&(null==jd[jd.length-1].U?(uc=Lc+uc,Lc=0):Lc+=jd.length);var rm=[];"call"==zt&&(Qg=1E5,rm=["CALL"]);for(void 0!==yt&&a.P(uc+" instructions earlier:");0<Qg&&Lc!=a.ma;){var we=jd[Lc++];if(null==we.U)break;var Rg=iy(a,we.Ja,we.U,we.ya,we.type,we.Hb,we.dc),$B=uc--,Ct=Yz(a,Rg,"history",$B);(!rm.length||0<=Ct.indexOf(rm[0]))&&a.P(Ct);Rg.Fe&&(Lc+=Rg.Fe,Qg-=Rg.Fe,uc-=Rg.Fe);Lc>=jd.length&&(Lc=0);a.Ya=uc;Bt++;Qg--}}Bt||(a.P("no "+At+"history available"),a.Ya=
void 0)}else if("di"==za){ca.shift();var sm=ca[0];if(sm){var Sg=$x(a,sm);if(void 0===Sg||0>Sg||255<Sg)a.P("invalid vector: "+sm);else{var Dt="&",Et=!!(a.H.qa&1),Ft=!1,Wi=a.H.Pb+(Sg<<(Et?3:2)),Gt=a.H.ja(Wi+0),aC=a.H.ja(Wi+2);Et&&(Dt="#",a.H.ja(Wi+4)&2048&&(Ft=!0,Gt|=a.H.ja(Wi+6)<<16));a.P("dumpIDT("+ta(Sg)+"): "+Dt+q(aC,4)+":"+q(Gt,Ft?8:4))}}else a.P("no IDT vector")}else if("dt"==za)ca.shift(),a.P("no information");else{var qf=Qy(a,cb);if(qf&&(null!=qf.U||null!=qf.ya)){var Xi=0;Sa&&("l"==Sa.charAt(0)&&
(Sa=Sa.substr(1)||rb),Xi=$x(a,Sa)>>>0,65536<Xi&&(Xi=65536));for(var Tg="",rf="dd"==za?4:"dw"==za?2:1,Yi=rf*Xi||128,bC=Yi+15>>4||1;bC--&&0<Yi;){var Ug=0,tm=0,Vg,um="",Ht="",cb=Gy(qf);for(Vg=4==rf?16:a.F;0<Vg&&0<Yi;Vg--){var Zi=a.Ia(qf,1),Ug=Ug|Zi<<(tm++<<3);tm==rf&&(um+=8==a.F?sa(Ug,3*rf):q(Ug,2*rf),um+=1==rf?9==Vg?"-":" ":" ",Ug=tm=0);Ht+=32<=Zi&&128>Zi?String.fromCharCode(Zi):".";Yi--}Tg&&(Tg+="\n");Tg+=cb+" "+um+(Vg?"":" "+Ht)}Tg&&a.P(Tg);a.Ta=qf}}}}}break;case "e":if("else"==g[0])break;var $i=
1,It=255,Jt=a.Ia,Kt=a.fc;"ew"==g[0]&&($i=2,It=65535,Jt=a.Yc,Kt=a.il);var Lt=$i<<1,Mt=g[1];if(null==Mt)a.P("edit memory commands:"),a.P("\teb [a] [...] edit bytes at address a"),a.P("\tew [a] [...] edit words at address a");else{var aj=Qy(a,Mt);if(aj)for(var bj=2;bj<g.length;bj++){var Wg=dy(a,g[bj]);if(void 0===Wg){a.P("unrecognized value: "+g[bj]);break}Wg&~It&&a.P("warning: "+q(Wg)+" exceeds "+$i+"-byte value");var cC=Jt.call(a,aj);a.P("changing "+Gy(aj)+" from "+q(cC,Lt,!0)+" to "+q(Wg,Lt,!0));
Kt.call(a,aj,Wg,$i)}}break;case "f":bB(a,g[1]);break;case "g":a:{var Nt=g[1],dC=b;"gt"==g[0]&&(a.Ca=!0);if(void 0!==Nt){var vm=Qy(a,Nt,!0);if(!vm)break a;Ty(a,vm,dC);a.Gd(a.B,vm,!0)}Oz(a,!0)||c||a.P("cpu busy or unavailable, run command ignored")}break;case "h":a:{var wm;if(a.ea.wb)wm="halting",a.Jb();else{if(Kb(a,!0))break a;wm="already halted"}c||a.P(wm)}break;case "i":if("if"==g[0]){var xm;var Xg=b.substr(2),Xg=Ca(Xg);dy(a,Xg)?(c||a.P("true: "+Xg),xm=!0):(c||a.P("false: "+Xg),xm=!1);xm||(d=!1);
break}if("int"==g[0]){var cj;a:switch($x(a,g[1])){case 19:Wk(a,19,a.H.da,!0);a.ha=a.Y;cj=!0;break a;case 33:Wk(a,33,a.H.da,!0);a.ha=a.Y;cj=!0;break a;default:cj=!1}cj||(d=!1);break}var ym=g[1];if(ym&&"?"!=ym){var zm=$x(a,ym);if(void 0!==zm){var eC=Pc(a.ka,zm,1);a.P(ta(zm)+": "+r(eC))}}else a.P("input commands:"),a.P("\ti [p]\tread port [p]"),a.P("warning: port accesses can affect hardware state");break;case "k":var fC=g[0];if("?"==g[1])a.P("stack trace commands:"),a.P("\tk\tshow frame addresses"),
a.P("\tks\tshow symbol information");else{var Am=0,Ot=a.H.Z.U,Yg=iy(a),Sd=iy(a,z(a.H),a.H.Y.U);for(a.P("stack trace for "+Gy(Sd));10>Am;){for(var kd=null,gC=256;Sd.Ja>>>0<a.H.cg>>>0;){Yg.Ja=a.jb(Sd,!0);if(null==Sd.ya||!gC--)break;Yg.U=Ot;if(kd=hB(a,Yg))break;Yg.U=a.jb(Sd);if(kd=hB(a,Yg,!0)){Ot=a.jb(Sd,!0);0<kd.indexOf("INT")&&a.jb(Sd,!0);break}}if(!kd||null==kd)break;var Pt=null;if("ks"==fC){var Qt=kd.match(/[0-9A-F]+$/);Qt&&(Pt=dB(a,Qt[0]))}kd=Ba(kd,50)+" ;"+(Pt||"stack="+Gy(Sd));a.P(kd);Am++}Am||
a.P("no return addresses found")}break;case "l":if("ln"==g[0]){dB(a,g[1],!0);break}eB(a,g);break;case "m":if("mouse"==g[0]){var Bm=g[1],dj=g[2];if(a.G){var Rt=1;"-"==dj.charAt(0)&&(Rt=-1,dj=dj.substr(1));var xe=$x(a,dj,Bm);if(void 0!==xe)switch(xe=xe*Rt|0,Bm){case "x":a.G.tf(xe,0);break;case "y":a.G.tf(0,xe);break;case "click":a.G.Vd(xe,!0);a.G.Vd(xe,!1);break;default:a.P("unknown action: "+Bm)}}else a.P("no mouse");break}a:{var ld,md=null,fb=g[1];"?"==fb&&(fb=void 0);if(void 0!==fb){var ye=0;if("all"==
fb)ye=1610481663,fb=null;else if("on"==fb)md=!0,fb=null;else if("off"==fb)md=!1,fb=null;else{"keys"==fb&&(fb="key");"kbd"==fb&&(fb="keyboard");for(ld in Sb)if(fb==ld){ye=Sb[ld];md=!!(a.ic&ye);break}if(!ye){a.P("unknown message category: "+fb);break a}}ye&&("on"==g[2]?(a.ic|=ye,md=!0):"off"==g[2]&&(a.ic&=~ye,md=!1))}var hC=0,Zg="";for(ld in Sb)if(!fb||fb==ld){var iC=!!(a.ic&Sb[ld]);if(null===md||md==iC)Zg&&(Zg+=","),++hC%10||(Zg+="\n\t"),"key"==ld&&(ld="keys"),Zg+=ld}void 0===fb&&a.P("message commands:\n\tm [category] [on|off]\tturn categories on/off");
a.P((null!==md?md?"messages on: ":"messages off: ":"message categories:\n\t")+(Zg||"none"));ky(a)}break;case "o":var Cm=g[1],jC=g[2];if(Cm&&"?"!=Cm){var Dm=$x(a,Cm,"port #"),Em=$x(a,jC);void 0!==Dm&&void 0!==Em&&(Tc(a.ka,Dm,1,Em),a.P(ta(Dm)+": "+r(Em)))}else a.P("output commands:"),a.P("\to [p] [b]\twrite byte [b] to port [p]"),a.P("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){gB(a,b.substr(5));break}var St="pr"==g[0]?1:0,sf=1+St;if(a.J)a.P("step in progress");
else{var ej,Tt=!1,Hb=iy(a,A(a.H),a.H.Z.U);do switch(ej=!1,a.Ia(Hb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:Ly(a,Hb,1);ej=!0;break;case 204:case 206:a.J=sf;Ly(a,Hb,1);break;case 205:case 224:case 225:case 226:a.J=sf;Ly(a,Hb,Hb.Hb?4:2);break;case 232:a.J=sf;Ly(a,Hb,Hb.Hb?5:3);break;case 154:a.J=sf;Ly(a,Hb,Hb.Hb?7:5);break;case 255:var Ut=a.jb(Hb)&14591;if(4351==Ut||6399==Ut)a.J=sf,Yz(a,Hb);break;case 243:case 242:Ly(a,Hb,1);Tt=ej=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:Tt&&
(a.J=sf,Ly(a,Hb,1))}while(ej);a.J?(a.Gd(a.B,Hb,!0),Oz(a)||(a.pa&&a.pa.ld(),a.J=0)):iB(a,St?"tr":"t")}break;case "r":if("reset"==b){a.pa&&a.pa.reset();break}Qz(a,g);break;case "t":iB(a,g[0],g[1]);break;case "u":Rz(a,g[1],g[2],8);break;case "v":if("var"==g[0]){cB(a,b.substr(3))||(d=!1);break}a.P("PCx86 version 1.34.2 ("+a.H.ca+",RELEASE,NOPREFETCH"+(Ob?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)");a.P(Na());break;case "x":a:if(g[1]&&"?"!=g[1])switch(g[1]){case "cs":var $g;void 0!==g[3]&&($g=+g[3]);
switch(g[2]){case "int":a.H.T.Se=$g;break;case "start":a.H.T.wf=$g;break;case "stop":a.H.T.Ue=$g;break;default:a.P("unknown cs option");break a}void 0!==$g&&Bd(a.H);a.P("checksums "+(a.H.ea.He?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(Fd(a.H,+g[2])||a.P("warning: using 1x multiplier, previous target not reached"));a.P("target speed: "+(a.H.T.oe.toFixed(2)+"Mhz")+" ("+a.H.T.Kd+"x)");break;default:a.P("unknown option: "+g[1])}else a.P("execution options:"),a.P("\tcs int #\tset checksum cycle interval to #"),
a.P("\tcs start #\tset checksum cycle start count to #"),a.P("\tcs stop #\tset checksum cycle stop count to #"),a.P("\tsp #\t\tset speed multiplier to #");break;case "?":if(g[1]){gB(a,b.substr(1));break}var Fm="commands:",Gm;for(Gm in kB)Fm+="\n"+Ba(Gm,7)+kB[Gm];Jg(a)||(Fm+="\nnote: frequency/history disabled if no exec breakpoints");a.P(Fm);break;default:a.P("unknown command: "+b),d=!1}}}catch(Wt){a.P("debugger error: "+(Wt.stack||Wt.message)),d=!1}return d}
function my(a,b,c){b=a.Cg(b,c);for(var d in b)if(!Xz(a,b[+d]))return!1;return!0}
var Lz={16:262144,19:524288,21:32768,22:65536,28:2048,33:134217728,51:16777216},Kz=[26,28,40,42,109],kB={"?":"help/print","a [#]":"assemble","b [#]":"breakpoint",c:"clear output","d [#]":"dump memory","e [#]":"edit memory",f:"frequencies","g [#]":"go [to #]",h:"halt","i [#]":"input port #","if":"eval expression",k:"stack trace",l:"load sector(s)",ln:"list nearest symbol(s)",m:"messages",mouse:"mouse action","o [#]":"output port #",p:"step over",print:"print expression",r:"dump/set registers",reset:"reset machine",

View file

@ -50,9 +50,9 @@ var la={163840:[40,1,8,,254],184320:[40,1,9,,252],327680:[40,2,8,,255],368640:[4
"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,Bd:65,wh:66,xh:67,zh:68,E:69,Ah:70,Bh:71,Ch:72,Dh:73,Eh:74,Fh:75,Gh:76,Hh:77,Ih:78,Jh:79,Kh:80,Q:81,Lh:82,Mh:83,Nh:84,Oh:85,Ph:86,Qh:87,Rh:88,Sh:89,sf:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,Cd:97,jk:98,kk:99,d:100,e:101,vk:102,wk:103,xk:104,yk:105,Jl:106,k:107,Ll:108,Pl:109,n:110,Vl:111,p:112,q:113,r:114,pn:115,t:116,sn:117,tn:118,un:119,x:120,
y:121,z:122,"{":123,"|":124,"}":125,"~":126,po:127},ma={};ma[173]=n["-"];ma[186]=n[";"];ma[187]=n["="];ma[189]=n["-"];ma[188]=n[","];ma[190]=n["."];ma[191]=n["/"];ma[192]=n["`"];ma[219]=n["["];ma[220]=n["\\"];ma[221]=n["]"];ma[222]=n["'"];var p={};p[n["1"]]=n["!"];p[n["2"]]=n["@"];p[n["3"]]=n["#"];p[n["4"]]=n.$;p[n["5"]]=n["%"];p[n["6"]]=n["^"];p[n["7"]]=n["&"];p[n["8"]]=n["*"];p[n["9"]]=n["("];p[n["0"]]=n[")"];p[186]=n[":"];p[187]=n["+"];p[188]=n["<"];p[189]=n._;p[190]=n[">"];p[191]=n["?"];
p[192]=n["~"];p[219]=n["{"];p[220]=n["|"];p[221]=n["}"];p[222]=n['"'];p[173]=n._;p[61]=n["+"];p[59]=n[":"];
function na(a,b){var c;if(a){b||(b=10);var d=a.charAt(0),e=0<a.indexOf(",");e&&(a=a.replace(/,/g,""));"#"==d?(b=8,d=null):"$"==d&&(b=16,d=null);null==d?a=a.substr(1):("0"==d?(d=a.charAt(1),"b"==d&&e&&(b=2,d=null),"o"==d?(b=8,d=null):"x"==d&&(b=16,d=null)):"^"==d&&(d=a.charAt(1),"D"==d?(b=10,d=null):"O"==d?(b=8,d=null):"B"==d&&(b=2,d=null)),null==d?a=a.substr(2):(d=a.charAt(a.length-1).toLowerCase(),"y"==d?(b=2,d=null):"."==d?(b=10,d=null):"h"==d&&(b=16,d=null),null==d&&(a=a.substr(0,a.length-1))));
var f,d=0;if(e=a.match(/(-?[0-9]+)B([0-9]*)/))a=e[1],d=35-((e[2]||35)&255);var e=a,g=b;(g&&10!=g?16==g?e.match(/^-?[0-9a-f]+$/i):8==g?e.match(/^-?[0-7]+$/):2==g&&e.match(/^-?[01]+$/):e.match(/^-?[0-9]+$/))&&!isNaN(f=parseInt(a,b))&&(d&&(0>f&&(f+=Math.pow(2,36)),f=0<d?f*Math.pow(2,d):Math.trunc(f/Math.pow(2,-d))),c=f)}return c}
function oa(a,b,c){b?9<b&&(b=9):b=a&-65536?8:4;c=c?"0x":"";var d="";isNaN(a)?a=null:null!=a&&(0>a&&-1<a&&(a=-1),0>a&&(a+=Math.pow(16,b)),a>=Math.pow(16,b)&&(b=Math.ceil(Math.log(a)/Math.log(16))));if(null==a)for(;0<b--;)d="?"+d;else for(;0<b--;){var e=a%16,e=e+(0<=e&&9>=e?48:55),d=String.fromCharCode(e)+d;a=Math.trunc(a/16)}return(void 0===c?"":c)+d}
function na(a,b){var c;if(a){b||(b=10);var d,e,f=0<a.indexOf(",");f&&(a=a.replace(/,/g,""));d=e=a.charAt(0);"#"==e?(b=8,e=""):"$"==e&&(b=16,e="");d!=e?a=a.substr(1):(d=e=a.substr(0,2),"0b"==e&&f||"^B"==e?(b=2,e=""):"0o"==e||"^O"==e?(b=8,e=""):"^D"==e?(b=10,e=""):"0x"==e&&(b=16,e=""),d!=e&&(a=a.substr(2)));d=e=a.slice(-1);"Y"==e||"y"==e?(b=2,e=""):"."==e?(b=10,e=""):"H"==e||"h"==e?(b=16,e=""):"K"==e?e="000":"M"==e?e="000000":"G"==e&&(e="000000000");d!=e&&(a=a.slice(0,-1)+e);var g;d=0;if(e=a.match(/(-?[0-9]+)B([0-9]*)/))a=
e[1],d=35-((e[2]||35)&255);e=a;((f=b)&&10!=f?16==f?e.match(/^-?[0-9a-f]+$/i):8==f?e.match(/^-?[0-7]+$/):2==f&&e.match(/^-?[01]+$/):e.match(/^-?[0-9]+$/))&&!isNaN(g=parseInt(a,b))&&(d&&(0>g&&(g+=Math.pow(2,36)),g=0<d?g*Math.pow(2,d):Math.trunc(g/Math.pow(2,-d))),c=g)}return c}
function oa(a,b,c){b?9<b&&(b=9):(b=Math.abs(a),b=65535>=b?4:4294967295>=b?8:9);c=c?"0x":"";var d;d=void 0===d?-1:d;var e="";isNaN(a)?a=null:null!=a&&(0>a&&-1<a&&(a=-1),0>a&&(a+=Math.pow(16,b)),a>=Math.pow(16,b)&&(b=Math.ceil(Math.log(a)/Math.log(16))));for(var f=d;0<b--;){f||(e=","+e,f=d);if(null==a)e="?"+e;else{var g=a%16,g=g+(0<=g&&9>=g?48:55),e=String.fromCharCode(g)+e;a=Math.trunc(a/16)}f--}return(void 0===c?"":c)+e}
function pa(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));d=c.indexOf("&");0<d&&(c=c.substr(0,d));b&&(d=c.lastIndexOf("."),0<d&&(c=c.substring(0,d)));return c}function qa(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}function ra(a,b){return-1!==a.indexOf(b,a.length-b.length)}function sa(a){return a.replace(/[&<>"']/g,function(a){return ta[a]})}function ua(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}
var ta={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"},va={0:"NUL",1:"SOH",2:"STX",3:"ETX",4:"EOT",5:"ENQ",6:"ACK",7:"BEL",8:"BS",9:"TAB",10:"LF",11:"VT",12:"FF",13:"CR",14:"SO",15:"SI",16:"DLE",17:"XON",18:"DC2",19:"XOFF",20:"DC4",21:"NAK",22:"SYN",23:"ETB",24:"CAN",25:"EM",26:"SUB",27:"ESC",28:"FS",29:"GS",30:"RS",31:"US"};
function wa(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}function xa(a,b){var c=0,d=1,e;for(e in a){if(d>=arguments.length)break;var f=a[e],g=arguments[d++],c=c&~f.qg|g<<f.shift&f.qg}return c}function ya(a,b){return(b&a.qg)>>a.shift}var za=[31,28,31,30,31,30,31,31,30,31,30,31],Aa=Date.now||function(){return+new Date};