(function(){var k; function aa(a){var b=16,c;if(a){b||(b=10);var d=a.charAt(0),e=0=e?48:55),d=String.fromCharCode(e)+d;a>>=4}return(c?"0x":"")+d}function ba(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0":">",'"':""","'":"'"};function ga(a){return a.replace(/[&<>"']/g,function(a){return fa[a]})}function ha(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")} var ia={0:"NUL",1:"SOH",2:"STX",3:"ETX",4:"EOT",5:"ENQ",6:"ACK",7:"BEL",8:"BS",9:"TAB",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"},ja=Date.now||function(){return+new Date}; function ka(){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 p(a,b,c,d){var e=0,f=null,g=null;if("object"==typeof resources&&(f=resources[a]))return d&&d(a,f,e),[f,e];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),g;var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(f=h.responseText,200==h.status||!h.status&&f.length&&"file:"==(window?window.location.protocol:"file:")||(e=h.status||-1),d&&d(a,f,e))});if(b&&"object"== typeof b){var l="",m;for(m in b)b.hasOwnProperty(m)&&(l&&(l+="&"),l+=m+"="+encodeURIComponent(b[m]));l=l.replace(/%20/g,"+");h.open("POST",a,!!c);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.send(l)}else h.open("GET",a,!!c),"bytes"==b&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send();c||(f=h.responseText,200!=h.status&&(e=h.status||-1),d&&d(a,f,e),g=[f,e]);return g}function ea(){return"http://"+(window?window.location.host:"www.pcjs.org")} function r(a){window&&window.alert(a)}function la(a){var b=!1;window&&(b=window.confirm(a));return b}var ma=null;function na(){if(null==ma){var a=!1;if(window)try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"==window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}ma=a}return ma}function oa(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b} function pa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function qa(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var t={init:[],show:[],exit:[]},ra=!1,sa=!1,ta=!0;function ua(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function u(a){t.init.push(a)} function va(a){if(ta)try{for(var b=0;bb?this.fb=this.id:(this.wb=this.id.substr(0,b),this.fb=this.id.substr(b+1));this[a]=c;this.i={ready:!1,Lc:!1,Mc:!1,P:!1,error:!1};this.nb=null;this.i.error=!1;this.w={};this.K=null;x.push(this)}var ya=void 0,za={}; if(window){ya||(ya=window.location.search.substr(1));for(var Aa,Ba=/\+/g,Ca=/([^&=]+)=?([^&]*)/g;Aa=Ca.exec(ya);)za[decodeURIComponent(Aa[1].replace(Ba," "))]=decodeURIComponent(Aa[2].replace(Ba," "))}function Da(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 y(a,b){b||(b=v);a.prototype=Da(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}if(window){window.PCjs||(window.PCjs={});var Ea=window.PCjs.Machines||(window.PCjs.Machines={}),x=window.PCjs.Components||(window.PCjs.Components=[])}else Ea={},x=[];function Fa(a,b,c){Ea[a]&&b&&(Ea[a][b]=c)}function z(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b>1)+2;10>this.c&&(this.c=10);15>2;this.h=this.g-1;this.m=this.o/this.g|0;this.H=this.m-1;this.qa=[];this.A=null;this.Xa=this.I;a=new G;Ma(a,this.K);this.b=Array(this.m);for(b=0;b>8:e[2](b)&255):b&1&&(e=d.qa[a&-2])&&e[2]&&(c=e[2](b&-2)>>8);return 0<=c?c:c=d.Xa(b|4186112,-1,1)} function Oa(a,b,c){var d=!1,e=this.controller,f=e.qa[a];if(f)if(f[1])f[1](b,c),d=!0;else{if(f[3]){a=f[2]?f[2](c):0;if(c&1)f[3](a&255|b<<8,c&-2);else f[3](a&-256|b,c);d=!0}}else c&1&&(f=e.qa[a&-2])&&f[3]&&(c&=-2,a=f[2]?f[2](c):0,f[3](a&255|b<<8,c),d=!0);d||e.Xa(c|4186112,b,1)}function Pa(a,b){var c=-1,d=this.controller;(a=d.qa[a])&&(a[2]?c=a[2](b):a[0]&&(c=a[0](b)|a[0](b+1)<<8));return 0<=c?c:c=d.Xa(b|4186112,-1,0)} function Qa(a,b,c){var d=!1,e=this.controller;if(a=e.qa[a])a[3]?(a[3](b,c),d=!0):a[1]&&(a[1](b&255,c),a[1](b>>8,c+1),d=!0);d||e.Xa(c|4186112,b,0)}La.prototype.reset=function(){this.A&&this.A()};La.prototype.I=function(){return 0};La.prototype.la=function(a,b){b||this.reset();return!0}; function Ra(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.c;0g&&(q=g);if(l&&l.size){if(l.type==d&&l.controller==e){if(f+g<=l.Ta)return l.tb+=l.Ta-f,l.Ta=f,!0;if(f>=l.Ta+l.tb){q=l.size-(f-m);q>g&&(q=g);l.tb=f-l.Ta+q;f=m+a.g;g-=q;h++;continue}}return Ta(1,f,g)}f=new G(f,q,a.g,d,e);Ma(f,a.K,l);a.b[h++]=f;f=m+a.g;g-=q}return 0>=g?(a.status(Math.floor(c/1024)+"Kb "+Ua[d]+" at "+n(b,8,!0)),!0):Ta(2,b,c)}function Va(a,b){return a.b[(b&a.j)>>>a.c].Za(b&a.h,b)} function Wa(a,b,c){var d=b&a.h,e=(b&a.j)>>>a.c;d!=a.h?a.b[e].Hc(d,c&65535,b):(a.b[e++].Sa(d,c&255,b),a.b[e&a.H].Sa(0,c>>8&255,b+1))}function Xa(a){for(var b=0,c=[],d=0;d>5&3;c.hb=a>>1&15;c.ob=a&257?a&1?6:4:0;db(c);a=c.G;a&1|256&&(b=this.a.Ka&16?1:2);this.c.Na=this.c.Na&-8|b};k.lc=function(){return eb(this.a)};k.Ec=function(a){fb(this.a,a&-1809|eb(this.a)&1808);this.a.l|=128}; function gb(a){var b=a.g,c,d,e,f=b.X>>13&7;"undefined"===typeof b.T[f]&&(b.T[f]={cache:[],postProcess:a.rc,drive:f,blocksize:256,mapped:0,maxblock:b.Ia[f]*b.J[f],url:"rk"+f+".dsk"});b.D&=-129;switch(b.D>>1&7){case 0:b.ab=2496;b.S=0;b.D=128;b.X=0;break;case 1:if((b.X>>4&511)>=b.Ia[f]){b.S|=32832;b.D|=49152;break}if((b.X&15)>=b.J[f]){b.S|=32800;b.D|=49152;break}c=(b.X>>4&511)*b.J[f]+(b.X&15);d=(b.D&48)<<12|b.$a;e=65536-b.bb&65535;hb(a,b.T[f],c,d,e);return;case 2:if((b.X>>4&511)>=b.Ia[f])b.S|=32832, b.D|=49152;else if((b.X&15)>=b.J[f])b.S|=32800,b.D|=49152;else{c=(b.X>>4&511)*b.J[f]+(b.X&15);d=(b.D&48)<<12|b.$a;e=65536-b.bb&65535;a.qb(b.T[f],c,d,e);return}}b.ab=f<<13|b.ab&8176|b.X%9&15;I(a.a,20,5,144,function(){b.D=b.D&65534|128;return!!(b.D&64)})}k.rc=function(a,b,c,d,e){var f=this.g;f.$a=d&65535;f.D=f.D&-49|d>>12&48;f.bb=65536-e&65535;switch(a){case 1:f.S|=33024;f.D|=49152;break;case 2:f.S|=33792,f.D|=49152}I(this.a,20,5,144,function(){f.D=f.D&65534|128;return!!(f.D&64)})}; function ib(a){var b=a.h,c,d,e,f=b.u>>8&3;b.u&=-2;"undefined"===typeof b.T[f]&&(b.T[f]={cache:[],postProcess:a.sc,drive:f,blocksize:128,mapped:1,maxblock:b.Ia[f]*b.J[f],url:"rl"+f+".dsk"});switch(b.u>>1&7){case 2:b.xa&8&&(b.u&=63);b.xa=b.ac[f]|b.Ba&64;break;case 3:1==(b.L&3)&&(b.Ba=b.L&4?b.Ba+(b.L&65408)&65408|b.L<<2&64:b.Ba-(b.L&65408)&65408|b.L<<2&64,b.L=b.Ba);break;case 4:b.xa=b.Ba;break;case 5:if(b.L>>6>=b.Ia[f]){b.u|=37888;break}if((b.L&63)>=b.J[f]){b.u|=37888;break}c=(b.L>>6)*b.J[f]+(b.L&63); d=(b.ra&63)<<16|b.Wa;e=65536-b.xa&65535;hb(a,b.T[f],c,d,e);return;case 6:if(b.L>>6>=b.Ia[f])b.u|=37888;else if((b.L&63)>=b.J[f])b.u|=37888;else{c=(b.L>>6)*b.J[f]+(b.L&63);d=(b.ra&63)<<16|b.Wa;e=65536-b.xa&65535;a.qb(b.T[f],c,d,e);return}}I(a.a,20,5,112,function(){b.u|=129;return!!(b.u&64)})} k.sc=function(a,b,c,d,e){var f=this.h;f.Wa=d&65535;f.u=f.u&-49|d>>12&48;f.ra=d>>16&63;f.L=~~(c/f.J[b.ja])<<6|c%f.J[b.ja];f.Ba=f.L;f.xa=65536-e&65535;switch(a){case 1:f.u|=33792;break;case 2:f.u|=40960}I(this.a,20,5,112,function(){f.u|=129;return!!(f.u&64)})};function jb(a){a=a.j;a.F=2176;a.aa=0;a.V=[4544,4544,4544,4544,4544,4544,4544,4544];a.Pa=[0,0,0,0,0,0,0,0];a.Ma=a.Qa=a.Oa=a.Aa=a.Fb=0} function kb(a,b){var c=a.j,d,e,f;c.F&=-16513;c.aa&=-2049;c.V[b]&=-1153;I(a.a,-1,0,172);"undefined"===typeof c.T[b]&&(c.T[b]={cache:[],postProcess:a.tc,drive:b,blocksize:256,mapped:0,maxblock:c.ub[0]*c.Ha[0]*c.J[0],url:"rp"+b+".dsk"});switch(c.F&63){case 5:c.sb[b]=c.ma[b];c.F|=32896;c.V[b]|=32896;c.Ma|=1<=c.ub[0]||c.ba[b]>>8>=c.Ha[0]||(c.ba[b]&255)>=c.J[0]){c.Pa[b]|=1024;c.F|=49152;break}d=(c.ma[b]*c.Ha[0]+(c.ba[b]>>8))*c.J[0]+ (c.ba[b]&255);e=(c.Aa&63)<<16|c.Oa;f=65536-c.Qa&65535;hb(a,c.T[b],d,e,f);return;case 57:if(c.ma[b]>=c.ub[0]||c.ba[b]>>8>=c.Ha[0]||(c.ba[b]&255)>=c.J[0])c.Pa[b]|=1024,c.F|=49152;else{d=(c.ma[b]*c.Ha[0]+(c.ba[b]>>8))*c.J[0]+(c.ba[b]&255);e=(c.Aa&63)<<16|c.Oa;f=65536-c.Qa&65535;a.qb(c.T[b],d,e,f);return}}I(a.a,3,5,172,function(){c.F=c.F&65534|128;c.V[b]|=128;return!!(c.F&64)})} k.tc=function(a,b,c,d,e){var f=this.j;f.Qa=65536-e&65535;f.Oa=d&65535;f.F=f.F&-769|d>>8&768;f.Aa=d>>16&63;e=~~(c/f.J[0]);d=~~(e/f.Ha[0]);f.ba[b.ja]=e%f.Ha[0]<<8|c%f.J[0];f.sb[b.ja]=f.ma[b.ja]=d;f.Ma|=1<=b.ic-1&&(f.V[b.ja]|=1024);switch(a){case 1:f.aa|=512;f.F|=49152;break;case 2:f.aa|=2048,f.F|=49152}I(this.a,20,5,172,function(){f.V[b.ja]|=128;f.F=f.F&65534|128;return!!(f.F&64)})}; function lb(a,b,c,d,e,f){var g=~~((f+c.sa-1)/c.sa),h=new XMLHttpRequest;2048>g&&d+2048g){b.Cb(2,b,c,d,e);return}b.cache[c][f]=g;d+=2;--e}c++}b.Cb(0,b,c,d,e)}k.reset=function(){this.c.Na=this.c.Na&-120|20;this.b.wa=0;this.g.D=128;this.h.u=128;jb(this)}; k.$b=function(a,b,c){var d,e,f=this.a;switch(a&-64){case 4194240:switch(a&-2){case 4194300:0>b?d=f.za&65280:(a&1&&(b<<=8),f.za=b|255,d=0);break;case 4194298:if(0>b)d=f.Eb;else{a&1&&(b<<=8);if(d=b&65024){e=d>>9;do d+=34;while(e>>=1)}f.Eb=d;f.l|=2}break;case 4194294:if(70!==f.Ja)return K(f,4);0>b?d=f.s:d=f.s=0;break;case 4194292:if(70!==f.Ja)return K(f,4);d=1;break;case 4194290:if(70!==f.Ja)return K(f,4);d=0;break;case 4194288:if(70!==f.Ja)return K(f,4);d=61183;break;case 4194296:0<=b&&!(a&1)&&(b&= 255);case 4194286:case 4194284:case 4194282:case 4194280:case 4194278:case 4194276:case 4194274:case 4194272:if(70!==f.Ja)return K(f,4);e=a-4194272>>1;0>b?d=f.Ab[e]:(d=J(this,f.Ab[e],a,b,c),0<=d&&(f.Ab[e]=d));break;case 4194254:return a&1?f.C>>14&1?(0<=b&&(f.f[6]=b),d=f.f[6]):(0<=b&&(f.da[3]=b),d=f.da[3]):f.C>>14&0?(0<=b&&(f.f[6]=b),d=f.f[6]):(0<=b&&(f.da[1]=b),d=f.da[1]),d;case 4194252:case 4194250:case 4194248:return e=a&7,f.C&2048?(0<=b&&(f.f[e]=b),d=f.f[e]):(0<=b&&(f.La[e]=b),d=f.La[e]),d;case 4194246:return a& 1?(0<=b&&(f.f[7]=b),d=f.f[7]):f.C>>14&0?(0<=b&&(f.f[6]=b),d=f.f[6]):(0<=b&&(f.da[0]=b),d=f.da[0]),d;case 4194244:case 4194242:case 4194240:return e=a&7,f.C&2048?(0<=b&&(f.La[e]=b),d=f.La[e]):(0<=b&&(f.f[e]=b),d=f.f[e]),d;default:return f.s|=16,K(f,4)}break;case 4194176:e=a>>1&31;d=J(this,f.R[3][e],a,b,c);0<=d&&(f.R[3][e]=d,f.R[3][e&15]&=65295);break;case 4194112:switch(a&-2){case 4194174:d=J(this,f.rb,a,b,c);0<=d&&(f.rb=d);break;case 4194172:d=f.ya;d&65280&&(d=(d<<8|d>>8)&65535);break;case 4194168:0> b?d=this.c.Bc&65535:(d=J(this,this.c.data,a,b,c),0<=d&&(this.c.data=d));break;default:return f.s|=16,K(f,4)}break;case 4194048:e=this.g;switch(a&-2){case 4194048:d=J(this,e.ab,a,b,c);0<=d&&(e.ab=d);break;case 4194050:d=J(this,e.S,a,b,c);0<=d&&(e.S=d);break;case 4194052:d=J(this,e.D,a,b,c);0<=b&&0<=d&&(e.D=d&-36993|e.D&36992,e.D&1&&gb(this));break;case 4194054:d=J(this,e.bb,a,b,c);0<=d&&(e.bb=d);break;case 4194056:d=J(this,e.$a,a,b,c);0<=d&&(e.$a=d);break;case 4194058:d=J(this,e.X,a,b,c);0<=d&&(e.X= d);break;case 4194060:break;case 4194062:d=J(this,e.Sb,a,b,c);0<=d&&(e.Sb=d);break;default:return f.s|=16,K(f,4)}break;case 4193728:var g=this.j;e=g.aa&7;switch(a&-2){case 4193728:d=J(this,g.F,a,b,c);0<=b&&0<=d&&(g.Aa=g.Aa&60|d>>8&3,g.F=d&17279|g.F&34944|2048,d&1&&g.F&128?kb(this,e):192==(d&192)&&I(f,0,5,172));break;case 4193730:d=J(this,g.Qa,a,b,c);0<=d&&(g.Qa=d);break;case 4193732:d=J(this,g.Oa,a,b,c);0<=d&&(g.Oa=d&65534);break;case 4193734:d=J(this,g.ba[e],a,b,c);0<=d&&(g.ba[e]=d&7967);break;case 4193736:d= J(this,g.aa,a,b,c);0<=d&&(g.aa=d&63|g.aa&65472,d&128&&jb(this));break;case 4193738:d=g.V[e];break;case 4193740:d=g.Pa[e];break;case 4193742:d=J(this,g.Ma,a,b,c);0<=d&&(g.Ma=d&255);break;case 4193744:d=g.yc[e];break;case 4193746:d=J(this,g.Tb,a,b,c);0<=d&&(g.Tb=d);break;case 4193748:d=J(this,g.Ub[e],a,b,c);0<=d&&(g.Ub[e]=d&1023);break;case 4193750:d=8210;break;case 4193752:d=g.zc[e];break;case 4193754:d=J(this,g.Vb[e],a,b,c);0<=d&&(g.Vb[e]=d);break;case 4193756:d=J(this,g.ma[e],a,b,c);0<=d&&(g.ma[e]= d&511);break;case 4193758:g.sb[e]=g.ma[e];d=g.sb[e];break;case 4193760:d=g.wc[e];break;case 4193762:d=g.xc[e];break;case 4193764:d=g.uc[e];break;case 4193766:d=g.vc[e];break;case 4193768:d=J(this,g.Aa,a,b,c);0<=d&&(g.Aa=d&63,g.F=g.F&-769|(d&3)<<8);break;case 4193770:d=J(this,g.Fb,a,b,c);0<=d&&(g.Fb=d);break;default:return f.s|=16,K(f,4)}break;case 4192512:e=this.h;switch(a&-2){case 4192512:d=J(this,e.u,a,b,c);0<=b&&0<=d&&(e.ra=e.ra&60|d>>4&3,e.u=e.u&-1023|d&1022,e.u&128||ib(this));break;case 4192514:d= J(this,e.Wa,a,b,c);0<=d&&(e.Wa=d&65534);break;case 4192516:d=J(this,e.L,a,b,c);0<=d&&(e.L=d);break;case 4192518:d=J(this,e.xa,a,b,c);0<=d&&(e.xa=d);break;case 4192520:d=J(this,e.ra,a,b,c);0<=d&&(e.ra=d&63,e.u=e.u&-49|(e.ra&3)<<4);break;default:return f.s|=16,K(f,4)}break;case 4191552:switch(a&-2){case 4191566:0>b?d=f.Ka:(d=J(this,f.Ka,a,b,c),0<=d&&(70!==f.Ja&&(d&=-49),f.Ka=d,f.pb[0]=d&4?15:7,f.pb[1]=d&2?15:7,f.pb[3]=d&1?15:7,f.ob&&(e=2,f.Ka&16&&(e=1),this.c.Na=this.c.Na&-8|e)));break;default:return f.s|= 16,K(f,4)}break;case 4191424:e=a>>1&31;d=J(this,f.R[0][e],a,b,c);0<=d&&(f.R[0][e]=d,f.R[0][e&15]&=65295);break;case 4191360:e=a>>1&31;d=J(this,f.R[1][e],a,b,c);0<=d&&(f.R[1][e]=d,f.R[1][e&15]&=65295);break;case 4190400:case 4190336:if(70!==f.Ja)return K(f,4);e=a>>2&31;d=f.cb[e];a&2&&(d>>=16);d&=65535;0<=b&&(d=J(this,d,a,b,c),0<=d&&(f.cb[e]=a&2?d<<16|f.cb[e]&65535:f.cb[e]&4294901760|d&65534));break;case 4188672:case 4188736:case 4188800:case 4188864:case 4188928:case 4188992:case 4189056:case 4189120:if(0> b)d=$a[a>>1&255];else return f.s|=16,K(f,4);break;default:return f.s|=16,K(f,4)}c&&0<=d&&(a&1?d>>=8:d&=255);"undefined"===typeof d&&console.log("panic(76)");return d};var ob={},cb=(ob[65382]=[null,null,H.prototype.jc,H.prototype.Cc,"LKS"],ob[65402]=[null,null,H.prototype.kc,H.prototype.Dc,"MMR0"],ob[65534]=[null,null,H.prototype.lc,H.prototype.Ec,"PSW"],ob);u(function(){for(var a=D(document,"pdp11","device"),b=0;b>1),this.a=new Int32Array(this.c,0,c>>2),vb(this,rb?wb:xb);else{this.a=Array(c>>2);for(a=0;a>2),b=0;b>8,c)},W:function(a){return this.a[a>>2]>>>((a&3)<<3)&255},ga:function(a){var b=a>>2;a=(a&3)<<3;var c=this.a[b]>>a;return 24>a?c&65535:c&255|(this.a[b+1]&255)<<8},pa:function(a,b){var c=a>>2;a=(a&3)<<3;this.a[c]=this.a[c]&~(255<>2;a=(a&3)<<3;24>a?this.a[c]=this.a[c]&~(65535<>8);this.ta=!0},I:function(a,b){return this.M(a,b)},ca:function(a,b){return this.ea(a, b)},na:function(a,b,c){this.w||this.Zb(a,b,c)},Da:function(a,b,c){this.w||this.Ea(a,b,c)},H:function(a){return this.b[a]},N:function(a){return this.b[a]},Z:function(a){return this.g.getUint16(a,!0)},fa:function(a){return a&1?this.b[a]|this.b[a+1]<<8:this.m[a>>1]},ha:function(a,b){this.b[a]=b;this.ta=!0},oa:function(a,b){this.b[a]=b;this.ta=!0},Ca:function(a,b){this.g.setUint16(a,b,!0);this.ta=!0},Fa:function(a,b){a&1?(this.b[a]=b,this.b[a+1]=b>>8):this.m[a>>1]=b;this.ta=!0}}; function Ma(a,b,c){a.K=b;a.h=a.j=0;c&&((a.h=c.h)&&zb(a,Ab,!1),(a.j=c.j)&&Bb(a,Ab,!1))}function Bb(a,b,c){c&&a.j||(a.Sa=!a.w&&b[1]||a.v,a.Hc=!a.w&&b[3]||a.G);if(c||void 0===c)a.Zb=b[1]||a.v,a.Ea=b[3]||a.G}function zb(a,b,c){c&&a.h||(a.Za=b[0]||a.o,a.oc=b[2]||a.A);if(c||void 0===c)a.M=b[0]||a.o,a.ea=b[2]||a.A}function vb(a,b){b||(b=Cb);zb(a,b,void 0);Bb(a,b,void 0)}var Cb=[],yb=[G.prototype.W,G.prototype.pa,G.prototype.ga,G.prototype.Ga],Ab=[G.prototype.I,G.prototype.na,G.prototype.ca,G.prototype.Da]; if(Ia)var xb=[G.prototype.H,G.prototype.ha,G.prototype.Z,G.prototype.Ca],wb=[G.prototype.N,G.prototype.oa,G.prototype.fa,G.prototype.Fa];function Db(a,b){v.call(this,"CPU",a,Db);var c=a.multiplier||1;this.lb=a.cycles||b;this.ga=c;this.xb=Math.round(this.lb/1E4)/100;this.na=this.xb*this.ga;this.i.$=!1;this.i.Wb=!1;this.i.Va=a.autoStart;this.i.Hb=!1;this.i.mb=!1;this.jb=this.oa=0;this.kb=a.csStart;this.Da=a.csInterval;this.Ea=a.csStop;this.M=[];this.Qb=this.Ac.bind(this);F(this)}y(Db); var Eb=["power","reset"];k=Db.prototype;k.va=function(a,b,c,d){this.A=a;this.B=b;this.K=d;for(b=0;b>=3;d=""+e}else d=n(c,d);else d="--------".substr(0,d||4);a.w[b].textContent!=d&&(a.w[b].textContent=d)}} k.Y=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.w[b]=c;a=!0;break;case "run":this.w[b]=c;c.onclick=function(){var a;if(a=d.A)if(a=d.A,a.i.P)a=!0;else{var b=null,c,h=z(a.id);for(c=0;ca.ea/a.na&&(b=1),a.ga=b,b=a.xb*a.ga,a.na!=b)){a.na=b;b=a.na.toFixed(2)+"Mhz";var c=a.w.setSpeed;c&&(c.textContent=b);a.U("target speed: "+b)}Nb(a,a.ca);a.ca=0;a.Z=ja();a.fa=0;Ob(a)}function ab(a,b){var c=a.M.length;a.M.push([-1,b]);return c}function bb(a,b,c){0<=b&&ba.M[b][0]&&(c*=a.lb*a.ga/1E3,a.M[b][0]=c)} k.Ac=function(){if(this.i.$){this.Bb>=this.lb&&Ob(this,!0);this.Ga=0;this.ib=ja();if(this.fa){var a=this.ib-this.fa;a>this.Nb&&(this.Z+=a,this.Z>this.ib&&(this.Z=this.ib))}try{do{for(var b,c=this.i.mb?1:this.eb,d=this.M.length-1;0<=d;d--){var e=this.M[d];0>e[0]||c>e[0]&&(c=e[0])}b=c;try{this.Xb(b)}catch(m){if("number"!=typeof m)throw m;}for(var f=this.W-this.a,a=f,g=this.M.length-1;0<=g;g--){var h=this.M[g];0>h[0]||(h[0]-=a,0>=h[0]&&(h[0]=-1,h[1]()))}this.Ga+=f;this.ca+=f;Nb(this,0,!0);a=f;if(this.i.mb){var l= !1;this.jb=this.jb+this.Mb()|0;this.oa-=a;0>=this.oa&&(this.oa+=this.Da,l=!0);0<=this.Ea&&this.Ea<=Pb(this)&&(this.Da=this.Ea=-1,Hb(this),Lb(this),l=!0);l&&this.U(Pb(this)+" cycles: checksum="+n(this.jb))}this.Fa-=f;if(0>=this.Fa){this.Fa+=this.eb;15<=++this.Ob&&(this.A&&this.A.Ra(),this.Ob=0);break}}while(this.i.$)}catch(m){Lb(this);Ib(this);this.A&&this.A.stop(ja(),Pb(this));b=m.stack||m.message;this.i.error=!0;this.O(b);return}if(this.i.$){b=setTimeout;c=this.Qb;this.fa=ja();d=this.Nb;this.Ga&& (d=Math.round(d*this.Ga/this.eb));d-=this.fa-this.ib;if(e=this.fa-this.Z)this.ea=Math.round(this.ca/(10*e))/100,864E5<=e&&(this.ha=0,Mb(this));if(0>d||this.ead&&(this.Z-=d),d=0;this.Bb+=this.Ga;this.fa+=d;b(c,d)}}};function Jb(a){var b;a.i.error?(a.U(a.toString()+" error"),b=!0):b=!1;if(!b)if(a.i.$)a.U(a.toString()+" busy");else{Mb(a);a.i.$=!0;a.i.Wb=!0;a.Ca&&a.Ca.start();if(b=a.w.run)b.textContent="Halt";a.A&&a.A.start(a.Z,Pb(a));Ib(a,!0);setTimeout(a.Qb,0)}}k.Xb=function(){return 0}; function Lb(a){if(a.i.$){a.W-=a.a;a.a=0;Nb(a,a.ca);a.ca=0;a.i.$=!1;a.Ca&&a.Ca.stop();var b=a.w.run;b&&(b.textContent="Run");a.A&&a.A.stop(ja(),Pb(a));Ib(a)}a.i.complete=void 0}function Ib(a,b){a.A&&a.A.Ra(b)} function Qb(a){this.gc=a.resetAddr||0;Db.call(this,a,6666667);this.Kb=0;this.decode=Rb.bind(this);this.j=65536;this.g=32768;this.h=65535;this.m=32768;this.C=15;this.f=[0,0,0,0,0,0,0,this.gc];this.La=[0,0,0,0,0,0];this.da=[0,0,0,0];this.hb=this.v=0;this.R=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];this.cb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.Ab=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.c=this.b=this.vb=this.H=this.I=this.l=0;this.Ja=70;this.pa=-1;Sb(this);this.i.complete=this.i.bc=!1}y(Qb,Db);k=Qb.prototype;k.reset=function(){this.i.$&&Lb(this);Sb(this);Gb(this);this.i.error=!1;this.parent.reset.call(this)}; function Sb(a){a.za=255;a.s=0;a.Eb=0;a.G=0;a.ya=0;a.rb=0;a.Ka=0;a.ob=0;a.gb=0;a.pb=[7,7,7,7];a.o=[];a.l|=2;db(a)}function db(a){a.ob?(a.Jb=65536,a.N=a.ec):(a.Jb=0,a.N=a.dc)}k.Mb=function(){return 0};k.save=function(){var a=new L(this);a.set(0,[]);a.set(1,[this.ha,this.ga]);a.set(2,Xa(this.B));return a.data()}; k.restore=function(a){var b=a[1];this.ha=b[1];Mb(this,b[3]);a:{b=this.B;a=a[2];var c;for(c=0;cb){a.o[f].ia-=b;break}b-=a.o[f].ia}a.o.splice(f+1,0,{ia:b,Rb:c<<5&224,Yb:d,yb:e})}a.l|=2}function eb(a){return a.C=a.C&63728|a.ua()|(a.h&65535?0:4)|(a.g&32768?2:0)|M(a)} function fb(a,b){a.m=b<<12;a.h=~b&4;a.g=b<<14;a.j=b<<16;if((b^a.C)&2048)for(var c=a.La.length;0<=--c;){var d=a.f[c];a.f[c]=a.La[c];a.La[c]=d}a.v=b>>14&3;c=a.C>>14&3;a.v!=c&&(a.da[c]=a.f[6],a.f[6]=a.da[a.v]);a.l|=2;a.C=b}function O(a,b){a.l&128||(a.m=a.h=b,a.g=0)}function P(a,b,c){a.l&128||(a.m=a.h=a.j=b,a.g=c||0)}function Ub(a,b,c,d){a.l&128||(a.m=a.h=a.j=b,a.g=(c^b)&(d^b))}function Q(a,b){a.l&128||(a.m=a.h=a.j=b,a.g=a.m^a.j>>1)}function Vb(a,b,c,d){a.l&128||(a.m=a.h=a.j=b,a.g=(c^d)&(d^b))} function K(a,b){var c=!1;0>a.pa?a.pa=eb(a):a.v||(b=4,c=!0);a.G&57344||(a.ya=63222,a.rb=b);a.v=0;var d=N(a,b|65536),e=N(a,b+2&65535|65536);fb(a,e&-12289|a.pa>>2&12288);c&&(a.s|=4,a.f[6]=4);Wb(a,a.pa);Wb(a,a.f[7]);a.f[7]=d&65535;a.l&=-113;a.pa=-1;throw b;}function Xb(a){var b=Yb(a),c=Yb(a)&-1793;a.C&49152&&(c=c&-225|a.C&63712);a.f[7]=b&65535;fb(a,c);a.l&=-17} function mb(a,b){var c=b>>13&31;31>c?a.Ka&32&&(b=a.cb[c]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)")):b|=4186112;return b} function Zb(a,b,c){var d,e,f,g=0;if(c&a.ob){d=b>>13&a.pb[a.v];e=a.R[a.v][d];f=(a.R[a.v][d+16]<<6)+(b&8191)&4194303;a.Ka&16?3932160<=f&&4186112>f&&(f=mb(a,f&262143)):(f&=262143,253952<=f&&(f|=4186112));3932160>f&&(3915776<=f&&(a.s|=32,K(a,4)),f&1&&!(c&1)&&(a.s|=64,K(a,4)));switch(e&7){case 1:g=4096;case 2:e|=128;c&4&&(g=8192);break;case 4:g=4096;case 5:c&4&&(g=4096);case 6:e|=c&4?192:128;break;default:g=32768}32512!==(e&32520)&&(e&8?e&32512&&(b&8128)<(e>>2&8128)&&(g|=16384):(b&8128)>(e>>2&8128)&&(g|= 16384));a.R[a.v][d]=e;if(4194170!==f||a.v)a.gb=a.v,a.hb=d;g&&(g&57344&&(0<=a.pa&&(g|=128),a.G&57344||(a.G=a.G|g|a.gb<<5|a.hb<<1),K(a,168)),a.G&61440||!(4191360>f||4194239>>a.c;return c!=a.h?a.b[d].oc(c,b):a.b[d++].Za(c,b)|a.b[d&a.H].Za(0,b+1)<<8}function N(a,b){return nb(a,Zb(a,b,2))} function Yb(a){var b=N(a,a.f[6]|65536);a.f[6]=a.f[6]+2&65535;return b}function Wb(a,b){var c=a.f[6]-2&65535;a.f[6]=c;a.G&57344||(a.ya=a.ya<<8|246);!a.v&&c<=a.za&&4c&&d&1&&(f=1));a.a-=3;break;case 3:f=2;e=a.f[c];7!==c&&(e|=g);e=N(a,e);e|=g;a.a-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.f[c]+f&65535;7!==c&&(e|=g);a.a-=4;break;case 5:f=-2;e=a.f[c]-2&65535;7!==c&&(e|=g);e=N(a,e)|g;a.a-=8;break; case 6:return e=Tb(a),e=e+a.f[c]&65535|g,a.a-=6,e;case 7:return e=Tb(a),e=e+a.f[c]&65535,e=N(a,e|65536)|g,a.a-=10,e}a.f[c]=a.f[c]+f&65535;!g||a.G&57344||(a.ya=a.ya<<8|f<<3&248|c);6==c&&!a.v&&d&4&&0>=f&&(a.f[6]<=a.za||65534<=a.f[6])&&(a.f[6]<=a.za-32?(a.s|=4,a.f[6]=4,K(a,4)):(a.s|=8,a.l|=64));return e}k.dc=function(a,b,c){return $b(this,a,b,c)};k.ec=function(a,b,c){return Zb(this,$b(this,a,b,c),c)}; function ac(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?(d=$b(a,b,d,2),c&65536||61440!==(a.C&61440)&&(d&=65535),a.v=a.C>>12&3,c=N(a,d|c&65536),a.v=a.C>>14&3):c=6!=d||(a.C>>2&12288)===(a.C&12288)?a.f[d]:a.da[a.C>>12&3];return c}function bc(a,b,c,d){a.G&57344||(a.ya=22);var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=$b(a,b,e,4),c&65536||(e&=65535),a.v=a.C>>12&3,e=Zb(a,e|c&65536,4),a.v=a.C>>14&3,Wa(a.B,e,d&65535)):6!=e||(a.C>>2&12288)===(a.C&12288)?a.f[e]=d:a.da[a.C>>12&3]=d} function cc(a,b){b>>=6;var c=a.I=b&7;(b=a.H=(b&56)>>3)?(c=a.N(b,c,3),a=Va(a.B,c)):a=a.f[c]&255;return a}function R(a,b){var c;b>>=6;var d=a.I=b&7;(b=a.H=(b&56)>>3)?c=nb(a,a.N(b,d,2)):c=a.f[d];return c}function dc(a,b){var c=a.b=b&7;b=a.c=(b&56)>>3;return $b(a,b,c,8)}function ec(a,b){var c=a.b=b&7;(b=a.c=(b&56)>>3)?(c=a.N(b,c,3),a=Va(a.B,c)):a=a.f[c]&255;return a}function S(a,b){var c,d=a.b=b&7;(b=a.c=(b&56)>>3)?c=nb(a,a.N(b,d,2)):c=a.f[d];return c} function T(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.vb=a.N(b,e,7),c=d.call(a,c,Va(a.B,e)),e&1&&a.a--,a=a.B,a.b[(e&a.j)>>>a.c].Sa(e&a.h,c&255,e)):a.f[e]=a.f[e]&65280|d.call(a,c,a.f[e])}function U(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.N(b,e,6),c=d.call(a,c,nb(a,e)),Wa(a.B,e,c&65535)):a.f[e]=d.call(a,c,a.f[e])} function fc(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(d=a.N(b,e,5),d&1&&a.a--,a=a.B,a.b[(d&a.j)>>>a.c].Sa(d&a.h,c&255,d)):a.f[e]=c?d&1?c<<24>>24&65535:a.f[e]&-256|c&255:a.f[e]&-256;return c}function gc(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?(d=a.N(b,d,4),Wa(a.B,d,c&65535)):a.f[d]=c&65535;return c}function V(a,b,c){c&&(a.f[7]=a.f[7]+(b<<24>>23)&65535,a.a-=2);a.a-=3} k.Xb=function(a){this.i.complete=!0;this.i.bc=!1;this.i.Wb=!1;this.W=this.a=a;do{if(this.l&&(this.l&112&&(this.l&32?K(this,168):this.l&64?K(this,4):this.l&16&&K(this,12),this.l&=-113),this.l&7))if(this.l&2){this.l&=-3;a=null;for(var b=this.Eb&224,c=this.o.length;0<=--c;){if(0b&&(b=this.o[c].Rb,a=this.o[c],this.o.splice(c,1))}b>(this.C&224)&&(this.l&4&&(this.f[7]= this.f[7]+2&65535,this.l&=-5),a?K(this,a.Yb):K(this,160))}else this.l&1&&this.l++;this.G&57344||(this.ya=0,this.rb=this.f[7]);this.l=this.l&7|this.C&16;this.decode(Tb(this))}while(0>1|b<<16;Q(this,a);return a&65535}function mc(a,b){a=b&2048|b>>1|b<<8;Q(this,a<<8);return a&255}function nc(a,b){a=b&~a;O(this,a);return a}function oc(a,b){a=b&~a;O(this,a<<8);return a}function pc(a,b){a|=b;O(this,a);return a}function qc(a,b){a|=b;O(this,a<<8);return a}function rc(a,b){a=~b|65536;P(this,a);return a&65535} function sc(a,b){a=~b|256;P(this,a<<8);return a&255}function tc(a,b){a=b-a;this.l&128||(this.m=this.h=a,this.g=b&(b^a));return a&65535}function uc(a,b){a=b-a;var c=a<<8;b<<=8;this.l&128||(this.m=this.h=c,this.g=b&(b^c));return a&255}function vc(a,b){a=b+a;this.l&128||(this.m=this.h=a,this.g=a&(b^a));return a&65535}function wc(a,b){a=b+a;var c=a<<8;this.l&128||(this.m=this.h=c,this.g=c&(b<<8^c));return a&255}function xc(a,b){a=-b;P(this,a,a&b&32768);return a&65535} function yc(a,b){a=-b;P(this,a<<8,(a&b&128)<<8);return a&255}function zc(a,b){a=b<<1|this.j>>16&1;Q(this,a);return a&65535}function Ac(a,b){a=b<<1|this.j>>16&1;Q(this,a<<8);return a&255}function Bc(a,b){a=(this.j&65536|b)>>1|b<<16;Q(this,a);return a&65535}function Cc(a,b){a=((this.j&65536)>>8|b)>>1|b<<8;Q(this,a<<8);return a&255}function Dc(a,b){var c=b-a;Vb(this,c,a,b);return c&65535}function Ec(a,b){var c=b-a;Vb(this,c<<8,a<<8,b<<8);return c&255} function Fc(a,b){this.l&128||(this.m=this.h=b&65280,this.g=this.j=0);return(b<<8|b>>8)&65535}function Gc(a,b){a^=b;O(this,a);return a&65535}function Hc(a){var b=S(this,a);a=a>>6&7;var c=this.f[a];c&32768&&(c|=4294901760);this.j=this.g=0;b&=63;if(b&32)b=64-b,16>=b;else if(b)if(16>15&65535;d&&65535!==d&&(this.g=32768)}this.f[a]=c&65535;this.m=this.h=c;this.a-=(this.c?6:7)+b} function Ic(a){var b=S(this,a);a=a>>6&7;var c=this.f[a]<<16|this.f[a|1];this.j=this.g=0;b&=63;if(b&32){b=64-b;32>b-1;this.j=d<<16;d>>=1;c&2147483648&&(d|=4294967295<<32-b)}else b?(d=c<>15,d<<=1,32>=32-b)&&4294967295!==(c|4294967295<>16&65535;this.f[a|1]=d&65535;this.m=d>>16;this.h=d>>16|d;this.a-=(this.c?6:7)+b}function W(a){a&1&&(this.j=0);a&2&&(this.g=0);a&4&&(this.h=1);a&8&&(this.m=0);this.a-=5} function Jc(a){var b=S(this,a);if(b){a=a>>6&7;var c=this.f[a]<<16|this.f[a|1];this.j=this.g=0;b&32768&&(b|=-65536);var d=~~(c/b);-32768<=d&&32767>=d?(this.f[a]=d&65535,this.f[a|1]=c-d*b&65535,this.h=d>>16|d,this.m=d>>16):(this.g=32768,this.h=d>>15|d,this.m=c>>16,-1===b&&65534===this.f[a]&&(this.f[a]=this.f[a|1]=1));this.a-=53}else this.h=this.m=0,this.g=32768,this.j=65536,this.a-=7}var Kc=[0,7,7,10,7,11,9,13];function Lc(a){var b=this.a;a=dc(this,a);this.f[7]=a&65535;this.a=b-Kc[this.c]} var Mc=[0,14,14,17,14,18,16,20];function Nc(a){var b=this.a,c=dc(this,a);a=a>>6&7;Wb(this,this.f[a]);this.f[a]=this.f[7];this.f[7]=c&65535;this.a=b-Mc[this.c]}var Oc=[3,9,9,13,10,14,12,16,4,9,9,13,10,14,13,17],Pc=[7,13,13,17,14,18,17,21];function Qc(a){var b=S(this,a);a=a>>6&7;b&32768&&(b|=-65536);var c=this.f[a];c&32768&&(c|=-65536);b=~~(b*c);this.f[a]=b>>16&65535;this.f[a|1]=b&65535;this.l&128||(this.m=b>>16,this.h=this.m|b,this.g=0,this.j=-32768>b||32767>6;if(this.f[b]=this.f[b]-1&65535)this.f[7]=this.f[7]-((a&63)<<1)&65535,this.a+=1;this.a-=6}function Tc(a){U(this,a,0,Fc);this.a-=this.c?9:3+(7==this.b?2:0)}function Uc(a){U(this,a,R(this,a),Gc);this.a-=this.c?9:3+(7==this.b?2:0)}function Y(){K(this,8)}function Rb(a){Vc[a>>12].call(this,a)} var Vc=[function(a){Wc[a>>8&15].call(this,a)},function(a){var b=R(this,a),c=this.a;O(this,gc(this,a,b));this.a=c-Oc[(this.H?8:0)+this.c]+(7!=this.b||this.c?0:2)},function(a){var b=R(this,a);a=S(this,a);Vb(this,b-a,a,b);this.a-=this.c?4+(this.I&&6<=this.b?1:0):(this.H?4:3)+(7==this.b?2:0)},function(a){O(this,R(this,a)&S(this,a));this.a-=this.c?4+(this.I&&6<=this.b?1:0):(this.H?4:3)+(7==this.b?2:0)},function(a){U(this,a,R(this,a),nc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b? 2:0)},function(a){U(this,a,R(this,a),pc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},function(a){U(this,a,R(this,a),hc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},function(a){Xc[a>>8&15].call(this,a)},function(a){Yc[a>>8&15].call(this,a)},function(a){var b=cc(this,a);O(this,fc(this,a,b,1)<<8);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},function(a){var b=cc(this,a)<<8;a=ec(this,a)<<8;Vb(this,b-a,a,b);this.a-=this.c?4+ (this.I&&6<=this.b?1:0):(this.H?4:3)+(7==this.b?2:0)},function(a){O(this,(cc(this,a)&ec(this,a))<<8);this.a-=this.c?4+(this.I&&6<=this.b?1:0):(this.H?4:3)+(7==this.b?2:0)},function(a){T(this,a,cc(this,a),oc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},function(a){T(this,a,cc(this,a),qc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},function(a){U(this,a,R(this,a),Dc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},Y],Wc=[function(a){Zc[a>> 4&15].call(this,a)},function(a){V(this,a,!0)},function(a){V(this,a,!!(this.h&65535))},function(a){V(this,a,this.h&65535?0:4)},function(a){V(this,a,!this.ua()==!(this.g&32768))},function(a){V(this,a,!this.ua()!=!(this.g&32768))},function(a){V(this,a,!!(this.h&65535)&&!this.ua()==!(this.g&32768))},function(a){V(this,a,(this.h&65535?0:4)||!this.ua()!=!(this.g&32768))},Nc,Nc,function(a){$c[a>>6&3].call(this,a)},function(a){ad[a>>6&3].call(this,a)},function(a){bd[a>>6&3].call(this,a)},function(a){cd[a>> 6&3].call(this,a)},Y,Y],$c=[function(a){P(this,gc(this,a,0));this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,rc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,1,vc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,1,tc);this.a-=this.c?9:3+(7==this.b?2:0)}],ad=[function(a){U(this,a,0,xc);this.a-=this.c?11:6},function(a){U(this,a,M(this)?1:0,hc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,M(this)?1:0,Dc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){a=S(this, a);P(this,a);this.a-=this.c?4:3+(7==this.b?2:0)}],bd=[function(a){U(this,a,0,Bc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,zc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,lc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,jc);this.a-=this.c?9:3+(7==this.b?2:0)}],cd=[function(a){a=this.f[7]+((a&63)<<1)&65535;var b=N(this,a|65536);this.f[7]=this.f[5]&65535;this.f[6]=a+2&65535;this.f[5]=b;this.a-=8},function(a){a=ac(this,a,0);Wb(this,a);O(this,a);this.a-=11}, function(a){var b=Yb(this),c=this.a;bc(this,a,0,b);O(this,b);this.a=c-Pc[this.c]},function(a){O(this,gc(this,a,this.ua?65535:0));this.a-=this.c?9:3+(7==this.b?2:0)}],Zc=[function(a){dd[a&15].call(this,a)},Y,Y,Y,Lc,Lc,Lc,Lc,function(a){if(a&8)K(this,8);else{var b=Yb(this);a&=7;this.f[7]=this.f[a]&65535;this.f[a]=b;this.a-=9}},function(a){a&8?(this.C&49152||(this.C=this.C&-2017|(a&7)<<5,this.l|=1),this.a-=5):K(this,8)},function(a){ed[a&15].call(this,a)},function(a){fd[a&15].call(this,a)},Tc,Tc,Tc,Tc], dd=[function(){this.C&49152?(this.s|=128,K(this,4)):(this.W-=this.a,this.a=0);this.a-=7},function(){this.l|=4;this.f[7]=this.f[7]+-2&65535;this.a-=3},function(){Xb(this);this.l|=this.C&16;this.a-=13},function(){K(this,12);this.a-=5},function(){K(this,16);this.a-=25},function(){this.C&49152||(Sb(this),this.B.reset());this.a-=667},function(){Xb(this);this.a-=13},Y,Y,Y,Y,Y,Y,Y,Y,Y],ed=[Rc,function(){this.j=0;this.a-=5},function(){this.g=0;this.a-=5},W,function(){this.h=1;this.a-=5},W,W,W,function(){this.m= 0;this.a-=5},W,W,W,W,W,W,W],fd=[Rc,function(){this.j=65536;this.a-=5},function(){this.g=32768;this.a-=5},X,function(){this.h=0;this.a-=5},X,X,X,function(){this.m=32768;this.a-=5},X,X,X,X,X,X,X],Xc=[Qc,Qc,Jc,Jc,Hc,Hc,Ic,Ic,Uc,Uc,Y,Y,Y,Y,Sc,Sc],Yc=[function(a){V(this,a,!this.ua())},function(a){V(this,a,this.ua())},function(a){V(this,a,!M(this)&&!!(this.h&65535))},function(a){V(this,a,M(this)||(this.h&65535?0:4))},function(a){V(this,a,!(this.g&32768))},function(a){V(this,a,this.g&32768?2:0)},function(a){V(this, a,!M(this))},function(a){V(this,a,M(this))},function(){K(this,24);this.a-=25},function(){K(this,28);this.a-=5},function(a){gd[a>>6&3].call(this,a)},function(a){hd[a>>6&3].call(this,a)},function(a){id[a>>6&3].call(this,a)},function(a){jd[a>>6&3].call(this,a)},Y,Y],gd=[function(a){P(this,fc(this,a,0));this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,sc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,wc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,uc);this.a-=this.c? 9:3+(7==this.b?2:0)}],hd=[function(a){T(this,a,0,yc);this.a-=this.c?11:6},function(a){T(this,a,M(this)?1:0,ic);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,M(this)?1:0,Ec);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){a=ec(this,a);P(this,a<<8);this.a-=this.c?4:3+(7==this.b?2:0)}],id=[function(a){T(this,a,0,Cc);this.a-=this.c?9+(this.vb&1):3+(7==this.b?2:0)},function(a){T(this,a,0,Ac);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,mc);this.a-=this.c?9+(this.vb&1):3+(7==this.b? 2:0)},function(a){T(this,a,0,kc);this.a-=this.c?9:3+(7==this.b?2:0)}],jd=[Y,function(a){a=ac(this,a,65536);Wb(this,a);O(this,a);this.a-=11},function(a){var b=Yb(this),c=this.a;bc(this,a,65536,b);O(this,b);this.a=c-Pc[this.c]},Y]; function kd(a){v.call(this,"ROM",a,kd);this.b=null;this.m=a.addr;this.c=a.size;this.o=a.writable;this.g=a.alias;this.h=a.file;this.A=ba(this.h);if(this.h){a=this.h;var b=ca(this.A);"json"!=b&&"hex"!=b&&(a=ea()+"/api/v1/dump?file="+this.h+"&format=bytes&decimal=true");var c=this;p(a,null,!0,function(a,b,f){ld(c,a,b,f)})}}y(kd);kd.prototype.va=function(a,b,c,d){this.B=b;this.a=c;this.K=d;md(this)};kd.prototype.la=function(){this.j&&(this.K&&this.K.a(this.id,this.m,this.c,this.j),delete this.j);return!0}; kd.prototype.ka=function(){return!0}; function ld(a,b,c,d){if(d)a.O("Unable to load system ROM (error "+d+": "+b+")");else{Fa(a.wb,b,c);var e;if("["==c.charAt(0)||"{"==c.charAt(0))try{var f,g,h=eval("("+c+")");if(f=h.bytes)a.b=f;else if(f=h.words)for(a.b=Array(2*f.length),g=e=0;e>8&255;else if(f=h.data)for(a.b=Array(4*f.length),g=e=0;e>8&255,a.b[g++]=f[e]>>16&255,a.b[g++]=f[e]>>24&255;else a.b=h;a.j=h.symbols;if(!a.b.length){r("Empty ROM: "+b); return}if(1==a.b.length){r(a.b[0]);return}}catch(l){a.O("ROM data error: "+l.message);return}else for(b=c.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.b=Array(b.length),e=0;e>>d.c].Zb(e&d.h,a.b[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.g?b.push(a.g):null!=a.g&&a.g.length&&(b=a.g);for(c=0;c>>e.c;0>>=e.c;0=b)a.preventDefault&&a.preventDefault(),64");if(2==b.length){var c=ha(b[0]);if(c!=this.fb)return;b=ha(b[1]);if(this.o=Ga(b)){var d=this.o.exports;if(d){var e=d.connect;e&&e.call(this.o);if(this.v=d.receiveData){this.status(this.wb+"."+c+" connected to "+b);return}}}}this.status("Unable to establish connection: "+a)}}};k.la=function(a,b){if(!b)if(this.Pb(),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0}; k.ka=function(a){return a?this.save():!0};k.reset=function(){rd(this)};k.save=function(){var a=new L(this);a.set(0,[]);return a.data()};k.restore=function(){return rd(this)};function rd(a){a.I=0;a.b=0;a.c=128;a.h=[];return!0}k.Db=function(a){if("number"==typeof a)this.h.push(a);else if("string"==typeof a)for(var b=0;b":String.fromCharCode(a);var c=b.length;32>a&&1==c&&(c=0);9==a&&(a=this.M||8,c=a-this.m%a,this.M&&(b=" ".slice(0,c)));this.G&&!this.m&&c&&(b=String.fromCharCode(this.G)+b);this.g.value+=b;this.g.scrollTop=this.g.scrollHeight;this.m+=c}else if(null!=this.j){if(10==a||1024<=this.j.length)this.U(this.j), this.j="";10!=a&&(this.j+=String.fromCharCode(a))}this.c&=-129;I(this.a,100,4,52,this.H)}};var sd={},qd=(sd[65392]=[null,null,Z.prototype.nc,Z.prototype.Gc,"RCSR"],sd[65394]=[null,null,Z.prototype.mc,Z.prototype.Fc,"RBUF"],sd[65396]=[null,null,Z.prototype.qc,Z.prototype.Jc,"XCSR"],sd[65398]=[null,null,Z.prototype.pc,Z.prototype.Ic,"XBUF"],sd);u(function(){for(var a=D(document,"pdp11","serial"),b=0;b\nLicense: GPL version 3 or later ");this.U("Portions adapted from the PDP-11/70 Emulator v1.3 by Paul Nankervis ");for(b=0;bvd){if(xd(d,this.A)){this.j=new L(this,"1.30.0","failsafe");xd(this.j)&&(Cd(this,d),a=2,Dd(this.j));this.j.set("timestamp",ka());Ed(this.j);var e=this.b&&!this.m;if(1==a||la("Click OK to restore the previous PDPjs machine state, or CANCEL to reset the machine.")){if(c=Bd(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?xd(d,g):("error"== f&&"no machine state"!=g?(this.O("Error: "+g),"unable to verify user"==g&&(pa("user",""),this.c=null)):this.U(f+": "+g),Dd(d),xd(d)?(c=Bd(d),e=!0):c=!1))}e&&Ad(this,c?d:null)}else 2==a&&d.clear()}else Ad(this);delete this.A;delete this.v}e=z(this.id);for(f=0;fa[1];a=a[2];this.Z=!0;this.i.P=!0;var d=this.w.power;d&&(d.textContent="Shutdown");this.a&&(Fd(this,this.a,b,c,a),this.a.Va());this.I&&(Cd(this,b),b.clear());!c&&this.j&&(this.j.clear(),delete this.j);this.g=0}; function Cd(a,b){if(la("There may be a problem with your PDPjs machine.\n\nTo help us diagnose it, click OK to send this PDPjs machine state to http://www.pcjs.org.")){var c=a.c||"";b=b.toString();var d={app:"PDPjs",ver:"1.30.0"};d.url=a.url;d.user=c;d.type="bug";d.data=b;p("http://www.pcjs.org/api/v1/report",d,!0)}} function Gd(a,b,c){var d,e="none";if(a.g)return null;a.g--;var f=new L(a,"1.30.0"),g=new L(a,"1.30.0","validate"),h=ka();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.30.0");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.a&&a.a.ka&&(c&&Lb(a.a),d=a.a.ka(b,c),"object"===typeof d&&f.set(a.a.id,d),c&&(a.a.i.P=!1,!1===d&&(e=null)));for(var h=z(a.id),l=0;lf.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/().*?(<\/xsl:variable>)/,"$1PDPjs$2"), a=a.replace(/().*?(<\/xsl:variable>)/,"$1pdp11$2"));f=null;if("<"==a.charAt(0))try{e||(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(q){f=null,a=q.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");p(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=h[0],m,q=/( [a-z]+=)(['"])(.*?)\2/g;m=q.exec(f);)l=0>l.indexOf(m[1])?l.replace(">",m[0]+">"):l.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=l&&(g=g.replace(h[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/, "");a=a.replace(d[0],g);Nd(a,b,c)}})}else c(a,null)} function Od(a,b,c,d){function e(a){if(void 0===h){var b=g&&D(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ga(a))}function f(a){e("Error: "+a);l&&(--Kd||wa(!0));l=!1}var g,h,l=!0;Kd++;Ea[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var q=document.head||document.getElementsByTagName("head")[0],w=document.createElement("style");w.type="text/css";w.styleSheet?w.styleSheet.cssText=m:w.appendChild(document.createTextNode(m));q.appendChild(w)}c|| (c="/versions/pdp11/1.30.0/components.xsl");m=function(d,h){h?Ld(c,null,null,!1,e,function(d,l){l?(Fa(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(l=h.transformNode(l))?(g.outerHTML=l,--Kd||wa(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(l),(l=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(l,g),--Kd||wa(!0)):f("invalid machine element: "+ a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?Ld(b,a,d,!0,e,m):Md(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(E){f(E.message)}return l}window.embedPDP11=function(a,b,c,d){wa(!1);return Od(a,b,c,d)};window.enableEvents=wa;window.sendEvent=xa;})();