(function(){var g;function ba(a,b){var c;if(a){b||(b=16);if("$"==a.charAt(0))b=16,a=a.substr(1);else if("0x"==a.substr(0,2))b=16,a=a.substr(2);else{var d=a.charAt(a.length-1).toLowerCase();"h"==d?(b=16,d=null):"."==d&&(b=10,d=null);null==d&&(a=a.substr(0,a.length-1))}var e,d=a,f=b;(f&&10!=f?16==f?null!==d.match(/^[0-9a-f]+$/i):2==f&&null!==d.match(/^[01]+$/i):null!==d.match(/^[0-9]+$/))&&!isNaN(e=parseInt(a,b))&&(c=e|0)}return c} function n(a,b){var c="";void 0===b?b=8:8=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function ca(a){return"0x"+n(a,4)}function da(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0":">",'"':""","'":"'"};function ma(a){return a.replace(/[&<>"']/g,function(a){return la[a]})}function na(a,b){return(a+" ").slice(0,b)}function oa(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function pa(a,b,c){var d=0,e=a.length,f=0;for(void 0===c&&(c=function(a,b){return a>b?1:a>1,h;h=c(b,a[k]);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 xa(a,b){var c;if(Array.prototype.indexOf)return a.indexOf(b,c);c=c||0;0>c&&(c+=a.length);0>c&&(c=0);for(var d=a.length;cb?this.Ka=this.id:(this.nb=this.id.substr(0,b),this.Ka=this.id.substr(b+1));this[a]=c;this.j={Ca:!1,za:!1,eb:!1,U:!1,Ba:!1};this.Za=null;this.j.Ba=!1;this.G={};this.C=null;this.W=d||0;x.push(this)}var Pa=void 0,Qa={}; if(window){Pa||(Pa=window.location.search.substr(1));for(var Ra,ab=/\+/g,bb=/([^&=]+)=?([^&]*)/g;Ra=bb.exec(Pa);)Qa[decodeURIComponent(Ra[1].replace(ab," "))]=decodeURIComponent(Ra[2].replace(ab," "))}function cb(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b} function z(a,b){b||(b=v);a.prototype=cb(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}if(window){window.PCjs||(window.PCjs={});var db=window.PCjs.Machines||(window.PCjs.Machines={}),x=window.PCjs.Components||(window.PCjs.Components=[])}else db={},x=[];function eb(a,b,c){db[a]&&b&&(db[a][b]=c)}function D(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b=this.w?10:20>=this.w?12:24>=this.w?14:15;this.ga=1<>2;this.A=this.ga-1;this.D=this.F/this.ga|0;this.B=this.D-1;a=new K;qb(a,this.C);this.I=Array(this.D);for(b=0;b>>a.P;0f&&(m=f);if(h&&h.size){if(h.type==d){if(e+f<=h.u)return h.Xa+=h.u-e,h.u=e,!0;if(e>=h.u+h.Xa){m=h.size-(e-l);m>f&&(m=f);h.Xa=e-h.u+m;e=l+a.ga;f-=m;k++;continue}}return Eb(1,e,f)}e=new K(e,m,a.ga,d);qb(e,a.C,h);a.I[k++]=e;e=l+a.ga;f-=m}return 0>=f?(a.status(Math.floor(c/1024)+"Kb "+Fb[d]+" at "+ca(b)),!0):Eb(2,b,c)}g.ca=function(a){return this.I[(a&this.i)>>>this.P].Fa(a&this.A,a)}; function Gb(a,b){return a.I[(b&a.i)>>>a.P].Qa(b&a.A,b)}g.Ma=function(a){var b=a&this.A,c=(a&this.i)>>>this.P;return b!=this.A?this.I[c].vb(b,a):this.I[c++].Fa(b,a)|this.I[c&this.B].Fa(0,a+1)<<8};g.Va=function(a,b){this.I[(a&this.i)>>>this.P].Ia(a&this.A,b&255,a)};g.xb=function(a,b){var c=a&this.A,d=(a&this.i)>>>this.P;c!=this.A?this.I[d].yb(c,b&65535,a):(this.I[d++].Ia(c,b&255,a),this.I[d&this.B].Ia(0,b>>8&255,a+1))};function Eb(a,b,c){r("Memory block error ("+a+": "+n(b)+","+n(c)+")");return!1}var Hb; if(mb){var Ib=new ArrayBuffer(2);(new DataView(Ib)).setUint16(0,256,!0);Hb=256===(new Uint16Array(Ib))[0]}else Hb=!1;var Jb=Hb; function K(a,b,c,d){this.id=Kb+=2;this.g=null;this.u=a;this.Xa=b;this.size=c||0;this.type=d||Lb;this.G=d==Mb;qb(this);this.ra=this.Cb=!1;if(c)if(mb)this.D=new ArrayBuffer(c),this.F=new DataView(this.D,0,c),this.A=new Uint8Array(this.D,0,c),this.J=new Uint16Array(this.D,0,c>>1),this.g=new Int32Array(this.D,0,c>>2),Nb(this,Jb?Ob:Pb);else{this.g=Array(c>>2);for(a=0;a>2),b=0;b>8,c)},S:function(a){return this.g[a>>2]>>>((a&3)<<3)&255},$:function(a){var b=a>>2;a=(a&3)<<3;var c=this.g[b]>>a;return 24>a?c&65535:c&255|(this.g[b+1]&255)<<8},ma:function(a,b){var c=a>>2,d=(a&3)<<3;this.g[c]=this.g[c]&~(255<>2,d=(a&3)<<3;24>d?this.g[c]=this.g[c]&~(65535<>8);this.ra=!0},N:function(a,b){if(this.C&&null!=this.u){var c=this.C;Ub(c,this.u+a,1,c.N)&&c.Y(!0)}return this.Qa(a,b)},V:function(a,b){if(this.C&&null!=this.u){var c=this.C;Ub(c,this.u+a,2,c.N)&&c.Y(!0)}return this.gb(a,b)},ja:function(a,b,c){if(this.C&&null!=this.u){var d=this.C;Ub(d,this.u+a,1,d.F)&&d.Y(!0)}this.G?this.B(a,b,c):this.Ja(a,b,c)},sa:function(a,b,c){if(this.C&& null!=this.u){var d=this.C;Ub(d,this.u+a,2,d.F)&&d.Y(!0)}this.G?this.B(a,b,c):this.hb(a,b,c)},M:function(a){return this.A[a]},O:function(a){return this.A[a]},T:function(a){return this.F.getUint16(a,!0)},Z:function(a){return a&1?this.A[a]|this.A[a+1]<<8:this.J[a>>1]},fa:function(a,b){this.A[a]=b;this.ra=!0},ka:function(a,b){this.A[a]=b;this.ra=!0},na:function(a,b){this.F.setUint16(a,b,!0);this.ra=!0},Ka:function(a,b){a&1?(this.A[a]=b,this.A[a+1]=b>>8):this.J[a>>1]=b;this.ra=!0}}; function qb(a,b,c){a.C=b;a.i=a.w=0;c&&((a.i=c.i)&&Tb(a,Sb,!1),(a.w=c.w)&&Rb(a,Sb,!1))}function Vb(a,b){b?0===--a.w&&(a.Ia=a.G?a.B:a.Ja,a.yb=a.G?a.H:a.hb):0===--a.i&&(a.Fa=a.Qa,a.vb=a.gb)}function Rb(a,b,c){c&&a.w||(a.Ia=!a.G&&b[2]||a.B,a.yb=!a.G&&b[3]||a.H);if(c||void 0===c)a.Ja=b[2]||a.B,a.hb=b[3]||a.H}function Tb(a,b,c){c&&a.i||(a.Fa=b[0]||a.K,a.vb=b[1]||a.L);if(c||void 0===c)a.Qa=b[0]||a.K,a.gb=b[1]||a.L}function Nb(a,b){b||(b=Wb);Tb(a,b,void 0);Rb(a,b,void 0)} var Wb=[],Qb=[K.prototype.S,K.prototype.$,K.prototype.ma,K.prototype.La],Sb=[K.prototype.N,K.prototype.V,K.prototype.ja,K.prototype.sa];if(mb)var Pb=[K.prototype.M,K.prototype.T,K.prototype.fa,K.prototype.na],Ob=[K.prototype.O,K.prototype.Z,K.prototype.ka,K.prototype.Ka]; function Xb(a,b){v.call(this,"CPU",a,Xb,1);var c=a.multiplier||1;this.$=a.cycles||b;this.xa=c;this.Z=Math.round(this.$/1E4)/100;this.wa=this.Z*this.xa;this.j.X=!1;this.j.fb=!1;this.j.rb=a.autoStart;this.j.sb=!1;this.j.Aa=!1;this.Na=this.L=0;this.Oa=a.csStart;this.Da=a.csInterval;this.Ea=a.csStop;this.S=[];this.sa=this.ya.bind(this);G(this)}z(Xb);var Yb=["power","reset"];g=Xb.prototype; g.va=function(a,b,c,d){this.i=a;this.A=b;this.C=d;for(b=0;b=a.L&&(a.L+=a.Da,c=!0);0<=a.Ea&&a.Ea<=sc(a)&&(a.Da=a.Ea=-1,ac(a),a.Y(),c=!0);c&&a.b(sc(a)+" cycles: checksum="+n(a.Na))}} function tc(a,b,c,d){a.G[b]&&(void 0===c&&(lb(a,"Value for "+b+" is invalid"),a.Y()),c=!a.j.X||a.j.sb?n(c,d):"--------".substr(0,d),a.G[b].textContent!=c&&(a.G[b].textContent=c))} g.ba=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.G[b]=c;a=!0;break;case "run":this.G[b]=c;c.onclick=function(){var a;if(a=d.i)if(a=d.i,a.j.U)a=!0;else{var b=null,c,h=D(a.id);for(c=0;ca.H/a.wa?b=1:d=!0;a.xa=b;b=a.Z*a.xa;if(a.wa!=b){a.wa=b;b=a.wa.toFixed(2)+"Mhz";var e=a.G.setSpeed;e&&(e.textContent=b);a.b("target speed: "+b)}c&&a.i&&a.i.Wa()}vc(a,a.F);a.F=0;a.D=qa();a.J=0;wc(a);return d} g.ya=function(a){if(ib(this,!0)){if(!this.j.X){uc(this);this.i&&this.i.start(this.D,sc(this));this.j.X=!0;this.j.fb=!0;this.N&&this.N.start();var b=this.G.run;b&&(b.textContent="Halt");this.i&&(this.i.ea(!0),a&&this.i.Wa(!0))}this.fa>=this.$&&wc(this,!0);this.O=0;this.T=qa();this.J&&(a=this.T-this.J,a>this.ma&&(this.D+=a,this.D>this.T&&(this.D=this.T)));try{do{for(var c=this.j.Aa?1:this.V,d=this.S.length-1;0<=d;d--){var e=this.S[d];0>e[0]||c>e[0]&&(c=e[0])}this.Ha(c);var f=this.w-this.g;a=f;for(var k= this.S.length-1;0<=k;k--){var h=this.S[k];0>h[0]||(h[0]-=a,0>=h[0]&&(h[0]=-1,h[1]()))}this.O+=f;this.F+=f;vc(this,0,!0);dc(this,f);this.M-=f;if(0>=this.M){this.M+=this.V;15<=++this.na&&(this.i&&this.i.ea(),this.na=0);break}}while(this.j.X)}catch(l){this.Y();L(this);this.i&&this.i.stop(qa(),sc(this));ib(this,!1);lb(this,l.stack||l.message);return}c=setTimeout;d=this.sa;this.J=qa();e=this.ma;this.O&&(e=Math.round(e*this.O/this.V));e=e-(this.J-this.T);if(f=this.J-this.D)this.H=Math.round(this.F/(10* f))/100,864E5<=f&&(this.K=0,uc(this));if(0>e||this.He&&(this.D-=e),e=0;this.fa+=this.O;this.J+=e;c(d,e)}else L(this),this.i&&this.i.stop(qa(),sc(this))};g.Ha=function(){return 0};g.Y=function(a){jb(this,!0);this.w-=this.g;this.g=0;vc(this,this.F);this.F=0;if(this.j.X){this.j.X=!1;this.N&&this.N.stop();var b=this.G.run;b&&(b.textContent="Run")}this.j.Ya=a};function L(a,b){a.i&&a.i.ea(b)} function xc(a){this.ub=+a.model||1170;Xb.call(this,a,1E6);this.ja=yc;$b(this);this.j.Ya=this.j.Bb=!1;this.ka=0;zc(this)}z(xc,Xb);g=xc.prototype;g.reset=function(){this.j.X&&this.Y();zc(this);$b(this);this.j.Ba=!1;this.parent.reset.call(this)};function zc(a){a.Ga=0;a.Ra=0;a.$a=0;a.Sa=0;a.ab=0;a.Ta=0;a.bb=0;a.Ua=0;a.R=0;Ac(a,0);a.B=0}g.tb=function(){var a=this.Ga+this.Ra+this.$a+this.Sa+this.ab+this.Ta+this.bb|0;return a=a+this.Ua+this.R+Bc(this)|0}; g.save=function(){var a=new M(this);N(a,0,[this.Ga,this.Ra,this.$a,this.Sa,this.ab,this.Ta,this.bb,this.Ua,this.R,Bc(this)]);N(a,1,[this.B,this.K,this.xa]);for(var b=this.A,c=0,d=[],e=0;ea&&!(this.B&1<a?255:1<>>0,k],q=pa(p,l,a.lb);0>q&&p.splice(-(q+1),0,l)}m&&(h.a=m.replace(/''/g,'"'))}a.H.push({Ib:b,u:c,Hb:d,oa:e,kb:f})}delete this.oa}return!0};Fc.prototype.pa=function(){return!0}; function Gc(a,b,c,d){if(d)a.aa("Unable to load system ROM (error "+d+": "+b+")");else{eb(a.nb,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,k=e.data;if(f)a.i=f;else if(k)for(a.i=Array(4*k.length),d=c=0;c>8&255,a.i[d++]=k[c]>>16&255,a.i[d++]=k[c]>>24&255;else a.i=e;a.oa=e.symbols;if(!a.i.length){r("Empty ROM: "+b);return}if(1==a.i.length){r(a.i[0]);return}}catch(h){a.aa("ROM data error: "+h.message);return}else for(b=c.replace(/\n/gm, " ").replace(/ +$/,"").split(" "),a.i=Array(b.length),e=0;e>>d.P].Ja(e&d.A,a.i[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.B?b.push(a.B):null!=a.B&&a.B.length&&(b=a.B);for(c=0;c>>e.P;0>>=e.P;0>>d.A.P;l=1}d.b("blockid physical blockaddr used size type");d.b("-------- --------- ---------- ------ ------ ----");for(var c=-1,m=0;l--;){var p=b[h];p.type==c?m++||d.b("..."):(c=p.type,m=Fb[c],p&&d.b(n(p.id)+" %"+n(h<>>c.P,c=e!=c.A?c.I[f].gb(e,d):c.I[f++].Qa(e,d)|c.I[f&c.B].Qa(0,d+1)<<8;b&&Tc(a,b)}return c}; g.Va=function(a,b,c){var d=V(a);if(-1!==d){var e=this.A;e.I[(d&e.i)>>>e.P].Ja(d&e.A,b&255,d);c&&Tc(a,c);L(this.g,!0)}};g.xb=function(a,b,c){var d=V(a);if(-1!==d){var e=this.A,f=d&e.A,k=(d&e.i)>>>e.P;f!=e.A?e.I[k].hb(f,b&65535,d):(e.I[k++].Ja(f,b&255,d),e.I[k&e.B].Ja(0,b>>8&255,d+1));c&&Tc(a,c);L(this.g,!0)}};function P(a){return{u:a,la:!1}}function Uc(a){return[a.u,a.la]}function Vc(a){return{u:a[0],la:a[1]}} function W(a,b,c){var d;c=(c?a.M:a.mb).u;if(void 0!==b){d=b=Wc(a,b);var e;if(d.match(/^[a-z_][a-z0-9_]*$/i))for(d=d.toUpperCase(),c=0;cc&&(c=xa(Qc,a.substr(b,1))));return c}function ad(a,b){var c;if(0<=b){var d=a.g;switch(b){case 12:c=d.R;break;case 14:c=Bc(d)&255|d.Ga<<8}}return c} function bd(a,b){b=Wc(a,b);for(var c=0,d,e;0<=(c=b.indexOf("@",c));){e=$c(b,c+1);if(0<=e){d=0;var f=ad(a,e);if(void 0!==f)switch(e){case 12:case 14:d=4}b=b.substr(0,c)+(d?n(f,d):"??")+b.substr(c+1+Qc[e].length)}c++}for(c=0;0<=(c=b.indexOf("#",c));)e=b.substr(c+1,2),d=ba(e,16),null!=d&&32<=d&&128>d?(d=e+" '"+String.fromCharCode(d)+"'",b=b.replace("#"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("$",c));)e=b.substr(c+1,9),(d=W(a,e))?(d=e+' "'+Zc(a,d)+'"',b=b.replace("$"+e,d),c+=d.length):c++;for(c= 0;0<=(c=b.indexOf("^",c));)e=b.substr(c+1,9),(d=W(a,e))?(Tc(d),d=e+' "'+Zc(a,d,11)+'"',b=b.replace("^"+e,d),c+=d.length):c++;return b}g.message=function(a,b){b&&(a+=" at "+n(P(this.g.R).u,4));if(this.W&1073741824)this.ma.push(a);else if(!this.ka||a!=this.ka)if(this.ka=a,this.W&-2147483648&&(this.Y(),a+=" (cpu halted)"),this.b(a),this.g){var c=this.g;c.M=0;c.w-=c.g;c.g=0;L(c)}}; function Mc(a){var b;if(Dc(a)){if(!a.L||!a.L.length){a.L=Array(1E3);for(b=0;b>>d.P],!1)}a.N=["br"];if(void 0!==a.F)for(b=1;b>>d.P],!0);a.F=["bw"];a.ob=0} g.ta=function(a,b,c){var d=!0;c||gd(this,a,b,!1,!0);if(a!=this.w){var e=V(b);if(-1===e)this.b("invalid address: "+n(b.u,4)),d=!1;else{var f=this.A;f.I[e>>>f.P].ta(e&f.A,a==this.F)}}d&&(a.push(b),c?b.la=!0:(hd(this,a,a.length-1,"set"),Mc(this)));return d};function gd(a,b,c,d,e){var f=!1;c=V(c);for(var k=1;k>>d.P],b==a.F));h.la||Mc(a);break}}return f} function id(a,b){for(var c=1;c>24,4);break;case 3:y=n(B.Ma(Y,2),4);break;default:B="imm("+ca(A)+")";break a}A&64?y="["+y+"]":A&16||(y="0x"+y);B=y}else A&16?B=Qc[(q&3840)>>8]:A&128&&(B=(f>>3&7).toString());if(!B||!B.length){h= "INVALID";break}0=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9}; function md(a,b,c){for(c=c||-1;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e=a.pop(),f=a.pop();switch(d){case "*":d=f*e;break;case "/":if(!e)return!1;d=f/e;break;case "%":if(!e)return!1;d=f%e;break;case "+":d=f+e;break;case "-":d=f-e;break;case "<<":d=f<>":d=f>>e;break;case ">>>":d=f>>>e;break;case "<":d=f":d=f>e?1:0;break;case ">=":d=f>=e?1:0;break;case "==":d=f==e?1:0;break;case "!=":d=f!=e?1:0;break;case "&":d=f&e;break; case "^":d=f^e;break;case "|":d=f|e;break;case "&&":d=f&&e?1:0;break;case "||":d=f||e?1:0;break;default:return!1}a.push(d|0)}return!0} function X(a,b,c){var d;if(b){b=Wc(a,b);for(var e=0,f=!1,k=b,h=[],l=[],m=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);e>=1;k=p+"b"+k;d>>=8}d="0x"+n(c)+" "+c+". ("+k+")"}a.b((null!=b?b+": ":"")+d);return e}function Nd(a,b){if(b)return Md(a,b,a.Z[b]);var c=0;for(b in a.Z)Md(a,b,a.Z[b]),c++;return 0b[0]?1:a[0]>>0;for(b=0;b>>0,h=f.Hb;if(e>=k&&e>8&255;case "C":d.$a=h&255;break;case "D":d.Sa= h&255;break;case "DE":d.Sa=h>>8&255;case "E":d.ab=h&255;break;case "H":d.Ta=h&255;break;case "HL":d.Ta=h>>8&255;case "L":d.bb=h&255;break;case "SP":d.Ua=h&65535;break;case "PC":d.R=h&65535;a.M=P(d.R);break;case "PS":Ac(d,h);break;case "PSW":Ac(d,h&255|d.ha&-256);d.Ga=h>>8;break;case "CF":d.da=h?d.da|256:d.da&255;break;case "ZF":d.da=h?d.da&-256:d.da|255;break;case "SF":h?d.ia&128||(d.ia^=192):d.ia&128&&(d.ia^=192);break;case "IF":d.ha=h?d.ha|512:d.ha&-513;break;default:a.b("unknown register: "+e); return}if(!k){a.b("invalid value: "+f);return}L(d);a.b("updated registers:")}a.b("no regs");c&&(a.M=P(d.R),ed(a,n(a.M.u,4)))}}function Td(a,b){b=oa(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.b(bd(a,c[2])):X(a,b,!0)}function Ud(a,b,c){var d="t"!=b;c=Ld(a,c,null,!0)||1;var e=1==c?0:1;"tc"==b&&(e=c,c=1);Fa(c,function(){return ib(a,!0)&&a.Ha(e,d,!1)},function(){L(a.g);ib(a,!1)})} function ed(a,b,c,d){if(b=W(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c){d=W(a,c,!0);if(!d||d.uh[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.b(m)}h[3]&&(k=h[3],f=null);f=kd(a,b,k,f);a.b(f);a.M=b;e-=b.u-l;c++}}} function Yc(a,b,c,d){if(c)if(b){0>a.D&&a.B.length&&(a.D=0);if(0>a.D||b!=a.B[a.D])a.B.splice(0,0,b),a.D=0;a.D--}else a.V?b="end":b=a.B[a.D+1];a=[];if(b){b=b.toLowerCase().replace(/""/g,"'");c=0;var e=null;d=d||";";for(var f=0;f<=b.length;f++){var k=b.charAt(f);if('"'==k||"'"==k)e?k==e&&(e=null):e=k;else if(k==d&&!e||!k)a.push(oa(b.substring(c,f))),c=f+1}}return a} function jd(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.b(">> "+b):(a.V&&(a.b("ended assemble at "+n(a.T.u,4)),a.M=a.T,a.V=!1),b="");var e=b.charAt(0);if('"'==e||"'"==e)return!0;a.ka=null;if(kb(a)&&0m||"z"S.length&&(a.b("note: only "+S.length+" available"),I=S.length);C-=I;0>C&&(null==S[S.length-1].u?(I=C+I,C=0):C+=S.length);var gc=[];"call"==sd&&(wa=1E5,gc=["CALL"]);for(void 0!==rd&&a.b(I+" instructions earlier:");0=S.length&&(C=0);a.qb=I;ud++;wa--}}ud||(a.b("no "+td+"history available"),a.qb=void 0)}else{var sb= W(a,Q);if(sb){var tb=0;fa&&("l"==fa.charAt(0)&&(fa=fa.substr(1)||ne),tb=Ld(a,fa)>>>0,65536>4||1;pe--&&0xb?String.fromCharCode(xb):".";vb--}ga&&(ga+="\n");ga+=Q+" "+Ua+(0==Ta?" "+ic:"")}ga&&a.b(ga);a.mb=sb}}}}break;case "e":if("else"== f[0])break;var yb=1,xd=255,yd=a.ca,zd=a.Va;"ew"==f[0]&&(yb=2,xd=65535,yd=a.Ma,zd=a.xb);var Ad=yb<<1,Bd=f[1];if(null==Bd)a.b("edit memory commands:"),a.b("\teb [a] [...] edit bytes at address a"),a.b("\tew [a] [...] edit words at address a");else{var zb=W(a,Bd);if(zb)for(var Ab=2;Abnc;){for(var ia=null,ue=256;65536> Xa.u>>>0;){Dd.u=a.Ma(Xa,2);if(null==Xa.u||!ue--)break;for(var ve=a,Cb=Dd,Ed=null,Ya=Cb.u,Fd=Ya,oc=1;6>=oc&&Ya;oc++){if(2\nLicense: GPL version 3 or later ");for(b=0;bYd){if($d(d,this.K)){this.F=new M(this,"1.24.2","failsafe");$d(this.F)&&(fe(this,d),a=2,ge(this.F));N(this.F,"timestamp",ra());he(this.F);var e=this.i&&!this.H;if(1==a||za("Click OK to restore the previous PDP11 machine state, or CANCEL to reset the machine.")){if(c=de(d)){var f=ee(d,"code"),k=ee(d,"data");f&&("ok"==f?$d(d,k):("error"==f&&"no machine state"!= k?(this.aa("Error: "+k),"unable to verify user"==k&&(Da("user",""),this.w=null)):this.b(f+": "+k),ge(d),$d(d)?(c=de(d),e=!0):c=!1))}e&&ce(this,c?d:null)}else 2==a&&d.clear()}else ce(this);delete this.K;delete this.L}e=D(this.id);for(f=0;fa[1];a=a[2];this.$=!0;this.j.U=!0;var d=this.G.power;d&&(d.textContent="Shutdown");this.g&&(ie(this,this.g,b,c,a),cc(this.g));this.O&&(fe(this,b),b.clear());!c&&this.F&&(this.F.clear(),delete this.F);this.B=0}; function fe(a,b){if(za("There may be a problem with your PDP11 machine.\n\nTo help us diagnose it, click OK to send this PDP11 machine state to http://www.pcjs.org.")){var c=a.w||"",d=b.toString(),e={app:"PDP11",ver:"1.24.2"};e.url=a.Z;e.user=c;e.type="bug";e.data=d;ya("http://www.pcjs.org/api/v1/report",e,!0)}} function Vd(a,b,c){var d,e="none";if(a.B)return null;a.B--;var f=new M(a,"1.24.2"),k=new M(a,"1.24.2","validate"),h=ra();N(k,"timestamp",h);N(f,"timestamp",h);N(f,"version","1.24.2");N(f,"url",window?window.location.href:null);N(f,"browser",window?window.navigator.userAgent:"");a.g&&a.g.pa&&(c&&a.g.Y(),d=a.g.pa(b,c),"object"===typeof d&&N(f,a.g.id,d),c&&(a.g.j.U=!1,!1===d&&(e=null)));for(var h=D(a.id),l=0;lh.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(h=window.location.pathname+h);d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(h?' url="'+h+'"':""))}e||(a=a.replace(/().*?(<\/xsl:variable>)/,"$1pdp11$2")); h=null;if("<"==a.charAt(0))try{e||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(h=new window.ActiveXObject("Microsoft.XMLDOM"),h.async=!1,h.loadXML(a)):h=(new window.DOMParser).parseFromString(a,"text/xml")}catch(q){h=null,a=q.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");ya(e,null,!0,function(f,k,h){if(h||!k)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=k.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=h[0],m,p=/( [a-z]+=)(['"])(.*?)\2/g;m=p.exec(f);)l=0>l.indexOf(m[1])?l.replace(">",m[0]+">"):l.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=l&&(k=k.replace(h[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}k=k.replace(/<\?xml[^>]*>[\r\n]*/, "");a=a.replace(d[0],k);Be(a,b,c)}})}else c(a,null)} function Ce(a,b,c,d){function e(a){if(void 0===h){var b=k&&F(k,"machine-warning");h=b&&b[0]||k}h&&(h.innerHTML=ma(a))}function f(a){e("Error: "+a);l&&(--me||Na(!0));l=!1}var k,h,l=!0;me++;db[a]={};try{if(k=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var p=document.head||document.getElementsByTagName("head")[0],q=document.createElement("style");q.type="text/css";q.styleSheet?q.styleSheet.cssText=m:q.appendChild(document.createTextNode(m));p.appendChild(q)}c|| (c="/versions/pdp11/1.24.2/components.xsl");m=function(d,h){h?ze(c,null,null,!1,e,function(d,l){if(l)if(eb(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var m=h.transformNode(l);m?(k.outerHTML=m,--me||Na(!0)):f("transformNodeToObject failed")}else document.implementation&&document.implementation.createDocument?(m=new XSLTProcessor,m.importStylesheet(l),(m=m.transformToFragment(h,document))?k.parentNode?(k.parentNode.replaceChild(m,k),--me||Na(!0)):f("invalid machine element: "+ a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f(d)}):f(d)};"<"!=b.charAt(0)?ze(b,a,d,!0,e,m):Ae(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(w){f(w.message)}return l}window.embedPDP11=function(a,b,c,d){Na(!1);return Ce(a,b,c,d)};window.enableEvents=Na;window.sendEvent=Oa;})();