Promoted version to 1.34.1

This commit is contained in:
Jeff Parsons 2017-02-28 16:36:15 -08:00 • committed by Jeff Parsons
commit 32ff93ef3e
46 changed files with 14372 additions and 0 deletions

View file

@ -0,0 +1,393 @@
(function(){/*
http://pcjs.org/modules/shared/lib/diskapi.js (C) Jeff Parsons 2012-2017
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/pdp11/lib/messages.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/device.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/cpu.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/rom.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/ram.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/keyboard.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/pc11.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/rk11.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/rl11.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/rx11.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/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/component.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/usrlib.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/defines.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/panel.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/bus.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/memory.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/cpustate.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/cpuops.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/serial.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/disk.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/drive.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/debugger.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pdp11/lib/debugger.js (C) Jeff Parsons 2012-2017
*/
var h,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 b<a.length?{done:!1,value:a[b++]}:{done:!0}})}function ha(a){fa();a={next:a};a[ba.Symbol.iterator]=function(){return this};return a}function ia(a){fa();ca();fa();var b=a[Symbol.iterator];return b?b.call(a):ga(a)}
function p(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a;for(var d in b)if(Object.defineProperties){var e=Object.getOwnPropertyDescriptor(b,d);e&&Object.defineProperty(a,d,e)}else a[d]=b[d]}function ja(a,b){if(b){var c=ba;a=a.split(".");for(var d=0;d<a.length-1;d++){var e=a[d];e in c||(c[e]={});c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&null!=b&&aa(c,a,{configurable:!0,writable:!0,value:b})}}
ja("Math.trunc",function(a){return a?a:function(a){a=Number(a);if(isNaN(a)||Infinity===a||-Infinity===a||!a)return a;var b=Math.floor(Math.abs(a));return 0>a?-b:b}});ja("Math.log2",function(a){return a?a:function(a){return Math.log(a)/Math.LN2}});ja("Array.prototype.fill",function(a){return a?a:function(a,c,d){var b=this.length||0;0>c&&(c=Math.max(0,b+c));if(null==d||d>b)d=b;d=Number(d);0>d&&(d=Math.max(0,b+d));for(c=Number(c||0);c<d;c++)this[c]=a;return this}});
var ka={163840:[40,1,8,,254],184320:[40,1,9,,252],327680:[40,2,8,,255],368640:[40,2,9,,253],737280:[80,2,9,,249],1228800:[80,2,15,,249],1474560:[80,2,18,,240],2949120:[80,2,36,,240],21368320:[615,4,17],256256:[77,1,26,128],2494464:[203,2,12,512],5242880:[256,2,40,256],10485760:[512,2,40,256]},la={Ai:0,Fe:1,Hi:2,Ii:3,Ji:4,Ki:5,Li:6,Mi:7,Nd:8,Ni:9,Ge:10,Oi:11,Pi:12,He:13,Qi:14,Ri:15,Si:16,Ti:17,Ui:18,Vi:19,Wi:20,Xi:21,Yi:22,Zi:23,$i:24,aj:25,bj: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,Jd:65,wi:66,Ci:67,cj:68,E:69,ij:70,lj:71,xj:72,zj:73,Aj:74,Bj:75,Cj:76,Fj:77,Hj:78,Nj:79,Qj:80,Q:81,Sj:82,Vj:83,dk:84,fk:85,hk:86,ik:87,mk:88,nk:89,xf:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,pk:97,rk:98,uk:99,d:100,e:101,vk:102,wk:103,xk:104,yk:105,Ck:106,k:107,Dk:108,Ek:109,n:110,Fk:111,p:112,q:113,r:114,Gk:115,t:116,Jk:117,Kk:118,Lk:119,x:120,
y:121,z:122,"{":123,"|":124,"}":125,"~":126,cc:127};function u(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.Vd=b.comment;this.vf=b;this.exports={};this.H=this.bindings={};a=this.id.indexOf(".");0>a?this.Mb=this.id:(this.vb=this.id.substr(0,a),this.Mb=this.id.substr(a+1));this.A={ready:!1,eb:!1,wd:!1,ba:!1,error:!1};this.Nc=null;this.A.error=!1;this.ha=c||0;this.D=this.f=this.F=this.J=this.Ta=null;ma.push(this)}function na(a,b,c){pa[a]&&b&&(pa[a][b]=c)}
function qa(){return Date.now()||+new Date}function v(a){window&&window.alert(a)}function ra(a){var b=!1;window&&(b=window.confirm(a));return b}function ta(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<ma.length;b++){var d=ma[b];a&&d.id.indexOf(a)||c.push(d)}return c}function ua(a){if(void 0!==a){var b;for(b=0;b<ma.length;b++)if(ma[b].id===a)return ma[b]}return null}
function va(a,b){var c;if(void 0!==a){var d;b&&(b=0<(d=b.indexOf("."))?b.substr(0,d+1):"");for(d=0;d<ma.length;d++)if(c)c==ma[d]&&(c=null);else if(!(a!=ma[d].type||b&&ma[d].id.indexOf(b)))return ma[d]}return null}function wa(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){v(c.message+" ("+a+")")}return b}
function xa(a,b){var c=w;b=x(b.parentNode,c+"-control");for(var d=0;d<b.length;d++)for(var e=b[d].childNodes,f=0;f<e.length;f++){var g=e[f];if(1===g.nodeType){var k=g.getAttribute("class");if(k)for(var l=k.split(" "),m=0;m<l.length;m++)switch(k=l[m],k){case c+"-binding":(k=wa(g))&&k.binding&&a.va(k.type,k.binding,g,k.value),m=l.length}}}}
function x(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var e=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)e.test(a[b].className)&&c.push(a[b]);return c}
function ya(a){for(var b=!0,c=za[a];c&&c.length;){var d=c.splice(0,1)[0],e=d[0],f=null;0<=Aa.indexOf(e)&&(f=function(){return function(){ya(a)}}());var g=Ba[e];if(g)if(!f)b=g(d[1],d[2],d[3]);else{if(!g(f,d[1],d[2],d[3]))break}else{var b=!1,k=va(d[1],a);if(k)if(g=Da[e])b=g(k,d[2],d[3]);else{var l=k.exports;if(l&&(g=l[e]))if(b=!0,!f)b=g.call(k,d[2],d[3]);else if(!g.call(k,f,d[2],d[3]))break}}if(!b){v("Script error: "+e+(g?" failed":" unrecognized"));break}}c&&!c.length&&delete za[a];return b}h=u.prototype;
h.toString=function(){return this.name?this.name:this.id||this.type};
h.va=function(a,b,c){switch(b){case "clear":return this.H[b]||(this.H[b]=c,c.onclick=function(a){return function(){a.H.print&&(a.H.print.value="")}}(this)),!0;case "print":return this.H[b]||(this.Ta=this.H[b]=c,c.value="",this.v=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(c),this.T=function(a){this.v(a,this.Mb)}),!0;default:return!1}};h.log=function(){};h.v=function(){};
h.status=function(a){this.v(this.Mb+": "+a)};h.T=function(a,b,c){c=c||this.type;b||v((c?c+": ":"")+a)};function Ea(a,b){a.A.error=!0;a.T(b)}function Fa(a){return a.A.error?(a.v(a.toString()+" error"),!0):!1}function Ga(a,b){b&&(a.A.ready?b():a.Nc=b);return a.A.ready}function y(a,b){a.A.error||(a.A.ready=!1!==b,a.A.ready&&(b=a.Nc,a.Nc=null,b&&b()))}function Ha(a,b){a.A.eb&&(b?a.A.wd=!0:void 0===b&&a.v(a.toString()+" busy"));return a.A.eb}
function Ja(a,b){if(a.A.wd)return a.A.eb=!1,a.A.wd=!1;if(a.A.error)return a.v(a.toString()+" error"),!1;a.A.eb=b;return a.A.eb}h.Ca=function(){return this.A.ba=!0};h.Ba=function(a,b){b&&(this.A.ba=!1);return!0};function z(a,b){if(a.D){a===a.D?b|=0:b=b||a.ha;var c=a.D.ha&b;return!!b&&c===b||!!(c&a.D.ke)}return!1}function C(a,b,c,d){a.D&&(!0===c||z(a,c|0))&&a.D.message(b,d)}
window&&(window.PCjs||(window.PCjs={}),window.PCjs.Machines||(window.PCjs.Machines={}),window.PCjs.Components||(window.PCjs.Components=[]),window.PCjs.Commands||(window.PCjs.Commands={}));
var pa=window?window.PCjs.Machines:{},ma=window?window.PCjs.Components:[],za=window?window.PCjs.Commands:{},Aa=["hold","sleep","wait"],Ba={alert:function(a){v(a);return!0},sleep:function(a,b){setTimeout(a,+b);return!1}},Da={select:function(a,b,c){var d=!1;if(a=a.bindings[b])for(b=0;b<a.options.length;b++)if(a.options[b].textContent==c){a.selectedIndex!=b&&(a.selectedIndex=b);d=!0;break}return d}};
Array.prototype.indexOf||(Array.prototype.indexOf=function(a,b){b=b||0;for(var c=this.length;b<c;b++)if(this[b]===a)return b;return-1});Array.isArray||(Array.isArray=function(a){return"[object Array]"===Object.prototype.toString.call(a)});
Function.prototype.bind||(Function.prototype.bind=function(a){function b(){return e.apply(this instanceof c&&a?this:a,d.concat(Array.prototype.slice.call(arguments)))}function c(){}if("function"!=typeof this)throw new TypeError("Function.prototype.bind: non-callable object");var d=Array.prototype.slice.call(arguments,1),e=this;c.prototype=this.prototype;b.prototype=new c;return b});
function Ka(a,b){var c;if(a){b||(b=10);var d=a.charAt(0),e=0<a.indexOf(",");e&&(a=a.replace(/,/g,""));"#"==d?(b=8,d=null):"$"==d&&(b=16,d=null);null==d?a=a.substr(1):("0"==d&&(d=a.charAt(1),"b"==d&&e&&(b=2,d=null),"o"==d?(b=8,d=null):"x"==d&&(b=16,d=null)),null==d?a=a.substr(2):(d=a.charAt(a.length-1).toLowerCase(),"y"==d?(b=2,d=null):"."==d?(b=10,d=null):"h"==d&&(b=16,d=null),null==d&&(a=a.substr(0,a.length-1))));var f,d=a;((e=b)&&10!=e?16==e?d.match(/^[0-9a-f]+$/i):8==e?d.match(/^[0-7]+$/):2==e&&
d.match(/^[01]+$/):d.match(/^[0-9]+$/))&&!isNaN(f=parseInt(a,b))&&(c=f)}return c}function La(a,b,c,d){var e="";if(null==a||isNaN(a))for(;0<c--;)e="?"+e;else for(0>a&&-1<a&&(a=-1);0<c--;){var f=a%b,f=f+(0<=f&&9>=f?48:55),e=String.fromCharCode(f)+e;a=Math.trunc(a/b)}return(void 0===d?"":d)+e}function Ma(a,b,c){var d="";b?32<b&&(b=32):b=32;for(var e=null==a||isNaN(a),f=c=c||b;0<b--;)f||(d=","+d,f=c),d=(e?"?":a&1?"1":"0")+d,a>>=1,f--;return d}
function E(a,b,c){b?12<b&&(b=12):b=a&-16777216?11:a&-65536?8:6;return La(a,8,b,c?"0o":"")}function Na(a,b){b?11<b&&(b=11):b=a&-65536?10:5;return La(a,10,b)}function F(a,b,c){b?9<b&&(b=9):b=a&-65536?8:4;return La(a,16,b,c?"0x":"")}function Oa(a){return F(a,4,!0)}function Pa(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));d=c.indexOf("&");0<d&&(c=c.substr(0,d));b&&(d=c.lastIndexOf("."),0<d&&(c=c.substring(0,d)));return c}
function Qa(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}function Ra(a,b){return-1!==a.indexOf(b,a.length-b.length)}function Sa(a){return a.replace(/[&<>"']/g,function(a){return Xa[a]})}function Ya(a,b){return(a+" ").slice(0,b)}function Za(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}
var Xa={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"},$a={0:"NUL",1:"SOH",2:"STX",3:"ETX",4:"EOT",5:"ENQ",6:"ACK",7:"BEL",8:"BS",9:"TAB",10:"LF",11:"VT",12:"FF",13:"CR",14:"SO",15:"SI",16:"DLE",17:"XON",18:"DC2",19:"XOFF",20:"DC4",21:"NAK",22:"SYN",23:"ETB",24:"CAN",25:"EM",26:"SUB",27:"ESC",28:"FS",29:"GS",30:"RS",31:"US"};function ab(a,b,c){var d=0,e=a.length,f=0;for(c||(c=function(a,b){return a>b?1:a<b?-1:0});d<e;){var g=d+e>>1,k;k=c(b,a[g]);0<k?d=g+1:(e=g,f=!k)}return f?d:~d}
function bb(){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 cb(a,b,c,d){c=void 0===c?!1:c;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 k=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(k.onreadystatechange=function(){4===k.readyState&&(f=k.responseText,200==k.status||!k.status&&f.length&&"file:"==(window?window.location.protocol:"file:")||(e=k.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,"+");k.open("POST",a,c);k.setRequestHeader("Content-type","application/x-www-form-urlencoded");k.send(l)}else k.open("GET",a,c),"bytes"==b&&k.overrideMimeType("text/plain; charset=x-user-defined"),k.send();c||(f=k.responseText,200!=k.status&&(e=k.status||-1),d&&d(a,f,e),g=[f,e]);return g}
function db(a,b){var c,d={Z:null,ga:null,ya:null,xa:null};if("["==b.charAt(0)||"{"==b.charAt(0))try{var e,f,g;if("<"==b.substr(0,1))throw Error(b);g=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.ya=g.load;d.xa=g.exec;if(e=g.bytes)d.Z=e;else if(e=g.words)for(d.Z=Array(2*e.length),f=c=0;c<e.length;c++)d.Z[f++]=e[c]&255,d.Z[f++]=e[c]>>8&255;else if(e=g.longs)for(d.Z=Array(4*e.length),f=c=0;c<e.length;c++)d.Z[f++]=
e[c]&255,d.Z[f++]=e[c]>>8&255,d.Z[f++]=e[c]>>16&255,d.Z[f++]=e[c]>>24&255;else(e=g.data)?d.qk=e:d.Z=g;d.Z&&(d.Z.length?1==d.Z.length&&(v(d.Z[0]),d=null):(v("Empty resource: "+a),d=null));d.ga=g.symbols}catch(k){v("Resource data error ("+a+"): "+k.message),d=null}else{e=[];b=b.replace(/\n/gm," ").replace(/ +$/,"").split(" ");for(c=0;c<b.length;c++){f=parseInt(b[c],16);if(isNaN(f)){v("Resource data error ("+a+"): invalid hex byte ("+b[c]+")");break}e.push(f&255)}c==b.length&&(d.Z=e)}return d}
function eb(){return"http://"+(window?window.location.host:"www.pcjs.org")}function fb(){if(null==gb){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}gb=a}return gb}function hb(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b}
function ib(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function mb(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)}return!1}
function nb(a){if(!ob){var b,c={};if(window){b||(b=window.location.search.substr(1));for(var d,e=/\+/g,f=/([^&=]+)=?([^&]*)/g;d=f.exec(b);)c[decodeURIComponent(d[1].replace(e," "))]=decodeURIComponent(d[2].replace(e," "))}ob=c}return ob[a]}function pb(a,b,c){function d(){--a;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}
function qb(a,b){function c(){b(100===d)&&(e=setTimeout(c,d),d=100)}var d=0,e=null,f=!1;a.onmousedown=function(){f||e||(d=500,c())};a.ontouchstart=function(){e||(d=500,c())};a.onmouseup=a.onmouseout=function(){e&&(clearTimeout(e),e=null)};a.ontouchend=a.ontouchcancel=function(){e&&(clearTimeout(e),e=null);f=!0}}function rb(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function sb(a){tb.init.push(a)}
function ub(a){if(wb)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){v(""+("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks."))}}function Cb(a){!wb&&a?(wb=!0,Db&&Eb("init"),Fb&&Eb("show")):wb=a}function Eb(a){tb[a]&&ub(tb[a])}var ob=null,tb={init:[],show:[],exit:[]},Db=!1,Fb=!1,wb=!0,gb=null;rb("onload",function(){Db=!0;ub(tb.init)});rb("onpageshow",function(){Fb=!0;ub(tb.show)});rb(mb("Opera")||mb("iOS")?"onunload":"onbeforeunload",function(){ub(tb.exit)});
var Gb="undefined"!==typeof ArrayBuffer,w="pdp11",Hb="PDPjs",Ib=!1,Jb=Gb,Kb=!0,Lb=!0,Mb="UNKNOWN PANIC ABORT ILLEGAL RED YELLOW FAULT TRACE HALT OPCODE INTERRUPT".split(" "),Nb={qd:5,ud:144,Zc:8,Hc:{pf:15,Wj:16,lk:32,$d:64,Ea:128,de:256,$j:512,gj:1024,Gc:2048,fj:4096,kd:57344,ma:{kd:13}},bf:{ge:1,Gi:2,qf:3,Kb:28,Fc:32,Ec:64,Ud:128,ek:256,Ie:512,ec:1024,Rj:2048,ce:4096,jk:8192,Pj:16384,Je:32768,ed:32736},$e:{dc:1,wa:14,Jb:48,Ib:64,Za:128,ck:256,hj:512,jj:1024,Qe:2048,sd:8192,ed:16384,hb:32768,Kb:4608,
fc:61438,Sa:3967,ma:{wa:1,Jb:4}},af:{rd:15,hd:16,bc:8160,sb:57344,ma:{hd:4,bc:5,sb:13}},wa:{Ee:0,hc:2,tb:4,vd:6,Kc:8,Ue:10,Ke:12,kk:14}},Ob={qd:5,ud:112,Zc:4,Te:"DY",gf:{Ea:1,wa:14,Ya:48,Ib:64,Za:128,sb:768,Qd:15360,ej:16384,hb:32768,Di:16254,Zj:128,fc:65535,Sa:1022,ma:{wa:1,Ya:4,sb:8}},ef:{Sa:65534},hf:{rf:1,sf:4,tf:16,Xj:65408,ae:63,Jc:64,gc:65408,Me:3,qj:8,ma:{Jc:6,gc:7}},Ic:{Pe:{Dj:0,bk:1,Bi:2,Ej:3,Kc:4,Re:5,gk:6,ak:7},Rd:8,Oe:16,nj:32,pj:64,Ne:128,oj:256,tj:512,vj:1024,sj:2048,rj:4096,wj:8192,
mj:16384,uj:32768},ff:{ab:63},Qd:{Oj:1024,dj:2048,ge:2048,yj:3072,Ie:4096,$a:5120,ec:8192,Gj:9216},wa:{Ij:0,vd:2,uf:4,Kc:6,Ye:8,wf:10,Ve:12,Tj:14}},Pb={qd:5,ud:180,Zc:2,Te:"DX",kf:{dc:1,wa:14,td:16,DONE:32,Ib:64,cb:128,INIT:16384,hb:32768,Kb:16128,fc:32992,Sa:16479},Uj:{},nf:{ab:127},mf:{ab:31},lf:{Md:1,Xd:2,kd:4,cc:64,Ea:128},wa:{bd:0,EMPTY:2,hc:4,tb:6,Kb:8,Xe:10,Lc:12,We:14},ERROR:{fd:8,gd:16,xi:24,Se:32,kj:40,Yj:48,pd:56,Mj:72,Lj:80,Kj:88,Fi:96,zi:104,Jj:112,od:120,Ei:128,yi:136}},Qb={48:"DL11R",
52:"DL11X",56:"PC11R",60:"PC11X",64:"KW11",112:"RL11",144:"RK11",180:"RX11"};Pb.jf=["DX",77,1,26,128,1,0,0,128,0];Nb.Gc=["RK",203,2,12,512,0,0,0,512,Nb.Hc.Gc|Nb.Hc.de|Nb.Hc.$d];Ob.cf=["RL",512,2,40,256,0,0,0,256,Ob.Ic.Pe.Re|Ob.Ic.Rd|Ob.Ic.Oe];
var w="pdp11",Hb="PDPjs",Ib=!1,Jb=Gb,Lb=Kb=!0,Rb={cpu:1,trap:2,fault:4,"int":8,bus:16,memory:32,mmu:64,rom:128,device:256,panel:512,keyboard:1024,key:2048,pc11:4096,paper:4096,disk:8192,read:16384,write:32768,rk11:65536,rl11:131072,rx11:262144,dl11:1048576,serial:1048576,kw11:2097152,timer:2097152,speaker:16777216,computer:33554432,log:268435456,warn:536870912,buffer:1073741824,halt:-2147483648};
function Sb(a,b){u.call(this,"Panel",a,512);this.j=this.u=0;this.M=b;this.fa=this.g=this.Wa=this.Eb=0;this.B=this.C=-1;this.G=this.I=this.w=!1;this.L=Tb;this.i={};this.b={START:[1,1,!0,!1,this.Tf],STEP:[1,1,!1,!1,this.Uf],ENABLE:[1,1,!1,!1,this.Of],CONT:[1,1,!0,!1,this.Mf],DEP:[0,0,!0,!1,this.Nf],EXAM:[1,1,!0,!1,this.Pf],LOAD:[1,1,!0,!1,this.Rf],TEST:[0,0,!0,!1,this.Qf]};for(a=0;22>a;a++)this.b["S"+a]=[0,0,!1,!1,this.Sf,a];this.D=this.f=this.F=this.J=null;this.exports={hold:this.Hf,toggle:this.lh,
reset:this.gh,set:this.kh};y(this)}p(Sb,u);function Ub(a,b){return Vb(a,a.Eb=b)}h=Sb.prototype;h.reset=function(a){this.stop();a&&Ub(this,0)};
h.va=function(a,b,c,d){if(this.J&&this.J.va(a,b,c,d)||this.f&&this.f.va(a,b,c,d)||this.D&&this.D.va(a,b,c,d))return!0;switch(b){case "R0":case "R1":case "R2":case "R3":case "R4":case "R5":case "R6":case "R7":case "NF":case "ZF":case "VF":case "CF":case "PS":return this.H[b]=c,this.u++,!0;default:return"led"==a||"rled"==a?(this.H[b]=c,this.i[b]=d?1:0,this.u++,!0):"switch"==a?(void 0===this.b[b]&&(this.b[b]=[d?1:0,d?1:0]),this.H[b]=c,a=c.parentElement||c,a=a.parentElement||a,a.onmousedown=function(a,
b){return function(){Wb(a,b)}}(this,b),a.onmouseup=a.onmouseout=function(a,b){return function(){Xb(a,b)}}(this,b),a.ontouchstart=function(a,b){return function(c){Wb(a,b);c.preventDefault()}}(this,b),a.ontouchend=function(a,b){return function(){Xb(a,b)}}(this,b),!0):u.prototype.va.call(this,a,b,c,d)}};h.za=function(a,b,c,d){this.J=a;this.F=b;this.f=c;this.D=d;dc(b,this,ec);fc(b,this.reset.bind(this));gc(this);hc(this)};
h.Ca=function(a,b){if(!b)if(this.M&&ic(),!a)this.reset(!0);else if(!this.restore(a))return!1;return!0};h.Ba=function(a){return a?this.save():!0};h.save=function(){var a=new G(this);a.set(0,[this.fa,this.Eb,this.Wa]);return a.data()};h.restore=function(a){if(a=a[0])jc(this,this.fa=a[0]),Ub(this,a[1]),kc(this,a[2]);return!0};h.gh=function(){for(var a in this.b){var b=this.b[a];b[1]=b[0]}hc(this);return!0};function lc(a,b,c){if(a=a.H[b])a.style.backgroundColor=c?"#ff0000":"#000000"}
function gc(a,b){for(var c in a.i)lc(a,c,null!=b?b:a.i[c])}function mc(a,b,c){if(a=a.H[b])a.style.marginTop=c?"0px":"20px",a.style.backgroundColor=c?"#00ff00":"#228B22"}function hc(a){for(var b in a.b)mc(a,b,a.b[b][1])}function nc(a,b,c,d){if(a.H[b]){var e=a.D&&a.D.Aa||8;c=c||0;c=8==e?E(c,d):F(c,d);a.H[b].textContent!=c&&(a.H[b].textContent=c)}}h.Hf=function(a,b,c){if(Wb(this,b)){if(c){var d=this;setTimeout(function(){Xb(d,b);a&&a()},+c);return!1}Xb(this,b)}return!0};
h.kh=function(a,b){if("SR"==a)return kc(this,Ka(b,8));var c=this.b[a];return c?(c[1]=+b?1:0,mc(this,a,c[1]),!0):!1};h.lh=function(a){return Wb(this,a)?(Xb(this,a),!0):!1};function Wb(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!=oc&&(a.G=b==pc,a.I=b==qc),!0):!1}function Xb(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)}
h.Tf=function(a){a||this.f.A.V||(rc(this.f,this.fa),a=this.f,a.F.reset(),sc(a),this.b[tc]&&this.b[tc][1]&&uc(this.f))};h.Uf=function(){};h.Of=function(a){a||this.f.ca()};h.Mf=function(a){if(!a&&!this.f.A.V)if(this.b[tc]&&this.b[tc][1])uc(this.f);else{if((a=this.D)&&!Ha(a,!0))Ja(a,!0),vc(a,0,null),Ja(a,!1);else try{var b=this.f.Cc(1);0<b&&(wc(this.f,b),xc(this.f,b,!0),yc(this.f,b))}catch(c){"number"!=typeof c&&Ea(this.f,c.stack||c.message)}this.stop();this.J&&H(this.J)}};
h.Nf=function(a){if(a&&!this.f.A.V)if(this.G&&zc(this),a=Ub(this,this.Wa),this.L==Tb)Ac(this.F,this.fa,a);else{var b=this.f,c=this.fa;b.pa++;b.F.ac(Bc(b,c,4),a);b.pa--}};h.Pf=function(a){a||this.f.A.V||(this.I&&zc(this),a=this.L==Tb?Cc(this.F,this.fa):Dc(this.f,this.fa),Ub(this,a))};h.Rf=function(a){a||this.f.A.V||jc(this,this.Wa)};h.Qf=function(a){a?(this.w=!0,gc(this,!0)):(this.w=!1,gc(this),kc(this,0))};h.Sf=function(a,b){this.Wa=a?this.Wa|1<<b:this.Wa&~(1<<b)};
function zc(a){var b=1140>=a.f.ka?8:16,c=65472<=a.fa&&a.fa<65472+b,b=c?1:2,c=c?15:a.F.I;a.b[oc]&&a.b[oc][1]||(b=-b);jc(a,a.fa&~c|a.fa+b&c)}function jc(a,b){a.fa=b&a.F.I;if(a.B!==a.fa){a.B=a.fa;b=a.B;for(var c=0;22>c;c++)Ec(a,"A"+c,b&1<<c)}}function Vb(a,b){a.g=b&65535;if(a.C!==a.g){a.C=a.g;b=a.C;for(var c=0;16>c;c++)Ec(a,"D"+c,b&1<<c)}return a.g}function Ec(a,b,c){a.i[b]=c;a.w||lc(a,b,c)}function kc(a,b){a.Wa=b|0;for(b=0;22>b;b++)a.b["S"+b][1]=a.Wa&1<<b?1:0;hc(a);return!0}
h.stop=function(){jc(this,this.f.g[7])};h.Gd=function(a){this.fa=a};h.setData=function(a,b){b?this.Eb=a:this.g=a};h.Zf=function(a,b){return(b?this.Eb:this.Wa)&65535};h.rh=function(a){this.Eb=a};function ic(){for(var a=x(document,w,"panel"),b=0;b<a.length;b++){var c=a[b],d=wa(c),e=ua(d.id);e||(e=new Sb(d,!0));xa(e,c)}}var Tb=7,pc="DEP",tc="ENABLE",qc="EXAM",oc="STEP",Fc={},ec=(Fc[65400]=[null,null,Sb.prototype.Zf,Sb.prototype.rh,"CNSW"],Fc);sb(ic);
function Gc(a,b,c){u.call(this,"Bus",a,16);this.f=b;this.D=c;this.U=+a.busWidth||16;this.M=1<<this.U;this.I=this.M-1;this.j=Hc;this.g=Math.log2(this.j);this.R=this.j>>2;this.i=this.j-1;this.G=this.M/this.j|0;this.S=this.G-1;this.Pa=[];this.na=0;this.C=!1;this.N=[];this.yf=[Ic,Jc,Kc,Wc];this.b=this.u=[];this.B=this.L=this.w=this.O=this.P=0;a=new I(this);Xc(a,this.D);this.b=Array(this.G);this.u=Array(this.G);for(b=0;b<this.G;b++)this.b[b]=this.u[b]=a;this.B=this.M-Hc;Yc(this,this.B,Hc,Zc,this);this.P=
this.O=(this.B&this.I)>>>this.g;this.L=0;this.w=this.I;y(this)}p(Gc,u);function $c(a,b){if(b!=a.L){for(var c=0;c<a.G;c++)a.u[c]=a.b[c];a.L=0;a.w=a.I;b&&(a.L=b,b=1<<b,a.w=b-1,b-=Hc,a.P=(b&a.w)>>>a.g,a.u[a.P]=a.b[a.O])}}h=Gc.prototype;h.reset=function(){for(var a=0;a<this.N.length;a++)this.N[a]();$c(this,16)};h.Ca=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};h.Ba=function(a){return a?this.save():!0};h.save=function(){var a=new G(this);a.set(0,ad(this));return a.data()};
h.restore=function(a){a:{a=a[0];var b;for(b=0;b<a.length-1;b+=2){var c=a[b],d=a[b+1];if(d&&d.length<this.R){for(var e=0,f=Array(this.R),g=0;g<d.length-1;)for(var k=d[g++],l=d[g++];k--;)f[e++]=l;d=f}e=this.b[c];if(!e||!e.restore(d)){v("Unable to restore memory block "+c);a=!1;break a}}a=!0}return a};
function Yc(a,b,c,d,e){for(var f=b,g=c,k=f>>>a.g;0<g&&k<a.b.length;){var l=a.b[k],m=k*a.j,n=a.j-(f-m);n>g&&(n=g);if(!e&&l&&l.size){if(l.type==d){if(f+g<=l.K)return l.Xb+=l.K-f,l.K=f,!0;if(f>=l.K+l.Xb){n=l.size-(f-m);n>g&&(n=g);l.Xb=f-l.K+n;f=m+a.j;g-=n;k++;continue}}return bd(cd,f,g)}f=new I(a,f,n,a.j,d,e);Xc(f,a.D,l);a.b[k++]=f;f=m+a.j;g-=n}return 0>=g?(a.status("Added "+(c>>10)+"Kb "+dd[d]+" at "+E(b)),!0):bd(ed,b,c)}h.Kd=function(a){return this.u[(a&this.w)>>>this.g].Db(a&this.i,a)};
h.Bc=function(a){var b=a&this.i,c=(a&this.w)>>>this.g;return Lb||b!=this.i?this.u[c].oa(b,a):this.u[c++].Db(b,a)|this.u[c&this.S].Db(0,a+1)<<8};h.Ld=function(a,b){this.u[(a&this.w)>>>this.g].Gb(a&this.i,b,a)};h.ac=function(a,b){var c=a&this.i,d=(a&this.w)>>>this.g;Lb||c!=this.i?this.u[d].Hb(c,b,a):(this.u[d++].Gb(c,b&255,a),this.u[d&this.S].Gb(0,b>>8&255,a+1))};function fd(a,b){return a.b[(b&a.I)>>>a.g]}
function Cc(a,b){var c;a.C=!1;a.na++;var d=b&a.i,e=fd(a,b);Lb||d!=a.i?c=e.B(d,b):c=e.J(d,b)|fd(a,b+1).J(0,b+1)<<8;a.na--;return c}function gd(a,b,c){a.C=!1;a.na++;fd(a,b).F(b&a.i,c&255,b);a.na--}function Ac(a,b,c){a.C=!1;a.na++;var d=b&a.i,e=fd(a,b);Lb||d!=a.i?e.C(d,c&65535,b):(e.F(d,c&255,b),fd(a,b+1).F(0,c>>8&255,b+1));a.na--}
function ad(a){for(var b=0,c=[],d=0;d<a.G;d++){var e=a.b[d];if(e.fb||e.Ff){c[b++]=d;var f=b++;if(e=e.save()){for(var g=0,k=0,l=[];g<e.length;){for(var m=e[g],n=g+1;n<e.length&&e[n]===m;)n++;l[k++]=n-g;l[k++]=m;g=n}l.length<e.length&&(e=l)}c[f]=e}}return c}function hd(a){for(var b=id,c=0,d=0;d<a.b.length;d++){var e=a.b[d];e.type==b&&(c=e.K+e.Xb)}return c}
function jd(a,b,c,d,e,f,g,k,l){for(var m=b==c?-1:0;b<=c;b+=2){var n=b&kd;if(void 0!==a.Pa[n])return v("I/O address already registered: "+F(b,8,!0)),!1;var q=l||"unknown";q&&0<=m&&(q+=m++);a.Pa[n]=[d,e,f,g,q,k||16,!1]}return!0}
function dc(a,b,c,d){for(var e in c){var f=+e+(d||0),g=c[e];if(!(g[6]&&g[6]>a.f.ka)){var k=g[0]?g[0].bind(b):null,l=g[1]?g[1].bind(b):null,m=g[2]?g[2].bind(b):null,n=g[3]?g[3].bind(b):null;65472<=f&&65487>=f&&(!k&&m&&(k=function(a){return function(b){return a(b)&255}.bind(b)}(m)),!l&&n&&(l=function(a){return function(b,c){return a(b,c)}.bind(b)}(n)));for(var q=g[4],t=g[5]||1,r=0;r<t;r++,f+=2)if(q&&1<t&&(q=g[4]+r),!jd(a,f,f,k,l,m,n,g[7]||b.ha,q||b.Mb))return!1}}return!0}
function fc(a,b){a.N.push(b)}h.Na=function(a,b,c){this.C=!0;this.na||(this.D&&z(this.D,4)&&C(this.D,"memory fault ("+c+") on "+K(this.D,a),!0,!0),b&&(this.f.P|=b),this.f.ra(4,0,a))};function ld(a){var b=a.C;a.C=!1;return b}function bd(a,b,c){v("Memory block error ("+a+": "+F(b)+","+F(c)+")");return!1}var Hc=8192,kd=Hc-1,cd=1,ed=2;
function Ic(a,b){var c=-1,d=this.controller,e=d.Pa[a],f=b&65535;e?e[0]?c=e[0](f):e[2]&&(c=f&1?e[2](f&-2)>>8:e[2](f)&255):f&1&&(e=d.Pa[a&-2])&&(e[2]?c=e[2](f&-2)>>8:e[0]&&(c=e[0](f)));if(0<=c)return this.f&&z(this.f,16|e[5])&&C(this.f,e[4]+".readByte("+K(this.f,b)+"): "+K(this.f,c),!0,!d.na),c;d.Na(b,16,3);c=255;this.f&&z(this.f,16)&&C(this.f,"warning: unconverted read access to byte @"+K(this.f,b)+": "+K(this.f,c),!0,!d.na);return c}
function Jc(a,b,c){var d=!1,e=this.controller,f=e.Pa[a],g=c&65535;if(f)if(f[1])f[1](b,g),d=!0;else{if(f[3]){a=f[2]?f[2](g,!0):0;if(g&1)f[3](a&255|b<<8,g&-2);else f[3](a&-256|b,g);d=!0}}else g&1&&(f=e.Pa[a&-2])&&(f[3]?(g&=-2,a=f[2]?f[2](g,!0):0,f[3](a&255|b<<8,g),d=!0):f[1]&&(f[1](b,g),d=!0));d?this.f&&z(this.f,16|f[5])&&C(this.f,f[4]+".writeByte("+K(this.f,c)+","+K(this.f,b)+")",!0,!e.na):(e.Na(c,16,5),this.f&&z(this.f,16)&&C(this.f,"warning: unconverted write access to byte @"+K(this.f,c)+": "+K(this.f,
b),!0,!e.na))}function Kc(a,b){var c=-1,d=this.controller;a=d.Pa[a];var e=b&65535;a&&(a[2]?c=a[2](e):a[0]&&(c=a[0](e)|a[0](e+1)<<8));if(0<=c)return this.f&&z(this.f,16|a[5])&&C(this.f,a[4]+".readWord("+K(this.f,b)+"): "+K(this.f,c),!0,!d.na),c;d.Na(b,16,2);c=65535;this.f&&z(this.f,16)&&C(this.f,"warning: unconverted read access to word @"+K(this.f,b)+": "+K(this.f,c),!0,!d.na);return c}
function Wc(a,b,c){var d=!1,e=this.controller;a=e.Pa[a];var f=c&65535;a&&(a[3]?(a[3](b,f),d=!0):a[1]&&(a[1](b&255,f),a[1](b>>8,f+1),d=!0));d?this.f&&z(this.f,16|a[5])&&C(this.f,a[4]+".writeWord("+K(this.f,c)+","+K(this.f,b)+")",!0,!e.na):(e.Na(c,16,4),this.f&&z(this.f,16)&&C(this.f,"warning: unconverted write access to word @"+K(this.f,c)+": "+K(this.f,b),!0,!e.na))}function L(a){u.call(this,"Device",a,256);this.b={gb:128,Hd:-1}}p(L,u);h=L.prototype;
h.za=function(a,b,c,d){this.F=b;this.J=a;this.f=c;this.D=d;var e=this;this.b.Hd=md(c,function(){e.b.gb|=128;e.b.gb&64&&nd(e.f,e.b.Qa);e.J&&H(e.J,1);od(e.f,e.b.Hd,1E3/60)});this.b.Qa=pd(c,64,6,2097152);dc(b,this,qd);fc(b,this.reset.bind(this));d&&rd(d,64,function(a){var b=e.f;sd(e,"KIPDR",b.B[0],0,a[0]);sd(e,"KDPDR",b.B[0],8,a[0]);sd(e,"KIPAR",b.M[0],0,a[0]);sd(e,"KDPAR",b.M[0],8,a[0],!0);sd(e,"SIPDR",b.B[1],0,a[0]);sd(e,"SDPDR",b.B[1],8,a[0]);sd(e,"SIPAR",b.M[1],0,a[0]);sd(e,"SDPAR",b.M[1],8,a[0],
!0);sd(e,"UIPDR",b.B[3],0,a[0]);sd(e,"UDPDR",b.B[3],8,a[0]);sd(e,"UIPAR",b.M[3],0,a[0]);sd(e,"UDPAR",b.M[3],8,a[0],!0);b.W&32&&sd(e,"UNIMAP",b.Ha,-1,a[0])});y(this)};function sd(a,b,c,d,e,f){a=a.D;if(!(e&&0>b.indexOf(e.toUpperCase()))){e=0;var g=8,k="",l=!1,m=8;0>d&&(e=22,g=c.length,d=0,l=!0,m=4);for(var n=0;n<g;n++)n%m||(k&&(k+="\n"),k+=b+(l?"["+Na(n,2)+"]":"")+":"),k+=" "+K(a,c[d+n],e);a.v(k+(f?"\n":""))}}h.Ca=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};
h.Ba=function(a){return a?this.save():!0};h.reset=function(){this.b.gb=128;od(this.f,this.b.Hd,1E3/60,!0)};h.save=function(){var a=new G(this);a.set(0,[this.b.gb]);return a.data()};h.restore=function(a){a=ia(a[0]);this.b.gb=a.next().value;return!0};h.fg=function(){return this.b.gb};h.yh=function(a){this.b.gb=a&192;this.b.gb&64||td(this.f,this.b.Qa)};h.hg=function(){return ud(this.f)};h.Ah=function(a){vd(this.f,a&-129|this.f.S&128)};h.ig=function(){return wd(this.f)};h.jg=function(){return xd(this.f)};
h.kg=function(){return this.f.W};h.Bh=function(a){yd(this.f,a)};h.Wg=function(a){a=a>>1&63;var b=this.f.Ha[a>>1];return a&1?b>>16:b&65535};h.mi=function(a,b){b=b>>1&63;var c=b>>1;this.f.Ha[c]=b&1?this.f.Ha[c]&65535|(a&63)<<16:this.f.Ha[c]&-65536|a&65534};h.Pg=function(a){return this.f.B[1][a>>1&7]};h.fi=function(a,b){this.f.B[1][b>>1&7]=a&65295};h.Ng=function(a){return this.f.B[1][(a>>1&7)+8]};h.di=function(a,b){this.f.B[1][(b>>1&7)+8]=a&65295};h.Og=function(a){return this.f.M[1][a>>1&7]};
h.ei=function(a,b){b=b>>1&7;this.f.M[1][b]=a;this.f.B[1][b]&=65295};h.Mg=function(a){return this.f.M[1][(a>>1&7)+8]};h.ci=function(a,b){b=(b>>1&7)+8;this.f.M[1][b]=a;this.f.B[1][b]&=65295};h.eg=function(a){return this.f.B[0][a>>1&7]};h.xh=function(a,b){this.f.B[0][b>>1&7]=a&65295};h.cg=function(a){return this.f.B[0][(a>>1&7)+8]};h.vh=function(a,b){this.f.B[0][(b>>1&7)+8]=a&65295};h.dg=function(a){return this.f.M[0][a>>1&7]};h.wh=function(a,b){b=b>>1&7;this.f.M[0][b]=a;this.f.B[0][b]&=65295};
h.bg=function(a){return this.f.M[0][(a>>1&7)+8]};h.uh=function(a,b){b=(b>>1&7)+8;this.f.M[0][b]=a;this.f.B[0][b]&=65295};h.Vg=function(a){return this.f.B[3][a>>1&7]};h.li=function(a,b){this.f.B[3][b>>1&7]=a&65295};h.Tg=function(a){return this.f.B[3][(a>>1&7)+8]};h.ji=function(a,b){this.f.B[3][(b>>1&7)+8]=a&65295};h.Ug=function(a){return this.f.M[3][a>>1&7]};h.ki=function(a,b){b=b>>1&7;this.f.M[3][b]=a;this.f.B[3][b]&=65295};h.Sg=function(a){return this.f.M[3][(a>>1&7)+8]};
h.ii=function(a,b){b=(b>>1&7)+8;this.f.M[3][b]=a;this.f.B[3][b]&=65295};h.Vb=function(a){a&=7;return this.f.w&2048?this.f.ta[a]:this.f.g[a]};h.Zb=function(a,b){b&=7;this.f.w&2048?this.f.ta[b]=a:this.f.g[b]=a};h.rg=function(){return this.f.w&49152?this.f.X[0]:this.f.g[6]};h.Ih=function(a){this.f.w&49152?this.f.X[0]=a:this.f.g[6]=a};h.ug=function(){return this.f.g[7]};h.Lh=function(a){this.f.g[7]=a};h.Wb=function(a){a&=7;return this.f.w&2048?this.f.g[a]:this.f.ta[a]};
h.$b=function(a,b){b&=7;this.f.w&2048?this.f.g[b]=a:this.f.ta[b]=a};h.sg=function(){return 1==(this.f.w&49152)>>14?this.f.g[6]:this.f.X[1]};h.Jh=function(a){1==(this.f.w&49152)>>14?this.f.g[6]=a:this.f.X[1]=a};h.tg=function(){return 3==(this.f.w&49152)>>14?this.f.g[6]:this.f.X[3]};h.Kh=function(a){3==(this.f.w&49152)>>14?this.f.g[6]=a:this.f.X[3]=a};h.ag=function(a){return this.f.xc[a-65504>>1]};h.th=function(a,b){this.f.xc[b-65504>>1]=a};h.xe=function(a){return 65520==a?(hd(this.F)>>6)-1:0};
h.Ce=function(){};h.Rg=function(){return 1};h.hi=function(){};h.$f=function(){return this.f.P};h.sh=function(){this.f.P=0};h.gg=function(){return this.f.uc};h.zh=function(a,b){b&1||(a&=255);this.f.uc=a};h.lg=function(a,b){return b?0:this.f.ob};h.Ch=function(a){zd(this.f,a)};h.Qg=function(a,b){return b?0:this.f.Ga&65280};h.gi=function(a){this.f.Ga=a|255};h.qg=function(){return Ad(this.f)};h.Hh=function(a){Bd(this.f,a)};h.Be=function(a,b){z(this)&&C(this,"writeIgnored("+E(b)+"): "+E(a),!0,!0)};
var M={},qd=(M[61568]=[null,null,L.prototype.Wg,L.prototype.mi,"UNIMAP",64,1170],M[62592]=[null,null,L.prototype.Pg,L.prototype.fi,"SIPDR",8,1145,64],M[62608]=[null,null,L.prototype.Ng,L.prototype.di,"SDPDR",8,1145,64],M[62624]=[null,null,L.prototype.Og,L.prototype.ei,"SIPAR",8,1145,64],M[62640]=[null,null,L.prototype.Mg,L.prototype.ci,"SDPAR",8,1145,64],M[62656]=[null,null,L.prototype.eg,L.prototype.xh,"KIPDR",8,1140,64],M[62672]=[null,null,L.prototype.cg,L.prototype.vh,"KDPDR",8,1145,64],M[62688]=
[null,null,L.prototype.dg,L.prototype.wh,"KIPAR",8,1140,64],M[62704]=[null,null,L.prototype.bg,L.prototype.uh,"KDPAR",8,1145,64],M[62798]=[null,null,L.prototype.kg,L.prototype.Bh,"MMR3",1,1145,64],M[65382]=[null,null,L.prototype.fg,L.prototype.yh,"LKS"],M[65402]=[null,null,L.prototype.hg,L.prototype.Ah,"MMR0",1,1140,64],M[65404]=[null,null,L.prototype.ig,L.prototype.Be,"MMR1",1,1145,64],M[65406]=[null,null,L.prototype.jg,L.prototype.Be,"MMR2",1,1140,64],M[65408]=[null,null,L.prototype.Vg,L.prototype.li,
"UIPDR",8,1140,64],M[65424]=[null,null,L.prototype.Tg,L.prototype.ji,"UDPDR",8,1145,64],M[65440]=[null,null,L.prototype.Ug,L.prototype.ki,"UIPAR",8,1140,64],M[65456]=[null,null,L.prototype.Sg,L.prototype.ii,"UDPAR",8,1145,64],M[65472]=[null,null,L.prototype.Vb,L.prototype.Zb,"R0SET0"],M[65473]=[null,null,L.prototype.Vb,L.prototype.Zb,"R1SET0"],M[65474]=[null,null,L.prototype.Vb,L.prototype.Zb,"R2SET0"],M[65475]=[null,null,L.prototype.Vb,L.prototype.Zb,"R3SET0"],M[65476]=[null,null,L.prototype.Vb,
L.prototype.Zb,"R4SET0"],M[65477]=[null,null,L.prototype.Vb,L.prototype.Zb,"R5SET0"],M[65478]=[null,null,L.prototype.rg,L.prototype.Ih,"R6KERNEL"],M[65479]=[null,null,L.prototype.ug,L.prototype.Lh,"R7KERNEL"],M[65480]=[null,null,L.prototype.Wb,L.prototype.$b,"R0SET1",1,1145],M[65481]=[null,null,L.prototype.Wb,L.prototype.$b,"R1SET1",1,1145],M[65482]=[null,null,L.prototype.Wb,L.prototype.$b,"R2SET1",1,1145],M[65483]=[null,null,L.prototype.Wb,L.prototype.$b,"R3SET1",1,1145],M[65484]=[null,null,L.prototype.Wb,
L.prototype.$b,"R4SET1",1,1145],M[65485]=[null,null,L.prototype.Wb,L.prototype.$b,"R5SET1",1,1145],M[65486]=[null,null,L.prototype.sg,L.prototype.Jh,"R6SUPER",1,1145],M[65487]=[null,null,L.prototype.tg,L.prototype.Kh,"R6USER",1,1145],M[65504]=[null,null,L.prototype.ag,L.prototype.th,"CTRL",8,1170],M[65520]=[null,null,L.prototype.xe,L.prototype.Ce,"LSIZE",1,1170],M[65522]=[null,null,L.prototype.xe,L.prototype.Ce,"HSIZE",1,1170],M[65524]=[null,null,L.prototype.Rg,L.prototype.hi,"SYSID",1,1170],M[65526]=
[null,null,L.prototype.$f,L.prototype.sh,"ERR",1,1170],M[65528]=[null,null,L.prototype.gg,L.prototype.zh,"MBR",1,1170],M[65530]=[null,null,L.prototype.lg,L.prototype.Ch,"PIR"],M[65532]=[null,null,L.prototype.Qg,L.prototype.gi,"SLR"],M[65534]=[null,null,L.prototype.qg,L.prototype.Hh,"PSW"],M);
sb(function(){for(var a=x(document,w,"device"),b=0;b<a.length;b++){var c,d=a[b];c=wa(d);switch(c.type){case "default":c=new L(c);xa(c,d);break;case "pc11":c=new Dd(c);xa(c,d);break;case "rl11":c=new Ed(c);xa(c,d);break;case "rk11":c=new N(c);xa(c,d);break;case "rx11":c=new Fd(c),xa(c,d)}}});
function I(a,b,c,d,e,f){this.D=a;this.id=Gd+=2;this.b=null;this.K=b;this.Xb=c;this.size=d||0;this.type=e||Hd;this.j=e==Id;this.f=this.controller=null;this.Db=this.J=this.Cd;this.oa=this.B=this.Dd;this.Gb=this.F=this.Yb;this.Hb=this.C=this.Vc;this.H=this.i=0;Xc(this);this.fb=this.Ff=!1;if(this.size)if(f)this.controller=f,a=[null,0],this.b=a[0],Jd(this,f.yf);else if(Gb)this.u=new ArrayBuffer(this.size),this.w=new DataView(this.u,0,this.size),this.g=new Uint8Array(this.u,0,this.size),this.G=new Uint16Array(this.u,
0,this.size>>1),this.b=new Int32Array(this.u,0,this.size>>2),Jd(this,Kd?Td:Ud);else{a=this.b=Array(this.size>>2);for(f=0;f<a.length;f++)a[f]=0;Jd(this,Vd)}else Jd(this)}h=I.prototype;h.save=function(){var a,b;if(this.controller)a=null;else if(Gb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.w.getInt32(b<<2,!0);else a=this.b;return a};
h.restore=function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(Gb)for(b=0;b<a.length;b++)this.w.setInt32(b<<2,a[b],!0);else this.b=a;return this.fb=!0}return!1};function Jd(a,b){b||(b=Wd);Xd(a,b,void 0);Yd(a,b,void 0)}function Xd(a,b,c){c&&a.H||(a.Db=b[0]||a.Cd,a.oa=b[2]||a.Dd);if(c||void 0===c)a.J=b[0]||a.Cd,a.B=b[2]||a.Dd}function Yd(a,b,c){c&&a.i||(a.Gb=!a.j&&b[1]||a.Yb,a.Hb=!a.j&&b[3]||a.Vc);if(c||void 0===c)a.F=b[1]||a.Yb,a.C=b[3]||a.Vc}
h.Bb=function(a,b){b?this.i++||Yd(this,Zd,!1):this.H++||Xd(this,Zd,!1)};function $d(a,b){b?--a.i||(a.Gb=a.j?a.Yb:a.F,a.Hb=a.j?a.Vc:a.C):--a.H||(a.Db=a.J,a.oa=a.B)}function Xc(a,b,c){a.f=b;a.H=a.i=0;c&&((a.H=c.H)&&Xd(a,Zd,!1),(a.i=c.i)&&Yd(a,Zd,!1))}h.Cd=function(a,b){this.f&&z(this.f,32)&&C(this.f,"attempt to read invalid address "+K(this.f,b),!0);this.D.Na(b,32,2);return 255};
h.Yb=function(a,b,c){this.f&&z(this.f,32)&&C(this.f,"attempt to write "+K(this.f,b)+" to invalid addresses "+K(this.f,c),!0);this.D.Na(c,32,4)};h.Dd=function(a,b){return this.Db(a++,b++)|this.Db(a,b)<<8};h.Vc=function(a,b,c){this.Gb(a++,b&255,c++);this.Gb(a,b>>8,c)};h.Yf=function(a){return this.b[a>>2]>>>((a&3)<<3)&255};h.bh=function(a,b){Kb&&a&1&&this.D.Na(b,64,2);b=a>>2;a=(a&3)<<3;var c=this.b[b]>>a;return 24>a?c&65535:c&255|(this.b[b+1]&255)<<8};
h.qh=function(a,b){var c=a>>2;a=(a&3)<<3;this.b[c]=this.b[c]&~(255<<a)|b<<a;this.fb=!0};h.ri=function(a,b,c){Kb&&a&1&&this.D.Na(c,64,4);c=a>>2;a=(a&3)<<3;24>a?this.b[c]=this.b[c]&~(65535<<a)|b<<a:(this.b[c]=this.b[c]&16777215|b<<24,c++,this.b[c]=this.b[c]&-256|b>>8);this.fb=!0};h.Wf=function(a,b){this.f&&null!=this.K&&ae(this.f,this.K+a);return this.J(a,b)};h.Yg=function(a,b){this.f&&null!=this.K&&ae(this.f,this.K+a,2);return this.B(a,b)};
h.oh=function(a,b,c){this.f&&null!=this.K&&be(this.f,this.K+a);this.j?this.Yb(0,b,c):this.F(a,b,c)};h.oi=function(a,b,c){this.f&&null!=this.K&&be(this.f,this.K+a,2);this.j?this.Yb(0,b,c):this.C(a,b,c)};h.Vf=function(a){return this.g[a]};h.Xf=function(a,b){a=this.g[a];this.f&&z(this.f,32)&&C(this.f,"Memory.readByte("+K(this.f,b)+"): "+K(this.f,a),!0);return a};h.Xg=function(a,b){Kb&&a&1&&this.D.Na(b,64,2);return this.w.getUint16(a,!0)};
h.ah=function(a,b){Kb&&a&1&&this.D.Na(b,64,2);a=!Lb&&a&1?this.g[a]|this.g[a+1]<<8:this.G[a>>1];this.f&&z(this.f,32)&&C(this.f,"Memory.readWord("+K(this.f,b)+"): "+K(this.f,a),!0);return a};h.nh=function(a,b){this.g[a]=b;this.fb=!0};h.ph=function(a,b,c){this.g[a]=b;this.fb=!0;this.f&&z(this.f,32)&&C(this.f,"Memory.writeByte("+K(this.f,c)+","+K(this.f,b)+")",!0)};h.ni=function(a,b,c){Kb&&a&1&&this.D.Na(c,64,4);this.w.setUint16(a,b,!0);this.fb=!0};
h.pi=function(a,b,c){Kb&&a&1&&this.D.Na(c,64,4);!Lb&&a&1?(this.g[a]=b,this.g[a+1]=b>>8):this.G[a>>1]=b;this.fb=!0;this.f&&z(this.f,32)&&C(this.f,"Memory.writeWord("+K(this.f,c)+","+K(this.f,b)+")",!0)};var Hd=0,id=1,Id=2,Zc=4,dd=["NONE","RAM","ROM","VID","H/W"],Gd=0,Wd=[],Vd=[I.prototype.Yf,I.prototype.qh,I.prototype.bh,I.prototype.ri],Zd=[I.prototype.Wf,I.prototype.oh,I.prototype.Yg,I.prototype.oi];
if(Gb)var Ud=[I.prototype.Vf,I.prototype.nh,I.prototype.Xg,I.prototype.ni],Td=[I.prototype.Xf,I.prototype.ph,I.prototype.ah,I.prototype.pi];var ce;if(Gb){var de=new ArrayBuffer(2);(new DataView(de)).setUint16(0,256,!0);ce=256===(new Uint16Array(de))[0]}else ce=!1;var Kd=ce;
function ee(a,b){u.call(this,"CPU",a,1);b=+a.cycles||b;var c=+a.multiplier||1;this.$c=0;this.Xc=b;this.mb=c;this.ld=Math.round(this.Xc/1E4)/100;this.xb=this.ld*this.mb;this.md=this.qc=this.Ab=this.Yc=0;this.A.V=this.A.Sc=!1;this.A.qa=a.autoStart;"string"==typeof this.A.qa&&(this.A.qa="true"==this.A.qa);this.A.Nb=!1;this.oc=this.Qb=0;this.pc=+a.csStart;this.Ob=+a.csInterval;this.Rb=+a.csStop;this.ia=[];this.Zd=this.hh.bind(this);this.nb=this.Ka=this.lb=this.b=this.la=this.Ja=this.nc=this.kb=this.Sb=
this.nd=this.wb=0;this.sa=null;y(this)}p(ee,u);h=ee.prototype;h.za=function(a,b,c,d){this.J=a;this.F=b;this.D=d;this.sa=a.i;for(a=0;a<fe.length;a++)(b=this.H[fe[a]])&&this.J.va(null,fe[a],b);y(this)};h.reset=function(){};h.save=function(){return null};h.restore=function(){return!1};
h.Ca=function(a,b){var c=ge(this.J,"autoStart");null!=c?this.A.qa="true"==c?!0:"false"==c?!1:!!c:null==this.A.qa&&(this.A.qa=!this.D&&void 0===this.H.run);if(!b){if(a){he(this);if(!this.restore(a))return!1;ie(this)}else this.reset();this.D?(a=this.D,b=this.A.qa,a.Ga=!0,a.v("Type ? for help with PDPjs Debugger commands"),je(a),b||ke(a),a.ta&&(b=a.ta,a.ta=null,le(a,b))):this.status("No debugger detected");this.A.qa||this.v("CPU will not be auto-started "+(this.sa?"(click Run to start)":"(type 'go' to start)"))}return!0};
h.Ba=function(a){return a?this.save():!0};h.qa=function(){return this.A.V?!0:this.A.qa?(uc(this),!0):!1};h.qe=function(){return 0};function ie(a){void 0===a.pc&&(a.pc=0);void 0===a.Ob&&(a.Ob=-1);void 0===a.Rb&&(a.Rb=-1);a.A.Nb=0<=a.pc&&0<a.Ob;a.A.Nb&&(a.oc=0,a.Qb=a.pc-a.nb)}function yc(a,b){if(a.A.Nb){var c=!1;a.oc=a.oc+a.qe()|0;a.Qb-=b;0>=a.Qb&&(a.Qb+=a.Ob,c=!0);0<=a.Rb&&a.Rb<=me(a)&&(a.Ob=a.Rb=-1,ie(a),a.ca(),c=!0);c&&a.v(me(a)+" cycles: checksum="+F(a.oc))}}
h.va=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.H[b]=c,!0;case "run":return this.H[b]=c,c.onclick=function(){var a;if(a=d.J)if(a=d.J,a.A.ba)a=!0;else{var b=null,c,k=ta(a.id);for(c=0;c<k.length&&(b=k[c],b===a||b.A.ready);c++);if(c==k.length)for(c=0;c<k.length&&(b=k[c],b===a||b.A.ba);c++);c==k.length&&(b=a);v("The "+b.type+" component ("+b.id+") is not "+(b.A.ready?"powered yet":"ready yet"+(b.Nc?" (waiting for notification)":""))+".");a=!1}a&&(d.A.V?d.ca():uc(d))},!0;
case "speed":return this.H[b]=c,!0;case "setSpeed":return this.H[b]=c,c.onclick=function(){ne(d,d.mb<<1,!0)},c.textContent=this.xb.toFixed(2)+"Mhz",!0}return!1};function xc(a,b,c){a.nb+=b;c&&(a.lb=a.b=a.la=0)}function oe(a,b){var c=1;b&&1<a.mb&&a.wb&&(c=a.wb/a.ld);a.md=Math.round(1E3/pe);a.qc=Math.floor(a.Xc/pe*c);b||(a.Ab=a.qc);a.Yc=0}function me(a){return a.nb+a.Ka+a.lb-a.b}function he(a){a.wb=0;a.nd=0;a.nb=a.Ka=a.lb=a.b=a.la=0;ie(a);ne(a,1)}
function ne(a,b,c){var d=!1;if(void 0!==b){.8>a.wb/a.xb?b=1:d=!0;a.mb=b;b=a.ld*a.mb;if(a.xb!=b){a.xb=b;b=a.xb.toFixed(2)+"Mhz";var e=a.H.setSpeed;e&&(e.textContent=b);a.v("target speed: "+b)}c&&a.J&&qe(a.J)}xc(a,a.Ka);a.Ka=0;a.Ja=qa();a.kb=0;oe(a);return d}function md(a,b){var c=a.ia.length;a.ia.push([-1,b]);return c}function od(a,b,c,d){0<=b&&b<a.ia.length&&(d||0>a.ia[b][0])&&(c=a.Xc*a.mb/1E3*c|0,a.A.V&&(c+=re(a)),a.ia[b][0]=c)}
function se(a,b){for(var c=a.ia.length-1;0<=c;c--){var d=a.ia[c];0>d[0]||b>d[0]&&(b=d[0])}return b}function te(a){for(var b=[],c=0;c<a.ia.length;c++)b.push(a.ia[c][0]);return b}function wc(a,b){for(var c=a.ia.length-1;0<=c;c--){var d=a.ia[c];0>d[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function re(a,b){var c=a.lb-=a.b;a.b=a.la=0;b&&(a.lb=0);return c}
h.hh=function(){if(this.A.V){this.Yc>=this.Xc&&oe(this,!0);this.Sb=0;this.nc=qa();if(this.kb){var a=this.nc-this.kb;a>this.md&&(this.Ja+=a,this.Ja>this.nc&&(this.Ja=this.nc))}try{do{var b=se(this,this.A.Nb?1:this.qc);try{this.Cc(b)}catch(e){if("number"!=typeof e)throw e;}b=re(this,!0);this.Sb+=b;this.Ka+=b;yc(this,b);wc(this,b);this.Ab-=b;if(0>=this.Ab){this.Ab+=this.qc;++this.nd>=ue&&(this.J&&H(this.J,void 0),this.nd=0);break}}while(this.A.V)}catch(e){this.ca();this.J&&this.J.stop(qa(),me(this));
Ea(this,e.stack||e.message);return}if(this.A.V){a=setTimeout;b=this.Zd;this.kb=qa();var c=this.md;this.Sb&&(c=Math.round(c*this.Sb/this.qc));var c=c-(this.kb-this.nc),d=this.kb-this.Ja;d&&(this.wb=Math.round(this.Ka/(10*d))/100,864E5<=d&&(this.nb=0,ne(this)));if(0>c||this.wb<this.xb)-1E3>c&&(this.Ja-=c),c=0;this.Yc+=this.Sb;this.kb+=c;a(b,c)}}};
function uc(a,b){if(!Fa(a))if(a.A.V)a.v(a.toString()+" busy");else{ne(a);a.A.V=!0;a.A.Sc=!0;var c=a.H.run;c&&(c.textContent="Halt");a.J&&(b&&qe(a.J,!0),a.J.start(a.Ja,me(a)));a.D||a.status("Started");setTimeout(a.Zd,0)}}h.Cc=function(){return 0};h.ca=function(a){var b=!1;if(this.A.V){re(this);xc(this,this.Ka);this.Ka=0;this.A.V=!1;if(b=this.H.run)b.textContent="Run";this.J&&this.J.stop(qa(),me(this));b=!0;this.D||this.status("Stopped")}this.A.complete=a;return b};var pe=30,ue=15,fe=["power","reset"];
function ve(a){var b=+a.model||1170;ee.call(this,a,6666667);this.ka=b;this.Td=+a.addrReset||0;this.bb=this.w=this.N=this.C=this.G=this.L=this.I=0;this.g=this.ta=this.X=[];this.M=this.B=this.Ha=this.xc=[];this.ib=this.O=this.Sd=this.yb=this.zb=this.rb=this.jb=this.P=this.uc=this.ob=this.Ga=this.S=this.vc=this.wc=this.W=this.i=0;this.Wd=[4,2,0,1];this.zc=0;this.Yd=255;1120>=this.ka?(this.be=we.bind(this),this.Lb=this.Cf,this.zc=8,this.Yd=-1,this.fe=255,this.ee=0):(this.be=xe.bind(this),this.Lb=this.Df,
this.fe=~(1792|(1140>=this.ka?2048:0))&65535,this.ee=1140<this.ka?2048:0);this.Dc=this.Ac=this.pa=0;this.R=null;this.mc=[];this.jc=this.ad=this.pe;this.kc=this.cd=this.te;this.Tc=this.dd=this.ze;this.lc=this.jd=this.Ae;this.Ia=this.ub=this.sc=this.tc=0;this.Fa=this.se;this.oa=this.Ed;this.Hb=this.Id;this.u=this.j=this.Wc=this.U=this.Y=0;this.A.complete=!1}p(ve,ee);h=ve.prototype;
h.za=function(a,b,c,d){ee.prototype.za.call(this,a,b,c,d);this.ad=b.Kd.bind(b);this.cd=b.Bc.bind(b);this.dd=b.Ld.bind(b);this.jd=b.ac.bind(b)};h.Ca=function(a,b){for(var c=192,d=0;d<this.mc.length;d++){var e=this.mc[d];0>e.Fb&&(e.Fb=c,c+=4)}return ee.prototype.Ca.call(this,a,b)};
h.reset=function(){this.status("Model "+this.ka);this.A.V&&this.ca();this.C=65536;this.G=32768;this.L=65535;this.I=32768;this.w=15;this.g=[0,0,0,0,0,0,0,this.Td,-1,-2,-3,-4,-5,-6,-7,-8];this.ta=[0,0,0,0,0,0];this.X=[0,0,0,0];this.M=[[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.B=[[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,65535,
65535,65535,65535,65535,65535,65535,65535],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];this.Ha=[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.xc=[0,0,0,0,0,0,0,0];this.N=0;this.bb=-1;this.u=this.j=this.Wc=this.U=this.Y=this.i=this.uc=0;sc(this);he(this);this.A.error=!1;ee.prototype.reset.call(this)};function sc(a){a.S=0;a.vc=0;a.wc=0;a.W=0;a.P=0;a.ob=0;a.Ga=255;a.yb=0;a.zb=0;a.rb=0;a.jb=262143;a.ib=a.g[7];a.O=0;a.R=null;a.F&&(ye(a),a.Sd=hd(a.F))}
function ye(a){a.jc=a.ad;a.kc=a.cd;a.Tc=a.dd;a.lc=a.jd;a.sc&&(a.jc=a.pe,a.kc=a.te);a.tc&&(a.Tc=a.ze,a.lc=a.Ae);a.yb?(a.Ia=65536,a.ub=a.W&16?4186112:253952,a.Fa=a.se,a.oa=a.sc?a.$g:a.Ed,a.Hb=a.tc?a.ti:a.Id,$c(a.F,a.W&16?22:18)):(a.Ia=0,a.ub=57344,a.Fa=a.Gf,a.oa=a.sc?a.Zg:a.ye,a.Hb=a.tc?a.si:a.De,$c(a.F,16))}function ud(a){var b=a.S;b&57344||(b=b&-3199|a.zb<<5|a.rb<<1);return b}
function vd(a,b){b&=-3073;if(a.S!=b){b&57344&&!(a.S&57344)&&(a.vc=a.O>>16&65535,a.wc=a.O&65535);a.S=b;a.zb=(b&96)>>5;a.rb=(b&30)>>1;var c=0;b&257&&(c=4,b&1&&(c|=2));a.yb!=c&&(a.yb=c,ye(a))}}function wd(a){a.S&57344||(a.vc=a.O>>16&65535);a=a.vc;a&65280&&(a=(a<<8|a>>8)&65535);return a}function xd(a){a.S&57344||(a.wc=a.O&65535);return a.wc}function yd(a,b){1170>a.ka&&(b&=-49);a.W!=b&&(a.W=b,a.jb=b&16?4194303:262143,ye(a))}
function ze(a,b,c,d){a.Td=b;rc(a,b);Bd(a,0);a.F.reset();sc(a);if(c){a.g[0]=d||0;for(b=1;5>=b;b++)a.g[b]=0;a.g[6]=1024;a.A.ba?a.A.V||uc(a):a.A.qa=!0}else a.D&&a.A.ba?a.ca()||a.J.A.reset||(je(a.D),H(a.J,-1)):!1===c&&a.ca();!a.A.V&&a.sa&&a.sa.stop()}h.qe=function(){return 0};
h.save=function(){var a=new G(this);a.set(0,[this.g,this.ta,this.X,this.M,this.B,this.Ha,this.xc,this.P,this.uc,this.ob,this.Ga,this.zb,this.rb,this.ib,this.i,this.O,this.bb,this.Ac,this.Dc]);a.set(1,[Ad(this),ud(this),wd(this),xd(this),this.W]);a.set(2,[this.nb,this.mb,this.A.qa]);a.set(3,Ae(this));a.set(4,te(this));return a.data()};
h.restore=function(a){var b=ia(a[0]);this.g=b.next().value;this.ta=b.next().value;this.X=b.next().value;this.M=b.next().value;this.B=b.next().value;this.Ha=b.next().value;this.xc=b.next().value;this.P=b.next().value;this.uc=b.next().value;this.ob=b.next().value;this.Ga=b.next().value;this.zb=b.next().value;this.rb=b.next().value;this.ib=b.next().value;this.i=b.next().value;this.O=b.next().value;this.bb=b.next().value;this.Ac=b.next().value;this.Dc=b.next().value;b=a[1];Bd(this,b[0]);vd(this,b[1]);
this.vc=b[2];this.wc=b[3];yd(this,b[4]);b=a[2];this.nb=b[0];ne(this,b[1]);this.A.qa=b[2];for(var b=a[3],c=b.length-1;0<=c;c--){var d;a:{for(d=0;d<this.mc.length;d++){var e=this.mc[d];if(e.Fb===b[c]){d=e;break a}}d=null}d&&(d.next=this.R,this.R=d)}a=a[4];for(b=0;b<this.ia.length&&b<a.length;b++)this.ia[b][0]=a[b];return!0};function Be(a){return a.C&65536?1:0}function Ce(a){return a.G&32768?2:0}function De(a){return a.L&65535?0:4}function Ee(a){return a.I&32768?8:0}
function Fe(a,b){var c=a.g[7];a.g[7]=c+b&65535;return c}function Ge(a,b,c){c&&(rc(a,a.g[7]+(b<<24>>23)),a.b-=2);a.b-=3}function rc(a,b){a.g[7]=b&65535}function pd(a,b,c,d){b={Fb:b,pb:c,message:d||0,name:Qb[b],next:null};a.mc.push(b);return b}function He(a,b){var c=a.R;if(c==b)a.R=b.next;else for(;c;){var d=c.next;if(d==b){c.next=d.next;break}c=d}a.R&&(a.i|=1)}
function nd(a,b){if(b){if(b!=a.R){var c=a.R;if(!c||c.pb<=b.pb)b.next=c,a.R=b;else{do{var d=c.next;if(!d||d.pb<=b.pb){b.next=d;c.next=b;break}c=d}while(c)}}a.i|=1;b.message&&z(a,b.message|8)&&C(a,"setIRQ(vector="+E(b.Fb)+",priority="+b.pb+")",!0,!0)}}function td(a,b){b&&(He(a,b),b.message&&z(a,b.message|8)&&C(a,"clearIRQ(vector="+E(b.Fb)+",priority="+b.pb+")",!0,!0))}function Ae(a){var b=[];for(a=a.R;a;)b.push(a.Fb),a=a.next;return b}
function Ie(a){return a.i&64?(a.ra(168,64,-6),!0):a.i&32?(a.ra(4,32,-5),!0):a.i&16?(a.ra(12,16,-7),!0):!1}function Ad(a){return a.w=a.w&63728|Ee(a)|De(a)|Ce(a)|Be(a)}function Bd(a,b){b&=a.fe;a.I=b<<12;a.L=~b&4;a.G=b<<14;a.C=b<<16;if((b^a.w)&a.ee)for(var c=a.ta.length;0<=--c;){var d=a.g[c];a.g[c]=a.ta[c];a.ta[c]=d}a.N=b>>14&3;c=a.w>>14&3;a.N!=c&&(a.X[c]=a.g[6],a.g[6]=a.X[a.N]);a.w=b;a.i&=-3;a.i|=a.R?2:1}function zd(a,b){if(b&=65024){var c=b>>9;do b+=34;while(c>>=1);a.i|=1}a.ob=b}
h.Da=function(a){this.I=this.L=a;this.G=0};h.qb=function(a,b){this.I=this.L=this.C=a;this.G=b||0};function Je(a,b){a.I=a.L=a.C=b;a.G=a.I^a.C>>1}function Ke(a,b,c,d){a.I=a.L=a.C=b;a.G=(c^d)&(d^b)}
h.ra=function(a,b,c){if(!this.pa){0>this.bb?this.bb=Ad(this):this.N||(c=-4);-4==c&&(this.i&256&&(c=-1),this.i|=256,this.P|=4,this.g[6]=a=4);if(-1!=c){this.O=a|4143316992;this.N=0;var d=this.oa(a|this.Ia),e=this.oa(a+2&65535|this.Ia);Bd(this,e&-12289|this.bb>>2&12288);Le(this,this.bb);Le(this,this.g[7]);rc(this,d)}this.b-=5;this.i&=~(b|19);this.i|=129;this.bb=-1;this.Ac=c;this.Dc=a;-1==c&&this.ca();if(-4<=c)throw a;}};
function Me(a){var b=Ne(a),c=Ne(a);a.w&49152&&(c=c&-225|a.w&63712);rc(a,b);Bd(a,c);a.i&=-17}function Oe(a,b){var c=b>>13&31;31>c&&(b=a.W&32?a.Ha[c]+(b&8191)&4194303:b&-3932161);return b}
function Pe(a,b,c){var d=[];if(c){c=Oe(a,b);var e=b>>13&31;d.push(c);d.push(e);a.W&32&&(d.push(a.Ha[e]),d.push(b&8191))}else if(a.yb){var e=a.N<<1,f=b>>13;7<f&&(e|=1);a.W&a.Wd[a.N]||(f&=7);b&=8191;var g=a.M[a.N][f]<<6;c=g+b&a.jb;3932160<=c&&(c=Oe(a,c));d.push(c);d.push(b);d.push(e);d.push(f&7);d.push(g);d.push(a.jb)}else c=b&65535,57344<=c&&(c|=a.ub),d.push(c);return d}
function Bc(a,b,c){var d,e,f;if(!(c&a.yb))return f=b&65535,57344<=f&&(f|=a.ub),f;d=b>>13;a.W&a.Wd[a.N]||(d&=7);e=a.B[a.N][d];f=(a.M[a.N][d]<<6)+(b&8191)&a.jb;3932160<=f&&(f=Oe(a,f));if(a.pa)return f;f>=a.Sd&&f<a.ub?(a.P|=32,a.ra(4,0,f)):f&1&&!(c&1)&&(a.P|=64,a.ra(4,0,f));var g=0;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.B[a.N][d]=e;if(f!=(4194170&a.jb)||a.N)a.zb=a.N,a.rb=d;g&&(g&57344&&(0<=a.bb&&(g|=128),a.S&57344||(g|=a.S&4096|a.zb<<5|a.rb<<1,vd(a,a.S&-61695|g&61694)),a.ra(168,64,-2)),a.S&61440||!(f<(4191360&a.jb)||f>(4194239&a.jb))||(a.S|=4096,a.S&512&&(a.i|=64)));return f}function Ne(a){var b=a.oa(a.g[6]|a.Ia);a.g[6]=a.g[6]+2&65535;return b}function Le(a,b){var c=a.g[6]-2&65535;a.g[6]=c;a.O=a.O&65535|(a.O&-65536)<<8|16121856;a.i&256||a.Lb(4,-2,c);a.Hb(c,b)}
function Qe(a,b,c,d){var e,f,g=d&8?0:a.Ia;switch(b){case 0:return a.ra(4,0,-3),0;case 1:return 6==c&&a.Lb(d,0,a.g[6]),a.b-=3,7==c?a.g[c]:a.g[c]|g;case 2:f=2;e=a.g[c];6==c&&a.Lb(d,f,e);7!=c&&(e|=g,6>c&&d&1&&(f=1));a.b-=3;break;case 3:f=2;e=a.g[c];7!=c&&(e|=g);e=a.oa(e);e|=g;a.b-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.g[c]+f&65535;6==c&&a.Lb(d,f,e);7!=c&&(e|=g);a.b-=4;break;case 5:f=-2;e=a.g[c]-2&65535;7!=c&&(e|=g);e=a.oa(e)|g;a.b-=8;break;case 6:return e=a.oa(Fe(a,2)),e=e+a.g[c]&65535,6==c&&a.Lb(d,
0,e),a.b-=6,e|g;case 7:return e=a.oa(Fe(a,2)),e=e+a.g[c]&65535,e=a.oa(e|a.Ia),a.b-=10,e|g}a.g[c]=a.g[c]+f&65535;a.O=a.O&65535|(a.O&-65536)<<8|(f<<3&248|c)<<16;return e}h.Cf=function(a,b,c){!this.N&&0>=b&&c<=this.Ga&&(this.i|=32)};h.Df=function(a,b,c){this.N||(65534<=c&&(c|=-65536),a&4&&c<=this.Ga&&(c<=this.Ga-32?this.ra(4,0,-4):(this.P|=8,this.i|=32)))};h.pe=function(a){this.D&&ae(this.D,a,1);return this.ad(a)};h.te=function(a){this.D&&ae(this.D,a,2);return this.cd(a)};
h.ze=function(a,b){this.D&&be(this.D,a,1);this.dd(a,b)};h.Ae=function(a,b){this.D&&be(this.D,a,2);this.jd(a,b)};function Dc(a,b){a.pa++;b=a.F.Bc(Bc(a,b,2));a.pa--;return b}function Re(a,b){(b?--a.tc:--a.sc)||ye(a)}h.Gf=function(a,b,c){return Qe(this,a,b,c)};h.se=function(a,b,c){return Bc(this,Qe(this,a,b,c),c)};h.ye=function(a){return this.F.Bc(this.ib=a)};h.Zg=function(a){this.D&&ae(this.D,a,2);return this.ye(a)};h.Ed=function(a){return this.F.Bc(this.ib=Bc(this,a,2))};
h.$g=function(a){this.D&&ae(this.D,a,2);return this.Ed(a)};h.De=function(a,b){this.F.ac(this.ib=a,b)};h.si=function(a,b){this.D&&be(this.D,a,2);this.De(a,b)};h.Id=function(a,b){this.F.ac(this.ib=Bc(this,a,4),b)};h.ti=function(a,b){this.D&&be(this.D,a,2);this.Id(a,b)};function Se(a,b,c){var d=a.j=b&7;(b=a.u=(b&56)>>3)?(d=Qe(a,b,d,2),c&65536||61440!==(a.w&61440)&&(d&=65535),a.N=a.w>>12&3,c=a.oa(d|c&a.Ia),a.N=a.w>>14&3):c=6!=d||(a.w>>2&12288)===(a.w&12288)?a.g[d]:a.X[a.w>>12&3];return c}
function Te(a,b,c,d){a.O=a.O&65535|1441792;var e=a.j=b&7;(b=a.u=(b&56)>>3)?(e=Qe(a,b,e,4),c&65536||(e&=65535),a.N=a.w>>12&3,e=Bc(a,e|c&65536,4),a.N=a.w>>14&3,a.lc(e,d)):6!=e||(a.w>>2&12288)===(a.w&12288)?a.g[e]=d:a.X[a.w>>12&3]=d}function Ue(a,b){b>>=6;var c=a.Y=b&7;return(b=a.U=(b&56)>>3)?a.jc(a.Fa(b,c,3)):a.g[c+a.zc]&a.Yd}function Ve(a,b){var c;b>>=6;var d=a.Y=b&7;(b=a.U=(b&56)>>3)?c=a.kc(a.Fa(b,d,2)):c=a.g[d+a.zc];return c}function We(a,b){var c=a.j=b&7;b=a.u=(b&56)>>3;return Qe(a,b,c,8)}
function Xe(a,b){var c=a.j=b&7;return(b=a.u=(b&56)>>3)?a.jc(a.Fa(b,c,3)):a.g[c]&255}function Ye(a,b){var c,d=a.j=b&7;(b=a.u=(b&56)>>3)?c=a.kc(a.Fa(b,d,2)):c=a.g[d];return c}function Ze(a,b,c,d){var e=a.j=b&7;(b=a.u=(b&56)>>3)?(e=a.Wc=a.Fa(b,e,7),c=0>c?a.g[-c-1]&255:c,a.Tc(e,d.call(a,c,a.jc(e))),e&1&&a.b--):(b=a.g[e],c=0>c?a.g[-c-1]&255:c,a.g[e]=b&65280|d.call(a,c,b&255))}
function P(a,b,c,d){var e=a.j=b&7;(b=a.u=(b&56)>>3)?(e=a.Fa(b,e,6),a.lc(e,d.call(a,0>c?a.g[-c-1]:c,a.kc(e)))):a.g[e]=d.call(a,0>c?a.g[-c-1]:c,a.g[e])}function $e(a,b,c,d,e){var f=a.j=b&7;(b=a.u=(b&56)>>3)?(d=a.Fa(b,f,5),e.call(a,(c=0>c?a.g[-c-1]&255:c)<<8),a.Tc(d,c),d&1&&a.b--):(c?(c=0>c?a.g[-c-1]&255:c,a.g[f]=a.g[f]&~d|c<<24>>24&d):a.g[f]&=~d,e.call(a,c<<8))}
function af(a,b,c,d){var e=a.j=b&7;(b=a.u=(b&56)>>3)?(e=a.Fa(b,e,4),d.call(a,c=0>c?a.g[-c-1]:c),a.lc(e,c)):(a.g[e]=c=0>c?a.g[-c-1]:c,d.call(a,c))}
h.Cc=function(a){this.A.complete=!0;var b=this.D?bf(this.D)?1:this.A.Sc?-1:0:0,c=a?this.A.Sc?0:1:-1;this.A.Sc=!1;this.lb=this.b=a;this.i=this.i&-5|(b?4:0);do{if(this.i){if(this.i&4){if(cf(this.D,this.g[7],c)){this.ca();break}++b||(this.i&=-5);c||c++}if(a=this.i&11)if(a=!1,this.i&2){var d=160,e=(this.ob&224)>>5,f=this.R&&this.R.pb>e?this.R:null;f&&(d=f.Fb,e=f.pb);e>(this.w&224)>>5?(this.i&8&&(Fe(this,2),this.i&=-9),this.ra(d,0,-10),e=!0):e=!1;e&&(f&&He(this,f),a=!0);this.R||this.ob||(this.i&=-3)}else this.i&
1&&this.i++;if(a){if(this.i&4&&cf(this.D,this.g[7],c)){this.ca();break}if(0>c)break}if(this.i&112&&Ie(this)){if(this.i&4&&cf(this.D,this.g[7],c)){this.ca();break}if(0>c)break}}this.i=this.i&15|this.w&16;a=this.O=this.g[7];f=this.oa(a);this.g[7]=a+2&65535;this.be(f)}while(0<this.b);return this.A.complete?this.lb-this.b:!1===this.A.complete?-1:0};sb(function(){for(var a=x(document,w,"cpu"),b=0;b<a.length;b++){var c=a[b],d=wa(c),d=new ve(d);xa(d,c)}});
function df(a,b){var c=b+a;this.I=this.L=this.C=c;this.G=(a^c)&(b^c);return c&65535}function ef(a,b){var c=b+a,d=c<<8;this.I=this.L=this.C=d;this.G=(a<<8^d)&(b<<8^d);return c&255}function Bf(a,b){a=b<<1;Je(this,a);return a&65535}function Cf(a,b){a=b<<1;Je(this,a<<8);return a&255}function Df(a,b){a=b&32768|b>>1|b<<16;Je(this,a);return a&65535}function Ef(a,b){a=b&128|b>>1|b<<8;Je(this,a<<8);return a&255}function Ff(a,b){a=b&~a;this.Da(a);return a}function Gf(a,b){a=b&~a;this.Da(a<<8);return a}
function Hf(a,b){a|=b;this.Da(a);return a}function If(a,b){a|=b;this.Da(a<<8);return a}function Jf(a,b){a=~b|65536;this.qb(a);return a&65535}function Kf(a,b){a=~b|256;this.qb(a<<8);return a&255}function Lf(a,b){this.I=this.L=a=b-a;this.G=b&(b^a);return a&65535}function Mf(a,b){a=b-a;var c=a<<8;b<<=8;this.I=this.L=c;this.G=b&(b^c);return a&255}function Nf(a,b){this.I=this.L=a=b+a;this.G=a&(b^a);return a&65535}function Of(a,b){a=b+a;var c=a<<8;this.I=this.L=c;this.G=c&(b<<8^c);return a&255}
function Pf(a,b){a=-b;this.qb(a,a&b&32768);return a&65535}function Qf(a,b){a=-b;this.qb(a<<8,(a&b&128)<<8);return a&255}function Rf(a,b){a=b<<1|this.C>>16&1;Je(this,a);return a&65535}function Sf(a,b){a=b<<1|this.C>>16&1;Je(this,a<<8);return a&255}function Tf(a,b){a=(this.C&65536|b)>>1|b<<16;Je(this,a);return a&65535}function Uf(a,b){a=((this.C&65536)>>8|b)>>1|b<<8;Je(this,a<<8);return a&255}function Vf(a,b){var c=b-a;Ke(this,c,a,b);return c&65535}
function Wf(a,b){var c=b-a;Ke(this,c<<8,a<<8,b<<8);return c&255}function Xf(a,b){this.I=this.L=b&65280;this.G=this.C=0;return(b<<8|b>>8)&65535}function Yf(a,b){a^=b;this.Da(a);return a&65535}function Zf(a){P(this,a,Ve(this,a),df);this.b-=this.u?9+(this.Y&&6<=this.j?1:0):(this.U?5:3)+(7==this.j?2:0)}
function $f(a){var b=Ye(this,a);a=a>>6&7;var c=this.g[a];c&32768&&(c|=4294901760);this.C=this.G=0;b&=63;if(b&32)b=64-b,16<b&&(b=16),this.C=c<<17-b,c>>=b;else if(b)if(16<b)this.G=c,c=0;else{this.C=c<<=b;var d=c>>15&65535;d&&65535!==d&&(this.G=32768)}this.g[a]=c&65535;this.I=this.L=c;this.b-=(this.u?6:7)+b}
function ag(a){var b=Ye(this,a);a=a>>6&7;var c=this.g[a]<<16|this.g[a|1];this.C=this.G=0;b&=63;if(b&32){b=64-b;32<b&&(b=32);var d=c>>b-1;this.C=d<<16;d>>=1;c&2147483648&&(d|=4294967295<<32-b)}else b?(d=c<<b-1,this.C=d>>15,d<<=1,32<b&&(b=32),(c>>=32-b)&&4294967295!==(c|4294967295<<b&4294967295)&&(this.G=32768)):d=c;this.g[a]=d>>16&65535;this.g[a|1]=d&65535;this.I=d>>16;this.L=d>>16|d;this.b-=(this.u?6:7)+b}function bg(a){Ge(this,a,!Be(this))}function cg(a){Ge(this,a,Be(this))}
function dg(a){P(this,a,Ve(this,a),Ff);this.b-=this.u?9+(this.Y&&6<=this.j?1:0):(this.U?5:3)+(7==this.j?2:0)}function eg(a){Ze(this,a,Ue(this,a),Gf);this.b-=this.u?9+(this.Y&&6<=this.j?1:0):(this.U?5:3)+(7==this.j?2:0)}function fg(a){P(this,a,Ve(this,a),Hf);this.b-=this.u?9+(this.Y&&6<=this.j?1:0):(this.U?5:3)+(7==this.j?2:0)}function gg(a){Ze(this,a,Ue(this,a),If);this.b-=this.u?9+(this.Y&&6<=this.j?1:0):(this.U?5:3)+(7==this.j?2:0)}
function hg(a){var b=Ve(this,a);a=Ye(this,a);this.Da((0>b?this.g[-b-1]:b)&a);this.b-=this.u?4+(this.Y&&6<=this.j?1:0):(this.U?4:3)+(7==this.j?2:0)}function ig(a){var b=Ue(this,a);a=Xe(this,a);this.Da(((0>b?this.g[-b-1]&255:b)&a)<<8);this.b-=this.u?4+(this.Y&&6<=this.j?1:0):(this.U?4:3)+(7==this.j?2:0)}function jg(a){Ge(this,a,De(this))}function kg(a){Ge(this,a,!Ee(this)==!Ce(this))}function lg(a){Ge(this,a,!De(this)&&!Ee(this)==!Ce(this))}function mg(a){Ge(this,a,!Be(this)&&!De(this))}
function ng(a){Ge(this,a,De(this)||!Ee(this)!=!Ce(this))}function og(a){Ge(this,a,Be(this)||De(this))}function pg(a){Ge(this,a,!Ee(this)!=!Ce(this))}function qg(a){Ge(this,a,Ee(this))}function rg(a){Ge(this,a,!De(this))}function sg(a){Ge(this,a,!Ee(this))}function tg(){this.ra(12,0,-9)}function ug(a){Ge(this,a,!0)}function vg(a){Ge(this,a,!Ce(this))}function wg(a){Ge(this,a,Ce(this))}function xg(a){a&1&&(this.C=0);a&2&&(this.G=0);a&4&&(this.L=1);a&8&&(this.I=0);this.b-=5}
function yg(a){var b=Ve(this,a);a=Ye(this,a);var c=(b=0>b?this.g[-b-1]:b)-a;Ke(this,c,a,b);this.b-=this.u?4+(this.Y&&6<=this.j?1:0):(this.U?4:3)+(7==this.j?2:0)}function zg(a){var b=Ue(this,a);a=Xe(this,a);var c=(b=(0>b?this.g[-b-1]&255:b)<<8)-(a<<=8);Ke(this,c,a,b);this.b-=this.u?4+(this.Y&&6<=this.j?1:0):(this.U?4:3)+(7==this.j?2:0)}
function Ag(a){var b=Ye(this,a);if(b){a=a>>6&7;var c=this.g[a]<<16|this.g[a|1];this.C=this.G=0;b&32768&&(b|=-65536);var d=~~(c/b);-32768<=d&&32767>=d?(this.g[a]=d&65535,this.g[a|1]=c-d*b&65535,this.L=d>>16|d,this.I=d>>16):(this.G=32768,this.L=d>>15|d,this.I=c>>16,-1===b&&65534===this.g[a]&&(this.g[a]=this.g[a|1]=1));this.b-=53}else this.L=this.I=0,this.G=32768,this.C=65536,this.b-=7}function Bg(){this.ra(24,0,-9);this.b-=20}
function Cg(){this.w&49152?(this.P|=128,this.ra(4,0,-8)):(this.sa&&1120==this.ka&&this.sa.setData(this.g[0],!0),this.D?Dg(this.D):this.ca());this.b-=7}function Eg(){this.ra(16,0,-9);this.b-=20}var Fg=[0,7,7,10,7,11,9,13];function Gg(a){this.la=this.b;rc(this,We(this,a));this.b=this.la-Fg[this.u]}var Hg=[0,14,14,17,14,18,16,20];function Ig(a){this.la=this.b;var b=We(this,a);a=a>>6&7;Le(this,this.g[a]);this.g[a]=this.g[7];rc(this,b);this.b=this.la-Hg[this.u]}
var Jg=[3,9,9,13,10,14,12,16,4,9,9,13,10,14,13,17];function Kg(a){var b=Ve(this,a);this.la=this.b;af(this,a,b,this.Da);this.b=this.la-Jg[(this.U?8:0)+this.u]+(7!=this.j||this.u?0:2)}function Lg(a){var b=Ue(this,a);$e(this,a,b,65535,this.Da);this.b-=this.u?9+(this.Y&&6<=this.j?1:0):(this.U?5:3)+(7==this.j?2:0)}var Mg=[7,13,13,17,14,18,17,21];
function Ng(a){var b=Ye(this,a);a=a>>6&7;b=(b<<16>>16)*(this.g[a]<<16>>16);this.g[a]=b>>16&65535;this.g[a|1]=b&65535;b|=0;this.I=b>>16;this.L=this.I|b;this.G=0;this.C=-32768>b||32767<b?65536:0;this.b-=23}function Og(){this.b-=5}function Pg(){this.w&49152||(this.F.reset(),sc(this),this.sa&&this.sa.setData(this.g[0],!0));this.b-=667}function Qg(a){if(a&8)Q.call(this,a);else{var b=Ne(this);a&=7;7==a?rc(this,b):(rc(this,this.g[a]),this.g[a]=b);this.b-=9}}function Rg(){Me(this);this.b-=13}
function Sg(a){a&1&&(this.C=65536);a&2&&(this.G=32768);a&4&&(this.L=0);a&8&&(this.I=32768);this.b-=5}function Tg(a){var b=(a&448)>>6;if(this.g[b]=this.g[b]-1&65535)rc(this,this.g[7]-((a&63)<<1)),this.b+=1;this.b-=6}function Ug(a){P(this,a,Ve(this,a),Vf);this.b-=this.u?9+(this.Y&&6<=this.j?1:0):(this.U?5:3)+(7==this.j?2:0)}function Vg(a){P(this,a,0,Xf);this.b-=this.u?9:3+(7==this.j?2:0)}function Wg(){this.ra(28,0,-9)}
function Xg(){this.sa&&(this.sa.Gd(this.g[7],!0),this.sa.setData(this.g[0],!0));this.i|=8;Fe(this,-2);this.b-=3}function Yg(a){P(this,a,this.g[(a>>6&7)+this.zc],Yf);this.b-=this.u?9:3+(7==this.j?2:0)}function Q(a){var b;if(b=this.D)b=this.D,z(b,1)?(C(b,"undefined opcode "+K(b,a),!0,!0),b=Dg(b)):b=!1;b||this.ra(8,0,-9)}function we(a){Zg[a>>12].call(this,a)}function $g(a){ah[a>>6&3].call(this,a)}function bh(a){ch[a>>6&3].call(this,a)}function dh(a){eh[a>>6&3].call(this,a)}
function fh(a){gh[a&15].call(this,a)}function hh(a){ih[a&15].call(this,a)}function jh(a){kh[a>>6&3].call(this,a)}function lh(a){mh[a>>6&3].call(this,a)}function nh(a){oh[a>>6&3].call(this,a)}
var Zg=[function(a){ph[a>>8&15].call(this,a)},Kg,yg,hg,dg,fg,Zf,Q,function(a){qh[a>>8&15].call(this,a)},Lg,zg,ig,eg,gg,Ug,Q],ph=[function(a){rh[a>>4&15].call(this,a)},ug,rg,jg,kg,pg,lg,ng,Ig,Ig,$g,bh,dh,Q,Q,Q],ah=[function(a){af(this,a,0,this.qb);this.b-=this.u?9:3+(7==this.j?2:0)},function(a){P(this,a,0,Jf);this.b-=this.u?9:3+(7==this.j?2:0)},function(a){P(this,a,1,Nf);this.b-=this.u?9:3+(7==this.j?2:0)},function(a){P(this,a,1,Lf);this.b-=this.u?9:3+(7==this.j?2:0)}],ch=[function(a){P(this,a,0,Pf);
this.b-=this.u?11:6},function(a){P(this,a,Be(this)?1:0,df);this.b-=this.u?9:3+(7==this.j?2:0)},function(a){P(this,a,Be(this)?1:0,Vf);this.b-=this.u?9:3+(7==this.j?2:0)},function(a){a=Ye(this,a);this.qb(a);this.b-=this.u?4:3+(7==this.j?2:0)}],eh=[function(a){P(this,a,0,Tf);this.b-=this.u?9:3+(7==this.j?2:0)},function(a){P(this,a,0,Rf);this.b-=this.u?9:3+(7==this.j?2:0)},function(a){P(this,a,0,Df);this.b-=this.u?9:3+(7==this.j?2:0)},function(a){P(this,a,0,Bf);this.b-=this.u?9:3+(7==this.j?2:0)}],rh=
[function(a){sh[a&15].call(this,a)},Q,Q,Q,Gg,Gg,Gg,Gg,Qg,Q,fh,hh,Vg,Vg,Vg,Vg],sh=[Cg,Xg,Rg,tg,Eg,Pg,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q],gh=[Og,function(){this.C=0;this.b-=5},function(){this.G=0;this.b-=5},xg,function(){this.L=1;this.b-=5},xg,xg,xg,function(){this.I=0;this.b-=5},xg,xg,xg,xg,xg,xg,xg],ih=[Og,function(){this.C=65536;this.b-=5},function(){this.G=32768;this.b-=5},Sg,function(){this.L=0;this.b-=5},Sg,Sg,Sg,function(){this.I=32768;this.b-=5},Sg,Sg,Sg,Sg,Sg,Sg,Sg],qh=[sg,qg,mg,og,vg,wg,bg,cg,Bg,Wg,jh,lh,
nh,Q,Q,Q],kh=[function(a){$e(this,a,0,255,this.qb);this.b-=this.u?9:3+(7==this.j?2:0)},function(a){Ze(this,a,0,Kf);this.b-=this.u?9:3+(7==this.j?2:0)},function(a){Ze(this,a,1,Of);this.b-=this.u?9:3+(7==this.j?2:0)},function(a){Ze(this,a,1,Mf);this.b-=this.u?9:3+(7==this.j?2:0)}],mh=[function(a){Ze(this,a,0,Qf);this.b-=this.u?11:6},function(a){Ze(this,a,Be(this)?1:0,ef);this.b-=this.u?9:3+(7==this.j?2:0)},function(a){Ze(this,a,Be(this)?1:0,Wf);this.b-=this.u?9:3+(7==this.j?2:0)},function(a){a=Xe(this,
a);this.qb(a<<8);this.b-=this.u?4:3+(7==this.j?2:0)}],oh=[function(a){Ze(this,a,0,Uf);this.b-=this.u?9+(this.Wc&1):3+(7==this.j?2:0)},function(a){Ze(this,a,0,Sf);this.b-=this.u?9:3+(7==this.j?2:0)},function(a){Ze(this,a,0,Ef);this.b-=this.u?9+(this.Wc&1):3+(7==this.j?2:0)},function(a){Ze(this,a,0,Cf);this.b-=this.u?9:3+(7==this.j?2:0)}];function xe(a){th[a>>12].call(this,a)}
var th=[function(a){uh[a>>8&15].call(this,a)},Kg,yg,hg,dg,fg,Zf,function(a){vh[a>>8&15].call(this,a)},function(a){wh[a>>8&15].call(this,a)},Lg,zg,ig,eg,gg,Ug,Q],uh=[function(a){xh[a>>4&15].call(this,a)},ug,rg,jg,kg,pg,lg,ng,Ig,Ig,$g,bh,dh,function(a){yh[a>>6&3].call(this,a)},Q,Q],yh=[function(a){a=this.g[7]+((a&63)<<1)&65535;var b=this.oa(a|this.Ia);rc(this,this.g[5]);this.g[6]=a+2&65535;this.g[5]=b;this.b-=8},function(a){a=Se(this,a,0);this.Da(a);Le(this,a);this.b-=11},function(a){var b=Ne(this);
this.la=this.b;this.Da(b);Te(this,a,0,b);this.b=this.la-Mg[this.u]},function(a){af(this,a,Ee(this)?65535:0,this.Da);this.b-=this.u?9:3+(7==this.j?2:0)}],xh=[function(a){zh[a&15].call(this,a)},Q,Q,Q,Gg,Gg,Gg,Gg,Qg,function(a){!(a&8)||1145>this.ka?Q.call(this,a):(this.w&49152||(this.w=this.w&-225|(a&7)<<5,this.i|=1,this.i&=-3),this.b-=5)},fh,hh,Vg,Vg,Vg,Vg],zh=[Cg,Xg,function(){Me(this);this.i|=this.w&16;this.b-=13},tg,Eg,Pg,Rg,function(a){Q.call(this,a)},Q,Q,Q,Q,Q,Q,Q,Q],vh=[Ng,Ng,Ag,Ag,$f,$f,ag,ag,
Yg,Yg,Q,Q,Q,Q,Tg,Tg],wh=[sg,qg,mg,og,vg,wg,bg,cg,Bg,Wg,jh,lh,nh,function(a){1145>this.ka?Q.call(this,a):Ah[a>>6&3].call(this,a)},Q,Q],Ah=[function(a){Q.call(this,a)},function(a){a=Se(this,a,65536);this.Da(a);Le(this,a);this.b-=11},function(a){var b=Ne(this);this.la=this.b;this.Da(b);Te(this,a,65536,b);this.b=this.la-Mg[this.u]},function(a){Q.call(this,a)}];
function Bh(a){u.call(this,"ROM",a,128);this.ga=this.g=null;this.u=+a.addr;this.b=+a.size;this.w=!1;this.i=a.alias;"string"==typeof this.i&&(this.i=eval(this.i));this.j=a.file;this.B=Pa(this.j);if(this.j){a=this.j;var b=Qa(this.B);"json"!=b&&"hex"!=b&&(a=eb()+"/api/v1/dump?file="+this.j+"&format=bytes&decimal=true");var c=this;cb(a,null,!0,function(a,b,f){f?(c.T("Unable to load ROM resource (error "+f+": "+a+")"),c.j=null):(na(c.vb,a,b),(a=db(a,b))?(c.g=a.Z,c.ga=a.ga):c.j=null);Ch(c)})}}p(Bh,u);
h=Bh.prototype;h.za=function(a,b,c,d){this.F=b;this.f=c;this.D=d;Ch(this)};h.Ca=function(){this.ga&&(this.D&&Dh(this.D,this.id,this.u,this.b,this.ga),delete this.ga);return!0};h.Ba=function(){return!0};
function Ch(a){if(!Ga(a)){if(a.j){if(!a.g||!a.F)return;a.b||(a.b=a.g.length);if(a.g.length!=a.b)Ea(a,"ROM size ("+F(a.g.length,8,!0)+") does not match specified size ("+F(a.b,8,!0)+")");else{var b;a:{b=a.u;if(57344<=b&&b<57344+Hc){var c={},c=(c[b]=[Bh.prototype.Jg,Bh.prototype.$h,null,null,null,a.b>>1],c);if(dc(a.F,a,c)){a.status("Added "+a.b+"-byte ROM at "+E(b));b=a.w=!0;break a}}else if(Yc(a.F,b,a.b,Id)){for(c=0;c<a.g.length;c++)gd(a.F,b+c,a.g[c]);b=!0;break a}b=!1}if(b){b=[];"number"==typeof a.i?
b.push(a.i):null!=a.i&&a.i.length&&(b=a.i);for(c=0;c<b.length;c++){for(var d=a,e=b[c],f=d.F,g=d.b,k=[],l=d.u>>>f.g;0<g&&l<f.b.length;)k.push(f.b[l++]),g-=f.j;f=d.F;d=d.b;g=0;for(e>>>=f.g;0<d&&e<f.b.length;){l=k[g++];if(!l)break;f.b[e++]=l;d-=f.j}}a.w||delete a.g}}}y(a)}}h.Jg=function(a){return this.g[a-this.u]};h.$h=function(){};sb(function(){for(var a=x(document,w,"rom"),b=0;b<a.length;b++){var c=a[b],d=wa(c),d=new Bh(d);xa(d,c)}});
function Eh(a){u.call(this,"RAM",a);this.ga=this.g=null;this.i=+a.addr;this.j=+a.size;this.ya=a.load;this.xa=a.exec;null!=this.ya&&(this.ya=+this.ya);null!=this.xa&&(this.xa=+this.xa);this.u=this.B=!1;this.b=a.file;this.w=Pa(this.b);if(this.b){a=this.b;var b=Qa(this.w);"json"!=b&&"hex"!=b&&(a=eb()+"/api/v1/dump?file="+this.b+"&format=bytes&decimal=true");var c=this;cb(a,null,!0,function(a,b,f){f?(c.T("Unable to load RAM resource (error "+f+": "+a+")"),c.b=null):(na(c.vb,a,b),(a=db(a,b))?(c.g=a.Z,
c.ga=a.ga,null==c.ya&&(c.ya=a.ya),null==c.xa&&(c.xa=a.xa)):c.b=null);Fh(c)})}}p(Eh,u);Eh.prototype.za=function(a,b,c,d){this.F=b;this.f=c;this.D=d;Fh(this)};Eh.prototype.Ca=function(a,b){this.ga&&(this.D&&Dh(this.D,this.id,this.i,this.j,this.ga),delete this.ga);b||this.reset();return!0};Eh.prototype.Ba=function(){return!0};
function Fh(a){if(a.F&&(!a.u&&a.j&&(Yc(a.F,a.i,a.j,id)?a.u=!0:a.j=0),!Ga(a))){if(!a.u)v("No RAM allocated");else if(a.b){if(!a.g)return;Gh(a,a.g,a.ya,a.xa,a.i)?a.status('Loaded image "'+a.w+'"'):a.T('Error loading image "'+a.w+'"')}a.B=!0;y(a)}}
Eh.prototype.reset=function(){if(this.u&&!this.B){for(var a=this.F,b=this.i,c=this.j,d=b&a.i,b=b>>>a.g;0<c&&b<a.b.length;){var e=a.b[b],f=c,g=0,k,d=d||0,g=(g||0)&255;void 0===f&&(f=e.size);if(Gb&&e.g)for(k=d;f--&&k<e.g.length;k++)e.g[k]=g;else for(k=d;f--&&k<e.size;k++)e.F(d,g,e.K+d);c-=a.j;b++;d=0}this.g&&Gh(this,this.g,this.ya,this.xa,this.i,!this.D)}this.B=!1};
function Gh(a,b,c,d,e,f){var g=!1,k=!1;if(null==c)for(var l=0;l<b.length-1;){var m=b[l]&255|(b[l+1]&255)<<8;if(m)if(m&255){var n=l;if(1!=m){C(a,"invalid signature ("+Oa(m)+") at offset "+Oa(n),4096);break}if(l+6>=b.length){C(a,"invalid block at offset "+Oa(n),4096);break}for(var l=l+2,q=b[l++]&255|(b[l++]&255)<<8,t=b[l++]&255|(b[l++]&255)<<8,m=m+((q&255)+(q>>8)+(t&255)+(t>>8)),r=l,D=q-=6;0<q&&l<b.length;)m+=b[l++]&255,q--;if(q||l>=b.length){C(a,"insufficient data for block at offset "+Oa(n),4096);
break}m+=b[l++]&255;if(m&255){C(a,"invalid checksum ("+F(m,2,!0)+") for block at offset "+Oa(n),4096);break}if(D)for(C(a,"loading "+Oa(D)+" bytes at "+Oa(t)+"-"+Oa(t+D),4096);D--;)gd(a.F,t++,b[r++]&255);else t&1?g=!0:null==d&&(d=t),null!=d&&C(a,"starting address: "+Oa(d),4096);k=!0}else l++;else l+=2}if(!k&&(null==c&&(c=e),null!=c)){for(e=0;e<b.length;e++)gd(a.F,c+e,b[e]);k=!0}if(k){if(null==d||g)a.f.ca(),f=!1;null!=d&&ze(a.f,d,f)}return k}
sb(function(){for(var a=x(document,w,"ram"),b=0;b<a.length;b++){var c=a[b],d=wa(c),d=new Eh(d);xa(d,c)}});function Hh(a){u.call(this,"Keyboard",a,1024);y(this)}p(Hh,u);Hh.prototype.va=function(){return!1};Hh.prototype.za=function(a,b,c,d){this.J=a;this.f=c;this.D=d};sb(function(){for(var a=x(document,w,"keyboard"),b=0;b<a.length;b++){var c=a[b],d=wa(c),d=new Hh(d);xa(d,c)}});
function Ih(a){u.call(this,"SerialPort",a,1048576);this.M=+a.adapter;this.S=+a.baudReceive||9600;this.Y=+a.baudTransmit||9600;this.L=a.upperCase;"string"==typeof this.L&&(this.L="true"==this.L);this.u=this.w=null;this.W=+a.tabSize;this.U=+a.charBOL;this.B=0;this.I=!0;this.P=this.N=null;this.R=this.X=-1;this.C=this.b=this.g=0;this.i=[];var b=a.binding;if("console"==b)this.w="";else{var c;a=Jh;b&&(void 0===c&&(c="Panel"),(c=va(c,this.id))&&(b=c.H[b])&&this.va(null,a,b))}this.j=this.G=this.O=null;this.exports=
{connect:this.ue,receiveData:this.Oc,receiveStatus:this.fh,setConnection:this.jh}}p(Ih,u);h=Ih.prototype;
h.va=function(a,b,c){var d=this;switch(b){case Jh:return this.H[b]=this.u=c,c.onkeydown=function(a){a=a||window.event;var b=0,c=a.keyCode;8==c?b=a.altKey?la.Nd:la.cc:46==c?b=la.Nd:a.ctrlKey&&c>=la.Jd&&c<=la.xf&&(b=c-(la.Jd-la.Fe));b&&(a.preventDefault&&a.preventDefault(),d.Oc(b));return!0},c.onkeypress=function(a){a=a||window.event;if(!a.metaKey){var b=a.which||a.keyCode;a.altKey&&b==la.He&&(b=la.Ge);d.Oc(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.Oc(a.getData("Text"))},c.removeAttribute("readonly"),!0}return!1};
h.za=function(a,b,c,d){this.J=a;this.F=b;this.f=c;this.D=d;var e=this;this.P=pd(this.f,this.M?-1:48,4,1048576);this.R=md(this.f,function(){var a;a=-1;e.i.length&&(a=e.i.shift()&255,C(e,"receiveByte("+F(a,2,!0)+")"),e.L&&97<=a&&122>a&&(a-=32),od(e.f,e.R,1E3/Math.round(e.S/10)));0<=a&&(e.C=a,e.b&128?e.C|=49152:e.b|=128,e.b&64&&nd(c,e.P))});this.N=pd(this.f,this.M?-1:52,4,1048576);this.X=md(this.f,function(){e.g|=128;e.g&64&&nd(c,e.N)});dc(b,this,Kh,this.M?64832+8*(this.M-1)-65392:0);fc(b,this.reset.bind(this));
y(this)};h.ue=function(a){if(!this.j){var b=ge(this.J,"connection");if(b){var c=b.split("->");if(2==c.length){var d=Za(c[0]);if(d!=this.Mb)return;c=Za(c[1]);if(this.j=ua(c)){var e=this.j.exports;if(e){var f=e.connect;f&&f.call(this.j,this.I);if(this.G=e.receiveData){this.I=a;this.O=e.receiveStatus;this.status("Connected "+this.vb+"."+d+" to "+c);return}}}}this.status("Unable to establish connection: "+b)}}};
h.Ca=function(a,b){if(!b)if(this.ue(this.I),!a)this.reset();else if(!this.restore(a))return!1;return!0};h.Ba=function(a){return a?this.save():!0};h.reset=function(){Lh(this)};h.save=function(){var a=new G(this);a.set(0,[this.C,this.b,this.g,this.i]);return a.data()};h.restore=function(a){return Lh(this,a[0])};function Lh(a,b){b||(b=[0,8192,128,a.i]);b=ia(b);a.C=b.next().value;a.b=b.next().value;a.g=b.next().value;a.i=b.next().value;return!0}
h.Oc=function(a){if("number"==typeof a)this.i.push(a);else if("string"==typeof a)for(var b=0,c,d=0;d<a.length;d++){c=b;b=a.charCodeAt(d);if(10==b){if(13==c)continue;b=13}this.i.push(b)}else this.i=this.i.concat(a);od(this.f,this.R,1E3/Math.round(this.S/10));return!0};h.fh=function(a){var b=this.b;this.b&=-12289;a&32&&(this.b|=8192);a&256&&(this.b|=4096);b!=this.b&&(this.b|=32768,this.b&32&&nd(this.f,this.P))};h.jh=function(a,b){return this.j?!1:(this.j=a,this.G=b,!0)};
h.wg=function(){var a=this.b&65534;this.b&=-32769;return a};h.Nh=function(a){var b=a^this.b;this.b=this.b&-112|a&111;this.O&&b&6&&(b=0,b=this.I?b|(a&4?32:0)|(a&2?320:0):b|(a&4?16:0)|(a&2?1048576:0),this.O.call(this.j,b))};h.vg=function(){this.b&=-129;return this.C};h.Mh=function(){};h.eh=function(){return this.g};h.vi=function(a){this.g&128&&(a&64?nd(this.f,this.N):td(this.f,this.N));this.g=this.g&-70|a&69};h.dh=function(){return 0};
h.ui=function(a){a&=255;this.G&&this.G.call(this.j,a);a&=127;if(this.u)if(13==a)this.B=0;else if(8==a)this.u.value=this.u.value.slice(0,-1),0<this.B&&this.B--;else{if(a){var b;13!=a&&10!=a&&(b=$a[a]);b=b?"<"+b+">":String.fromCharCode(a);var c=b.length;32>a&&1==c&&(c=0);9==a&&(a=this.W||8,c=a-this.B%a,this.W&&(b=Ya("",c)));this.U&&!this.B&&c&&(b=String.fromCharCode(this.U)+b);this.u.value+=b;this.u.scrollTop=this.u.scrollHeight;this.B+=c}}else if(null!=this.w){if(10==a||1024<=this.w.length)this.v(this.w),
this.w="";10!=a&&(this.w+=String.fromCharCode(a))}od(this.f,this.X,1E3/Math.round(this.Y/10));this.g&=-129};var Jh="buffer",Mh={},Kh=(Mh[65392]=[null,null,Ih.prototype.wg,Ih.prototype.Nh,"RCSR"],Mh[65394]=[null,null,Ih.prototype.vg,Ih.prototype.Mh,"RBUF"],Mh[65396]=[null,null,Ih.prototype.eh,Ih.prototype.vi,"XCSR"],Mh[65398]=[null,null,Ih.prototype.dh,Ih.prototype.ui,"XBUF"],Mh);sb(function(){for(var a=x(document,w,"serial"),b=0;b<a.length;b++){var c=a[b],d=wa(c),d=new Ih(d);xa(d,c)}});
function Dd(a){u.call(this,"PC11",a,4096);this.N=Nh(this,a.autoMount);this.g=0;this.U=+a.baudReceive||3600;this.w=this.b=0;this.L=32768;this.i=this.R=0;this.C=[];this.B=Oh;this.j=Ph;this.M=this.u="";this.Z=this.ya=this.xa=null;this.P=-1;this.O=!mb("Mobi")&&window&&"FileReader"in window;this.G=null;this.S=-1;this.I=null}p(Dd,u);function Nh(a,b){if(b&&"string"==typeof b)try{b=eval("("+b+")")}catch(c){v(a.type+" auto-mount error: "+c.message+" ("+b+")"),b=null}return b||{}}h=Dd.prototype;
h.va=function(a,b,c){var d=this,e=Ph;switch(b){case "listTapes":return this.H[b]=c,c.onchange=function(){var a=d.H.descTape,b=c.options[c.selectedIndex];if(a&&b){var e={};if(b=b.getAttribute("data-value"))try{e=eval("("+b+")")}catch(l){v("PC11 option error: "+l.message)}b=e.desc;void 0===b&&(b="");e=e.href;void 0!==e&&(b='<a href="'+e+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descTape":return this.H[b]=c,!0;case "readTape":e=Qh;case "loadTape":return e||(e=Rh),this.H[b]=c,c.onclick=
function(){var a=d.H.listTapes;a&&Sh(d,a.options[a.selectedIndex].text,a.value,e)},!0;case "mountTape":if(!this.O){c.parentNode.removeChild(c);break}this.H[b]=c;c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length});c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Sh(d,Pa(b,!0),b,Rh,a)}return!1};return!0;case Th:return this.H[b]=c,!0}return!1};
h.za=function(a,b,c,d){this.J=a;this.F=b;this.f=c;this.D=d;this.I=Uh(a);var e=this;if(a=Nh(this,ge(this.J,"autoMount")))for(var f in a)"PTR"==f&&(this.N[f]=a[f]);this.G=pd(this.f,56,4,4096);this.S=md(this.f,function(){1!=(e.b&32769)||e.b&128||(e.i<e.C.length?(e.w=e.C[e.i]&255,z(e)&&C(e,e.type+".advanceReader("+e.i+"): "+F(e.w,2,!0),!0),e.i++,Vh(e,e.i/e.C.length*100)):e.b|=32768,e.b|=128,e.b&=-2049,e.b&64&&nd(e.f,e.G))});dc(b,this,Wh);fc(b,this.reset.bind(this));Xh(this,"None",Oh,!0);this.O&&Xh(this,
"Local Tape",Yh);Xh(this,"Remote Tape",Zh);$h(this)||y(this)};h.Ca=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};h.Ba=function(a){return a?this.save():!0};h.reset=function(){this.b&=-2241;this.w=0};function $h(a){a.g=0;var b=a.N.PTR;if(b){var c=b.path||"";if(!(b=b.name))a:{if((b=a.H.listTapes)&&b.options)for(var d=0;d<b.options.length;d++){var e=b.options[d];if(e.value==c){b=e.text;break a}}b=Pa(c,!0)}c&&b?ai(a,b,c,Rh,!0):bi(a)}return!!a.g}
function Sh(a,b,c,d,e){if(c)if(c==Yh)a.T('Use "Choose File" and "Mount" to select and load a local tape.');else{if(c==Zh){c=window.prompt("Enter the URL of a remote tape image.","")||"";if(!c)return;b=Pa(c);a.status("Attempting to load "+c+' as "'+b+'"');a.B=Zh}else a.B=c;ai(a,b,c,d,!1,e)}else ci(a,!1)}
function ai(a,b,c,d,e,f){var g=-1;if(a.u.toLowerCase()!=c.toLowerCase()||a.j!=d)g++,ci(a,!0),a.A.eb?a.T("PC11 busy"):(e&&(a.g++,z(a)&&C(a,"auto-loading tape: "+b)),di(a,b,c,d,f)?g++:a.A.eb=!0);g&&ei(a,a.M,a.u,a.j,a.Z,a.ya,a.xa)}
function di(a,b,c,d,e){var f=c;if(e){var g=new FileReader;g.onload=function(){var e=g.result;e&&(e=new Uint8Array(e,0,e.byteLength),ei(a,b,c,d,e),a.B=Yh);a.A.eb=!1;bi(a)};g.readAsArrayBuffer(e);return!1}0>c.indexOf("/api/v1/dump")&&(e=Qa(c),f="json"==e||"gz"==e?encodeURI(c):eb()+"/api/v1/dump?path="+encodeURIComponent(c)+"&format=json");return!!cb(f,null,!0,function(e,f,g){var k=0>g&&!!a.J&&!a.J.A.ba;g?a.T('Unable to load tape "'+b+'" (error '+g+": "+e+")",k):(na(a.vb,e,f),(e=db(e,f))&&ei(a,b,c,d,
e.Z,e.ya,e.xa));a.A.eb=!1;a.g&&(a.g--,a.g||y(a));bi(a)})}function Xh(a,b,c,d){if((a=a.H.listTapes)&&a.options){for(var e=0;e<a.options.length;e++)if(a.options[e].value==c)return;e=document.createElement("option");e.text=b;e.value=c;d&&a.childNodes[0]?a.insertBefore(e,a.childNodes[0]):a.appendChild(e)}}
function bi(a){var b=a.H.listTapes;if(b&&b.options){a=a.B||a.u;for(var c=0;c<b.options.length;c++)if(b.options[c].value==a){b.selectedIndex!=c&&(b.selectedIndex=c);break}c==b.options.length&&(b.selectedIndex=0)}}function Vh(a,b){b|=0;if(b!==a.P){var c=a.H[Th];c&&(c=(c=x(c,fi))&&c[0])&&c.style&&(c.style.width=b+"%");a.P=b}}
function ei(a,b,c,d,e,f,g){a.M=b;a.u=c;a.j=d;a.Z=e;a.ya=f;a.xa=g;d==Qh?a.I&&Gh(a.I,e,f,g,null,!1)?a.status('Read tape "'+b+'"'):a.T('No valid memory address for tape "'+b+'"'):(a.i=0,a.C=e,a.b&=-32769,a.status('Loaded tape "'+b+'" ('+e.length+" bytes)"),Vh(a,0))}function ci(a,b){if(a.u||!1===b)a.M="",a.u="",b||(a.j&&a.status(a.j==Rh?"tape detached":"tape unloaded"),a.B=Oh,a.j=Ph,bi(a))}h.save=function(){return(new G(this)).data()};h.restore=function(){return!0};h.pg=function(){return this.b&65534};
h.Gh=function(a){a&1&&(this.b&32768?(a&=-2,this.b&64&&nd(this.f,this.G)):(this.b&=-129,this.b|=2048,this.w=0,od(this.f,this.S,1E3/Math.round(this.U/10))));this.b=this.b&-66|a&65};h.og=function(){this.b&=-129;this.b|=2048;return this.w};h.Fh=function(){};h.ng=function(){return this.L};h.Eh=function(a){this.L=this.L&-65|a&64};h.mg=function(){return this.R};h.Dh=function(a){this.R=a&255};
var Oh="",Yh="?",Zh="??",Ph=0,Rh=1,Qh=2,Th="readProgress",fi="pcjs-progress-bar",gi={},Wh=(gi[65384]=[null,null,Dd.prototype.pg,Dd.prototype.Gh,"PRS"],gi[65386]=[null,null,Dd.prototype.og,Dd.prototype.Fh,"PRB"],gi[65388]=[null,null,Dd.prototype.ng,Dd.prototype.Eh,"PPS"],gi[65390]=[null,null,Dd.prototype.mg,Dd.prototype.Dh,"PPB"],gi);
function hi(a,b,c){u.call(this,"Disk",{id:a.vb+".disk"+F(++ii,4)},8192);this.controller=a;this.J=a.J;this.D=a.D;this.u=b;this.Xa=b.name;this.Oa=this.Fd="";this.zd=b.zd;this.aa=this.ja=this.ea=this.ua=this.mode=0;this.b=[];this.i=null;this.j=!1;ji(this,c,b.aa,b.ja,b.ea,b.ua);this.g=this.w=null;y(this)}p(hi,u);h=hi.prototype;h.za=function(a,b,c,d){this.D=d};
function ji(a,b,c,d,e,f){a.mode=b;a.aa=c;a.ja=d;a.ea=e;a.ua=f;a.b=[];if("preload"!=a.mode){b=Array(a.aa);for(c=0;c<b.length;c++){d=Array(a.ja);for(e=0;e<d.length;e++){f=Array(a.ea);for(var g=1;g<=f.length;g++)f[g-1]=ki(null,c,e,g,a.ua,0);d[e]=f}b[c]=d}a.b=b}a.i=null}
function li(a,b,c,d,e){var f=c;if(a.g)return!0;a.Xa=b;a.Oa=c;a.Fd=Pa(c);a.g=e;a.w=a.controller;if(d){var g=new FileReader;g.onload=function(){var b=g.result,c,d=b?b.byteLength:0,e=ka[d];if(e){a.aa=e[0];a.ja=e[1];a.ea=e[2];a.ua=e[3]||512;c=a.ua>>2;var f=e=0,b=new DataView(b,0,d);a.b=Array(a.aa);for(d=0;d<a.b.length;d++)for(var t=a.b[d]=Array(a.ja),r=0;r<t.length;r++)for(var D=t[r]=Array(a.ea),A=0;A<D.length;A++){for(var B=ki(null,d,r,A+1,a.ua,0),J=B.data,vb=0;vb<c;vb++,f+=4)var Cd=J[vb]=b.getInt32(f,
!0),e=e+Cd&-1;B.La=c;D[A]=B}a.i=e;c=a}else a.T("Unrecognized disk format ("+d+" bytes)");a.g&&(a.g.call(a.controller,a.u,c,a.Xa,a.Oa),a.g=null)};g.readAsArrayBuffer(d);return!0}0>c.indexOf("/api/v1/dump")&&(b=Qa(c),"json"==b||"gz"==b?f=encodeURI(c):(d="path",e="&mbhd=10",!c.indexOf("http:")||!c.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(b)?(d="disk",e="&mbhd=0"):Ra(c,"/")&&(d="dir"),f=eb()+"/api/v1/dump?"+d+"="+encodeURIComponent(c)+(a.zd?"":e)+"&format=json"));return!!cb(f,
null,!0,function(b,c,d){mi(a,b,c,d)})}
function mi(a,b,c,d){var e=null,f=0>d&&!!a.J&&!a.J.A.ba;a.j=!1;if(d)a.controller.T('Unable to load disk "'+a.Xa+'" (error '+d+": "+b+")",f);else{na(a.controller.vb,b,c);try{if(0<Pa(a.Fd,!0).toLowerCase().indexOf("-readonly"))a.j=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.j=!0)}var k;"<"==c.substr(0,1)?k=["Missing disk image: "+a.Xa]:k=0>c.indexOf("0x")&&'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+
c+")");if(k.length)if(1==k.length)v(k[0]);else{a.aa=k.length;a.ja=k[0].length;a.ea=k[0][0].length;var l=k[0][0][0];a.ua=l&&l.length||512;for(d=c=0;d<a.aa;d++)for(f=0;f<a.ja;f++)for(g=0;g<a.ea;g++)if(l=k[d][f][g]){var m=l.length;void 0===m&&(m=l.length=512);var m=m>>2,n=l.pattern;void 0===n&&(n=l.pattern=0);var q=l.data;if(void 0===q){var t=l.bytes;if(void 0!==t&&t.length){for(var r=m<<2,D=t.length;D<r;D++)t[D]=n;ni(l,t)}else q=[],n=l.pattern=n|n<<8|n<<16|n<<24,l.data=q;delete l.bytes}ki(l,d,f);for(r=
0;r<q.length;r++)c=c+q[r]&-1}a.b=k;a.i=c;e=a}else v("Empty disk image: "+a.Xa)}catch(A){v("Disk image error ("+b+"): "+A.message)}}a.g&&(a.g.call(a.w,a.u,e,a.Xa,a.Oa),a.g=null)}function ki(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.zk=b;a.Ak=c;a.Va=a.La=0;a.fb=!1;return a}
h.seek=function(a,b,c,d,e){d=null;var f=this.u,g=this.b[a];if(g){var k=g[b];if(!k&&f.zf&&b<f.ja)for(k=g[b]=Array(f.Af),g=0;g<k.length;g++)k[g]=ki(null,a,b,g+1,f.ve,0);if(k){for(g=0;g<k.length;g++)if(k[g]&&k[g].sector==c){d=k[g];break}!d&&f.zf&&9==f.je&&(d=k[g]=ki(null,a,b,f.je,f.ve,0))}}e&&e(d,!1);return d};function ni(a,b){for(var c=0,d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e}
h.read=function(a,b){var c=-1;if(a&&b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c};h.write=function(a,b,c){if(this.j)return!1;if(b<a.length){if(c!=this.read(a,b,!0)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.La?f<a.Va?(a.La+=a.Va-f,a.Va=f):f>=a.Va+a.La&&(a.La+=f-(a.Va+a.La)+1):(a.Va=f,a.La=1);d[f]=d[f]&~(255<<b)|c<<b}return!0}return null};
function oi(a,b){var c=a.ja*a.ea,d=b/c|0;return d<a.aa?(b%=c,a.seek(d,b/a.ea|0,b%a.ea+1)):null}function pi(a,b,c){for(var d=1,e=0,f=0;d--;){var g=a.read(b,c++);if(0>g)break;e|=g<<f;f+=8}return e}
h.save=function(){var a=0,b=[];b[a++]=[this.Oa,this.i,this.aa,this.ja,this.ea,this.ua];if(!this.j)for(var c=this.b,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var g=c[d][e][f];if(g&&g.La){for(var k=[],l=0,m=g.Va,n=g.Va+g.La;m<n;)k[l++]=g.data[m++];b[a++]=[d,e,f,g.Va,k]}}return b};
h.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.b.length&&6<=e.length?ji(this,"local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.i&&e[1]!=this.i&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.i+")",b=-2));for(this.b.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],k=g[f++],l=g[f++],m=g[f++];if(k>=this.b.length||l>=this.b[k].length||m>=this.b[k][l].length){c="sector (CHS="+k+":"+l+":"+m+") out of range ("+
b+" changes applied)";b=-1;break}if(this.j){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(k=this.b[k][l][m]){for(l=k.data.length;l<e;)k.data[l++]=k.pattern;l=0;k.Va=e;for(k.La=f.length;e<g;)k.data[e++]=f[l++];b++}}}0>b&&-2!=b&&this.controller.T("Unable to restore disk '"+this.Xa+": "+c);return b};
h.toJSON=function(){var a;a=0;for(var b;b=oi(this,a++);)qi(b);a=JSON.stringify(this.b,function(a,b){if("file"!=a)return b});a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");a=a.replace(/(sector|length|data|pattern):/gm,'"$1":');return a=a.replace(/([\]}]),/gm,"$1,\n")};
function qi(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}var ii=0;function ri(a,b,c,d,e,f){u.call(this,a,b,c);this.N=si(this,b.autoMount);this.M=0;this.R=d;this.S=e;this.U=f;this.P=d.Zc;this.g=Array(this.P);this.O=!mb("Mobi")&&window&&"FileReader"in window;this.B=[];this.Qa=null;this.exports={bootDisk:this.le,loadDisk:this.Bd,selectDrive:this.ih,wait:this.mh}}p(ri,u);
function si(a,b){if(b&&"string"==typeof b)try{b=eval("("+b+")")}catch(c){v(a.type+" auto-mount error: "+c.message+" ("+b+")"),b=null}return b||{}}h=ri.prototype;
h.va=function(a,b,c){var d=this;switch(b){case "listDisks":return this.H[b]=c,c.onchange=function(){ti(d)},!0;case "descDisk":case "listDrives":return this.H[b]=c,c.onchange=function(){var a=Ka(c.value,10);null!=a&&ui(d,a)},!0;case "loadDisk":return this.H[b]=c,c.onclick=function(){d.Bd()},!0;case "bootDisk":return this.H[b]=c,c.onclick=function(){d.le()},!0;case "saveDisk":if(!this.O){c.parentNode.removeChild(c);break}this.H[b]=c;c.onclick=function(){var a=d.H.listDrives;if(a&&a.options&&d.g)if(a=
d.g[Ka(a.value,10)||0])if(a=a.da){var b;b="";for(var c=0,k;k=oi(a,c++);)for(var l=0,m=k.length;l<m;l++)b+=String.fromCharCode(pi(a,k,l));b=btoa(b);a=a.Fd.replace(".json",".img");c=null;b="data:application/octet-stream;base64,"+b;a&&(c=document.createElement("a"),"string"!=typeof c.download&&(c=null));c?(c.href=b,c.download=a,document.body.appendChild(c),c.click(),document.body.removeChild(c),a="Check your Downloads folder for "+a+"."):(window.open(b),a="Check your browser for a new window/tab containing the requested data"+
(a?" ("+a+")":"")+".");v(a)}else d.T("No disk loaded in drive.");else d.T("No disk drive selected.")};return!0;case "mountDisk":if(this.O)return this.H[b]=c,c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;d.Bd(Pa(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1};
h.za=function(a,b,c,d){this.J=a;this.F=b;this.f=c;this.D=d;if(a=si(this,ge(this.J,"autoMount")))for(var e in a)e.substr(0,2)==this.type.substr(0,2)&&(this.N[e]=a[e]);this.reset();this.Qa=pd(this.f,this.R.ud,this.R.qd,this.ha);dc(b,this,this.U);fc(b,this.reset.bind(this));Oi(this,"None",Qi,!0);this.O&&Oi(this,"Local Disk",Ri);Oi(this,"Remote Disk",Si);Ti(this)||y(this)};
h.Ca=function(a,b){if(!b){if(!a){if(this.reset(),this.J.M){this.B=[];for(a=0;a<this.g.length;a++)Ui(this,a,!0);Ti(this,!0)}}else if(!this.restore(a))return!1;if(a=this.H.listDrives){for(;a.firstChild;)a.removeChild(a.firstChild);a.value="";for(b=0;b<this.P;b++){var c=document.createElement("option");c.value=b;c.text=this.g[b].Qc||"---";a.appendChild(c)}0<this.P&&(a.value="0",ui(this,0))}}return!0};h.Ba=function(a){return a?this.save():!0};h.reset=function(){this.Cb();Vi(this)};
h.save=function(){var a=new G(this);a.set(0,this.Rc());a.set(1,Wi(this));a.set(2,Xi(this));return a.data()};h.restore=function(a){var b=!0;this.Cb(a[0])||(b=!1);var c=a[1];c&&(this.B=c);Vi(this,a[2])||(b=!1);return b};h.Cb=function(){return!0};h.Rc=function(){return[]};
function Vi(a,b){for(var c=0;c<a.g.length;c++){var d=a.g[c];void 0===d&&(d=a.g[c]={});var e=a,f=d,d=c,g=a.S,k=b&&b[c],l=0;f.Tb=d;f.name=e.Mb;f.Mc=f.Pb=!1;f.ic=null;f.zd=!0;f.Qc=g[l++]+d;f.aa=g[l++];f.ja=g[l++];f.ea=g[l++];f.ua=g[l++];f.If=g[l++];f.Jf=g[l++];f.Kf=g[l++];f.Bf=g[l++];f.status=g[l++];f.tk=0;f.sk=0;f.je=1;f.Af=f.ea;f.ve=f.ua;f.Bk=0;f.Ik=null;f.da||(f.Oa="");k&&(l=k[1],g=k[2],k[0]?(f=l,k=g,g=e.g[d],Ui(e,d,!0),g.Pb=!0,d=new hi(e,g,"preload"),e.oe(g,d,f,k,!0)):Yi(e,d,l,g,!0)?f.da&&g&&Zi(e,
l,g,f.da):y(e,!1))}return!0}function Xi(a){for(var b=[],c=0;c<a.g.length;c++){var d=a.g[c];b.push([d.Pb,d.Xa,d.Oa])}return b}function Wi(a){for(var b=0;b<a.g.length;b++){var c=a.g[b];c.da&&$i(a,c.Oa,c.da)}return a.B}
function Ti(a,b){b||(a.M=0);for(var c in a.N){var d=a.N[c],e=d.path||"",f;if(!(f=d.name))a:{if((f=a.H.listDisks)&&f.options)for(var g=0;g<f.options.length;g++){var k=f.options[g];if(k.value==e){f=k.text;break a}}f=Pa(e,!0)}if(e&&f&&(g=-1,c&&(g=c.charCodeAt(c.length-1)-48,0>g||9<g)&&(g=-1),0<=g&&g<a.g.length)){!Yi(a,g,f,e,!0)&&b&&y(a,!1);continue}a.T("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")")}return!!a.M}
h.Bd=function(a,b,c){if(!a&&!b){var d=this.H.listDisks;d&&d.options&&(a=d.options[d.selectedIndex].text,b=d.value)}d=(d=this.H.listDrives)&&Ka(d.value,10);if(void 0===d||0>d||d>=this.g.length)return this.T("Unable to load the selected drive"),!1;if(!b)return Ui(this,d),!0;if(b==Ri)return this.T('Use "Choose File" and "Mount" to select and load a local disk.'),!1;if(b==Si){b=window.prompt("Enter the URL of a remote disk image.","")||"";if(!b)return!1;a=Pa(b);this.status("Attempting to load "+b+' as "'+
a+'"')}Yi(this,d,a,b,!1,c);return!0};h.le=function(){var a,b=this.H.listDrives,b=b&&Ka(b.value,10);if(null==b||0>b||b>=this.g.length||!(a=this.g[b]))return this.T("Unable to boot the selected drive"),!1;if(!a.da)return this.T("Load a disk into the drive first"),!1;ze(this.f,0,!0,b);return(a=this.Ub(a,a.If,a.Jf,a.Kf,a.Bf,0,2))?(this.T("Unable to read the boot sector ("+a+")"),!1):!0};
function Yi(a,b,c,d,e,f){var g=-1,k=a.g[b];k.Oa.toLowerCase()!=d.toLowerCase()&&(g++,Ui(a,b,!0),k.Mc?a.T(a.type+" busy"):(k.Mc=!0,e&&(k.yd=!0,a.M++,z(a)&&C(a,"auto-loading disk: "+c)),k.Pb=!!f,li(new hi(a,k,"preload"),c,d,f,a.oe)&&g++));return g}
h.oe=function(a,b,c,d,e){a.Mc=!1;b&&(b.aa>a.aa||b.ja>a.ja)&&(this.T('Disk "'+c+'" too large for drive '+(this.g[a.Tb].Qc||"---")),b=null);b?(a.da=b,a.Xa=c,a.Oa=d,this.we(a.Tb),Zi(this,c,d,b),this.T('Loaded disk "'+c+'" in drive '+(this.g[a.Tb].Qc||"---"),a.yd||e),this.J&&qe(this.J)):a.Pb=!1;a.yd&&(a.yd=!1,--this.M||y(this));ui(this,a.Tb);a.ic&&(a.ic(),a.ic=null)};
function Oi(a,b,c,d){if((a=a.H.listDisks)&&a.options){for(var e=0;e<a.options.length;e++)if(a.options[e].value==c)return;e=document.createElement("option");e.text=b;e.value=c;d&&a.childNodes[0]?a.insertBefore(e,a.childNodes[0]):a.appendChild(e)}}
function ui(a,b,c){var d=!1;if(0<=b&&b<a.g.length){var e=a.g[b],f=a.H.listDisks;a=a.H.listDrives;if(f&&a&&f.options&&a.options){if(c)for(c=0;c<a.options.length;c++)if(Ka(a.options[c].value,10)==e.Tb){a.selectedIndex!=c&&(a.selectedIndex=c);d=!0;break}c=Ka(a.value,10);e=e.Pb?Ri:e.Oa;if(!isNaN(c)&&c==b){for(c=0;c<f.options.length;c++)if(f.options[c].value==e){f.selectedIndex!=c&&(f.selectedIndex=c);d=!0;break}c==f.options.length&&(f.selectedIndex=0)}}}return d}
h.ih=function(a){var b=this.H.listDrives;if(b&&b.options)for(var c=b.options.length,d=0;d<c;d++)if(b.options[d].textContent==a){var e=Ka(b.options[d].value,10);if(0<=e)return ui(this,e,!0)}return!1};
function ti(a){var b=a.H.listDisks,c=a.H.descDisk,d=b.options&&b.options[b.selectedIndex];if(c&&d){b={};if(d=d.getAttribute("data-value"))try{b=eval("("+d+")")}catch(e){v(a.type+" option error: "+e.message)}a=b.desc;void 0===a&&(a="");b=b.href;void 0!==b&&(a='<a href="'+b+'" target="_blank">'+a+"</a>");c.innerHTML=a}}h.mh=function(a){for(var b=0;b<this.g.length;b++){var c=this.g[b];if(c&&c.Mc)return c.ic||(c.ic=a),!1}return!0};
function Ui(a,b,c){var d=a.g[b];if(d.da||!1===c)$i(a,d.Oa,d.da),d.Xa="",d.Oa="",d.da=null,d.Pb=!1,c||(a.T("Drive "+(a.g[b].Qc||"---")+" unloaded",c),ui(a,b))}function Zi(a,b,c,d){var e;for(e=0;e<a.B.length;e++)if(a.B[e][1]==c){d.restore(a.B[e][2]);return}a.B[e]=[b,c,[]]}function $i(a,b,c){var d;for(d=0;d<a.B.length;d++)if(a.B[d][1]==b){a.B[d][2]=c.save();break}}h.we=function(){};h.Ub=function(){return-1};h.Uc=function(){return-1};var Qi="",Ri="?",Si="??";
function N(a){ri.call(this,"RK11",a,65536,Nb,Nb.Gc,aj);this.G=this.i=this.b=this.w=this.u=this.j=this.C=0}p(N,ri);h=N.prototype;h.Cb=function(a){a||(a=[bj.Gc|bj.de|bj.$d,0,R.Za,0,0,0,0]);a=ia(a);this.G=a.next().value;this.i=a.next().value;this.b=a.next().value;this.w=a.next().value;this.u=a.next().value;this.j=a.next().value;this.C=a.next().value;return!0};h.Rc=function(){return[this.G,this.i,this.b,this.w,this.u,this.j,this.C]};
h.Ub=function(a,b,c,d,e,f,g,k,l){var m=0;a=a.da;var n=null,q;a||(m=S.Ud,e=0);for(;e;){if(!n){if(b>=a.aa){m=S.Ec;break}n=a.seek(b,c,d+1);if(!n){m=S.ce;break}q=0;++d>=a.ea&&(d=0,++c>=a.ja&&(c=0,++b))}var t,r;if(0>(t=a.read(n,q++))||0>(r=a.read(n,q++))){m=S.Fc;break}if(!k&&(Ac(this.F,Oe(this.f,f),t|r<<8),ld(this.F))){m=S.ec;break}q>=a.ua&&(n=null);f+=g;e--}return l?l(m,b,c,d,e,f):m};
h.Uc=function(a,b,c,d,e,f,g,k,l){var m=0;a=a.da;var n=null,q;a||(m=S.Ud,e=0);for(;e;){var t=Cc(this.F,Oe(this.f,f));if(ld(this.F)){m=S.ec;break}if(!n){if(b>=a.aa){m=S.Ec;break}n=a.seek(b,c,d+1,!0);if(!n){m=S.ce;break}q=0;++d>=a.ea&&(d=0,++c>=a.ja&&(c=0,++b))}if(k){var r,D;if(0>(r=a.read(n,q++))||0>(D=a.read(n,q++))){m=S.Fc;break}if(t!=(r|D<<8)){m=S.ge;break}}else if(!a.write(n,q++,t&255)||!a.write(n,q++,t>>8)){m=S.Fc;break}q>=a.ua&&(n=null);f+=g;e--}return l?l(m,b,c,d,e,f):m};
h.Ze=function(a,b,c,d,e,f){this.u=f&65535;this.b=this.b&~R.Jb|f>>16-R.ma.Jb&R.Jb;this.w=65536-e&65535;this.j=this.j&~cj.rd|d&cj.rd;this.i|=a;dj(this);return!0};function dj(a){a.b&=~R.hb;a.i&&(a.i|=S.Je,a.b|=R.hb,a.i&S.ed&&(a.b|=R.ed),z(a)&&C(a,a.type+": ERROR: "+E(a.i)))}h.Bg=function(){return this.G};h.Sh=function(){};h.Cg=function(){return this.i};h.Th=function(){};h.yg=function(){return this.b&R.fc};
h.Ph=function(a){this.b=this.b&~R.Sa|a&R.Sa;if(this.b&R.dc){a=!0;var b,c,d="",e=(this.j&cj.sb)>>cj.ma.sb,f=this.g[e],g,k,l,m,n,q;this.b&=~(R.Za|R.sd);this.i&=~S.qf;switch(c=this.b&R.wa){case ej.Ee:z(this)&&C(this,this.type+": CRESET("+e+")",!0);this.i=this.j=0;this.b=R.Za;break;case ej.Ue:d="RCHK";case ej.tb:d||(d="READ"),b=this.Ub;case ej.vd:d||(d="WCHK");case ej.hc:d||(d="WRITE");b||(b=this.Uc);g=(this.j&cj.bc)>>cj.ma.bc;k=(this.j&cj.hd)>>cj.ma.hd;l=this.j&cj.rd;m=65536-this.w&65535;n=(this.b&R.Jb)<<
16-R.ma.Jb|this.u;q=this.b&R.Qe?0:2;z(this)&&C(this,this.type+": "+d+"("+g+":"+k+":"+l+") "+E(n)+"--"+E(n+(m<<1)),!0,!0);if(g>=f.aa){this.i|=S.Ec;break}if(l>=f.ea){this.i|=S.Fc;break}a=b.call(this,f,g,k,l,m,n,q,c>=ej.vd,this.Ze.bind(this));break;case ej.Kc:g=(this.j&cj.bc)>>cj.ma.bc;z(this)&&C(this,this.type+": SEEK("+g+")",!0);g<f.aa?this.b|=R.sd:this.i|=S.Ec;break;case ej.Ke:z(this)&&C(this,this.type+": DRESET("+e+")");this.i=this.j=0;this.b=R.Za|R.sd;break;default:z(this)&&C(this,this.type+": UNSUPPORTED("+
c+")")}this.G=f.status|(f.da?bj.Ea:0)|e<<bj.ma.kd|this.j&bj.pf;dj(this);a&&(this.b&=~R.dc,this.b|=R.Za,this.b&R.Ib&&nd(this.f,this.Qa))}};h.Dg=function(){return this.w};h.Uh=function(a){this.w=a};h.xg=function(){return this.u};h.Oh=function(a){this.u=a};h.zg=function(){return this.j};h.Qh=function(a){this.j=a};h.Ag=function(){return this.C};h.Rh=function(a){this.C=a};
var bj=Nb.Hc,S=Nb.bf,R=Nb.$e,cj=Nb.af,ej=Nb.wa,fj={},aj=(fj[65280]=[null,null,N.prototype.Bg,N.prototype.Sh,"RKDS"],fj[65282]=[null,null,N.prototype.Cg,N.prototype.Th,"RKER"],fj[65284]=[null,null,N.prototype.yg,N.prototype.Ph,"RKCS"],fj[65286]=[null,null,N.prototype.Dg,N.prototype.Uh,"RKWC"],fj[65288]=[null,null,N.prototype.xg,N.prototype.Oh,"RKBA"],fj[65290]=[null,null,N.prototype.zg,N.prototype.Qh,"RKDA"],fj[65294]=[null,null,N.prototype.Ag,N.prototype.Rh,"RKDB"],fj);
function Ed(a){ri.call(this,"RL11",a,131072,Ob,Ob.cf,gj);this.b=this.C=this.i=this.j=this.w=this.u=0}p(Ed,ri);h=Ed.prototype;h.Cb=function(a){a||(a=[U.Ea|U.Za,0,0,0,0,0]);a=ia(a);this.b=a.next().value;this.C=a.next().value;this.i=a.next().value;this.j=a.next().value;this.w=a.next().value;this.u=a.next().value;return!0};h.Rc=function(){return[this.b,this.C,this.i,this.j,this.w,this.u]};
h.Ub=function(a,b,c,d,e,f,g,k,l){g=0;a=a.da;k=null;var m;a||(g=hj.$a,e=0);for(;e;){if(!k){k=a.seek(b,c,d+1);if(!k){g=hj.$a;break}m=0}var n,q;if(0>(n=a.read(k,m++))||0>(q=a.read(k,m++))){g=hj.$a;break}Ac(this.F,Oe(this.f,f),n|q<<8);if(ld(this.F)){g=hj.ec;break}f+=2;e--;if(m>=a.ua&&(k=null,++d>=a.ea&&(d=0,++c>=a.ja&&(c=0,++b>=a.aa)))){g=hj.$a;break}}return l?l(g,b,c,d,e,f):g};
h.Uc=function(a,b,c,d,e,f,g,k,l){g=0;a=a.da;k=null;var m;a||(g=hj.$a,e=0);for(;e;){var n=Cc(this.F,Oe(this.f,f));if(ld(this.F)){g=hj.ec;break}f+=2;e--;if(!k){k=a.seek(b,c,d+1,!0);if(!k){g=hj.$a;break}m=0}if(!a.write(k,m++,n&255)||!a.write(k,m++,n>>8)){g=hj.$a;break}if(m>=a.ua&&(k=null,++d>=a.ea&&(d=0,++c>=a.ja&&(c=0,++b>=a.aa)))){g=hj.$a;break}}return l?l(g,b,c,d,e,f):g};
h.df=function(a,b,c,d,e,f){this.C=f&65535;this.b=this.b&~U.Ya|f>>16-U.ma.Ya&U.Ya;this.u=f>>16&ij.ab;this.j=this.i=b<<jj.ma.gc|(c?jj.Jc:0)|d&jj.ae;this.w=65536-e&65535;a&&(this.b=this.b|a|U.hb);return!0};h.Gg=function(){return this.b&U.fc};
h.Xh=function(a){this.b=this.b&~U.Sa|a&U.Sa;this.u=this.u&60|(a&U.Ya)>>U.ma.Ya;if(!(this.b&U.Za)){a=!0;var b,c="",d=this.g[(this.b&U.sb)>>U.ma.sb],e=d.da,f,g,k;this.b&=~U.Ea;switch(this.b&U.wa){case kj.uf:this.w&lj.Rd&&(this.b&=U.Ea|U.wa|U.Ya);this.w=d.status|this.j&jj.Jc|(e&&512==e.aa?lj.Ne:0);break;case kj.Kc:(this.i&jj.Me)==jj.rf&&(b=this.i&jj.gc,c=(this.i&jj.tf)<<2,this.j=this.i&jj.sf?this.j+b:this.j-b,this.i=this.j=this.j&jj.gc|c);break;case kj.Ye:this.w=this.j;break;case kj.Ve:c="READ",b=this.Ub;
case kj.wf:c||(c="WRITE"),b||(b=this.Uc),f=this.i>>jj.ma.gc,g=this.i&jj.Jc?1:0,k=this.i&jj.ae,!e||f>=e.aa||k>=e.ea?this.b=this.b|hj.$a|U.hb:(a=65536-this.w&65535,e=(this.u&ij.ab)<<16|this.C,z(this)&&C(this,this.type+": "+c+"("+f+":"+g+":"+k+") "+E(e)+"--"+E(e+(a<<1)),!0,!0),a=b.call(this,d,f,g,k,a,e,2,!1,this.df.bind(this)))}a&&(this.b=this.b|U.Ea|U.Za,this.b&U.Ib&&nd(this.f,this.Qa))}};h.Eg=function(){return this.C};h.Vh=function(a){this.C=a&mj.Sa};h.Hg=function(){return this.i};
h.Yh=function(a){this.i=a};h.Ig=function(){return this.w};h.Zh=function(a){this.w=a};h.Fg=function(){return this.u};h.Wh=function(a){this.u=a&ij.ab;this.b=this.b&~U.Ya|(this.u&3)<<U.ma.Ya};
var U=Ob.gf,mj=Ob.ef,jj=Ob.hf,lj=Ob.Ic,ij=Ob.ff,hj=Ob.Qd,kj=Ob.wa,nj={},gj=(nj[63744]=[null,null,Ed.prototype.Gg,Ed.prototype.Xh,"RLCS"],nj[63746]=[null,null,Ed.prototype.Eg,Ed.prototype.Vh,"RLBA"],nj[63748]=[null,null,Ed.prototype.Hg,Ed.prototype.Yh,"RLDA"],nj[63750]=[null,null,Ed.prototype.Ig,Ed.prototype.Zh,"RLMP"],nj[63752]=[null,null,Ed.prototype.Fg,Ed.prototype.Wh,"RLBE"],nj);
function Fd(a){ri.call(this,"RX11",a,262144,Pb,Pb.jf,oj);this.I=this.G=this.i=this.L=this.b=this.C=0;this.j=V.Kb;this.u=0;this.w=Array(128).fill(0)}p(Fd,ri);h=Fd.prototype;h.Cb=function(a){a?(a=ia(a),this.b=a.next().value,this.C=a.next().value,this.I=a.next().value,this.G=a.next().value,this.i=a.next().value,this.L=a.next().value,this.j=a.next().value,this.u=a.next().value,this.w=a.next().value):(this.C=this.b=0,this.G=this.I=1,this.L=this.i=0,this.j=V.tb,this.u=0,td(this.f,this.Qa),pj(this));return!0};
h.Rc=function(){return[this.b,this.C,this.I,this.G,this.i,this.L,this.j,this.u,this.w]};h.we=function(a){a||this.Cb()};function qj(a,b){b&&(a.L=b,a.C=a.i,a.b|=W.hb);a.j=V.Kb;a.b|=W.DONE;a.b&W.Ib&&nd(a.f,a.Qa)}
h.Ub=function(a,b,c,d,e,f,g,k,l){k=0;var m=a.da,n=null,q;z(this)&&C(this,this.type+".readData("+b+":"+c+":"+d+") "+E(f)+"--"+E(f+(e<<1)),!0,!0);m||(k=a.Tb?rj.gd:rj.fd,e=0);for(;e;){if(!n){if(b>=m.aa){k=rj.Se;break}n=m.seek(b,c,d+1);if(!n){k=rj.pd;break}q=0;++d>=m.ea&&(d=0,++c>=m.ja&&(c=0,++b))}var t;if(0>(a=m.read(n,q++))||0>(t=m.read(n,q++))){k=rj.od;break}Ac(this.F,Oe(this.f,f),a|t<<8);q>=m.ua&&(n=null);f+=g;e--}return l?l(k,b,c,d,e,f):k};
function pj(a){var b=0,c=a.b&W.td?1:0,d=a.g[c],d=d&&d.da,e=a.I&sj.ab,f=a.G&tj.ab;a.i&=~(uj.Md|uj.Xd|uj.cc|uj.Ea);if(d)if(a.i|=uj.Ea,z(a)&&C(a,a.type+".readSector("+e+":0:"+f+")",!0,!0),c=d.seek(e,0,f,!0)){e=0;for(f=a.w.length;e<f;){var g=d.read(c,e);if(0>g){b=rj.od;break}a.w[e++]=g}c.Ef&&(a.i|=uj.cc)}else b=rj.pd;else b=c?rj.gd:rj.fd;qj(a,b)}
h.Kg=function(a,b){a=this.b;if(!b)switch(a&=W.fc,this.j){case V.bd:case V.EMPTY:this.u<this.w.length&&(this.b|=W.cb);break;case V.tb:case V.hc:case V.Lc:2>this.u&&(this.b|=W.cb)}return a};
h.ai=function(a){this.b=this.b&~W.Sa|a&W.Sa;if(this.b&W.INIT)this.Cb();else if(this.b&W.dc&&this.j==V.Kb)switch(this.j=this.b&W.wa,this.b&=~(W.dc|W.cb|W.DONE|W.hb),td(this.f,this.Qa),z(this)&&C(this,this.type+".processCommand("+vj[this.j>>1]+")",!0,!0),this.j){case V.bd:case V.EMPTY:case V.tb:case V.hc:case V.Lc:this.u=0;break;case V.Xe:a=this.g[this.b&W.td?1:0];this.i&=~uj.Ea;a&&a.da&&(this.i|=uj.Ea);this.C=this.i;qj(this);break;case V.We:this.C=this.L,qj(this)}else this.b&W.Ib?this.b&W.DONE&&nd(this.f,
this.Qa):td(this.f,this.Qa)};h.Lg=function(a,b){if(!b)switch(this.j){case V.EMPTY:this.b&W.cb&&(this.b&=~W.cb,this.C=this.w[this.u]&255,z(this)&&C(this,this.type+".readByte("+this.u+"): "+F(this.C,2,!0),!0,!0),++this.u>=this.w.length&&qj(this))}return this.C};
h.bi=function(a){switch(this.j){case V.bd:this.b&W.cb&&(this.b&=~W.cb,this.w[this.u]=a&255,z(this)&&C(this,this.type+".writeByte("+this.u+","+F(a,2,!0)+")",!0,!0),++this.u>=this.w.length&&qj(this));break;case V.tb:case V.hc:case V.Lc:if(this.b&W.cb)switch(this.b&=~W.cb,this.u++){case 0:this.G=a;break;case 1:if(this.I=a,this.j==V.tb)pj(this);else{var b=this.j==V.Lc,c=0,d=this.b&W.td?1:0,e=this.g[d],e=e&&e.da,f=this.I&sj.ab,g=this.G&tj.ab;this.i&=~(uj.Md|uj.Xd|uj.cc|uj.Ea);if(e)if(this.i|=uj.Ea,z(this)&&
C(this,this.type+".writeSector("+f+":0:"+g+")",!0,!0),d=e.seek(f,0,g,!0))for(b&&(d.Ef=!0),b=0,f=this.w.length;b<f;){if(!e.write(d,b,this.w[b]&255)){c=rj.od;break}b++}else c=rj.pd;else c=d?rj.gd:rj.fd;qj(this,c)}}}this.C=a};var W=Pb.kf,sj=Pb.nf,tj=Pb.mf,uj=Pb.lf,V=Pb.wa,rj=Pb.ERROR,vj="FILL EMPTY WRITE READ UNUSED RDSTAT WRDEL RDERR".split(" "),wj={},oj=(wj[65144]=[null,null,Fd.prototype.Kg,Fd.prototype.ai,"RXCS"],wj[65146]=[null,null,Fd.prototype.Lg,Fd.prototype.bi,"RXDB"],wj);
function xj(a){u.call(this,"Debugger",a);this.Aa=+a.base||16;this.ia=!1;this.w=0;this.O=!1;this.u=-1;this.j=[];this.S={}}p(xj,u);xj.prototype.re=function(){return-1};xj.prototype.Ad=function(){};
function yj(a,b,c,d){if(c)if(b){0>a.u&&a.j.length&&(a.u=0);if(0>a.u||b!=a.j[a.u])a.j.splice(0,0,b),a.u=0;a.u--}else a.O?b="end":b=a.j[a.u+1];a=[];if(b){b=b.replace(/""/g,"'");c=0;var e=null;d=d||";";for(var f=0;f<=b.length;f++){var g=b.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==d&&!e||!g)a.push(Za(b.substring(c,f))),c=f+1}}return a}
function zj(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<<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;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?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 Aj(a,b,c){var d;if(b){b=Bj(a,b);for(var e=0,f=!1,g=b,k=[],l=[],m=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);e<m.length;){var n=m[e++],q=n.length,n=Za(n);if(!n){f=!0;break}n=Cj(a,n,null,!1===c);if(void 0===n){f=!0;c=!1;break}k.push(n);if(e==m.length)break;var n=m[e++],t=n.length;l.length&&Dj[n]<Dj[l[l.length-1]]&&zj(k,l,1);l.push(n);b=b.substr(q+t)}zj(k,l)&&1==k.length||(f=!0);f?c&&a.v("error parsing '"+g+"' at character "+(g.length-b.length)):(d=k.pop(),c&&Ej(a,null,
d))}return d}function Bj(a,b){for(var c,d=a.ia?"(":"{",e=a.ia?")":"}",f=new RegExp(a.ia?"\\((.*?)\\)":"\\{(.*?)\\}");(c=b.match(f))&&!(0<=c[1].indexOf(d));){var g=Aj(a,c[1]);b=b.replace(d+c[1]+e,null!=g?K(a,g):"undefined")}for(;(c=b.match(/\[(.*?)]/))&&!(0<=c[1].indexOf("["));)b=b.replace("["+c[1]+"]","unimplemented");for(a=b;b=a.match(/\$([a-z]+)/i);){c=null;switch(b[1].toLowerCase()){case "ops":c=0}if(null==c)break;a=a.replace(b[0],c.toString())}return a}
function Cj(a,b,c,d){var e;null!=b?(e=a.re(b),0<=e?e=a.Ad(e):(e=a.S[b],null==e&&(e=Ka(b,a.Aa))),null!=e||d||a.v("invalid "+(c?c:"value")+": "+b)):d||a.v("missing "+(c||"value"));return e}function Ej(a,b,c){var d,e=!1;if(void 0!==c){e=!0;d=c;var f=4,g="";if(!f||4<f)f=4;for(var k=0;k<f;k++)g&&(g=","+g),g=Ma(d&255,8)+g,d>>=8;d=F(c,0,!0)+" "+c+". "+E(c,0,!0)+" "+("0b"+g);32<=c&&127>c&&(d+=" '"+String.fromCharCode(c)+"'")}a.v((null!=b?b+": ":"")+d);return e}
function Fj(a,b){if(b)return Ej(a,b,a.S[b]);var c=0;for(b in a.S)Ej(a,b,a.S[b]),c++;return 0<c}function K(a,b,c){c=void 0===c?0:c;switch(a.Aa){case 8:a=E(b,0<c?(c+2)/3|0:0);break;case 10:a=Na(b,0<c?Math.ceil(.3*c):0);break;default:a=F(b,0<c?c+3>>2:0)}0>c?c=a.replace(/^0+([0-9A-F]+)$/i,"$1"):c=a;return c}var Dj={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9};
function Gj(a){xj.call(this,a);this.Ga=!1;this.ia=!0;this.G=X();this.Fa=X();this.N=X();this.B=[];this.b=this.L=this.C=[];Hj(this);this.P=this.Y=0;this.i=[];this.pa=void 0;Ij(this);this.D=this;this.ka={};this.ha=this.ke=0;this.R=null;this.M=[];Jj(this,a.messages);this.ta=a.commands;this.Ja=Kj;this.W=[];this.I=0;this.Ka=this.sa=null;this.w=this.Ia=this.Ha=this.X=this.la=0;this.g=this.U=null;var b=this;window?void 0===window[w]&&(window[w]=function(a){return le(b,a)}):void 0===global[w]&&(global[w]=
function(a){return le(b,a)})}p(Gj,xj);function Lj(a){a=a&&a.K;null==a&&(a=-1);return a}function X(a,b,c){return{K:void 0===a?null:a,Ma:void 0===b?!1:b,Ua:!1,Aa:c}}h=Gj.prototype;h.Gd=function(a,b){a.K=b;a.Ua=!1;a.Aa=void 0;return a};function Mj(a){return[a.K,a.Ma,a.Aa,a.Ua,a.Pc]}function Nj(a,b){var c=X(b[0],b[1],b[2]);c.Ua=b[3];b[4]&&(c.he=yj(a,c.Pc=b[4]));return c}
h.za=function(a,b,c,d){this.F=b;this.J=a;this.f=c;this.g=a.i;(a=ge(a,"messages"))&&Jj(this,a);1140>this.f.ka&&(this.W=this.W.concat(Oj));1145>this.f.ka&&(this.W=this.W.concat(Pj));rd(this,16,function(a){a:{var b=d.F.b,c=a[0],e=a=0,l=b.length;if(c){a=Lj(Qj(d,c));if(-1===a){d.v("invalid address: "+c);break a}e=a>>>d.F.g;l=1}d.v("blockid physical blockaddr used size type");d.v("-------- --------- --------- ------ ------ ----");for(var c=-1,m=0;l--;){var n=b[e];n.type==c?m++||d.v("..."):
(c=n.type,m=dd[c],n&&d.v(F(n.id,8)+" %"+F(e<<d.F.g,8)+" %"+F(n.K,8)+" "+Oa(n.Xb)+" "+Oa(n.size)+" "+m),c!=Hd&&(c=-1),m=0);a+=d.F.j;e++}}});y(this)};
h.va=function(a,b,c){var d=this;switch(b){case "debugInput":return this.U=this.H[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",le(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.u<d.j.length-1&&(b=d.j[++d.u])):40==a.keyCode&&(0<d.u?b=d.j[--d.u]:(b="",d.u=-1)),null!=b){var e=b.length;c.value=b;c.setSelectionRange(e,e)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.H[b]=c,qb(c,function(){if(d.U){var a=d.U.value;d.U.value=
"";le(d,a,!0);return!0}return!1}),!0;case "step":return this.H[b]=c,qb(c,function(a){var b=!1;Ha(d,!0)||(Ja(d,!0),b=vc(d,a?1:0,null),Ja(d,!1));return b}),!0}return!1};function ke(a){if(a.U){var b=0,c=0;window&&(b=window.scrollX,c=window.scrollY);a.U.focus();window&&window.scrollTo(b,c)}}h.Od=function(a,b){var c=255,d=Lj(a);-1!==d&&(a.Ma||65535<d?(c=this.F,d=Oe(this.f,d),c.C=!1,c.na++,d=fd(c,d).J(d&c.i,d),c.na--):(c=this.f,c.pa++,d=c.F.Kd(Bc(c,d,3)),c.pa--),c=d,b&&Rj(a,b));return c};
h.Ra=function(a,b){var c=65535,d=Lj(a);-1!==d&&(c=a.Ma||65535<d?Cc(this.F,Oe(this.f,d)):Dc(this.f,d),b&&Rj(a,b));return c};h.Pd=function(a,b,c){var d=Lj(a);if(-1!==d){if(a.Ma||65535<d)gd(this.F,Oe(this.f,d),b);else{var e=this.f;e.pa++;e.F.Ld(Bc(e,d,5),b);e.pa--}c&&Rj(a,c);H(this.J,-1)}};h.Le=function(a,b,c){var d=Lj(a);if(-1!==d){if(a.Ma||65535<d)Ac(this.F,Oe(this.f,d),b);else{var e=this.f;e.pa++;e.F.ac(Bc(e,d,4),b);e.pa--}c&&Rj(a,c);H(this.J,-1)}};
function Qj(a,b,c){var d;c=(c?a.G:a.Fa).K;var e,f;if(void 0!==b){b=Bj(a,b);"%"==b.charAt(0)&&(e=!0,b=b.substr(1));d=b;var g,k;a:{c=a.F;var l;l=d.toUpperCase();for(k in c.Pa){var m=+k;if(c.Pa[m][4]==l){k=c.B+m;break a}}k=null}if(null==k&&d.match(/^[a-z_][a-z0-9_]*$/i))for(d=d.toUpperCase(),c=0;c<a.B.length;c++)if(l=a.B[c].ga[d],null!=l){k=l.o;break}null!=k&&(g=X(k));if(d=g)return d;0<=b.indexOf("0x")?f=16:0<=b.indexOf("0o")?f=8:0<=b.indexOf(".")&&(f=10);c=Aj(a,b,void 0)}null!=c&&(d=X(c,e,f));return d}
function Sj(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.he=yj(a,b.Pc=c[2]))}function Rj(a,b){null!=a.K&&(a.K+=b||1)}function Tj(a,b){return(b.Ma?"%":"")+K(a,b.K)}
function Jj(a,b){a.D=a;a.ha=a.ke=536870912;a.R=null;a.M=[];b=yj(a,b.replace("keys","key").replace("kbd","keyboard"),!1,"|");if(b.length)for(var c in Rb){var d;a:if(d=void 0,Array.prototype.indexOf)d=b.indexOf(c,d);else{d=d||0;0>d&&(d+=b.length);0>d&&(d=0);for(var e=b.length;d<e;d++)if(d in b&&b[d]===c)break a;d=-1}0<=d&&(a.ha|=Rb[c],a.v(c+" messages enabled"))}}function rd(a,b,c){for(var d in Rb)if(b==Rb[d]){a.ka[d]=c;break}}
h.re=function(a){a=a.toUpperCase();var b=Uj[a];null==b&&(b=-1,"R"==a.charAt(0)&&(b=+a.charAt(1),0>b||7<b))&&(b=-1);return b};function Vj(a,b){var c;if(b<Wj||a.g)c=Xj[b];return c||""}
h.Ad=function(a){var b;if(0<=a)if(8>a)b=this.f.g[a];else if(16>a)b=this.f.ta[a-8];else if(20>a)b=this.f.X[a-16];else{var c=this.f,d=this.g;switch(a){case Yj:b=Ad(this.f);break;case Zj:b=c.ob;break;case ak:b=c.P;break;case bk:b=c.Ga&65280;break;case ck:b=ud(c);break;case dk:b=wd(c);break;case ek:b=xd(c);break;case fk:b=c.W;break;case Wj:d&&(b=d.fa);break;case gk:d&&(b=d.Eb);break;case hk:d&&(b=d.Wa)}}return b};
h.message=function(a,b){b&&(a+=" @"+Tj(this,X(this.f.O&65535)));if(!this.R||a!=this.R)if(this.R=a,this.ha&1073741824)this.M.push(a);else{var c;if(this.ha&-2147483648&&this.f&&(c=this.f.A.V)||Ha(this,!0))this.ca(),c&&(a+=" (cpu halted)");this.v(a);this.f&&(a=this.f,re(a),a.Ab=0,a.J&&H(a.J,void 0))}};
function Ij(a){var b;if(!bf(a))a.i&&a.i.length&&a.v("instruction history buffer freed"),a.P=0,a.i=[];else if(!a.i||!a.i.length){a.i=Array(ik);for(b=0;b<a.i.length;b++)a.i[b]=X();a.P=0;a.v("instruction history buffer allocated")}}function jk(a,b,c){if(!kk(a,c))return!1;uc(a.f,b);return!0}
function vc(a,b,c,d){if(!kk(a))return!1;var e="";null===c&&(e=(c=!a.sa||"tr"==a.sa)?"tr":"t");a.w=0;b||bf(a)&&cf(a,a.f.g[7],0);try{b=se(a.f,b);var f=a.f.Cc(b);0<f&&(wc(a.f,f),a.w+=f,xc(a.f,f,!0),yc(a.f,f),a.X++)}catch(g){"number"!=typeof g&&(a.w=0,Ea(a.f,g.stack||g.message))}!1!==d&&(a.g&&a.g.stop(),H(a.J,-1));je(a,c||!1,e);return 0<a.w}h.ca=function(a){this.f&&this.f.ca(a)};
function je(a,b,c){if(a.Ga){void 0===b&&(b=!0);c&&a.v(lk+c);c=a.f;if(c=c.i&128?c.Dc|c.Ac<<8:0){var d=c>>8;a.v("trapped to "+K(a,c&255,8)+" ("+(0>d?Mb[-d]:K(a,d))+")")}a.G=X(a.f.g[7]);b&&1!=a.I?mk(a):nk(a)}}function kk(a,b){var c;(c=!a.f||!Ga(a.f))||(c=a.f,c.A.ba?c=!0:(c.v(c.toString()+" not powered"),c=!1),c=!c);return c||a.f.A.V?(b||a.v("cpu busy or unavailable, command ignored"),!1):!Fa(a.f)}h.Ca=function(a,b){return!b&&(this.reset(!0),a)?this.restore(a):!0};
h.Ba=function(a,b){b&&this.v(a?"suspending":"shutting down");return a?this.save():!0};h.reset=function(a){Ij(this);this.X=0;this.R=null;this.w=0;this.G=X(this.f.g[7]);this.A.V=!1;ok(this);a||je(this)};h.save=function(){var a=new G(this);a.set(0,Mj(this.G));a.set(1,Mj(this.N));a.set(2,[this.j,this.O,this.ha]);a.set(3,this.B);return a.data()};
h.restore=function(a){var b=0;void 0!==a[2]&&(this.G=Nj(this,a[b++]),this.N=Nj(this,a[b++]),this.j=a[b][0],"string"==typeof this.j&&(this.j=[this.j]),this.O=a[b][1],this.ha|=a[b][2]);a[3]&&(this.B=a[3]);return!0};h.start=function(a,b){this.I||this.v("running");this.A.V=!0;this.Ha=a;this.Ia=b};
h.stop=function(a,b){if(this.A.V){this.A.V=!1;this.w=b-this.Ia;if(!this.I){b="stopped";if(this.w){a-=this.Ha;var c=0<a?Math.round(1E3*this.w/a):0;b+=" (";bf(this)&&(b+=this.X+" instructions, ",this.X=0);b+=this.w+" cycles, "+a+" ms, "+c+" hz)"}else z(this,-2147483648)&&(b+=" (use the 't' command to execute blocked faults)");this.v(b)}je(this,!0);ke(this);ok(this,this.f.g[7]);this.R=null}};function bf(a){return 1<a.b.length||!!a.Y}
function cf(a,b,c){var d=-1;c||(d=Dc(a.f,b))||(a.f.O&65535)!=b||(b=Fe(a.f,2));if(0<c&&(a.Y&&!--a.Y||pk(a,b,1,a.b)))return!0;0<=c&&a.i.length&&(a.X++,0>d&&(d=Dc(a.f,b)),65535!=(d&65535)&&(a.Gd(a.i[a.P],b),++a.P==a.i.length&&(a.P=0)));return!1}function Dg(a){var b=a.f;if(b.A.V)throw rc(b,a.f.O&65535),a.ca(),-1;return!1}function ae(a,b,c){pk(a,b,c||1,a.L)&&a.ca(!1)}function be(a,b,c){pk(a,b,c||1,a.C)&&a.ca(!1)}
function Hj(a){var b,c,d;a.b=["bp"];if(a.L)for(b=1;b<a.L.length;b++)c=a.L[b],d=Lj(c),c.Ma?(c=a.F,$d(c.b[d>>>c.g],!1)):Re(a.f,!1);a.L=["br"];if(a.C)for(b=1;b<a.C.length;b++)c=a.C[b],d=Lj(c),c.Ma?(c=a.F,$d(c.b[d>>>c.g],!0)):Re(a.f,!0);a.C=["bw"];a.la=0;a.Y=0}
h.Bb=function(a,b,c){var d=!0;c||qk(this,a,b,!1,!0);if(a!=this.b){var e=Lj(b);if(-1===e)this.v("invalid address: "+Tj(this,b)),d=!1;else{var f=a==this.C;65535<e&&(b.Ma=!0);if(b.Ma){var g=this.F;g.b[e>>>g.g].Bb(e&g.i,f)}else e=this.f,(f?e.tc++:e.sc++)||ye(e)}}d&&(a.push(b),c?b.Ua=!0:(rk(this,a,a.length-1,"set"),Ij(this)));return d};
function qk(a,b,c,d,e){var f=!1;c=Lj(c);for(var g=1;g<b.length;g++){var k=b[g];if(c==Lj(k)&&(!d||k.Ua)){f=!0;k.Ua||e||rk(a,b,g,"cleared");b.splice(g,1);b!=a.b&&(b=b==a.C,k.Ma?(d=a.F,$d(d.b[c>>>d.g],b)):Re(a.f,b));k.Ua||Ij(a);break}}return f}function sk(a,b){for(var c=1;c<b.length;c++)rk(a,b,c);return b.length-1}function rk(a,b,c,d){c=b[c];a.v(b[0]+" "+Tj(a,c)+(d?" "+d:c.Pc?' "'+c.Pc+'"':""))}
function ok(a,b){if(void 0!==b)pk(a,b,1,a.b,!0),a.I=0;else for(b=1;b<a.b.length;b++){var c=a.b[b];if(c.Ua){if(!qk(a,a.b,c,!0))break;b=0}}}
function pk(a,b,c,d,e){var f=!1;if(!a.la++)for(var g=1;!f&&g<d.length;g++){var k=d[g];if(!e||k.Ua)for(var l=Lj(k)&(d==a.b?65535:-1),m=0;m<c;m++)if(b+m==l){var n,f=!0;k.Ua&&(qk(a,d,k,!0),e=!0);if(n=k.he){for(var f=!1,q=0;q<n.length;q++)if(!tk(a,n[q],!0)){if(n[q].indexOf("if")){f=!0;break}for(var t=q+1;t<n.length&&n[t].indexOf("else");t++)q++;if(t==n.length){f=!0;break}}a.f.A.V||(f=!0)}if(f){e||rk(a,d,g,"hit");break}}}a.la--;return f}
function uk(a,b,c,d){var e=X(b.K),f=a.Ra(b,2),g,k;for(k in a.Ja)if(g=a.Ja[k][f&k])break;g||(g=vk);var l=g[0];0<=a.W.indexOf(l)&&(g=vk,l=g[0]);var m=k="",n=wk[l],q=g.length-1;l||q||(k=K(a,f));for(l=1;l<=q;l++){var t=g[l];if(void 0!==t){var r;r=a;var D=t,t=b,A="",B=D&xk;if(B==Y)t=t.K+((f&255)<<24>>23)&65535,A=K(r,t);else if(B==yk)t=t.K-((f&63)<<1)&65535,A=K(r,t);else if(B==zk)A=K(r,f&7,3);else if(B==Ak)A=K(r,f&63,6);else if(B==Bk)A=K(r,f&255,8);else if(B=f&D,D&Ck&&(B>>=6,D>>=6),D&Z){var D=null,J=B&
Dk;switch(B&Ek){case 0:A=Vj(r,J);break;case 8:A="@"+Vj(r,J);D=Fk(r,r.f.g[J]);break;case 16:7>J?A="("+Vj(r,J)+")+":(B=r.Ra(t,2),A="#"+K(r,B,-1));break;case 24:7>J?A="@("+Vj(r,J)+")+":(B=r.Ra(t,2),A="@#"+K(r,B,-1),D=Fk(r,B));break;case 32:A="-("+Vj(r,J)+")";break;case 40:A="@-("+Vj(r,J)+")";break;case 48:B=r.Ra(t,2);A=K(r,B,-1)+"("+Vj(r,J)+")";7==J&&(A=K(r,B=B+t.K&65535),D=Fk(r,B));break;case 56:B=r.Ra(t,2),A="@"+K(r,B)+"("+Vj(r,J)+")",7==J&&(A="@"+K(r,B=B+t.K&65535),D=Fk(r,Dc(r.f,B)))}D&&(A=[A,D])}r=
A;if(!r||!r.length){k="INVALID";break}"string"!=typeof r&&(m=r[1],r=r[0]);0<k.length&&(k+=",");k+=r||"???"}}f="";g=Tj(a,e)+":";if(-1!==e.K&&-1!==b.K){do if(f+=" "+K(a,a.Ra(e,2)),null==e.K)break;while(e.K!=b.K)}g+=Ya(f,24);g+=Ya(n,5);k&&(g+=" "+k);if(c||m)g=Ya(g,60)+";"+(c||""),g=a.f.A.Nb?g+("cycles="+me(a.f).toString()+" cs="+F(a.f.oc)):g+(null!=d?"="+d.toString():""),m&&(";"!=g.slice(-1)&&(g+=" "),g+=m);return g}
function Fk(a,b){b=Pe(a.f,b)[0];b>=a.f.ub&&b<a.F.B&&(b=b-a.f.ub+a.F.B);var c=a.F;a=null;b>=c.B&&(b=c.Pa[b&kd])&&(a=b[4]);return a}function Gk(a,b){switch(b){case "N":a=Ee(a.f);break;case "Z":a=De(a.f);break;case "V":a=Ce(a.f);break;case "C":a=Be(a.f);break;default:a=0}return b.charAt(0)+(a?"1":"0")+" "}function Hk(a,b){var c=Vj(a,b);c&&(c+="="+K(a,a.Ad(b))+" ");return c}
function Ik(a,b){var c,d="";for(c=0;6>c;c++)d+=Hk(a,c);d=d+"\n"+(Hk(a,6)+Hk(a,7));d+=Hk(a,Yj)+Hk(a,Zj)+Hk(a,bk);d+=Gk(a,"T")+Gk(a,"N")+Gk(a,"Z")+Gk(a,"V")+Gk(a,"C");b&&(b=d,c=""+(Hk(a,ck)+Hk(a,dk)),c+=Hk(a,ek)+Hk(a,fk)+Hk(a,ak),c=c+"\n"+(Hk(a,hk)+Hk(a,Wj)+Hk(a,gk)),d=b+("\n"+c));return d}h.me=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0};
function Dh(a,b,c,d,e){var f=[],g;for(g in e){var k=e[g];"number"==typeof k&&(e[g]=k={o:k});var l=k.o,m=k.a;if(void 0!==l){var n=f,l=[l>>>0,g],q=ab(n,l,a.me);0>q&&n.splice(-(q+1),0,l)}m&&(k.a=m.replace(/''/g,'"'))}a.B.push({Hk:b,K:c,Lf:d,ga:e,ie:f})}function Jk(a,b,c){var d=[],e=Lj(b)>>>0;for(b=0;b<a.B.length;b++){var f=a.B[b],g=f.K>>>0,k=f.Lf;if(e>=g&&e<g+k){e=ab(f.ie,[e-g],a.me);0<=e?Kk(a,b,e,d):c&&(e=~e,Kk(a,b,e-1,d),Kk(a,b,e,d));break}}return d}
function Kk(a,b,c,d){var e={},f=a.B[b].ie,g=0,k=null;0<=c&&c<f.length&&(g=f[c][0],k=f[c][1]);k&&(e=a.B[b].ga[k],k="."==k.charAt(0)?null:e.l||k);d.push(k);d.push(g);d.push(e.a);d.push(e.c)}function Lk(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return Fj(a)||a.v("no variables"),!0;if(!c[2])return Fj(a,c[1]);if(!c[3])return delete a.S[c[1]],!0;b=Aj(a,c[3]);return void 0!==b?(a.S[c[1]]=b,!0):!1}a.v("invalid assignment:"+b);return!1}
function Mk(a,b,c){var d=null;if(b=Qj(a,b,!0)){var e=Jk(a,b,!0);if(e.length){var f,g;e[0]&&(g="",(f=b.K-e[1])&&(g=" + "+Oa(f)),f=e[0]+" ("+K(a,e[1])+")"+g,c&&a.v(f),d=f);4<e.length&&e[4]&&(g="",(f=e[5]-b.K)&&(g=" - "+Oa(f)),f=e[4]+" ("+K(a,e[5])+")"+g,c&&a.v(f),d||(d=f))}else c&&a.v("no symbols")}return d}
function mk(a,b){var c;if(b&&"?"==b[1])a.v("register commands:"),a.v("\tr\tdump registers"),a.v("\trm\tdump misc registers"),a.v("\trx [#]\tset flag or register x to [#]");else{var d=!1,e=a.f;null==c&&(c=!0);if(b&&1<b.length){var f=b[1];if("m"==f)d=!0;else{var g=f.indexOf("=");if(0<g)b=f.substr(g+1),f=f.substr(0,g);else if(2<b.length)b=b[2];else{a.v("missing value for "+b[1]);return}g=Aj(a,b);if(void 0===g)return;b=f.toUpperCase();switch(b){case "SP":case "R6":e.g[6]=g&65535;break;case "PC":case "R7":rc(e,
g);a.G=X(e.g[7]);break;case "N":e.I=g?32768:0;break;case "Z":e.L=g?0:1;break;case "V":e.G=g?32768:0;break;case "C":e.C=g?65536:0;break;case "PS":Bd(e,g);break;case "PI":zd(e,g);break;case "ER":e.P=g;d=!0;break;case "SL":e.Ga=g|255;break;case "M0":vd(e,g);d=!0;break;case "M3":yd(e,g);d=!0;break;case "AR":a.g&&(d=a.g,jc(d,d.fa=g));d=!0;break;case "DR":a.g&&Ub(a.g,g);d=!0;break;case "SR":a.g&&kc(a.g,g);d=!0;break;default:if("R"==b.charAt(0)&&(b=+b.charAt(1),0<=b&&6>b)){e.g[b]=g&65535;break}a.v("unknown register: "+
f);return}H(a.J);a.v("updated registers:")}}a.v(Ik(a,d));c&&(a.G=X(e.g[7]),nk(a,Tj(a,a.G)))}}function Nk(a,b){b=Za(b);var c=b.match(/^(['"])(.*?)\1$/);c?1<c[2].length?a.v(c[2]):Ej(a,null,c[2].charCodeAt(0)):Aj(a,b,!0)}
function Ok(a,b,c){if("?"==c)a.v("trace commands:"),a.v("\tt [#]\ttrace # instructions"),a.v("\ttr [#]\ttrace # instructions with register updates"),a.v("\ttc [#]\ttrace # cycles"),a.v("note: bn [#] breaks after # instructions without updates");else{var d="t"!=b;c=Cj(a,c,null,!0)||1;var e=0;"tc"==b&&(e=c,c=1);a.sa=b;pb(c,function(){return Ja(a,!0)&&vc(a,e,d,!1)},function(){a.g&&a.g.stop();H(a.J,-1);Ja(a,!1)})}}
function nk(a,b,c,d){if(b=Qj(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c)if("l"==c.charAt(0))c=Cj(a,c.substr(1)),null!=c&&(d=c);else{d=Qj(a,c,!0);if(!d||d.K<b.K)return;e=d.K-b.K;if(256<e){a.v("range too large");return}d=-1}c=0;for(var f;0<e&&d--;){f=Ha(a,!1)||a.I?a.w:null;var g=null!=f?"cycles":null,k=Jk(a,b),l=b.K;if(k[0]&&d&&(!c&&d||0>k[0].indexOf("+"))){var m=k[0]+":";k[2]&&(m+=" "+k[2]);a.v(m)}k[3]&&(g=k[3],f=null);f=uk(a,b,g,f);a.v(f);a.G=b;e-=b.K-l;c++}}}
function tk(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.v(lk+b):(a.O&&(a.v("ended assemble at "+Tj(a,a.N)),a.G=a.N,a.O=!1),b="");var e=b.charAt(0);if('"'==e||"'"==e)return!0;a.R=null;if(Ga(a)&&0<b.length){a.O&&(b="a "+Tj(a,a.N)+" "+b);var f=!1,g=b.replace(/ +/g," ").split(" ");g[0]=g[0].toLowerCase();if(g&&g.length)for(var k=g[0],l=k.charAt(0),m=1;m<k.length;m++){var n=k.charAt(m);if("?"==l||"r"==l||"a">n||"z"<n){g[0]=k.substr(m);g.unshift(k.substr(0,m));break}}switch(g[0].charAt(0)){case "a":var q=
Qj(a,g[1],!0);if(q)if(a.N=q,void 0===g[2])a.v("begin assemble at "+Tj(a,q)),a.O=!0,H(a.J);else{var t;a.v("not supported yet");t=[];if(t.length){for(var r=0;r<t.length;r++)a.Pd(q,t[r],1);a.v(uk(a,a.N))}}break;case "b":a:{var D=g[0],A=g[1],B=b;if("?"==A)a.v("breakpoint commands:"),a.v("\tbp #\tset exec breakpoint"),a.v("\tbr #\tset read breakpoint"),a.v("\tbw #\tset write breakpoint"),a.v("\tbc #\tclear breakpoint (* to clear all)"),a.v("\tbl\tlist all breakpoints"),a.v("\tbn [#]\tbreak after # instruction(s)");
else{var J=D.charAt(1);if("l"==J){var vb;vb=0+sk(a,a.b);vb+=sk(a,a.L);(vb+=sk(a,a.C))||a.v("no breakpoints")}else if("n"==J){var Cd=+A||0;A&&(a.Y=Cd);a.v("break after "+Cd+" instruction(s)")}else if(void 0===A)a.v("missing breakpoint address");else{var sa=X();if("*"!=A&&(sa=Qj(a,A,!0),!sa))break a;"c"==J?null==sa.K?(Hj(a),a.v("all breakpoints cleared")):qk(a,a.b,sa)||qk(a,a.L,sa)||qk(a,a.C,sa)||a.v("breakpoint missing: "+Tj(a,sa)):null!=sa.K&&(Sj(a,sa,B),"p"==J?a.Bb(a.b,sa):"r"==J?a.Bb(a.L,sa):"w"==
J?a.Bb(a.C,sa):a.v("unknown breakpoint command: "+J))}}}break;case "c":a.Ta&&(a.Ta.value="");break;case "d":a:{var Yb,jb=g[0],Ta=g[1],kb=g[2],nl=g[3];if("?"==Ta){var Zb="";for(Yb in Rb)a.ka[Yb]&&(Zb&&(Zb+=","),Zb+=Yb);Zb+=",state,symbols";a.v("dump memory commands:");a.v("\tda [a] dump info for address a");a.v("\tdb [a] [n] dump n bytes at address a");a.v("\tdw [a] [n] dump n words at address a");a.v("\tdd [a] [n] dump n dwords at address a");a.v("\tds [a] [n] dump n words at address a as JSON");
a.v("\tdh [p] [n] dump n instructions from history position p");Zb.length&&a.v("dump extension commands:\n\t"+Zb)}else if("state"==Ta){var ff=Pk(a.J,!0);"console"==kb?console.log(ff):(a.Ta&&(a.Ta.value=""),ff&&a.v(ff))}else if("symbols"==Ta)for(var gf=0;gf<a.B.length;gf++){var hf=a.B[gf],$b;for($b in hf.ga)if("."!=$b.charAt(0)){var vi=hf.ga[$b].o;if(void 0!==vi){var wi=hf.ga[$b].l;wi&&($b=wi);a.v(K(a,vi)+" "+$b)}}}else{if("d"==jb){for(Yb in Rb)if(g[1]==Yb){var xi=a.ka[Yb];xi?(g.shift(),g.shift(),
xi(g)):a.v("no dump registered for "+Ta);break a}Ta||(jb=a.Ka||"dw")}else a.Ka=jb;if("dh"==jb){var yi=Ta,zi=kb,Ai="",Bi=0,Ia=a.P,Ua=a.i;if(Ua.length){var Ca=+yi||a.pa,Lc=+zi||10;isNaN(Ca)?Ca=Lc:Ai="more ";Ca>Ua.length&&(a.v("note: only "+Ua.length+" available"),Ca=Ua.length);Ia-=Ca;0>Ia&&(null==Ua[Ua.length-1].K?(Ca=Ia+Ca,Ia=0):Ia+=Ua.length);var jf=[];"call"==zi&&(Lc=1E5,jf=["CALL"]);for(void 0!==yi&&a.v(Ca+" instructions earlier:");0<Lc&&Ia!=a.P;){var Ci=Ua[Ia++];if(null==Ci.K)break;var Mc=X(Ci.K),
ol=Ca--,Di=uk(a,Mc,"history",ol);(!jf.length||0<=Di.indexOf(jf[0]))&&a.v(Di);Mc.xd&&(Ia+=Mc.xd,Lc-=Mc.xd,Ca-=Mc.xd);Ia>=Ua.length&&(Ia=0);a.pa=Ca;Bi++;Lc--}}Bi||(a.v("no "+Ai+"history available"),a.pa=void 0)}else{var oa=Qj(a,Ta);if(oa)if("da"==jb){var kf=oa.Ma||65535<oa.K,O=Pe(a.f,oa.K||0,kf);a.v(Ya("",kf?12:19)+Ma(oa.K,kf?22:17,3)+" "+E(oa.K,8));6>O.length?(2<O.length&&(a.v(" OFFSET: "+Ma(O[3],13,3)+" "+E(O[3],8)),a.v("UNIMAP["+Na(O[1],2)+"]: "+Ma(O[2],22,3)+" "+E(O[2],8))),a.v(" PHYSICAL: "+
Ma(O[0],22,3)+" "+E(O[0],8))):(a.v(" OFFSET: "+Ma(O[1],13,3)+" "+E(O[1],8)),a.v("+ "+Qk[O[2]]+"PAR"+O[3]+": "+Ma(O[4],22,3)+" "+E(O[4],8)),a.v("& MMUMASK: "+Ma(O[5],22,3)+" "+E(O[5],8)),a.v("= PHYSICAL: "+Ma(O[0],22,3)+" "+E(O[0],8)))}else{var xb=0,lf="ds"==jb;if(kb){if("l"==kb.charAt(0))kb=kb.substr(1)||nl,xb=Cj(a,kb);else{var Ei=Qj(a,kb);Ei&&(xb=Ei.K-oa.K)}0>xb&&(xb=0);65536<xb&&(xb=65536)}var ql=a.Aa;oa.Aa&&(a.Aa=oa.Aa);for(var yb="dd"==jb?4:"db"==jb?1:2,Ld=yb*xb||128,mf=
lf?16:a.Aa,rl=(Ld+mf-1)/mf|0||1,zb="";rl--&&0<Ld;){for(var Ab="",nf="",Ta=Tj(a,oa),Md=mf,Nc=0,Oc=0;0<Md&&0<Ld;){var ac=1,Nd=1==yb?a.Od(oa,ac):a.Ra(oa,ac=2),Nc=Nc|Nd<<(Oc<<3),Oc=Oc+ac;Oc==yb&&(lf?(Ab&&(Ab+=","),Ab+="0x"+F(Nc,yb<<1)):(Ab+=K(a,Nc,yb<<3),Ab+=1==yb?9==Md?"-":" ":" "),Nc=Oc=0);Md-=ac;for(Ld-=ac;1==yb&&ac--;)var of=Nd&255,nf=nf+(32<=of&&128>of?String.fromCharCode(of):"."),Nd=Nd>>8}zb&&(zb+="\n");zb=lf?zb+(Ab+","):zb+(Ta+": "+Ab+(Md?"":" "+nf))}zb&&a.v(zb);a.Fa=oa;a.Aa=ql}}}}break;case "e":if("else"==
g[0])break;var bc,pf,qf,rf,sf=g[0],tf=g[1];"eb"==sf?(bc=1,pf=255,qf=a.Od,rf=a.Pd):"e"==sf||"ew"==sf?(bc=2,pf=65535,qf=a.Ra,rf=a.Le):tf=null;if(null==tf)a.v("edit memory commands:"),a.v("\teb [a] [...] edit bytes at address a"),a.v("\tew [a] [...] edit words at address a");else{var Od=Qj(a,tf);if(Od)for(var Pd=2;Pd<g.length;Pd++){var Pc=Aj(a,g[Pd]);if(void 0===Pc){a.v("unrecognized value: "+g[Pd]);break}Pc&~pf&&a.v("warning: "+F(Pc)+" exceeds "+bc+"-byte value");a.v("changing "+Tj(a,Od)+(z(a,16)?
"":" from "+K(a,qf.call(a,Od),bc<<3))+" to "+K(a,Pc,bc<<3));rf.call(a,Od,Pc,bc)}}break;case "g":a:{var Fi=g[1],sl=b;if(void 0!==Fi){var uf=Qj(a,Fi,!0);if(!uf)break a;Sj(a,uf,sl);a.Bb(a.b,uf,!0)}jk(a,!0,c)}break;case "h":a.A.V?(c||a.v("halting"),a.ca()):Ha(a,!0)||c||a.v("already halted");break;case "i":if("if"==g[0]){var vf;var Qc=b.substr(2),Qc=Za(Qc);Aj(a,Qc)?(c||a.v("true: "+Qc),vf=!0):(c||a.v("false: "+Qc),vf=!1);vf||(d=!1);break}f=!0;break;case "k":var tl=g[0];if("?"==g[1])a.v("stack trace commands:"),
a.v("\tk\tshow frame addresses"),a.v("\tks\tshow symbol information");else{var wf=0,xf=X(),Rc=X(a.f.g[6]);for(a.v("stack trace for "+Tj(a,Rc));10>wf;){for(var Bb=null,ul=256;65536>Rc.K>>>0;){xf.K=a.Ra(Rc,2);if(null==Rc.K||!ul--)break;if(!(xf.K&1)){for(var vl=a,Qd=xf,Gi=null,Sc=Qd.K,Hi=Sc,yf=1;6>=yf&&Sc;yf++){if(2<yf){Qd.K=Sc;var Rd=uk(vl,Qd);if(0<=Rd.indexOf("JSR")){var Ii=Rd.indexOf(" ");if(Sc+(Rd.indexOf(" ",Ii+1)-Ii-1)/2==Hi){Gi=Rd;break}}}Sc-=2}Qd.K=Hi;if(Bb=Gi)break}}if(!Bb||null==Bb)break;var Ji=
null;if("ks"==tl){var Ki=Bb.match(/[0-9A-F]+$/);Ki&&(Ji=Mk(a,Ki[0]))}Bb=Ya(Bb,50)+" ;"+(Ji||"stack="+Tj(a,Rc));a.v(Bb);wf++}wf||a.v("no return addresses found")}break;case "l":if("ln"==g[0]){Mk(a,g[1],!0);break}f=!0;break;case "m":a:{var Va,Wa=null,T=g[1];"?"==T&&(T=void 0);if(void 0!==T){var lb=0;if("all"==T)lb=1879046143,T=null;else if("on"==T)Wa=!0,T=null;else if("off"==T)Wa=!1,T=null;else{"keys"==T&&(T="key");"kbd"==T&&(T="keyboard");for(Va in Rb)if(T==Va){lb=Rb[Va];Wa=!!(a.ha&lb);break}if(!lb){a.v("unknown message category: "+
T);break a}}if(lb)if("on"==g[2])a.ha|=lb,Wa=!0;else if("off"==g[2]&&(a.ha&=~lb,Wa=!1,1073741824==lb)){for(var Li=1E3<=a.M.length?a.M.length-1E3:0;Li<a.M.length;)a.v(a.M[Li++]);a.M=[]}}var wl=0,Tc="";for(Va in Rb)if(!T||T==Va){var xl=!!(a.ha&Rb[Va]);if(null===Wa||Wa==xl)Tc&&(Tc+=","),++wl%10||(Tc+="\n\t"),"key"==Va&&(Va="keys"),Tc+=Va}void 0===T&&a.v("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.v((null!==Wa?Wa?"messages on: ":"messages off: ":"message categories:\n\t")+
(Tc||"none"));Ij(a)}break;case "p":if("print"==g[0]){Nk(a,b.substr(5));break}var yl=g[0];if("?"==g[1])a.v("step commands:"),a.v("\tp\tstep over instruction"),a.v("\tpr\tstep over instruction with register update");else{var Mi="pr"==yl?1:0,Ni=1+Mi;if(a.I)a.v("step in progress");else{var Sd=X(a.f.g[7]),cc=a.Ra(Sd);3==cc||4==cc||34816==(cc&65280)||32256==(cc&65024)||35072==(cc&65280)?(a.I=Ni,Rj(Sd,2)):2048==(cc&65024)&&(uk(a,Sd),a.I=Ni);a.I?(a.Bb(a.b,Sd,!0),jk(a)||(a.J&&qe(a.J),a.I=0)):Ok(a,Mi?"tr":
"t")}}break;case "r":if("reset"==b){a.J&&a.J.reset();break}mk(a,g);break;case "s":a:switch(g[1]){case "base":if(g[2]){var Uc=+g[2];if(8==Uc||10==Uc||16==Uc)a.Aa=Uc;else{a.v("invalid base: "+Uc);break}}a.v("default base: "+a.Aa);break;case "cs":var Vc;void 0!==g[3]&&(Vc=+g[3]);switch(g[2]){case "int":a.f.Ob=Vc;break;case "start":a.f.pc=Vc;break;case "stop":a.f.Rb=Vc;break;default:a.v("unknown cs option");break a}void 0!==Vc&&ie(a.f);a.v("checksums "+(a.f.A.Nb?"enabled":"disabled"));break;case "sp":void 0!==
g[2]&&(ne(a.f,+g[2])||a.v("warning: using 1x multiplier, previous target not reached"));a.v("target speed: "+(a.f.xb.toFixed(2)+"Mhz")+" ("+a.f.mb+"x)");break;default:if(g[1]){a.v("unknown option: "+g[1]);break}case "?":a.v("debugger options:"),a.v("\tbase #\t\tset default base to #"),a.v("\tcs int #\tset checksum cycle interval to #"),a.v("\tcs start #\tset checksum cycle start count to #"),a.v("\tcs stop #\tset checksum cycle stop count to #"),a.v("\tsp #\t\tset speed multiplier to #")}break;case "t":Ok(a,
g[0],g[1]);break;case "u":nk(a,g[1],g[2],8);break;case "v":if("var"==g[0]){Lk(a,b.substr(3))||(d=!1);break}if("ver"==g[0]){a.v((Hb||"PDP11")+" version 1.34.1 ("+a.f.ka+",RELEASE"+(Jb?",TYPEDARRAYS":Ib?",BYTEARRAYS":",LONGARRAYS")+")");a.v(window?window.navigator.userAgent:"");break}f=!0;break;case "?":if(g[1]){Nk(a,b.substr(1));break}var zf="commands:",Af;for(Af in Rk)zf+="\n"+Ya(Af,9)+Rk[Af];bf(a)||(zf+="\nnote: history disabled if no exec breakpoints");a.v(zf);break;default:f=!0}f&&(a.v("unknown command: "+
b),d=!1)}}catch(Pi){a.v("debugger error: "+(Pi.stack||Pi.message)),d=!1}return d}function le(a,b,c){b=yj(a,b,c);for(var d in b)if(!tk(a,b[+d]))return!1;return!0}
var Rk={"?":"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"},wk=".WORD ADC ADCB ADD ASL ASLB ASR ASRB BCC BCS BEQ BGE BGT BHI BIC BICB BIS BISB BIT BITB BLE BLOS BLT BMI BNE BPL BPT BR BVC BVS CCC CLC CLCN CLCV CLCVN CLCVZ CLCZ CLCZN CLN CLR CLRB CLV CLVN CLVZ CLVZN CLZ CLZN CMP CMPB COM COMB DEC DECB INC INCB HALT JMP JSR MARK MFPD MFPI MFPS MOV MOVB MTPD MTPI MTPS NEG NEGB NOP RESET ROL ROLB ROR RORB RTI RTS SBC SBCB SCC SEC SECN SECV SECVN SECVZ SECZ SECZN SEN SEV SEVN SEVZ SEVZN SEZ SEZN SUB SWAB SXT TST TSTB WAIT MUL DIV ASH ASHC XOR SOB EMT TRAP SPL IOT RTT MFPT".split(" "),
Yj=20,Zj=21,ak=22,bk=23,ck=24,dk=25,ek=26,fk=27,Wj=28,gk=29,hk=30,Uj={SP:6,PC:7,PS:Yj,PI:Zj,ER:ak,SL:bk,M0:ck,M1:dk,M2:ek,M3:fk,AR:Wj,DR:gk,SR:hk},Xj="R0 R1 R2 R3 R4 R5 SP PC A0 A1 A2 A3 A4 A5 A6 A7 S0 S1 S2 S3 PS PI ER SL M0 M1 M2 M3 AR DR SR".split(" "),Qk="KI KD SI SD ?? ?? UI UD".split(" "),Dk=7,Ek=56,Z=Ek|Dk,Ck=4032,Y=4096,yk=8192,zk=12288,Ak=24576,Bk=32768,xk=61440,Kj={61440:{4096:[62,Ck,Z],8192:[47,Ck,Z],12288:[18,Ck,Z],16384:[14,Ck,Z],20480:[16,Ck,Z],24576:[3,Ck,Z],36864:[63,Ck,Z],40960:[48,
Ck,Z],45056:[19,Ck,Z],49152:[15,Ck,Z],53248:[17,Ck,Z],57344:[94,Ck,Z]},65024:{2048:[57,448,Z],28672:[100,Z,448],29184:[101,Z,448],29696:[102,Z,448],30208:[103,Z,448],30720:[104,448,Z],32256:[105,448,yk]},65280:{256:[27,Y],512:[24,Y],768:[10,Y],1024:[11,Y],1280:[22,Y],1536:[12,Y],1792:[20,Y],32768:[25,Y],33024:[23,Y],33280:[13,Y],33536:[21,Y],33792:[28,Y],34048:[29,Y],34304:[8,Y],34560:[9,Y],34816:[106,Bk],35072:[107,Bk]},65472:{64:[56,Z],192:[95,Z],2560:[39,Z],2624:[49,Z],2688:[53,Z],2752:[51,Z],
2816:[67,Z],2880:[1,Z],2944:[77,Z],3008:[97,Z],3072:[73,Z],3136:[71,Z],3200:[6,Z],3264:[4,Z],3328:[58,Ak],3392:[60,Z],3456:[65,Z],3520:[96,Z],35328:[40,Z],35392:[50,Z],35456:[54,Z],35520:[52,Z],35584:[68,Z],35648:[2,Z],35712:[78,Z],35776:[98,Z],35840:[74,Z],35904:[72,Z],35968:[7,Z],36032:[5,Z],36096:[66,Z],36160:[59,Z],36224:[64,Z],36288:[61,Z]},65528:{128:[76,Dk],152:[108,zk]},65535:{0:[55],1:[99],2:[75],3:[26],4:[109],5:[70],6:[110],7:[111],160:[69],161:[31],162:[41],163:[33],164:[45],165:[36],
166:[43],167:[35],168:[38],169:[32],170:[42],171:[34],172:[46],173:[37],174:[44],175:[30],176:[69],177:[80],178:[88],179:[82],180:[92],181:[85],182:[90],183:[84],184:[87],185:[81],186:[89],187:[83],188:[93],189:[86],190:[91],191:[79]}},vk=[0],Oj=[58,60,65,96,110,100,101,102,103,104,105],Pj=[108,59,64],ik=1E3,lk=">> ";sb(function(){for(var a=x(document,w,"debugger"),b=0;b<a.length;b++){var c=a[b],d=wa(c),d=new Gj(d);xa(d,c)}});
function Sk(a,b,c){u.call(this,"Computer",a,33554432);this.A.ba=!1;this.O=null;Tk(this,b);this.L=ge(this,"autoPower",a,6);this.j=0;this.S=+a.busWidth||+a.buswidth;this.G=this.w=this.I=null;this.C=this.R=!1;this.B=this.u=null;this.P=this.M=this.N=!1;this.U=ge(this,"url")||"";(Math.random()+.1).toString(36);this.g=Uk(this);if(this.f=va("CPU",this.id)){this.D=va("Debugger",this.id);this.F=new Gc({id:this.vb+".bus",busWidth:this.S},this.f,this.D);var d,e=ta(this.id);if((this.i=va("Panel",this.id))&&this.i.Ta)for(b=
0;b<e.length;b++)d=e[b],d.T=this.i.T,d.v=this.i.v,d.Ta=this.i.Ta;this.v(Hb+" v1.34.1\nCopyright \u00a9 2012-2017 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");this.v("Portions adapted from the PDP-11/70 Emulator by Paul Nankervis <http://skn.noip.me/pdp11/pdp11.html>");for(b=0;b<e.length;b++)d=e[b],d.za&&d.za(this,this.F,this.f,this.D);b=null;d=ge(this,"resume",a);void 0!==d&&(1<d.length?b=this.w=d:this.b=parseInt(d,10));var f;if(a=ge(this,"state")||
(f=!0,a.state))this.I=b=a,f||(this.C=!0,this.b=Vk),this.b&&(this.B=new G(this,"1.34.1"),Wk(this.B)?b=null:delete this.B);!b&&this.b&&(b=Xk(this))&&(this.C=!0);if(b){var g=this;cb(b,null,!0,function(a,b,c){c?(g.w=null,g.C=!1,g.T("Unable to load machine state from server (error "+c+(b?": "+Za(b):"")+")")):(g.G=b,g.R=!0);y(g)})}else y(this);this.H.power||(this.L=!0);!c&&this.L&&this.yc(this.rc)}else v("Unable to find CPU component")}p(Sk,u);
function Tk(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){v(d.message+" ("+c+")")}}a.O=b}function ge(a,b,c,d){var e=b.toLowerCase(),e=nb(b)||nb(e);void 0===e&&a.O&&(e=a.O[b]);void 0===e&&c&&(e=c[b]);void 0===e&&"object"==typeof resources&&resources[b]&&(e=b);void 0===e&&(e=void 0);if("string"==typeof e&&d)switch(d){case 4:e=+e;isNaN(e)&&(e=0);break;case 6:e="true"==e}return e}h=Sk.prototype;
h.yc=function(a,b){for(var c=this,d=ta(this.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:this;if(!Ga(f)){Ga(f,function(){c.yc(a,b)});return}}a.call(this,b)};function Yk(a,b){var c=new G(a,"1.34.1",Zk);if(Wk(c)&&$k(c)){var d=c.get(al),e=b?b.get(al):"unknown";d!=e&&(a.T("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
h.rc=function(a){void 0===a&&(a=this.b||(this.G?bl:Vk));if(!this.j){this.j++;var b=!1,c=!1;this.N=!1;var d=this.B||new G(this,"1.34.1");if(a==cl)b=!0;else if(a>Vk){if(Wk(d,this.G)){this.u=new G(this,"1.34.1",dl);Wk(this.u)&&(el(this,d),a=fl,gl(this.u));this.u.set(al,bb());hl(this.u);var e=this.b&&!this.C;if(a==bl||ra("Click OK to restore the previous "+Hb+" machine state, or CANCEL to reset the machine.")){if(c=$k(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?Wk(d,g):("error"==f&&"no machine state"!=
g?(this.T("Error: "+g),"unable to verify user"==g&&(ib(il,""),this.g=null)):this.v(f+": "+g),gl(d),Wk(d)?(c=$k(d),e=!0):c=!1))}e&&Yk(this,c?d:null)}else a==fl&&d.clear()}else Yk(this);delete this.G;delete this.B}e=ta(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.f&&(c=jl(this,g,d,b,c));b=[d,a,c];a!=cl?this.yc(this.ne,b):this.ne(b)}};
function jl(a,b,c,d,e){if(!b.A.ba){b.A.ba=!0;var f=null;try{if(e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,".")))),"string"===typeof f&&(f=null),!b.Ca(f,d)&&f&&(v("Unable to restore state for "+b.type),a.I&&!a.R?(c.clear(),a.b=Vk,window&&window.location.reload()):a.N=!0,b.Ca(null),e=!1),!d&&b.Vd){var g=b.Vd.split("|");for(a=0;a<g.length;a++)b.status(g[a])}}catch(k){v("Error restoring state for "+b.type+" ("+k.message+")")}}return e}
h.ne=function(a){var b=a[0],c=0>a[1];a=a[2];this.P=!0;this.A.ba=!0;var d=this.H.power;d&&(d.textContent="Shutdown");this.f&&(jl(this,this.f,b,c,a),H(this,-2),this.f.qa());this.N&&(el(this,b),b.clear());!c&&this.u&&(this.u.clear(),delete this.u);this.j=0};
function el(a,b){if(ra("There may be a problem with your "+Hb+" machine.\n\nTo help us diagnose it, click OK to send this "+Hb+" machine state to http://www.pcjs.org.")){var c=a.U;a=a.g||"";b=b.toString();var d={};d.app=Hb;d.ver="1.34.1";d.url=c;d.user=a;d.type="bug";d.data=b;cb("http://www.pcjs.org/api/v1/report",d,!0)}}
function Pk(a,b,c){var d,e="none";if(a.j)return null;a.j--;var f=new G(a,"1.34.1"),g=new G(a,"1.34.1",Zk),k=bb();g.set(al,k);f.set(al,k);f.set(kl,"1.34.1");f.set(ll,window?window.location.href:null);f.set(ml,window?window.navigator.userAgent:"");a.f&&a.f.Ba&&(c&&(b&&(a.f.A.qa=a.f.A.V),a.f.ca()),d=a.f.Ba(b,c),"object"===typeof d&&f.set(a.f.id,d),c&&(a.f.A.ba=!1,!1===d&&(e=null)));for(var k=ta(a.id),l=0;l<k.length;l++){var m=k[l];m.A.ba&&(m.Ba&&(d=m.Ba(b,c),"object"===typeof d&&f.set(m.id,d)),c&&(m.A.ba=
!1,!1===d&&(e=null)))}e&&(c?(k=d=!1,b?(a.g&&pl(a,a.g,f.toString()),hl(g)&&hl(f)||(e=null,d=k=!0)):a.b&&(d=!0,k=a.b==zl),d&&f.clear(k)):e=f.toString());c&&(a.A.ba=!1,b=a.H.power)&&(b.textContent="Power");a.j=0;return e}
h.reset=function(){this.A.reset=!0;this.F&&this.F.reset&&(C(this,"Resetting "+this.F.type),this.F.reset());this.f&&this.f.reset&&(C(this,"Resetting "+this.f.type),this.f.reset());for(var a=ta(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.F&&c!==this.f&&c.reset&&(C(this,"Resetting "+c.type),c.reset())}this.A.reset=!1;H(this,-1)};h.start=function(a,b){for(var c=ta(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}H(this,-1)};
h.stop=function(a,b){for(var c=ta(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}H(this,-1)};
function H(a,b){if(a.f){var c=a.f,d=b||0,e=c.H.speed;e&&(0>=d||30<=(c.$c+=d))&&(e.textContent=c.A.V?c.wb.toFixed(2)+"Mhz":"Stopped",c.$c=0)}if(a.i&&(a=a.i,b=b||0,a.u)){c=a.f.A.V;d=!!(a.f.i&8);if(0>=b||60<=(a.j+=b)){for(e=0;e<a.f.g.length;e++)nc(a,"R"+e,a.f.g[e]);e=Ad(a.f);nc(a,"PS",e);nc(a,"NF",e&8?1:0,1);nc(a,"ZF",e&4?1:0,1);nc(a,"VF",e&2?1:0,1);nc(a,"CF",e&1?1:0,1);a.j=0}-1>b?a.fa=a.f.g[7]:0<b&&c&&!d&&(a.fa=a.f.ib);jc(a,a.fa);Vb(a,a.Eb);b=a.f;b=b.yb?b.W&16?1:2:4;Ec(a,"B22",b&1);Ec(a,"B18",b&2);
Ec(a,"B16",b&4)}}
h.va=function(a,b,c){var d=this;switch(b){case "power":return this.H[b]=c,c.onclick=function(){d.j||(d.A.ba?Pk(d,!1,!0):d.yc(d.rc))},!0;case "reset":return this.H[b]=c,c.onclick=function(){if(d.A.ba&&!d.j)if(d.b&&!d.w){var a=ra("Click OK to save changes to this "+Hb+" machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Pk(d,a,!0);!a&&d.I?window&&window.location.reload():(a||(d.M=!0),d.rc(Vk),d.M=!1)}else d.reset(),d.f&&!d.D&&d.f.qa()},!0;case "save":if(Ra(eb(),"pcjs.org"))c.parentNode.removeChild(c);
else return this.H[b]=c,c.onclick=function(){var a=Uk(d,!0);if(a){var b=!!(d.b&&!d.w||d.I),c=Pk(d,b);b?pl(d,a,c):d.T("Resume disabled, machine state not saved")}},!0}return!1};
function Uk(a,b){var c=a.g;c||((c=hb(il),void 0!==c)?!c&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c=b)&&((c=Al(a,c))||a.T("The user ID is invalid.")):b&&a.T("Browser local storage is not available"));return c}
function Al(a,b){a.g=null;b=cb(eb()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(ib(il,b.data),a.g=b.data)}catch(d){v(d.message+" ("+c+")")}return a.g}function Xk(a){var b=null;a.g&&(b=eb()+"/api/v1/user?req=load&user="+a.g+"&state="+Bl(a,"1.34.1"));return b}
function pl(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Bl(a,"1.34.1");d.data=c;b=cb(eb()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.T("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.T(c),ib(il,""),a.g=null)}}
function Uh(a){var b;a=ta(a.id);for(var c=0;c<a.length;c++){var d=a[c];if(b)b==d&&(b=null);else if("RAM"==d.type)return d}return null}function qe(a,b){if(a.Ta){var c=0,d=0;!b&&window&&(c=window.scrollX,d=window.scrollY);a.Ta.focus();!b&&window&&window.scrollTo(c,d)}}var dl="failsafe",Zk="validate",al="timestamp",kl="version",ll="url",ml="browser",il="user",cl=-1,Vk=0,bl=1,fl=2,zl=3;
sb(function(){for(var a=x(document,w+"-machine"),b=0;b<a.length;b++)for(var c=a[b],d=wa(c),c=x(c,w,"computer"),e=0;e<c.length;e++){var f=c[e],g=wa(f),g=new Sk(g,d,!0);xa(g,f);g.L&&g.yc(g.rc)}});tb.show.push(function(){for(var a=x(document,w,"computer"),b=0;b<a.length;b++){var c=wa(a[b]);(c=va("Computer",c.id))&&c.P&&!c.A.ba&&c.rc(cl)}});tb.exit.push(function(){for(var a=x(document,w,"computer"),b=0;b<a.length;b++){var c=wa(a[b]);(c=va("Computer",c.id))&&c.A.ba&&Pk(c,!(!c.b||c.w),!0)}});
function G(a,b,c){this.id=a.id;this.b="";this.f={};this.g=this.D=!1;this.key=Bl(a,b,c);gl(this,a.vf)}h=G.prototype;h.set=function(a,b){try{this.f[a]=b}catch(c){}};h.get=function(a){return this.f[a]||null};h.data=function(){return this.f};function Wk(a,b){return b?(a.b=b,a.g=!0,a.D=!1,!0):a.g?!0:fb()&&(b=hb(a.key))?(a.b=b,a.g=!0):!1}function $k(a){var b=!0;if(!a.D)try{a.f=JSON.parse(a.b),a.D=!0}catch(c){v(c.message||c),b=!1}return b}
function hl(a){var b=!0;if(fb()){var c=JSON.stringify(a.f);ib(a.key,c)||(v("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}h.toString=function(){return this.f?JSON.stringify(this.f):this.b};function gl(a,b){a.b="";a.f={};a.g=a.D=!1;b&&a.set("parms",b)}
h.clear=function(a){gl(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(e){}b.splice(c,1);c=0}};function Bl(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}var Cl=0;
function Dl(a,b,c,d,e,f,g){f("Loading "+a+"...");cb(a,null,!0,function(k,l,m){m?(l||(l="unable to load "+a+" ("+m+")"),g(l,null)):El(l,a,b,c,d,e,f,g)})}
function El(a,b,c,d,e,f,g,k){function l(a,g){if(g)k(g,null);else{c&&(na(c,b,a),(g=b)&&0>g.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(g=window.location.pathname+g),e?"}"==e.slice(-1)?(e=e.slice(0,-1),1<e.length&&(e+=",")):e='{state:"'+e+'",':e="{",e+='url:"'+g+'"}',"object"==typeof resources&&(g=null),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(e?" parms='"+e+"'":"")+(g?' url="'+g+'"':"")));f||(a=a.replace(/(<xsl:variable name="APPNAME">).*?(<\/xsl:variable>)/,"$1PDPjs$2"),
a=a.replace(/(<xsl:variable name="APPCLASS">).*?(<\/xsl:variable>)/,"$1"+d+"$2"));g=null;if("<"==a.charAt(0))try{f||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(g=new window.ActiveXObject("Microsoft.XMLDOM"),g.async=!1,g.loadXML(a)):g=(new window.DOMParser).parseFromString(a,"text/xml")}catch(q){g=null,a=q.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);k(a,g)}}a?f?Fl(a,g,l):l(a,null):k("no data"+(b?" for file: "+b:""),null)}
function Fl(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");cb(e,null,!0,function(f,g,k){if(k||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+k+")");else{if(f=d[3])if(k=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=k[0],m,n=/( [a-z]+=)(['"])(.*?)\2/g;m=n.exec(f);)l=0>l.indexOf(m[1])?l.replace(">",m[0]+">"):l.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);k[0]!=l&&(g=g.replace(k[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(d[0],g);Fl(a,b,c)}})}else c(a,null)}
function Gl(a,b,c,d,e){function f(a){if(void 0===l){var b=k&&x(k,"machine-warning");l=b&&b[0]||k}l&&(l.innerHTML=Sa(a))}function g(a){f("Error: "+a);m&&(--Cl||Cb(!0));m=!1}var k,l,m=!0;Cl++;pa[b]={};try{if(k=document.getElementById(b)){var n;if("object"==typeof resources&&(n=resources.css)){var q=document.head||document.getElementsByTagName("head")[0],t=document.createElement("style");t.type="text/css";t.styleSheet?t.styleSheet.cssText=n:t.appendChild(document.createTextNode(n));q.appendChild(t)}d||
(n=a,"pdp"==a.substr(0,3)&&(n="pdpjs"),d="/versions/"+n+"/1.34.1/components.xsl");n=function(e,l){l?Dl(d,null,a,null,!1,f,function(a,e){e?(na(b,d,a),f("Processing "+c+"..."),window.ActiveXObject||"ActiveXObject"in window?(e=l.transformNode(e))?(k.outerHTML=e,--Cl||Cb(!0)):g("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(a=new XSLTProcessor,a.importStylesheet(e),(e=a.transformToFragment(l,document))?k.parentNode?(k.parentNode.replaceChild(e,k),--Cl||
Cb(!0)):g("invalid machine element: "+b):g("transformToFragment failed")):g("unable to transform XML: unsupported browser")):g(a)}):g(e)};"<"!=c.charAt(0)?Dl(c,b,a,e,!0,f,n):El(c,null,b,a,e,!1,f,n)}else g("missing machine element: "+b)}catch(r){g(r.message)}return m}window.embedPDP10=function(a,b,c,d){Cb(!1);return Gl("pdp10",a,b,c,d)};window.embedPDP11=function(a,b,c,d){Cb(!1);return Gl("pdp11",a,b,c,d)};window.findMachineComponent=function(a,b){return va(b,a+".machine")};
window.processMachineScript=function(a,b){var c=!1;a+=".machine";if("string"==typeof b&&!za[a]){for(var c=!0,d=za,e=a,f=b.length,g=[],k=[],l="",m=null,n=0;n<f;n++){var q=b[n];if('"'==q||"'"==q)m&&q!=m?l+=q:(m?m=null:m=q,l&&(k.push(l),l=""));else{if(!m){if("\r"==q||"\n"==q)q=";";if(" "==q||"\t"==q||";"==q){l&&(k.push(l),l="");";"==q&&k.length&&(g.push(k),k=[]);continue}}l+=q}}l&&k.push(l);k.length&&g.push(k);d[e]=g;ya(a)||(c=!1)}return c};window.enableEvents=Cb;window.sendEvent=Eb;})();//# sourceMappingURL=/tmp/pdpjs/1.34.1/pdp11-dbg.map