The memory management toggle-in passes (see /devices/pdp11/machine/1170/panel/debugger)
This commit is contained in:
parent
b3bf213cd9
commit
0afab359ad
7 changed files with 222 additions and 178 deletions
|
|
@ -45,41 +45,41 @@ d.K[f++]=e[c]>>8&255,d.K[f++]=e[c]>>16&255,d.K[f++]=e[c]>>24&255;else d.K=g;d.X=
|
|||
function v(){return"http://"+(window?window.location.host:"www.pcjs.org")}function u(a){window&&window.alert(a)}function ua(a){var b=!1;window&&(b=window.confirm(a));return b}var xa=null;function ya(){if(null==xa){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}xa=a}return xa}
|
||||
function za(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b}function Aa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function Ba(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var Ca={init:[],show:[],exit:[]},Da=!1,Ea=!1,Fa=!0;
|
||||
function Ga(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Ha(a){Ca.init.push(a)}function Ia(a){if(Fa)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){u(""+("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks."))}}function Ja(a){!Fa&&a?(Fa=!0,Da&&Ka("init"),Ea&&Ka("show")):Fa=a}function Ka(a){Ca[a]&&Ia(Ca[a])}Ga("onload",function(){Da=!0;Ia(Ca.init)});Ga("onpageshow",function(){Ea=!0;Ia(Ca.show)});
|
||||
Ga(Ba("Opera")||Ba("iOS")?"onunload":"onbeforeunload",function(){Ia(Ca.exit)});function x(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.Lb=b.comment;this.jc=b;b=this.id.indexOf(".");0>b?this.Pa=this.id:(this.na=this.id.substr(0,b),this.Pa=this.id.substr(b+1));this[a]=c;this.l={ready:!1,Ea:!1,pb:!1,O:!1,error:!1};this.jb=null;this.l.error=!1;this.o={};this.C=null;y.push(this)}var La=void 0,Ma={};
|
||||
Ga(Ba("Opera")||Ba("iOS")?"onunload":"onbeforeunload",function(){Ia(Ca.exit)});function x(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.Lb=b.comment;this.jc=b;b=this.id.indexOf(".");0>b?this.Pa=this.id:(this.na=this.id.substr(0,b),this.Pa=this.id.substr(b+1));this[a]=c;this.l={ready:!1,Fa:!1,pb:!1,O:!1,error:!1};this.jb=null;this.l.error=!1;this.o={};this.C=null;y.push(this)}var La=void 0,Ma={};
|
||||
if(window){La||(La=window.location.search.substr(1));for(var Na,Oa=/\+/g,Pa=/([^&=]+)=?([^&]*)/g;Na=Pa.exec(La);)Ma[decodeURIComponent(Na[1].replace(Oa," "))]=decodeURIComponent(Na[2].replace(Oa," "))}function Qa(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}
|
||||
function z(a,b){b||(b=x);a.prototype=Qa(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}if(window){window.PCjs||(window.PCjs={});var Ra=window.PCjs.Machines||(window.PCjs.Machines={}),y=window.PCjs.Components||(window.PCjs.Components=[])}else Ra={},y=[];function Sa(a,b,c){Ra[a]&&b&&(Ra[a][b]=c)}function A(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<y.length;b++){var d=y[b];a&&d.id.indexOf(a)||c.push(d)}return c}
|
||||
function Ta(a){if(void 0!==a){var b;for(b=0;b<y.length;b++)if(y[b].id===a)return y[b]}return null}function Ua(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<y.length;d++)if(c)c==y[d]&&(c=null);else if(!(a!=y[d].type||b&&y[d].id.indexOf(b)))return y[d]}return null}function B(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){u(c.message+" ("+a+")")}return b}
|
||||
function C(a,b){b=D(b.parentNode,"pdp11-control");for(var c=0;c<b.length;c++)for(var d=b[c].childNodes,e=0;e<d.length;e++){var f=d[e];if(1===f.nodeType){var g=f.getAttribute("class");if(g)for(var k=g.split(" "),l=0;l<k.length;l++)switch(g=k[l],g){case "pdp11-binding":(g=B(f))&&g.binding&&a.$(g.type,g.binding,f,g.value),l=k.length}}}}
|
||||
function D(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}
|
||||
x.prototype={constructor:x,parent:null,toString:function(){return this.name?this.name:this.id||this.type},$:function(a,b,c){switch(b){case "clear":return this.o[b]||(this.o[b]=c,c.onclick=function(a){return function(){a.o.print&&(a.o.print.value="")}}(this)),!0;case "print":return this.o[b]||(this.Va=this.o[b]=c,c.value="",this.T=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.F=function(a){this.T(a,this.Pa)}),!0;default:return!1}},log:function(){},T:function(){},status:function(a){this.T(this.Pa+": "+a)},F:function(a,b,c){c=c||this.type;b||u((c?c+": ":"")+a)},ja:function(){return this.l.O=!0},ia:function(a,b){b&&(this.l.O=!1);return!0}};function Va(a,b){a.l.pb?(a.l.Ea=!1,a.l.pb=!1):a.l.error?a.T(a.toString()+" error"):a.l.Ea=b}function F(a,b){a.l.error||(a.l.ready=!1!==b,a.l.ready&&(b=a.jb,a.jb=null,b&&b()))}
|
||||
this.F=function(a){this.T(a,this.Pa)}),!0;default:return!1}},log:function(){},T:function(){},status:function(a){this.T(this.Pa+": "+a)},F:function(a,b,c){c=c||this.type;b||u((c?c+": ":"")+a)},ja:function(){return this.l.O=!0},ia:function(a,b){b&&(this.l.O=!1);return!0}};function Va(a,b){a.l.pb?(a.l.Fa=!1,a.l.pb=!1):a.l.error?a.T(a.toString()+" error"):a.l.Fa=b}function F(a,b){a.l.error||(a.l.ready=!1!==b,a.l.ready&&(b=a.jb,a.jb=null,b&&b()))}
|
||||
function Wa(a,b){b&&(a.l.ready?b():a.jb=b);return a.l.ready}function Xa(a,b){a.l.error=!0;a.F(b)}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});var Ya="undefined"!==typeof ArrayBuffer;
|
||||
function Za(a){x.call(this,"Panel",a,Za);this.c=this.f=this.i=this.s=0;this.v=this.w=!1;this.A=$a;this.m={};this.b={START:[1,!0,!1,this.qc],STEP:[1,!1,!1,this.rc],ENABLE:[1,!1,!1,this.mc],CONT:[1,!0,!1,this.kc],DEP:[0,!0,!1,this.lc],EXAM:[1,!0,!1,this.nc],LOAD:[1,!0,!1,this.pc],TEST:[0,!0,!1,this.oc]};for(a=0;22>a;a++)this.b["S"+a]=[0,!1,!1,this.sc,a]}z(Za);var $a=7;h=Za.prototype;h.reset=function(){};
|
||||
h.$=function(a,b,c,d){if(this.j&&this.j.$(a,b,c,d)||this.a&&this.a.$(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.o[b]=c,this.s++,!0;default:return"led"==a||"rled"==a?(this.o[b]=c,this.m[b]=d?1:0,this.s++,!0):"switch"==a?(void 0===this.b[b]&&(this.b[b]=[d?1:0]),this.o[b]=c,a=c.parentElement||c,a=a.parentElement||a,a.onmousedown=function(a,b){return function(){var c=a.b[b];ab(a,
|
||||
b,c[0]=1-c[0]);c[2]=!0;c[3]&&c[3].call(a,c[0],c[4]);a.v="DEP"==b;a.w="EXAM"==b}}(this,b),a.onmouseup=a.onmouseout=function(a,b){return function(){var c=a.b[b];c[1]&&c[2]&&(ab(a,b,c[0]=1-c[0]),c[3]&&c[3].call(a,c[0],c[4]));c[2]=!1}}(this,b),!0):this.parent.$.call(this,a,b,c,d)}};h.ha=function(a,b,c,d){this.j=a;this.h=b;this.a=c;this.C=d;bb(b,this,cb);db(b,this.reset.bind(this));eb(this);for(var e in this.b)ab(this,e,this.b[e][0])};h.ja=function(a,b){b||(fb(),this.stop());return!0};h.ia=function(){return!0};
|
||||
function gb(a,b,c){if(a=a.o[b])a.style.backgroundColor=c?"#ff0000":"#000000"}function eb(a,b){for(var c in a.m)gb(a,c,null!=b?b:a.m[c])}function ab(a,b,c){if(a=a.o[b])a.style.marginTop=c?"0px":"20px",a.style.backgroundColor=c?"#00ff00":"#228B22"}function hb(a,b,c,d){a.o[b]&&(void 0===c&&(Xa(a,"Value for "+b+" is invalid"),G(a.a)),c=8==(a.C&&a.C.h||8)?ka(c,d):m(c,d),a.o[b].textContent!=c&&(a.o[b].textContent=c))}
|
||||
h.qc=function(a){a||this.a.l.U||(this.h.reset(),ib(this.a),this.b.ENABLE&&this.b.ENABLE[0]&&jb(this.a))};h.rc=function(){};h.mc=function(a){a||G(this.a)};h.kc=function(a){if(!a&&!this.a.l.U)if(this.b.ENABLE&&this.b.ENABLE[0])jb(this.a);else{a=this.C;var b;if(b=a)a.l.Ea&&(a.l.pb=!0),b=!a.l.Ea;if(b)Va(a,!0),a.mb(0),Va(a,!1);else try{var c=this.a.mb(1);0<c&&(kb(this.a,c),lb(this.a,c,!0),mb(this.a,c))}catch(d){"number"!=typeof d&&Xa(this.a,d.stack||d.message)}this.stop();this.j&&this.j.ka()}};
|
||||
h.lc=function(a){a&&!this.a.l.U&&(this.v&&nb(this,this.c+2),a=ob(this,this.i),this.A==$a?this.h.lb(this.c,a):this.a.lb(this.c,a))};h.nc=function(a){a||this.a.l.U||(this.w&&nb(this,this.c+2),a=this.A==$a?this.h.kb(this.c):this.a.kb(this.c),ob(this,a))};h.pc=function(a){a||this.a.l.U||nb(this,this.i)};h.oc=function(a){eb(this,a||null)};h.sc=function(a,b){this.i=a?this.i|1<<b:this.i&~(1<<b)};function nb(a,b){a.c=b&a.h.Aa;pb(a,"A",a.c,22)}function ob(a,b){a.f=b&65535;pb(a,"D",a.f,16);return a.f}
|
||||
function qb(a,b,c){a.m[b]=c;gb(a,b,c)}function pb(a,b,c,d){for(var e=0;e<d;e++)qb(a,b+e,c&1<<e)}h.stop=function(){nb(this,this.a.g[7])};h.ka=function(){if(this.s){for(var a=0;a<this.a.g.length;a++)hb(this,"R"+a,this.a.g[a]);a=rb(this.a);hb(this,"PS",a);hb(this,"NF",a&8?1:0,1);hb(this,"ZF",a&4?1:0,1);hb(this,"VF",a&2?1:0,1);hb(this,"CF",a&1?1:0,1);pb(this,"D",this.f,16);pb(this,"A",this.c,22);a=this.a.Fa?this.a.Ga&16?1:2:4;qb(this,"B22",a&1);qb(this,"B18",a&2);qb(this,"B16",a&4)}};
|
||||
h.qc=function(a){a||this.a.l.U||(this.h.reset(),ib(this.a),this.b.ENABLE&&this.b.ENABLE[0]&&jb(this.a))};h.rc=function(){};h.mc=function(a){a||G(this.a)};h.kc=function(a){if(!a&&!this.a.l.U)if(this.b.ENABLE&&this.b.ENABLE[0])jb(this.a);else{a=this.C;var b;if(b=a)a.l.Fa&&(a.l.pb=!0),b=!a.l.Fa;if(b)Va(a,!0),a.mb(0),Va(a,!1);else try{var c=this.a.mb(1);0<c&&(kb(this.a,c),lb(this.a,c,!0),mb(this.a,c))}catch(d){"number"!=typeof d&&Xa(this.a,d.stack||d.message)}this.stop();this.j&&this.j.ka()}};
|
||||
h.lc=function(a){a&&!this.a.l.U&&(this.v&&nb(this,this.c+2),a=ob(this,this.i),this.A==$a?this.h.lb(this.c,a):this.a.lb(this.c,a))};h.nc=function(a){a||this.a.l.U||(this.w&&nb(this,this.c+2),a=this.A==$a?this.h.kb(this.c):this.a.kb(this.c),ob(this,a))};h.pc=function(a){a||this.a.l.U||nb(this,this.i)};h.oc=function(a){eb(this,a||null)};h.sc=function(a,b){this.i=a?this.i|1<<b:this.i&~(1<<b)};function nb(a,b){a.c=b&a.h.ua;pb(a,"A",a.c,22)}function ob(a,b){a.f=b&65535;pb(a,"D",a.f,16);return a.f}
|
||||
function qb(a,b,c){a.m[b]=c;gb(a,b,c)}function pb(a,b,c,d){for(var e=0;e<d;e++)qb(a,b+e,c&1<<e)}h.stop=function(){nb(this,this.a.g[7])};h.ka=function(){if(this.s){for(var a=0;a<this.a.g.length;a++)hb(this,"R"+a,this.a.g[a]);a=rb(this.a);hb(this,"PS",a);hb(this,"NF",a&8?1:0,1);hb(this,"ZF",a&4?1:0,1);hb(this,"VF",a&2?1:0,1);hb(this,"CF",a&1?1:0,1);pb(this,"D",this.f,16);pb(this,"A",this.c,22);a=this.a.Ba?this.a.Ga&16?1:2:4;qb(this,"B22",a&1);qb(this,"B18",a&2);qb(this,"B16",a&4)}};
|
||||
h.tc=function(a){return(a?this.i:this.f)&65535};h.nd=function(a){this.f=a};var sb={},cb=(sb[65400]=[null,null,Za.prototype.tc,Za.prototype.nd,"CNSW"],sb);function fb(){for(var a=!1,b=D(document,"pdp11","panel"),c=0;c<b.length;c++){var d=b[c],e=B(d),f=Ta(e.id);f||(a=!0,f=new Za(e));C(f,d);a&&F(f)}}Ha(fb);
|
||||
function tb(a,b,c){x.call(this,"Bus",a,tb);this.a=b;this.C=c;this.I=a.busWidth||16;this.m=0;this.G=[];this.w=null;this.A=Math.pow(2,this.I);this.Aa=this.A-1|0;this.b=H;this.c=Math.log2(this.b);this.D=this.b>>2;this.j=this.b-1;this.v=this.A/this.b|0;this.xa=[];this.f=0;this.i=!1;this.s=[];this.ac=[ub,vb,wb,xb];a=new I(this);yb(a,this.C);this.h=Array(this.v);for(b=0;b<this.v;b++)this.h[b]=a;F(this)}z(tb);var H=8192,zb=H-1;
|
||||
function ub(a,b){var c=-1,d=this.controller,e=d.xa[a];e?e[0]?c=e[0](b):e[2]&&(c=b&1?e[2](b&-2)>>8:e[2](b)&255):b&1&&(e=d.xa[a&-2])&&e[2]&&(c=e[2](b&-2)>>8);if(0<=c)return c;J(d,b,16);return 255}function vb(a,b,c){var d=!1,e=this.controller,f=e.xa[a];if(f)if(f[1])f[1](b,c),d=!0;else{if(f[3]){a=f[2]?f[2](0):0;if(c&1)f[3](a&255|b<<8,c&-2);else f[3](a&-256|b,c);d=!0}}else c&1&&(f=e.xa[a&-2])&&f[3]&&(c&=-2,a=f[2]?f[2](0):0,f[3](a&255|b<<8,c),d=!0);d||J(e,c,16)}
|
||||
function wb(a,b){var c=-1,d=this.controller;(a=d.xa[a])&&(a[2]?c=a[2](b):a[0]&&(c=a[0](b)|a[0](b+1)<<8));if(0<=c)return c;J(d,b,16);return 65535}function xb(a,b,c){var d=!1,e=this.controller;if(a=e.xa[a])a[3]?(a[3](b,c),d=!0):a[1]&&(a[1](b&255,c),a[1](b>>8,c+1),d=!0);d||J(e,c,16)}function Ab(a,b){if(b!=a.m){var c;a.m&&(c=(1<<a.m)-H,Bb(a,c,H,a.G),a.m=0);b&&(a.m=b,c=(1<<b)-H,a.G=Cb(a,c,H),a.w?Bb(a,c,H,a.w):(Db(a,c,H,Eb,a),a.w=Cb(a,c,H)))}}h=tb.prototype;
|
||||
function tb(a,b,c){x.call(this,"Bus",a,tb);this.a=b;this.C=c;this.I=a.busWidth||16;this.m=0;this.G=[];this.w=null;this.A=1<<this.I;this.ua=this.A-1;this.b=H;this.c=Math.log2(this.b);this.D=this.b>>2;this.j=this.b-1;this.v=this.A/this.b|0;this.ya=[];this.f=0;this.i=!1;this.s=[];this.ac=[ub,vb,wb,xb];a=new I(this);yb(a,this.C);this.h=Array(this.v);for(b=0;b<this.v;b++)this.h[b]=a;F(this)}z(tb);var H=8192,zb=H-1;
|
||||
function ub(a,b){var c=-1,d=this.controller,e=d.ya[a];e?e[0]?c=e[0](b):e[2]&&(c=b&1?e[2](b&-2)>>8:e[2](b)&255):b&1&&(e=d.ya[a&-2])&&e[2]&&(c=e[2](b&-2)>>8);if(0<=c)return c;J(d,b,16);return 255}function vb(a,b,c){var d=!1,e=this.controller,f=e.ya[a];if(f)if(f[1])f[1](b,c),d=!0;else{if(f[3]){a=f[2]?f[2](0):0;if(c&1)f[3](a&255|b<<8,c&-2);else f[3](a&-256|b,c);d=!0}}else c&1&&(f=e.ya[a&-2])&&f[3]&&(c&=-2,a=f[2]?f[2](0):0,f[3](a&255|b<<8,c),d=!0);d||J(e,c,16)}
|
||||
function wb(a,b){var c=-1,d=this.controller;(a=d.ya[a])&&(a[2]?c=a[2](b):a[0]&&(c=a[0](b)|a[0](b+1)<<8));if(0<=c)return c;J(d,b,16);return 65535}function xb(a,b,c){var d=!1,e=this.controller;if(a=e.ya[a])a[3]?(a[3](b,c),d=!0):a[1]&&(a[1](b&255,c),a[1](b>>8,c+1),d=!0);d||J(e,c,16)}function Ab(a,b){if(b!=a.m){var c;a.m&&(c=(1<<a.m)-H,Bb(a,c,H,a.G),a.m=0);b&&(a.m=b,c=1<<b,a.ua=c-1,c-=H,a.G=Cb(a,c,H),a.w?Bb(a,c,H,a.w):(Db(a,c,H,Eb,a),a.w=Cb(a,c,H)))}}h=tb.prototype;
|
||||
h.reset=function(){for(var a=0;a<this.s.length;a++)this.s[a]();Ab(this,16)};h.ja=function(a,b){b||this.reset();return!0};
|
||||
function Db(a,b,c,d,e){for(var f=b,g=c,k=f>>>a.c;0<g&&k<a.h.length;){var l=a.h[k],n=k*a.b,p=a.b-(f-n);p>g&&(p=g);if(!e&&l&&l.size){if(l.type==d){if(f+g<=l.Ja)return l.nb+=l.Ja-f,l.Ja=f,!0;if(f>=l.Ja+l.nb){p=l.size-(f-n);p>g&&(p=g);l.nb=f-l.Ja+p;f=n+a.b;g-=p;k++;continue}}return Fb(1,f,g)}f=new I(a,f,p,a.b,d,e);yb(f,a.C,l);a.h[k++]=f;f=n+a.b;g-=p}if(0>=g){c/=1024;var t;e="";t?10<t&&(t=10):t=c&-65536?10:5;if(null==c||isNaN(c))for(;0<t--;)e="?"+e;else for(;0<t--;)e=String.fromCharCode(c%10+48)+e,c/=
|
||||
10;a.status(e+"Kb "+Gb[d]+" at "+ka(b));return!0}return Fb(2,b,c)}function Cb(a,b,c){var d=[];for(b>>>=a.c;0<c&&b<a.h.length;)d.push(a.h[b++]),c-=a.b;return d}function Bb(a,b,c,d){var e=0;for(b>>>=a.c;0<c&&b<a.h.length;){var f=d[e++];if(!f)break;a.h[b++]=f;c-=a.b}}function Hb(a,b){3932160<=b&&(b=Ib(a.a,b));return a.h[(b&a.Aa)>>>a.c].xb(b&a.j,b)}function Jb(a,b){3932160<=b&&(b=Ib(a.a,b));return a.h[(b&a.Aa)>>>a.c].W(b&a.j,b)}
|
||||
h.kb=function(a){var b=a&this.j,c=(a&this.Aa)>>>this.c;this.i=!1;this.f++;a=this.h[c].Sb(b,a);this.f--;return a};h.Xa=function(a,b){this.i=!1;this.f++;this.h[(a&this.Aa)>>>this.c].Eb(a&this.j,b&255,a);this.f--};function Kb(a,b,c){3932160<=b&&(b=Ib(a.a,b));a.h[(b&a.Aa)>>>a.c].ob(b&a.j,c&65535,b)}h.lb=function(a,b){var c=a&this.j,d=(a&this.Aa)>>>this.c;this.i=!1;this.f++;this.h[d].Zb(c,b&65535,a);this.f--};
|
||||
function Lb(a){for(var b=0,c=[],d=0;d<a.v;d++){var e=a.h[d];if(e.ta||e.fc){c[b++]=d;var f=b++;if(e=e.save()){for(var g=0,k=0,l=[];g<e.length;){for(var n=e[g],p=g+1;p<e.length&&e[p]===n;)p++;l[k++]=p-g;l[k++]=n;g=p}l.length<e.length&&(e=l)}c[f]=e}}return c}function Mb(a,b,c,d,e,f,g,k,l){for(;b<=c;b+=2){var n=b&zb;void 0!==a.xa[n]?u("I/O address already registered: "+m(b,8,!0)):a.xa[n]=[d,e,f,g,k||"unknown",l,!1]}}
|
||||
10;a.status(e+"Kb "+Gb[d]+" at "+ka(b));return!0}return Fb(2,b,c)}function Cb(a,b,c){var d=[];for(b>>>=a.c;0<c&&b<a.h.length;)d.push(a.h[b++]),c-=a.b;return d}function Bb(a,b,c,d){var e=0;for(b>>>=a.c;0<c&&b<a.h.length;){var f=d[e++];if(!f)break;a.h[b++]=f;c-=a.b}}function Hb(a,b){3932160<=b&&(b=Ib(a.a,b));return a.h[(b&a.ua)>>>a.c].xb(b&a.j,b)}function Jb(a,b){3932160<=b&&(b=Ib(a.a,b));return a.h[(b&a.ua)>>>a.c].W(b&a.j,b)}
|
||||
h.kb=function(a){var b=a&this.j,c=(a&this.ua)>>>this.c;this.i=!1;this.f++;a=this.h[c].Sb(b,a);this.f--;return a};h.Xa=function(a,b){this.i=!1;this.f++;this.h[(a&this.ua)>>>this.c].Eb(a&this.j,b&255,a);this.f--};function Kb(a,b,c){3932160<=b&&(b=Ib(a.a,b));a.h[(b&a.ua)>>>a.c].ob(b&a.j,c&65535,b)}h.lb=function(a,b){var c=a&this.j,d=(a&this.ua)>>>this.c;this.i=!1;this.f++;this.h[d].Zb(c,b&65535,a);this.f--};
|
||||
function Lb(a){for(var b=0,c=[],d=0;d<a.v;d++){var e=a.h[d];if(e.ta||e.fc){c[b++]=d;var f=b++;if(e=e.save()){for(var g=0,k=0,l=[];g<e.length;){for(var n=e[g],p=g+1;p<e.length&&e[p]===n;)p++;l[k++]=p-g;l[k++]=n;g=p}l.length<e.length&&(e=l)}c[f]=e}}return c}function Mb(a,b,c,d,e,f,g,k,l){for(;b<=c;b+=2){var n=b&zb;void 0!==a.ya[n]?u("I/O address already registered: "+m(b,8,!0)):a.ya[n]=[d,e,f,g,k||"unknown",l,!1]}}
|
||||
function bb(a,b,c,d){for(var e in c){var f=+e,g=c[e];if(!(g[6]&&g[6]>a.a.Za)){var k=g[0]?g[0].bind(b):null,l=g[1]?g[1].bind(b):null,n=g[2]?g[2].bind(b):null,p=g[3]?g[3].bind(b):null,t=g[5]||1;65472<=f&&65487>=f&&(!k&&n&&(k=function(a){return function(b){return a(b)&255}.bind(b)}(n)),!l&&p&&(l=function(a){return function(b,c){return a(b,c)}.bind(b)}(p)));for(var w=g[4],E=0;E<t;E++,f+=2)w&&1<t&&(w=g[4]+E),Mb(a,f,f,k,l,n,p,w,d||64)}}}function db(a,b){a.s.push(b)}
|
||||
function J(a,b,c){a.i=!0;a.f||(c&&(a.a.M|=c),K(a.a,4,b))}function Nb(a){var b=a.i;a.i=!1;return b}function Fb(a,b,c){u("Memory block error ("+a+": "+m(b)+","+m(c)+")");return!1}function L(a){x.call(this,"Device",a,L);this.b={L:0,Cb:-1}}z(L);h=L.prototype;h.ha=function(a,b,c,d){this.h=b;this.a=c;this.C=d;var e=this;this.b.Cb=Ob(c,function(){e.b.za|=128;e.b.za&64&&(Pb(e.a,e.b.ld),Qb(e.a,e.b.Cb,1E3/60))});this.b.ld=Rb(64,6);bb(b,this,M);db(b,this.reset.bind(this));F(this)};
|
||||
h.reset=function(){this.b.za=0};h.Bc=function(){var a=this.b.za;this.b.za&=-129;return a};h.vd=function(a){this.b.za=a;a&64&&Qb(this.a,this.b.Cb,1E3/60);this.b.za=a&-129};h.Dc=function(){var a=this.a;return a.w&62337|a.$a<<5|a.ab<<1};h.xd=function(a){var b=this.a;a&=62337;if(b.w!=a){b.w=a;b.$a=a>>5&3;b.ab=a>>1&15;var c=0;a&257&&(c=4,a&1&&(c|=2));b.Fa!=c&&(b.Fa=c,Tb(b))}};h.Ec=function(){var a=this.a.Ba;a&65280&&(a=(a<<8|a>>8)&65535);return a};h.Fc=function(){return this.a.zb};h.Gc=function(){return this.a.Ga};
|
||||
function J(a,b,c){a.i=!0;a.f||(c&&(a.a.M|=c),K(a.a,4,b))}function Nb(a){var b=a.i;a.i=!1;return b}function Fb(a,b,c){u("Memory block error ("+a+": "+m(b)+","+m(c)+")");return!1}function L(a){x.call(this,"Device",a,L);this.b={L:0,Cb:-1}}z(L);h=L.prototype;h.ha=function(a,b,c,d){this.h=b;this.a=c;this.C=d;var e=this;this.b.Cb=Ob(c,function(){e.b.Aa|=128;e.b.Aa&64&&(Pb(e.a,e.b.ld),Qb(e.a,e.b.Cb,1E3/60))});this.b.ld=Rb(64,6);bb(b,this,M);db(b,this.reset.bind(this));F(this)};
|
||||
h.reset=function(){this.b.Aa=0};h.Bc=function(){var a=this.b.Aa;this.b.Aa&=-129;return a};h.vd=function(a){this.b.Aa=a;a&64&&Qb(this.a,this.b.Cb,1E3/60);this.b.Aa=a&-129};h.Dc=function(){var a=this.a;return a.w&62337|a.$a<<5|a.ab<<1};h.xd=function(a){var b=this.a;a&=62337;if(b.w!=a){b.w=a;b.$a=a>>5&3;b.ab=a>>1&15;var c=0;a&257&&(c=4,a&1&&(c|=2));b.Ba!=c&&(b.Ba=c,Tb(b))}};h.Ec=function(){var a=this.a.Ca;a&65280&&(a=(a<<8|a>>8)&65535);return a};h.Fc=function(){return this.a.zb};h.Gc=function(){return this.a.Ga};
|
||||
h.yd=function(a){var b=this.a;1170>b.Za&&(a&=-49);b.Ga!=a&&(b.Ga=a,b.Mb=a&16?4194303:262143,Tb(b))};h.fd=function(a){a=a>>1&63;var b=this.a.Ya[a>>1];return a&1?b>>16:b&65535};h.Yd=function(a,b){b=b>>1&63;var c=b>>1;this.a.Ya[c]=b&1?this.a.Ya[c]&65535|(a&63)<<16:this.a.Ya[c]&-65536|a&65534};h.Zc=function(a){return this.a.H[1][a>>1&7]};h.Rd=function(a,b){this.a.H[1][b>>1&7]=a&65295};h.Xc=function(a){return this.a.H[1][(a>>1&7)+8]};h.Pd=function(a,b){this.a.H[1][(b>>1&7)+8]=a&65295};
|
||||
h.Yc=function(a){return this.a.Y[1][a>>1&7]};h.Qd=function(a,b){b=b>>1&7;this.a.Y[1][b]=a;this.a.H[1][b]&=65295};h.Wc=function(a){return this.a.Y[1][(a>>1&7)+8]};h.Od=function(a,b){b=(b>>1&7)+8;this.a.Y[1][b]=a;this.a.H[1][b]&=65295};h.Ac=function(a){return this.a.H[0][a>>1&7]};h.ud=function(a,b){this.a.H[0][b>>1&7]=a&65295};h.yc=function(a){return this.a.H[0][(a>>1&7)+8]};h.sd=function(a,b){this.a.H[0][(b>>1&7)+8]=a&65295};h.zc=function(a){return this.a.Y[0][a>>1&7]};
|
||||
h.td=function(a,b){b=b>>1&7;this.a.Y[0][b]=a;this.a.H[0][b]&=65295};h.xc=function(a){return this.a.Y[0][(a>>1&7)+8]};h.rd=function(a,b){b=(b>>1&7)+8;this.a.Y[0][b]=a;this.a.H[0][b]&=65295};h.ed=function(a){return this.a.H[3][a>>1&7]};h.Xd=function(a,b){this.a.H[3][b>>1&7]=a&65295};h.cd=function(a){return this.a.H[3][(a>>1&7)+8]};h.Vd=function(a,b){this.a.H[3][(b>>1&7)+8]=a&65295};h.dd=function(a){return this.a.Y[3][a>>1&7]};h.Wd=function(a,b){b=b>>1&7;this.a.Y[3][b]=a;this.a.H[3][b]&=65295};
|
||||
h.bd=function(a){return this.a.Y[3][(a>>1&7)+8]};h.Ud=function(a,b){b=(b>>1&7)+8;this.a.Y[3][b]=a;this.a.H[3][b]&=65295};h.La=function(a){a&=7;return this.a.B&2048?this.a.Ha[a]:this.a.g[a]};h.Na=function(a,b){b&=7;this.a.B&2048?this.a.Ha[b]=a:this.a.g[b]=a};h.Lc=function(){return this.a.B&49152?this.a.ma[0]:this.a.g[6]};h.Dd=function(a){this.a.B&49152?this.a.ma[0]=a:this.a.g[6]=a};h.Oc=function(){return this.a.g[7]};h.Gd=function(a){this.a.g[7]=a};
|
||||
h.Ma=function(a){a&=7;return this.a.B&2048?this.a.g[a]:this.a.Ha[a]};h.Oa=function(a,b){b&=7;this.a.B&2048?this.a.g[b]=a:this.a.Ha[b]=a};h.Mc=function(){return 1==(this.a.B&49152)>>14?this.a.g[6]:this.a.ma[1]};h.Ed=function(a){1==(this.a.B&49152)>>14?this.a.g[6]=a:this.a.ma[1]=a};h.Nc=function(){return 3==(this.a.B&49152)>>14?this.a.g[6]:this.a.ma[3]};h.Fd=function(a){3==(this.a.B&49152)>>14?this.a.g[6]=a:this.a.ma[3]=a};h.vc=function(a){return this.a.Vb[a-65504>>1]};
|
||||
h.pd=function(a,b){this.a.Vb[b-65504>>1]=a};h.Rb=function(a){return 65520==a?61183:0};h.Yb=function(){};h.ad=function(){return 1};h.Td=function(){};h.uc=function(){return this.a.M};h.od=function(){this.a.M=0};h.Cc=function(){return this.a.Ub};h.wd=function(a,b){b&1||(a&=255);this.a.Ub=a};h.Hc=function(a){return a?this.a.Ab:0};h.zd=function(a){var b=this.a;if(a&=65024){var c=a>>9;do a+=34;while(c>>=1)}b.Ab=a;b.u|=2};h.$c=function(a){return a?this.a.Ca&65280:0};h.Sd=function(a){this.a.Ca=a|255};
|
||||
h.pd=function(a,b){this.a.Vb[b-65504>>1]=a};h.Rb=function(a){return 65520==a?61183:0};h.Yb=function(){};h.ad=function(){return 1};h.Td=function(){};h.uc=function(){return this.a.M};h.od=function(){this.a.M=0};h.Cc=function(){return this.a.Ub};h.wd=function(a,b){b&1||(a&=255);this.a.Ub=a};h.Hc=function(a){return a?this.a.Ab:0};h.zd=function(a){var b=this.a;if(a&=65024){var c=a>>9;do a+=34;while(c>>=1)}b.Ab=a;b.u|=2};h.$c=function(a){return a?this.a.Da&65280:0};h.Sd=function(a){this.a.Da=a|255};
|
||||
h.Kc=function(){return rb(this.a)};h.Cd=function(a){Ub(this.a,a&-1809|rb(this.a)&1808);this.a.u|=128};h.Xb=function(){};
|
||||
var N={},M=(N[61568]=[null,null,L.prototype.fd,L.prototype.Yd,"UNIMAP",64,1170],N[62592]=[null,null,L.prototype.Zc,L.prototype.Rd,"SISDR",8,1145],N[62608]=[null,null,L.prototype.Xc,L.prototype.Pd,"SDSDR",8,1145],N[62624]=[null,null,L.prototype.Yc,L.prototype.Qd,"SISAR",8,1145],N[62640]=[null,null,L.prototype.Wc,L.prototype.Od,"SDSAR",8,1145],N[62656]=[null,null,L.prototype.Ac,L.prototype.ud,"KISDR",8,1145],N[62672]=[null,null,L.prototype.yc,L.prototype.sd,"KDSDR",8,1145],N[62688]=[null,null,L.prototype.zc,
|
||||
L.prototype.td,"KISAR",8,1145],N[62704]=[null,null,L.prototype.xc,L.prototype.rd,"KDSAR",8,1145],N[62798]=[null,null,L.prototype.Gc,L.prototype.yd,"MMR3",1,1145],N[65382]=[null,null,L.prototype.Bc,L.prototype.vd,"LKS"],N[65402]=[null,null,L.prototype.Dc,L.prototype.xd,"MMR0",1,1145],N[65404]=[null,null,L.prototype.Ec,L.prototype.Xb,"MMR1",1,1145],N[65406]=[null,null,L.prototype.Fc,L.prototype.Xb,"MMR2",1,1145],N[65408]=[null,null,L.prototype.ed,L.prototype.Xd,"UISDR",8,1145],N[65424]=[null,null,L.prototype.cd,
|
||||
|
|
@ -91,34 +91,34 @@ Ha(function(){for(var a=D(document,"pdp11","device"),b=0;b<a.length;b++){var c,d
|
|||
function I(a,b,c,d,e,f){this.h=a;this.id=Zb+=2;this.a=null;this.Ja=b;this.nb=c;this.size=d||0;this.type=e||$b;this.j=e==ac;this.controller=null;yb(this);this.ta=this.fc=!1;if(this.size)if(f)this.controller=f,a=[null,0],this.a=a[0],bc(this,f.ac);else if(Ya)this.b=new ArrayBuffer(this.size),this.c=new DataView(this.b,0,this.size),this.o=new Uint8Array(this.b,0,this.size),this.s=new Uint16Array(this.b,0,this.size>>1),this.a=new Int32Array(this.b,0,this.size>>2),bc(this,Yb?cc:dc);else{a=this.a=Array(this.size>>
|
||||
2);for(f=0;f<a.length;f++)a[f]=0;bc(this,ec)}else bc(this)}var $b=0,ac=2,Eb=4,Gb=["NONE","RAM","ROM","VID","H/W"],Zb=0;
|
||||
I.prototype={constructor:I,parent:null,save:function(){var a,b;if(this.controller)a=null;else if(Ya)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.c.getInt32(b<<2,!0);else a=this.a;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(Ya)for(b=0;b<a.length;b++)this.c.setInt32(b<<2,a[b],!0);else this.a=a;return this.ta=!0}return!1},v:function(a,b){J(this.h,b,32);return 255},f:function(a,b,c){J(this.h,c,32)},w:function(a,b){return this.xb(a++,b++)|
|
||||
this.xb(a,b)<<8},A:function(a,b,c){this.Db(a++,b&255,c++);this.Db(a,b>>8,c)},N:function(a){return this.a[a>>2]>>>((a&3)<<3)&255},na:function(a,b){a&1&&J(this.h,b,64);b=a>>2;a=(a&3)<<3;var c=this.a[b]>>a;return 24>a?c&65535:c&255|(this.a[b+1]&255)<<8},qa:function(a,b){var c=a>>2;a=(a&3)<<3;this.a[c]=this.a[c]&~(255<<a)|b<<a;this.ta=!0},wa:function(a,b,c){a&1&&J(this.h,c,64);c=a>>2;a=(a&3)<<3;24>a?this.a[c]=this.a[c]&~(65535<<a)|b<<a:(this.a[c]=this.a[c]&16777215|b<<24,c++,this.a[c]=this.a[c]&-256|
|
||||
this.xb(a,b)<<8},A:function(a,b,c){this.Db(a++,b&255,c++);this.Db(a,b>>8,c)},N:function(a){return this.a[a>>2]>>>((a&3)<<3)&255},na:function(a,b){a&1&&J(this.h,b,64);b=a>>2;a=(a&3)<<3;var c=this.a[b]>>a;return 24>a?c&65535:c&255|(this.a[b+1]&255)<<8},qa:function(a,b){var c=a>>2;a=(a&3)<<3;this.a[c]=this.a[c]&~(255<<a)|b<<a;this.ta=!0},xa:function(a,b,c){a&1&&J(this.h,c,64);c=a>>2;a=(a&3)<<3;24>a?this.a[c]=this.a[c]&~(65535<<a)|b<<a:(this.a[c]=this.a[c]&16777215|b<<24,c++,this.a[c]=this.a[c]&-256|
|
||||
b>>8);this.ta=!0},G:function(a,b){return this.I(a,b)},R:function(a,b){return this.Sb(a,b)},oa:function(a,b,c){this.j?this.f(a,b,c):this.Eb(a,b,c)},sa:function(a,b,c){this.j?this.f(a,b,c):this.Zb(a,b,c)},D:function(a){return this.o[a]},J:function(a){return this.o[a]},P:function(a,b){a&1&&J(this.h,b,64);return this.c.getUint16(a,!0)},aa:function(a,b){a&1&&J(this.h,b,64);return this.s[a>>1]},da:function(a,b){this.o[a]=b;this.ta=!0},pa:function(a,b){this.o[a]=b;this.ta=!0},ra:function(a,b,c){a&1&&J(this.h,
|
||||
c,64);this.c.setUint16(a,b,!0);this.ta=!0},va:function(a,b,c){a&1&&J(this.h,c,64);this.s[a>>1]=b;this.ta=!0}};function yb(a,b,c){a.C=b;a.i=a.m=0;c&&((a.i=c.i)&&fc(a,hc,!1),(a.m=c.m)&&ic(a,hc,!1))}function ic(a,b,c){c&&a.m||(a.Db=!a.j&&b[1]||a.f,a.ob=!a.j&&b[3]||a.A);if(c||void 0===c)a.Eb=b[1]||a.f,a.Zb=b[3]||a.A}function fc(a,b,c){c&&a.i||(a.xb=b[0]||a.v,a.W=b[2]||a.w);if(c||void 0===c)a.I=b[0]||a.v,a.Sb=b[2]||a.w}function bc(a,b){b||(b=jc);fc(a,b,void 0);ic(a,b,void 0)}
|
||||
var jc=[],ec=[I.prototype.N,I.prototype.qa,I.prototype.na,I.prototype.wa],hc=[I.prototype.G,I.prototype.oa,I.prototype.R,I.prototype.sa];if(Ya)var dc=[I.prototype.D,I.prototype.da,I.prototype.P,I.prototype.ra],cc=[I.prototype.J,I.prototype.pa,I.prototype.aa,I.prototype.va];
|
||||
function kc(a,b){x.call(this,"CPU",a,kc);var c=a.multiplier||1;this.gb=a.cycles||b;this.qa=c;this.ub=Math.round(this.gb/1E4)/100;this.va=this.ub*this.qa;this.l.U=!1;this.l.Bb=!1;this.l.Ua=a.autoStart;this.l.fb=!1;this.cb=this.wa=0;this.eb=a.csStart;this.Qa=a.csInterval;this.Ra=a.csStop;this.I=[];this.Qb=this.kd.bind(this);F(this)}z(kc);var lc=["power","reset"];h=kc.prototype;
|
||||
c,64);this.c.setUint16(a,b,!0);this.ta=!0},wa:function(a,b,c){a&1&&J(this.h,c,64);this.s[a>>1]=b;this.ta=!0}};function yb(a,b,c){a.C=b;a.i=a.m=0;c&&((a.i=c.i)&&fc(a,hc,!1),(a.m=c.m)&&ic(a,hc,!1))}function ic(a,b,c){c&&a.m||(a.Db=!a.j&&b[1]||a.f,a.ob=!a.j&&b[3]||a.A);if(c||void 0===c)a.Eb=b[1]||a.f,a.Zb=b[3]||a.A}function fc(a,b,c){c&&a.i||(a.xb=b[0]||a.v,a.W=b[2]||a.w);if(c||void 0===c)a.I=b[0]||a.v,a.Sb=b[2]||a.w}function bc(a,b){b||(b=jc);fc(a,b,void 0);ic(a,b,void 0)}
|
||||
var jc=[],ec=[I.prototype.N,I.prototype.qa,I.prototype.na,I.prototype.xa],hc=[I.prototype.G,I.prototype.oa,I.prototype.R,I.prototype.sa];if(Ya)var dc=[I.prototype.D,I.prototype.da,I.prototype.P,I.prototype.ra],cc=[I.prototype.J,I.prototype.pa,I.prototype.aa,I.prototype.wa];
|
||||
function kc(a,b){x.call(this,"CPU",a,kc);var c=a.multiplier||1;this.gb=a.cycles||b;this.qa=c;this.ub=Math.round(this.gb/1E4)/100;this.wa=this.ub*this.qa;this.l.U=!1;this.l.Bb=!1;this.l.Ua=a.autoStart;this.l.fb=!1;this.cb=this.xa=0;this.eb=a.csStart;this.Qa=a.csInterval;this.Ra=a.csStop;this.I=[];this.Qb=this.kd.bind(this);F(this)}z(kc);var lc=["power","reset"];h=kc.prototype;
|
||||
h.ha=function(a,b,c,d){this.j=a;this.h=b;this.C=d;for(b=0;b<lc.length;b++)(c=this.o[lc[b]])&&this.j.$(null,lc[b],c);a=mc(a,"autoStart");null!=a&&(this.l.Ua="true"==a?!0:"false"==a?!1:!!a);F(this)};h.reset=function(){};h.save=function(){return null};h.restore=function(){return!1};h.ja=function(a,b){if(!b){if(a&&this.restore){nc(this);if(!this.restore(a))return!1;oc(this)}else this.reset();this.T("No debugger detected")}this.j.ka();return!0};h.ia=function(a){return a?this.save():!0};
|
||||
h.Ua=function(){return this.l.Ua||void 0===this.o.run?(jb(this),!0):!1};h.Ib=function(){return 0};function oc(a){void 0===a.eb&&(a.eb=0);void 0===a.Qa&&(a.Qa=-1);void 0===a.Ra&&(a.Ra=-1);a.l.fb=0<=a.eb&&0<a.Qa;a.l.fb&&(a.cb=0,a.wa=a.eb-a.sa)}function mb(a,b){if(a.l.fb){var c=!1;a.cb=a.cb+a.Ib()|0;a.wa-=b;0>=a.wa&&(a.wa+=a.Qa,c=!0);0<=a.Ra&&a.Ra<=pc(a)&&(a.Qa=a.Ra=-1,oc(a),G(a),c=!0);c&&a.T(pc(a)+" cycles: checksum="+m(a.cb))}}
|
||||
h.Ua=function(){return this.l.Ua||void 0===this.o.run?(jb(this),!0):!1};h.Ib=function(){return 0};function oc(a){void 0===a.eb&&(a.eb=0);void 0===a.Qa&&(a.Qa=-1);void 0===a.Ra&&(a.Ra=-1);a.l.fb=0<=a.eb&&0<a.Qa;a.l.fb&&(a.cb=0,a.xa=a.eb-a.sa)}function mb(a,b){if(a.l.fb){var c=!1;a.cb=a.cb+a.Ib()|0;a.xa-=b;0>=a.xa&&(a.xa+=a.Qa,c=!0);0<=a.Ra&&a.Ra<=pc(a)&&(a.Qa=a.Ra=-1,oc(a),G(a),c=!0);c&&a.T(pc(a)+" cycles: checksum="+m(a.cb))}}
|
||||
h.$=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.o[b]=c,!0;case "run":return this.o[b]=c,c.onclick=function(){var a;if(a=d.j)if(a=d.j,a.l.O)a=!0;else{var b=null,c,k=A(a.id);for(c=0;c<k.length&&(b=k[c],b===a||b.l.ready);c++);if(c==k.length)for(c=0;c<k.length&&(b=k[c],b===a||b.l.O);c++);c==k.length&&(b=a);u("The "+b.type+" component ("+b.id+") is not "+(b.l.ready?"powered yet":"ready yet"+(b.jb?" (waiting for notification)":""))+".");a=!1}a&&(d.l.U?G(d):jb(d))},!0;case "speed":return this.o[b]=
|
||||
c,!0;case "setSpeed":return this.o[b]=c,c.onclick=function(){qc(d,d.qa<<1,!0)},c.textContent=this.va.toFixed(2)+"Mhz",!0}return!1};h.ka=function(){var a=this.o.speed;a&&(a.textContent=this.l.U&&this.da?this.da.toFixed(2)+"Mhz":"Stopped")};function lb(a,b,c){a.sa+=b;c&&(a.pa=a.a=a.G=0)}function rc(a,b){var c=1;b&&1<a.qa&&a.da&&(c=a.da/a.ub);a.Nb=Math.round(1E3/30);a.hb=Math.floor(a.gb/30*c);b||(a.Sa=a.hb);a.vb=0}function pc(a){return a.sa+a.aa+a.pa-a.a}
|
||||
function nc(a){a.da=0;a.Ob=0;a.sa=a.aa=a.pa=a.a=a.G=0;oc(a);qc(a,1)}function qc(a,b,c){if(void 0!==b){.8>a.da/a.va&&(b=1);a.qa=b;b=a.ub*a.qa;if(a.va!=b){a.va=b;b=a.va.toFixed(2)+"Mhz";var d=a.o.setSpeed;d&&(d.textContent=b);a.T("target speed: "+b)}c&&a.j&&sc(a.j)}lb(a,a.aa);a.aa=0;a.R=ra();a.oa=0;rc(a)}function Ob(a,b){var c=a.I.length;a.I.push([-1,b]);return c}function Qb(a,b,c){0<=b&&b<a.I.length&&0>a.I[b][0]&&(c=a.gb*a.qa/1E3*c|0,a.I[b][0]=c+tc(a))}
|
||||
c,!0;case "setSpeed":return this.o[b]=c,c.onclick=function(){qc(d,d.qa<<1,!0)},c.textContent=this.wa.toFixed(2)+"Mhz",!0}return!1};h.ka=function(){var a=this.o.speed;a&&(a.textContent=this.l.U&&this.da?this.da.toFixed(2)+"Mhz":"Stopped")};function lb(a,b,c){a.sa+=b;c&&(a.pa=a.a=a.G=0)}function rc(a,b){var c=1;b&&1<a.qa&&a.da&&(c=a.da/a.ub);a.Nb=Math.round(1E3/30);a.hb=Math.floor(a.gb/30*c);b||(a.Sa=a.hb);a.vb=0}function pc(a){return a.sa+a.aa+a.pa-a.a}
|
||||
function nc(a){a.da=0;a.Ob=0;a.sa=a.aa=a.pa=a.a=a.G=0;oc(a);qc(a,1)}function qc(a,b,c){if(void 0!==b){.8>a.da/a.wa&&(b=1);a.qa=b;b=a.ub*a.qa;if(a.wa!=b){a.wa=b;b=a.wa.toFixed(2)+"Mhz";var d=a.o.setSpeed;d&&(d.textContent=b);a.T("target speed: "+b)}c&&a.j&&sc(a.j)}lb(a,a.aa);a.aa=0;a.R=ra();a.oa=0;rc(a)}function Ob(a,b){var c=a.I.length;a.I.push([-1,b]);return c}function Qb(a,b,c){0<=b&&b<a.I.length&&0>a.I[b][0]&&(c=a.gb*a.qa/1E3*c|0,a.I[b][0]=c+tc(a))}
|
||||
function kb(a,b){for(var c=a.I.length-1;0<=c;c--){var d=a.I[c];0>d[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function tc(a,b){var c=a.pa-=a.a;a.a=a.G=0;b&&(a.pa=0);return c}
|
||||
h.kd=function(){if(this.l.U){this.vb>=this.gb&&rc(this,!0);this.Ta=0;this.bb=ra();if(this.oa){var a=this.bb-this.oa;a>this.Nb&&(this.R+=a,this.R>this.bb&&(this.R=this.bb))}try{do{for(var b,c=this.l.fb?1:this.hb,d=this.I.length-1;0<=d;d--){var e=this.I[d];0>e[0]||c>e[0]&&(c=e[0])}b=c;try{this.mb(b)}catch(f){if("number"!=typeof f)throw f;}b=tc(this,!0);this.Ta+=b;this.aa+=b;mb(this,b);kb(this,b);this.Sa-=b;if(0>=this.Sa){this.Sa+=this.hb;15<=++this.Ob&&(this.j&&this.j.ka(),this.Ob=0);break}}while(this.l.U)}catch(f){G(this);
|
||||
this.j&&this.j.stop(ra(),pc(this));Xa(this,f.stack||f.message);return}if(this.l.U){a=setTimeout;b=this.Qb;this.oa=ra();c=this.Nb;this.Ta&&(c=Math.round(c*this.Ta/this.hb));c-=this.oa-this.bb;if(d=this.oa-this.R)this.da=Math.round(this.aa/(10*d))/100,864E5<=d&&(this.sa=0,qc(this));if(0>c||this.da<this.va)-1E3>c&&(this.R-=c),c=0;this.vb+=this.Ta;this.oa+=c;a(b,c)}}};
|
||||
this.j&&this.j.stop(ra(),pc(this));Xa(this,f.stack||f.message);return}if(this.l.U){a=setTimeout;b=this.Qb;this.oa=ra();c=this.Nb;this.Ta&&(c=Math.round(c*this.Ta/this.hb));c-=this.oa-this.bb;if(d=this.oa-this.R)this.da=Math.round(this.aa/(10*d))/100,864E5<=d&&(this.sa=0,qc(this));if(0>c||this.da<this.wa)-1E3>c&&(this.R-=c),c=0;this.vb+=this.Ta;this.oa+=c;a(b,c)}}};
|
||||
function jb(a){var b;a.l.error?(a.T(a.toString()+" error"),b=!0):b=!1;if(!b)if(a.l.U)a.T(a.toString()+" busy");else{qc(a);a.l.U=!0;a.l.Bb=!0;if(b=a.o.run)b.textContent="Halt";a.j&&a.j.start(a.R,pc(a));setTimeout(a.Qb,0)}}h.mb=function(){return 0};function G(a){var b=!1;if(a.l.U){tc(a);lb(a,a.aa);a.aa=0;a.l.U=!1;if(b=a.o.run)b.textContent="Run";a.j&&a.j.stop(ra(),pc(a));b=!0}a.l.complete=void 0;return b}
|
||||
function uc(a){this.Za=+a.model||1170;this.Jb=a.addrReset||0;kc.call(this,a,6666667);this.decode=1120==this.Za?vc.bind(this):wc.bind(this);xc(this);this.ra=0;this.N=null;this.l.complete=!1}z(uc,kc);h=uc.prototype;h.reset=function(){this.status("model "+this.Za);this.l.U&&G(this);xc(this);nc(this);this.l.error=!1;this.parent.reset.call(this)};
|
||||
function xc(a){a.m=65536;a.f=32768;a.i=65535;a.s=32768;a.B=15;a.g=[0,0,0,0,0,0,0,a.Jb];a.Ha=[0,0,0,0,0,0];a.ma=[0,0,0,0];a.v=0;a.ab=0;a.ic=[4,2,0,1];a.H=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.Y=[[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]];a.Ya=[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];a.Vb=[0,0,0,0,0,0,0,0];a.Ub=0;a.u=0;a.A=a.D=0;a.c=a.b=a.tb=0;a.Ia=-1;ib(a)}function ib(a){a.Ca=255;a.M=0;a.Ab=0;a.w=0;a.Ba=0;a.zb=0;a.Ga=0;a.Fa=0;a.$a=0;a.Mb=262143;a.N=null;a.h&&Tb(a)}function Tb(a){a.Fa?(a.P=65536,a.J=a.hc,a.W=a.gd,a.ob=a.Zd,Ab(a.h,a.Ga&16?22:18)):(a.P=0,a.J=a.gc,a.W=a.Tb,a.ob=a.$b,Ab(a.h,16))}function yc(a,b,c){a.Jb=b;P(a,b);!c&&a.C&&(G(a)||a.C.ka())}h.Ib=function(){return 0};
|
||||
0,0,0,0,0,0,0,0,0];a.Vb=[0,0,0,0,0,0,0,0];a.Ub=0;a.u=0;a.A=a.D=0;a.c=a.b=a.tb=0;a.Ia=-1;ib(a)}function ib(a){a.Da=255;a.M=0;a.Ab=0;a.w=0;a.Ca=0;a.zb=0;a.Ga=0;a.Ba=0;a.$a=0;a.Mb=262143;a.N=null;a.h&&Tb(a)}function Tb(a){a.Ba?(a.P=65536,a.J=a.hc,a.W=a.gd,a.ob=a.Zd,Ab(a.h,a.Ga&16?22:18)):(a.P=0,a.J=a.gc,a.W=a.Tb,a.ob=a.$b,Ab(a.h,16))}function yc(a,b,c){a.Jb=b;P(a,b);!c&&a.C&&(G(a)||a.C.ka())}h.Ib=function(){return 0};
|
||||
h.save=function(){var a=new Q(this);a.set(0,[]);a.set(1,[this.sa,this.qa]);a.set(2,Lb(this.h));return a.data()};h.restore=function(a){var b=a[1];this.sa=b[1];qc(this,b[3]);a:{b=this.h;a=a[2];var c;for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.D){for(var f=0,g=Array(b.D),k=0;k<e.length-1;)for(var l=e[k++],n=e[k++];l--;)g[f++]=n;e=g}f=b.h[d];if(!f||!f.restore(e)){u("Unable to restore memory block "+d);b=!1;break a}}b=!0}return b};function R(a){return a.m&65536?1:0}
|
||||
h.ya=function(){return this.s&32768?8:0};function zc(a){var b=a.g[7];a.w&57344||(a.Ba=0,a.zb=b);a.g[7]=b+2&65535;return a.W(b)}function Ac(a,b){var c=a.g[7];a.g[7]=c+b&65535;return c}function P(a,b){a.g[7]=b&65535}function Rb(a,b){return{md:a,Ka:b,next:null}}function Pb(a,b){if(b!=a.N){var c=a.N;if(!c||c.Ka<=b.Ka)b.next=c,a.N=b;else{do{var d=c.next;if(!d||d.Ka<=b.Ka){b.next=d;c.next=b;break}c=d}while(c)}}a.u|=2}function rb(a){return a.B=a.B&63728|a.ya()|(a.i&65535?0:4)|(a.f&32768?2:0)|R(a)}
|
||||
h.za=function(){return this.s&32768?8:0};function zc(a){var b=a.g[7];a.w&57344||(a.Ca=0,a.zb=b);a.g[7]=b+2&65535;return a.W(b)}function Ac(a,b){var c=a.g[7];a.g[7]=c+b&65535;return c}function P(a,b){a.g[7]=b&65535}function Rb(a,b){return{md:a,Ka:b,next:null}}function Pb(a,b){if(b!=a.N){var c=a.N;if(!c||c.Ka<=b.Ka)b.next=c,a.N=b;else{do{var d=c.next;if(!d||d.Ka<=b.Ka){b.next=d;c.next=b;break}c=d}while(c)}}a.u|=2}function rb(a){return a.B=a.B&63728|a.za()|(a.i&65535?0:4)|(a.f&32768?2:0)|R(a)}
|
||||
function Ub(a,b){a.s=b<<12;a.i=~b&4;a.f=b<<14;a.m=b<<16;if((b^a.B)&2048)for(var c=a.Ha.length;0<=--c;){var d=a.g[c];a.g[c]=a.Ha[c];a.Ha[c]=d}a.v=b>>14&3;c=a.B>>14&3;a.v!=c&&(a.ma[c]=a.g[6],a.g[6]=a.ma[a.v]);a.B=b;a.u|=2}function S(a,b){a.u&128||(a.s=a.i=b,a.f=0)}function Bc(a,b,c){a.u&128||(a.s=a.i=a.m=b,a.f=c||0)}function Cc(a,b,c,d){a.u&128||(a.s=a.i=a.m=b,a.f=(c^b)&(d^b))}function Dc(a,b){a.u&128||(a.s=a.i=a.m=b,a.f=a.s^a.m>>1)}function Ec(a,b,c,d){a.u&128||(a.s=a.i=a.m=b,a.f=(c^d)&(d^b))}
|
||||
function K(a,b,c){if(!a.ra){var d=!1;0>a.Ia?a.Ia=rb(a):a.v||(b=4,d=!0);a.w&57344||(a.Ba=63222,a.zb=b);a.v=0;var e=a.W(b|a.P),f=a.W(b+2&65535|a.P);Ub(a,f&-12289|a.Ia>>2&12288);d&&(a.M|=4,a.g[6]=4);Fc(a,a.Ia);Fc(a,a.g[7]);P(a,e);a.u&=-113;a.Ia=-1;a.u|=8;if(26!=c)throw b;}}function Gc(a){var b=Hc(a),c=Hc(a)&-1793;a.B&49152&&(c=c&-225|a.B&63712);P(a,b);Ub(a,c);a.u&=-17}
|
||||
function K(a,b,c){if(!a.ra){var d=!1;0>a.Ia?a.Ia=rb(a):a.v||(b=4,d=!0);a.w&57344||(a.Ca=63222,a.zb=b);a.v=0;var e=a.W(b|a.P),f=a.W(b+2&65535|a.P);Ub(a,f&-12289|a.Ia>>2&12288);d&&(a.M|=4,a.g[6]=4);Fc(a,a.Ia);Fc(a,a.g[7]);P(a,e);a.u&=-113;a.Ia=-1;a.u|=8;if(26!=c)throw b;}}function Gc(a){var b=Hc(a),c=Hc(a)&-1793;a.B&49152&&(c=c&-225|a.B&63712);P(a,b);Ub(a,c);a.u&=-17}
|
||||
function Ib(a,b){var c=b>>13&31;31>c&&a.Ga&32&&(b=a.Ya[c]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)"));return b}
|
||||
function Ic(a,b,c){var d,e,f,g=0;d=b>>13;a.Ga&a.ic[a.v]||(d&=7);e=a.H[a.v][d];f=(a.Y[a.v][d]<<6)+(b&8191)&a.Mb;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.H[a.v][d]=e;if(4194170!==f||a.v)a.$a=a.v,a.ab=d;b=!1;g&&(g&57344&&(0<=a.Ia&&(g|=128),a.w&57344||(a.w=a.w|g|a.$a<<5|a.ab<<1),b=!0),a.w&61440||!(4191360>
|
||||
f||4194239<f)||(a.w|=4096,a.w&512&&(a.u|=32)),b&&K(a,168,16));return f}function Jc(a,b,c){b&1&&a.a--;a=a.h;c&=255;3932160<=b&&(b=Ib(a.a,b));a.h[(b&a.Aa)>>>a.c].Db(b&a.j,c&255,b)}function Hc(a){var b=a.W(a.g[6]|a.P);a.g[6]=a.g[6]+2&65535;return b}function Fc(a,b){var c=a.g[6]-2&65535;a.g[6]=c;a.w&57344||(a.Ba=a.Ba<<8|246);!a.v&&c<=a.Ca&&4<c&&(c<=a.Ca-32?(a.M|=4,a.g[6]=4,K(a,4,18)):(a.M|=8,a.u|=4));a.ob(c,b)}
|
||||
function Kc(a,b,c,d){var e,f,g=d&8?0:a.P;switch(b){case 0:return K(a,4,20),0;case 1:return 6===c&&!a.v&&d&4&&(a.g[6]<=a.Ca||65534<=a.g[6])&&(a.g[6]<=a.Ca-32||65534<=a.g[6]?(a.M|=4,a.g[6]=4,K(a,4,22)):(a.M|=8,a.u|=64)),a.a-=3,7===c?a.g[c]:a.g[c]|g;case 2:f=2;e=a.g[c];7!==c&&(e|=g,6>c&&d&1&&(f=1));a.a-=3;break;case 3:f=2;e=a.g[c];7!==c&&(e|=g);e=a.W(e);e|=g;a.a-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.g[c]+f&65535;7!==c&&(e|=g);a.a-=4;break;case 5:f=-2;e=a.g[c]-2&65535;7!==c&&(e|=g);e=a.W(e)|g;a.a-=
|
||||
8;break;case 6:return e=a.W(Ac(a,2)),e=e+a.g[c]&65535|g,a.a-=6,e;case 7:return e=a.W(Ac(a,2)),e=e+a.g[c]&65535,e=a.W(e|a.P)|g,a.a-=10,e}a.g[c]=a.g[c]+f&65535;!g||a.w&57344||(a.Ba=a.Ba<<8|f<<3&248|c);6==c&&!a.v&&d&4&&0>=f&&(a.g[6]<=a.Ca||65534<=a.g[6])&&(a.g[6]<=a.Ca-32?(a.M|=4,a.g[6]=4,K(a,4,24)):(a.M|=8,a.u|=64));return e}h.kb=function(a){if(!this.Fa)return this.h.kb(a);this.ra++;a=this.Tb(Ic(this,a,2));this.ra--;return a};
|
||||
h.Xa=function(a,b){this.Fa?(this.ra++,Jc(this,Ic(this,a,5),b),this.ra--):this.h.Xa(a,b)};h.lb=function(a,b){this.Fa?(this.ra++,this.$b(Ic(this,a,4),b),this.ra--):this.h.lb(a,b)};h.gc=function(a,b,c){return Kc(this,a,b,c)};h.hc=function(a,b,c){return Ic(this,Kc(this,a,b,c),c)};h.Tb=function(a){return Jb(this.h,a)};h.gd=function(a){return Jb(this.h,Ic(this,a,2))};h.$b=function(a,b){Kb(this.h,a,b&65535)};h.Zd=function(a,b){Kb(this.h,Ic(this,a,4),b)};
|
||||
function Lc(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?(d=Kc(a,b,d,2),c&65536||61440!==(a.B&61440)&&(d&=65535),a.v=a.B>>12&3,c=a.W(d|c&a.P),a.v=a.B>>14&3):c=6!=d||(a.B>>2&12288)===(a.B&12288)?a.g[d]:a.ma[a.B>>12&3];return c}function Mc(a,b,c,d){a.w&57344||(a.Ba=22);var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=Kc(a,b,e,4),c&65536||(e&=65535),a.v=a.B>>12&3,e=Ic(a,e|c&65536,4),a.v=a.B>>14&3,Kb(a.h,e,d)):6!=e||(a.B>>2&12288)===(a.B&12288)?a.g[e]=d:a.ma[a.B>>12&3]=d}
|
||||
function Ic(a,b,c){var d,e,f;if(!(c&a.Ba))return b;d=b>>13;a.Ga&a.ic[a.v]||(d&=7);e=a.H[a.v][d];f=(a.Y[a.v][d]<<6)+(b&8191)&a.Mb;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.H[a.v][d]=e;if(4194170!==f||a.v)a.$a=a.v,a.ab=d;b=!1;g&&(g&57344&&(0<=a.Ia&&(g|=128),a.w&57344||(a.w=a.w|g|a.$a<<5|a.ab<<1),
|
||||
b=!0),a.w&61440||!(4191360>f||4194239<f)||(a.w|=4096,a.w&512&&(a.u|=32)),b&&K(a,168,16));return f}function Jc(a,b,c){b&1&&a.a--;a=a.h;c&=255;3932160<=b&&(b=Ib(a.a,b));a.h[(b&a.ua)>>>a.c].Db(b&a.j,c&255,b)}function Hc(a){var b=a.W(a.g[6]|a.P);a.g[6]=a.g[6]+2&65535;return b}function Fc(a,b){var c=a.g[6]-2&65535;a.g[6]=c;a.w&57344||(a.Ca=a.Ca<<8|246);!a.v&&c<=a.Da&&4<c&&(c<=a.Da-32?(a.M|=4,a.g[6]=4,K(a,4,18)):(a.M|=8,a.u|=4));a.ob(c,b)}
|
||||
function Kc(a,b,c,d){var e,f,g=d&8?0:a.P;switch(b){case 0:return K(a,4,20),0;case 1:return 6===c&&!a.v&&d&4&&(a.g[6]<=a.Da||65534<=a.g[6])&&(a.g[6]<=a.Da-32||65534<=a.g[6]?(a.M|=4,a.g[6]=4,K(a,4,22)):(a.M|=8,a.u|=64)),a.a-=3,7===c?a.g[c]:a.g[c]|g;case 2:f=2;e=a.g[c];7!==c&&(e|=g,6>c&&d&1&&(f=1));a.a-=3;break;case 3:f=2;e=a.g[c];7!==c&&(e|=g);e=a.W(e);e|=g;a.a-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.g[c]+f&65535;7!==c&&(e|=g);a.a-=4;break;case 5:f=-2;e=a.g[c]-2&65535;7!==c&&(e|=g);e=a.W(e)|g;a.a-=
|
||||
8;break;case 6:return e=a.W(Ac(a,2)),e=e+a.g[c]&65535|g,a.a-=6,e;case 7:return e=a.W(Ac(a,2)),e=e+a.g[c]&65535,e=a.W(e|a.P)|g,a.a-=10,e}a.g[c]=a.g[c]+f&65535;!g||a.w&57344||(a.Ca=a.Ca<<8|f<<3&248|c);6==c&&!a.v&&d&4&&0>=f&&(a.g[6]<=a.Da||65534<=a.g[6])&&(a.g[6]<=a.Da-32?(a.M|=4,a.g[6]=4,K(a,4,24)):(a.M|=8,a.u|=64));return e}h.kb=function(a){if(!this.Ba)return this.h.kb(a);this.ra++;a=this.Tb(Ic(this,a,2));this.ra--;return a};
|
||||
h.Xa=function(a,b){this.Ba?(this.ra++,Jc(this,Ic(this,a,5),b),this.ra--):this.h.Xa(a,b)};h.lb=function(a,b){this.Ba?(this.ra++,this.$b(Ic(this,a,4),b),this.ra--):this.h.lb(a,b)};h.gc=function(a,b,c){return Kc(this,a,b,c)};h.hc=function(a,b,c){return Ic(this,Kc(this,a,b,c),c)};h.Tb=function(a){return Jb(this.h,a)};h.gd=function(a){return Jb(this.h,Ic(this,a,2))};h.$b=function(a,b){Kb(this.h,a,b&65535)};h.Zd=function(a,b){Kb(this.h,Ic(this,a,4),b)};
|
||||
function Lc(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?(d=Kc(a,b,d,2),c&65536||61440!==(a.B&61440)&&(d&=65535),a.v=a.B>>12&3,c=a.W(d|c&a.P),a.v=a.B>>14&3):c=6!=d||(a.B>>2&12288)===(a.B&12288)?a.g[d]:a.ma[a.B>>12&3];return c}function Mc(a,b,c,d){a.w&57344||(a.Ca=22);var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=Kc(a,b,e,4),c&65536||(e&=65535),a.v=a.B>>12&3,e=Ic(a,e|c&65536,4),a.v=a.B>>14&3,Kb(a.h,e,d)):6!=e||(a.B>>2&12288)===(a.B&12288)?a.g[e]=d:a.ma[a.B>>12&3]=d}
|
||||
function Nc(a,b){b>>=6;var c=a.D=b&7;(b=a.A=(b&56)>>3)?(c=a.J(b,c,3),a=Hb(a.h,c)):a=a.g[c]&255;return a}function Oc(a,b){b>>=6;var c=a.D=b&7;return(b=a.A=(b&56)>>3)?Jb(a.h,a.J(b,c,2)):a.g[c]}function Pc(a,b){var c=a.b=b&7;b=a.c=(b&56)>>3;return Kc(a,b,c,8)}function Qc(a,b){var c=a.b=b&7;(b=a.c=(b&56)>>3)?(c=a.J(b,c,3),a=Hb(a.h,c)):a=a.g[c]&255;return a}function Rc(a,b){var c=a.b=b&7;return(b=a.c=(b&56)>>3)?Jb(a.h,a.J(b,c,2)):a.g[c]}
|
||||
function T(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.tb=a.J(b,e,7),Jc(a,e,d.call(a,c,Hb(a.h,e)))):a.g[e]=a.g[e]&65280|d.call(a,c,a.g[e])}function U(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.J(b,e,6),Kb(a.h,e,d.call(a,c,Jb(a.h,e)))):a.g[e]=d.call(a,c,a.g[e])}function Sc(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?Jc(a,a.J(b,e,5),c):a.g[e]=c?d&1?c<<24>>24&65535:a.g[e]&-256|c&255:a.g[e]&-256;return c}
|
||||
function Tc(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?Kb(a.h,a.J(b,d,4),c):a.g[d]=c&65535;return c}function V(a,b,c){c&&(P(a,a.g[7]+(b<<24>>23)),a.a-=2);a.a-=3}
|
||||
|
|
@ -130,8 +130,8 @@ function ld(a,b){a=b<<1|this.m>>16&1;Dc(this,a);return a&65535}function md(a,b){
|
|||
function sd(a,b){a^=b;S(this,a);return a&65535}function td(a){U(this,a,Oc(this,a),Uc);this.a-=this.c?9+(this.D&&6<=this.b?1:0):(this.A?5:3)+(7==this.b?2:0)}function ud(a){var b=Rc(this,a);a=a>>6&7;var c=this.g[a];c&32768&&(c|=4294901760);this.m=this.f=0;b&=63;if(b&32)b=64-b,16<b&&(b=16),this.m=c<<17-b,c>>=b;else if(b)if(16<b)this.f=c,c=0;else{this.m=c<<=b;var d=c>>15&65535;d&&65535!==d&&(this.f=32768)}this.g[a]=c&65535;this.s=this.i=c;this.a-=(this.c?6:7)+b}
|
||||
function vd(a){var b=Rc(this,a);a=a>>6&7;var c=this.g[a]<<16|this.g[a|1];this.m=this.f=0;b&=63;if(b&32){b=64-b;32<b&&(b=32);var d=c>>b-1;this.m=d<<16;d>>=1;c&2147483648&&(d|=4294967295<<32-b)}else b?(d=c<<b-1,this.m=d>>15,d<<=1,32<b&&(b=32),(c>>=32-b)&&4294967295!==(c|4294967295<<b&4294967295)&&(this.f=32768)):d=c;this.g[a]=d>>16&65535;this.g[a|1]=d&65535;this.s=d>>16;this.i=d>>16|d;this.a-=(this.c?6:7)+b}function wd(a){V(this,a,!R(this))}function xd(a){V(this,a,R(this))}
|
||||
function yd(a){U(this,a,Oc(this,a),$c);this.a-=this.c?9+(this.D&&6<=this.b?1:0):(this.A?5:3)+(7==this.b?2:0)}function zd(a){T(this,a,Nc(this,a),ad);this.a-=this.c?9+(this.D&&6<=this.b?1:0):(this.A?5:3)+(7==this.b?2:0)}function Ad(a){U(this,a,Oc(this,a),bd);this.a-=this.c?9+(this.D&&6<=this.b?1:0):(this.A?5:3)+(7==this.b?2:0)}function Bd(a){T(this,a,Nc(this,a),cd);this.a-=this.c?9+(this.D&&6<=this.b?1:0):(this.A?5:3)+(7==this.b?2:0)}
|
||||
function Cd(a){S(this,Oc(this,a)&Rc(this,a));this.a-=this.c?4+(this.D&&6<=this.b?1:0):(this.A?4:3)+(7==this.b?2:0)}function Dd(a){S(this,(Nc(this,a)&Qc(this,a))<<8);this.a-=this.c?4+(this.D&&6<=this.b?1:0):(this.A?4:3)+(7==this.b?2:0)}function Ed(a){V(this,a,this.i&65535?0:4)}function Fd(a){V(this,a,!this.ya()==!(this.f&32768))}function Gd(a){V(this,a,!!(this.i&65535)&&!this.ya()==!(this.f&32768))}function Hd(a){V(this,a,!R(this)&&!!(this.i&65535))}
|
||||
function Id(a){V(this,a,(this.i&65535?0:4)||!this.ya()!=!(this.f&32768))}function Jd(a){V(this,a,R(this)||(this.i&65535?0:4))}function Kd(a){V(this,a,!this.ya()!=!(this.f&32768))}function Ld(a){V(this,a,this.ya())}function Md(a){V(this,a,!!(this.i&65535))}function Nd(a){V(this,a,!this.ya())}function Od(){K(this,12,1);this.a-=5}function Pd(a){V(this,a,!0)}function Qd(a){V(this,a,!(this.f&32768))}function Rd(a){V(this,a,this.f&32768?2:0)}
|
||||
function Cd(a){S(this,Oc(this,a)&Rc(this,a));this.a-=this.c?4+(this.D&&6<=this.b?1:0):(this.A?4:3)+(7==this.b?2:0)}function Dd(a){S(this,(Nc(this,a)&Qc(this,a))<<8);this.a-=this.c?4+(this.D&&6<=this.b?1:0):(this.A?4:3)+(7==this.b?2:0)}function Ed(a){V(this,a,this.i&65535?0:4)}function Fd(a){V(this,a,!this.za()==!(this.f&32768))}function Gd(a){V(this,a,!!(this.i&65535)&&!this.za()==!(this.f&32768))}function Hd(a){V(this,a,!R(this)&&!!(this.i&65535))}
|
||||
function Id(a){V(this,a,(this.i&65535?0:4)||!this.za()!=!(this.f&32768))}function Jd(a){V(this,a,R(this)||(this.i&65535?0:4))}function Kd(a){V(this,a,!this.za()!=!(this.f&32768))}function Ld(a){V(this,a,this.za())}function Md(a){V(this,a,!!(this.i&65535))}function Nd(a){V(this,a,!this.za())}function Od(){K(this,12,1);this.a-=5}function Pd(a){V(this,a,!0)}function Qd(a){V(this,a,!(this.f&32768))}function Rd(a){V(this,a,this.f&32768?2:0)}
|
||||
function W(a){a&1&&(this.m=0);a&2&&(this.f=0);a&4&&(this.i=1);a&8&&(this.s=0);this.a-=5}function Sd(a){var b=Oc(this,a);a=Rc(this,a);Ec(this,b-a,a,b);this.a-=this.c?4+(this.D&&6<=this.b?1:0):(this.A?4:3)+(7==this.b?2:0)}function Td(a){var b=Nc(this,a)<<8;a=Qc(this,a)<<8;Ec(this,b-a,a,b);this.a-=this.c?4+(this.D&&6<=this.b?1:0):(this.A?4:3)+(7==this.b?2:0)}
|
||||
function Ud(a){var b=Rc(this,a);if(b){a=a>>6&7;var c=this.g[a]<<16|this.g[a|1];this.m=this.f=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.i=d>>16|d,this.s=d>>16):(this.f=32768,this.i=d>>15|d,this.s=c>>16,-1===b&&65534===this.g[a]&&(this.g[a]=this.g[a|1]=1));this.a-=53}else this.i=this.s=0,this.f=32768,this.m=65536,this.a-=7}function Vd(){K(this,24,2);this.a-=25}
|
||||
function Wd(){this.B&49152?(this.M|=128,K(this,4,3)):this.C?this.C.b():G(this);this.a-=7}function Xd(){K(this,16,4);this.a-=25}var Yd=[0,7,7,10,7,11,9,13];function Zd(a){this.G=this.a;P(this,Pc(this,a));this.a=this.G-Yd[this.c]}var $d=[0,14,14,17,14,18,16,20];function ae(a){this.G=this.a;var b=Pc(this,a);a=a>>6&7;Fc(this,this.g[a]);this.g[a]=this.g[7];P(this,b);this.a=this.G-$d[this.c]}var be=[3,9,9,13,10,14,12,16,4,9,9,13,10,14,13,17];
|
||||
|
|
@ -146,7 +146,7 @@ Je=[function(a){Ke[a&15].call(this,a)},Y,Y,Y,Zd,Zd,Zd,Zd,je,Y,xe,ze,me,me,me,me]
|
|||
Sc(this,a,0));this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,ed);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,id);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,gd);this.a-=this.c?9:3+(7==this.b?2:0)}],Ee=[function(a){T(this,a,0,kd);this.a-=this.c?11:6},function(a){T(this,a,R(this)?1:0,Vc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,R(this)?1:0,qd);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){a=Qc(this,a);Bc(this,a<<8);this.a-=this.c?4:3+(7==this.b?
|
||||
2:0)}],Ge=[function(a){T(this,a,0,od);this.a-=this.c?9+(this.tb&1):3+(7==this.b?2:0)},function(a){T(this,a,0,md);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,Zc);this.a-=this.c?9+(this.tb&1):3+(7==this.b?2:0)},function(a){T(this,a,0,Xc);this.a-=this.c?9:3+(7==this.b?2:0)}];function wc(a){Le[a>>12].call(this,a)}
|
||||
var Le=[function(a){Me[a>>8&15].call(this,a)},ce,Sd,Cd,yd,Ad,td,function(a){Ne[a>>8&15].call(this,a)},function(a){Oe[a>>8&15].call(this,a)},de,Td,Dd,zd,Bd,le,Y],Me=[function(a){Pe[a>>4&15].call(this,a)},Pd,Md,Ed,Fd,Kd,Gd,Id,ae,ae,re,te,ve,function(a){Qe[a>>6&3].call(this,a)},Y,Y],Qe=[function(a){a=this.g[7]+((a&63)<<1)&65535;var b=this.W(a|this.P);P(this,this.g[5]);this.g[6]=a+2&65535;this.g[5]=b;this.a-=8},function(a){a=Lc(this,a,0);Fc(this,a);S(this,a);this.a-=11},function(a){var b=Hc(this);this.G=
|
||||
this.a;Mc(this,a,0,b);S(this,b);this.a=this.G-ee[this.c]},function(a){S(this,Tc(this,a,this.ya?65535:0));this.a-=this.c?9:3+(7==this.b?2:0)}],Pe=[function(a){Re[a&15].call(this,a)},Y,Y,Y,Zd,Zd,Zd,Zd,je,function(a){a&8?(this.B&49152||(this.B=this.B&-2017|(a&7)<<5,this.u|=1),this.a-=5):K(this,8,6)},xe,ze,me,me,me,me],Re=[Wd,oe,ie,Od,Xd,he,function(){Gc(this);this.a-=13},Y,Y,Y,Y,Y,Y,Y,Y,Y],Ne=[fe,fe,Ud,Ud,ud,ud,vd,vd,pe,pe,Y,Y,Y,Y,ke,ke],Oe=[Nd,Ld,Hd,Jd,Qd,Rd,wd,xd,Vd,ne,Be,De,Fe,function(a){Se[a>>6&
|
||||
this.a;Mc(this,a,0,b);S(this,b);this.a=this.G-ee[this.c]},function(a){S(this,Tc(this,a,this.za?65535:0));this.a-=this.c?9:3+(7==this.b?2:0)}],Pe=[function(a){Re[a&15].call(this,a)},Y,Y,Y,Zd,Zd,Zd,Zd,je,function(a){a&8?(this.B&49152||(this.B=this.B&-2017|(a&7)<<5,this.u|=1),this.a-=5):K(this,8,6)},xe,ze,me,me,me,me],Re=[Wd,oe,ie,Od,Xd,he,function(){Gc(this);this.a-=13},Y,Y,Y,Y,Y,Y,Y,Y,Y],Ne=[fe,fe,Ud,Ud,ud,ud,vd,vd,pe,pe,Y,Y,Y,Y,ke,ke],Oe=[Nd,Ld,Hd,Jd,Qd,Rd,wd,xd,Vd,ne,Be,De,Fe,function(a){Se[a>>6&
|
||||
3].call(this,a)},Y,Y],Se=[Y,function(a){a=Lc(this,a,65536);Fc(this,a);S(this,a);this.a-=11},function(a){var b=Hc(this);this.G=this.a;Mc(this,a,65536,b);S(this,b);this.a=this.G-ee[this.c]},Y];
|
||||
function Te(a){x.call(this,"ROM",a,Te);this.X=this.b=null;this.i=a.addr;this.c=a.size;this.f=a.alias;this.j=a.file;this.m=q(this.j);if(this.j){a=this.j;var b=la(this.m);"json"!=b&&"hex"!=b&&(a=v()+"/api/v1/dump?file="+this.j+"&format=bytes&decimal=true");var c=this;r(a,null,!0,function(a,b,f){f?(c.F("Unable to load ROM resource (error "+f+": "+a+")"),c.j=null):(Sa(c.na,a,b),(a=ta(a,b))?(c.b=a.K,c.X=a.X):c.j=null);Ue(c)})}}z(Te);Te.prototype.ha=function(a,b,c,d){this.h=b;this.a=c;this.C=d;Ue(this)};
|
||||
Te.prototype.ja=function(){this.X&&(this.C&&this.C.a(this.id,this.i,this.c,this.X),delete this.X);return!0};Te.prototype.ia=function(){return!0};
|
||||
|
|
@ -170,24 +170,24 @@ h.$=function(a,b,c){var d=this,e=df;switch(b){case "listTapes":return this.o[b]=
|
|||
d.o.listTapes;a&&ef(d,a.options[a.selectedIndex].text,a.value,e)},!0;case "mountTape":if(!this.G){c.parentNode.removeChild(c);break}this.o[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;ef(d,q(b,!0),b,1,a)}return!1};return!0;case "readProgress":return this.o[b]=c,!0}return!1};
|
||||
h.ha=function(a,b,c,d){this.j=a;this.h=b;this.a=c;this.C=d;this.J=ff(a);var e=this;if((this.c=mc(this.j,"autoMount")||this.c)&&"string"==typeof this.c)try{this.c=eval("("+this.c+")")}catch(f){u("PC11 auto-mount error: "+f.message+" ("+this.c+")"),this.c=null}this.N=Rb(56,4);this.R=Ob(this.a,function(){1==(e.b&32769)&&!(e.b&128)&&e.w<e.v.length&&(e.A=e.v[e.w++]&255,gf(e,e.w/e.v.length*100),e.b|=128,e.b&=-2049,e.b&64&&Pb(e.a,e.N))});bb(b,this,hf);jf(this,"None",cf,!0);this.G&&jf(this,"Local Tape","?");
|
||||
jf(this,"Remote Tape","??");kf(this)||F(this)};h.ja=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};h.ia=function(a){return a?this.save():!0};h.reset=function(){this.b&=-2241;this.A=0};function kf(a){a.m=0;if(a.c){var b=a.c.path||"",c;if(!(c=a.c.name))a:{if((c=a.o.listTapes)&&c.options)for(var d=0;d<c.options.length;d++){var e=c.options[d];if(e.value==b){c=e.text;break a}}c=q(b,!0)}b&&c?lf(a,c,b,1,!0):mf(a)}return!!a.m}
|
||||
function ef(a,b,c,d,e){if(c)if("?"==c)a.F('Use "Choose File" and "Mount" to select and load a local tape.');else{if("??"==c){c=window.prompt("Enter the URL of a remote tape image.","")||"";if(!c)return;b=q(c);a.status("Attempting to load "+c+' as "'+b+'"');a.s="??"}else a.s=c;lf(a,b,c,d,!1,e)}else nf(a,!1)}function lf(a,b,c,d,e,f){var g=-1;if(a.i.toLowerCase()!=c.toLowerCase()||a.f!=d)g++,nf(a,!0),a.l.Ea?a.F("PC11 busy"):(e&&a.m++,of(a,b,c,d,f)?g++:a.l.Ea=!0);g&&pf(a,a.D,a.i,a.f,a.K,a.fa,a.ea)}
|
||||
function ef(a,b,c,d,e){if(c)if("?"==c)a.F('Use "Choose File" and "Mount" to select and load a local tape.');else{if("??"==c){c=window.prompt("Enter the URL of a remote tape image.","")||"";if(!c)return;b=q(c);a.status("Attempting to load "+c+' as "'+b+'"');a.s="??"}else a.s=c;lf(a,b,c,d,!1,e)}else nf(a,!1)}function lf(a,b,c,d,e,f){var g=-1;if(a.i.toLowerCase()!=c.toLowerCase()||a.f!=d)g++,nf(a,!0),a.l.Fa?a.F("PC11 busy"):(e&&a.m++,of(a,b,c,d,f)?g++:a.l.Fa=!0);g&&pf(a,a.D,a.i,a.f,a.K,a.fa,a.ea)}
|
||||
function of(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),pf(a,b,c,d,e),a.s="?");mf(a)};g.readAsArrayBuffer(e);return!0}0>c.indexOf("/api/v1/dump")&&(e=la(c),f="json"==e||"gz"==e?encodeURI(c):v()+"/api/v1/dump?path="+encodeURIComponent(c)+"&format=json");return!!r(f,null,!0,function(e,f,g){var k=0>g&&a.j&&!a.j.l.O;g?a.F('Unable to load tape "'+b+'" (error '+g+": "+e+")",k):(Sa(a.na,e,f),(e=ta(e,f))&&pf(a,b,c,d,e.K,e.fa,e.ea));
|
||||
a.l.Ea=!1;a.m&&(a.m--,a.m||F(a));mf(a)})}function jf(a,b,c,d){if((a=a.o.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 mf(a){var b=a.o.listTapes;if(b&&b.options){a=a.s||a.i;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)}}
|
||||
a.l.Fa=!1;a.m&&(a.m--,a.m||F(a));mf(a)})}function jf(a,b,c,d){if((a=a.o.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 mf(a){var b=a.o.listTapes;if(b&&b.options){a=a.s||a.i;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 gf(a,b){b|=0;if(b!==a.I){var c=a.o.readProgress;c&&(c=(c=D(c,"pcjs-progress-bar"))&&c[0])&&c.style&&(c.style.width=b+"%");a.I=b}}function pf(a,b,c,d,e,f,g){a.D=b;a.i=c;a.f=d;a.K=e;a.fa=f;a.ea=g;2==d?a.J&&Xe(a.J,e,f,g)?a.status("tape loaded: "+b):(a.D="",a.i="",a.s=cf,a.f=df,a.F("No load address available for tape: "+b)):(a.w=0,a.v=e,a.status("tape attached: "+b),gf(a,0))}
|
||||
function nf(a,b){if(a.i||!1===b)a.D="",a.i="",b||(a.f&&a.status(1==a.f?"tape detached":"tape unloaded"),a.s=cf,a.f=df,mf(a))}h.save=function(){return(new Q(this)).data()};h.restore=function(){return!0};h.Jc=function(){return this.b&65534};h.Bd=function(a){a&1&&(this.b&32768?(a&=-2,this.b&64&&Pb(this.a,this.N)):(this.b&=-129,this.b|=2048,this.A=0,Qb(this.a,this.R,1E3/Math.round(this.P/10))));this.b=this.b&-66|a&65};h.Ic=function(){this.b&=-129;this.b|=2048;return this.A};h.Ad=function(){};
|
||||
var qf={},hf=(qf[65384]=[null,null,Vb.prototype.Jc,Vb.prototype.Bd,"PRS"],qf[65386]=[null,null,Vb.prototype.Ic,Vb.prototype.Ad,"PRB"],qf);function rf(a,b,c){x.call(this,"Disk",{id:a.na+".disk"+m(++sf,4)},rf);this.controller=a;this.j=a.j;this.C=a.C;this.f=b;this.ua=b.name;this.sb=b.sb;tf(this,c,b.V,b.Z,b.S,b.ga);F(this)}var sf=0;z(rf);h=rf.prototype;h.ha=function(a,b,c,d){this.C=d};
|
||||
var qf={},hf=(qf[65384]=[null,null,Vb.prototype.Jc,Vb.prototype.Bd,"PRS"],qf[65386]=[null,null,Vb.prototype.Ic,Vb.prototype.Ad,"PRB"],qf);function rf(a,b,c){x.call(this,"Disk",{id:a.na+".disk"+m(++sf,4)},rf);this.controller=a;this.j=a.j;this.C=a.C;this.f=b;this.va=b.name;this.sb=b.sb;tf(this,c,b.V,b.Z,b.S,b.ga);F(this)}var sf=0;z(rf);h=rf.prototype;h.ha=function(a,b,c,d){this.C=d};
|
||||
function tf(a,b,c,d,e,f){a.mode=b;a.V=c;a.Z=d;a.S=e;a.ga=f;a.a=[];if("preload"!=a.mode){b=Array(a.V);for(c=0;c<b.length;c++){d=Array(a.Z);for(e=0;e<d.length;e++){f=Array(a.S);for(var g=1;g<=f.length;g++)f[g-1]=uf(null,c,e,g,a.ga,0);d[e]=f}b[c]=d}a.a=b}a.b=null}
|
||||
function vf(a,b,c,d,e){var f=c;if(a.h)return!0;a.ua=b;a.Da=c;a.Wb=q(c);a.h=e;a.i=a.controller;if(d){var g=new FileReader;g.onload=function(){var b=g.result,c,d=b?b.byteLength:0,e=ia[d];if(e){a.V=e[0];a.Z=e[1];a.S=e[2];a.ga=e[3]||512;c=a.ga>>2;var f=e=0,b=new DataView(b,0,d);a.a=Array(a.V);for(d=0;d<a.a.length;d++)for(var w=a.a[d]=Array(a.Z),E=0;E<w.length;E++)for(var va=w[E]=Array(a.S),wa=0;wa<va.length;wa++){for(var Sb=uf(null,d,E,wa+1,a.ga,0),Xf=Sb.data,gc=0;gc<c;gc++,f+=4)var Yf=Xf[gc]=b.getInt32(f,
|
||||
!0),e=e+Yf&-1;Sb.ba=c;va[wa]=Sb}a.b=e;c=a}else a.F("Unrecognized disk format ("+d+" bytes)");a.h&&(a.h.call(a.controller,a.f,c,a.ua,a.Da),a.h=null)};g.readAsArrayBuffer(d);return!0}0>c.indexOf("/api/v1/dump")&&(b=la(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"):ma(c,"/")&&(d="dir"),f=v()+"/api/v1/dump?"+d+"="+encodeURIComponent(c)+(a.sb?"":e)+"&format=json"));return!!r(f,
|
||||
function vf(a,b,c,d,e){var f=c;if(a.h)return!0;a.va=b;a.Ea=c;a.Wb=q(c);a.h=e;a.i=a.controller;if(d){var g=new FileReader;g.onload=function(){var b=g.result,c,d=b?b.byteLength:0,e=ia[d];if(e){a.V=e[0];a.Z=e[1];a.S=e[2];a.ga=e[3]||512;c=a.ga>>2;var f=e=0,b=new DataView(b,0,d);a.a=Array(a.V);for(d=0;d<a.a.length;d++)for(var w=a.a[d]=Array(a.Z),E=0;E<w.length;E++)for(var va=w[E]=Array(a.S),wa=0;wa<va.length;wa++){for(var Sb=uf(null,d,E,wa+1,a.ga,0),Xf=Sb.data,gc=0;gc<c;gc++,f+=4)var Yf=Xf[gc]=b.getInt32(f,
|
||||
!0),e=e+Yf&-1;Sb.ba=c;va[wa]=Sb}a.b=e;c=a}else a.F("Unrecognized disk format ("+d+" bytes)");a.h&&(a.h.call(a.controller,a.f,c,a.va,a.Ea),a.h=null)};g.readAsArrayBuffer(d);return!0}0>c.indexOf("/api/v1/dump")&&(b=la(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"):ma(c,"/")&&(d="dir"),f=v()+"/api/v1/dump?"+d+"="+encodeURIComponent(c)+(a.sb?"":e)+"&format=json"));return!!r(f,
|
||||
null,!0,function(b,c,d){wf(a,b,c,d)})}
|
||||
function wf(a,b,c,d){var e=null;a.c=!1;var f=0>d&&a.j&&!a.j.l.O;if(d)a.controller.F('Unable to load disk "'+a.ua+'" (error '+d+": "+b+")",f);else{Sa(a.controller.na,b,c);try{if(0<q(a.Wb,!0).toLowerCase().indexOf("-readonly"))a.c=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.c=!0)}var k;"<"==c.substr(0,1)?k=["Missing disk image: "+a.ua]:k=0>c.indexOf("0x")&&'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+
|
||||
function wf(a,b,c,d){var e=null;a.c=!1;var f=0>d&&a.j&&!a.j.l.O;if(d)a.controller.F('Unable to load disk "'+a.va+'" (error '+d+": "+b+")",f);else{Sa(a.controller.na,b,c);try{if(0<q(a.Wb,!0).toLowerCase().indexOf("-readonly"))a.c=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.c=!0)}var k;"<"==c.substr(0,1)?k=["Missing disk image: "+a.va]: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)u(k[0]);else{a.V=k.length;a.Z=k[0].length;a.S=k[0][0].length;var l=k[0][0][0];a.ga=l&&l.length||512;for(d=c=0;d<a.V;d++)for(f=0;f<a.Z;f++)for(g=0;g<a.S;g++)if(l=k[d][f][g]){var n=l.length;void 0===n&&(n=l.length=512);var n=n>>2,p=l.pattern;void 0===p&&(p=l.pattern=0);var t=l.data;if(void 0===t){var w=l.bytes;if(void 0!==w&&w.length){for(var E=n<<2,va=w.length;va<E;va++)w[va]=p;xf(l,w)}else t=[],p=l.pattern=p|p<<8|p<<16|p<<24,l.data=t;delete l.bytes}uf(l,d,f);for(E=
|
||||
0;E<t.length;E++)c=c+t[E]&-1}a.a=k;a.b=c;e=a}else u("Empty disk image: "+a.ua)}catch(wa){u("Disk image error ("+b+"): "+wa.message)}}a.h&&(a.h.call(a.i,a.f,e,a.ua,a.Da),a.h=null)}function uf(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.de=b;a.ee=c;a.la=a.ba=0;a.ta=!1;return a}
|
||||
0;E<t.length;E++)c=c+t[E]&-1}a.a=k;a.b=c;e=a}else u("Empty disk image: "+a.va)}catch(wa){u("Disk image error ("+b+"): "+wa.message)}}a.h&&(a.h.call(a.i,a.f,e,a.va,a.Ea),a.h=null)}function uf(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.de=b;a.ee=c;a.la=a.ba=0;a.ta=!1;return a}
|
||||
h.seek=function(a,b,c,d,e){d=null;var f=this.f,g=this.a[a];if(g){var k=g[b];if(!k&&f.bc&&b<f.Z)for(k=g[b]=Array(f.cc),g=0;g<k.length;g++)k[g]=uf(null,a,b,g+1,f.Pb,0);if(k){for(g=0;g<k.length;g++)if(k[g]&&k[g].sector==c){d=k[g];break}!d&&f.bc&&9==f.Fb&&(d=k[g]=uf(null,a,b,f.Fb,f.Pb,0))}}e&&e(d,!1);return d};function xf(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.c)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.ba?f<a.la?(a.ba+=a.la-f,a.la=f):f>=a.la+a.ba&&(a.ba+=f-(a.la+a.ba)+1):(a.la=f,a.ba=1);d[f]=d[f]&~(255<<b)|c<<b}return!0}return null};
|
||||
function yf(a,b){var c=a.Z*a.S,d=b/c|0;return d<a.V?(b%=c,a.seek(d,b/a.S|0,b%a.S+1)):null}function zf(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.Da,this.b,this.V,this.Z,this.S,this.ga];if(!this.c)for(var c=this.a,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.ba){for(var k=[],l=0,n=g.la,p=g.la+g.ba;n<p;)k[l++]=g.data[n++];b[a++]=[d,e,f,g.la,k]}}return b};
|
||||
function yf(a,b){var c=a.Z*a.S,d=b/c|0;return d<a.V?(b%=c,a.seek(d,b/a.S|0,b%a.S+1)):null}function zf(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.Ea,this.b,this.V,this.Z,this.S,this.ga];if(!this.c)for(var c=this.a,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.ba){for(var k=[],l=0,n=g.la,p=g.la+g.ba;n<p;)k[l++]=g.data[n++];b[a++]=[d,e,f,g.la,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.a.length&&6<=e.length?tf(this,"local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.b&&e[1]!=this.b&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.b+")",b=-2));for(this.a.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],k=g[f++],l=g[f++],n=g[f++];if(k>=this.a.length||l>=this.a[k].length||n>=this.a[k][l].length){c="sector (CHS="+k+":"+l+":"+n+") out of range ("+
|
||||
b+" changes applied)";b=-1;break}if(this.c){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(k=this.a[k][l][n]){for(l=k.data.length;l<e;)k.data[l++]=k.pattern;l=0;k.la=e;for(k.ba=f.length;e<g;)k.data[e++]=f[l++];b++}}}0>b&&-2!=b&&this.controller.F("Unable to restore disk '"+this.ua+": "+c);return b};
|
||||
b+" changes applied)";b=-1;break}if(this.c){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(k=this.a[k][l][n]){for(l=k.data.length;l<e;)k.data[l++]=k.pattern;l=0;k.la=e;for(k.ba=f.length;e<g;)k.data[e++]=f[l++];b++}}}0>b&&-2!=b&&this.controller.F("Unable to restore disk '"+this.va+": "+c);return b};
|
||||
h.toJSON=function(){var a;a=0;for(var b;b=yf(this,a++);)Af(b);a=JSON.stringify(this.a,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 Af(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)}}function O(a){x.call(this,"RL11",a,O);this.f=a.autoMount||null;this.s=0;this.b=Array(4);this.A=!Ba("Mobi")&&window&&"FileReader"in window}z(O);h=O.prototype;
|
||||
h.$=function(a,b,c){var d=this;switch(b){case "listDisks":return this.o[b]=c,c.onchange=function(){var a=d.o.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("("+b+")")}catch(k){u("RL11 option error: "+k.message)}b=g.desc;void 0===b&&(b="");g=g.href;void 0!==g&&(b='<a href="'+g+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.o[b]=c,c.onchange=function(){var a=ja(c.value);null!=a&&Bf(d,a)},!0;case "loadDrive":return this.o[b]=
|
||||
|
|
@ -198,11 +198,11 @@ h.ha=function(a,b,c,d){this.j=a;this.h=b;this.a=c;this.C=d;if((this.f=mc(this.j,
|
|||
h.ja=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.j.Hb){for(a=0;a<this.b.length;a++)Hf(this,a,!0);Gf(this,!0)}}else if(!this.restore(a))return!1;if(a=this.o.listDrives){for(;a.firstChild;)a.removeChild(a.firstChild);a.value="";for(b=0;4>b;b++){var c=document.createElement("option");c.value=b;c.text="RL"+b;a.appendChild(c)}a.value="0";Bf(this,0)}}return!0};h.ia=function(a){return a?this.save():!0};h.reset=function(){Df(this)};h.save=function(){return(new Q(this)).data()};
|
||||
h.restore=function(a){return Df(this,a[0])};function Gf(a,b){b||(a.s=0);if(a.f)for(var c in a.f){var d=a.f[c],e=d.path||"",f;if(!(f=d.name))a:{if((f=a.o.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=q(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.b.length)){!If(a,g,f,e,!0)&&b&&F(a,!1);continue}a.F("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")")}return!!a.s}
|
||||
function Cf(a,b,c,d){var e=a.o.listDrives,e=e&&ja(e.value);if(void 0===e||0>e||e>=a.b.length)a.F("Unable to load the selected drive");else if(c)if("?"==c)a.F('Use "Choose File" and "Mount" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=q(c);a.status("Attempting to load "+c+' as "'+b+'"')}If(a,e,b,c,!1,d)}else Hf(a,e)}
|
||||
function If(a,b,c,d,e,f){var g=-1,k=a.b[b];k.Da.toLowerCase()!=d.toLowerCase()&&(g++,Hf(a,b,!0),k.rb?a.F("RL11 busy"):(k.rb=!0,e&&(k.qb=!0,a.s++),k.ib=!!f,vf(new rf(a,k,"preload"),c,d,f,a.dc)&&g++));return g}
|
||||
h.dc=function(a,b,c,d,e){var f;a.rb=!1;b&&(f=b.a.length?[b.a.length,b.a[0].length,b.a[0][0].length,b.a[0][0][0].length]:[0,0,0,0],b&&f[0]>a.V||f[1]>a.Z)&&(this.F('Disk "'+c+'" too large for drive '+("RL"+a.wb)),b=null);b?(a.ca=b,a.ua=c,a.Da=d,this.F('Mounted disk "'+c+'" in drive '+("RL"+a.wb),a.qb||e),this.j&&sc(this.j)):a.ib=!1;a.qb&&(a.qb=!1,--this.s||F(this));Bf(this,a.wb)};
|
||||
function If(a,b,c,d,e,f){var g=-1,k=a.b[b];k.Ea.toLowerCase()!=d.toLowerCase()&&(g++,Hf(a,b,!0),k.rb?a.F("RL11 busy"):(k.rb=!0,e&&(k.qb=!0,a.s++),k.ib=!!f,vf(new rf(a,k,"preload"),c,d,f,a.dc)&&g++));return g}
|
||||
h.dc=function(a,b,c,d,e){var f;a.rb=!1;b&&(f=b.a.length?[b.a.length,b.a[0].length,b.a[0][0].length,b.a[0][0][0].length]:[0,0,0,0],b&&f[0]>a.V||f[1]>a.Z)&&(this.F('Disk "'+c+'" too large for drive '+("RL"+a.wb)),b=null);b?(a.ca=b,a.va=c,a.Ea=d,this.F('Mounted disk "'+c+'" in drive '+("RL"+a.wb),a.qb||e),this.j&&sc(this.j)):a.ib=!1;a.qb&&(a.qb=!1,--this.s||F(this));Bf(this,a.wb)};
|
||||
function Ff(a,b,c,d){if((a=a.o.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 Bf(a,b){if(0<=b&&b<a.b.length){var c=a.b[b],d=a.o.listDisks;a=a.o.listDrives;if(d&&a&&d.options&&a.options&&(a=ja(a.value),c=c.ib?"?":c.Da,!isNaN(a)&&a==b)){for(b=0;b<d.options.length;b++)if(d.options[b].value==c){d.selectedIndex!=b&&(d.selectedIndex=b);break}b==d.options.length&&(d.selectedIndex=0)}}}function Hf(a,b,c){var d=a.b[b];if(d.ca||!1===c)d.ua="",d.Da="",d.ca=null,d.ib=!1,c||(a.F("Drive RL"+b+" unloaded",c),Bf(a,b))}
|
||||
function Df(a,b){var c=0;b||(b=[]);a.L=b[c++]||0;a.v=b[c++]||0;a.c=b[c++]||0;a.i=b[c++]||0;a.m=b[c++]||0;a.w=b[c]||0;for(b=0;b<a.b.length;b++){var d=a.b[b];void 0===d&&(d=a.b[b]={});c=a;d.wb=b;d.rb=d.ib=!1;d.name=c.Pa;d.V=512;d.Z=2;d.S=40;d.ga=256;d.sb=!0;d.ce=0;d.be=0;d.Fb=1;d.cc=d.S;d.Pb=d.ga;d.fe=0;d.ge=null;d.ca||(d.Da="");d.status=29|(512==d.V?128:0)}return!0}
|
||||
function Bf(a,b){if(0<=b&&b<a.b.length){var c=a.b[b],d=a.o.listDisks;a=a.o.listDrives;if(d&&a&&d.options&&a.options&&(a=ja(a.value),c=c.ib?"?":c.Ea,!isNaN(a)&&a==b)){for(b=0;b<d.options.length;b++)if(d.options[b].value==c){d.selectedIndex!=b&&(d.selectedIndex=b);break}b==d.options.length&&(d.selectedIndex=0)}}}function Hf(a,b,c){var d=a.b[b];if(d.ca||!1===c)d.va="",d.Ea="",d.ca=null,d.ib=!1,c||(a.F("Drive RL"+b+" unloaded",c),Bf(a,b))}
|
||||
function Df(a,b){var c=0;b||(b=[]);a.L=b[c++]||0;a.v=b[c++]||0;a.c=b[c++]||0;a.i=b[c++]||0;a.m=b[c++]||0;a.w=b[c]||0;for(b=0;b<a.b.length;b++){var d=a.b[b];void 0===d&&(d=a.b[b]={});c=a;d.wb=b;d.rb=d.ib=!1;d.name=c.Pa;d.V=512;d.Z=2;d.S=40;d.ga=256;d.sb=!0;d.ce=0;d.be=0;d.Fb=1;d.cc=d.S;d.Pb=d.ga;d.fe=0;d.ge=null;d.ca||(d.Ea="");d.status=29|(512==d.V?128:0)}return!0}
|
||||
h.ec=function(a,b,c,d,e,f){this.v=f&65535;this.L=this.L&-49|f>>12&48;this.w=f>>16&63;this.i=this.c=b<<7|(c?64:0)|d&63;this.m=65536-e&65535;a&&(this.L=this.L|a|32768);return!0};
|
||||
h.wc=function(a,b,c,d,e,f,g){for(var k=0,l=a.ca,n=null,p;e--;){if(!n){n=a.ca.seek(b,c,d+1);if(!n){k=5120;break}p=0}var t,w;if(0>(t=a.ca.read(n,p++))||0>(w=a.ca.read(n,p++))){k=5120;break}Kb(this.h,f,t|w<<8);if(Nb(this.h)){k=8192;break}f+=2;if(p>=l.ga&&(n=null,++d>=l.S&&(d=0,++c>=l.Z&&(c=0,++b>=l.V)))){k=5120;break}}return g(k,b,c,d,e,f)};
|
||||
h.qd=function(a,b,c,d,e,f,g){for(var k=0,l=a.ca,n=null,p;e--;){var t=Jb(this.h,f);if(Nb(this.h)){k=8192;break}f+=2;if(!n){n=a.ca.seek(b,c,d+1,!0);if(!n){k=5120;break}p=0}if(!a.ca.write(n,p++,t&255)||!a.ca.write(n,p++,t>>8)){k=5120;break}if(p>=l.ga&&(n=null,++d>=l.S&&(d=0,++c>=l.Z&&(c=0,++b>=l.V)))){k=5120;break}}return g(k,b,c,d,e,f)};h.Tc=function(){return this.L&65535};
|
||||
|
|
|
|||
Loading…
Reference in a new issue