(function(){/* http://pcjs.org/modules/shared/lib/dumpapi.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/shared/lib/reportapi.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/shared/lib/userapi.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/shared/lib/keys.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/shared/lib/strlib.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/shared/lib/weblib.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/pdp10/lib/messages.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/pdp10/lib/device.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/pdp10/lib/rom.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/pdp10/lib/ram.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/pdp10/lib/computer.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/shared/lib/state.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/shared/lib/embed.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/shared/lib/defines.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/shared/lib/int36.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/shared/lib/usrlib.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/shared/lib/component.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/pdp10/lib/defines.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/pdp10/lib/panel.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/pdp10/lib/bus.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/pdp10/lib/memory.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/pdp10/lib/cpu.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/pdp10/lib/cpustate.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/pdp10/lib/cpuops.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/pdp10/lib/serial.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/shared/lib/debugger.js (C) Jeff Parsons 2012-2017 http://pcjs.org/modules/pdp10/lib/debugger.js (C) Jeff Parsons 2012-2017 */ var l,aa="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(c.get||c.set)throw new TypeError("ES3 does not support getters and setters.");a!=Array.prototype&&a!=Object.prototype&&(a[b]=c.value)},ba="undefined"!=typeof window&&window===this?this:"undefined"!=typeof global?global:this;function ca(){ca=function(){};ba.Symbol||(ba.Symbol=da)}var ea=0;function da(a){return"jscomp_symbol_"+(a||"")+ea++} function fa(){ca();var a=ba.Symbol.iterator;a||(a=ba.Symbol.iterator=ba.Symbol("iterator"));"function"!=typeof Array.prototype[a]&&aa(Array.prototype,a,{configurable:!0,writable:!0,value:function(){return ga(this)}});fa=function(){}}function ga(a){var b=0;return ha(function(){return ba?-b:b}});ka("Math.log2",function(a){return a?a:function(a){return Math.log(a)/Math.LN2}}); var la=Math.pow(2,36),ma=-Math.pow(2,35),q={cc:0,vb:1,ec:2,fc:3,gc:4,hc:5,ic:6,jc:7,cb:8,kc:9,wb:10,lc:11,mc:12,xb:13,nc:14,oc:15,pc:16,qc:17,rc:18,sc:19,tc:20,uc:21,vc:22,wc:23,xc:24,yc:25,zc:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,bb:65,bc:66,dc:67,Ac:68,E:69,Bc:70,Cc:71,Dc:72,Ec:73,Fc:74,Gc:75,Hc:76,Ic:77,Jc:78,Kc:79,Lc:80,Q:81, Mc:82,Nc:83,Oc:84,Pc:85,Qc:86,Rc:87,Sc:88,Tc:89,zb:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,Uc:97,Vc:98,Wc:99,d:100,e:101,Xc:102,Yc:103,Zc:104,$c:105,ad:106,k:107,bd:108,cd:109,n:110,dd:111,p:112,q:113,r:114,ed:115,t:116,gd:117,hd:118,jd:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126,yb:127}; function na(a,b){var c;if(a){b||(b=10);var d=a.charAt(0),e=0a&&-1=g?48:55),e=String.fromCharCode(g)+e;a=Math.trunc(a/b)}return(void 0===d?"":d)+e}function pa(a,b,c){b?12"']/g,function(a){return Aa[a]})}function Ba(a,b){return(a+" ").slice(0,b)} function Ca(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}var Aa={"&":"&","<":"<",">":">",'"':""","'":"'"};function Da(a,b,c){var d=0,e=a.length,g=0;for(c||(c=function(a,b){return a>b?1:a>1,h;h=c(b,a[f]);0a?"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 Fa(a,b,c,d){c=void 0===c?!1:c;var e=0,g=null,f=null;if("object"==typeof resources&&(g=resources[a]))return d&&d(a,g,e),[g,e];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),f;var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(g=h.responseText,200==h.status||!h.status&&g.length&&"file:"==(window?window.location.protocol:"file:")||(e=h.status||-1),d&&d(a, g,e))});if(b&&"object"==typeof b){var k="",m;for(m in b)b.hasOwnProperty(m)&&(k&&(k+="&"),k+=m+"="+encodeURIComponent(b[m]));k=k.replace(/%20/g,"+");h.open("POST",a,c);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.send(k)}else h.open("GET",a,c),"bytes"==b&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send();c||(g=h.responseText,200!=h.status&&(e=h.status||-1),d&&d(a,g,e),f=[g,e]);return f} function Ga(a,b){var c,d={Y:null,T:null,na:null,ma:null};if("["==b.charAt(0)||"{"==b.charAt(0))try{var e,g,f;if("<"==b.substr(0,1))throw Error(b);f=0>b.indexOf("0x")&&0>b.indexOf("0o")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");d.na=f.load;d.ma=f.exec;if(e=f.bytes)d.Y=e;else if(e=f.words)for(d.Y=Array(2*e.length),g=c=0;c>8&255;else if(e=f.longs)for(d.Y=Array(4*e.length),g=c=0;c>8&255,d.Y[g++]=e[c]>>16&255,d.Y[g++]=e[c]>>24&255;else(e=f.data)?d.Ca=e:d.Y=f;d.Y&&(d.Y.length?1==d.Y.length&&(u(d.Y[0]),d=null):(u("Empty resource: "+a),d=null));d.T=f.symbols}catch(h){u("Resource data error ("+a+"): "+h.message),d=null}else{e=[];b=b.replace(/\n/gm," ").replace(/ +$/,"").split(" ");for(c=0;ca?this.Ka=this.id:(this.La=this.id.substr(0,a),this.Ka=this.id.substr(a+1));this.j={ready:!1,Fa:!1,Xa:!1,U:!1,error:!1};this.Ma=null;this.j.error=!1;this.X=c||0;this.A=this.i=this.G=this.F=this.oa=null;w.push(this)}function gb(a,b,c){ib[a]&&b&&(ib[a][b]=c)}function rb(){return Date.now()||+new Date} function u(a){window&&window.alert(a)}function sb(a){var b=!1;window&&(b=window.confirm(a));return b}function tb(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;ba;a++)this.b["S"+a]=[0,0,!1,!1,this.Mb,a];this.A=this.i=this.G=this.F=null;this.exports={hold:this.Eb,toggle:this.Xb,reset:this.Tb, set:this.Wb};D(this)}p(Vb,v);l=Vb.prototype;l.reset=function(a){this.stop();a&&Xb(this,this.v=0)}; l.ga=function(a,b,c,d){if(this.F&&this.F.ga(a,b,c,d)||this.i&&this.i.ga(a,b,c,d)||this.A&&this.A.ga(a,b,c,d))return!0;switch(b){case "PC":return this.I[b]=c,this.M++,!0;default:return"led"==a||"rled"==a?(this.I[b]=c,this.B[b]=d?1:0,this.M++,!0):"switch"==a?(void 0===this.b[b]&&(this.b[b]=[d?1:0,d?1:0]),this.I[b]=c,a=c.parentElement||c,a=a.parentElement||a,a.onmousedown=function(a,b){return function(){Yb(a,b)}}(this,b),a.onmouseup=a.onmouseout=function(a,b){return function(){Zb(a,b)}}(this,b),a.ontouchstart= function(a,b){return function(c){Yb(a,b);c.preventDefault()}}(this,b),a.ontouchend=function(a,b){return function(){Zb(a,b)}}(this,b),!0):v.prototype.ga.call(this,a,b,c,d)}};l.wa=function(a,b,c,d){this.F=a;this.G=b;this.i=c;this.A=d;$b(this);ac(this)};l.pa=function(a,b){if(!b)if(this.W&&bc(),!a)this.reset(!0);else if(!this.restore(a))return!1;return!0};l.fa=function(a){return a?this.save():!0};l.save=function(){var a=new H(this);a.set(0,[this.f,this.v,this.u]);return a.data()}; l.restore=function(a){if(a=a[0])cc(this,this.f=a[0]),Xb(this,this.v=a[1]),dc(this,a[2]);return!0};l.Tb=function(){for(var a in this.b){var b=this.b[a];b[1]=b[0]}ac(this);return!0};function ec(a,b,c){if(a=a.I[b])a.style.backgroundColor=c?"#ff0000":"#000000"}function $b(a,b){for(var c in a.B)ec(a,c,null!=b?b:a.B[c])}function mc(a,b,c){if(a=a.I[b])a.style.marginTop=c?"0px":"20px",a.style.backgroundColor=c?"#00ff00":"#228B22"}function ac(a){for(var b in a.b)mc(a,b,a.b[b][1])} l.Eb=function(a,b,c){if(Yb(this,b)){if(c){var d=this;setTimeout(function(){Zb(d,b);a&&a()},+c);return!1}Zb(this,b)}return!0};l.Wb=function(a,b){if("SR"==a)return dc(this,na(b,8));var c=this.b[a];return c?(c[1]=+b?1:0,mc(this,a,c[1]),!0):!1};l.Xb=function(a){return Yb(this,a)?(Zb(this,a),!0):!1};function Yb(a,b){var c=a.b[b];return c?(mc(a,b,c[1]=1-c[1]),c[3]=!0,c[4]&&c[4].call(a,c[1],c[5]),b!=nc&&(a.P=b==oc,a.R=b==pc),!0):!1} function Zb(a,b){var c=a.b[b];c&&(c[2]&&c[3]&&(mc(a,b,c[1]=c[0]),c[4]&&c[4].call(a,c[1],c[5])),c[3]=!1)}l.Nb=function(a){a||this.i.j.K||(this.i.u=this.f%Kb,this.b[qc]&&this.b[qc][1]&&rc(this.i))};l.Ob=function(){};l.Ib=function(a){a||this.i.V()}; l.Gb=function(a){if(!a&&!this.i.j.K)if(this.b[qc]&&this.b[qc][1])rc(this.i);else{if((a=this.A)&&!Fb(a,!0))Gb(a,!0),sc(a,0,null),Gb(a,!1);else try{var b=this.i.Ja(1);0c;c++){var d=a,e="A"+c,g=b&1<c;c++){var d=a,e="D"+c,g=b&1<b;b++)a.b["S"+b][1]=a.u&1<d.length){for(var e=0,g=Array(4096),f=0;f>>a.f;0g&&(m=g);if(h&&h.size){if(h.type==d){if(e+g<=h.w)return h.Ha+=h.w-e,h.w=e,!0;if(e>=h.w+h.Ha){m=h.size-(e-k);m>g&&(m=g);h.Ha=e-h.w+m;e=k+16384;g-=m;f++;continue}}return Ec(Fc,e,g)}e=new Ac(a,e,m,16384,d);Bc(e,a.A,h);a.b[f++]=e;e=k+16384;g-=m}return 0>=g?(a.status("Added "+(c>>10)+"Kb "+Gc[d]+" at "+pa(b)),!0):Ec(Hc,b,c)} function yc(a,b){var c=a.b[(b&a.u)>>>a.f];a.v++;b=c.G(b&16383,b);a.v--;return b}function xc(a,b,c){var d=a.b[(b&a.u)>>>a.f];a.v++;d.F(c,b&16383,b);a.v--}function Cc(a){for(var b=0,c=[],d=0;d=a.ia&&(a.ia+=a.ha,c=!0);0<=a.ja&&a.ja<=bd(a)&&(a.ha=a.ja=-1,Yc(a),a.V(),c=!0);c&&a.g(bd(a)+" cycles: checksum="+t(a.ta))}} l.ga=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.I[b]=c,!0;case "run":return this.I[b]=c,c.onclick=function(){var a;if(a=d.F)if(a=d.F,a.j.U)a=!0;else{var b=null,c,h=tb(a.id);for(c=0;ca.S/a.W?b=1:d=!0;a.aa=b;b=a.Ta*a.aa;if(a.W!=b){a.W=b;b=a.W.toFixed(2)+"Mhz";var e=a.I.setSpeed;e&&(e.textContent=b);a.g("target speed: "+b)}c&&a.F&&zd(a.F)}uc(a,a.L);a.L=0;a.J=rb();a.N=0;dd(a);return d}function Ad(a,b){for(var c=a.M.length-1;0<=c;c--){var d=a.M[c];0>d[0]||b>d[0]&&(b=d[0])}return b}function Bd(a){for(var b=[],c=0;cd[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function Cd(a,b){var c=a.O-=a.P;a.P=0;b&&(a.O=0);return c} l.Ub=function(){if(this.j.K){this.Aa>=this.Va&&dd(this,!0);this.ka=0;this.sa=rb();if(this.N){var a=this.sa-this.N;a>this.Ua&&(this.J+=a,this.J>this.sa&&(this.J=this.sa))}try{do{var b=Ad(this,this.j.Ea?1:this.va);try{this.Ja(b)}catch(e){if("number"!=typeof e)throw e;}b=Cd(this,!0);this.ka+=b;this.L+=b;vc(this,b);tc(this,b);this.ba-=b;if(0>=this.ba){this.ba+=this.va;++this.Wa>=Dd&&(this.F&&I(this.F,void 0),this.Wa=0);break}}while(this.j.K)}catch(e){this.V();this.F&&this.F.stop(rb(),bd(this));Cb(this, e.stack||e.message);return}if(this.j.K){a=setTimeout;b=this.kb;this.N=rb();var c=this.Ua;this.ka&&(c=Math.round(c*this.ka/this.va));var c=c-(this.N-this.sa),d=this.N-this.J;d&&(this.S=Math.round(this.L/(10*d))/100,864E5<=d&&(this.R=0,cd(this)));if(0>c||this.Sc&&(this.J-=c),c=0;this.Aa+=this.ka;this.N+=c;a(b,c)}}}; function rc(a,b){if(!Db(a))if(a.j.K)a.g(a.toString()+" busy");else{cd(a);a.j.K=!0;a.j.Pa=!0;var c=a.I.run;c&&(c.textContent="Halt");a.F&&(b&&zd(a.F,!0),a.F.start(a.J,bd(a)));a.A||a.status("Started");setTimeout(a.kb,0)}}l.Ja=function(){return 0};l.V=function(a){var b=!1;if(this.j.K){Cd(this);uc(this,this.L);this.L=0;this.j.K=!1;if(b=this.I.run)b.textContent="Run";this.F&&this.F.stop(rb(),bd(this));b=!0;this.A||this.status("Stopped")}this.j.complete=a;return b};var yd=30,Dd=15,Vc=["power","reset"]; function Ed(a){var b=+a.model||1001;Uc.call(this,a,1E6);this.jb=b;this.gb=+a.addrReset||0;this.Ab=Fd.bind(this);this.b=L.bind(this);this.la=null;this.fb=[];this.j.complete=!1}p(Ed,Uc);l=Ed.prototype;l.reset=function(){this.status("Model "+this.jb);this.j.K&&this.V();this.f=this.H=this.Ba=0;this.u=this.ra=this.gb;this.Ra=this.ib=this.za=this.ub=this.Sa=!1;this.B=-1;this.qa=this.u;this.v=0;this.C=this.Qb;this.D=this.ac;this.la=null;Xc(this);this.j.error=!1;Uc.prototype.reset.call(this)};l.rb=function(){return 0}; l.save=function(){var a=new H(this);a.set(0,[this.f,this.H,this.B,this.Ba,this.u,this.ra,this.qa,this.v]);a.set(1,[]);a.set(2,[this.R,this.aa,this.j.Z]);a.set(3,Gd(this));a.set(4,Bd(this));return a.data()}; l.restore=function(a){var b;b=a[0];fa();ca();fa();var c=b[Symbol.iterator];b=c?c.call(b):ga(b);this.f=b.next().value;this.H=b.next().value;this.B=b.next().value;this.Ba=b.next().value;this.u=b.next().value;this.ra=b.next().value;this.qa=b.next().value;this.v=b.next().value;b=a[2];this.R=b[0];cd(this,b[1]);this.j.Z=b[2];b=a[3];for(c=b.length-1;0<=c;c--){var d;a:{for(d=0;dOb&&(a!=Pb?a=Qb-a:this.Ra=this.za=!0);return a};function Id(a,b){b?b==Pb?a.Ra=a.za=!0:b=Qb-b:a.ib=a.za=!0;return b}function Gd(a){var b=[];for(a=a.la;a;)b.push(a.Yb),a=a.next;return b}l.Qb=function(a){var b=this.G;a=this.qa=a;return b.b[(a&b.u)>>>b.f].C(a&16383,a)};l.ac=function(a,b){var c=this.G;a=this.qa=a;c.b[(a&c.u)>>>c.f].D(b,a&16383,a)}; l.Ja=function(a){this.j.complete=!0;var b=this.A?Jd(this.A)?1:this.j.Pa?-1:0:0,c=a?this.j.Pa?0:1:-1;this.j.Pa=!1;this.O=this.P=a;this.v=this.v&-5|(b?4:0);do{if(this.v){if(this.v&4){if(Kd(this.A,this.u,c)){this.V();break}++b||(this.v&=-5);c||c++}if(a=this.v&11)this.v&2?this.la||(this.v&=-3):this.v&1&&this.v++,a=!1;if(a){if(this.v&4&&Kd(this.A,this.u,c)){this.V();break}if(0>c)break}}this.v&=15;this.H=this.H&4194304?this.C(this.f):this.Ba=this.C(this.ra=this.u);this.H&=8388607;this.f=this.H&262143;if(a= this.H>>18&15)this.f=this.f+this.C(a)&Lb;this.H&4194304?a=-1:(this.u=(this.u+1)%Kb,a=this.Ba/Tb|0);0<=a&&this.Ab(a)}while(0>4].call(this,a,a&15)}function M(a){this.b(a)} function Md(){var a=0,b=this.C(this.f),c=b/Ub&63,d=b>>24&63,c=c-d;0>c&&(a++,c=36-d,0>c&&(c=64-d));b=c*Ub+(d<<24)+(b&16777215);a&&(b=(b+a)%Mb);this.D(this.f,b)}function Nd(a,b){a=this.C(this.f);if(0>this.B)this.B=a,this.H=this.f|4194304,Hd(this,-1);else{var c=this.B/Ub&63,d=this.B>>24&63;a=32>=c+d?a>>c&(1<this.B)this.B=a,this.H=this.f|4194304,Hd(this,-1);else{var c=this.B/Ub&63,d=this.B>>24&63;b=this.C(b)%Math.pow(2,d)*Math.pow(2,c)%Mb;a=a-a%Math.pow(2,c+d)+b+a%Math.pow(2,c);this.D(this.f,a);this.B=-1}}function Pd(a,b){var c=this.C(this.f),d=this.C(b);this.D(b,Qd(a,d,c)+(c-(c&262143)))}function Rd(a,b){var c=this.C(b);this.D(b,Qd(a,c,0))}function Sd(a,b){b=this.C(b);var c=this.C(this.f);this.D(this.f,Qd(a,c,b)+(b-(b&262143)))} function Td(a,b){var c=this.C(this.f),d=c;if(a&=384)switch(d-=d&262143,a){case 256:d+=262143;break;case 384:d+=c>Ob?262143:0}c=d;this.D(this.f,c);b&&this.D(b,c)}function Ud(a,b){var c=(this.C(this.f)&262143)*F,d=this.C(b);this.D(b,Qd(a,d,c)+c)}function Vd(a,b){var c=this.f*F,d=this.C(b);this.D(b,Qd(a,d,c)+c)}function Wd(a,b){b=(this.C(b)&262143)*F;var c=this.C(this.f);this.D(this.f,Qd(a,c,b)+b)}function Xd(a,b){var c=this.C(this.f),d=(c&262143)*F,c=Qd(a,c,d)+d;this.D(this.f,c);b&&this.D(b,c)} function Yd(a,b){var c=this.C(this.f)&262143,d=this.C(b);this.D(b,Zd(a,d,c)+c)}function $d(a,b){var c=this.C(b);this.D(b,Zd(a,c,this.f)+this.f)}function ae(a,b){b=this.C(b)&262143;var c=this.C(this.f);this.D(this.f,Zd(a,c,b)+b)}function be(a,b){var c=this.C(this.f),d=c;if(a&=384)switch(d&=262143,a){case 256:d+=262143*F;break;case 384:d+=c>Nb?262143*F:0}c=d;this.D(this.f,c);b&&this.D(b,c)}function ce(a,b){var c=this.C(this.f)/F|0,d=this.C(b);this.D(b,Zd(a,d,c)+c)} function de(a,b){var c=this.C(b);this.D(b,Zd(a,c,0))}function ee(a,b){b=this.C(b)/F|0;var c=this.C(this.f);this.D(this.f,Zd(a,c,b)+b)}function fe(a,b){var c=this.C(this.f),d=c/F|0,c=Zd(a,c,d)+d;this.D(this.f,c);b&&this.D(b,c)}function O(a){this.b(a)}function L(a){this.g("undefined opcode: "+pa(a));Hd(this,-1);this.V()}function Zd(a,b,c){switch(a&384){case 0:b-=b&262143;break;case 128:b=0;break;case 256:b=262143*F;break;case 384:b=c>Nb?262143*F:0}return b} function Qd(a,b,c){switch(a&384){case 0:b&=262143;break;case 128:b=0;break;case 256:b=262143;break;case 384:b=c>Ob?262143:0}return b} var Ld=[M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},Md,function(a,b){0>this.B&&Md.call(this);Nd.call(this,0,b)},Nd,function(a,b){0>this.B&&Md.call(this);Od.call(this,0,b)},Od,function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a,b){this.D(b,this.C(this.f))},function(a,b){this.D(b,this.f)},function(a,b){this.D(this.f,this.C(b))},function(a,b){b&&this.D(b,this.C(this.f))},function(a,b){a=this.C(this.f);a=a/F|(a&262143)*F;this.D(b,a)},function(a,b){this.D(b,this.f*F)},function(a,b){a=this.C(b);a=a/F|(a&262143)*F;this.D(this.f,a)},function(a,b){a=this.C(this.f);a=a/F|(a&262143)*F;this.D(this.f,a);b&&this.D(b,a)},function(a, b){this.D(b,Id(this,this.C(this.f)))},function(a,b){this.D(b,this.f?Qb-this.f:0)},function(a,b){this.D(this.f,Id(this,this.C(b)))},function(a,b){a=Id(this,this.C(this.f));this.D(this.f,a);b&&this.D(b,a)},function(a,b){this.D(b,this.abs(this.C(this.f)))},function(a,b){this.D(b,this.f)},function(a,b){this.D(this.f,this.abs(this.C(b)))},function(a,b){a=this.abs(this.C(this.f));this.D(this.f,a);b&&this.D(b,a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},L,function(a,b){a=this.C(b);this.D(b,this.C(this.f));this.D(this.f, a)},function(a,b){a=!1;for(var c=this.C(b),d=c/F|0,c=c&262143;!a;)this.D(c,this.C(d)),c==this.f&&(a=!0),d=d+1&262143,c=c+1&262143,this.j.K||(this.D(b,d*F+c),a||Hd(this,-1),a=!0)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},L,function(a){this.b(a)},function(a,b){a=this.C(b);a+=262145;this.D(a&262143,this.C(this.f));a>=Mb&&(a-=Mb);a/F|0||(this.Sa=!0);this.D(b,a)},function(a,b){a=this.C(b);var c=this.C(a&262143);this.D(this.f,c); this.f==b&&(a=c);a-=262145;0>a&&(a+=Mb);262143==(a/F|0)&&(this.Sa=!0);this.D(b,a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},Pd,Rd,Sd,Td,Ud,Vd,Wd,Xd,Pd,Rd,Sd,Td,Ud,Vd,Wd,Xd,Pd,Rd,Sd,Td,Ud,Vd,Wd,Xd,Pd,Rd,Sd,Td,Ud,Vd,Wd,Xd,Yd,$d,ae,be,ce,de,ee,fe,Yd,$d,ae,be,ce,de,ee,fe,Yd,$d,ae,be,ce,de,ee,fe,Yd,$d,ae,be,ce,de,ee,fe,function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O, O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O]; function ge(a){v.call(this,"ROM",a,128);this.T=this.b=null;this.B=+a.addr;this.u=+a.size;this.f=a.alias;"string"==typeof this.f&&(this.f=eval(this.f));this.v=a.file;this.H=qa(this.v);if(this.v){a=this.v;var b=ra(this.H);"json"!=b&&"hex"!=b&&(a=ya()+"/api/v1/dump?file="+this.v+"&format=bytes&decimal=true");var c=this;Fa(a,null,!0,function(a,b,g){g?(c.da("Unable to load ROM resource (error "+g+": "+a+")"),c.v=null):(gb(c.La,a,b),(a=Ga(a,b))?(c.b=a.Y,c.T=a.T):c.v=null);he(c)})}}p(ge,v); ge.prototype.wa=function(a,b,c,d){this.G=b;this.i=c;this.A=d;he(this)};ge.prototype.pa=function(){this.T&&(this.A&&ie(this.A,this.id,this.B,this.u,this.T),delete this.T);return!0};ge.prototype.fa=function(){return!0}; function he(a){if(!Eb(a)){if(a.v){if(!a.b||!a.G)return;a.u||(a.u=a.b.length);if(a.b.length!=a.u)Cb(a,"ROM size ("+t(a.b.length,8,!0)+") does not match specified size ("+t(a.u,8,!0)+")");else{var b;b=a.B;if(Dc(a.G,b,a.u,Lc)){var c;for(c=0;c>>g.f;0>>= g.f;0>>a.f;0f&&f>=ma&&(f+=la);f=Math.trunc(Math.abs(f))%la;void 0===g&&(g=e.size);for(h=d;g--&&h=q.bb&&c<=q.zb&&(b=c-(q.bb-q.vb));b&&(a.preventDefault&&a.preventDefault(),d.Na(b));return!0},c.onkeypress=function(a){a=a||window.event;if(!a.metaKey){var b=a.which||a.keyCode;a.altKey&&b==q.xb&&(b=q.wb);d.Na(b);a.preventDefault&&a.preventDefault()}return!0},c.onpaste=function(a){a.stopPropagation&&a.stopPropagation(); a.preventDefault&&a.preventDefault();(a=a.clipboardData||window.clipboardData)&&d.Na(a.getData("Text"))},c.removeAttribute("readonly"),!0}return!1};l.wa=function(a,b,c,d){this.F=a;this.G=b;this.i=c;this.A=d;D(this)}; l.tb=function(a){if(!this.b){var b=Wc(this.F,"connection");if(b){var c=b.split("->");if(2==c.length){var d=Ca(c[0]);if(d!=this.Ka)return;c=Ca(c[1]);if(this.b=ub(c)){var e=this.b.exports;if(e){var g=e.connect;g&&g.call(this.b,this.u);if(this.B=e.receiveData){this.u=a;this.status("Connected "+this.La+"."+d+" to "+c);return}}}}this.status("Unable to establish connection: "+b)}}};l.pa=function(a,b){if(!b)if(this.tb(this.u),!a)this.reset();else if(!this.restore(a))return!1;return!0}; l.fa=function(a){return a?this.save():!0};l.reset=function(){};l.save=function(){var a=new H(this);a.set(0,[]);return a.data()};l.restore=function(){return!0};l.Na=function(a){if("number"==typeof a)this.f.push(a);else if("string"==typeof a)for(var b=0,c,d=0;da.v&&a.u.length&&(a.v=0);if(0>a.v||b!=a.u[a.v])a.u.splice(0,0,b),a.v=0;a.v--}else a.P?b="end":b=a.u[a.v+1];a=[];if(b){b=b.replace(/""/g,"'");c=0;var e=null;d=d||";";for(var g=0;g<=b.length;g++){var f=b.charAt(g);if('"'==f||"'"==f)e?f==e&&(e=null):e=f;else if(f==d&&!e||!f)a.push(Ca(b.substring(c,g))),c=g+1}}return a} function qe(a,b,c){for(c=c||-1;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e=a.pop(),g=a.pop();switch(d){case "*":d=g*e;break;case "/":if(!e)return!1;d=g/e;break;case "%":if(!e)return!1;d=g%e;break;case "+":d=g+e;break;case "-":d=g-e;break;case "<<":d=g<>":d=g>>e;break;case ">>>":d=g>>>e;break;case "<":d=g":d=g>e?1:0;break;case ">=":d=g>=e?1:0;break;case "==":d=g==e?1:0;break;case "!=":d=g!=e?1:0;break;case "&":d=g&e;break; case "^":d=g^e;break;case "|":d=g|e;break;case "&&":d=g&&e?1:0;break;case "||":d=g||e?1:0;break;default:return!1}a.push(d|0)}return!0} function P(a,b,c){var d;if(b){b=re(a,b);for(var e=0,g=!1,f=b,h=[],k=[],m=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);e>=1,U--;f=r+f;d>>=8}d=t(c,0,!0)+" "+c+". "+pa(c,0,!0)+" "+("0b"+f);32<=c&&127>c&&(d+=" '"+String.fromCharCode(c)+"'")}a.g((null!=b?b+": ":"")+d);return e} function ve(a,b){if(b)return ue(a,b,a.W[b]);var c=0;for(b in a.W)ue(a,b,a.W[b]),c++;return 0>2:0)}0>c?c=b.replace(/^0+([0-9A-F]+)$/i,"$1"):c=b;return c}var te={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9}; function we(a){oe.call(this,a);this.ya=!1;this.la=!0;this.va=Q();this.L=Q(0);this.ja=Q(0);this.ba=Q(0);this.H=[];this.b=this.M=this.J=[];xe(this);this.R=this.ka=0;this.f=[];this.sa=void 0;ye(this);this.A=this;this.qa={};this.X=this.nb=0;this.S=null;this.O=[];ze(this,a.messages);this.ua=a.commands;this.N=0;this.Ba=this.ta=null;this.B=this.Aa=this.za=this.ia=this.ra=0;this.ha=this.aa=null;var b=this;window?void 0===window[B]&&(window[B]=function(a){return ad(b,a)}):void 0===global[B]&&(global[B]=function(a){return ad(b, a)})}p(we,oe);function S(a){a=a&&a.w;null==a&&(a=-1);return a}function Q(a,b,c){return{w:void 0===a?null:a,qb:void 0===b?!1:b,ea:!1,ca:c}}function Ae(a,b,c,d){a.w=b;a.qb=c||!1;a.ea=!1;a.ca=d}function Be(a){return[a.w,a.qb,a.ca,a.ea,a.Oa]}function Ce(a,b){var c=Q(b[0],b[1],b[2]);c.ea=b[3];b[4]&&(c.lb=pe(a,c.Oa=b[4]));return c}l=we.prototype; l.wa=function(a,b,c,d){this.G=b;this.F=a;this.i=c;this.ha=a.u;(a=Wc(a,"messages"))&&ze(this,a);De(this,function(a){a:{var b=d.G.b,c=a[0],e=a=0,k=b.length;if(c){a=S(T(d,c,d.ja));if(-1===a){d.g("invalid address: "+c);break a}e=a>>>d.G.f;k=1}d.g("blockid physical blockaddr used size type");d.g("-------- --------- --------- ------ ------ ----");for(var c=-1,m=0;k--;){var n=b[e];n.type==c?m++||d.g("..."):(c=n.type,m=Gc[c],n&&d.g(t(n.id,8)+" %"+t(e<d&&(d+=b.length);0>d&&(d=0);for(var e=b.length;d>23&&a.i.ra==b&&(b=Hd(a.i,1)));if(0d&&(d=a.i.C(b)),0<=d&&(Ae(a.f[a.R],b),++a.R==a.f.length&&(a.R=0)));return!1} function Ef(a,b,c,d){var e=Q(b.w),g=a.xa(b,1),f,h,k,m=0,n=g/Rb|0,r;for(r in Ff)if(f=Ff[r][n&r]){h=+r;n>>=6;switch(h){case 32512:k=Gf;m=n&3;break;case 32256:k=Hf;m=n&7;break;case 29248:k=If,m=(n&48)>>2|(n&6)>>1}break}k=k&&k[m]||"";"S"==k&&f>Jf&&(k="B");k=Kf[f||0]+k;k=Ba(k,8);f?(k=28700==h?k+K(a,g/Sb&127,-1):k+K(a,g>>23&15,-1),k+=",",g&4194304&&(k+="@"),k+=K(a,g&262143,-1),(g=g>>18&15)&&(k+="("+K(a,g,-1)+")")):k+=Fe(g);g=k;f="";h=K(a,e.w)+":";if(-1!==e.w&&-1!==b.w){do if(k=a.xa(e,1),f+=" "+Fe(k),null== e.w)break;while(e.w!=b.w)}h+=Ba(f,16)+g;c&&(h=Ba(h,48)+";"+(c||""),h=a.i.j.Ea?h+("cycles="+bd(a.i).toString()+" cs="+t(a.i.ta)):h+(null!=d?"="+d.toString():""));return h}function xe(a){var b,c;a.b=["bp"];if(a.M)for(b=1;b>>d.f],!1)}a.M=["br"];if(a.J)for(b=1;b>>d.f],!0);a.J=["bw"];a.ra=0;a.ka=0} l.Da=function(a,b,c){var d=!0;c||Lf(this,a,b,!1,!0);if(a!=this.b){var e=S(b);if(-1===e)this.g("invalid address: "+K(this,b.w)),d=!1;else{var g=this.G;g.b[e>>>g.f].Da(e&16383,a==this.J)}}d&&(a.push(b),c?b.ea=!0:(Mf(this,a,a.length-1,"set"),ye(this)));return d};function Lf(a,b,c,d,e){var g=!1;c=S(c);for(var f=1;f>>d.f],b==a.J));h.ea||ye(a);break}}return g} function Nf(a,b){for(var c=1;cd;d++){!d||d&3||(c+="\n");var e=a,g=pa(d,2);Ae(e.va,d);g+="="+K(e,e.xa(e.va),36)+" ";c+=g}if(b){b="";for(d=0;d=Ke?1:d==Ie?23:18)+" "),b+=e;c+="\n"+b}return c}l.ob=function(a,b){return a[0]>b[0]?1:a[0]>>0,f],r=Da(n,k,a.ob);0>r&&n.splice(-(r+1),0,k)}m&&(h.a=m.replace(/''/g,'"'))}a.H.push({fd:b,w:c,Fb:d,T:e,mb:g})}function Qf(a,b,c){var d=[],e=S(b)>>>0;for(b=0;b>>0,h=g.Fb;if(e>=f&&eh[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.g(m)}h[3]&&(f=h[3],g=null);h=a.ba;m=b;h.w=m.w;h.ea=m.ea;h.ca=m.ca;a.g(Ef(a,b,f,g));e-=b.w-k;c++}}} function Of(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.g(zf+b):(a.P&&(a.g("ended assemble at "+K(a,a.ba.w)),a.P=!1),b="");var e=b.charAt(0);if('"'==e||"'"==e)return!0;a.S=null;if(Eb(a)&&0n||"z"Jf&&(gd="B");if(wg==Kf[Ve]+gd){Ue=29248!=fc?Ka:(Ka&3)<<1|(Ka&12)<<2;y=(fd|Ue<<6)*Rb;break}}if(0<= y)break}if(0<=y)break}if(0<=y)if(Se)for(var hd=Se.split(","),hb=0;hbE||127E||15E||262143< E){a.g("memory address out of range: "+V[2]);y=-1;break}y+=E;if(V[3]){E=P(a,V[3]);if(void 0==E){y=-1;break}if(0>E||15X.length&&(a.g("note: only "+X.length+" available"),N=X.length);R-=N;0>R&&(null==X[X.length-1].w?(N=R+N,R=0):R+=X.length);var md=[];"call"==af&&(jb=1E5,md=["CALL"]);for(void 0!==$e&&a.g(N+" instructions earlier:");0=X.length&&(R=0);a.sa=N;cf++;jb--}}cf||(a.g("no "+bf+"history available"),a.sa=void 0)}else{var Qa=T(a,W,a.ja);if(Qa){var ta=0,ff="ds"==Na;if(ia){if("l"==ia.charAt(0))ia=ia.substr(1)||zg,ta=se(a,ia);else{var gf=T(a,ia);gf&&(ta=gf.w-Qa.w)}0>ta&&(ta=0);65536lf;lf++)jf+=String.fromCharCode((hc%64|0)+32),hc/=64}ua&&(ua+="\n");ua=ff?ua+(va+","):ua+(W+": "+va+(0>kf?" "+jf:""))}ua&&a.g(ua);a.ca=Bg}}}}break;case "e":if("else"==f[0])break;var mf,nf,of=f[0],pd=f[1];"e"==of||"ew"==of?(mf=a.xa,nf=a.eb):pd=null;if(null==pd)a.g("edit memory commands:"),a.g("\tew [a] [...] edit words at address a");else{var ic=T(a,pd,a.ja);if(ic)for(var jc=2;jctd;){for(var wa=null,Fg=256;65536>mb.w>>>0;){ud.w=a.xa(mb,2);if(null==mb.w||!Fg--)break;if(!(ud.w&1)){for(var Gg=a,kc=ud,qf=null,nb=kc.w,rf=nb,vd=1;6>=vd&&nb;vd++){if(2xf)a.g("step commands:"),a.g("\tp\tstep over instruction"),a.g("\tpr\tstep over instruction with register update");else if(a.N)a.g("step in progress");else{var yf=Q(a.i.u);a.xa(yf);a.N?(a.Da(a.b,yf,!0),Qe(a)||(a.F&&zd(a.F),a.N=0)):Vf(a,xf?"tr":"t")}break;case "r":if("reset"==b){a.F&&a.F.reset();break}Bf(a,f);break;case "s":a:switch(f[1]){case "base":if(f[2]){var pb=+f[2];if(8==pb||10==pb||16== pb)a.ca=pb;else{a.g("invalid base: "+pb);break}}a.g("default base: "+a.ca);break;case "cs":var qb;void 0!==f[3]&&(qb=+f[3]);switch(f[2]){case "int":a.i.ha=qb;break;case "start":a.i.ua=qb;break;case "stop":a.i.ja=qb;break;default:a.g("unknown cs option");break a}void 0!==qb&&Yc(a.i);a.g("checksums "+(a.i.j.Ea?"enabled":"disabled"));break;case "sp":void 0!==f[2]&&(cd(a.i,+f[2])||a.g("warning: using 1x multiplier, previous target not reached"));a.g("target speed: "+(a.i.W.toFixed(2)+"Mhz")+" ("+a.i.aa+ "x)");break;default:if(f[1]){a.g("unknown option: "+f[1]);break}case "?":a.g("debugger options:"),a.g("\tbase #\t\tset default base to #"),a.g("\tcs int #\tset checksum cycle interval to #"),a.g("\tcs start #\tset checksum cycle start count to #"),a.g("\tcs stop #\tset checksum cycle stop count to #"),a.g("\tsp #\t\tset speed multiplier to #")}break;case "t":Vf(a,f[0],f[1]);break;case "u":Cf(a,f[1],f[2],8);break;case "v":if("var"==f[0]){Sf(a,b.substr(3))||(d=!1);break}if("ver"==f[0]){a.g((Jb||"PDP10")+ " version 1.34.2 ("+a.i.jb+",RELEASE)");a.g(window?window.navigator.userAgent:"");break}g=!0;break;case "?":if(f[1]){Uf(a,b.substr(1));break}var wd="commands:",xd;for(xd in Xf)wd+="\n"+Ba(xd,9)+Xf[xd];Jd(a)||(wd+="\nnote: history disabled if no exec breakpoints");a.g(wd);break;default:g=!0}g&&(a.g("unknown command: "+b),d=!1)}}catch(Af){a.g("debugger error: "+(Af.stack||Af.message)),d=!1}return d}function ad(a,b,c){b=pe(a,b,c);for(var d in b)if(!Of(a,b[+d]))return!1;return!0} var Xf={"?":"help/print","a [#]":"assemble","b [#]":"breakpoint",c:"clear output","d [#]":"dump memory","e [#]":"edit memory","g [#]":"go [to #]",h:"halt","if":"eval expression","int [#]":"request interrupt",k:"stack trace",ln:"list nearest symbol(s)",m:"messages",p:"step over",print:"print expression",r:"dump/set registers",reset:"reset machine",s:"set options","t [#]":"trace","u [#]":"unassemble","var":"assign variable",ver:"print version"},Jf=20,Kf=".WORD HLL HLLZ HLLO HLLE HRL HRLZ HRLO HRLE HRR HRRZ HRRO HRRE HLR HLRZ HLRO HLRE MOVE MOVS MOVN MOVM EXCH BLT PUSH POP LDB DPB IBP ILDB IDPB SETZ SETO SETA SETCA SETM SETCM AND ANDCA ANDCM ANDCB IOR ORCA ORCM ORCB XOR EQV LSH LSHC ROT ROTC ADD SUB MUL IMUL DIV IDIV ASH ASHC FSC FADR FSBR FMPR FDVR DFN UFA FAD FSB FMP FDV AOBJP AOBJN CAI CA JUMP SKIP AOJ AOS SOJ SOS TR TL TD TS XCT JFFO JFCL JSR JSP JRST JSA JRA PUSHJ POPJ BLKI DATAI BLKO DATAO CONO CONI CONSZ CONSO UUO".split(" "), He=0,Ie=1,Je=2,Ke=3,Le=4,Me=5,Ne=6,Oe=7,Ge="PC RA EA C0 C1 OV ND PD".split(" "),Yf={},Ff=(Yf[28672]={0:101},Yf[32704]={5632:64,5696:63,5760:58,5824:27,5888:28,5952:25,6016:29,6080:26,10240:56,10304:48,10368:46,10432:84,10496:57,10560:49,10624:47,10752:21,10816:22,10880:69,10944:70,11008:88,11072:85,11136:83,11264:91,11328:23,11392:24,11456:92,11520:86,11584:87,11648:89,11712:90},Yf[32512]={6144:65,6400:59,6656:66,6912:60,7168:67,7424:61,7680:68,7936:62,8192:17,8448:18,8704:19,8960:Jf,9216:53,9472:52, 9728:55,9984:54,11776:50,12032:51,16384:30,16640:36,16896:37,17152:34,17408:38,17664:32,17920:44,18176:40,18432:39,18688:45,18944:33,19200:41,19456:35,19712:42,19968:43,20224:31,20480:1,20736:5,20992:2,21248:6,21504:3,21760:7,22016:4,22272:8,22528:9,22784:13,23040:10,23296:14,23552:11,23808:15,24064:12,24320:16},Yf[32256]={12288:71,12800:72,13312:73,13824:74,14336:75,14848:76,15360:77,15872:78},Yf[29248]={24576:79,24640:80,25088:81,25152:82},Yf[28700]={28672:93,28676:94,28680:95,28684:96,28688:97, 28692:98,28696:99,28700:100},Yf),Gf=["","I","M","S"],Hf=" L E LE A GE N G".split(" "),If="N NE NA NN Z ZE ZA ZN C CE CA CN O OE OA ON".split(" "),Pe=1E3,zf=">> ";Za(function(){for(var a=C(document,B,"debugger"),b=0;b\nLicense: GPL version 3 or later ");for(b=0;bbg){if(cg(d,this.M)){this.B=new H(this,"1.34.2",lg);cg(this.B)&&(mg(this,d),a=ng,og(this.B));this.B.set(ig,Ea());pg(this.B);var e=this.b&&!this.L;if(a==jg||sb("Click OK to restore the previous "+Jb+" machine state, or CANCEL to reset the machine.")){if(c=hg(d)){var g=d.get("code"),f=d.get("data");g&&("ok"==g?cg(d,f):("error"==g&&"no machine state"!= f?(this.da("Error: "+f),"unable to verify user"==f&&(Sa(qg,""),this.f=null)):this.g(g+": "+f),og(d),cg(d)?(c=hg(d),e=!0):c=!1))}e&&fg(this,c?d:null)}else a==ng&&d.clear()}else fg(this);delete this.M;delete this.J}e=tb(this.id);for(g=0;ga[1];a=a[2];this.S=!0;this.j.U=!0;var d=this.I.power;d&&(d.textContent="Shutdown");this.i&&(rg(this,this.i,b,c,a),I(this,-2),this.i.Z());this.P&&(mg(this,b),b.clear());!c&&this.B&&(this.B.clear(),delete this.B);this.v=0}; function mg(a,b){if(sb("There may be a problem with your "+Jb+" machine.\n\nTo help us diagnose it, click OK to send this "+Jb+" machine state to http://www.pcjs.org.")){var c=a.ba;a=a.f||"";b=b.toString();var d={};d.app=Jb;d.ver="1.34.2";d.url=c;d.user=a;d.type="bug";d.data=b;Fa("http://www.pcjs.org/api/v1/report",d,!0)}} function Wf(a,b,c){var d,e="none";if(a.v)return null;a.v--;var g=new H(a,"1.34.2"),f=new H(a,"1.34.2",gg),h=Ea();f.set(ig,h);g.set(ig,h);g.set(sg,"1.34.2");g.set(tg,window?window.location.href:null);g.set(ug,window?window.navigator.userAgent:"");a.i&&a.i.fa&&(c&&(b&&(a.i.j.Z=a.i.j.K),a.i.V()),d=a.i.fa(b,c),"object"===typeof d&&g.set(a.i.id,d),c&&(a.i.j.U=!1,!1===d&&(e=null)));for(var h=tb(a.id),k=0;k=d||30<=(c.Qa+=d))&&(e.textContent=c.j.K?c.S.toFixed(2)+"Mhz":"Stopped",c.Qa=0)}if(a.u&&(a=a.u,b=b||0,a.M)){c=a.i.j.K;d=!!(a.i.v&8);if(0>=b||60<=(a.L+=b)){e=a.i.u;if(a.I.PC){var g=a.A&&a.A.ca||8,e=e||0,e=8==g?pa(e,void 0):t(e,void 0);a.I.PC.textContent!=e&&(a.I.PC.textContent=e)}a.L=0}-1>b?a.f=a.i.u:0f.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),e?"}"==e.slice(-1)?(e=e.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(e?" parms='"+e+"'":"")+(f?' url="'+f+'"':"")));g||(a=a.replace(/().*?(<\/xsl:variable>)/,"$1PDPjs$2"), a=a.replace(/().*?(<\/xsl:variable>)/,"$1"+d+"$2"));f=null;if("<"==a.charAt(0))try{g||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(r){f=null,a=r.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");Fa(e,null,!0,function(g,f,h){if(h||!f)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(g=d[3])if(h=f.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,n=/( [a-z]+=)(['"])(.*?)\2/g;m=n.exec(g);)k=0>k.indexOf(m[1])?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(f=f.replace(h[0],k))}else{c(a,"missing <"+d[1]+"> in "+e);return}f=f.replace(/<\?xml[^>]*>[\r\n]*/, "");a=a.replace(d[0],f);Pg(a,b,c)}})}else c(a,null)} function Qg(a,b,c,d,e){function g(a){if(void 0===k){var b=h&&C(h,"machine-warning");k=b&&b[0]||h}k&&(k.innerHTML=za(a))}function f(a){g("Error: "+a);m&&(--Mg||cb(!0));m=!1}var h,k,m=!0;Mg++;ib[b]={};try{if(h=document.getElementById(b)){var n;if("object"==typeof resources&&(n=resources.css)){var r=document.head||document.getElementsByTagName("head")[0],z=document.createElement("style");z.type="text/css";z.styleSheet?z.styleSheet.cssText=n:z.appendChild(document.createTextNode(n));r.appendChild(z)}d|| (n=a,"pdp"==a.substr(0,3)&&(n="pdpjs"),d="/versions/"+n+"/1.34.2/components.xsl");n=function(e,k){k?Ng(d,null,a,null,!1,g,function(a,e){e?(gb(b,d,a),g("Processing "+c+"..."),window.ActiveXObject||"ActiveXObject"in window?(e=k.transformNode(e))?(h.outerHTML=e,--Mg||cb(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(a=new XSLTProcessor,a.importStylesheet(e),(e=a.transformToFragment(k,document))?h.parentNode?(h.parentNode.replaceChild(e,h),--Mg|| cb(!0)):f("invalid machine element: "+b):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(a)}):f(e)};"<"!=c.charAt(0)?Ng(c,b,a,e,!0,g,n):Og(c,null,b,a,e,!1,g,n)}else f("missing machine element: "+b)}catch(U){f(U.message)}return m}window.embedPDP10=function(a,b,c,d){cb(!1);return Qg("pdp10",a,b,c,d)};window.embedPDP11=function(a,b,c,d){cb(!1);return Qg("pdp11",a,b,c,d)};window.findMachineComponent=function(a,b){return vb(b,a+".machine")}; window.processMachineScript=function(a,b){var c=!1;a+=".machine";if("string"==typeof b&&!yb[a]){for(var c=!0,d=yb,e=a,g=b.length,f=[],h=[],k="",m=null,n=0;n